Sunteți pe pagina 1din 37

Session Initiation

Protocol
Matt Bynum, CCIE (Voice) #21753

SIP is a protocol for


establishing sessions in an
IP network.

Agenda
Protocol

History

SIP 101
Cisco and SIP
(Ssshhh!) Other
Future of SIP

vendors and SIP

Protocol History

To know where youre going, you have to know where youve been.
- who knows? Not Google.

Setting the Stage


The Internet Engineering Task Force first met in 1986.
The mission of the IETF is to make the Internet work better
by producing high quality, relevant technical documents
that influence the way people design, use, and manage the
Internet.
- http://www.ietf.org/about/mission.html

DNS dhcp IPv4 IPV6 TCP UDP RTP


SMTP TELNET IGMP ICMP FTP ECHO
ARP POP3 OSPF SNMP RIP

http://tools.ietf.org/html/rfc

IETF Meetings
The First IETF Audiocast occurred in
1992. Since then,
IETF sessions
Create
were conducted on
the
Mbone.
1

Descr.: DNS Discussion San


Fran
Disseminate
Orig.: John Doe
j.doe@com.com
Info: http://www.com.com
Join
SAP/NNTP/HTTP
Start: 04.04.2001 / 09.30
End: 04.20.2001 / 16:30
Invite
Media
Media: Audio GSM
PC/Telephone
SMTP/SIP
224.1.6.7/49000
Media: Video H.263
224.1.6.8/49100
PC/Telephone

Simple Conference Invitation Protocol


by Henning
Schulzrinne

TCP/SCIP

CALL
CHANG
E
CLOSE
1xx
2xx
3xx
4xx
5xx

Session Invitation Protocol

UDP/SDP

by Mark Handley and


Schooler
SUCCESS
UNKNOWN
UNSUCCESSFU FAILED
L
FORBIDDEN
BUSY
RINGING
DECLINE

Eve
RINGING
TRYING
REDIRECT
ALTERNATIVE

NEGOTIATE

Simple Conference Invitation Protocol


