VoIP architecture based on SIP

Protocol SIP (Session Initiation Protocol) – one of the central protocol of IP telephony, which is described in the recommendations of RFC 2543. It describes the processes of establishing and terminating multimedia sessions.

Multimedia communication sessions – a communication by which subscribers receive an opportunity to exchange video, audio and text information, and can also set conference mode. Initially, the SIP protocol was developed and perfected within the main body of standardization applications of the Internet – a body IETF.

SIP protocol basically consists of basic principles:

  • simplicity
  • compatibility with the underlying protocols in the Internet network
  • independence and autonomy of the transport layer
  • network scalability
  • interaction with other signaling protocols
  • mobility protocol

Ease of SIP. The protocol implements a client-server architecture, and thus have a limited number of methods – a total of 6.

Mobility. The main advantage of SIP is that the user can connect to and use the whole set of services is not one with a specific place, but from any point in the network. This procedure has been available since each user is given a unique identifier. Through this identifier becomes possible to authorize a user using the server Register.

Network scalability. The number of devices in a network increases, especially subscriber device. The network is expanding, but the global configuration is not changed.

The interaction of the SIP RTP. Since SIP is the IETF developed during the project to transfer multimedia data over packet networks, the SIP protocol laid interaction function protocols RTP (Real-timeTransport Protocol), RSVP (ResourceReSerVation Protocol – Resource Reservation Protocol), RSTP (RapidSpanningTree Protocol – Streaming Protocol real-time information, SDP – Description Protocol communication parameters.

Does not depend on the transport layer. SIP protocol corresponds to the application layer model OSI, so it can be fully utilized over any transport technology. For example, you can use TCP or UDP as the transport layer. Therefore, the SIP protocol quite favorably with the protocol H.323, because it is distributed across multiple levels of model OSI.

SIP is characterized by the ability to interact with different signaling protocols not only IP networks, and public telephone networks.

With SIP protocol, you can organize three types of conferences:

  • Centralized. From special server is used to manage three or more users.
  • Decentralized. Under the supervision of a special server each user connects to each.
  • Mixed. Occurs and then, and more.
  • Addressing SIP protocol

SIP protocol uses addressing chetіreh types, the users get oktorіm mobility.

Username @ domain

Username @ IP address

Username @ host

Phone number @ Gateway

The network architecture based on SIP.

When building a network, the SIP terminal receives intellectual property. Therefore, there is always the terminals 2 User Agent: UserAgentClient (UAC), UserAgentServer (UAS).

UAC generates requests, and UAS handles questions and give answers. Himself SIP protocol implemented in SIP server and has a special place in the network. SIP servers use different today, but the most common are Ondo, Mera, Asterisk, Skype.

SIP server consists of 4 parts:

Proxy Server. He is the principal. Its function is to represent the interests of the user in the network, receiving and processing requests, as well as the formation of responses, depending on the type of request. Proxy Server consists of two parts: server and client. Thanks to this Proxy server has intelligent properties. At his disposal the following functions:

  • autentification;
  • authorization;
  • routing;
  • a safe;
  • access control.

Also, the proxy may be a function of storing states, or not to have it. Without this feature server operates more quickly, and accordingly, it allows him to serve more users.

If the server stores the state, then it will run a little slower to serve a smaller number of users at the same time, but it will work reliably, as it will use the procedure repeated.

2. Redirect server. Provides a link and directs calls client receives information about the next step forward messages.

3. Location Server. Determines the user’s location. It also stores temporary addresses of users.

4. Register server. This server is responsible for registering, and has a database. It serves requests from UAC for client registration. Register the server is often combined with a proxy server, or redirect server. Since the server has a database, it is stored in the user names and see their IP address. Sometimes in the database can be stored domain numbers or IP.

All of these servers are integrated with each other in various combinations. It all depends on the implementation and objectives. To ensure the communication unit and transmitting traffic clients and servers to use the system user begins transmitting messages to each other. At the same time, the most important thing – this is the correct relationship between user agents themselves as well as with the proxy server.

SIP communication protocol has two types: it requests and responses.

To establish a connection protocol SIP, there are three algorithms:

  • with the proxy server
  • with the redirect server
  • establishment protocol directly between users

Most often among users found the script to connect to the proxy server.

When it prompts for user A connection by sending «INVITE» to a specific address of the server that it is known in advance. The default port is 5060. This request has already been specified address of the user who invoked.

Next, the proxy server sends the request to the server determining the location to find the current address of the called user. Accordingly, the proxy server receives an answer to your question.

After the address of another user specifies a proxy server forwards the request «INVITE» already directly to the user B. The request has data about the features of the user who invoked. However, the query is added to the field «via», which listed the address of the proxy server, all the answers were walking through it.

The user equipment sends a call B, and the proxy server 180 transmits a message «RINGING» (as instead the message may be transmitted 183 «Session Progress»). Translated, it means “request is being processed.”

Then, the proxy server sends «RINGING» message to the user that cause.

When User B accepts it, the equipment shall notify the proxy server 200 message “OK”.

The server confirms the acceptance of a message – sends the message «ACK». Then the connection is established and data exchange begins.

When the conversation ends, the phase of the closing session of the conversation. One party sends a message «BYE», which is transmitted to both sides. Party, which is called confirms his message 200 «OK».