IP Multimedia Subsystem 1152833 226021689 2008-07-16T14:01:05Z Beetstra 855858 Reverted edits by [[Special:Contributions/41.232.181.152|41.232.181.152]] ([[User talk:41.232.181.152|talk]]) to last version by Dgtsyb 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<ref>{{cite | author = Technical Specification Group Services and System Aspects | title = IP Multimedia Subsystem (IMS), Stage 2, V5.15.0, TS 23.228 | publisher = 3rd Generation Partnership Project | date = 2006 }}</ref>, 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<ref> {{cite | author = Alexander Harrowell, Staff Writer | title = A Pointless Multimedia Subsystem? | publisher = Mobile Communications International | date = Oct 2006 }}</ref>. 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). ==History== * 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 [[3G]] [[mobile phone]] systems in [[Universal Mobile Telecommunications System|UMTS]] networks. It first appeared in release 5 ([[Evolution to 3G|evolution from 2G to 3G networks]]), when SIP-based multimedia was added. Support for the older [[GSM]] and [[GPRS]] networks was also provided. * [[3rd Generation Partnership Project 2|3GPP2]] (a different organization) based their CDMA2000 Multimedia Domain (MMD) on 3GPP IMS, adding support for [[CDMA2000]]. * 3GPP release 6 added interworking with [[Wireless LAN|WLAN]]. * 3GPP release 7 added support for [[Fixed phone|fixed]] networks, by working together with [[TISPAN]] release R1.1. ==Architecture== [[Image:Ims overview.png|frame|center|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. === Access network === The user can connect to an IMS network in various ways, all of which use the standard [[Internet Protocol]] (IP). Direct IMS terminals (such as [[mobile phone]]s, [[personal digital assistant]]s (PDAs) and computers) can register directly on an IMS network, even when they are [[roaming]] in another network or country (the visited network). The only requirement is that they can use [[IPv6]] (also [[IPv4]] in early IMS) and run [[Session Initiation Protocol]] (SIP) user agents. Fixed access (e.g., [[Digital Subscriber Line]] (DSL), [[cable modem]]s, [[Ethernet]]), mobile access (e.g. [[W-CDMA]], [[CDMA2000]], [[GSM]], [[GPRS]]) and wireless access (e.g. [[WLAN]], [[WiMAX]]) are all supported. Other phone systems like [[plain old telephone service]] (POTS -- the old analogue telephones), [[H.323]] and non IMS-compatible [[VoIP]] systems, are supported through [[gateway (telecommunications)|gateways]]. === Core network === ==== Home subscriber server ==== 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 [[call]]s. It contains the subscription-related information (user [[profile]]s), performs [[authentication]] and [[authorization]] of the user, and can provide information about the user's physical location. It is similar to the GSM [[Network Switching Subsystem#Home Location Register (HLR)|Home Location Register]] (HLR) and [[Network Switching Subsystem#Authentication Centre (AUC)|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)|Diameter]] protocol. ===== User identities ===== Normal 3GPP networks use the following identities: * [[International Mobile Subscriber Identity]] (IMSI) * Temporary Mobile Subscriber Identity ([[TMSI]]) * [[International Mobile Equipment Identity]] (IMEI) * [[Mobile Subscriber ISDN Number]] (MSISDN) 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 [[Dynamic Host Configuration Protocol|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 attack]]s and [[replay attack]]s 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 record|SRV]] type of [[Domain Name System|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 [[Network address translation|NAT]] and [[Firewall (networking)|Firewall]] functions ([[Firewall pinhole|pinholing]]). ====Application servers==== ''[[Application server]]s'' (AS) host and execute [[Service (systems architecture)|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). * SIP AS: native IMS application server * ''IP Multimedia Service Switching Function'' (IM-SSF): an IM-SSF interfaces with [[Customised Applications for Mobile networks Enhanced Logic]] (CAMEL) Application Servers using [[Camel Application Part]] (CAP) ====Media Servers==== 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 [[Gateway Control Protocol|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 switching|circuit switched]] network, such as the [[Public Switched Telephone Network]] (PSTN) or the [[Public land mobile network]] (PLMN). ====PSTN Gateways==== A PSTN/CS gateway interfaces with [[PSTN]] [[Circuit switching|circuit switched]] (CS) networks. For signalling, CS networks use [[ISDN User Part]] (ISUP) (or [[Bearer Independent Call Control|BICC]]) over [[Message Transfer Part]] (MTP), while IMS uses [[Session Initiation Protocol]] (SIP) over IP. For media, CS networks use [[Pulse-code modulation]] (PCM), while IMS uses [[Real-time Transport Protocol]] (RTP). * A Signalling Gateway (SGW) interfaces with the signalling plane of the CS. It transforms lower layer protocols as [[Stream Control Transmission Protocol]] (SCTP, an [[Internet Protocol]] (IP) protocol) into [[Message Transfer Part]] (MTP, an [[Signalling System 7]] (SS7) protocol), to pass [[ISDN User Part]] (ISUP) from the MGCF to the CS network. * 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 [[Gateway Control Protocol|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 [[codec]]s don't match (e.g. IMS might use [[Adaptive Multi-Rate|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) ===NGN Interconnection=== There are two types of [[Next Generation Networking]] Interconnection: * ''[[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 (protocol)|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.<br/>Each session carries an ''IMS Charging Identifier'' (ICID) as a unique identifier. ''Inter Operator Identifier'' (IOI) parameters define the originating and terminating networks.<br/>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 (protocol)|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=== {| class="wikitable" !Interface Name !IMS entities !Description !Protocol |- | Cr | MRFC, AS | Used by MRFC to fetch documents (scripts and other resources) from an AS | [[Hypertext Transfer Protocol|HTTP]] over dedicated [[Transmission Control Protocol|TCP]]/[[Stream Control Transmission Protocol|SCTP]] channels |- | Cx | I-CSCF, S-CSCF, HSS | Used to communicate between I-CSCF/S-CSCF and HSS | [[Diameter (protocol)|Diameter]] |- | Dh | SIP AS, OSA, SCF, IM-SSF, HSS | Used by AS to find a correct HSS in a multi-HSS environment | [[Diameter (protocol)|Diameter]] |- | Dx | I-CSCF, S-CSCF, SLF | Used by I-CSCF/S-CSCF to find a correct HSS in a multi-HSS environment | [[Diameter (protocol)|Diameter]] |- | Gm | UE, P-CSCF | Used to exchange messages between UE and CSCFs | [[Session Initiation Protocol|SIP]] |- | Go | PDF, GGSN | Allows operators to control QoS in a user plane and exchange charging correlation information between IMS and GPRS network | [[Common Open Policy Service|COPS]] (Rel5), [[Diameter (protocol)|Diameter]] (Rel6+) |- | Gq | P-CSCF, PDF | Used to exchange policy decisions-related information between P-CSCF and PDF | [[Diameter (protocol)|Diameter]] |- | ISC | S-CSCF, I-CSCF, AS | Used to exchange messages between CSCF and AS | [[Session Initiation Protocol|SIP]] |- | Ma | I-CSCF -> AS | Used to directly forward SIP requests which are destinated to a Public Service Identity hosted by the AS | [[Session Initiation Protocol|SIP]] |- | Mg | MGCF -> I-CSCF | MGCF converts [[ISDN User Part|ISUP]] signalling to [[Session Initiation Protocol|SIP]] signalling and forwards [[Session Initiation Protocol|SIP]] signalling to I-CSCF | [[Session Initiation Protocol|SIP]] |- | Mi | S-CSCF -> BGCF | Used to exchange messages between S-CSCF and BGCF | [[Session Initiation Protocol|SIP]] |- | Mj | BGCF -> MGCF | Used to exchange messages between BGCF and MGCF in the same IMS network | [[Session Initiation Protocol|SIP]] |- | Mk | BGCF -> BGCF | Used to exchange messages between BGCFs in different IMS networks | [[Session Initiation Protocol|SIP]] |- | Mm | I-CSCF, S-CSCF, external IP network | Used for exchanging messages between IMS and external IP networks | Not specified |- | Mn | MGCF, IM-MGW | Allows control of user-plane resources | [[Megaco|H.248]] |- | Mp | MRFC, MRFP | Used to exchange messages between MRFC and MRFP | [[Megaco|H.248]] |- | Mr | S-CSCF, MRFC | Used to exchange messages between S-CSCF and MRFC | [[Session Initiation Protocol|SIP]] |- | Mw | P-CSCF, I-CSCF, S-CSCF | Used to exchange messages between CSCFs |[[Session Initiation Protocol|SIP]] |- | Rf | P-CSCF, I-CSCF, S-CSCF, BGCF, MRFC, MGCF, AS | Used to exchange offline charging information with CCF | [[Diameter (protocol)|Diameter]] |- | Ro | AS, MRFC | Used to exchange online charging information with ECF | [[Diameter (protocol)|Diameter]] |- | Sh | SIP AS, OSA SCS, HSS | Used to exchange information between SIP AS/OSA SCS and HSS | [[Diameter (protocol)|Diameter]] |- | Si | IM-SSF, HSS | Used to exchange information between IM-SSF and HSS | [[Mobile Application Part|MAP]] |- | Sr | MRFC, AS | Used by MRFC to fetch documents (scripts and other resources) from an AS | [[Hypertext Transfer Protocol|HTTP]] |- | Ut | UE, AS (SIP AS, OSA SCS, IM-SSF) | Enables UE to manage information related to his services | [[Hypertext Transfer Protocol|HTTP]](s) |} ==Security aspects of early IMS systems == 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. ==Specifications== ===3GPP Specs=== They can be downloaded from http://www.3gpp.org/specs/numbering.htm . The list below is a small selection. * [http://www.3gpp.org/ftp/Specs/html-info/21905.htm TR 21.905] Vocabulary for 3GPP Specifications * [http://www.3gpp.org/ftp/Specs/html-info/22066.htm TS 22.066] Support of Mobile Number Portability (MNP); Stage 1 * [http://www.3gpp.org/ftp/Specs/html-info/22101.htm TS 22.101] Service Aspects; Service Principles * [http://www.3gpp.org/ftp/Specs/html-info/22141.htm TS 22.141] Presence Service; Stage 1 * [http://www.3gpp.org/ftp/Specs/html-info/22228.htm TS 22.228] Service requirements for the IP multimedia core network subsystem; Stage 1 * [http://www.3gpp.org/ftp/Specs/html-info/22250.htm TS 22.250] IMS Group Management; Stage 1 * [http://www.3gpp.org/ftp/Specs/html-info/22340.htm TS 22.340] IMS Messaging; Stage 1 * [http://www.3gpp.org/ftp/Specs/html-info/22800.htm TR 22.800] IMS Subscription and access scenarios * [http://www.3gpp.org/ftp/Specs/html-info/23002.htm TS 23.002] Network Architecture * [http://www.3gpp.org/ftp/Specs/html-info/23003.htm TS 23.003] Numbering, Addressing and Identification * [http://www.3gpp.org/ftp/Specs/html-info/23008.htm TS 23.008] Organization of Subscriber Data * [http://www.3gpp.org/ftp/Specs/html-info/23107.htm TS 23.107] Quality of Service (QoS) principles * [http://www.3gpp.org/ftp/Specs/html-info/23125.htm TS 23.125] Overall high level functionality and architecture impacts of flow based charging; Stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23141.htm TS 23.141] Presence Service; Architecture and functional description; Stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23167.htm TS 23.167] IMS emergency sessions * [http://www.3gpp.org/ftp/Specs/html-info/23207.htm TS 23.207] End-to-end QoS concept and architecture * [http://www.3gpp.org/ftp/Specs/html-info/23218.htm TS 23.218] IMS session handling; IM call model; Stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23221.htm TS 23.221] Architectural Requirements * [http://www.3gpp.org/ftp/Specs/html-info/23228.htm TS 23.228] IMS stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23234.htm TS 23.234] WLAN interworking * [http://www.3gpp.org/ftp/Specs/html-info/23271.htm TS 23.271] Location Services (LCS); Functional description; Stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23278.htm TS 23.278] Customized Applications for Mobile network Enhanced Logic (CAMEL) - IMS interworking; Stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23864.htm TR 23.864] Commonality and interoperability between IMS core networks * [http://www.3gpp.org/ftp/Specs/html-info/23867.htm TR 23.867] IMS emergency sessions * [http://www.3gpp.org/ftp/Specs/html-info/23917.htm TR 23.917] Dynamic policy control enhancements for end-to-end QoS, Feasibility study * [http://www.3gpp.org/ftp/Specs/html-info/23979.htm TR 23.979] 3GPP enablers for Push-to-Talk over Cellular (PoC) services; Stage 2 * [http://www.3gpp.org/ftp/Specs/html-info/23981.htm TR 23.981] Interworking aspects and migration scenarios for IPv4-based IMS implementations (early IMS) * [http://www.3gpp.org/ftp/Specs/html-info/24141.htm TS 24.141] Presence Service using the IMS Core Network subsystem; Stage 3 * [http://www.3gpp.org/ftp/Specs/html-info/24147.htm TS 24.147] Conferencing using the IMS Core Network subsystem * [http://www.3gpp.org/ftp/Specs/html-info/24228.htm TS 24.228] Signalling flows for the IMS call control based on SIP and SDP; Stage 3 * [http://www.3gpp.org/ftp/Specs/html-info/24229.htm TS 24.229] IMS call control protocol based on SIP and SDP; Stage 3 * [http://www.3gpp.org/ftp/Specs/html-info/24247.htm TS 24.247] Messaging using the IMS Core Network subsystem; Stage 3 * [http://www.3gpp.org/ftp/Specs/html-info/26235.htm TS 26.235] Packet switched conversational multimedia applications; Default codecs * [http://www.3gpp.org/ftp/Specs/html-info/26236.htm TS 26.236] Packet switched conversational multimedia applications; Transport protocols * [http://www.3gpp.org/ftp/Specs/html-info/29162.htm TS 29.162] Interworking between the IMS and IP networks * [http://www.3gpp.org/ftp/Specs/html-info/29163.htm TS 29.163] Interworking between the IMS and Circuit Switched (CS) networks * [http://www.3gpp.org/ftp/Specs/html-info/29198.htm TS 29.198] Open Service Architecture (OSA) * [http://www.3gpp.org/ftp/Specs/html-info/29207.htm TS 29.207] Policy control over Go interface * [http://www.3gpp.org/ftp/Specs/html-info/29208.htm TS 29.208] End-to-end QoS signalling flows * [http://www.3gpp.org/ftp/Specs/html-info/29209.htm TS 29.209] Policy control over Gq interface * [http://www.3gpp.org/ftp/Specs/html-info/29228.htm TS 29.228] IMS Cx and Dx interfaces : signalling flows and message contents * [http://www.3gpp.org/ftp/Specs/html-info/29229.htm TS 29.229] IMS Cx and Dx interfaces based on the Diameter protocol; Protocol details * [http://www.3gpp.org/ftp/Specs/html-info/29278.htm TS 29.278] CAMEL Application Part (CAP) specification for IMS * [http://www.3gpp.org/ftp/Specs/html-info/29328.htm TS 29.328] IMS Sh interface : signalling flows and message content * [http://www.3gpp.org/ftp/Specs/html-info/29329.htm TS 29.329] IMS Sh interface based on the Diameter protocol; Protocol details * [http://www.3gpp.org/ftp/Specs/html-info/29962.htm TR 29.962] Signalling interworking between the 3GPP SIP profile and non-3GPP SIP usage * [http://www.3gpp.org/ftp/Specs/html-info/31103.htm TS 31.103] Characteristics of the IMS Identity Module (ISIM) application * [http://www.3gpp.org/ftp/Specs/html-info/32240.htm TS 32.240] Telecommunication management; Charging management; Charging architecture and Principles * [http://www.3gpp.org/ftp/Specs/html-info/32260.htm TS 32.260] Telecommunication management; Charging management; IMS charging * [http://www.3gpp.org/ftp/Specs/html-info/32299.htm TS 32.299] Telecommunication management; Charging management; Diameter charging applications * [http://www.3gpp.org/ftp/Specs/html-info/32421.htm TS 32.421] Telecommunication management; Subscriber and equipment trace: Trace concepts and requirements * [http://www.3gpp.org/ftp/Specs/html-info/33102.htm TS 33.102] 3G security; Security architecture * [http://www.3gpp.org/ftp/Specs/html-info/33108.htm TS 33.108] 3G security; Handover interface for Lawful Interception (LI) * [http://www.3gpp.org/ftp/Specs/html-info/33141.htm TS 33.141] Presence service; security * [http://www.3gpp.org/ftp/Specs/html-info/33203.htm TS 33.203] 3G security; Access security for IP-based services * [http://www.3gpp.org/ftp/Specs/html-info/33210.htm TS 33.210] 3G security; Network Domain Security (NDS); IP network layer security * [http://www.3gpp.org/ftp/Specs/html-info/33978.htm TR 33.978] Security aspects of early IP Multimedia Subsystem (IMS) ===IETF Specs=== * RFC 2327 Session Description Protocol ([[Session Description Protocol|SDP]]) * RFC 2748 Common Open Policy Server protocol ([[Common Open Policy Service|COPS]]) * RFC 2782 a DNS RR for specifying the location of services ([[SRV record|SRV]]) * RFC 2806 URLs for telephone calls (TEL) * RFC 2915 the naming authority pointer DNS resource record ([[NAPTR]]) * RFC 2916 [[E.164]] number and DNS * RFC 3087 Control of Service Context using SIP Request-URI * RFC 3261 Session Initiation Protocol ([[Session Initiation Protocol|SIP]]) * RFC 3262 reliability of provisional responses (PRACK) * RFC 3263 locating SIP servers * RFC 3264 an offer/answer model with the Session Description Protocol * RFC 3265 SIP-Specific Event Notification * RFC 3310 HTTP Digest Authentication using Authentication and Key Agreement ([[AKA (security)|AKA]]) * RFC 3311 update method * RFC 3312 integration of resource management and SIP * RFC 3319 DHCPv6 options for SIP servers * RFC 3320 signalling compression ([[SigComp]]) * RFC 3323 a privacy mechanism for SIP * RFC 3324 short term requirements for network asserted identity * RFC 3325 private extensions to SIP for asserted identity within trusted networks * RFC 3326 the reason header field * RFC 3327 extension header field for registering non-adjacent contacts (path header) * RFC 3329 security mechanism agreement * RFC 3420 Internet Media Type message/sipfrag * RFC 3428 SIP Extension for Instant Messaging * RFC 3455 private header extensions to SIP for 3GPP * RFC 3485 SIP and SDP static dictionary for signaling compression * RFC 3515 the SIP REFER method * RFC 3550 Real-time Transport Protocol ([[Real-time Transport Protocol|RTP]]) * RFC 3574 Transition Scenarios for 3GPP Networks * RFC 3588 [[Diameter (protocol)|Diameter]] base protocol * RFC 3589 Diameter command codes for 3GPP release 5 (informational) * RFC 3608 extension header field for service route discovery during registration * RFC 3665 SIP Basic Call Flow Examples * RFC 3680 SIP event package for registrations * RFC 3725 best current practices for Third Party Call Control (3pcc) in SIP * RFC 3824 using E164 numbers with SIP * RFC 3840 indicating user Agent Capabilities in SIP * RFC 3841 caller preferences for SIP * RFC 3842 SIP event package for message waiting indication and summary * RFC 3856 SIP event package for presence * RFC 3857 SIP event template-package for watcher info * RFC 3858 XML based format for watcher information * RFC 3891 the SIP Replaces Header * RFC 3903 SIP Extension for Event State Publication * RFC 3911 the SIP Join Header * RFC 4028 session timers in SIP * RFC 4235 an INVITE-Initiated dialog event package for SIP * RFC 4475 Session Initiation Protocol (SIP) Torture Test Messages * RFC 4740 Diameter Session Initiation Protocol Application === Other Specifications === *[http://jcp.org/en/jsr/detail?id=281 JSR 281: IMS Services API] *[http://www.gsmworld.com/documents/index.shtml IR.65 IMS Roaming & Interworking Guidelines] ==See also== * [[Next Generation Networking|Next Generation Networking (NGN)]], [[4G]] * [[Softswitch]] * [[SIGTRAN]] * [[Triple play (telecommunications)|Triple play]] * [[Voice over IP]] * [[Mobile VoIP]] * [[Session Initiation Protocol|SIP]] * [[Gateway Control Protocol|H.248]] * [[ENUM]] * [[SIMPLE]] * [[ISIM]], [[USIM]] * [[3GPP Long Term Evolution]], [[WiMAX]], [[UMB]] (4G network efforts that will use technologies like IMS) * [[Mobile Broadband]] ==References== <references/> ==External links== * http://www.itu.int/ITU-T/worksem/ngntech/presentations/s1-towle.pdf - IMS in NGN introduction * http://www.openimscore.org/ - Implementation of IMS Call Session Control Functions (CSCFs) and Home Subscriber Server (HSS) * http://hss.googlecode.com - Opensource Home Subscriber Server (HSS) in Erlang * http://sourceforge.net/projects/openblox/ - Open Source IMS Diameter interfaces, Java/C++, Telco Grade * http://www.3gpp.org 3GPP home page * http://www.3gpp.org/specs/numbering.htm 3GPP specifications * http://www.tech-invite.com/ SIP/IMS Technical Portal * http://www.rennes.enst-bretagne.fr/~gbertran/files/IMS_an_overview.pdf - A decent IMS tutorial * http://www.imsforum.org - IMS Forum * http://www.sipknowledge.com/IMS_Specs.htm - The entire list of 3GPP IMS Specs organized by Topic * http://www.eventhelix.com/ims/ - Detailed IP Multimedia Subsystem (IMS) call flow diagrams ==Books== * "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) <!-- Please don't add any advertisement links, or links to marketing whitepapers. This is an encyclopedia ! Only neutral links that add a specific value for the reader belong here. See the talk page for more explanation. Note that I even removed the links to my own company, to make sure this stays a neutral article. --> [[Category:Multimedia]] [[Category:Network architecture]] [[Category:Telephony]] [[Category:VoIP terminology & concepts]] [[Category:Mobile phone standards]] [[Category:Technical terminology|*Technical terminology]] [[Category:Telecommunications infrastructure]] [[cs:IMS]] [[de:IP Multimedia Subsystem]] [[es:Subsistema Multimedia IP]] [[fr:IP Multimedia Subsystem]] [[nl:IP Multimedia Subsystem]] [[pl:IP Multimedia Subsystem]] [[ro:IP Multimedia Subsystem]] [[ru:IMS]] [[zh:IP多媒体子系统]]