From 866e99d97291d6864f50c0ae120541aeb470ed68 Mon Sep 17 00:00:00 2001 From: "tzuchieh.cs11@nycu.edu.tw" Date: Fri, 22 Mar 2024 08:27:32 +0000 Subject: [PATCH 1/2] Blog 20240327 IMS Call Procedure --- docs/blog/20240327/20240327.md | 137 ++++++++++++++++++++++++++ docs/blog/20240327/call_procedure.jpg | Bin 0 -> 112126 bytes docs/blog/index.md | 1 + 3 files changed, 138 insertions(+) create mode 100644 docs/blog/20240327/20240327.md create mode 100644 docs/blog/20240327/call_procedure.jpg diff --git a/docs/blog/20240327/20240327.md b/docs/blog/20240327/20240327.md new file mode 100644 index 00000000..36fa1466 --- /dev/null +++ b/docs/blog/20240327/20240327.md @@ -0,0 +1,137 @@ +# Introduction of IP Multimedia Subsystem Part 3 + +>[!NOTE] +> Author: TzuChieh Huang +> Date: 2024/03/27 +--- + +Continuing our exploration of the IP Multimedia Subsystem (IMS), Part 1 and Part 2 have provided a comprehensive understanding of the architecture, key components, and registration processes within the IMS framework. In Part 3, we delve into the intricate procedures of IMS call handling and look toward the future developments and innovations expected within this dynamic telecommunications landscape. + +## Media Flow / Call Procedure +After successful registration, the following steps will be processed when a user initiates a communication session (e.g., make a call). + +![](./call_procedure.jpg) + +### SIP INVITE and 100 Trying +A SIP INVITE message aims to initiate a session between two endpoints. When a user wants to make a call, their SIP client sends an INVITE request to the SIP server, specifying the desired recipient and various parameters such as the media types (audio, video, etc.) and codecs for encoding the media. + +The 100 Trying response in the context of the SIP is an informational response indicating that the request has been received and the server is working on a response. It serves as an interim response while the server processes the INVITE request or performs other tasks related to call setup. + + +- **Caller to Orig P-CSCF** + - The caller sends the SIP INVITE request, including an initial SDP, to the P-CSCF, which is determined via the CSCF discovery mechanism. + - The initial SDP may encompass one or more media streams for a multi-media session. + +- **Orig P-CSCF to Orig S-CSCF** + - The originating P-CSCF knows the next hop CSCF since the UE has been registered. + - The originating P-CSCF determines whether the INVITE message needs priority treatment based on the user profile saved during registration, the priority specified by the user, and/or the MPS code/identifier contained in the INVITE message. + - If the session needs priority handling, the originating P-CSCF inserts or replaces the priority indication and forwards the INVITE to the originating S-CSCF. + +- **Orig S-CSCF to Term I-CSCF** + - The originating S-CSCF validates the service profile and, if a Globally Routable User Agent URI (GRUU) is received as the contact, ensures that the Public User Identity associated with the served user in the request matches the Public User Identity linked to the GRUU, both belonging to the same service profile. + - Then the originating S-CSCF triggers any origination service logic necessary for this user + - e.g., Authorization of the requested SDP based on the user's subscription for multi-media services. + + - The originating S-CSCF analyzes the destination address, identifies the network operator the subscriber is affiliated with and forwards the SIP INVITE request. + - When the INVITE message contains a priority indication, the originating S-CSCF forwards the INVITE along with the Service User's priority level if available. + - If the destination is local, the request is directed to a local I-CSCF for further processing. + +- **Term I-CSCF to Term S-CSCF** + - The terminated I-CSCF forwards the INVITE request to the terminated S-CSCF. + - The S-CSCF validates the service profile and triggers any termination service logic required for this user. + - e.g., Authorization of the requested SDP based on the user's subscription for multi-media services. + +- **Term S-CSCF to Term P-CSCF** + - The terminated S-CSCF knows the next hop CSCF for this UE and forwards the INVITE to the terminated P-CSCF in the visited network. + +- **Term P-CSCF to Callee** + - If the terminated P-CSCF identifies that the termination is for a Multimedia Priority Service (MPS) session, it extracts the session information. It initiates dynamic policy enforcement by transmitting the derived session details to the Policy and Charging Rules Function (PCRF) or Policy Control Function (PCF). + - The terminated P-CSCF recalls (from the registration procedure) the UE address and forwards the INVITE to the UE. + +### 180 ringing +- If the UE needs user input before finalizing the session setup, it may alert the user and await their response. In such cases, it notifies the originating party with a provisional response, specifically indicating "Ringing." +- This message is transmitted to the P-CSCF and forwarded along the signaling path to the originating endpoint. + +### 200 OK +- The 200 OK response indicates that the callee has accepted the call invitation and has successfully established the session. It contains essential information such as session parameters, codecs, and media descriptions for both parties to begin communication. +- This message is transmitted to the P-CSCF and forwarded along the signaling path to the originating endpoint. + +### ACK +- After receiving the 200 OK response from the callee, the caller sends an ACK message to confirm the successful reception of the acceptance. The ACK message acknowledges the receipt of the 200 OK response and finalizes the call setup process. +- It ensures that both ends of the call are synchronized and ready to proceed with the communication session. +- This message is transmitted to the P-CSCF and forwarded along the signaling path to the terminated endpoint. + +### RTP Streams +- RTP streams are designed to deliver media in real-time with minimal delay, which is essential for IMS voice and video communication. They use UDP to transport media data, providing a continuous stream of packets representing the media content. The RTP protocol also supports mechanisms for synchronizing audio and video streams, handling packet loss, and ensuring media quality during the call. +- Once the SIP handshake is complete, RTP streams are established between the caller and the callee. +- These streams carry the actual media (voice, video, etc.) over the network. + +## IMS in Convergence and Next-Generation Networks + +### Integration with 4G/5G Networks + +#### 1. Role of IMS in LTE and 5G Architectures + +In LTE and 5G networks, IMS is pivotal in enabling multimedia services over IP networks. It serves as the framework for delivering services like voice and video calls, multimedia messaging, and other IP-based communication services. + +In both LTE and 5G architectures, IMS is responsible for: + +- **Session Control**: IMS handles the setup, modification, and termination of multimedia sessions, ensuring seamless communication. + +- **Service Functionality**: It hosts Application Servers (AS) that provide various services like Voice over LTE (VoLTE), Video over LTE (ViLTE), Video over New Radio (VoNR), instant messaging, presence, and more. + +- **Interoperability**: IMS ensures that different types of devices (smartphones, tablets, IoT devices, etc.) can communicate effectively, regardless of the access network (Wi-Fi, cellular, etc.). + +#### 2. Enhancements for Low Latency and High Throughput + +In the context of 5G integration, IMS undergoes several enhancements to leverage the capabilities of the new network: + +- **Low Latency**: IMS is optimized to work with the ultra-low latency capabilities of 5G networks. This is particularly crucial for applications like real-time gaming, augmented reality (AR), virtual reality (VR), and other time-sensitive services. + +- **High Throughput**: 5G networks provide significantly higher data rates than previous generations. IMS is enhanced to maximize this increased throughput, ensuring high-quality multimedia experiences. + +### Cross-device and Cross-Network Communication + +#### 1. Enabling Seamless Communication Across Various Devices and Networks + +IMS enables users to communicate seamlessly across various devices, regardless of their form factor or operating system. This includes smartphones, tablets, laptops, IoT devices, and more. The key components facilitating this include: + +- **P-CSCF and S-CSCF**: These elements ensure that SIP-based signaling messages can be appropriately routed to and from different devices. + +- **Application Servers (AS)**: AS plays a critical role in providing services that can adapt to various device capabilities, ensuring a consistent user experience. + +- **IMS Profile Management**: +IMS profiles associated with a user are stored in the HSS and can be retrieved dynamically, allowing services to adapt to the device's capabilities. + +#### 2. Support for VoLTE, ViLTE, VoNR, and Other Multimedia Services + +IMS is instrumental in delivering various multimedia services over LTE and 5G networks: + +- **VoLTE (Voice over LTE)**: +IMS enables high-quality voice calls over LTE networks. It ensures that voice calls are treated as data sessions, allowing simultaneous voice and data usage. + +- **ViLTE (Video over LTE)**: +This service extends VoLTE's capabilities to include high-definition video calling. + +- **VoNR (Voice over New Radio)**: +With the introduction of 5G, IMS facilitates voice calls over the new radio interface, taking advantage of 5G's enhanced capabilities. + +- **Multimedia Messaging**: +IMS supports multimedia messaging services, allowing users to exchange images, videos, and other media in real time. + +These services are made possible by interacting with various IMS components, including P-CSCF, I-CSCF, S-CSCF, and Application Servers, working together to establish and manage multimedia sessions. + +## Conclusion +The IMS call flow is a sophisticated signaling and media transfer orchestration that enables seamless multimedia communication across various devices and networks. The entire process involves several network components, including P-CSCF, S-CSCF, and I-CSCF, which collaborate to support quality of service, security, and reliability. Meanwhile, the convergence of IMS with Next-Generation Networks marks a significant evolution in telecommunications, allowing for the integration of traditional telephony with modern IP-based services. This convergence promises enhanced efficiency, more decadent service offerings, and a robust platform for innovation, paving the way for a future where communication is more versatile, integrated, and ubiquitous. Together, they represent the ongoing commitment to advancing connectivity and creating a more cohesive and flexible communication ecosystem for users worldwide. + +## Reference +3GPP TS 22.228: "Service requirements for the Internet Protocol (IP) multimedia core network subsystem (IMS) - Stage 1" + +3GPP TS 23.218: "IP Multimedia (IM) session handling; IM call model; Stage 2" + +3GPP TS 23.228: "IP Multimedia Subsystem (IMS) - Stage 2" + +3GPP TS 29.228: "IP Multimedia (IM) Subsystem Cx and Dx Interfaces; Signalling flows and message contents" + +## About +Hello, I am TzuChieh Huang. My ongoing research focuses on VoNR (Voice over New Radio). Feel free to reach out and share any inquiries or point out errors in the article. I welcome corrections and value your feedback. Please do not hesitate to contact me via email to contribute your insights. \ No newline at end of file diff --git a/docs/blog/20240327/call_procedure.jpg b/docs/blog/20240327/call_procedure.jpg new file mode 100644 index 0000000000000000000000000000000000000000..473d6830724694ac238094b8741be1de08e821ee GIT binary patch literal 112126 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

