Professional Documents
Culture Documents
Session Initiation Protocol (SIP)
Session Initiation Protocol (SIP)
Session Initiation Protocol (SIP)
What is SIP?
Fundamentals of SIP
Mobility Support Using SIP
What is SIP ?
An application-layer signaling protocol that can
establish, modify and terminate multimedia
sessions or calls.
Developed by IETF (Version 2, March 1999)
Applications: Voice over IP, Multimedia
Conferences, and Distance Learning etc.
Simple, scalable, extensible, and mobile.
(Compared to H.323)
SIP Features
User Availability: SIP determines the willingness of the called party to engage in
communications.
User Capabilities: SIP negotiates the type of media and media parameters to be
used for communication.
Call Setup and Handling: SIP establishes, maintains and terminates the call.
User Agent
PSTN
Gateway
Proxy Server is like an intermediary program that acts as both a server and a client. Requests are
forwarded, possibly after rewriting the request message.
Redirect Server advertises the caller to contact another server directly. A redirect server can leave
behind the call request after it has been processed.
Location Server contains the information about callee’s possible location. Location server is usually
integrated in redirect or proxy server.
SIP Messages – Requests and Responses
SIP Requests: SIP Responses:
INVITE – Initiates a call by inviting
user to participate in session.
1xx - Informational
ACK - Confirms that the client has
Messages.
received a final response to an 2xx - Successful
INVITE request. Responses.
BYE - Indicates termination of the
call.
3xx - Redirection
CANCEL - Cancels a pending
Responses.
request. 4xx - Request Failure
REGISTER – Registers the user Responses.
agent. 5xx - Server Failure
OPTIONS – Used to query the
capabilities of a server.
Responses.
INFO – Used to carry out-of-bound 6xx - Global Failures
information, such as DTMF digits. Responses.
SIP Addressing
Email-like address: user@host.
Examples of SIP addresses:
sip: chen@montana.edu
sip: chen@153.90.112.34
sip: 4069944271@montana.edu
SIP Headers
HTTP-like message
An example of SIP header:
-----------------------------------------------------------------
SIP Header
-----------------------------------------------------------------
INVITE sip:dong@montana.edu SIP/2.0
From: sip:chen@montana.edu
To: sip:dong@montana.edu
Call-ID: 12345@sip:dong@montana.edu
CSeq: 100 INVITE
Contact: sip:chen@montana.edu
Content-Type: application/sdp
Direct Communication between Endpoints
Chen@montana.edu Dong@montana.edu
Port: 1234 Port: 5678
INVITE
100 Trying
180 Ringing
200 OK
ACK
Data Flow
BYE
200 OK
SIP Operation in the Presence of a Proxy Server
CALLER UA Proxy Server CALLEE UA
INVITE Dong
INVITE Dong@montana.edu
100 Trying
180 Ringing
200 OK
200 OK
ACK
ACK
Data Flow
BYE
200 OK
SIP Operation in the Presence of a Redirect Server
UAC Redirect Server UAS
INVITE Dong@montana.edu
302 Moved temporarily
ACK
INVITE Dong@ece.montana.edu
100 Trying
180 Ringing
200 OK
ACK
Data Flow
BYE
200 OK
Mobility in an IP Environment
Terminal mobility: terminal moves between
subnets
Personal mobility: different terminals, same
address
Service mobility: keep same services while
mobile
IP Mobility
The IETF has standardized IP mobility support: uses
tunneling of IP packets from a Home Agent to a Foreign
Agent to make the mobility transparent to the higher
layer.
http://www.ietf.org/html.charters/sip-charter.html
http://www.si2.org/si2_publications/SIPPs/pdf/
http://www.cs.columbia.edu/~hgs/sip/