SI P D e m y stifie d
SIP D e m y stifie d
B o o k O v ervie w
Raimo Kantola- S- 2003
Signaling Protocols
1
C o nte nt
• Signalling in CS Netwo rk
• P a cket S witching, IE TF
• Th e Internet Multime dia Co nferencing Architecture
• S e ssion Initiation Protocol - SIP
• SI P – Protocol O p eration
• E xtending SIP – The S IP Toolkit
• B ulding Ap plications with SIP Toolkit
• A p p e n dix A – Call Flow s exa m ples
• A p p e n dix B – 3 G P P IM S C all Flo ws Exa m ples
Raimo Kantola- S- 2003
Signaling Protocols
2
Sig nalling in C S N et w or k
• CS
•
•
Stren g hts: Fast, S m all Latency, Q o S gu arantee d
W e a kn ess es: Path establish m e nt, occu pies reso urces
10 0 % of time, intelligence in net work nee d ed , resillience
• Signalling – to setup, control and tear-do wn sessions
• E v olution: D C an d A C an alog->In-ba nd (F D M transport)> Digital (T D M transp ort)
•
A ccess signalling (bet w e en termin als and excha n ge)
– DTMF
– P ulse
– D S S- 1 ( Digital Subscriber Line No 1) (IS D N, G S M )
•
Trunk Signalling (Bet w ee n excha n ges)
– C A S ( Ch ann el Associated Signalling)
– C C S ( C o m m o n C ha nnel Signalling)
Raimo Kantola- S- 2003
Signaling Protocols
3
C A S an d C C S
• CAS
•
•
16 th chan n el in P C M link
S o m e signalling in voice cha n nels ( Caller ID, C allee ID, …)
•
•
•
•
S e p arate, dedicated signalling net w ork exist
O n e signalling chan n el han dles thousa n ds voice ti m eslots
S S 7 do mina nt C C S signalling
S ervices: toll-free calls, etc
• CCS
•
SS7
•
Circuit-related
– E.g. IS U P (Basic Services, circuit ma nag e m e nt,
supple m e ntary services)
– IS U P has national variations – gate w ay needed
– Proble m: Intelligence in netw ork, du m b ter minals
– H ar d to introduce ne w services (not flexible architecture)
Raimo Kantola- S- 2003
Signaling Protocols
4
S witching, IP, IET F
• P a ck et S witching (efficient, che a per, more delay, overhe a d)
• D atagra m s
•
•
•
•
R o uting based on destination ad dress
N o state in net w ork
D y n a mic routing, load balancing
Virtual circuits
•
•
Virtual circuit established
Stateful net w ork
• IP – do min a nt packet net work techn ology
• IP layer co m m o n
•
•
•
V arious und erlying techn ologies (A T M, Ethernet, Fra m e R elay, …)
V arious applications ab ove (em ail, we b, VoIP) using co m m o n IP layer
Intelligenc e on the edg e of the net work (centrifugis m)
•
•
•
E ntities on edg e provide and cons u m e services
Stateless and fast core entities
E n d-to-end services, end-to-end security, etc …
Raimo Kantola- S- 2003
Signaling Protocols
5
IET F
• IETF toolkit
• botto m-u p ap proach (“one proble m – one protocol”)
• R e u s able protocols
• Protocols are si mple, reusa ble, scalable, robust
Raimo Kantola- S- 2003
Signaling Protocols
6
IET F specifications
•E v ery standard follo ws the route Proposed
standard-> Draft Standard-> Standard
Raimo Kantola- S- 2003
Signaling Protocols
7
W h at Protoc ols Are N e e d e d ?
• Signaling protocol to establish presence, locate user,
and for session control
• M e dia Transport Protocols for trans mission of m edia
ov er IP
• S upporting Protocols
• G ate w ay location, Q o S, A A A,etc …
Raimo Kantola- S- 2003
Signaling Protocols
8
M ulticast
• S e v eral parties involved
• IPv4 M ulticast fro m 22 4.0.0.0 – 239.25 5.255.25 5
• S a v es ba n d width
• E ntity that is sending does not have to kno w all the participants
• M ulticast Routing protocols
• D e n s e Mo d e (shortest-path tree per send er)
• S p arse M o d e (shared tree use d by all source s)
• IG M P (Internet Grou p M a n a g e m e nt Protocol)
• For hosts that want to beco m e part of multicast group
• M b o n e – part of Internet that supp orts multicast
• R T P – transp ort of real-time data
• S e q u e nc e nu m b er, tim esta m p s
• R T C P – controls RT P transport (every RT P session has
paralell RT C P ses.)
Raimo Kantola- S- 2003
Signaling Protocols
9
Q o S – Integrated Serv. an d DiffServ
• Integrated S ervices
• Different treat me nt to different flo ws
• State info stored in netw ork, routers exa mine packets!!!(not
go o d)
• R e s ervation merging
• R S V P protocol – for reservation of resources
• DiffServ
• D efines several traffic classes with different priority levels
• P a ck ets tagg e d with level tags at the beginning
• R o uters just exa mine tags
• B etter scaling
Raimo Kantola- S- 2003
Signaling Protocols
10
O t h er Pr otoco ls
• S A P (Session A n n ou n ce m e nt Protocol)
• Distribute info abo ut m ulticast sessions on a w ell-kno w n
ad dress and port
• S D P (S ession De scription Protocol)
• D e scribes session, text-base d
• E.g. time, me dia used, cod ec used, port used, subject,
etc …)
• E xtensible (a line gives extension, e.g. a=volu m e:8)
• S D P n g (next gen eration)
• R T S P (Re al-Ti me Strea min g Protocol)
• Si m milar to V C R co ntrols (stop, pause,play, record)
• R S V P – Re S erV ation Protocol
• For resource reservation in the net work
Raimo Kantola- S- 2003
Signaling Protocols
11
S e s sion Initiation Pr otocol - SIP
• O riginally designe d to invite users to Mb o n e sessions
• In IE TF:
• SI P W G – for SIP specifications and extensions
• SI P PI N G W G – for applications that use SI P
• W a s R F C 2 5 4 3, no w R F C 32 6 1!
• For session establish m ent, mo dification and ter mination
• Inde pe n de nt of me dia session and on me ch a nis m for
describing session
• U s e d to distribute S D P a mo n g potential participants
• R e u sable addresses: SI P ad dresses si milar to e m ail
ad dresses
• E.g. sip:so m e o n e @ s o m e w h ere.co m
Raimo Kantola- S- 2003
Signaling Protocols
12
Sip E ntities
• U s er Ag e nts
• C a n act as client and as server
• S ervers:
• R e direct Servers
•
•
S e n d back alternative location of the user (si milar as H TT P servers)
Proxy servers
•
•
•
A ct on beh alf of client (for w ard s requ ests)
F orking proxies
Gr o up addresses
•
R e gistrars
•
Loc ation S ervers (not part of SIP architecture)
•
•
•
•
A ccepts registrations
Gives back location of user (received fro m registrars)
E.g. H S S in 3 G P P I M S architecture
Protocol bet w e en Location server and SIP server not defined by SIP specs
(e.g. L D A P)
Raimo Kantola- S- 2003
Signaling Protocols
13
SIP Features
• P art of IE TF toolkit
• R e u sing other protocols & me cha nis ms
• Flexible
• E xtensible
• M o v e s intelligence to E n d Syste m entities
• E n d-to-end protocol
• Interoperability
• S c alability (althoug h so m e state in net work)
• S ervice creation easy
• U R L s and Ad dresses reusa g e
• S a m e routing as S M T P
• R e u s es infrastructure (all applications will use SIP entities for
different services)
Raimo Kantola- S- 2003
Signaling Protocols
14
A d dressing
• sip:us er @ h o st[para m eters][he a ders]
• SI P-addresses are like U RL s, with prefix sip: w hich gives
sche m a
• sip:joe.s mith @ h ut.fi
• sip:joe.s mith @ h ut.fi?subject= Protocol
• sip:sales @ h otel.xy;geo.position:=48.54 _-123 .84_ 12 0
• A d dress m u st include host, other para m eters are optional
(userna m e, port, etc … )
• E m ail-addresses can be reuse d
• “Click-to-call” on we b-pa g es, M M m e ssa g es, etc … is easy
imple m e nted
Raimo Kantola- S- 2003
Signaling Protocols
15
” B a sic call” Exa m ple
• C aller sen ds IN VITE
• C allee can accept, reject, forward the call
• If the callee accepts the call: resp on ds with an optional
provisional (1xx), and a final (≥200) respo nse
• Th e caller confirms final respo nse via A C K
• C o n versation
• C aller or callee sends B Y E
• B Y E is ackn o wled g ed by 20 0 O K
• Lo w call setup times, post dial delay: 1.5 R T T !
Raimo Kantola- S- 2003
Signaling Protocols
16
” B a sic C all” call flo w
U s er B
U s er A
[email protected]
[email protected]
192.168.200.201
192.168.100.101
1) I N VIT E
2) 18 0 Ringing
3) 20 0 O K
4) A C K
M e dia strea m
5) B Y E
6) 20 0 O K
Raimo Kantola- S- 2003
Signaling Protocols
17
” B a sic C all” call flo w
U s er B
U s er A
[email protected]
[email protected]
192.168.200.201
192.168.100.101
1) I N VIT E
2) 18 0 Ringing
3) 20 0 O K
4) A C K
M e dia strea m
5) B Y E
6) 20 0 O K
Raimo Kantola- S- 2003
Signaling Protocols
18
” B a sic C all” call flo w
U s er B
U s er A
[email protected]
[email protected]
192.168.200.201
192.168.100.101
1) I N VIT E
2) 18 0 Ringing
3) 20 0 O K
4) A C K
M e dia strea m
5) B Y E
6) 20 0 O K
Raimo Kantola- S- 2003
Signaling Protocols
19
” B a sic C all” call flo w
U s er B
U s er A
[email protected]
[email protected]
192.168.200.201
192.168.100.101
1) I N VIT E
2) 18 0 Ringing
3) 20 0 O K
4) A C K
M e dia strea m
5) B Y E
6) 20 0 O K
Raimo Kantola- S- 2003
Signaling Protocols
20
” B a sic C all” call flo w
U s er B
U s er A
[email protected]
[email protected]
192.168.200.201
192.168.100.101
1) I N VIT E
2) 18 0 Ringing
3) 20 0 O K
4) A C K
M e dia strea m
5) B Y E
6) 20 0 O K
Raimo Kantola- S- 2003
Signaling Protocols
21
” B a sic C all” call flo w
U s er B
U s er A
[email protected]
[email protected]
192.168.200.201
192.168.100.101
1) I N VIT E
2) 18 0 Ringing
3) 20 0 O K
4) A C K
M e dia strea m
5) B Y E
6) 20 0 O K
Raimo Kantola- S- 2003
Signaling Protocols
22
SIP m et ho d s (req ue sts)
• SI P m ethods are invoked on servers wh en requ ests arrive:
• R E GI S T E R requ ests sen ds location infor m ation of users to
R e gistrars, registers with the location service
• A n I N VIT E requ est invites a user to participate in a session
or conference
•
•
•
•
•
•
•
T he m essa ge body contains a description of the session (usu ally S D P)
A C K req u ests are use d to confirm resp onses for IN VIT E, for
reliable me ssa ge exchan g es
C A N C E L requ ests can cel the pe nding requ est of the session
B Y E requ ests are use d to ter minate active sessions
A ny party of the session can sen d it
O P TI O N S req uests are use d to query infor m ation abo ut
servers' capa bilities
P R A C K req u ests are used to confir m provisional respo nses
Raimo Kantola- S- 2003
Signaling Protocols
23
SIP res p o n s e s
• H T T P look-alike
• Hierarchically organized three digit codes: status code text associated with the code
• Provisional and final respons es:
•
•
•
•
•
•
1xx
2xx
3xx
4xx
5xx
6xx
resp o nses are infor mational me ssa g es e.g., 180 Ringing
resp o nse sho ws a successful transaction e.g., 200 O K
resp o nses are redirect messa g es e.g., 301 M oved Per m a nently
resp o nses indicate errors in requ ests e.g., 400 Bad R eq uest
resp o nses indicate server errors e.g., 500 V ersion not supported
resp o nses indicate global failures e.g., 600 B u sy every w h ere
Raimo Kantola- S- 2003
Signaling Protocols
24
M e s s a g e Form at
• S T A R T-LI N E
• SI P version used
• In requests: address and m etho d use d
• In respo ns es: status cod e
• HEADERS
• Infor mation abo ut call
• B O D Y (payload)
• U s u ally S D P m e ssa g e
C->S: INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: Bob <sip:[email protected]>
From: Alice <sip:[email protected]>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:[email protected]>
Content-Type: application/sdp
Content-Length: 142
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 pc33.atlanta.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Raimo Kantola- S- 2003
Signaling Protocols
Start line
H e ad ers
B o dy
25
T o an d Fr o m h ea d er fields
• T o: spe cifies the logical call destination
• Fr o m: s pe cifies the lo gical call sourc e
• Pre s e nt in all SIP m e ss a ge s
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: Bob <sip:[email protected]>
From: Alice <sip:[email protected]>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:[email protected]>
Content-Type: application/sdp
Content-Length: 142
Raimo Kantola- S- 2003
Signaling Protocols
26
C all-ID and C S e q hea d er fields
• C all-I D: It helps to uniquely ide ntify a partic ular SIP dialog
or registration
• It helps to match requ e sts and resp onses
• It helps to detect duplicated me ssa g es
• C S e q: It is a nu m b er that uniquely ide ntifies the tra ns a ction
in a call
• Pre s e nt in all SIP m e ss a ge s
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: Bob <sip:[email protected]>
From: Alice <sip:[email protected]>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:[email protected]>
Content-Type: application/sdp
Content-Length: 142
Raimo Kantola- S- 2003
Signaling Protocols
27
C o nte nt-Typ e a n d C o ntent-Le n gth
h ea d er fields
• C o ntent-Typ e: It describes the m e dia typ e of the
m e s sag e b o d y
• C o ntent-Len gth: Th e nu m b er of octets in the
m e s sag e b o d y
• It is m a n d atory in all SIP m essa g es.
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: Bob <sip:[email protected]>
From: Alice <sip:[email protected]>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:[email protected]>
Content-Type: application/sdp
Content-Length: 142
Raimo Kantola- S- 2003
Signaling Protocols
28
M a x- F or w ar ds
• M a x-F or w ard s field m u st be used with any SIP
m et h o d
• It li mits the nu m b er for proxies or gate w ays on
the w ay of SIP m e ssag e to the destin ation.
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: Bob <sip:[email protected]>
From: Alice <sip:[email protected]>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:[email protected]>
Content-Type: application/sdp
Content-Length: 142
Raimo Kantola- S- 2003
Signaling Protocols
29
VI A hea der
• VI A: hea der indicates path tak e n by the req ue st s o far
• Bra nc h para m eter is us e d to detect loops
• C o ntains trans p ort protoc ol, client’s host na m e a n d
p os sibly port nu m ber, and ca n c ontain other para m eters
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP server10.biloxi.com;branch=z9hG4bK4b43c2ff8.1
Via: SIP/2.0/UDP bigbox3.site3.atlanta.com;branch=z9hG4bK77ef4c2312983.1
;received=192.0.2.2
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
;received=192.0.2.1
Max-Forwards: 68
To: Bob <sip:[email protected]>
From: Alice <sip:[email protected]>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:[email protected]>
Content-Type: application/sdp
Content-Length: 142
Raimo Kantola- S- 2003
Signaling Protocols
30
R e c or d-route a n d R o ute
• R e c or d- R o ut e: hea d er is ad d e d b y pro xy, w h e n pro x y w a nt s to stay
in th e ro ute of all sip m e s sa gin g
• R o ute is ad d e d b y Us er A g e nt Client, after resp o n s e co m e, with all
R e c or d-ro ute h ea d ers in it (then U A C k n o w s w hich relays wa nt to
sta y in sig n allin g
• N O T the sa m e as Via: hea d ers
INVITE sip:[email protected] SIP/2.0
Contact: sip:[email protected]
Record-Route: <sip:p2.domain.com;lr>
Record-Route: <sip:p1.example.com;lr>
Inserted by proxies
p1.exa m ple.co m and
p2.exa m ple.co m.
BYE sip:[email protected] SIP/2.0
Route: <sip:p1.example.com;lr>,<sip:p2.domain.com;lr>
Raimo Kantola- S- 2003
U A can specify through which
proxies this me ssage m ust go
Signaling Protocols
31
SIP Extension s
• N e e d e d to satisfy additional require m e nts
• M u st confor m to design rules
• SI P is not intend e d to solve every proble m (another protocol
mig ht be use d instead)
Raimo Kantola- S- 2003
Signaling Protocols
32
F eat ure N e g otiation ( O P TI O N S)
• S u p p orted features can be specified in req ue st and resp onse
• S u p p orted
U A C a nd U A S tell features they supp ort
• R e q uired features can be sp ecified in requ est and resp o nse
• R e q uire
U A C tells U A S abo ut req uired options
• Pr ox y- Re quire
required options for proxy/redirect
servers
• M a n y extensions use R e q uire and Proxy-Re quire to specify their
sup p ort
• N e w m ethods can be add e d without cha nging the protocol
• server can respo n d with 40 5 Not S u p p orte d
• returns list of supp orted methods in Allo w he ad er
• client can ask which m etho ds are sup ported using O P TI O N S
Raimo Kantola- S- 2003
Signaling Protocols
33
Q o S s u p p ort - U P D A T E
• U s a g e rule for 183-S e ssion-Progress
• If “a=q os” app eared in S D P, U A S se nds 183 with “Session:
qos” an d S D P
• A d ditional Metho d - UP D A T E
• If “a=q os” app eared in S D P with “confir m” attribute,
U A S/ U A C se n ds U P D A T E with success/failure status of each
precon dition.
• 20 0 O K m u st ackno wled g e the U P D A T E m e ssag e
• A d ditional Status Res p onse - 580 Preco ndition Failure
• If a ma n d atory preco n dition can’t be met, UA S ter minates
INVIT E with this status respo nse
Raimo Kantola- S- 2003
Signaling Protocols
34
S a m ple Invite S e q u e n ce, with R es o urce
R e s ervation
UAC
PROXY O
PROXY T
UAS
INVITE(w/qos)
INVITE(w/qos)
INVITE(w/qos)
183 Session-Progress
183 Session-Progress
183 Session-Progress
PRACK
200 OK (of PRACK)
RSVP-PATH
RSVP-RESV (Reservation)
UPDATE
200 OK (acknowledging UPDATE)
RSVP-PATH
RSVP-RESV (Reservation)
180 Ringing
Raimo Kantola- S- 2003
Signaling Protocols
Rings phone.
35
M or e SIP exten sions
• MESSAGE
• For instant m essa ging
• INF O
• T o transport mid-session infor m ation (very useful in SI P- P S T N
gate w ays)
• A uto m atic configuration
• D H C P or Service Location Protocol (SL P)
• C aller Preferences
• N e w hea ders: Accept-C on tact, Reject-Co ntact, Re q uest-Disposition
• S U B S C RI B E/ N O TI F Y
• T w o ne w m ethods for async. notifications. Use d in Presence concept
• REFER
• F or session transfer (R efer-To: and R effered- By: )
• D O (for sending co m m a n ds to appliances)
Raimo Kantola- S- 2003
Signaling Protocols
36
3GPP Network Model
Alternative
Acces
s
Network
Legacy
mobile
Network
Applications &
Services *)
SCP
Mw
CAP
Cx
HSS *)
Gr
EIR
Gf
Uu
Mg
IP Multimedia Domain
(multimedia by SIP,
IETF RFC2543)
Gi
MGCF
GGSN
T-SGW *)
Mc
Gi
Gn
Iu
UTRAN
MT
R
Mr
MRF
Gi
Gc
SGSN
Iu
TE
Mm
CCSCF
SCF
Gi
PS Domain
Multimedia
IP Networks
CSCF
R-SGW *)
Ms
Mh
PSTN/
Legacy/External
MGW
MGW
Nb
Iu
Mc
Mc
Nc
MSC server
GMSC server
T-SGW *)
CAP
CAP
Applications
& Services *)
D
CS Domain
(multimedia by ITU H.324M)
C
HSS *)
R-SGW *)
Mh
Raimo Kantola- S- 2003
Signaling Protocols
37
Different Kind s of C S C F s
Home A
Home B
HSS
HSS
HSS
HSS
7
8
9
4
6
S-CSCF
S-CSCF
5
S-CSCF
S-CSCF
I-CSCF
I-CSCF
15
14
11
17
Visited B
P-SCSF
P-SCSF
I-CSCF
I-CSCF
16
13
10
Visited A
12
GGSN
GGSN
SGSN
SGSN
RadioAccess
AccessNetwork
Network
Radio
B 2003
Raimo Kantola- S-
3
P-CSCF
P-CSCF
18
GGSN
GGSN
SGSN
SGSN
RadioAccess
AccessNetwork
Network
Radio
A
Signaling Protocols
2
1
Proxy CSCF:
Provides
emergency
service
breakout,
triggers for
locallyprovided
services, and
number
normalizing
(per local
dialing plan)
38
Different Kind s of C S C F s
Home A
Home B
HSS
HSS
HSS
HSS
7
8
9
6
S-CSCF
S-CSCF
I-CSCF
I-CSCF
16
15
13
2
17
Visited B
P-SCSF
P-SCSF
11
3
5
S-CSCF
S-CSCF
I-CSCF
I-CSCF
14
10
4
Visited A
P-CSCF
P-CSCF
12
18
GGSN
GGSN
SGSN
SGSN
RadioAccess
AccessNetwork
Network
Radio
1
GGSN
GGSN
SGSN
SGSN
RadioAccess
AccessNetwork
Network
Radio
B 2003
Raimo Kantola- S-
Interrogating
CSCF:
Queries the
HSS to find
the correct SCSCF. First
point of
contact for
incoming call
signalling.
A
Signaling Protocols
39
Different Kind s of C S C F s
Home A
Home B
HSS
HSS
HSS
HSS
7
8
9
4
6
S-CSCF
S-CSCF
5
S-CSCF
S-CSCF
I-CSCF
I-CSCF
15
14
11
17
Visited B
P-SCSF
P-SCSF
I-CSCF
I-CSCF
16
13
10
Visited A
12
GGSN
GGSN
SGSN
SGSN
RadioAccess
AccessNetwork
Network
Radio
B 2003
Raimo Kantola- S-
3
2
Serving
CSCF:
Provides
subscriber
services.
P-CSCF
P-CSCF
18
1
GGSN
GGSN
SGSN
SGSN
RadioAccess
AccessNetwork
Network
Radio
A
Signaling Protocols
40
IP M ulti m e dia R e gistration 1.
Visited Network
UE
Home Network
P-CSCF
I-CSCF
HSS
1. SIP REGISTER
2. SIP REGISTER
3. Cx-Query
4. Serving
Network Selection
5. Cx-Query Resp
6. Cx-Select-pull
7. Cx-Select-pull Resp
Raimo Kantola- S- 2003
Signaling Protocols
41
SIP an d ne w service architectures
• C all Pro c e s sing Lan g u a g e
•
•
XML based language to define call service
CPL definition is now simple and can be used to describe
basic services
• SI P/ C GI
•
SIP Application Server could implement a CGI interface to
describe services
• SI P S ervlet A PI
•
•
SIP Servlet Application Server is comparable in principal to
CGI
Advantage: use of the java tools and security, more
performant than CGI
Raimo Kantola- S- 2003
Signaling Protocols
42
SIP an d ne w service architectures 2.
• J a v a E n h a n c e d SI P (J E S)
•
•
•
Defines a way to transport Java applets, objects or
agents in a SIP message
It could be used to send service logic to a SIP client
The Java entity can be embedded in the message if small
enough or referenced for later downloading using HTTP
or SOAP
• SI P a n d W E B/ W A P Inte gratio n
•
•
SIP is working well in conjunction with Web (MIME, URI,
DNS). Lot of SIP services could be originated by Web
pages (click to call, Web phone book…)
SIP and HTTP stacks have a lot in common. Advanced
SIP implementation usually provides simple HTTP stack
Raimo Kantola- S- 2003
Signaling Protocols
43
SIP an d ne w service architectures 3.
• SI P an d W E B/ W A P Integration cont.
•
•
SIP and other IP services will probably come to 3G also and
they will replace WAP services if WAP does not evolve
WML could be carried inside SIP messages. WML has
effective syntax for menus and SIP is the one and only
transport which also include intelligent features.
• SI P an d S O A P
•
SOAP can be used in conjunction with SIP to offer services.
SOAP can be used by a SIP client to discover and access
services on the network. SIP application server can use SOAP
to access Business Logic and databases in the network.
Raimo Kantola- S- 2003
Signaling Protocols
44
A p p e n dix A – C all Setup Exa m ples
Raimo Kantola- S- 2003
Signaling Protocols
45
R e gistration exa m ple with SIP
Bob
[email protected]
biloxi.com
REGISTER sip:registrar.biloxi.com SIP/2.0
Via: SIP/2.0/UDP bobspc.biloxi.com:5060;branch=z9hG4bKnashds7
Max-Forwards: 70
To: Bob <sip:[email protected]>
From: Bob <sip:[email protected]>;tag=456248
Call-ID: [email protected]
CSeq: 1826 REGISTER
Contact: <sip:[email protected]>
Expires: 7200
Content-Length: 0
SIP/2.0 200 OK
Via: SIP/2.0/UDP bobspc.biloxi.com:5060;branch=z9hG4bKnashds7
;received=192.0.2.4
To: Bob <sip:[email protected]>;tag=2493k59kd
From: Bob <sip:[email protected]>;tag=456248
Call-ID: [email protected]
CSeq: 1826 REGISTER
Contact: <sip:[email protected]>
Expires: 7200
Content-Length: 0
Raimo Kantola- S- 2003
Signaling Protocols
46
C all Setup exa m ple with on e pr oxy
Proxy.com
121.110.101.111
GuyA
[email protected]
100.101.102.103
1) INVITE
GuyB
[email protected]
110.111.112.113
2) INVITE
4) 180 Ringing
3) 180 Ringing
6) 200 OK
5) 200 OK
7) ACK
8) ACK
Media stream
Proxy.com
9) BYE
10) BYE
11) 200 OK
12) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
47
C all Setup exa m ple with t w o pr oxies
Alice
1a) INVITE
1c) 100 Trying
atlanta.com
proxy
Biloxi.com
proxy
1b) INVITE
Bob
2a) INVITE
2b) 100 Trying
3a) 180 Ringing
3c) 180 Ringing
4c) 200 OK
3b) 180 Ringing
4b) 200 OK
4a) 200 OK
5a) ACK
Media stream
atlanta.com
proxy
Biloxi.com
proxy
6a) BYE
7a) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
48
C all Setup exa m ple with t w o pr oxies
Alice
1a) INVITE
1c) 100 Trying
atlanta.com
proxy
Biloxi.com
proxy
1b) INVITE
Bob
2a) INVITE
2b) 100 Trying
3a) 180 Ringing
3c) 180 Ringing
4c) 200 OK
3b) 180 Ringing
4b) 200 OK
4a) 200 OK
5a) ACK
Media stream
atlanta.com
proxy
Biloxi.com
proxy
6a) BYE
7a) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
49
C all Setup exa m ple with t w o pr oxies
Alice
1a) INVITE
1c) 100 Trying
atlanta.com
proxy
Biloxi.com
proxy
1b) INVITE
Bob
2a) INVITE
2b) 100 Trying
3a) 180 Ringing
3c) 180 Ringing
4c) 200 OK
3b) 180 Ringing
4b) 200 OK
4a) 200 OK
5a) ACK
Media stream
atlanta.com
proxy
Biloxi.com
proxy
6a) BYE
7a) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
50
C all Setup exa m ple with t w o pr oxies
Alice
1a) INVITE
1c) 100 Trying
atlanta.com
proxy
Biloxi.com
proxy
1b) INVITE
Bob
2a) INVITE
2b) 100 Trying
3a) 180 Ringing
3c) 180 Ringing
4c) 200 OK
3b) 180 Ringing
4b) 200 OK
4a) 200 OK
5a) ACK
Media stream
atlanta.com
proxy
Biloxi.com
proxy
6a) BYE
7a) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
51
C all Setup exa m ple with t w o pr oxies
Alice
1a) INVITE
1c) 100 Trying
atlanta.com
proxy
Biloxi.com
proxy
1b) INVITE
Bob
2a) INVITE
2b) 100 Trying
3a) 180 Ringing
3c) 180 Ringing
4c) 200 OK
3b) 180 Ringing
4b) 200 OK
4a) 200 OK
5a) ACK
Media stream
atlanta.com
proxy
Biloxi.com
proxy
6a) BYE
7a) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
52
C all Setup exa m ple with t w o pr oxies
Alice
1a) INVITE
1c) 100 Trying
atlanta.com
proxy
Biloxi.com
proxy
1b) INVITE
Bob
2a) INVITE
2b) 100 Trying
3a) 180 Ringing
3c) 180 Ringing
4c) 200 OK
3b) 180 Ringing
4b) 200 OK
4a) 200 OK
5a) ACK
Media stream
atlanta.com
proxy
Biloxi.com
proxy
6a) BYE
7a) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
53
R e gistratio n exa m ple with SIP a uth e nticatio n
GuyA
[email protected]
proxy.com
1) REGISTER
Call-ID: [email protected]
2) 401 Unauthorized
WWW-Authenticate: <Challenge>
3) REGISTER
Call-ID: [email protected]
Authorization: <Authorization info>
4) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
54
C all Setu p ex a m ple with a n o n -w orkin g pro x y
GuyA
1) INVITE
Proxy1.com
Proxy2.com
GuyB
2) INVITE (6x)
3) CANCEL, BYE
4a) INVITE
5b) 180 Ringing
6b) 200 OK
4b) INVITE
5a) 180 Ringing
6a) 200 OK
7a) ACK
Media stream
Proxy2.com
8a) BYE
8b) BYE
9a) 200 OK
9b) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
55
C all Setu p ex a m ple with a Re d irect server
GuyA
1a) INVITE
Proxy1.com
2) INVITE
Proxy2.com
GuyB
1b) INVITE
2) 301 Moved Temporarily
3) ACK
1c) INVITE
4a) 180 Ringing
5a) 200 OK
4b) 180 Ringing
5b) 200 OK
6a) ACK
Media stream
Proxy1.com
6b) BYE
7a) 200 OK
7b) 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
6a) BYE
56
A p p e n dix B – 3 G P P I M S call flo w s
Raimo Kantola- S- 2003
Signaling Protocols
57
IM S Re gistration 1a. - S- C S C F in h o m e n et w ork
Visited Network
UE
Home Network
P-CSCF
I-CSCF
HSS
S-CSCF
1. S-CSCF selection
2. SIP REGISTER
3. Cx-put
4. Cx-put Resp
5. Cx-Pull
6. Cx-Pull Resp
7. SIP 200 OK
9. SIP 200 OK
Raimo Kantola- S- 2003
8. SIP 200 OK
Signaling Protocols
58
IM S Re gistration 1 b. - S-C S C F in visite d net w ork
Visited Network
UE
Home Network
S-CSCF
P-CSCF
I-CSCF
HSS
I-CSCF
1. SIP REGISTER
2. S-CSCF Selection
3. Register
4. Cx-Put
5. Cx-Put Resp
6. Cx-Pull
7. Cx-Pull Resp
8. SIP 200 OK
9. SIP 200 OK
10. SIP 200 OK
11. SIP 200 OK
Raimo Kantola- S- 2003
Signaling Protocols
59
M o bile to M o b ile C all
Calling Party
UE
P-CSCF
1.INVITE
Called Party
S-CSCF
I-CSCF
HSS
S-CSCF
P-CSCF
UE
2.INVITE
3.SERVICE CTRL 4.INVITE
5.Cx- LocQuery
6.Cx-Loc Resp
7.INVITE
8.SERVICE CTRL
9.INVITE 10.INVITE
10.BEARER ESTABLISHMENT
11.ALERTING + SESSION OFFERING
14.200 OK
17.200 OK
20.200 OK
16.200 OK
13.200 OK
15.SERVICE CTRL
16.SERVICE CTRL
19.200 OK
21. ACK (possibly hop-by-hop)
Raimo Kantola- S- 2003
Signaling Protocols
60
C all flo w exam ples 1. - no a ns w er
Calling Party
UE
P-CSCF
INVITE
Called Party
S-CSCF
INVITE
I-CSCF
HSS
S-CSCF
UE
INVITE
Cx- LocQuery
Cx-Loc Resp
INVITE
180 Ringing
180 Ringing 180 Ringing
CANCEL
CANCEL
200 OK
200 OK
P-CSCF
INVITE
180 Ringing
180 Ringing
.INVITE
180 Ringing
CANCEL
CANCEL
200 OK
CANCEL
200 OK
CANCEL
200 OK
200 OK
Raimo Kantola- S- 2003
Signaling Protocols
61
C all flo w exam ples 1. - no a ns w er 2.
Calling Party
UE
P-CSCF
Called Party
S-CSCF
I-CSCF
HSS
S-CSCF
P-CSCF
UE
487
487
487
487
487
487
ACK
ACK
ACK
ACK
ACK
ACK
Raimo Kantola- S- 2003
Signaling Protocols
62
C all flo w exam ples 2. - busy
Calling Party
UE
P-CSCF
INVITE
Called Party
S-CSCF
INVITE
I-CSCF
HSS
S-CSCF
P-CSCF
UE
INVITE
Cx- LocQuery
Cx-Loc Resp
INVITE
INVITE
.INVITE
486 Busy Here
486 Busy Here
ACK
ACK
486 Busy Here
486 Busy Here
ACK
486 Busy Here
486 Busy Here
ACK
ACK
ACK
Raimo Kantola- S- 2003
Signaling Protocols
63
C all flo w exam ples 3. - no res p o n se
Calling Party
UE
P-CSCF
INVITE
Called Party
S-CSCF
INVITE
I-CSCF
HSS
S-CSCF
P-CSCF
UE
INVITE
Cx- LocQuery
Cx-Loc Resp
INVITE
INVITE
INVITE
INVITE
CANCEL+BYE
408 Req. Timeout
408 Req. Timeout
408 Req. Timeout
408 Req. Timeout
408 Req. Timeout
ACK
ACK
ACK
ACK
ACK
Raimo Kantola- S- 2003
Signaling Protocols
64
C all flo w ex a m p les 4. - te m p o ra rily u n a v aila ble
Calling Party
UE
P-CSCF
INVITE
Called Party
S-CSCF
INVITE
I-CSCF
HSS
S-CSCF
P-CSCF
UE
INVITE
Cx- LocQuery
Cx-Loc Resp
INVITE
INVITE
.INVITE
180 Ringing
180 Ringing
180 Ringing
180 Ringing
180 Ringing 180 Ringing
480 Temp. Unav.
480 Temp. Unav.
480 Temp. Unav.
480 Temp. Unav.
480 Temp. Unav.
480 Temp. Unav.
ACK
ACK
ACK
ACK
ACK
ACK
Raimo Kantola- S- 2003
Signaling Protocols
65
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement