Sip Implementation Protocol

Download Report

Transcript Sip Implementation Protocol

Sip Implementation Protocol
Presented By:
Sanjay Agrawal
Sambhrama Mundkur
12/05/2000
CS590F, Purdue University
1
Contents






Introduction
Need for SIP
Overview of the protocols in multimedia
sessions
SIP Services, Components and Operations
Implementation building blocks
Progress so far..
12/05/2000
CS590F, Purdue University
2
Introduction



Need for comprehensive multimedia control
architecture for the internet
Synchronous voice or multimedia
communication between two or more parties,
requires a means for prospective
communications partners to find each other
and to signal the other party their desire to
communicate – IPTelephony Signalling
Can be employed in Phone calls, multiparty
conferences, video-on-demand, virtual
presentations
12/05/2000
CS590F, Purdue University
3
SIP over H.323




Complexity
Scalability
Extensibility
SIP is a powerful, flexible, simple and scalable
protocol that could serve as a real foundation
for true wide area Internet telephony
12/05/2000
CS590F, Purdue University
4
Protocols






Session Initiation Protocol – for signaling
Reservation Protocol – for reserving network
resources
Real-Time protocol – Transporting real-time
data and providing QoS feedback
Real-Time Streaming protocol – for controlling
delivery of streaming media
Session Advertising Protocol – advertising
multimedia sessions via multicast
Session Description Protocol – to describe
multimedia sessions
12/05/2000
CS590F, Purdue University
5
Session Initiation Protocol




Application layer protocol for creating,
modifying and terminating multimedia
sessions
Supports unicast, mesh and multicast
conferences, and combination of these modes
Similar to HTTP, Client-Server protocol, and
text-based
Provides reliability without assuming anything
about the lower layer transport protocols
12/05/2000
CS590F, Purdue University
6
Components


User Agents
 User Agent Client
 User Agent Server
Network Servers
 Registration Servers
 Proxy Servers



12/05/2000
Stateful Proxy Server
Stateless Proxy Servers
Redirect Servers
CS590F, Purdue University
7
Parser




Sip messages are sent as text (Unicode
characters)
The Sip message grammar is given in the
augmented BNF-form (RFC 2543)
Syntax tree builder (JTBGJ)
Parser Generator (Javacc)
12/05/2000
CS590F, Purdue University
8
Protocol Building blocks
Registration
Server
User
Agent A
Location
Server
Proxy Server
Registration
Server
User
Agent B
B’s current
location
12/05/2000
CS590F, Purdue University
9
Registration




SIP Client sends REGISTER message to the
Registration server.
Indicates the physical location
REGISTER messages can be multicast
(“sip.mcast.net” – 224.0.1.75)
Serves as a simple locator service.
REGISTER sip:belltell.com SIP/2.0
Via: SIP/2.0/UDP saturn.belltell.com
From: sip:[email protected]
To: sip:[email protected]
CSeq: 1 REGISTER
Call-ID: [email protected]
Contact: sip:[email protected]:3890
Expires: 7200
12/05/2000
CS590F, Purdue University
10
Name Translation, UserLocation


SIP Addressing by a Sip URL
(user@host:port)
Resolves host name through





DNS server
Checks if domain name refers to a host
Mail exchange host
User at a specific host derived through zero
or more translations
If called party is not at SIP server, can be
directed or proxied (personal mobility)
12/05/2000
CS590F, Purdue University
11
Session invitation




Caller sends the request directly to UAS or to
the nearest proxy server
Proxy server uses the locator service to
determine the next hop server
Proxy forwards the request towards the callee
Redirect server simply returns the alternate
addresses
INVITE
Via:
From:
To:
Call-ID:
Cseq:
12/05/2000
sip:[email protected] SIP/2.0
SIP/2.0/UDP c.belltell.com
sip:[email protected]
sip:[email protected]
[email protected]
1 INVITE
CS590F, Purdue University
12
Session Invitation (cont.)




If there are more than one locations to be
contacted, the proxy forks the requests to all
the locations.
The callee’s response is propagated
backwards the servers ( uses the Via header )
Stateful Proxy maintains the state according
to the Call-ID. So forwards responses
accordingly
The caller sends ACK request following the
response.
12/05/2000
CS590F, Purdue University
13
Feature negotiation




Allows a group of end systems to agree on
the media to exchange and their respective
parameters such as encodings.
INVITE request has a listing of media types
and associated encodings that the calling
party is willing
Called party responds with a subset of media
types and encodings that it is willing to use
Feature changes


12/05/2000
Subsequent INVITE request
OPTIONS request
CS590F, Purdue University
14
Progress so far..


Study of the protocols used in IP Telephony
Basic Implementation of SIP





12/05/2000
Parser
UAS/UAC
Proxy Server – Stateful and Stateless
Redirect Server
Registration Server
CS590F, Purdue University
15