Documente Academic
Documente Profesional
Documente Cultură
IMS tutorial:
Is the IMS Service Platform a
Solution for Next Generation
Network Providers to Be
More Than Bit Carriers?
1
Objectives
IMS tutorial 2
Index
IMS tutorial 3
2
Striking Statements
IMS tutorial 4
3
…and convergence and coexistence
(in business models)
Semi-
Walled
Garden
IMS tutorial 6
Any device
Any access
technology
IMS tutorial 7
4
Implications of a universal IP network
IMS tutorial 8
Internet
is not fully prepared for this!!!
(TECHNOLOGICALLY)
Strong research efforts…to
INTEGRATE…(almost everything already
works but in a stand alone manner)
Business players are neither prepared for
this
Uncertainty, look for new business models,
opportunities
IMS tutorial 9
5
From Telephony to Internet: Telco
breaks into pieces
IMS tutorial 10
IMS tutorial 11
6
The actors, fighting to gain a central
position
Network providers
Migrating everything to a universal network
reduces Operational Expenditures
They do not resign to become mere bit pipes
and lose central position in the business value
chain.
Money seems to be in the service delivery
Deustche Telekom president statement: make
google pay
IMS tutorial 12
IMS tutorial 13
7
The Scenario: 4G networks (or NGN)
IMS tutorial 14
A 4G network
Applications offered Applications offered
by the network by third party service
operator (e-mail, providers (e-mail,
IPTv) IPTv)
Service Enablers.
Service Delivery
Platforms. May include
services such as “Calls”
(IMS)
Applications in
the Internet
IMS tutorial 15
8
Service platforms seem to be a meeting
point, neutral zone
Give really useful services: users willingness to
pay more
All the players seem to take profit, share a fair
portion of the telco. business
Thus they are a key piece in 4G networks
IMS tutorial 16
Index
IMS tutorial 17
9
Index
IMS tutorial 18
3rd 3rd
Network Party Service Providers
Party Service Providers
operator
IMS tutorial 19
10
The user receives many bills. E.g.
EXAMPLE
11
The user needs to authenticate many
times
IMS tutorial 22
In short
IMS tutorial 23
12
Telephony Business model…known to
all of us
Monolithic solution, closed to services
Network operator +
Service provider
Trust
relationship
IMS tutorial 24
IMS tutorial 25
13
The user needs to authenticate only to
the network provider
IMS tutorial 26
In short
IMS tutorial 27
14
Semi-walled garden business model
3rd 3rd
Party Service Providers Party Service Providers
Trust relationship
Network
operator
Trust
relationship
IMS tutorial 28
IMS tutorial 29
15
The user needs to authenticate only to
the network provider
In Short
16
The (operator-owned) service platform enables
the semi-walled garden business model
IP Network IP Network
Service
Platform
IMS tutorial 32
Attention
IMS tutorial 33
17
Service Platforms examples: i-mode
Proprietaryof NTT
DoCoMo, mainly
for mobile phones
and service
providers
IP Network
Service
Platform
IMS tutorial 34
IMS tutorial 35
18
Service Platforms examples: OSA
OSA: Open Service
Access
Not big success
Target services such as
content downloading
Not proprietary; IP Network
standardized by the 3GPP Service
Platform
(like IMS)
Part of the “Virtual Home
Environment”
Offers a standard API
(developed by Parlay) to
service providers
IMS tutorial 36
Location
HLR/HSS Server
3G UMTS network
IMS tutorial 37
19
The IMS service platform
IMS tutorial 38
Index
IMS tutorial 39
20
Internet, applications and protocols
IMS tutorial 40
What is SIP?
IMS tutorial 41
21
SIP: setting up the session
INVITE
FROM barbara@vodafone.com
TO francisco@vodafone.com
I have these audio codecs: MP3, GSM like, CD
I have these video codecs: mpeg4, divX
200 OK
FROM barbara@vodafone.com
TO francisco@vodafone.com
I have these audio codecs: MP3, GSM like
I have these video codecs: divX
IP Network
barbara@vodafone.com ACK
francisco@vodafone.com
IMS tutorial 42
IP Network
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 43
22
SIP: tearing down the session
BYE
FROM barbara@vodafone.com
TO francisco@vodafone.com
IP Network
200 OK
FROM barbara@vodafone.com
TO francisco@vodafone.com
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 44
SIP Registrars
IMS tutorial 45
23
SIP: Registering
200 OK
200 OK
IP Network
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 46
At 2.2.2.2
INVITE
IP Network
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 47
24
Actually…we use sip proxies
IMS tutorial 48
200 OK
IP Network
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 49
25
Wrap-up
IMS tutorial 51
26
Some useful provisional answers
IMS tutorial 52
A complete example
http://www2.rad.com/networks/2003/sip/flash.swf
IMS tutorial 53
27
Multiple domains and SIP proxies
Well know SIP proxy for
barbara (vodafone.usa).
Looks for vofane.uk sip
proxy: DNS
Well know SIP
proxy for francisco
(vodafone.uk)
INVITE
francisco@vodafone.uk
Knows where
francisco is and
directs him the
packets
200 OK
IP Network
barbara@vodafone.usa francisco@vodafone.uk
IMS tutorial 54
IMS tutorial 55
28
Advanced SIP, more SIP messages
Buddy lists
User SUBSCRIBE to
proxies where buddies are
registered to, to receive
updates about their state
User PUBLISH the proxy of
his status changes
Proxies NOTIFY the user
about the status changes
they have SUBSCRIBED to.
IMS tutorial 56
Media Data
Invite with directed to
my new IP new IP
address address
Bye, to stop
media data to
the old IP
Address
IMS tutorial 57
29
User moves and changes
his IP address
(a new SIP registration should
also be done)
Media Data
Media Data Bye, to stop directed to
media data to new IP
the old IP address
Invite Address
with my
new IP
address
IMS tutorial 58
200 OK
REGISTER
francisco@vodafone.com
IP address is 2.2.2.2
IP Network
200 OK
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 59
30
Advanced SIP: 1 user, several devices
Well know SIP
registrar & proxy
(vodafone.com)
INVITE
INVITE to 200 OK
francisco@vodafone.com
200 OK
INVITE
IP Network
barbara@vodafone.com francisco@vodafone.com
IMS tutorial 60
IMS tutorial 61
31
SIP REFER, Transferring a session
francisco@vodafone.com
Video call
REFER
Send and INVITE to francisco to the laptop IP Address
202 accepted
NOTIFY
200 OK
BYE
200 OK
Francisco@ barbara@vodafone.com
vodafone.com Video call
ACK
200 OK
INVITE
IMS tutorial 62
32
Does NOT use SIP, uses a proprietary
protocol
But it is the most popular VoIP application
Solves many issues SIP is still trying to
solve like “NAT traversal”
Rather than a “proxy/registrar” centric
solution, it employs a distributed
architecture. Thus it scalable. Peer to peer
SIP is a new research direction, imitating
this idea
IMS tutorial 64
Index
IMS tutorial 65
33
IMS… seen as a service platform.
IMS tutorial 66
IMS tutorial 67
34
Other IMS actors
IMS tutorial 68
IMS tutorial 69
35
IMS step by step
But IMS works over IP (v6)
GGSN
Gateway from the
UMTS network to
other networks
GGSN
3G UMTS network
Voice, Video
IMS tutorial 70
SIP signaling
GGSN
3G UMTS network.
Voice, Video
IMS tutorial 71
36
IMS step by step
…that can interact with some UMTS nodes
SIP signaling
GGSN
3G UMTS network. None of the
“transport nodes” are exposed
Voice, Video
IMS tutorial 72
SIP signaling
GGSN
3G UMTS network. None of the
“transport nodes” are exposed
Voice, Video
IMS tutorial 73
37
IMS step by step
Media may also reach the Internet, but never traverses
the IMS nodes (SIP proxies)
CSCF (SIP Proxy)
SIP signaling
GGSN
3G UMTS network
Voice, Video
IMS tutorial 74
38
In IMS, different types of SIP proxies
S-CSCF
IMS tutorial 76
39
IMS SIP signaling path
simplest case: 1 domain, no roaming
S-CSCF
(SIP Proxy) P-CSCF
P-CSCF
(SIP Proxy)
(SIP Proxy)
SIP signaling
GGSN
3G UMTS network. None of the
“transport nodes” are exposed
User 1 Voice, Video
User 2
IMS tutorial 78
S-CSCF
P-CSCF
P-CSCF
IMS tutorial 79
40
Index
IMS tutorial 80
41
How the IMS can enjoy UMTS’ QoS?
IMS tutorial 82
SIP signaling
Contains media
flows requirements
for the network
(codecs, BW)
GGSN
42
QoS in IMS: a scenario
The PDF instructs the network to accommodate these flows
PDF. Instructs
the network to SIP signaling
accommodate Contains media
the media flows flows requirements
for the network
(codecs, BW)
GGSN
PDF. Instructs
the network to SIP signaling
accommodate Contains media
the media flows flows requirements
for the network
(codecs, BW)
GGSN
43
The central role of the PDF
IMS tutorial 87
44
QoS in IMS
PDP context activation details
Requirements
PDF
SIP signaling
Decision &
Configuration
GGSN
IMS tutorial 88
AAA in IMS
emulating the semi-walled garden business model
IMS tutorial 89
45
Charging in IMS
a use case
SIP signaling
GGSN
46
Charging in IMS: a scenario
video audio flows consume network resources
GGSN is aware of
these details (bytes
sent/ received…)
GGSN
CDF/
CGF
GGSN
47
Where (in which domain) to perform
accounting?
Network resources are always consumed in the
visited domain (may not consume network
resources in home domain)
Charging and billing to the user is done by the
user’s home domain. Accounting data must be
sent there
Visited operator may bill home operator for
consuming network resources
So, something is accounted in both visited and
home domains, both for caller and callee
IMS tutorial 94
IMS tutorial 95
48
Apart from gathering different data from
different sources, we need to correlate it:
Charging identifiers
Caller Callee
transport transport
session 1 session 1
Global and common
IMS session
Caller Callee
transport transport
session 2 session 2
IMS tutorial 96
CDF/ CDF/
Caller’s CGF CGF Callee’s
visited 3G visited 3G
network network
IMS tutorial 97
49
Charging, roaming scenario
charging identifiers, creation and distribution
Caller’s Callee’s
home home
P-CSCF S-CSCF S-CSCF P-CSCF
ICID ICID ICID
ICID
IP network (the internet) ICID
PDF PDF
ICID ICID
Caller’s Callee’s
visited 3G visited 3G
network network
IMS tutorial 98
Caller’s Callee’s
home home
P-CSCF S-CSCF S-CSCF P-CSCF
ICID/ ICID ICID/
GCID1 GCID2
GCID1 GCID2
Caller’s Callee’s
visited 3G visited 3G
network network
IMS tutorial 99
50
Charging, roaming scenario
accounting/charging depends on 3G infrastructure
CDF/ CDF/
CGF
Callee’s CGF
Caller’s home
home
P-CSCF ICID/GCID1 ICID/ P-CSCF
GCID2
ICID/
IP network (the internet) ICID/
GCID1
GCID2
ICID/ ICID/
GCID1 GCID2
CDF/ CDF/
Caller’s CGF CGF Callee’s
visited 3G visited 3G
network network
IMS tutorial 100
CDF/ CDF/
Caller’s CGF CGF Callee’s
visited 3G visited 3G
network network
IMS tutorial 101
51
Charging, roaming scenario
charging system details
CDF/ CDF/
CGF
Callee’s CGF
Caller’s home
home
P-CSCF ICID/GCID1 ICID/ P-CSCF
GCID2
ICID/
IP network (the internet) ICID/
GCID1
GCID2
ICID/ ICID/
GCID1 GCID2
CDF/ CDF/
Caller’s CGF CGF Callee’s
visited 3G visited 3G
network network
IMS tutorial 102
S-CSCF
Charging/billing
system details
CDF/CGF details
P-CSCF
CDF
CGF
BS
To other
operators’
billing
systems
GGSN
3G UMTS network
IMS tutorial 103
52
Authorization and Authentication. Single
sign on
Ifwe account resources we need to
authenticate the billed users and authorize
them
Again a centralizing entity: the network
operator, its 3G UMTS infrastructure
PRIOR TO ANYTHING: user logs into the
3G UMTS network, using a UMTS logging
procedure, non IMS related.
53
Authe. and Autho. in IMS
Depends on 3G user control. SIP signaling proceeds only
after contacting the HSS
S-CSCF
SIP
Signaling HSS
GGSN
Wrap up
IMS main nodes are SIP proxies (CSCFs)
IP Network (Internet)
SIP signaling
GGSN
3G UMTS network
Voice, Video
54
Wrap up
They can interact, via the PDF, with 3G network transport
nodes (GGSN) to assure transport QoS
CSCF (SIP Proxy)
PDF
SIP signaling
GGSN
3G UMTS network
Voice, Video
Wrap up
They can interact with 3G network control elements (the
HSS and the CDF/CGF) to assure single sign on and
unified billing.
CSCF (SIP Proxy)
PDF
SIP signaling CDF/
CGF
HSS
GGSN
3G UMTS network
Voice, Video
55
Index
56
Registration to the IMS
*previously the user registered to HSS (using a 3G, non-IMS procedure)
*needed prior any other IMS procedure
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
57
Invite and authorization
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation.
May not be needed:
it has it from the registration
58
Invite, authorization and answer to the
invite
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Callee)
DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
59
Answer to the invite (2), 3rd offer, PDP
context activation
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
SIP-INVITE( CodecsBWlist, -, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-DEC(ICID, Configuration)
COPS-RPT(GCDI_r)
DIAMETER-RAR(GCID_e)
DIAMETER-RAA()
SIP-200()
SIP-200()
SIP-200()
PDP-CtxActA()
SIP-UPDATE()
SIP-UPDATE()
SIP-UPDATE()
60
3rd offer (2), answer to 3rd offer, PDP context activation,
ringing (ringing should be ACKed –PRACK 200 OK-)
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
SIP-PRACK(CodecBW)
SIP-PRACK(CodecBW)
SIP-PRACK(CodecBW)
SIP-200()
COPS-DEC(ICID, Configuration)
DIAMETER-RAA()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-180()
SIP-200()
61
answer to 3rd offer (2), PDP context activation, ringing (2)
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS
SIP-200()
SIP-200()
PDP-CtxActA()
SIP-UPDATE()
SIP-UPDATE()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-180()
62
200 OK to the INVITE and accounting
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
63
200 OK to the INVITE (2) and accounting
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
64
ACK, media flows and accounting
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-INVITE( CodecsBWlist, -, -)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-SAR(Caller)
DIAMETER-SAA(yes, CallerProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
Gather's user profile to
perform authorisation. DIAMETER-SAR(Callee)
May not be needed:
it has it from the registration DIAMETER-SAA(yes, CalleeProfile)
SIP-INVITE(CodecsBWlist, -, ICID)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_e)
SIP-INVITE(CodecsBWlist, PDFtoken_e, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
SIP-183(AcceptedCodecsBWlist, -)
DIAMETER-AAR(MaxBW)
DIAMETER-AAA(PDFtoken_r)
SIP-183(AcceptedCodecsBWlist, Token_r)
SIP-PRACK(CodecBW)
COPS-RPT(GCDI_r) SIP-PRACK(CodecBW)
DIAMETER-RAR(GCID_e) SIP-200()
SIP-UPDATE()
SIP-UPDATE() PDP-CtxActA()
SIP-UPDATE()
SIP-200()
SIP-200() SIP-180()
SIP-200() SIP-180()
SIP-200() SIP-180()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
SIP-200()
DIAMETER-ACA()
DIAMETER-ACA()
SIP-200()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
Caller Caller GGSN Caller v CGF/CDF Caller PDF Caller P-CSCF Caller S-CSCF Caller h CGF/CDF Caller HSS Callee HSS Callee h CGF/CDF Calle S-CSCF Callee P-CSCF Callee PDF Callee v CGF/CDF Callee GGSN Callee
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
SIP-ACK()
RTP/RTCP()
Acct(GCID_r, ICID, BytesSent) Acct(GCID_e, ICID, BytesSent)
65
Signaling, tearing down a session
Index
66
SIP online charging
67
Mobility (Terminal)
68
IMS Identity, User Profile(s)
69
Services in IMS
Services in IMS
AS is SIP proxy
S-CSCF
AS
SIP signaling
GGSN
3G UMTS network
Voice, Video
70
Services in IMS
AS is a SIP terminal…receives media data!!!
S-CSCF
AS
SIP signaling
GGSN
3G UMTS network
Voice, Video
Services in IMS
filter rules
When are AS engaged?? “Filter criteria” in S-
CSCF: they analyze the SIP signaling and decide
when to divert it to AS (i.e. involve them)
In user’s profile, each of its personalized services
has (among others) a set of filter criteria
To allow disambiguation, each has a priority
The AS where to direct the SIP messages when the filter
rules are met is specified
71
Example of filter rule
Multiparty Calls
SIP procedure & a special AS
AS: MRF S-CSCF
P-CSCF
P-CSCF
INVITE:
Create GGSN
Conference
3G UMTS network
72
Multiparty Calls
SIP procedure & a special AS
AS: MRF S-CSCF
P-CSCF
P-CSCF
REFER: ask
GGSN
others to join
3G UMTS network
Multiparty Calls
SIP procedure & a special AS
AS: MRF S-CSCF
INVITEs
P-CSCF
P-CSCF
GGSN
3G UMTS network
73
Receives and
Multiparty Calls
forwards all SIP procedure & a special AS
the media,
performing AS: MRF S-CSCF
content
adaptation
P-CSCF
P-CSCF
GGSN
3G UMTS network
74
AS Services in IMS
IMS and OSA
OSA API
S-CSCF
OSA-SCS as AS
SIP signaling
GGSN
3G UMTS network
Voice, Video
Index
75
Is IMS too complex?
The need to
reduce service
and application
The need to
development
create an
costs
The need to environment that
9%
converge fixed will enable quick
and mobile and easy launch
services of new services
24% 39%
The need to
deliver integrated
applications that
combine voice,
data and video
traffic
28%
IMS tutorial 151
76
IMS current deployments
Already deployed
Telefonica in Spain
KPN in the Netherlands
…
35
IMS networks as a % of total networks
30 30
25
20
15 15
10
7
5
3
0 1
2006 2007 2008 2009 2010
Year
77
IMS subscribers forecast
source: FOKUS IMS Workshop, Berlin, Germany, November 2006
Tutorial 1. Prof. Dr. Thomas Magedanz & vision gain
60
subscribers worldwide in millions
50 50
40
30 30
20
15
10
7
2
0
2006 2007 2008 2009 2010
ye ar
PDF
SIP signaling CDF/
CGF
HSS
GGSN
3G UMTS network
Voice, Video
78
IMS towards NGN, possible evolution
3G network disappears, all is IP. No PDP context activation but
RSVP. IMS open to all technologies (WiFi, ADSL, …)
PDF
SIP signaling CDF/
CGF
HSS
IP Router
Voice, Video
IP Router
Voice, Video
79
Index
IMS forecast
80
IMS forecast
References
81
References
References
82
Thank you for your attention
Questions?
E-magerit http://emagerit.dit.upm.es/
CASERTEL-
CASERTEL-NGN http://panal.it.uc3m.es/casertel
83