The IP Multimedia Subsystem (IMS) is an architectural framework for delivering internet protocol (IP) multimedia to mobile users. It was originally designed by the wireless standards body 3rd Generation Partnership Project (3GPP), and is part of the vision for evolving mobile networks beyond GSM. Its original formulation (3GPP R5) represented an approach to delivering "Internet services" over GPRS. This vision was later updated by 3GPP, 3GPP2 and TISPAN by requiring support of networks other than GPRS, such as Wireless LAN, CDMA2000 and fixed line.
To ease the integration with the Internet, IMS as far as possible uses IETF (i.e. Internet) protocols such as Session Initiation Protocol (SIP). According to the 3GPP[1], IMS is not intended to standardise applications itself but to aid the access of multimedia and voice applications across wireless and wireline terminals, i.e. aid a form of fixed mobile convergence (FMC). This is done by having a horizontal control layer that isolates the access network from the service layer. Services need not have their own control functions, as the control layer is a common horizontal layer.
Alternative and overlapping technologies for access and provision of services across wired and wireless networks depend on the actual requirements, and include combinations of Generic Access Network, soft switches and "naked" SIP. This makes the business use of IMS less appealing. It is easier to sell services than to sell the virtues of "integrated services". But, services for IMS have not been prolific.
Since IMS was conceived years ago, it is becoming increasingly easier to access content and contacts using mechanisms outside the control of traditional wireless/fixed operators, and so those operators are likely to reconsider their strategies[2]. Although it is expected that eventually IP will be available on all mobile phones and operators, it is not clear how much of the 3GPP/3GPP2/TISPAN IMS as it exists today will be deployed. "Early IMS" might be used in IMS implementations that do not yet support all "Full IMS" requirements, although it's not clearly defined what differences there might be (IPv4 support instead of IPv6 is often mentioned).
IMS was originally defined by an industry forum called 3G.IP, formed in 1999. 3G.IP developed the initial IMS architecture, which was brought to the 3rd Generation Partnership Project (3GPP), as part of their standardization work for 3Gmobile phone systems in UMTS networks. It first appeared in release 5 (evolution from 2G to 3G networks), when SIP-based multimedia was added. Support for the older GSM and GPRS networks was also provided.
3GPP2 (a different organization) based their CDMA2000 Multimedia Domain (MMD) on 3GPP IMS, adding support for CDMA2000.
3GPP release 7 added support for fixed networks, by working together with TISPAN release R1.1.
Architecture
3GPP / TISPAN IMS Architectural Overview
The IP Multimedia Core Network Subsystem is a collection of different functions, linked by standardized interfaces, which grouped form one IMS administrative network. A function is not a node (hardware box): an implementer is free to combine 2 functions in 1 node, or to split a single function into 2 or more nodes. Each node can also be present multiple times in a single network, for load balancing or organizational issues.
The Home Subscriber Server (HSS), or User Profile Server Function (UPSF), is a master user database that supports the IMS network entities that actually handle calls. It contains the subscription-related information (user profiles), performs authentication and authorization of the user, and can provide information about the user's physical location. It is similar to the GSM Home Location Register (HLR) and Authentication Centre (AUC).
A Subscriber Location Function (SLF) is needed to map user addresses when multiple HSSs are used. Both the HSS and the SLF communicate through the Diameter protocol.
User identities
Normal 3GPP networks use the following identities:
IMSI is a unique phone identity that is stored in the SIM. To improve privacy, a TMSI is generated per geographical location. While IMSI/TMSI are used for user identification, the IMEI is a unique device identity and is phone specific. The MSISDN is the telephone number of a user.
IMS also requires IP Multimedia Private Identity (IMPI) and IP Multimedia Public Identity (IMPU). Both are not phone numbers or other series of digits, but Uniform Resource Identifier (URIs), that can be digits (a tel-uri, like tel:+1-555-123-4567) or alphanumeric identifiers (a sip-uri, like sip:john.doe@example.com). There can be multiple IMPU per IMPI (often a tel-uri and a sip-uri). The IMPU can also be shared with another phone, so both can be reached with the same identity (for example, a single phone-number for an entire family).
The HSS user database contains, the IMPU, IMPI, IMSI, and MSISDN and other information.
Call/session control
Several roles of Session Initiation Protocol (SIP) servers or proxies, collectively called Call Session Control Function (CSCF), are used to process SIP signalling packets in the IMS.
A Proxy-CSCF (P-CSCF) is a SIP proxy that is the first point of contact for the IMS terminal. It can be located either in the visited network (in full IMS networks) or in the home network (when the visited network isn't IMS compliant yet). Some networks may use a Session Border Controller for this function. The terminal discovers its P-CSCF with either DHCP, or it is assigned in the PDP Context (in General Packet Radio Service (GPRS)).
it is assigned to an IMS terminal during registration, and does not change for the duration of the registration
it sits on the path of all signalling messages, and can inspect every message
it authenticates the user and establishes an IPsec security association with the IMS terminal. This prevents spoofing attacks and replay attacks and protects the privacy of the user. Other nodes trust the P-CSCF, and do not have to authenticate the user again.
it can also compress and decompress SIP messages using SigComp, which reduces the round-trip over slow radio links
it may include a Policy Decision Function (PDF), which authorizes media plane resources e.g. quality of service (QoS) over the media plane. It's used for policy control, bandwidth management, etc. The PDF can also be a separate function.
it also generates charging records
A Serving-CSCF (S-CSCF) is the central node of the signalling plane. It is a SIP server, but performs session control too. It is always located in the home network. It uses Diameter Cx and Dx interfaces to the HSS to download and upload user profiles — it has no local storage of the user. All necessary information is loaded from the HSS.
it handles SIP registrations, which allows it to bind the user location (e.g. the IP address of the terminal) and the SIP address
it sits on the path of all signaling messages, and can inspect every message
it decides to which application server(s) the SIP message will be forwarded, in order to provide their services
it provides routing services, typically using Electronic Numbering (ENUM) lookups
it enforces the policy of the network operator
there can be multiple S-CSCFs in the network for load distribution and high availability reasons. It's the HSS that assigns the S-CSCF to a user, when it's queried by the I-CSCF.
An Interrogating-CSCF (I-CSCF) is another SIP function located at the edge of an administrative domain. Its IP address is published in the Domain Name System (DNS) of the domain (using NAPTR and SRV type of DNS records), so that remote servers can find it, and use it as a forwarding point (e.g. registering) for SIP packets to this domain. The I-CSCF queries the HSS using the Diameter Cx interface to retrieve the user location (Dx interface is used from I-CSCF to SLF to locate the needed HSS only), and then routes the SIP request to its assigned S-CSCF. Up to Release 6 it can also be used to hide the internal network from the outside world (encrypting part of the SIP message), in which case it's called a Topology Hiding Inter-network Gateway (THIG). From Release 7 onwards this "entry point" function is removed from the I-CSCF and is now part of the Interconnection Border Control Function (IBCF). The IBCF is used as gateway to external networks, and provides NAT and Firewall functions (pinholing).
Application servers
Application servers (AS) host and execute services, and interface with the S-CSCF using Session Initiation Protocol (SIP). An example of an application server that is being developed in 3GPP is the Voice call continuity Function (VCC Server). Depending on the actual service, the AS can operate in SIP proxy mode, SIP UA (user agent) mode or SIP B2BUA (back-to-back user agent) mode. An AS can be located in the home network or in an external third-party network. If located in the home network, it can query the HSS with the Diameter Sh interface (for a SIP-AS) or the Mobile Application Part (MAP) interface (for IM-SSF).
The Media Resource Function (MRF) provides media related functions such as media manipulation (e.g. voice stream mixing) and playing of tones and announcements.
Each MRF is further divided into a Media Resource Function Controller (MRFC) and a Media Resource Function Processor (MRFP).
The MRFC is a signalling plane node that acts as a SIP User Agent to the S-CSCF, and which controls the MRFP across an H.248 interface
The MRFP is a media plane node that implements all media-related functions.
Breakout Gateway
A Breakout Gateway Control Function (BGCF) is a SIP server that includes routing functionality based on telephone numbers. It is only used when calling from the IMS to a phone in a circuit switched network, such as the Public Switched Telephone Network (PSTN) or the Public land mobile network (PLMN).
A Media Gateway Controller Function (MGCF) does call control protocol conversion between SIP and ISUP and interfaces with the SGW over SCTP. It also controls the resources in a Media Gateway (MGW) across an H.248 interface.
A Media Gateway (MGW) interfaces with the media plane of the CS network, by converting between RTP and PCM. It can also transcode when the codecs don't match (e.g. IMS might use AMR, PSTN might use G.711).
Media Resources
Media Resources are those components that operate on the media plane and are under the control of IMS Core functions. Specifically, Media Server (MS) and Media gateway (MGW)
Service oriented Interconnection (SoIx): The physical and logical linking of NGN domains that allows carriers and service providers to offer services over NGN (i.e. IMS and PES) platforms with control, signalling (i.e. session based), which provides defined levels of interoperability. For instance, this is the case of "carrier grade" voice end/or multimedia services over IP interconnection. "Defined levels of interoperability" are dependent upon the service or the QoS or the Security, etc.
Connectivity oriented Interconnection (CoIx): The physical and logical linking of carriers and service providers based on simple IP connectivity irrespective of the levels of interoperability. For example, an IP interconnection of this type is not aware of the specific end to end service and, as a consequence, service specific network performance, QoS and security requirements are not necessarily assured. This definition does not exclude that some services may provide a defined level of interoperability. However only SoIx fully satisfies NGN interoperability requirements.
An NGN interconnection mode can be direct or indirect. Direct interconnection refers to the interconnection between two network domains without any intermediate network domain.Indirect interconnection at one layer refers to the interconnection between two network domains with one or more intermediate network domain(s) acting as transit networks. The intermediate network domain(s) provide(s) transit functionality to the two other network domains. Different interconnection modes may be used for carrying service layer signalling and media traffic.
Charging
Offline charging is applied to users who pay for their services periodically (e.g., at the end of the month). Online charging, also known as credit-based charging, is used for prepaid services, or real-time credit control of postpaid services. Both may be applied to the same session.
Offline Charging : All the SIP network entities (P-CSCF, I-CSCF, S-CSCF, BGCF, MRFC, MGCF, AS) involved in the session use the Diameter Rf interface to send accounting information to a Charging Collector Function (CCF) located in the same domain. The CCF will collect all this information, and build a Call Detail Record (CDR), which is sent to the billing system (BS) of the domain.
Each session carries an IMS Charging Identifier (ICID) as a unique identifier. Inter Operator Identifier (IOI) parameters define the originating and terminating networks.
Each domain has its own charging network. Billing systems in different domains will also exchange information, so that roaming charges can be applied.
Online charging : The S-CSCF talks to an Session Charging Function (SCF) which looks like a regular SIP application server. The SCF can signal the S-CSCF to terminate the session when the user runs out of credits during a session. The AS and MRFC use the Diameter Ro interface towards an Event Charging Function (ECF).
When Immediate Event Charging (IEC) is used, a number of credit units is immediately deducted from the user's account by the ECF and the MRFC or AS is then authorized to provide the service. The service is not authorized when not enough credit units are available.
When Event Charging with Unit Reservation (ECUR) is used, the ECF first reserves a number of credit units in the user's account and then authorizes the MRFC or the AS. After the service is over, the number of spent credit units is reported and deducted from the account; the reserved credit units are then cleared.
Interfaces description
Interface Name
IMS entities
Description
Protocol
Cr
MRFC, AS
Used by MRFC to fetch documents (scripts and other resources) from an AS
It is envisaged that security defined in TS 33.203 may not be available for a while especially because of the lack of USIM/ISIM interfaces and prevalence of devices that support IPv4. For this situation, to provide some protection against the most significant threats, 3GPP defines some security mechanisms, which are informally known as "early IMS security", in TR33.978.
"The 3G IP Multimedia Subsystem (IMS): Merging the Internet and the Cellular Worlds" by Gonzalo Camarillo, Miguel-Angel García-Martín (John Wiley & Sons, 2006, ISBN 0-470-01818-6)
"The IMS: IP Multimedia Concepts and Services" by Miikka Poikselka, Aki Niemi, Hisham Khartabil, Georg Mayer (John Wiley & Sons, 2006, ISBN 0-470-01906-9)
"SIP/IMS standard view: SIP IMS Specifications For Dummies" by Solomon Berliner (self published by sipknowledge)