What is the session initiation protocol (SIP)?

The session initiation protocol (SIP) is responsible for initiating and terminating audio and video connections in real time. You’ll find it often used in IP telephony.

What is SIP?

Video conferencing, instant messaging, filesharing, IP-based telephone calls and other forms of real-time communication are part of everyday life for many of us. These technologies have had a major impact on how we communicate with friends, family and colleagues. An important part of all these applications is the session initiation protocol, or SIP for short. This protocol is responsible for the initiation, management and termination of audio or video conversations that use VoIP (Voice over Internet Protocol). This protocol monitors the characteristics of IP networks and is an essential part of real-time communication.

The introduction of SIP, defined in RFC 3261, made internet-based telephony a viable alternative to traditional telephone calls, which use hardware-based telephony systems. With SIP, users enjoy increased mobility and benefit from cost savings. Since its introduction in 2004, SIP has become increasingly important, almost completely replacing stationary telephone systems.

The session initiation protocol is text based and, in many ways, similar to HTTP (hypertext transfer protocol) online and SMTP (simple mail transfer protocol) for email.

What does SIP do?

Just like the other two protocols, SIP finds itself on the fifth layer of the OSI model, the session layer. SIP is similar to a switchboard of a telephone company. On a switchboard, operators ensure that a conversation between two people can be initiated. During the conversation, the connection is maintained. When both parties are finished, the connection is terminated and the line is reopened to other calls. This is exactly what SIP does. The session initiation protocol is not responsible for the other aspects of communication.

With SIPS (session initiation protocol secure), SIP can also manage secure and encrypted conversations. Since the session and the devices are separate from each other, both their data flows can also theoretically be encrypted. In order to transfer the conversation itself, other protocols are used. These include the real-time transport protocol (RTP) and the session description protocol (SDP), which makes IP addresses available.

How does SIP work?

SIP is based on traditional client-server architecture. The base protocol works on requests and responses for which SIP acts as an intermediary between the connected devices. This means it can work with almost every internet-connected device. SIP receives the requests from clients or user agent clients (UAC) and the responses from the corresponding servers or user agent servers (UAS). Via the [SIP trunk] interface, phone numbers are published. However, other protocols are responsible for the actual transfer of data. Other components for SIP communication include proxy servers and other gateways.

The session description protocol determines which type of connection is possible and regulates modalities. These various methods are also known as codecs. The network addresses that are used are determined by the SDP. Once all this has been established, protocols such as RTP ensure the data is transferred. Once the session ends, the connection is terminated by SIP.

How is SIP addressed?

SIP uses the uniform resource identifier (URI) and the domain name system (DNS) to ensure addresses are correct. The addresses that are assigned to participants are similar to typical email addresses. As with an email address, a SIP address is made up of two parts. The first part is the username or a telephone number, and the second part is a corresponding network. Telephone numbers are common on devices which offer an interface to traditional telephone networks.

What are SIP requests?

SIP recognizes various requests which are then met with responses. The responses are based on HTTP status codes. SIP requests are separated into simple SIP requests and expanded SIP requests.

Simple SIP requests

  • ACK confirms that a request or a response has been received.
  • BYE signals the correct termination of a session.
  • CANCEL withdraws a pending request.
  • INVITE sends a request to a server to create a session.
  • OPTIONS gives devices an overview of the specification of other devices.
  • REGISTER registers a device to a service provider.

Expanded SIP requests

  • INFO sends information which is not directly related to the SIP session.
  • MESSAGE sends a text message to a device.
  • NOTIFY checks the condition of the connection and sends notifications if there are any changes.
  • PRACK confirms a request in advance.
  • REFER forwards a current connection to another participant.
  • SUBSCRIBE monitors for particular events and sends a message when they occur.
  • UPDATE changes the status of a call.

What are SIP responses?

SIP responses are essentially answers to the requests listed above. You can divide these responses into six categories:

  • 1xx provides provisional status information before the server responds.
  • 2xx shows that a request was successful.
  • 3xx gives information about any possible or necessary forwarding.
  • 4xx shows that a request could not be processed.
  • 5xx is a response to a server failure.
  • 6xx shows that although the server was able to be contacted, due to various reasons, no response is possible.

What’s the difference between SIP and VoIP?

Even though SIP and VoIP are closely related and you may find both protocols being used together, they are not the same. SIP initiates, maintains and ends connections. For the actual transfer of data packages across various network types and servers, VoIP is needed.

Was this article helpful?
We use cookies on our website to provide you with the best possible user experience. By continuing to use our website or services, you agree to their use. More Information.
Page top