SIP has been designed upon some other protocol like HTTP (Hypertext Transfer protocol), SMTP (Simple Mail Transfer Protocol). SIP borrows most of its syntax and semantics from the familiar HTTP. In an IP-based network it is used to setup, change or end calls between two or more users.
In two method calls can be setup using SIP called, Redirect and Proxy and the server are designed to handle these modes. Both modes issue an “invite” message for another user to participate in a call. The redirect server is used to supply the address (URL) of an unknown called addressee. In this case the “invite” message is sent to the redirect server, which consults the location server for address information. Once this address information is sent to the calling user, a second “invite” message is issued, now with the correct address.
The following features of SIP are playing a major role in the field of VoIP (Voice over Internet Protocol):
Media negotiation: The inbuilt SIP mechanism that allow concession of the media used in a call, enable selection of the proper codec system to making a call between various devices. Thus, simple devices can make VoIP phone call, using the selected codec system.
Feature Negotiation: This feature allows the group involved in a call to agree on the features supported. This may be a multi-party call. All the parties can support the same level of features. For some codec video may or may not be supported; as any form of MIME type is supported by SIP. During making a call one user can bring other users onto the call or cancel the call or may placed or hold the call.
User location and name translation: It ensure that the participation of the second user in the call wherever he is located. Carrying out any mapping of expressive information to location information. Ensuring that details of the nature of the call (Session) are supported.
Changes of Call features: Using SIP a user can setup Voice-Only mode, but during making a call the caller need to enable a video function. A third party joining a call may require different features to be enabled in order to participate in the call.
Some special features of Session Initiation Protocol:
- SIP messages are text based and hence are easy to read and debug. Programming new services is easier and more intuitive for designers.
- SIP re-uses MIME type explanation in the similar way that email clients do, so applications related with sessions can be launched automatically.
- SIP re-uses a number of existing and mature internet services and protocols such as RTP, DNS, RSVP etc. No new services have to be introduced to support the SIP infrastructure, as much of it is already in place or available off the shelf.
- SIP extensions are defined clearly, enabling VoIP service providers to add them for new applications without damaging their own networks. Older SIP-based equipment in the network will not hamper newer SIP-based services. An older SIP implementation that does not support technique / title utilized by a newer SIP application would simply ignore it. SIP is transport layer independent. Therefore, the underlying transport could be IP over ATM.
- SIP uses UDP - User Datagram Protocol, as well as the TCP - Transmission Control Protocol, lithely connecting users independent of the primary communications.
- SIP supports multi-device feature leveling and negotiation. If a service or session initiates video and voice, voice can still be transmitted to non-video enabled devices, or other device features can be used such as one way video streaming.
SIP sessions use up to four major components:
- SIP User Agents
- SIP Registrar Servers
- SIP Proxy Servers and
- SIP Redirect Servers.
Together, these systems deliver messages embedded with the SDP protocol defining their content and characteristics to complete a SIP session.
Further reading about SIP.