Ioorms$fZV^sMVJd4nY^8#p|0N~B1Kk>Ch)~s(w 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 Date: Sun, 24 Mar 2024 10:07:21 +0000 Subject: [PATCH 2/2] Add link to part 1 & part 2 and use italics to include the spec number --- docs/blog/20240327/20240327.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/blog/20240327/20240327.md b/docs/blog/20240327/20240327.md index 36fa1466..bc61534e 100644 --- a/docs/blog/20240327/20240327.md +++ b/docs/blog/20240327/20240327.md @@ -5,7 +5,7 @@ > Date: 2024/03/27 --- -Continuing our exploration of the IP Multimedia Subsystem (IMS), Part 1 and Part 2 have provided a comprehensive understanding of the architecture, key components, and registration processes within the IMS framework. In Part 3, we delve into the intricate procedures of IMS call handling and look toward the future developments and innovations expected within this dynamic telecommunications landscape. +Continuing our exploration of the IP Multimedia Subsystem (IMS), [Part 1](../20231108/20231108.md) and [Part 2](../20231206/20231206.md) have provided a comprehensive understanding of the architecture, key components, and registration processes within the IMS framework. In Part 3, we delve into the intricate procedures of IMS call handling and look toward the future developments and innovations expected within this dynamic telecommunications landscape. ## Media Flow / Call Procedure After successful registration, the following steps will be processed when a user initiates a communication session (e.g., make a call). @@ -125,13 +125,13 @@ These services are made possible by interacting with various IMS components, inc The IMS call flow is a sophisticated signaling and media transfer orchestration that enables seamless multimedia communication across various devices and networks. The entire process involves several network components, including P-CSCF, S-CSCF, and I-CSCF, which collaborate to support quality of service, security, and reliability. Meanwhile, the convergence of IMS with Next-Generation Networks marks a significant evolution in telecommunications, allowing for the integration of traditional telephony with modern IP-based services. This convergence promises enhanced efficiency, more decadent service offerings, and a robust platform for innovation, paving the way for a future where communication is more versatile, integrated, and ubiquitous. Together, they represent the ongoing commitment to advancing connectivity and creating a more cohesive and flexible communication ecosystem for users worldwide. ## Reference -3GPP TS 22.228: "Service requirements for the Internet Protocol (IP) multimedia core network subsystem (IMS) - Stage 1" +*3GPP TS 22.228*: "Service requirements for the Internet Protocol (IP) multimedia core network subsystem (IMS) - Stage 1" -3GPP TS 23.218: "IP Multimedia (IM) session handling; IM call model; Stage 2" +*3GPP TS 23.218*: "IP Multimedia (IM) session handling; IM call model; Stage 2" -3GPP TS 23.228: "IP Multimedia Subsystem (IMS) - Stage 2" +*3GPP TS 23.228*: "IP Multimedia Subsystem (IMS) - Stage 2" -3GPP TS 29.228: "IP Multimedia (IM) Subsystem Cx and Dx Interfaces; Signalling flows and message contents" +*3GPP TS 29.228*: "IP Multimedia (IM) Subsystem Cx and Dx Interfaces; Signalling flows and message contents" ## About Hello, I am TzuChieh Huang. My ongoing research focuses on VoNR (Voice over New Radio). Feel free to reach out and share any inquiries or point out errors in the article. I welcome corrections and value your feedback. Please do not hesitate to contact me via email to contribute your insights. \ No newline at end of file