0% found this document useful (0 votes)
354 views71 pages

Session Initiation Protocol 1 2002

SIP is a signaling protocol for establishing multimedia sessions over the internet. It can be used to set up voice or video calls and conferences. SIP addresses users similarly to email addresses and uses DNS to locate SIP servers and users. The key components in a SIP architecture include user agents, proxies, registrars, and location servers. SIP supports various methods for call setup, redirection, and termination between users.

Uploaded by

Payal_C
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
354 views71 pages

Session Initiation Protocol 1 2002

SIP is a signaling protocol for establishing multimedia sessions over the internet. It can be used to set up voice or video calls and conferences. SIP addresses users similarly to email addresses and uses DNS to locate SIP servers and users. The key components in a SIP architecture include user agents, proxies, registrars, and location servers. SIP supports various methods for call setup, redirection, and termination between users.

Uploaded by

Payal_C
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 71

Session Initiation Protocol

(SIP)

Onno W. Purbo
[email protected]
Referensi
 Henning Schulzrinne, Columbia
University, New York, May 2001
 Dr. Andreas Steffen,
Komunikationsysteme
SIP in short ..
 Dr. Andreas Steffen,
Komunikationsysteme
SIP addressing ..
SIP processes
SIP format
Overview
 Protocol architecture
 Typical component architecture
 Addressing and locating SIP entities.
 Protocol operation and extensions.
Introduction ..
 SIP = core protocol for establishing
sessions in the internet.
 Transports session description
information from initiator (caller) to
callees.
 Allows to exchange parameters in mid-
session.
 Terminate session.
VoIP protocol architecture
Media Protocol Stack
SIP Protocol Use
SIP Applications ..
 Setting up voice-over-IP calls.
 Setting up multimedia conferences.
 Event notification (subscribe / notify) 
IM and presence.
 Text and general messaging.
 Signaling transport.
SIP addressing
 SIP uses e-mail style addressing to
identify users.
Personal Mobility
SIP addressing ..
 Typically, same as user’s e-mail
address:
[email protected]
[email protected]
 Written as URL, e.g,
 Sip:[email protected]
 Can add parameters, such as, type
(user=“phone”) or transport protocol.
Tel URLs (RFC 2806)
 Also can use tel URL for telephone numbers,
e.g.,
 Tel:+0811797677
 Fax:+022.253.4677
 Either global (tel:+001..) or local
(tel:0w00222534677; phone-
context=+0222534677) number.
 Allow post-dialing digits; postd=pp32.
 Also modem:+52990000; type=v32b?7e1;
type=v110.
SIP building blocks
Back-to-Back UA (B2BUA)
 Two (or more) user agents, where
incoming calls trigger outgoing calls to
somebody else.
 Also, “third-party call control” (later)
 Useful for services and anonymity
Back-to-Back UA (B2BUA)
Maintaining state in SIP
enitities.
 Stateless:
 Each request and response handled
independently.
 (Transaction) Stateful:
 Remember a whole request/response
transaction.
 Call stateful:
 Remember a call from beginning to end.
SIP archirecture
 Peer-to-peer
 Outbound proxy
 VoIP to PSTN
 PSTN to VoIP
peer-to-peer
outbound proxy
VoIP to PSTN
PSTN to VoIP
SIP operation in proxy mode
SIP operation in redirect mode
 302: redirection for a single call
 301: permanently
Locating SIP users
Registrar and location servers
Basic user location mechanism
 Host (SIP URL)  hostname of proxy
 DNS: hostname of proxy SIP server(s)
 If SIP UAS: alter user; done.
 If SIP proxy/redirect server: map URLn 
URLn+1, using any information in the request
 Go to step 1

One minor exception ..


Basic SIP “routing” mechanism
 Will fill in details later
 Route using request URIs.
 All but first request in call typically bypass
proxies and go direct UAC-UAS.
 However, can use “record-routing” to force
certain proxies to be visited all the time.
 Responses always traverse the same route as
requests
Outbound proxies
 Normally, proxy servers one or more
