Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Introduction IMS: Ulf Spangenberger

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 28

2e

Introduction IMS

Ulf Spangenberger
Overview 2e

• IMS, what is it good for?


• IMS components / roles
• Registration procedure
• Invite procedure
• SDP (codecs, precondition)
• SIP (routing)

Introduction in IMS architecture 2 Ulf Spangenberger


Short history of IMS 2e

3GPP, release 5 (evolution 2G -> 3G) first mentioned


3GPP, release 8 support for LTE
3GPP, release 10 SRVCC

Service/Application
“The IP Multimedia Subsystem or layer

IP Multimedia Core Network Subsystem (IMS)


IMS layer
is an architectural framework
for delivering IP multimedia services” Transport layer

Introduction in IMS architecture 3 Ulf Spangenberger


Call setup via IMS 2e

Application Application Application


Server AS1 Server AS2 Server AS3

IP1 Call routing CS


Gate
Fixed / DSL LI
way
User authentication
Session
Initiation
Protocol
IPMultimediaSubsystem
Call routing
Security
Charging
LTE LTE
Trigger data path setup
IP2 Session IP3
Description
Protocol
RTP/RTCP

Introduction in IMS architecture 4 Ulf Spangenberger


IMS overview 2e

DNS
AS
ENUM
ISC

• SIP
Security (TH, SLA)
S6a HSSd
MME -FE HSSOne-NDS • Call routing
diameter
Ic
SIP Mw Cx
IMS
diameter

SIP
IMS

Gm P- I- S-
SAE-GW CSCF CSCF CSCF
CSCF
I-BCF BGCF
Mj, Mg
SIP
MGCF

Rx Gq
diameter • Trigger data path setup • Call routing
• Security (SBC) • Authentication
PCRF SPDF • LI • LI
• Charging • Charging

Introduction in IMS architecture 5 Ulf Spangenberger


Subscriber data (HSS), part 1 2e

IMPU
D N
(IP Multimedia PUblic Identity)
S URI: Uniform resource identifier -> SIP-URI / TEL-URI

M S I sip:<user part>@<host/domain part>


tel:<telefone number>
sip:+493119106001@tb11.mchm.nsn-rdnet.com

S I
IMPI IM
(IP Multimedia Private Identity) <any string>
derived IMPI = IMPU without „sip:“
+493119106001@tb11.mchm.nsn-rdnet.com
Credentials = password

IMPU (IMSI-derived) sip:<IMSI>@ ims.mnc<MNC>.mcc<MCC>.3gppnetwork.org


sip:555103114300011@ims.mnc010.mcc555.3gppnetwork.org
! For Registration only !
! For USIM UEs only !

IMPI (IMSI-derived) <IMSI>@ ims.mnc<MNC>.mcc<MCC>.3gppnetwork.org


555103114300011@ims.mnc010.mcc555.3gppnetwork.org
Credentials = AKA vectors

Introduction in IMS architecture 6 Ulf Spangenberger


Subscriber data (HSS), part 2 2e

iFC (initial Filter Criteria) priority -> sequence


application server -> destination
trigger point -> filter
default handling

SPT:
SPT ID: 2
Condition Negated: 1
Group: 2
SPT Class: RequestURI
Value: "^(tel:|sip:)(112|110|911)"

ConditionTypeCNF: 1 SPT:
SPT ID: 3
SPT: Condition Negated: 0
SPT ID: 0 Group: 3
Condition Negated: 0 SPT Class: SIPHeader
Group: 0 Header: "Content-Type"
SPT Class: SessionCase Content: "application/sdp"
Value: 0 "ORIGINATING SESSION„
SPT:
SPT: SPT ID: 4
SPT ID: 1 Condition Negated: 0
Condition Negated: 0 Group: 4
Group: 1 SPT Class: SessionDescription
SPT Class: Method Line: "body"
Value: "INVITE" Content: "m=(audio|video|image)„

Introduction in IMS architecture 7 Ulf Spangenberger


Register procedure 2e

DNS IMPU1
AS
IMPU2
scscf2 HSSd-FE iFC AS
One-NDS

3rd party registration


NAPTR <domain> IMPU1
Multimedia-Auth IMPU2
registered
User-Authentication
UAR/A: Do we know this subscriber? MAR/A: I need the credentials
Is subscriber registered? Server-Assignment
SAR/A: I need the subscription data (e.g. iFCs,
additional IMPUs)

