SIP - A Multimedia Communications Protocol
This is a guest post from the guys over at TestFreaks, a website that collects product information and reviews of different categories of products from thousands of sources.
Due to Globalization, video conference, Internet telephonic calls and other multimedia connection are basic requirement to everyone, at that time VoIP comes into picture. VoIP make an effort to deliver the wide range of applications wanted by customers and service providers while increasing conductibility and simplifying fundamental design to ease development and deployment. One protocol which has fit is Session Initiation Protocol (SIP). SIP is very helpful for signaling in VoIP that's why most of VoIP developers have adopted SIP as the interior IP telephony standard.
Today, increasing numbers of carriers, Mobile Phones and ITSPs are contributing such SIP-based services, presence & Instant Messaging, voice messaging, push-to-talk, prosperous media conferencing, and many more.SIP protocol described how to set up Internet telephone calls, video conference etc.
SIP was designed by SIP working group who are part of IETF (Internet Engineering Task Force).SIP is a request - response protocol which is implemented in the application layer of the OSI model.SIP manages any type of communication session, without worry of media type such as phone call, Instant Messaging and gaming.SIP is capable of establishing, modifying and terminating session.
SIP provides user location and name translation facility which gives surety that call reaches to the user because SIP supports name mapping and address resolution.
SIP provides facility to find out user availability weather User is available at that point or not. If call is not completed then SIP determines the reason and inform about it.
SIP provides user capability for feature negotiation which will allow to discus about changing of a media characteristic or certain codec which are not supported by SIP.
SIP provides facility to Session set up and session management. Session set up is used for establishing a communication parameter at the both side and session management is used for changing session parameter and session termination.
SIP Session Anatomy:
SIP is basically consisting of a two basic component.
SIP user agent(UA) is an end point entity such as Mobile phone, PC, PDA, IP phone or automated answering server.SIP user agent is also consist of a two part one is User Agent Client (UAC) which is used for requesting a call. The role of UAC takes place up to duration of that transaction. If a piece of software initiates a request, it acts as a UAC for the duration of that transaction. If it receives a request later, it assumes the role of a user agent server for the processing of that transaction. Second is User Agent Server (UAS) which is used to answer the call.UAS response, redirect or reject request.
SIP network Server is used to support advance calling function.SIP network consist of a three main group.
SIP Register Server stores information about SIP address and associated IP address.SIP Register server receives a registration message and updating a location database with the contact information of the user specified in the request.
SIP Proxy Server accepts a request made by UA and query to SIP register server to find UA's addressing information.SIP proxy server is an element that rout SIP request to UA server and SIP response to UA clients. If proxy server will find request in its same domain it will response to it weather it will not found in same domain then forward it to next proxy server. Response method will play vice versa.SIP proxy server is operating either in a stateless or stateful mode. In stateful mode, Proxy server is simple forwarding element while in stateless mode proxy server may be choose to path of element, forward it to next destination..
SIP Redirect Server places a call to the desired target. The request is sent to SIP server which will return associated address or zero if no address found.SIP Redirect server is basically designed to reduce load on proxy server and improve signaling path by reply on redirection.
Figure: SIP Architecture
A SIP message consists of two types. First one is SIP request messages, which is send client to the server and second one is SIP response messages, which is sent server to client lets first look SIP Request messages.
INVITE -Indicate a user or service is being invited to participate in a call session.
ACK- Conformation that final response to inform.
BYE-Terminate a call
CANCEL -Cancel any pending call but does not terminate call which request is accepted
OPTIONS- Query the machine about the capability
REGISTER -Register with the location service.
PRACK- Provisional acknowledgement.
Now discuss about SIP Response message which is based on HTTP response codes.
SIP 1xx- Provisional, searching, ringing etc.
SIP 2xx- Successful response
SIP 3xx -Redirection response for ex. Temporally moved
SIP 4xx- Request Failure response
SIP 5xx - Server failure response
SIP 6 xx- Global failure response
SIP is very flexible.SIP address is referred as a Uniform Resource locator(URL) We can use any type of address which follows SIP format to identify sender and receiver .It may be email address, IP address, Phone number or any other.
SIP addresses format like this.sip:firstname.lastname@example.org. For example
There is a large variety of IP phones, User Agents, network proxy servers, VOIP gateways, media servers and application servers utilizes SIP.
SIP service provider can establish a totally new medium consisting of voice, video and chat. So it is used in communication device such as Email, Phone call, Fax etc. Using SIP, two companies located in different country can communicate with each other very easily with low cost.
There are many companies which provide Internet telephony products, services and infrastructure for service providers who offers a SIP based PC-to-Phone solution using these PC users can call any phone in the world.
SIP is also providing facility like instant messaging, Directory service, web call center, desktop call management etc.
Advantage of SIP:
It provides simple communication network as its required one set of cable to handle voice, data and video.SIP is very flexible as it is allowing multiple dialing method, use of wireless device. SIP is providing simple structure so it's become easy to set up.