Method and system for call checkpointing in an internet protocol multimedia subsystem
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- JIO PLATFORMS LTD
- Filing Date
- 2024-07-10
- Publication Date
- 2026-05-20
AI Technical Summary
Current call checkpointing solutions in 4G/5G networks introduce increased complexity and overhead, leading to resource utilization issues, delays, and degraded user experience due to the need for periodic saving and restoring of call states, which affects real-time communications and resource management.
A method and system for call checkpointing in an internet protocol multimedia subsystem that involves a processing unit receiving a request for a call with checkpoint data, determining the active network units, and upon failure of the primary network unit, reloading the checkpoint data to a secondary network unit to ensure seamless service continuity and resource optimization.
This approach ensures fast data recovery and network resource optimization by handling retransmission and signaling in a controlled manner, improving user experience by efficiently managing call operations such as upgrade, downgrade, hold, resume, and release with minimal downtime.
Smart Images

Figure IN2024051144_16012025_PF_FP_ABST
Abstract
Description
METHOD AND SYSTEM FOR CALL CHECKPOINTING IN AN INTERNETPROTOCOL MULTIMEDIA SUBSYSTEMTECHNICAL FIELD
[0001] Embodiments of the present disclosure generally relate to wireless communication systems. More particularly, embodiments of the present disclosure relate to call checkpointing in an internet protocol multimedia subsystem.BACKGROUND
[0002] The following description of the related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.
[0003] Wireless communication technology has rapidly evolved over the past few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on analogue technology and offered only voice services. However, with the advent of the second-generation (2G) technology, digital communication and data services became possible, and text messaging was introduced. 3G technology marked the introduction of high-speed internet access, mobile video calling, and location-based services. The fourth generation (4G) technology revolutionized wireless communication with faster data speeds, better network coverage, and improved security. Currently, the fifth generation (5G) technology is being deployed, promising even faster data speeds, low latency, and the ability to connect multiple devices simultaneously. With each generation, wireless communication technology has become more advanced, sophisticated, and capable of delivering more services to its users.
[0004] Call checkpointing refers to a periodic trigger to an ongoing call and saving the status of the ongoing call at regular intervals of time. While call checkpointing may provide certain benefits in 4G / 5G networks, it also has some drawbacks that need to be considered. In the current existing solutions, one of the major drawbacks is the increased complexity and overhead it introduces to the network. Call checkpointing involves periodically saving thestate of ongoing calls, which requires additional processing power, memory, and storage resources. This can lead to increased costs and resource utilization, especially in large-scale deployments where numerous calls need to be managed simultaneously. Additionally, the process of checkpointing and restoring call states can introduce delays and impact the realtime nature of voice and video communications, leading to degraded user experience and potential disruptions in time-sensitive applications. Also, there is delay in processing new calls received from UE as process takes time in data reload activity. In existing solutions, creation of checkpointed data usage consumes resources at server.
[0005] Thus, there exists an imperative need in the art to address the major drawbacks in the existing solutions, which the present disclosure aims to address.SUMMARY
[0006] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0007] An aspect of the present disclosure may relate to a method for call checkpointing in an internet protocol multimedia subsystem. The method includes receiving, by a processing unit, a request for a call from a user equipment, the request comprises a set of checkpoint data. The method further encompasses establishing, by the processing unit, the call based on the received request. Furthermore, the method includes determining, by the processing unit, a network unit of an IMS currently active based on the set of checkpoint data, the network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit. The method further includes upon failure of the at least one primary network unit, reloading, by the processing unit, the set of checkpoint data to the at least one secondary network unit.
[0008] In an exemplary aspect of the present disclosure, the at least one primary network unit is configured to operate in an active mode, and the at least one secondary network unit is configured to operate in a standby mode.
[0009] In an exemplary aspect of the present disclosure, the set of checkpoint data comprises details associated with a context and a status of the established call.
[0010] In an exemplary aspect of the present disclosure, the method comprises monitoring, by the processing unit, a traffic status of an active network unit.
[0011] In an exemplary aspect of the present disclosure, the at least one primary network unit corresponds to an active SCSCF-ICSCF BGCF node 01 (SIB01), and the at least one secondary network unit corresponds to a standby SCSCF-ICSCF BGCF node 02 (SIB02).
[0012] In an exemplary aspect of the present disclosure, upon failure of the active SCSCF- ICSCF BGCF node 01 (SIB01), the standby SCSCF-ICSCF BGCF node 02 (SIB02) transitions to active mode, serving new and existing ongoing calls while parallelly reloading the set of checkpoint data.
[0013] In an exemplary aspect of the present disclosure, an SIB refers to Serving Call Session Control Function (SCSCF)- Interrogating Call Session Control Function (ICSCF)- Breakout Gateway Control Function (BGCF) node, wherein the SIB01 is a node for an active SIB and the SIB02 is a node for a standby SIB.
[0014] Another aspect of the present disclosure may relate to a system for call checkpointing in an internet protocol multimedia subsystem. The system comprises a processing unit, configured to receive a request for a call from a user equipment, the request comprises a set of checkpoint data. The processing unit is further configured to establish the call based on the received request. Furthermore, the processing unit is configured to determine a network unit of an IMS currently active based on the set of checkpoint data. The network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit. The processing unit is further configured to upon failure of the at least one primary network unit, reload the set of checkpoint data to the at least one secondary network unit.
[0015] Yet another aspect of the present disclosure may relate to non-transitory computer readable storage medium storing instructions for call checkpointing in an internet protocol multimedia subsystem, the instructions include executable code which, when executed by one or more units of a system, causes: a processing unit of the system to receive a request for a call from a user equipment, the request comprises a set of checkpoint data. The instructions further include executable code, which when executed causes the processing unit of the system to establish the call based on the received request; and determine a network unit of anIMS currently active based on the set of checkpoint data. The network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit. The instructions further include executable code, which when executed by the system further causes the processing unit of the system, upon failure of the at least one primary network unit, to reload the set of checkpoint data to the at least one secondary network unit.OBJECTS OF THE INVENTION
[0016] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0017] It is an object of the present disclosure to provide a system and a method for call checkpointing in IMS.
[0018] It is another object of the present disclosure to provide a solution that ensures network resource optimization as retransmission / signalling are handled in a controlled way.
[0019] It is yet another object of the present disclosure to provide a solution to improve user experience. For example, call upgrade / downgrade / hold / resume / release handled in efficient way with fast data recovery.DESCRIPTION OF THE DRAWINGS
[0020] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Also, the embodiments shown in the figures are not to be construed as limiting the disclosure, but the possible variants of the method and system according to the disclosure are illustrated herein to highlight the advantages of the disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components.
[0021] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture.
[0022] FIG. 2 illustrates an exemplary block diagram of a computing device upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure.
[0023] FIG. 3 illustrates an exemplary block diagram of a system for call checkpointing in an internet protocol multimedia subsystem, in accordance with exemplary implementations of the present disclosure.
[0024] FIG. 4 illustrates a method flow diagram for call checkpointing in an internet protocol multimedia subsystem, in accordance with exemplary implementations of the present disclosure.
[0025] FIG. 5 illustrates an exemplary system architecture for System Information Block (SIB).
[0026] FIG. 6 illustrates an exemplary process flow indicating the process for call checkpointing in an internet protocol multimedia subsystem, in accordance with exemplary implementations of the present disclosure.
[0027] The foregoing shall be more apparent from the following more detailed description of the disclosure.DETAILED DESCRIPTION
[0028] In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter may each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above.
[0029] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0030] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail.
[0031] Also, it is noted that individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure.
[0032] The word “exemplary” and / or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and / or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive — in a manner similar to the term “comprising” as an open transition word — without precluding any additional or other elements.
[0033] As used herein, a “processing unit” or “processor” or “operating processor” includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or moremicroprocessors in association with a (Digital Signal Processing) DSP core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input / output processing, and / or any other functionality that enables the working of the system according to the present disclosure. More specifically, the processor or processing unit is a hardware processor.
[0034] As used herein, “a user equipment”, “a user device”, “a smart-user-device”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless communication device”, “a mobile communication device”, “a communication device” may be any electrical, electronic and / or computing device or equipment, capable of implementing the features of the present disclosure. The user equipment / device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device which is capable of implementing the features of the present disclosure. Also, the user device may contain at least one input means configured to receive an input from at least one of a transceiver unit, a processing unit, a storage unit, a detection unit and any other such unit(s) which are required to implement the features of the present disclosure.
[0035] As used herein, “storage unit” or “memory unit” refers to a machine or computer- readable medium including any mechanism for storing information in a form readable by a computer or similar machine. For example, a computer-readable medium includes read-only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices or other types of machine-accessible storage media. The storage unit stores at least the data that may be required by one or more units of the system to perform their respective functions.
[0036] As used herein “interface” or “user interface refers to a shared boundary across which two or more separate components of a system exchange information or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
[0037] All modules, units, components used herein, unless explicitly excluded herein, may be software modules or hardware processors, the processors being a general-purposeprocessor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.
[0038] As used herein the transceiver unit include at least one receiver and at least one transmitter configured respectively for receiving and transmitting data, signals, information or a combination thereof between units / components within the system and / or connected with the system.
[0039] As discussed in the background section, the current known solutions have several shortcomings. The present disclosure aims to overcome the problems mentioned in the background section and other existing problems in this field of technology by providing method and system of call checkpointing in an internet protocol multimedia subsystem.
[0040] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture, in accordance with exemplary implementation of the present disclosure . As shown in FIG. 1 , the 5GC network architecture
[0100] includes a user equipment (UE)
[0102] , a radio access network (RAN)
[0104] , an access and mobility management function (AMF)
[0106] , a Session Management Function (SMF)
[0108] , a Service Communication Proxy (SCP)
[0110] , an Authentication Server Function (AUSF)
[0112] , a Network Slice Specific Authentication and Authorization Function (NSSAAF)
[0114] , a Network Slice Selection Function (NSSF)
[0116] , aNetwork Exposure Function (NEF)
[0118] , a Network Repository Function (NRF)
[0120] , a Policy Control Function (PCF)
[0122] , a Unified Data Management (UDM)
[0124] , an application function (AF)
[0126] , a User Plane Function (UPF)
[0128] , a data network (DN)
[0130] , wherein all the components are assumed to be connected to each other in a manner as obvious to the person skilled in the art for implementing features of the present disclosure.
[0041] The Radio Access Network (RAN)
[0104] is the part of a mobile telecommunications system that connects user equipment (UE)
[0102] to the core network (CN) and provides access to different types of networks (e.g., 5G network). It consists of radio base stations and the radio access technologies that enable wireless communication.
[0042] The Access and Mobility Management Function (AMF)
[0106] is a 5G core network function responsible for managing access and mobility aspects, such as UE registration, connection, and reachability. It also handles mobility management procedures like handovers and paging.
[0043] The Session Management Function (SMF)
[0108] is a 5G core network function responsible for managing session-related aspects, such as establishing, modifying, and releasing sessions. It coordinates with the User Plane Function (UPF) for data forwarding and handles IP address allocation and QoS enforcement.
[0044] The Service Communication Proxy (SCP)
[0110] is a network function in the 5G core network that facilitates communication between other network functions by providing a secure and efficient messaging service. It acts as a mediator for service-based interfaces.
[0045] The Authentication Server Function (AUSF)
[0112] is a network function in the 5G core responsible for authenticating UEs during registration and providing security services. It generates and verifies authentication vectors and tokens.
[0046] The Network Slice Specific Authentication and Authorization Function (NSSAAF)
[0114] is a network function that provides authentication and authorization services specific to network slices. It ensures that UEs can access only the slices for which they are authorized.
[0047] The Network Slice Selection Function (NSSF)
[0116] is a network function responsible for selecting the appropriate network slice for a UE based on factors such as subscription, requested services, and network policies.
[0048] The Network Exposure Function (NEF)
[0118] is a network function that exposes capabilities and services of the 5G network to external applications, enabling integration with third-party services and applications.
[0049] The Network Repository Function (NRF)
[0120] is a network function that acts as a central repository for information about available network functions and services. It facilitates the discovery and dynamic registration of network functions.
[0050] The Policy Control Function (PCF)
[0122] is a network function responsible for policy control decisions, such as QoS, charging, and access control, based on subscriber information and network policies.
[0051] The Unified Data Management (UDM)
[0124] is a network function that centralizes the management of subscriber data, including authentication, authorization, and subscription information.
[0052] The Application Function (AF)
[0126] is a network function that represents external applications interfacing with the 5G core network to access network capabilities and services.
[0053] The User Plane Function (UPF)
[0128] is a network function responsible for handling user data traffic, including packet routing, forwarding, and QoS enforcement.
[0054] The Data Network (DN)
[0130] refers to a network that provides data services to user equipment (UE) in a telecommunications system. The data services may include but are not limited to Internet services, private data network related services.
[0055] FIG. 2 illustrates an exemplary block diagram of a computing device
[0200] upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. In an implementation, the computing device
[0200] may also implement a method for message routing management. In another implementation, the computing device
[0200] itself implements the method for message routing management using one or more units configured within the computing device
[0200] , wherein said one or more units are capable of implementing the features as disclosed in the present disclosure.
[0056] The computing device
[0200] may include a bus
[0202] or other communication mechanism for communicating information, and a hardware processor
[0204] coupled with bus
[0202] for processing information. The hardware processor
[0204] may be, for example, a general-purpose microprocessor. The computing device
[0200] may also include a main memory
[0206] , such as a random-access memory (RAM), or other dynamic storage device, coupled to the bus
[0202] for storing information and instructions to be executed by the processor
[0204] , The main memory
[0206] also may be used for storing temporary variables or other intermediate information during execution of the instructions to be executed by theprocessor
[0204] , Such instructions, when stored in non-transitory storage media accessible to the processor
[0204] , render the computing device
[0200] into a special -purpose machine that is customized to perform the operations specified in the instructions. The computing device
[0200] further includes a read only memory (ROM)
[0208] or other static storage device coupled to the bus
[0202] for storing static information and instructions for the processor
[0204] .
[0057] A storage device
[0210] , such as a magnetic disk, optical disk, or solid-state drive is provided and coupled to the bus
[0202] for storing information and instructions. The computing device
[0200] may be coupled via the bus
[0202] to a display
[0212] , such as a cathode ray tube (CRT), Liquid crystal Display (LCD), Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for displaying information to a computer user. An input device
[0214] , including alphanumeric and other keys, touch screen input means, etc. may be coupled to the bus
[0202] for communicating information and command selections to the processor
[0204] , Another type of user input device may be a cursor controller
[0216] , such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor
[0204] , and for controlling cursor movement on the display
[0212] , This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.
[0058] The computing device
[0200] may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware and / or program logic which in combination with the computing device
[0200] causes or programs the computing device
[0200] to be a special -purpose machine. According to one implementation, the techniques herein are performed by the computing device
[0200] in response to the processor
[0204] executing one or more sequences of one or more instructions contained in the main memory
[0206] , Such instructions may be read into the main memory
[0206] from another storage medium, such as the storage device
[0210] , Execution of the sequences of instructions contained in the main memory
[0206] causes the processor
[0204] to perform the process steps described herein. In alternative implementations of the present disclosure, hard-wired circuitry may be used in place of or in combination with software instructions.
[0059] The computing device
[0200] also may include a communication interface
[0218] coupled to the bus
[0202] , The communication interface
[0218] provides a two-way data communication coupling to a network link
[0220] that is connected to a local network
[0222] and the local network
[0222] is further connected to the host
[0224] , For example, thecommunication interface
[0218] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, the communication interface
[0218] may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, the communication interface
[0218] sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
[0060] The computing device
[0200] can send messages and receive data, including program code, through the network(s), the network link
[0220] and the communication interface
[0218] , In the Internet example, a server
[0230] might transmit a requested code for an application program through the Internet
[0228] , the ISP
[0226] , the local network
[0222] and the communication interface
[0218] , The received code may be executed by the processor
[0204] as it is received, and / or stored in the storage device
[0210] , or other non-volatile storage for later execution.
[0061] Referring to FIG. 3, an exemplary block diagram of a system
[0300] for call checkpointing in an internet protocol multimedia subsystem, is shown, in accordance with the exemplary implementations of the present disclosure.
[0062] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various the components / units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.
[0063] The system
[0300] comprises at least one processing unit
[0302] and a storage unit
[0304] , Also, all of the components / units of the system
[0300] are assumed to be connected to each other unless otherwise indicated below. As shown in the figures all units shown within the system should also be assumed to be connected to each other. Also, in FIG. 3 only a few units are shown, however, the system
[0300] may comprise multiple such units or the system
[0300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system
[0300] may be present in a user device to implement the features of the present disclosure. The system
[0300] may be a part of the user device / or may be independent of but in communication with the user device (may also referred herein as a UE). In another implementation, the system
[0300] may reside in a server or a network entity. In yet another implementation, the system
[0300] may reside partly in the server / network entity and partly in the user device.
[0064] The system
[0300] is configured for call checkpointing in an internet protocol multimedia subsystem (IMS), with the help of the interconnection between the components / units of the system
[0300] , The IMS refers to a standard in a telecommunication system to control multimedia services like audio, video and texts, through the IMS. In an implementation of the present disclosure the system
[0300] is implemented in the 5thgeneration network. The system
[0300] may further be implemented in 4thgeneration network, and other future generations of the network.
[0065] The system
[0300] includes a processing unit
[0302] , The processing unit
[0302] is configured to receive a request for a call from a user equipment
[0102] . The request comprises a set of checkpoint data. In an implementation of the present disclosure, the set of checkpoint data refers to data saved at a specific interval of time. The set of checkpoint data may be used to resume the request for the call from the specific interval of time, instead of starting from the beginning. The set of checkpoint data includes but may not be limited to information of an ongoing call- a call state, a session parameter, and the like. For instance, the set of checkpoint data includes a call identifier, a calling party identifier, a destination party identifier, a dialog identifier, and the like.
[0066] The processing unit
[0302] is further configured to establish the call based on the received request. In an implementation of the present disclosure, the processing unit
[0302] may verify the identity of the user equipment
[0102] from which the request for the call may be received and locate the destination of the request for the call. The user equipment
[0102] may initiate the call to set up. The processing unit
[0302] may receive the call on signalling protocol. When the destination accepts the request for the call, the call may be established between the user equipment
[0102] and the destination.
[0067] Furthermore, the processing unit
[0302] is configured to determine a network unit of the IMS currently active based on the set of checkpoint data in the request for the call. The network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit. The at least one primary network unit is configured to operate in an active mode, and the at least one secondary network unit is configured to operate in standby mode. The set of checkpoint data comprises details associated with a context and a status of the established call. The at least one primary network unit corresponds to an active SCSCF-ICSCF BGCF node 01 (SIB01)
[0602] , and the at least one secondary network unit corresponds to a standby SCSCF-ICSCF BGCF node 02 (SIB02)
[0604] , An SIB refers to a combination of the Serving Call Session Control Function (SCSCF)- Interrogating Call Session Control Function (ICSCF)- Breakout Gateway Control Function (BGCF) node. The SIB01 is a node for an active SIB and the SIB02 is a node for a standby SIB. In the IMS, the SCSCF node is a central node to control call sessions and communication between a user and different networks . The SCSCF node is responsible for policy enforcement in a call session, making decisions for service instances. The ICSCF node may ensure that the call session is routed to the correct SCSCF node. The BGCF is configured to receive a request from the SCSCF to find a breakout point in the call session in a Public Switched Telephone Network (PSTN). The PSTN refers to a telephonic system for voice-oriented communications. The BGCF may further select a network in which the PTSN may occur. The standby SIB02
[0604] is an alternate system information block which may come into operation (active mode), when the process at the active SIB01
[0602] crashes or fails. The failure may be due to signalling failure, UE
[0102] crash, network crash, or network congestion.
[0068] The processing unit
[0302] is further configured to monitor a traffic status of an active network unit. The processing unit
[0302] may monitor the traffic status through a Key Performance Indicators (KPIs), a Call Detail Record (CDR), and the like. In an implementation of the present disclosure, the processing unit
[0302] may monitor the network traffic at the active SIB01
[0602] at predetermined intervals to identify the crash or failure at the SIB01
[0602] , Upon failure of the active SCSCF-ICSCF BGCF node 01 (SIB01)
[0602] , the standby SCSCF -ICSCF BGCF node 01 (SIB02)
[0604] transitions to active mode, serving new and existing ongoing calls while parallelly reloading the set of checkpoint data. That is to say, the processing unit
[0302] is configured to reload the set of checkpoint data to the at least one secondary network unit, upon failure of the at least one primary network unit. The reloading refers to creation of a backup of the call status data (checkpoint data) at the secondary network unit (SIB02)
[0604] ,
[0069] In an implementation of the present disclosure, the IP Multimedia Subsystem (IMS) network may comprise of several network units. When failure occurs at the SIB01
[0602] , the SIB01
[0602] goes in the standby mode, and the SIB02
[0604] , which was in standby mode, goes in the active mode. Once the SIB02
[0604] is in active mode, the SIB02
[0604] may start serving the existing calls, and additionally may handle the new calls. When the SIB02
[0604] is in the active mode, the set of checkpoint data of established call may be reloaded in the background and the process at the SIB02
[0604] may turn active without waiting for reload activity completion. The reloading of the checkpoint data may ensure fast data recovery and ensure network resource optimization. The set of checkpoint data may be used to resume the request for the call from the specific interval of time, instead of starting from the beginning.
[0070] The storage unit
[0304] of the system
[0300] is configured to store all data, information, signals, etc. as required for the implementation of the present solution.
[0071] The system
[0300] as shown in FIG. 3 will be clear through an implementation of a method flow of the system
[0300] as explained in FIG. 4.
[0072] Referring to FIG. 4, an exemplary method flow diagram
[0400] for call checkpointing in the internet protocol multimedia subsystem, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method
[0400] is performed by the system
[0300] , Also, as shown in FIG. 4, the method
[0400] starts at step
[0402] ,
[0073] At step
[0404] , the method comprises receiving, by a processing unit
[0302] , a request for a call from the user equipment
[0102] , the request comprises a set of checkpoint data. The set of checkpoint data comprises details associated with a context and a status of the established call. In an implementation of the present disclosure, the set of checkpoint data refers to data saved at a specific interval of time. The set of checkpoint data includes but may not be limited to information of an ongoing call- a call state, a session parameter, and the like. For instance, the set of checkpoint data includes a call identifier, a calling party identifier, a destination party identifier, a dialog identifier, and the like.
[0074] Next at step
[0406] , the method comprises establishing, by the processing unit
[0302] , the call based on the received request.
[0075] In an implementation of the present disclosure, the processing unit
[0302] may verify the identity of the user equipment
[0102] from which the request for the call may be received and locate the destination of the request for the call. The user equipment
[0102] may initiate the call to set up. The processing unit
[0302] may receive the call on signalling protocol. When the destination accepts the request for the call, the call may be established between the user equipment
[0102] and the destination.
[0076] Next, at step
[0408] , the method comprises determining, by the processing unit
[0302] , a network unit of the IMS currently active based on the set of checkpoint data in the request for the call. The network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit. The at least one primary network unit is configured to operate in an active mode, and the at least one secondary network unit is configured to operate in a standby mode. The at least one primary network unit corresponds to an active SCSCF-ICSCF BGCF node 01 (SIB01)
[0602] , and the at least one secondary network unit corresponds to a standby SCSCF-ICSCF BGCF node 01 (SIB02)
[0604] , The standby SIB02
[0604] is an alternate which may come into operation (active mode), when the process at the SIB01
[0602] crashes or fails. An SIB refers to a Serving Call Session Control Function (SCSCF)- Interrogating Call Session Control Function (ICSCF)- Breakout Gateway Control Function (BGCF) node. The SIB01 is a node for an active SIB and the SIB02 is a node for a standby SIB. In the IMS, the SCSCF node is a central node to control call sessions and communication between a user and different networks. The SCSCF node is responsible for policy enforcement in a call session, making decisions for service instances. The ICSCF node may ensure that the call session is routed to the correct SCSCF node. The BGCF is configured to receive a request from the SCSCF to find a breakout point in the call session in a Public Switched Telephone Network (PSTN). The PSTN refers to a telephonic system for voice-oriented communications. The BGCF may further select a network in which the PTSN may occur. Upon failure of the active (SIB01)
[0602] , the standby (SIB02)
[0604] transitions to the active mode, serving new and existing ongoing calls while parallelly reloading the set of checkpoint data.
[0077] In an implementation of the present disclosure, the IP Multimedia Subsystem (IMS) network may comprise of several network units. When failure occurs at the SIB01
[0602] , the SIB01
[0602] goes in the standby mode, and the SIB02
[0604] , which was in standby mode,goes in the active mode. Upon turning of the active mode of the SIB02
[0604] , the SIB02
[0604] may start serving the existing calls, and additionally may handle the new calls. The standby SIB02
[0604] is an alternate SCSCF-ICSCF BGCF node which may come into operation (active mode), when the process at the active SIB01
[0602] crashes or fails. The failure may be due to signalling failure, UE
[0102] crash, network crash, or network congestion. The processing unit
[0302] is further configured to monitor a traffic status of an active network unit. The processing unit
[0302] may monitor the traffic status through a Key Performance Indicators (KPIs), a Call Detail Record (CDR), and the like. In an implementation of the present disclosure, the processing unit
[0302] may monitor the network traffic at the active SIB01
[0602] at predetermined intervals to identify the crash or failure at the SIB01
[0602] .
[0078] Next, at step
[0410] , the method comprises upon failure of the at least one primary network unit, reloading, by the processing unit
[0302] , the set of checkpoint data to the at least one secondary network unit.
[0079] In an implementation of the present disclosure, the reloading refers to creation of a backup of the call status data (checkpoint data) at the secondary network unit (SIB02)
[0604] . When the SIB02
[0604] is in the active mode, the set of checkpoint data of established call may be reloaded in the background and the process at the SIB02
[0604] may turn active without waiting for reload activity completion. The reloading of the checkpoint data may ensure fast data recovery and network resource optimization. The set of checkpoint data may be used to resume the request for the call from the specific interval of time, instead of starting from the beginning.
[0080] The method terminates at step
[0412] ,
[0081] Referring to FIG. 5, it illustrates an exemplary system architecture
[0500] for SCSCF-ICSCF BGCF node (SIB) for call checkpointing in the internet protocol multimedia subsystem.
[0082] The SIB (SCSCF ICSCF BGCF node) comprises of a 5-server architecture. The 5 servers of the SIB node are - Server-1
[0502] , Server-2
[0504] , Server-3
[0506] , Server-4
[0508] , and Server-5
[0510] , The server architecture refers to a compact computing module that may utilize several blades to perform the functionalities in the IMS. The number of servers may not be limited to five.
[0083] The SIB node refers to a combination of the Serving Call Session Control Function (SCSCF)- Interrogating Call Session Control Function (ICSCF)- Breakout Gateway Control Function (BGCF) node. The SIB01 is a node for an active SIB and the SIB02 is a node for a standby SIB. In the IMS, the SCSCF node is a central node to control call sessions and communication between a user and different networks. The SCSCF node is responsible for policy enforcement in a call session, making decisions for service instances. The ICSCF node may ensure that the call session is routed to the correct SCSCF node. The BGCF is configured to receive a request from the SCSCF to find a breakout point in the call session in a Public Switched Telephone Network (PSTN). The PSTN refers to a telephonic system for voice- oriented communications. The BGCF may further select a network in which the PTSN may occur.
[0084] The SIB node may perform services logic in the IMS. The service logic includes rules for processing the services in the IMS. The services logic may be performed on five servers and a system management function can be performed on 2 servers. A High Availability (HA) solution protects the system from single node failures which may not be possible in a standalone mode. Automatic Failover and switchover operations are applicable in the HA solution. The HA solution may also have benefit of call continuity for ongoing sessions.
[0085] The SIB node consists of following processes which functions in an orchestrated manner. The functionality of each of these processes is mentioned as follows:• SIB (SIB Manager) is a combination product comprising the functionalities of three IMS core network nodes namely the SCSCF, the ICSCF and the BGCF. The SIB provides Stack-less (SIP) communication among the ICSCF, the SCSCF and the BGCF when these functionalities are served by same instance of SIB and standard SIP based communication in other cases.• LMC (Log Management component) may provide the SIB node for log generation and management. A log is a record of events occurring in the IMS.• A System Management component is a component that also act as a Management Agent (MA) for interacting with a Management System. It manages System Configuration, Fault and Performance modules in the IMS.• Interception Manager (IM) is a component that supports interception for calls, SMS and registrations in the IMS.• LB (Load Balancer)- The LB distributes the load on the SIB among all Security Group's (SG’s) of Cluster by monitoring Heartbeat from all the SIB processes. The LB may also identify a non-Active SG.• DTMC (Diameter Traffic management component)- The DTMC distributes the Diameter Load among all SG's of Cluster by monitoring Heartbeat from all SIB processes. The DIALB may also identify a non-Active SG.• PH (Process Handler): The PH provides process which takes care of diameter peer heartbeat and routing logic for the IMS.
[0086] For instance, in the SIB node, the Server-1
[0502] and the Server-2 (BL-2)
[0504] may be controller / management blades. In the controller / management blades, the HA solution, the system management component, the LMC, the LB, the IM and the DTMC with the PH may initiate the management process automatically. The LB and the management process are running at the Server-1
[0502] and the Server-2
[0504] ,
[0087] The Server-3
[0506] , the Server-4
[0508] , and the Server-5
[0510] are payload blades where the HA solution, the LMC, the SIB node may initiate the core process automatically. The Server-3
[0506] , Server-4
[0508] , and the Server-5
[0510] may run the core process which are running in the active SIB01 and the standby SIB02.
[0088] The server- 1
[0502] further includes a DATABASE
[0512] and server-2
[0504] further includes a DATABASE
[0514] , for storing a data related to the users.
[0089] Referring to FIG. 6, it illustrates an exemplary process flow indicating the process for call checkpointing in an internet protocol multimedia subsystem, in accordance with exemplary implementations of the present disclosure.
[0090] In a normal call processing, the status of SCSCF-ICSCF BGCF node 01 (SIB01)
[0602] may be in active mode and SCSCF-ICSCF BGCF node 02 (SIB02)
[0604] may be at standby mode.
[0091] In the network
[0620] , based on the request for the call, the call may be established
[0606] in the SIB01
[0602] , The SIB01
[0602] may send established call context to SIB02- Standby mode.
[0092] At
[0608] , the SIB02
[0604] may checkpoint the SIB01
[0602] at regular intervals to monitor the network traffic at SIBO 1
[0602] . The set of checkpoint call data may be sent by the SIB01
[0602] which is in active mode to the SIB02
[0604] , which is in standby mode. The set of checkpoint data refers to data saved at a specific interval of time. The set of checkpoint data may be used to resume the request for the call from the specific interval of time, instead of starting from the beginning. The set of checkpoint data includes but may not be limited to information of an ongoing call- the call state, the session parameter, and the like.
[0093] The set of checkpoint data may be stored at a checkpoint data store
[0610] ,
[0094] At
[0607] , when the SIBO 1
[0602] crashes, the SIBO 1
[0607] goes in the standby mode, and the SIB02
[0604] , which was in standby mode, goes in the active mode, based on the checkpoint performed by the SIBO 1
[0602] on the SIB02
[0604] . When the SIB02
[0604] turns into the active mode, the set of checkpoint data of established call
[0606] may be reloaded in the background and the process turning active without waiting for reload activity completion. The set of checkpoint data may be used to resume the request for the call from the specific interval of time, instead of starting from the beginning, decreasing the time taken to resume the checkpoint process and enhancing the user experience.
[0095] As process may turn in the active mode in less time, so the SIB02
[0604] may start serving new and the established call
[0606] in efficient manner.
[0096] The SIB02
[0604] may start continuing and serving the existing calls
[0614] , The SIB02
[0604] may start handling new calls in the network
[0620] . The SIB02
[0604] may start reloading the set of checkpoint data
[0618] and store the set of the checkpoint data in the checkpoint data store
[0610] ,
[0097] The present disclosure further discloses a non-transitory computer readable storage medium storing instructions for call checkpointing in an internet protocol multimedia subsystem, the instructions include executable code which, when executed by one or more units of a system
[0300] , causes: a processing unit
[0302] of the system
[0300] to receive a request for a call from a user equipment
[0102] , the request comprises a set of checkpoint data; the processing unit
[0302] of the system
[0300] to establish the call based on the received request; the processing unit
[0302] of the system
[0300] to determine a network unit of an IMS currentlyactive based on the set of checkpoint data, wherein the network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit; and the processing unit
[0302] of the system to, upon failure of the at least one primary network unit, reload the set of checkpoint data to the at least one secondary network unit.
[0098] The present disclosure solves the technical problem in the existing solutions and provides a technically advanced solution by ensuring fast data recovery and, network resource optimization as retransmission / signalling is handled in a controlled way. Further, with the implementation of the present solution, any new call may be handled with minimal process up time. Also, user experience may be improved e.g. call upgrade / downgrade / hold / resume / release is handled in a more efficient way.
[0099] While considerable emphasis has been placed herein on the disclosed implementations, it will be appreciated that many implementations can be made and that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
Claims
We Claim:
1. A method for call checkpointing in an internet protocol multimedia subsystem (IMS), the method comprising: receiving, by a processing unit [302], a request for a call from a user equipment [102], the request comprises a set of checkpoint data; establishing, by the processing unit [302], the call based on the received request; determining, by the processing unit [302], a network unit of the IMS currently active based on the set of checkpoint data, the network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit; and upon failure of the at least one primary network unit, reloading, by the processing unit [302], the set of checkpoint data to the at least one secondary network unit.
2. The method as claimed in claim 1, wherein the at least one primary network unit is configured to operate in an active mode, and the at least one secondary network unit is configured to operate in a standby mode.
3. The method as claimed in claim 1, wherein the set of checkpoint data comprises details associated with a context and a status of the established call.
4. The method as claimed in claim 1, wherein the method comprises monitoring, by the processing unit [302], a traffic status of an active network unit.
5. The method as claimed in claim 1 , wherein the at least one primary network unit corresponds to an active SCSCF-ICSCF BGCF node 01 (SIB01) [602], and the at least one secondary network unit correspond to a standby SCSCF-ICSCF BGCF node 02 (SIB02) [604],6. The method as claimed in claim 5, wherein upon failure of the active SCSCF-ICSCF BGCF node 01 (SIB01) [602], the standby SCSCF-ICSCF BGCF node 02 (SIB02) [604] transitions to active mode, serving new and existing ongoing calls while parallelly reloading the set of checkpoint data.
7. The method as claimed in claim 5, wherein an SIB refers to a Serving Call Session Control Function (SCSCF)- Interrogating Call Session Control Function (ICSCF)- Breakout Gateway Control Function (BGCF) node, wherein the SIB0 l is a node for an active SIB and the SIB02 is a node for a standby SIB.
8. A system [300] for call checkpointing in an internet protocol multimedia subsystem (IMS) network, the system [300] comprises: a processing unit [302], configured to:receive a request for a call from a user equipment [102], the request comprises a set of checkpoint data; establish the call based on the received request; determine a network unit of the IMS currently active based on the set of checkpoint data, the network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit; and upon failure of the at least one primary network unit, reload the set of checkpoint data to the at least one secondary network unit.
9. The system [300] as claimed in claim 7, wherein the at least one primary network unit is configured to operate in an active mode, and the at least one secondary network unit is configured to operate in standby mode.
10. The system [300] as claimed in claim 7, wherein the set of checkpoint data comprises details associated with a context and a status of the established call.
11. The system [300] as claimed in claim 7, wherein the processing unit [302] is configured to monitor a traffic status of an active network unit.
12. The system [300] as claimed in claim 7, wherein the at least one primary network unit corresponds to an active SCSCF-ICSCF BGCF node 01 (SIB01) [602], and the at least one secondary network unit correspond to a standby SCSCF-ICSCF BGCF node 02 (SIB02) [604],13. The system [300] as claimed in claim 12, wherein upon failure of the active SCSCF- ICSCF BGCF node 01 (SIB01) [602], the standby SCSCF-ICSCF BGCF node 02 (SIB02) [604] transitions to active mode, serving new and existing ongoing calls while parallelly reloading the set of checkpoint data.
14. The system [300] as claimed in claim 12, wherein an SIB refers to Serving Call Session Control Function (SCSCF)- Interrogating Call Session Control Function (ICSCF)- Breakout Gateway Control Function (BGCF) node, wherein the SIB0 l is a node for an active SIB and the SIB02 is a node for a standby SIB.
15. A user equipment (UE) comprising:- a processor [204] configured to call checkpointing in an internet protocol multimedia subsystem (IMS) network bysending a request for a call to the system [300], the request comprises a set of checkpoint data; establishing the call based on the received request by the system [300];determining a network unit of the IMS currently active based on the set of checkpoint data by the system [300], the network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit; and upon failure of the at least one primary network unit, reloading the set of checkpoint data to the at least one secondary network unit by the system [300],16. A non-transitory computer-readable storage medium storing instructions for call checkpointing in an internet protocol multimedia subsystem (IMS) network, the storage medium comprising executable code which, when executed by one or more units of a system, causes: a processing unit [302], configured to:- receive a request for a call from a user equipment [102], the request comprises a set of checkpoint data;- establish the call based on the received request;- determine a network unit of the IMS currently active based on the set of checkpoint data, the network unit comprises at least one primary network unit and at least one secondary network unit associated with the at least one primary network unit; and- upon failure of the at least one primary network unit, reload the set of checkpoint data to the at least one secondary network unit.