domains.
 Outbound proxies are used for all outbound
requests from within a domain.
 Typically, for managing corporate firewalls
and policy enforcement.
 May also provide dial plans or route tel/fax
URLs.
 Other uses: lawyer client billing, ..
Locating users: DNS SRV ..
 e-mail: DNS MX record mapping domain
to mail server(s).
 SIP: use newer record for general
purpose mapping, SRV (RFC 2782)
 Mapping from service and transport
protocol to one or more servers,
including protocols.
Locating users: DNS SRV ..

 Allow priority (for back-up) and weight


(for load balancing).
Using DNS SRV for scalable
load balacing ..
Aside: SIP scaling ..
 HTTP request director  SIP client-
based
 HTTP randomized DNS (short TTL!)
 SRV weight and priorities.
 Can’t just distribute request randomly,
since backend (registration)
synchronization is needed.
Aside: SIP scaling ..
 Registration scaling: request/second *
3600; e.g. 100 request/second 
360.000 user/server.
 Major bottleneck are logging and
database updates.
 Generally, higher registration than
INVITE rates.
SIP operation ..
SIP requests and responses
 Text, not binary, format.
 Look very similar to HTTP/1.1
 Requests and responses are similar
except for first line.
 Requests and responses can contain
message bodies; typically session
descriptions, but also ASCII or HTML.
SIP syntax
SIP syntax
 Field names and some tokens, e.g.
media type, are case-insensitive.
 Everything else is case-sensitive.
 White space doesn’t matter except in
the first line.
 Lines can be folded.
 Multi-valued header fields can be
combined as a comma-lists.
SIP methods
SIP invitation and media
negotiation
Tagging To
 After forking and merging, hard to tell
who responded.
 UAS responds with random tag added
to disambiquate
 To: “cuk” <sip:[email protected]>;
tag=7gt8
 Future requests ignored if they contain
wrong tag.
SIP call legs
 Call legs: From, To, Call-ID
 Requests from callee to caller reverse
To and From.
 Caller and callee keep their own Cseq
space.
 Either side can send more INVITEs or
BYE
SIP responses
SIP response routing ..
 Request are routed via URL
 Response trace back request route
without proxy server state
 Forward to host, port in next Via
 TCP: re-use connection if possible, create
new one if needed.
 UDP: may send responses to same port as
requests.
SIP response routing
SIP spirals
SIP spirals
Forcing Request Path
 Usually, bypass proxies on subsequent
requests.
 Some-proxies want to stay in path 
call-stateful:
 Firewalls
 Anonymizer proxies.
 Proxies controlling PSTN gateways.
 Use Record-Route and Route
Request Routing
SIP request forking
SIP sequential request forking
SIP request forking
 Branches tried in sequence or parallel
(or some combination).
 Recursion: may try new branches if
branch returns 3xx.
 Return best final answer = lower status
code.
 Forward provisional responses.
Parallel forking call flow
SIP transport issues
 SIP over any packet network, reliable or
unreliable.
 Choices:
 UDP: most common
 Low state overhead
 Small max. packet size
 TCP: can combine multiple signaling flows over one
link
 Use with SSL
 Connection setup overhead
 HOL blocking for trunks
SIP transport issues ..
 Choices:
 SCTP: new protocol
 No HOL blocking
 Fall back address (but SVR provides this
already)
 Connection setup overhead
Other signaling approaches
Diff to classical signaling
Aside: Alternative architecture
 Master-slave: MGC (media gateway
controller) controls one or more gateways.
 Allows splitting of signal and media
functionality.
 “please send from circuit 42 to 10.1.2.3”
 Uses MGCP (implemented) or Megaco/H.248
(standarized, but just beginning to be
implemented).
 Gateway can be residential.
Aside: Alternative architecture
 Basis of PacketCable NCS (Network
Control System) architecture.
 Service creation similar to digital PBX or
switch.
 End system has no semantic knowledge
what’s happening.
  can charge for caller id, call waiting.
MGCP/SIP architecture

You might also like