I-CSCF S-CSCF
I-CSCF S-CSCF
P-CSCF I-CSCF S-CSCF
REGISTER sip:<domain> REGISTER sip:<domain> REGISTER sip:<domain>
From: IMPU1
To: IMPU1

IMPU1 IMPU1 scscf2 scscf1 cap 1 2 prio 1 weight 80 IMPU1 pcscf3


IMPU2 IMPU2 IP address scscf2 cap 3 4 prio 1 weight 20 IMPU2
iFC

Introduction in IMS architecture 8 Ulf Spangenberger


Invite procedure, originating side 2e

AS
AS ENUM DNS
Domain based routing
No such name
<#> sip:<#>@<valid_domain>

I-BCF
IMS

P- S-
CSCF CSCF
INVITE A INVITE A
sip:<#>@<domain> sip:<#>@<domain>
From: IMPU-A From: IMPU-A iFC

UE-A BGCF MGCF


IMPU-A scscf2 IMPU-A pcscf3
IP address
iFC

Number based routing

Introduction in IMS architecture 9 Ulf Spangenberger


Invite procedure, terminating side 2e
IMPU-B
sip:<#>@<valid_domain> scscf4

One- HSSd AS
-FE AS
NDS

Location-Info (LIR/A)

I-
CSCF
S- P-
B
CSCF CSCF
/
INVITE INVITE B INVITE B INVITE
I-BCF
sip:<#>@<valid_domain> sip:<#>@<valid_domain> sip:<contact from REG> sip:<#>@<UE IP>
B iFC

UE-B
IMPU-B pcscf3 IMPU-B scscf4
IP address
iFC

Introduction in IMS architecture 10 Ulf Spangenberger


Invite procedure, Rx 2e
INVITE (SDP) IP address-A, port-A, ordered list of supported codecs, [bandwidth]
180 RINGING
200 OK (SDP) IP address-B, port-B, ordered list of negociated codecs, [bandwidth]
ACK

P- S- S- P-
CSCF CSCF Call routing (IMPU) CSCF CSCF
A A B B

UE-A UE-B

Access Authorization, AAR/A

PCRF Flow descriptor: UL/DL for RTP/RTCP PCRF


Bandwidth: UL/DL for RTP/RTCP
Codec list

SAE-GW Setup dedicated bearer with QCI=1 SAE-GW

Introduction in IMS architecture 11 Ulf Spangenberger


SDP 2e
Requested bandwidth for Destination IP address for
RTP/RTCP RTP/RTCP

Media type
Destination port for RTP
(RTCP = RTP +1)

Ordered codec list


(payload type)
> 96 is dynamic range

Mapping from payload type


to encoding name

AMR modes

Precondition attributes

Introduction in IMS architecture 12 Ulf Spangenberger


Codecs 2e

G.711 – (static 8, 0)
• 8kHz / 8bit + no compression => 64 kbit/s
• used for ISDN and VoIP in fixed line environment
• good voice quality (MOS = 4,4)
AMR (Adaptive Multirate Codec) – (dynamic)
• 8kHz / 13bit
• 4,75 – 12,2 kbit/s
• bit rate according to radio quality
• used in GSM and UMTS
• 12,2 kbit/s mode ≈ G.711
AMR-WB (AMR-Wide band) – (dynamic)
• 16kHz / 14bit
• 6,6 – 23,85 kbit/s
• 12,65 kbit/s mode ≈ G.722 with 56 kbit/s (MOS = 4,5)
• lower modes for bad radio conditions
• higher modes for background noise environment,
combined voice and music
• G.722.2

Introduction in IMS architecture 13 Ulf Spangenberger


Precondition 2e

• Precondition: a set of constraints that must be fulfilled before the user is alerted (rfc3312)
• new SDP attributes
curr (current status), des (desired status), conf (confirmation status)
• Offer/Answer message flow
A -> B
Initial INVITE (SDP) Delay ringing
A B until curr=des
for A

Session Progress (SDP) B -> A


Inform me
when
curr=conf
RAB setup B
RAB setup A
UPDATE (SDP) A -> B
curr=conf=des

200 OK (SDP)

Ringing

Introduction in IMS architecture 14 Ulf Spangenberger


SIP basics, RFC 3261 2e

• Application layer control protocol


• HTTP like transaction model
user agent request user agent
client server

