Sip Tutorialv2
Sip Tutorialv2
com
A Tutorial on SIP
Jonathan Rosenberg
Chief Scientist
Second Transaction
C S
BYE ACK
Ends a client’s participation in a session For reliability and call acceptance
CANCEL REGISTER
Terminates a search Informs a SIP server about the location
of a user
5
4
6
1
7
11
12 10
SIP Proxy
13 SIP Proxy
8
SIP UA 14 9
SIP UA
(User Agent Server)
v=0
o=user1 53655765 2353687637 IN IP4 128.3.4.5
s=Mbone Audio
i=Discussion of Mbone Engineering Issues
[email protected]
c=IN IP4 224.2.0.1/127
t=0 0
m=audio 3456 RTP/AVP 0
Two groups
Other digits give extra info
Reason
100 - 199:
Phrase
Provisional
Not
Textreliable
phrase for humans
200
-Can
699:be
Final,
anything
Definitive
Example
200 OK
180 Ringing
200 OK
200 OK
ACK
C S
200 OK
BYE
200 OK
C S
ACK
200 OK
200 OK
ACK ACK
INVITE user3@domain3
Via: C
Via: B Via: B
Via: A Via: A
Via: A
Proxy Proxy
UAC UAS
Via: A Via: B Via: C
Address: A Address: B Via: A Address: C Via: B Address: D
Via: A
Request
Response
Call Stateful
Remembers multiple transactions being associated with a call
UA2
INV sip:b@t3
INV sip:b@t2 m:sip:a@o
INV sip:b@t m:sip:a@o RR:sip:a@o;maddr=C
RR:sip:a@o;maddr=B RR:sip:a@o;maddr=B
m: sip:a@o
Proxy Proxy
UAC Addr: B Addr: C UAS
SIP/2.0 200 OK SIP/2.0 200 OK
SIP/2.0 200 OK Domain: t Domain: t2
Sip:a@o m:sip:b@t3 m:sip:b@t3 m:sip:b@t3 Sip:b@t3
RR:sip:b@t2;maddr=C RR:sip:a@o;maddr=C
RR:sip:b@t2;maddr=C
RR:sip:a@o;maddr=B RR:sip:a@o;maddr=B
RR:sip:b@t;maddr=B
C S
C S
Transaction is a request/response
Call-ID + To + From + CSeq
Remote Remote
participant participant
200 OK
C S
C S
C S
C S
PGP
S/MIME
Transport Mechanisms
200 OK
signature
certificate
Secure UA2
Tunnel
183 Progress
SIP is “not” a Reservation Protocol, but. . .
PRACK
Need Coupling Between Signaling and
Reservation
Resource Reservation
Do not ring phone until resources reserved