The year 2015 is definitely a year of VoLTE. VoLTE is everywhere and operators are rolling out as crazy. There are plenty of articles describing how the LTE or LTE-A do work. We’ll put the LTE Packet Core part aside and take a look on the IMS related VoLTE architecture and VoLTE flows.
Voice over LTE service specified in GSMA IR.92. If you think it seriously with VoLTE, don’t waste your time on any blog and read the VoLTE Service Description and Implementation Guide. On the other hand real beginners can try our VoLTE Illustrated: Beginners Guide.
The very basic architecture of IMS for VoLTE can look like this:
During the LTE attach procedure VoLTE client receives IP address of P-CSCF.
- P-CSCF (Proxy Call Session Control Function)
- An entry point for IMS signalling. It is directly connected to the VoLTE device (UE) over SIP protocol.
- P-CSCF maintains the security associations between itself and the UE.
The P-CSCF is usually a part of A-SBC.
- A-SBC (Access Session Border Controller)
- Provides connectivity for two or more IP networks, including IPv4 and IPv6 interworking, NAT traversal, etc.
- Implements Security features, e.g. DoS, DDoS attack prevention, Topology Hiding, Encryption, CAC, ..
- Communicates with access network (e.g. LTE) and is responsible for QoS
- Handles Media Services, provides transcoding if needed
For the end-2-end signalling (voice call setup) we use SIP protocol. The multimedia then goes out-of-band using RTP protocol.
The heart of IMS network is IMS Core. It consists of often collocated I/S-CSCF, which cares about authentication, session routing and management.
- I-CSCF (Interrogating Call Session Control Function)
- I-CSCF provides a Location service. That means that for each subscriber (or public service) I-CSCF is able to locate the right S-CSCF.
- I-CSCF also represents IMS network to peers. E.g. for peer networks the I-CSCF is the first point of contact.
- S-CSCF (Serving Call Session Control Function)
- The S-CSCF is responsible for basic IMS services. It is a SIP server providing session set-up, session tear-down, session control and routing functions.
- S-CSCF acts as SIP Registrar – stores the binding between Public User Identity (e.g. sip uri or tel uri) and its actual point of presence (Contact IP address) and maintains user registration status. During VoLTE registration procedure S-CSCF performs user authentication.
- S-CSCF also invokes Application Servers (TAS, IPSMGW) based on rules (IFCs) received from the HSS.
The IMS Core however doesn’t know anything about Voice or SMS service. That is a task for Application servers. The Application Server for voice and video telephony is called TAS – Telephony Application Server or MMTel AS – Multimedia Telephony AS.
- Telephony Application Server (TAS)
- The application server responsible for all the services as address normalization, call diverting, call forwarding, barring, etc.
- In a nutshell TAS is what makes the VoLTE enhancements on top of the pure VoIP.
VoLTE specification also defines SMS interworking. To support SMS over SIP we have a dedicated Application Server called IPSMGW. In more detail it is described in IPSMGW – Transport Level Interworking post.
IMS Core and Application Servers don’t have any persistent storage. All the information about subscribers and their services is stored in HSS (Home Subscriber Server). The communication between HSS and I/S-CSCF or TAS makes use of Diameter protocol.
Other IMS elements are:
- MRF – Media Resource Function
- Can be used as a media mixer or as a media server for playing of tones and announcements.
- MGCF – Media Gateway Control Function
- MGCF is used for the breakout to and from CS network. Usually the MGCF and MGW – Media GW is a part of enhanced MSC.
- BGCF – Breakout Gateway Control Function
- BGCF might be used in case when S-CSCF is not able to find the routing based on ENUM/DNS (e.g. PSTN number). Usually it is a part of IMS Core (along with S-CSCF and I-CSCF).
The IMS definition is very broad and flexible. GSMA VoLTE standard restricts it and defines what services are mandatory and how we should implement them. E.g. it defines how to implement Emergency Services, SRVCC, Roaming, SMS interworking, etc. In our post we will go through the basic LTE to LTE callflow.