IMS & Session Initiation Protocol S.K.Gochhayat. S K Gochhayat Regional telecom Training centre Bhubaneswar,Orissa. Bh b Oi1/13/2012
Contents1. Overview2. Various Nodes of IMS i. CSCS a. Proxy CSCF b. Interrogating CSCF c. Serving CSCF ii. HSS/SLF iii. IMS Media Gateway iv. Breakout Gateway Control Function v. MRFC/MRFP vi. MSC/GMSC Server vii. MGCF viii. SIP Application Server ix. IP Multimedia Switching Service Function x. OSA-SCS xi. SBG3. Interfaces of IMS4. Relationship between UICC, USIM, ISIM5.5 Registration and Re Registration Re-Registration6. Basic Message Flow
IMS OVERVIEW IMS stands for IP Multimedia SubsystemIt is an evolution to NGN ofmobile networks defined by3GPP in Rel5(Enhanced in Release 6 with further enhancements in Release 7)
IMS Concepts (1)• Core network based on Internet concepts – Independent of circuit-switched networks – Packet switched transport for signaling and Packet-switched bearer traffic• Utilize existing radio infrastructure – UTRAN — 3G (W-CDMA) radio network – GERAN — GSM evolved radio network l d di t k• Utilize evolving handsets
IMS Architecture Media Server Application Server Internet Mb Gi SIP phone p HSS ISC Mb PS Gi/Mb IM-MGWUE GGSN MRF Mb SGSN Cx Mp Mb Go TDM Gm IMS ISUP PSTN Mw Mg Mn Signaling MGCF P-CSCF CSCF CPECSCF — Call Session Control Function SIPIM-MGW — IM-Media GatewayMGCF — Media Gateway Co t o GC ed a Gate ay ControlFunctionMRF — Media Resource Function
IMS Concepts (2)• In Rel.5, services controlled in home network (by S CSC ) et o S-CSCF) – But executed anywhere (home, visited or external network) and delivered anywhere Service execution Service control S-CSCF ISC Application Server ISC Internet Gm Media Server ISC PS Home IMS UE P-CSCF Mw Application SIP Servers phone Gm Visited Vi it d IMS PS UE P-CSCF
3G rel99 Architecture (UMTS) 2G MS (voice only) — 3G Radios CN BSS E PSTN Abis A PSTN B BSC C MSC GMSC Gb D BTS VLR Gs SS7 H2G+ MS (voice & data) IuCS RNS Gr HLR AuC ATM Gc Iub IuPS Gn Gi PSDN RNC IP SGSN GGSN Node B3G UE (voice & data) ( i d ) BSS — Base Station System CN — Core Network SGSN — Serving GPRS Support Node BTS — Base Transceiver Station MSC — Mobile-service Switching Controller GGSN — Gateway GPRS Support Node BSC — Base Station Controller VLR — Visitor Location Register HLR — Home Location Register U S UMTS — Universal Mobile Telecommunication System U e sa ob e e eco u cat o Syste RNS — Radio Network System AuC — Authentication Server RNC — Radio Network Controller GMSC — Gateway MSC
3G rel4 Architecture (UMTS) — 2G MS (voice only) Soft Switching CN CS-MGW Nb BSS CS-MGW A Abis Nc PSTN PSTN Mc Mc B BSC C MSC Server GMSC server Gb D BTS VLR Gs SS7 H2G+ MS (voice & data) IuCS RNS IP/ATM Gr HLR AuC ATM Gc Iub IuPS Gn Gi PSDN RNC SGSN GGSN Node B3G UE (voice & data) BSS — Base Station System CN — Core Network SGSN — Serving GPRS Support Node BTS — Base Transceiver Station MSC — Mobile-service Switching Controller GGSN — Gateway GPRS Support Node BSC — Base Station Controller VLR — Visitor Location Register HLR — Home Location Register RNS — Radio Network System AuC — Authentication Server RNC — Radio Network Controller GMSC — Gateway MSC
Transcoder Free Operation (TrFO)• Improve voice quality by avoiding unneeded transcoders – like TFO but using packet based core network packet-based• Out-of-band negociation – S l t same codec at b th ends d i call setup Select d t both d during ll t – Supports sudden channel rearrangement (handovers, etc.) via signaling procedures (h d t ) i i li d – When TrFO impossible, TFO can be attempted • e.g. t transit between packet-based and circuit-based it b t k tb d d i it b d core networks
TrFO + TFO Example• 2G handset to 3G handset: by combining TrFO and TFO, in-path transcoders can be avoided 2G PLMN TRAU MSC Radio Access 2G MS Network CS-MGW CS-MGW Radio Access GMSC Server Network 3G Packet3G UE MSC Server Core Network [GSM Coding + TFO Sig] (lsb)C GSM Coding (TrFO) T + G.711 (msb) / 64 Kb T GSM Coding D F FD O O C
3G rel5 Architecture (UMTS) — 2G MS (voice only) IP Multimedia CN CS-MGW Nb BSS CS-MGW A/IuCS Abis Nc PSTN PSTN Mc Mc B BSC C MSC Server GMSC server Gb/IuPS D BTS VLR Gs SS7 H2G+ MS (voice & data) ATM IuCS RNS IP/ATM Gr HSS AuC Gc Iub IuPS Gn Gi IP Network RNC SGSN GGSN Node B3G UE ( i & d t ) (voice data) IM-MGW IM MGW IM IM — IP Multimedia sub-system Gs PSTN MRF — Media Resource Function IP CSCF — Call State Control Function Mc Mg MGCF — Media Gateway Control Function ( y (Mc=H248,Mg=SIP) , g ) MRF MGCF IM-MGW — IP Multimedia-MGW CSCF
3GPP Rel.6 Objectives Rel 6• IP Multimedia Services, phase 2 Services – IMS messaging and group management• Wireless LAN interworking• Speech enabled services – Distributed speech recognition (DSR)• Number portability p y• Other enhancements• Scope and definition in progress
MMD Architecture — 3GPP2 MultiMedia Domain Databases AAA Internet Mobile IP Home Agent SIP phone Border RouterMS Packet Core Access Gateway Core QoS Integrated in P-CSCF Manager MGW MRF MRFP TDM MMD ISUP PSTN MRFC Signaling MGCFAAA — Authentication, Authorization & Accounting CPE SessionMGW — Media Gateway Control IM-MGW + MGCF Manager P-SCM = P-CSCFMGCF — Media Gateway Control Function I-SCM = I-CSCF 3GPP / 3GPP2 mappingMRFC — Media Resource Function Controller M di R F ti C t ll S-SCM = S-CSCF S SCM S CSCF L-SCM = Border Gateway Control FunctionsMRFP — Media Resource Function Processor
SIP SIP IMS SIP IP Network SIP • IMS defines a generic architecture for offering IP based multimedia services onSIP mobile networks networks. • IMS is using SIP - Session Initiation P t I iti ti Protocol from IETF - lf Internet Engineering Task Force as the main control F th i t l protocol
What is IMSA new way of communicating.. Before IMS Pre- IMS Communication With IMS IMS Supported Communication Multiple Sessions Single Session Voice Voice SMS SMS Instant Messaging MMS Video Conferencing Instant Application sharing Messaging Others MMS Multiple Modes of Communication Multiple Modes of Communication 1 2 1 2 3 Dynamic choice of Choice of Start of Choice of Start of modes ofCommunication session initial mode session communication type within one session
Network convergence with IMS Services & applications Common Charging USM services App support Interactive Multimedia Fixed IMS Mobile TeS Telephony Softswitch Server MSC Softswitch Softswitch Server PSTN IP PLMN Backbone IP CS CS PS PS RNC WiMAX BSC WLAN 2G/3G/ Evolved 3G
IMS Architecture• IMS is an architecture designed to support the control g pp layer for packet based services, which uses the bearer services of the access network to support the media associated with the service service.• IMS is access agnostic . In a multi access environment multi-access it ensures service availability to all access networks.• IMS uses SIP capabilities.
IMS Architecture App. Server S P-CSCF HSS To External PDN, Other IMSFirst IMS etc. I-CSCFpoint ofentry t S-CSCF CSCF- CSCF Call Session PCRF Control Function P-CSCF- P CSCF Proxy CSCF I-CSCF –Interrogating CSCF S-CSCF- Serving CSCF
IMS Key Elements• CSCFs (“Call Session Control Functions”) provide handling of SIP signalling in the network Three flavours of CSCF – allows “home IMS” and “access provider” networks to be separated – “Proxy CSCF” – manages access to IMS local to the IP anchor point “Proxy-CSCF” – “Interrogating-CSCF” – finds the right Serving-CSCF – “Serving-CSCF” – provides user services• HSS (“Home Subscriber Server”) provides centralised database of subscription and service information• Policy nodes such as a PCRF (“Policy and Charging Rules Function”) manages policy for handling IP flows in network• Application Server – Provides value added applications on top of IMS framework SIP message flow IP cloud non-SIP interfaces HSS App. P-CSCF Server Visited Network/ PCRF Access Provider P-CSCF I-CSCF To External PCRF S-CSCF PDN, Other GGSN GGSN IMS etc. SGSN Home N H Network k From External Access PDN, Other IMS etc.
i. Nodes N d CSCS a. PProxy CSCF b. Interrogating CSCF c. Serving CSCFii. HSS/SLFiii. IMS Media Gatewayiv. Breakout Gateway Control Functionv. MRFC/MRFPvi.vi MSC/GMSC Servervii. MGCFviii. SIP Application Serverix. IP Multimedia Switching Service Functionx. OSA-SCSxi. SBG
CSCF Functions:• IMS Registration and IMS User A h i i R i i d U Authentication – Access control to the IMS and the support of different User Authentication schemes• IMS Session Control and Service Control – IMS service invocation and control of Application Servers.• IMS Addressing Support – Support of different user addressing schemes (SIP-URIs, TEL-URI’s) and the support of ENUM (E.164 – SIP-URI Address Translation).• SIP Signaling Compression – Compression of SIP messages to allow an efficient transport across the RAN.• IMS Routing Support – Dynamic routing of SIP messages• Charging and Lawful Interception Support – Generation of Charging and LI information in the CSCF.
Proxy CSCF (P-CSCF) Functions: • Serves as the initial point of contact for user terminal to network • Forward the SIP register request received from the UE to an I- CSCF • Forward SIP messages received from the UE to the SIP server (e.g. S-CSCF) • Forward the SIP request or response to the UE UE. • Insert public user identity for UE initiated requests• Maintain a Security Association between itself IMS HSS coreand each UE d h• Perform SIP messagecompression/decompression.• Authorisation of bearer resources and QoS CSCF (P -, I-, S-) I- S-management.• Enforce the bearer resources as negotiated in Mr (SIP)the SDP MRFC
Interrogating CSCF (I-CSCF)Functions• Serves as the initial point of contact from other networks• Selects a S-CSCF for a user performing SIP registration• Routes SIP requests received from another network to the S-S CSCF.• Query HSS for the Address of the S-CSCF.• If no S-CSCF is currently assigned (e.g., unregistered (e g subscriber), then assign S-CSCF to handle the SIP request.• Performs a stateless SIP proxy function,Send a SIP request or response to: S-CSCF in another operator’s network.• MGCF for mobile termination call after processing INVITE.• I-CSCF in I CSCF i another operator’s network ( t th t ’ t k (network hidi case). k hiding )
Serving CSCF (S-CSCF)Functions:• Registration: Behave as a Registrar as defined in RFC3261• Session control for the registered endpoints sessions.• The Serving CSCF retrieves the subscriber profile from the HSS including AS filter criteria criteria.• It accepts requests and services them internally or forwards them on, possibly after translation.• Terminate and independently g p y generate SIP transactions.• Interaction with Services Platforms for the support of services• Charging and resource utilisation:• Generation of CDRs
Interaction of S-CSCF and AS• S-CSCF uses Initial Filter Criteria to involve AS(s) as needed to provide services and features features.• The S-CSCF forwards messages to each AS in the order indicated by the Filter Criteria received from the HSS in the subscribers service profile. After the last AS is contacted, then the message i sent on t is t towards th i t d d d ti ti d the intended destination.• IMS defines Service Point Triggers (SPTs), points in the SIP signaling on which Initial Filter Criteria can be set:• any initial known or unknown SIP method (e.g. REGISTER (e g REGISTER, INVITE, SUBSCRIBE, MESSAGE).• presence or absence of any header or content of any header.• direction of the request with respect to the served user.• MO or MT to registered user or MT to unregistered user.• session description information (i.e. SDP).
S-CSCF Routing Behaviors• On behalf of an originating endpoint:• Obtain from DNS the address of the I CSCF (or other IP endpoint) Ob i f h dd f h I-CSCF ( h d i ) for the network operator serving the destination subscriber using the destination name of the terminating subscriber (e.g. dialed E.164 phone number or SIP URL). Send the SIP request or responses t th indicated I CSCF to the i di t d I-CSCF.• If the destination name of the terminating subscriber is determined by DNS to be a PSTN address, then send the SIP request to the BGCF within the operator’s network. p• On behalf of a destination endpoint Send the SIP request to a P- CSCF based on the registered location for registered subscribers.• Send or redirect the SIP request to an alternate endpoint for unregistered subscribers with call forwarding or similar services services.
HSS•The HSS is the central database for network services andthe user profile data, such as: –UUser id tit i f identity information: ti 1) private user identification, 2) public user identification, )p 3) MSISDN, 4) IMSI, etc… – Registration and Mobility Management information: 1) registration status, 2) S-CSCF SIP address and 3) S-CSCF hostname – Subscribed services and profiles: AS Trigger (Filter Criteria) – Service specific information: 1) subscriber specific application configuration information
SLF IMS HSS coreSLF (Subscription Locator Function)A look-up function to achieve scalability innetworks where several HSS exist. CSCF (P I- S- ( -, I-, S-) Mr (SIP) MRFC
IMS Media Gateway (IM-MGW)• Interacts with the MGCF for resource control• Terminates bearer channels from circuit switched network and media streams from packet network (e.g. RTP streams in an IP network).• Supports media conversion, bearer control, and payload processing (e.g. codec, echo canceller, conference bridge) bridge).
Breakout Gateway Control Function (BGCF)Functions• Selects the network in which the interworking with the PSTN/CS Domain is to occur.• Selects the local MGCF i th network S l t th l l in the t k• Selects peer BGCF• IMS standards do not specify the criteria for the BGCF to use when selecting the PSTN/PLMN access point. Some possible factors include the following:• Current location of the calling UE.• Location of the PSTN/PLMN address.• Local policies and business agreements between the visited and home network (e.g.
MSC/GMSC Server: WCDMA Core Application Service S i enablers bl Application Servers Servers Services/applications MSC HLR/AuC/FNR GMSC/Transit Server Server SGW Control Main MSC Server functions PSTN/ Service control ISDN MGW MGW Connectivity Mobility management Internet SGSNWCDMA GGSN Charging control and CDR generation Intranets EDGE GSM Can C control more th one MGW t l than Control User data
Media Gateway: WCDMA Core Main Media i enablers functions Gateway Service S bl Application Application Servers Speech & media processing Servers Services/applications Setup/release of user data bearers Interfacing between different transport MSC standards HLR/AuC/FNR GMSC/Transit Server Server Boundary between different networks SGW Control Can be controlled by several MSC Servers PSTN/ ISDN MGW MGW Connectivity Internet SGSNWCDMA GGSN Intranets EDGE GSM Control User data
Media Gateway Control Function (MGCF)• Connecting point between IMS control layer and PSTN/ISDN network• It Controls IM-MGW by H.248 and performs media l f di layer i t interworking. ki• IMS side: communicates with I/S-CSCF and BGCF• PSTN/ISDN side: performs p p protocol conversion between SIP and BICC/ISUP.
SIP Application Server Home IMS Network• Accept requests and responses. It will be able CSE(SCP) SIP Application OSA Application to t control, finish or i iti t a new SIP t l fi i h initiate Servers Server transaction IM-SSF OSA-SCS• Route the session towards another user or HSS network• Interact with other service platforms for the P-CSCF S-CSCF support of services I-CSCF• Communicate with the HSS in order to obtain MRF information about subscriptions and services MGCF SGW MGW GGSN Home Access Network
IP Multimedia Switching Service Function Home IMS• IMS enabler for legacy CAMEL and IN services Network N t k CSE(SCP) SIP Application OSA Application• It enables an SCP to control an IMS session Servers Server• Likely to be restricted to providing legacy IM-SSF OSA-SCS services in IMS HSS• Very loosely defined in standardization presently P-CSCF S-CSCF I-CSCF• Currenlty not much momentum in 3GPP in detailing the function to allow a commercial MRF product availability MGCF SGW MGW GGSN Home Access H A Network
OSA-SCS(Service Capability Home IMS Network Server) ) CSE(SCP) SIP Application OSA Application Servers Server HSS IM-SSF OSA-SCS• External 3rd party OSA application server can be accessed via an OSA SCS P-CSCF I-CSCF S-CSCF S-CSCF• OSA SCS i able t provide authentication and is bl to id th ti ti d MRF security for third party access• Very loosely defined in standardization MGW MGCF SGW presently GGSN• Currenlty not much momentum in 3GPP in Home Access Network detailing the function to allow a commercial product availability OSA Framework OSA AS 3rd party Network OSA AS OSA SCS
SBG Session Border Gateway (IBC S ( C IMS Border C Control, IBGF Inter Border G G Gateway Function in 3GPP R7) A-SBG (Access Border Gateway) or N-SBG (Network Border Gateway) ( y) ( y) Aim is to manage IP sessions (signalling and media) across IP network IP network inter-working inter-borders SGC To ensure Security, QoS, SLAs, etc. for IP streams y (I- (I-BCF) H.248 N-SBG SIP/H.323 Split in control and media server MP (I- (I-BGF) Key features: - Analyses SIP/SDP sessions CS network i t -working t k inter inter- ki - Bandwidth fraud protection MGC/ ISUP SGW* - Topology hiding H.248 CCS - Protection against DOS (Denial of Service) MGW GSTN attacks from access side. GRX interwork - SLA (Service Level Agreement) assurance N-SBG - IPv4/IPv6 conversion
Interfaces of IMS CSE(SCP) SIP Application OSA Application Home IMS Servers Server Network ISC Sh IM-SSF OSA-SCS Sh ISC ISC SIP HSS Cx Diameter Cx Mi BGCF IP TDM Mw Mw SS7 P-CSCF Mr S-CSCF I-CSCF Mg Gi MRF Mw MGCF T-SGW MGW Gi ISUP/BICC GGSN Home Access Network Visited IMS Network P-CSCF PSTN PLMN Internet GGSN Visited Access Vi it d A IP networks Network
Cx Interface• I-CSCF or S-CSCF to HSS CSE(SCP) SIP Application OSA Application Servers Server• Allocation of S-CSCF, authentication, retrieval of subscriber information… IM-SSF OSA-SCS• Diameter protocol, with a specific application: Diameter Multimedia Application SLF HSS IMS Subscriber Profile Subscriber Service Profile P CSCF P-CSCF S CSCF S-CSCF I-CSCF Filter Criteria 1 • Application Address (SIP URL) • Filter rule GGSN • Priority MRF • Default Handling • Service Information Filter Criteria 2 … Filter Criteria n
Dx Interface• I-CSCF or S-CSCF to SLF CSE(SCP) SIP Application OSA Application Servers Server• Used to find the HSS, either by: • CSCF queries SLF, and SLF returns IM-SSF OSA-SCS HSS address; or • CSCF sends Cx request to SLF which proxies the request on to the relevant HSS SLF HSS• Diameter protocol, with a specific application: Diameter Multimedia Application P-CSCF S-CSCF I-CSCF GGSN MRF MGCF BGFC T-SGW MGW
Sh and Si InterfacesSh Interface CSE(SCP) SIP Application OSA Application Servers Server• AS to HSS Sh• Read from or write to HSS records IM-SSF OSA-SCS Si• DIAMETER SLF HSSSi Interface• HSS to IM-SSF P-CSCF S-CSCF I-CSCF• Query CAMEL subscription information from HSS• DIAMETER GGSN MRF MGCF BGFC T-SGW MGW
Mw and ISC InterfacesMw Interface CSE(SCP) SIP Application OSA Application Servers Server• CSCF to CSCF• Communication between CSCFs. Considered as IM-SSF OSA-SCS a proxy from the SIP point of view• SIP ISC SLF HSSISC Interface Mw Mw• S-CSCF to AS S CSCF P-CSCF S-CSCF I-CSCF• ISC = IMS Service Control. Needs to carry charging information. GGSN• SIP MRF MGCF BGFC T-SGW MGW
Gx Interface CSE(SCP) SIP Application OSA Application Servers Server OSA-SCS•PCRF to IM-SSF GGSN SLF HSS P-CSCF S-CSCF I-CSCF•QoS GGSN Gi Gx Authorisation A th i ti MRF MGCF BGFC T-SGW•Diameter Di t MGW P-CSCF PCRF Gi Gx PCEF GGSN
Mi,Mj,Mk,Mm,Mr, Mg & Mc reference points Mr InterfaceMi Interface• CSCF to BGCF • CSCF to MRFC CSE(SCP) SIP Application OSA Application Servers Server• SIP • SIPMj Interface Mg Interface IM-SSF OSA-SCS• MGCF to BGCF • MGCF to CSCF• SIP • SIP HSS SLFMk Interface Mc Interface• BGCF to BGCF • MGCF t MGW to• SIP • Megaco (H.248) P-CSCF S-CSCF I-CSCF Mr MiMm Interface Mp interface Mg• CSCF to Other SIP t Oth • MRFC t MRFP to GGSN Mj MRFC• SIP • Megaco (H.248) Mp Mc MGCF BGFC T-SGW T SGW MRFP MGW
The Ut interfaceUE to AS interfaceAvailable in Release 6 CSE(SCP) SIP Application OSA Application Servers ServerUsed to do data manipulation, such as:• Configuration of presence list IM-SSF OSA-SCS• Configuration of conference participants SLF HSS• Configuration of watcher accessThis interface is not used for traffic traffic.The protocols are HTTP and XCAP P-CSCF S-CSCF I-CSCF GGSN MRFC MGCF BGFC T-SGW T SGW MRFP MGW
DIAMETER protocolThe RADIUS protocol (Remote Access Dial In User Services) has been widely and successfully deployed toprovide authentication, authorization, and accounting (AAA) services in the internet. However, inherentshortcomings of the RADIUS protocol have limited its ability to adapt to the ever-increasing capabilities ofrouters and network access servers, and the ever-expanding set of desired AAA services. A number ofrequirements for AAA protocols were identified and these requirements drove the design of the Diameterprotocol. t lBelow are listed some characteristics of the Diameter Protocol: – It is a Query-Response type protocol so, it could be used for retrieving user or service information. – Diameter operates over TCP (Transmission Control Protocol) or SCTP (Stream Control Transmission Protocol). TCP and SCTP are connection-oriented transport protocols with flow control and congestion avoidance mechanisms. – Diameter includes support for capability negotiation so, although clients and servers are not aware of each others capabilities, they may be able to successfully negotiate a mutually acceptable service other s capabilities service. – It is capable of transporting of user authentication information, transporting of service specific authorization information,exchanging resource usage information,relaying, proxying and redirecting of Diameter messages through a server hierarchy. – Diameter is a peer- to-peer protocol so any node can initiate a request peer to peer request.
Key identifiers of IMS• The key identifier of the IMS Services Identity Module• Home Domain ID: Provides the key way that a 3GPP IMS user routes their registration to their Home IMS Network Network.• The Private Identity: Be used for authentication b th users H th ti ti by the Home IMS Network• The Public Identity: Be used for contactable by other users for IMS based
Home Domain Name• Be used to identify the home domain of the user y• If there is no ISIM application, Home domain name can be derived from the IMSI:• Take the first 5 or 6 digits, depending on whether a 2 digits or 3 digit MNC is used and separate them into MCC and MNC• Use the U th MCC and MNC d i d i step 1 t create th d derived in t to t the "mnc<MNC>.mcc<MCC>.3gppnetwork.org" domain name• Add the label "ims." to the beginning of the domain.
Private User Identities• Private Identity is not used for routing routing.• The Private ID takes the format of a NAI: username@realm• If there is no ISIM on the UICC, the Private P i t ID i d i d f is derived from th IMSI the IMSI.• use the whole string of digits of IMSI as the username part• Realm is the home domain name
Public User Identities• The Public Identity is not used to authenticate the user during registration.• Both Internet naming and Telecom numbering is supported: SIP URL or a Tel URL, URL.• At least one IMPU is stored on the ISIM and can not be modified by the UE• If the UICC does not contain an ISIM then a IMPU can be derived from the USIM’s IMSI• by pre-fixing ‘SIP:’ to the Private ID.
Relationship between UICC, USIM, ISIM USIM ISIM
Basic Message Flow Routing of Mobile-To-Mobile Calls - Registration Home Network of MS A Home Network of MS B HSS-A I-CSCF-B HSS-B 3 I CSCF A I-CSCF-A S CSCF A S-CSCF-A S CSCF B S-CSCF-B 3 2 2 REGISTER REGISTERMS A 1 1 MS B P-CSCF-A P-CSCF-B Network visited by MS A Network visited by MS B
Basic Message Flow Routing of Mobile-To-Mobile Calls - Session Initiation Home Network of MS A Home Network of MS B HSS-A I-CSCF-B HSS-B 4 5 3 S CSCF A S-CSCF-A S CSCF B S-CSCF-B 6 INVITEMS A MS B 1 2 7 P-CSCF-A P-CSCF-B Network visited by MS A Network visited by MS B
Basic Message Flow Routing of Mobile-To-Mobile Calls - Call Control Home Network of MS A Home Network of MS B HSS-A I-CSCF-B HSS-B S CSCF A S-CSCF-A Call Control S CSCF B S-CSCF-BMS A MS B P-CSCF-A P-CSCF-B Network visited by MS A Network visited by MS B
Basic Message Flow Routing Calls from CS or PSTNPSTN Home Network of MS B I-CSCF-B HSS-B 4 INVITE 5 3 SGW A SGW-A MGCF A MGCF-A S CSCF B S-CSCF-B 1 2 Call Control 6 REGISTER MS B Gateway 7 Control MGW-A P-CSCF-B Network visited by MS B
Basic Message Flow Routing Calls to CS or PSTN Home Network of MS A PSTN HSS-A BGCF-A 3 I CSCF A I-CSCF-A S CSCF A S-CSCF-A S CSCFB S-CSCF-B MGCF B MGCF-B SGW B SGW-B REGISTER Call Control INVITEMS A 1 2 Gateway Control P-CSCF-A MGW-B Network visited by MS A
HSS, AS and other service appln component NOC OSS • Performance • Fault CSCF • • Monitoring Provisioning Part of NIB-II MGCF GMSC + SPDF + ARACF +AGCF SGSN GSM SG Network GGSN MGW MG PSTN Network MG MG SSSC Core IP/MPLS NetworkAAA +LDAP Broadband NOC Access Broadband Multiplay N/w
Overview • SIP - Introduction • SIP architecture and philosophy • Overview of Working • Methods Used in SIP • SIP messages & responses • Security • Summary • References1/13/2012
SIP Timeline • 1999. 9. 1999 9• 1996 – IETF SIP WG – Mark Hadley’s SIP(Session Invitation Protocol) • 2000. 6 – Henning Schulzrinne’s – RFC 2543bis-01 SCIP(Simple Conference Control • 2000. 9 000 Protocol) – RFC 2543bis-2 (Draft) – SIP developed by Handley, • 2001.3 Schulzrinne, Schooler, and – Split into SIP WG & SIPPING WG Rosenberg• 1996-1997 – SIMPLE WG (Application Area) – Interest grows in academic circles • 2002. 2002 7 over MBone – RFC 3261• 1998 • Alternative to ITU’s H.323 – MCI’s Henry Sinnreich => VoIP - H.323 used for IP Telephony Appliance since 1994• 1999. March - Problems: No new services, – RFC 2543 by IETF MMUSIC WG addressing, features - Concerns: scalability, extensibility
SIP Adoption of Key Standard Bodies B di• IETF PINT – http://www ietf org/html charters/pint charter html http://www.ietf.org/html.charters/pint-charter.html• 3GPP – http://www.3gpp.org• Softswitch Consortium – http://www.softswitch.org• IMTC & ETSI TIPHON – http://www ietf org & http://www etsi org/tiphon/ http://www.ietf.org http://www.etsi.org/tiphon/• PacketCable – http://www.packetcable.com• SIP Forum F – http://www.sipforum.org• Parlay/JAIN – http://www parlay org http://www.parlay.org – http://java.sun.com/products/jain/index.html
IntroductionSIP is i• An Application-layer control (signaling) protocol for creating, modifying and terminating sessions with one or more participants.• Sessions include Internet multimedia conferences, Internet telephone calls and multimedia distribution.• Members in a session can communicate via multicast or via a mesh of unicast relations, or a combination of these.• Text based , Model similar to HTTP : uses client-server model
Introduction• But it should be noted that the job of SIP is limited to only the setup and control of sessions. sessions• The details of the data exchange within a session e g the encoding or codec related e.g. to an audio/video media is not controlled by SIP and is taken care of by other protocols.
SIP Philosophy• Internet Standard - IETF - http://www ietf org http://www.ietf.org• Reuse Internet addressing (URLs, DNS, proxies) - Utilizes rich Internet feature set• Reuse HTTP coding g - Text based• Makes no assumptions about underlying p y g protocol: - TCP, UDP, X.25, frame, ATM, etc. - Support of multicast
Development of SIP• SIP developed by Handley, Schulzrinne, Schooler, and Rosenberg - Submitted as Internet-Draft 7/97 Internet Draft• Assigned RFC 2543 in 3/99• Goals: Re-use of & Maximum Interoperability Re use with existing protocols• Alternative to ITU’s H.323 - H.323 used for IP Telephony since 1994 - Problems: No new services, addressing services addressing, features - Concerns: scalability, extensibility y y1/13/2012
SIP Basic FunctionalitySupports 5 facets of communication:• User location: determination of the end system to be used for communication;• User capabilities: determination of the media and media parameters to be used;• User availability: determination of the willingness of the called party t engage i communications; f th ll d t to in i ti• Call setup: "ringing", establishment of call parameters at both called and calling party;• Call handling: including transfer and termination of calls. calls
SIP Basic Functionality• SIP allows for the establishment of user location (i.e. translating from a users name to their current network address) address).• SIP provides for feature negotiation so that all of the participants in a session can agree on the features to be supported among them them.• SIP is a mechanism for call management - for f example adding, d l ddi dropping, or i transferring participants.
SIP Functionality (cont ) (cont.)• SIP can also initiate multi party calls multi-party using a multipoint control unit (MCU) or fully meshed fully-meshed interconnection instead of multicast.• Internet telephony gateways that connect Public Switched Telephone Network (PSTN) parties can also use SIP to set up calls between them.
Step #1:SIP AddressingUses Internet URLs – Uniform Resource Locators – Supports both Internet and PSTN addresses – General form is name@domain – To complete a call needs to be resolved call, down to User@Host – Examples: sip:firstname.lastname@example.org
Step#2: Locating a SIP server p g• A caller first locates the appropriate server• When client wants to send a request URI client will either send it to - Locally configured Proxy server or to - IP address & port corresponding to the request URI [similar to the one in step#1]• Client must determine IP address, port
Locating (cont.)Client1. Should try to contact a server at the y port listed in request URI. If no port specified then try port 5060 - Use specified protocol if applicable - o.w. use UDP if supported, pp , - if UDP fails or o.w. use TCP2.2 Send the request to the server’s IP server s address if the host part of request URI is an IP address o.w.3. Find one or more address of server by querying DNS,
Step# 3:Send a SIP request• Once the host part has been resolved to a SIP server, - client sends 1 / more SIP requests to that th t server & - receives 1 / more responses from the server.• SIP Request-line (Messages) defined as: Request line <Method> <SP> Request-URI <SP>SIP- Version <CRLF> (SP=Space, CRLF C i (SP S CRLF=Carriage R t Return and Li d Line Feed) ( (Method = “INVITE” | “ACK” | “OPTIONS” | “BYE” | “CANCEL” | “REGISTER”)• Example: INVITE sip:email@example.com SIP/2.0 @
Order of Operation• Step1: Caller Issues Initial INVITE Request p q• Step 2: Callee Issues Response• Step 3: Caller Receives Response to Initial request p p q• Step 4: Caller or Callee Generate Subsequent requests• Step 5: Receive Subsequent Requests• Step 6: BYE to end session• Step x: CANCEL may be issued
SIP Protocol Command MeaningsINVITE Invites a user to a call (initiate call) ( )ACK Acknowledgement is used to facilitate reliable message exchange for INVITEs(confirm final response)BYE Terminates a connection between users (and transfer) call )CANCEL Terminates a request, or search, for a user. It is used if a client sends an INVITE and then changes its decision to call the recipient recipient.OPTIONS Solicits information about a servers capabilities. features support by other side pp yREGISTER Registers a users current location 1/13/2012INFO Used for mid-session signaling
SIP Functions• IETF-standardized peer-to-peer signaling protocol• User location – Locate user given email-style address email style – Personal mobility • Different terminal •SSame id tifi identifier • Any location• User capabilities –( ) (re)-negotiate session parameters ti t i t (determination of the media and media p parameters to be used;);)• User availability – Determination of willingness of the called p y party to engage in communications g g• Call setup "ringing", establishment of call parameters at both called and calling party;• Call handling
SIP Architecture• SIP uses client/server architecture• Elements: – SIP User Agents (SIP Phones) – SIP Servers (Proxy or Redirect - used to locate SIP users or to forward messages.) • Can be stateless or state-ful – SIP Gateways: G t • To PSTN for telephony interworking • T To H.323 f IP Telephony interworking H 323 for T l h i t ki• Client - originates message• Server - responds to or forwards message
SIP Architecture• SIP uses client/server architecture• Elements: – SIP User Agents (SIP Phones) – SIP Servers (Proxy or Redirect - used to locate SIP users or to forward messages.) • Can be stateless or stateful – SIP Gateways: G t • To PSTN for telephony interworking • T To H.323 f IP Telephony interworking H 323 for T l h i t ki• Client - originates message• Server - responds to or forwards message
SIP Entities• User Agents – User Agent Client (UAC): Initiates SIP requests – User Agent Server ( g (UAS): Returns SIP responses ) p• Network Servers (diff. types may be co-located ) – Proxy: Decides next hop and forwards request, relays call signaling , operates in a transactional manner, saves no session state – Redirect: Sends address of next hop back to client, redirects callers to other servers - Registrar: Accepts REGISTER requests from clients, maintains users’ whereabouts at a location server
Instant Messaging ( g g (Contd.) ) SIP Redirect server(provides alternate loca tion where user can be reachable SIP:neha @126.96.36.199) 2SIP proxy 5188.8.131.52 3 SIP proxy Location 4 service 6 11 10 proxy 12 7 1 Try to reach 8 13 9 1/13/2012 SIP Client SIP Client firstname.lastname@example.org
Step #1:SIP Addressing Uses Internet URLs – Uniform Resource Locators – Supports both Internet and PSTN addresses – General form is name@domain – To complete a call, needs to be resolved down to User@Host – Examples: sip:email@example.com sip:J.T. sip:J T Kirk <kirk@starfleet gov> <firstname.lastname@example.org> sip:+email@example.com;user=phone sip:firstname.lastname@example.org sip:guest@10 64 1 11/13/2012 sip:email@example.com;phone-context=VNET
Step#2: Locating a SIP server p g • A caller first locates the appropriate server • When client wants to send a request URI client will either send it to - Locally configured Proxy server or to - IP address & port corresponding to the request URI [similar to the one in step#1] • Client must determine IP address, port1/13/2012
Locating (cont.) Client 1. Should try to contact a server at the port listed in request URI. If no port specified then try port 5060 URI - Use specified protocol if applicable - o.w. use UDP if supported, - if UDP fails or o.w. use TCP 2. Send the request to the server’s IP address if the host part of request URI is an IP address o w o.w. 3. Find one or more address of server by querying DNS, 4. Results MAY b cached. 4 R lt be h d 5. Capability to interpret ICMP messages must exist1/13/2012
Step# 3:Send a SIP request• Once the host part has been resolved to a SIP server, - client sends 1 / more SIP requests to that server & q - receives 1 / more responses from the server.• SIP Request-line (Messages) defined as: <Method> <SP> Request-URI <SP>SIP-Version <CRLF> (SP=Space, CRLF C i (SP S CRLF=Carriage R t Return and Li F d) d Line Feed) (Method = “INVITE” | “ACK” | “OPTIONS” | “BYE” | “CANCEL” | “REGISTER”) BYE CANCEL REGISTER )• Example: INVITE sip:picard@wcom com SIP/2 0 sip:firstname.lastname@example.org SIP/2.0 1/13/2012
Order of Operation • Step1: Caller Issues Initial INVITE Request p q • Step 2: Callee Issues Response • Step 3: Caller Receives Response to Initial p p request • Step 4: Caller or Callee Generate Subsequent requests • Step 5: Receive Subsequent Requests • Step 6: BYE to end session • Step x: CANCEL may be issued1/13/2012
Methods (cont ) (cont.) • INVITE: Initiates sessions - Session description included in message body • Re INVITEs used to change session state Re-INVITEs • ACK confirms session establishment, can only be used with INVITE • BYE terminates a session (hanging up) • CANCEL cancels a pending invite • REGISTER: binds a permanent address to current location, may convey user data • OPTIONS: capability inquiry1/13/2012
Six types of response1XX Provisional Request received, continuing to process Informational the request request.2XX Success The action was successfully received, understood, and accepted.3XX Redirection Further action needs to be taken in order to complete the request4XX Client Error The request contains bad syntax or cannot be fulfilled at this server.5XX Server Error The server failed to fulfill an apparently valid request.6XX Global Failure The request cannot be fulfilled at any server. server 1/13/2012
IP SIP Phones and AdaptorsyAre Internet hosts • Choice of application • Choice of server • IP applianceyImplementations 1 • 3Com (2) • Cisco • Columbia University 2 • Mediatrix (1) • Nortel (3) • Pingtel 3 yCourtesy: http://engr.smu.edu/~hbaker/40
SIP Responses • SIP Responses defined as (HTTP- style): t l ) SIP-Version SP Status-Code SP Reason-Phrase CRLF (SP=Space, CRLF=Carriage Return and Line Feed) • Example: SIP/2.0 404 Not Found • First digit gives Class of response1/13/2012
SIP Responses (cont.)• 1xy – Informational request received , continuing to process request• 2xy – Success action successfully recvd., understood & accepted• 3xy – Redirection Further action to be taken to complete the request• 4xy – Client error y request contains syntax error or cant be completed at this server• 5xy – Server error server fails to fulfill an apparently valid request• 6 – global f il 6xy l b l failure,request is invalid at any server 1/13/2012
Step #4 Generate Subsequent Requests• Once the call has been established, either the caller or callee may generate INVITE or BYE requests to change or terminate the call.• For the desired call leg the headers are set as follows (both including any tags): - the To header field is set to the remote address, and - th F the From h d fi ld i set t th l header field is t to the local address. l dd• The Contact header field may be different than the Contact header field sent in a previous response or request. The Request-URI may be set to the value of the Contact header field received in a previous request or response from the remote party, or to the value of the remote address. t t th l f th t dd [supports mobility]1/13/2012
SIP Requests ExampleRequired Headers (fields): INVITE sip:email@example.com SIP/2.0 Via: SIP/2.0/UDP host.wcom.com:5060 Uniquely } From: Alan Johnston <sip:firstname.lastname@example.org> identify To: Jean Luc Picard <sip:picard@wcom com> <sip:email@example.com> this Call-ID: firstname.lastname@example.org session CSeq: 1 INVITE request – Via: Shows route taken by request request. – Call-ID: unique identifier generated by client. – CSeq: Command Sequence number • generated by client • Incremented for each successive request1/13/2012
Via Field in Header• The Request headers include a Via field• The Via field indicates the path taken by the y request so far.• Every proxy adds a Via Header with its address to make s re that responses within a sure ithin transaction take the same path (to avoid loops, or to make sure that same firewall will p , be hit on the way back)• This prevents request looping and ensures replies t k th same path as th requests, li take the th the t which assists in firewall traversal and other unusual routing situations.1/13/2012
Via Headers and Routing• Via headers are used for routing SIP messages• Requests – Request i iti t puts address i Vi h d R t initiator t dd in Via header – Servers check Via with sender’s address, then add own address, then forward. (if different, add “received” ( parameter)• Responses – Response i iti t copies request Vi h d R initiator i t Via headers. – Servers check Via with own address, then forward to next Via address• All Via headers are copied from request to response in order• R Response i sent t address i t Vi h d is t to dd in top Via header1/13/2012
Step #5 Receiving Subsequent Requests • S b Subsequent to receipt, th f ll i checks are tt i t the following h k made: 1. If the Call-ID is new, - the request is for a new call, regardless of the values of the To and From header fields. 2. If the Call-ID exists, - the request is for an existing call. - If the To, From, Call-ID, and CSeq values exactly match (including tags) those of any requests received ( g g ) y q previously, the request is a retransmission. 3. If there was no match to the previous step, - To & From fields compared against existing call leg local and remote addresses. - If there is a match, & the CSeq in the request > last CSeq received on that leg,the request is a new q g, q transaction for an existing call leg.1/13/2012
Reliability • If UDP is used: -SIP client should retransmit a BYE, CANCEL SIP BYE CANCEL, OPTIONS, or REGISTER request, exponential backoff, starting at a T1 second interval, doubling the interval inter al for each packet and capping off at a T2 packet, second interval. -Retransmit a INVITE request with an interval that q starts at T1 seconds, exponential back off, cease retransmissions if a provisional or definitive response recvd., recvd or once it has sent a total of 7 request packets • Clients using TCP do not need to retransmit requests1/13/2012
Authentication & Encryption• SIP supports a variety of approaches: – end to end encryption – h hop b h encryption by hop ti• Proxies can require authentication: – R Responds t INVITE with 407 P d to INVITEs ith Proxy- Authentication Required – Client re-INVITEs with Proxy-Authorization header.• SIP Users can require authentication: q – Responds to INVITEs with 401 Unathorized – Client re-INVITEs with Authorization header1/13/2012
Features and BenefitsFeature BenefitsInternet SIP based SIP-based systems can take advantage of the growth ofEnabled the Internet. Translating gateways permit SIP-based systems to contact parties on the Public Switched Telephone Network (PSTN) without being encumbered by its legacy standards.Scalability y Architecture permits inexpensive scaling. H/W & S/W p p g requirements for adding new users to SIP-based systems is greatly reduced.SimplicitySi li i SIP stack i smaller. SIP can b considered as a simple k is ll be id d i l toolkit that enables smart endpoints, gateways, p processes & clients to be built and implemented p 1/13/2012
Features and Benefits(cont.)Feature BenefitDistributedDi t ib t d -DDe-centralized intelligence permits more t li d i t lli itfunctionality functionality within each component. - Changes made to specific components g p p have a minor impact on the rest of the system. It is possible to connect one SIP phone to another with an Ethernet cable & h t th ith Eth t bl make calls between the sets without the aid of any other server modules. y - The other system components become useful when the network requires more than two phones.1/13/2012
SIP Summary• SIP is: – Relatively R l ti l easy t i l to implement t – Gaining vendor and carrier acceptance – Very flexible in service creation – Extensible and scaleable – Appearing in products right now• SIP provides its own reliability mechanism & is therefore independent of the packet layer and only requires an unreliable datagram service