Introduction to SIP
SIP, or Session Initiation Protocol, is a signalling protocol, which is widely used for setting up and tearing down multimedia communication sessions, such as voice and video calls over IP. Other potential application examples include video conferencing, streaming multimedia distribution, instant messaging, presence information and online games. SIP is a request-response protocol, which closely resembles two other internet protocols, HTTP and SMTP, the protocols underlying the World Wide Web and email, respectively.
SIP provides four basic functions:
1. Translation from a user's name, to their current network address (or location).
2. A mechanism for call management - adding, transferring and dropping participants.
3. Provides feature negotiation, so that all participants can agree on the features to be supported.
4. Allows for changes to the supported features during a call.
The protocol can be used for creating, modifying and terminating two-party (unicast) or multiparty (multicast) sessions, consisting of one or more media streams. The simplicity of the specification means that SIP can scale, it is extensible, and it sits comfortably with different architectures and deployment environments. Although SIP was developed as a mechanism to establish sessions, it does not need to know the details of a session; it just initiates, terminates and modifies sessions.
Several other VoIP signalling protocols exist, but SIP is distinguished by its proponents for having roots in the IP community rather than the telecom industry. SIP has been standardized and governed primarily by the IETF while the H.323 VoIP protocol has been traditionally more associated with the ITU. However, the two organizations have endorsed both protocols in some fashion.
The SIP standard is covered by RFC3261 and other RFCs from the IETF Network Working Group.