Session Initiation Protocol (SIP) is one of the most common protocols used in VoIP technology. It is an application layer protocol that works in conjunction with other application layer protocols to control multimedia communication sessions over the Internet.
Before moving further, let us first understand a few points about VoIP.
- VOIP is a technology that allows you to deliver voice and multimedia (videos, pictures) content over the Internet. It is one of the cheapest way to communicate anytime, anywhere with the Internet’s availability.
- Some advantages of VOIP include −
- Low cost
- No extra cables
- Video conferencing
- For a VOIP call, all that you need is a computer/laptop/mobile with internet connectivity. The following figure depicts how a VoIP call takes place.
With this much fundamental, let us get back to SIP.
SIP – Overview
Given below are a few points to note about SIP −
- SIP is a signalling protocol used to create, modify, and terminate a multimedia session over the Internet Protocol. A session is nothing but a simple call between two endpoints. An endpoint can be a smartphone, a laptop, or any device that can receive and send multimedia content over the Internet.
- SIP is an application layer protocol defined by IETF (Internet Engineering Task Force) standard. It is defined in RFC 3261.
- SIP embodies client-server architecture and the use of URL and URI from HTTP and a text encoding scheme and a header style from SMTP.
- SIP takes the help of SDP (Session Description Protocol) which describes a session and RTP (Real Time Transport Protocol) used for delivering voice and video over IP network.
- SIP can be used for two-party (unicast) or multiparty (multicast) sessions.
- Other SIP applications include file transfer, instant messaging, video conferencing, online games, and steaming multimedia distribution.
Where Does SIP Fit In?
Basically SIP is an application layer protocol. It is a simple network signalling protocol for creating and terminating sessions with one or more participants. The SIP protocol is designed to be independent of the underlying transport protocol, so SIP applications can run on TCP, UDP, or other lower-layer networking protocols.
The following illustration depicts where SIP fits in in the general scheme of things −
Typically, the SIP protocol is used for internet telephony and multimedia distribution between two or more endpoints. For example, one person can initiate a telephone call to another person using SIP, or someone may create a conference call with many participants.
The SIP protocol was designed to be very simple, with a limited set of commands. It is also text-based, so anyone can read a SIP message passed between the endpoints in a SIP session.