• Session Initiation Protocol (SIP) was designed by IETF and is described in RFC 3261.
We’ll be covering the following topics in this tutorial:
Features of SIP
• It is an application layer protocol that describes how to set up Internet telephone calls, video conferences and other multimedia connections, manage them and terminate them.
• Unlike 4.323, which is a complete protocol suite, SIP is a single module.
• SIP can establish two way party session (ordinary telephone calls), multiparty session (where everyone can hear and speak), multicast session (one sender, many receivers)
• The SIP just handles setup, management and termination of sessions. Other protocols such as RTPIR TCP are used for data transport.
• SIP is designed independent of the underlying transport layer; it can run on UDP or TCP.
SIP Addresses
• In a regular telephone communication, a telephone number identifies the sender and another telephone number identifies the receiver.
• In SIP, the sender and receiver can be identified by any of these:
1. An Email address
2. An IP address
3. A telephone number
• All these addresses are represented as URLs using the sip scheme or format.
SIP: [email protected] E-mail address
SIP: dineshthakur@ 201.23.45.78 IP address
SIP: dineshthakur@+91-9815618378 Phone Number
SIP Messages
• SIP is a text based protocol modeled on HTTP.
• Like HTTP, SIP uses messages in ASCII text.
• Each message has a header and a body.
• The header consists of several lines that describe the structure of the message, caller’s capability, and media types and so on.
• The various SIP messages are listed in the table below:
SIP Session
A simple session using SIP consists of:
1. Establishing a session
2. Communication
3. Terminating the session
1. Establishing a Session
• Establishing a session requires a three-way handshake.
• The caller sends an INVITE message, using TCP or UDP to begin the communication.
• If the caller is willing to start, he/she sends a reply message.
• To confirm that a reply code has been received the caller sends an ACK message.
2. Communication
• After the session has been established the caller and caller can communicate by using two temporary ports.
3. Terminating the Session
• The session can be terminated with a BYE message sent by either party.