provisional
responses (1xx)
Final response (2xx, 3xx, 4xx, 5xx, 6xx) SIP dialog

server request client


response

• Syntax: start-line/header/[body]
• Private header -> flexible

• Coded as text string -> easy to read


• Independant from the media description protocol
• Reconfiguration of media stream possible -> first audio, then also video

Introduction in IMS architecture 15 Ulf Spangenberger


SIP header 2e
Integer that is decremented at
each hop
address were response is
expected
SIP URI of the originator
+ random string SIP URI of the original
target of the request

Identifier for this call


(to-tag + from-tag + Call-ID
= dialog ID

Sequence number

SIP URI were future


Route: requests are expected
Via:
Contact:
Record-Route: Description and length of
SIP routing the message body

Introduction in IMS architecture 16 Ulf Spangenberger


SIP routing, initial request, INVITE 2e

SIP SIP SIP


proxy proxy proxy
A B C

Request-URI: sip:UE-B Request-URI: sip:UE-B Request-URI: sip:UE-B


Request-URI: sip:UE-B
Via: proxy-A Via: proxy-B Via: proxy-C
Via: UE-A
Record-route: sip:proxy-A Via: proxy-A Record-route: sip:proxy-C
Contact: sip:UE-A
Via: proxy-B
route set
Via: UE-A Record-route: sip:proxy-A - proxy-C
Contact: sip:UE-A Via: UE-A Via: proxy-A
Record-route: sip:proxy-A - proxy-A
Contact: sip:UE-A
Via: UE-A
Contact: sip:UE-A
Contact-A
Dialog-ID
Via: proxy-C
Via: proxy-C Via: proxy-B
Via: proxy-C Via: proxy-B Via: proxy-A
Via: proxy-A Via: UE-A
Via: proxy-B
Via: proxy-C Via: UE-A Record-route: sip:proxy-C
Via: proxy-A
Via: proxy-B Record-route: sip:proxy-C Record-route: sip:proxy-A
Via: UE-A
Via: proxy-A Record-route: sip:proxy-A Contact: sip:UE-B
Record-route: sip:proxy-C
route set Via: UE-A Record-route: sip:proxy-A Contact: sip:UE-B
- proxy-A Record-route: sip:proxy-C Contact: sip:UE-B
- proxy-C Record-route: sip:proxy-A
Contact: sip:UE-B

Contact-B
Dialog-ID

Introduction in IMS architecture 17 Ulf Spangenberger


SIP routing, subsequent request, e.g. BYE 2e

SIP SIP SIP


proxy proxy proxy
A B C

Request-URI: Contact-B Request-URI: Contact-B Request-URI: Contact-B


route set Route: sip:proxy-A Route: sip:proxy-A Route: sip:proxy-A
- proxy-A Route: sip:proxy-C Route: sip:proxy-C Route: sip:proxy-C
- proxy-C Via: UE-A Via: proxy-A Via: proxy-C
Contact: sip:UE-A Record-route: sip:proxy-A Record-route: sip:proxy-C
Via: UE-A Via: proxy-A
Contact: sip:UE-A Record-route: sip:proxy-A
Contact-B Via: UE-A
Dialog-ID Contact: sip:UE-A

Via: proxy-C
Via: proxy-A
Via: UE-A
Via: proxy-C
Record-route: sip:proxy-C
Via: proxy-A
Via: proxy-C Record-route: sip:proxy-A
Via: UE-A
Via: proxy-A Contact: sip:UE-B
Record-route: sip:proxy-C
Via: UE-A Record-route: sip:proxy-A
Record-route: sip:proxy-C Contact: sip:UE-B
Record-route: sip:proxy-A
Contact: sip:UE-B

Introduction in IMS architecture 18 Ulf Spangenberger


SIP routing, IMS 2e

Invite

P- S- I- S- P-
CSCF CSCF CSCF CSCF CSCF
A A B B B

UE-A UE-B

Introduction in IMS architecture 19 Ulf Spangenberger


SIP routing, IMS + AS 2e

NVS NVS
Invite

P- S- I- S- P-
CSCF CSCF CSCF CSCF CSCF
A A B B B

UE-A UE-B

Introduction in IMS architecture 20 Ulf Spangenberger


SIP routing, B2BUA 2e

UAC UAS UAC UAS UAC UAS

SIP Dialog 2
AS AS
B2BUA B2BUA

SIP Dialog 1 SIP Dialog 3

P- S- I- S- P-
CSCF CSCF CSCF CSCF CSCF
A A B B B

UE-A UE-B

SIP Dialog UE-A – UE-B

Introduction in IMS architecture 21 Ulf Spangenberger


SIP INVITE 2e

AS AS

P- S- I- S- P-
CSCF CSCF CSCF CSCF CSCF
A A B B B

UE-A UE-B

PCRF SPDF SPDF PCRF

P-GW A-BGF MGW MGW A-BGF P-GW

Introduction in IMS architecture 22 Ulf Spangenberger


Summary 2e

IMS, what is it good for?


• 3GPP standard compliant
• Call routing for IP/SIP clients
• Common functions for application server, e.g. authentication, charging, LI
IMS components / roles
• HSS (subscriber data)
• CSCF (P – first UE contact, I – entry point home domain, S – „does all the work“)
Registration procedure
• P knows: UE IP, S-CSCF
• S knows: P-CSCF, credentials, iFC
• HSS knows: S-CSCF
• AS knows: UE registered
• UE knows: all IMPUs
Invite procedure
• Originating: AS (iFC), domain / number based routing (ENUM)
• Terminating: AS (iFC)
• Dedicated bearer trigger (SDP, Codecs, Precondition)

Introduction in IMS architecture 23 Ulf Spangenberger


Abbreviations 2e
CSCF: Call Session Control Function
HSS: Home Subscriber Server
HSSd: HSS distributed (based on One-NDS)
P-CSCF: Proxy- CSCF
I-CSCF: Interrogating-CSCF
S-CSCF: Serving-CSCF
I-BCF: Interconnection Border Control Function
BGCF: Breakout Gateway Control Function

DNS: Domain Name System / Server


ENUM: E.164 Number Mapping
iFC: Initial Filter Criteria
ISC: IMS Service Control
NAPTR: Name Authority Pointer
RTP: Real-time Transport Protocol
SBC: Session Border Controler
SDP: Session Description Protocol
SIP: Session Initiation Protocol
SLA: Service Level Agreement
TH: Topology Hiding
URI: Uniform Resource Identifier

Introduction in IMS architecture 24 Ulf Spangenberger


Thank you 2e

BACKUP

Introduction in IMS architecture 25 Ulf Spangenberger


SRVCC 2e
UE openTAS MGCF

INVITE (SDP-UE) INVITE (SDP-UE)

183 Session Progress (SDP-MGW1)


183 Session Progress (SDP-MGW)
LTE -> 3G

INVITE „99“ (SDP-MGW2)

RE-INVITE (SDP-MGW2)

183 Session Progress (SDP-MGW1)

200 OK (SDP-MGW1)
BYE
200 OK

Call release BYE

BYE

Introduction in IMS architecture 26 Ulf Spangenberger


tb11 2e

10.200.143.15 10.200.143.18

2 x HSSd-FE: IMS 9.2 tb11- tb11-


hssd1 hssd2

10.200.143.106 Cx 10.200.143.109

Rx, Mj 10.200.143.101

10.200.143.10 10.200.143.13

1 x LCC CSCF: IMS 9.2 tb11- tb11-


All roles combined cscf1 cscf2

10.200.143.135
Gm

Introduction in IMS architecture 27 Ulf Spangenberger


Subscriber data, HSSd / ENUM 2e

Subscriber provisioning:

- HSSd -> One-NDS presentation


-ENUM (E.164 NUmber Mapping): Translation of E.164 numbers to an URI, i.e. SIP-URI

root@inum-sec:/etc/bind]$ cat 5.2.7.1.9.4.e164.arpa


$ORIGIN .
$TTL 180 ; 3 minutes
5.2.7.1.9.4.e164.arpa IN SOA inum.mchm.nsn-rdnet.com. hostmaster.inum-pdns.mchm.nsn-rdnet.com. (
2013032101 ; serial
120 ; refresh (2 minutes)
360 ; retry (6 minutes)
86400 ; expire (1 day)
180 ; minimum (3 minutes)
)
$TTL 60 ; 1 minute
NS inum.mchm.nsn-rdnet.com.
$ORIGIN 7.6.5.2.7.1.9.4.e164.arpa.
* NAPTR 10 20 "u" "E2U+sip" "!^(.*)$!sip:\\1@tb11.mchm.nsn-rdnet.com!" .

Introduction in IMS architecture 28 Ulf Spangenberger

You might also like