SCIP/1.0 302 Callee has moved temporarily
Location: jones@salt.lab3.company.com
Location: jones@pepper.lab3.company.com
CALL hgs@lupus.fokus.gmd.de 1.0
SIP/1.0 REQ
User-Agent: coco/1.3
PA=128.16.65.19 16
From: Christian Zahl <cz@cs.tu-berlin.de>
AU=none
To: Henning Schulzrinne
ID=128.16.65.19/32492374
<schulzrinne@fokus.gmd.de>
FR=M.Handley@cs.ucl.ac.uk
Call-Id: 9510021900.AA07734@lion.cs.tuTO=J.Crowcroft@cs.ucl.ac.uk
berlin.de
v=0
Referer: ceres.fokus.gmd.de
o=van 2353644765 2353687637 IN IP4
Expires: Mon, 02 Oct 1995 18:44:11 GMT
128.3.4.5
Required: fc99cb08 audio/pcmu; port=3456;
s=Mbone Audio
transport=RTP;
i=Discussion of Mbone Engineering Issues
rate=16000; channels=1; pt=97;
e=van@ee.lbl.gov (Van Jacobsen
net=224.2.0.1; ttl=128,
c=IN IP4 224.2.0.1/127
audio/gsm; port=3456; transport=RTP;
t=0 0
rate=8000; channels=1,
m=audio 3456 RTP PCMU
audio/lpc; port=3456; transport=RTP;
rate=8000; channels=1

Session Invitation Protocol

Papa SIP
Personal Mobility for Multimedia Services in the
Internet
by Henning Schulzrinne*, March 1996
http://www.cs.columbia.edu/~hgs/papers/Schu9603_Personal.
pdf

http://www.cs.columbia.edu
/~hgs/
* Developed

The Internet Architect


SIP (RFC 2543, RFC 3261); SDP (RFC 2327; SAP, RFC 2974); Protocol
Independent Multicast-Sparse Mode (PIM-SM, RFC 2362), TCP-Friendly Rate
Control (TFRC, RFC 3448), Multicast-Scope Zone Announcement Protocol
(MZAP, RFC 2776), Multicast Address Allocation (RFC 2908, RFC 2909), TCP
Congestion Window Validation ( RFC 2861), Reliable Multicast ( RFC 3451,
RFC 3452, RFC 3453, RFC 3048), Datagram Congestion Control Protocol
( RFC 4340, RFC 4336).
Mark Handley
Founder of XORP (www.xorp.org)

http://www.cs.ucl.ac.uk/staff/M.Handley/

SIP Drafts

http://www.cs.columbia.edu/sip/history.htm

Dec. 2, 1996
draft-ietf-mmusic-sip-01
March 27, 1997
draft-ietf-mmusic-sip-02
July 31, 1997
draft-ietf-mmusic-sip-03
November 11, 1997 draft-ietf-mmusic-sip-04
May 14, 1998
draft-ietf-mmusic-sip-05
June 17, 1998
draft-ietf-mmusic-sip-06
July 16, 1998
draft-ietf-mmusic-sip-07
August 7, 1998
draft-ietf-mmusic-sip-08
September 18, 1998 draft-ietf-mmusic-sip-09
September 28, 1998 Last call
November 12, 1998 draft-ietf-mmusic-sip-10
December 15, 1998 draft-ietf-mmusic-sip-11
January 15, 1999 draft-ietf-mmusic-sip-12
February 2, 1999 Approved
March 17, 1999
RFC 2543

The Hitchhikers Guide to SIP


http://tools.ietf.org/html/rfc5411

SIP Today

RFC 3261 (SIP: Session Initiation Protocol)


RFC 3263 (Session Initiation Protocol (SIP): Locating SIP Servers)
RFC 3264 (An Offer/Answer Model with Session Description Protocol (SDP))
RFC 3265 (Session Initiation Protocol (SIP)-Specific Event Notification)
RFC 3325 (Private Extensions to SIP for Asserted Identity within Trusted Networks)
RFC 3327 (SIP Extension Header Field for Registering Non-Adjacent Contacts)
RFC 3581 (An Extension to SIP for Symmetric Response Routing)
RFC 3840 (Indicating User Agent Capabilities in SIP)
RFC 4320 (Actions Addressing Issues Identified with the Non-INVITE Transaction in
SIP)
RFC 4474 (Enhancements for Authenticated Identity Management in SIP)
GRUU
(Obtaining and Using Globally Routable User Agent Identifiers (GRUU) in
SIP)
OUTBOUND (Managing Client Initiated Connections through SIP)
RFC 4566 (Session Description Protocol)
SDP-CAP (SDP Capability Negotiation)
ICE
(Interactive Connectivity Establishment)
RFC 3605
(Real Time Control Protocol (RTCP) Attribute in the Session Description
Protocol)
RFC 4916 (Connected Identity in the Session Initiation Protocol (SIP))
RFC 3311 (The SIP UPDATE Method)

Dont
Panic!

SIP 101

Any sufficiently advanced technology is indistinguishable from magic.


- Arthur C. Clarke

User Agents
Client

Server

Proxy

Registrar

Redirect

SIP Methods
METHOD
INVITE

DESCRIPTION
Session setup

ACK
final response to INVITE

Acknowledgement of

BYE

Session termination

CANCEL
cancellation
REGISTER
URI
INFO
transport
OPTIONS
capabilities
PRACK
acknowledgement
UPDATE
information
REFER
SUBSCRIBE
an event
NOTIFY

Pending session
Registration of a users
Mid-call signaling
Query of options and
Provisional response
Update session
Transfer user to a URI
Request notification of
Transport of subscribed

SIP Responses
CLASS

DESCRIPTION

1xx
Provisional or Informational Request is
progressing but not yet complete
2xx
successfully

Success Request has been completed

3xx
location

Redirection Request should be tried at another

4xx
Client Error Request was not completed because
of an error in the request, can be retried when corrected
5xx
Server Error Request was not completed because
of an error in the recipient, can be retried at another location
6xx
be retried again

Global Failure Request has failed and should not

Basic Call Flow


User Agent

Proxy Server

INVITE

User Agent

INVITE

100 Trying
180 Ringing
180 Ringing
200 OK
200 OK
ACK

ACK

Media Session
BYE

200 OK

BYE
200 OK

Example SIP Request


INVITE sip:matt@ncug.org SIP/2.0
Via: SIP/2.0/UDP 216.81.194.139:5060;branch=j3mF42aV349
From: TN
Lottery<sip:youwon@tnlottery.com>;tag=27fn23ask
To: Matt <sip:matt@ncug.org>
Call-ID: 393j23m9df3adv3211
Max-Forwards: 70
Cseq: 1 INVITE
Contact: sip:youwon@216.81.194.139
Content-Type: application/sdp
Contact-Length:
126
v=0
o=youwon 2890844526 2890844526 IN IP4
youwon.tnlottery.com
s=SIP Call
c=IN IP4 216.81.194.139
t=0 0
m=audio 32894 RTP/AVP 0 101
a=rtpmap: 0 PCMU/8000

Example SIP Response


SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.0.0.1:5060;branch=j3mF42aV349
From: Matt <sip:matt@ncug.org>;tag=32fd45d36-d4ad
To: TN Lottery<sip:youwon@tnlottery.com> ;tag=27fn23ask
Call-ID: 393j23m9df3adv3211
Max-Forwards: 70
Cseq: 1 INVITE
Contact: <sip:matt@10.0.0.1:5060>
Content-Type: application/sdp
Contact-Length: 126
v=0
o=matt 7844 125 IN IP4 10.0.0.1
s=SIP Call
c=IN IP4 10.0.0.1
t=0 0
m=audio 43589 RTP/AVP 0
a=sendrecv
a=rtpmap: 0 PCMU/8000

http://tools.ietf.org/html/rfc239

Uniform Resource
Identifier

sip:user@domain.com

Cisco and SIP

"Cisco's multi-protocol packet voice strategy includes support for


SIP, and we believe the promise of SIP has become a reality.
- Lou Santora, former VP of Ciscos voice technology group in 2002

Cisco Fellow
Active in IETF
Co-author of the Session Initiation Protocol (SIP), RFC 3261,
SIMPLE - SIP for presence and IM.
STUN (Simple Traversal of UDP through NAT)
TURN (Traversal Using Relay NAT)
XCAP (XML Configuration Access Protocol)
Author of 30 patents and publications, 45 Internet RFCs,
and numerous Internet Drafts in the area of multimedia
communications over packet networks

Jonathan Rosenberg
http://www.jdrosen.net/

SIP Enabled Cisco


Products

Cisco Unified SIP Proxy


NM

for the 3800 series ISR


NME-CUSP-522-K9
2 GB of RAM
160 GB hard disk
Gigabit Ethernet to the router backplane
Supported on 12.4.22T

Simplifies

management of large SIP

networks
CUSP uses a counted license (10, 30,
and 100 calls per second)

Cisco UC Manager
Functions

as a B2BUA

owns each leg of call as a separate

dialog
more stateful than proxy servers
inter-work SIP with other protocols
B2BUA

for all types of SIP calls (trunk


and line)
Ciscos implementation is 100%
standards compatible SIP

But
There

are extensions to SIP


implemented in CUCM for SCCP
feature parity.
Leads to two modes of SIP support
for phones.

Advanced
Basic

Third-Party SIP Phone


Categories
Device Type

Basic

Advanced

SIP Capabilities

RFC 3261 and


Related RFCs

RFC 3261 and


Related RFCs

Authentication

Digest Auth Only

Digest Auth and


TLS

Media Encryption

No

Yes

Number of Lines

Up to 8

Calls per Line

Wireless (802.11 or Dual


Mode)

No

Yes

Video

No

Yes

Number of Device
License Units Consumed

Cisco Unified Border


Element
Feature

in IOS, since 12.3.11T


(version 1.0)
was IPIPGW
up to version 1.3 as of 12.4.22YB

Allows

for demarcation point in SP


scenarios
Provides H.323<->SIP
interoperability
Two licensing models, CUBE session
licenses, or flat INTVVSRV license

Same ol Dial-peers
SIP-VG(config)# voice service voip
SIP-VG(config-voi-serv)# allow-connections sip to sip
SIP-VG(config-voi-serv)# allow-connections sip to
h323
SIP-VG(config)# dial-peer voice 2111 voip
SIP-VG(config-dial-peer)# session target
ipv4:10.0.0.1
SIP-VG(config-dial-peer)# session protocol sipv2
SIP-VG(config-dial-peer)# session transport tcp
SIP-VG(config-dial-peer)# destination-pattern 615[29]
SIP-VG(config-dial-peer)# dtmf-relay sip-notify rtpnte

Troubleshooting CUBE
SIP-VG# debug ccsip ?
all
calls
error
events
info
media
messages
preauth
states
transport
SIP-VG# debug voip dial-peer
SIP-VG# show sip-ua service

Cisco Unified Presence

Presence server provides SIP SUBSCRIBE/NOTIFY


functionality to the Cisco Unified Personal
Communicator
Integrates with CUCM via SIP Trunk

SUBSCRIBE ext 1111


NOTIFY ext 1111

Other Vendors and SIP

Competition is not only the basis of protection to the consumer,


but is the incentive to progress
- Herbert Hoover

SIP, its everywhere

Future of SIP

As far as I'm concerned, progress peaked with frozen pizza.


- John McClain, Die Hard 2

Whats next?
P2P

SIP (DNS SRV, end-point


resolution)
Universal Personal
Telecommunications
Presence as the dial-tone of the 21 st
century
ENUM (E.164 to SIP URI discovery)
Extensions Galore

Links

http://www.cs.columbia.edu/sip/talks.html
http://en.wikipedia.org/wiki/Universal_Personal_Telecommu
nications
http://www.voip-info.org/wiki/view/SIP
http://www.scribd.com/doc/6293213/SIP-Presentation
http://www.ietf.org/rfc/rfc3261.txt
http://www.sipworkbench.com/
http://engineering.columbia.edu/videos/schulzrinne/index.h
tml
http://www.cs.columbia.edu/sip/history.html

The End

S-ar putea să vă placă și