System and method for data replication of delta sessions between network nodes
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- JIO PLATFORMS LTD
- Filing Date
- 2024-06-25
- Publication Date
- 2026-05-27
Smart Images

Figure IN2024050909_23012025_PF_FP_ABST
Abstract
Description
SYSTEM AND METHOD FOR DATA REPLICATION OF DELTA SESSIONS BETWEEN NETWORK NODESRESERVATION OF RIGHTS
[0001] A portion of the disclosure of this patent document contains material, which is subject to intellectual property rights such as, but are not limited to, copyright, design, trademark, Integrated Circuit (IC) layout design, and / or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (herein after referred as owner). The owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.TECHNICAL FIELD
[0002] The present disclosure relates to wireless cellular communications, and specifically to a system and a method for data replication of delta sessions between network nodes.DEFINITION
[0003] As used in the present disclosure, the following terms are generally intended to have the meaning as set forth below, except to the extent that the context in which they are used to indicate otherwise.
[0004] The term ‘delta session’ as used herein, refers to data changes or updates that occur in a session between nodes while a connection is down. These changes are tracked and stored separately to facilitate efficient replication once the network connection is restored.
[0005] The term ‘active node’ as used herein, refers to a primary network function node that actively handles and processes incoming requests and sessions in a communication network.
[0006] The term ‘spare node’ as used herein, refers to a secondary network function node that remains in standby mode to take over responsibilities of theactive node in case of failure or disconnection, ensuring high availability and fault tolerance.
[0007] The term ‘split-brain’ as used herein, refer to a scenario in which the connection between the active node and the spare node is disrupted, causing both nodes to operate independently and potentially leading to inconsistencies in session data.BACKGROUND
[0008] The following description of 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 be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
[0009] Typically, network functions in a Fifth Generation (5G) network are deployed in a high-availability architecture to avoid a single point of failure. To achieve this, active nodes and spare nodes are deployed at geographically different locations. These nodes are connected to each other with a replication channel for replication of real-time sessions so that whenever one of the active nodes becomes unreachable after creating a certain session, a spare node handles subsequent updates and terminates requests for that duration.
[0010] But when the connection between the active node and the spare node breaks, both the active node and the spare node start acting as the active node in the network and initiate serving network requests. This condition is referred to as a split-brain scenario and leads to occurrence of inconsistency in session data between the active node and the spare node, leading to failure of request when the spare node becomes the active node.
[0011] There is therefore a need in the art to provide an improvedmechanism to resolve the occurrence of inconsistency in the session data between the active node and the spare node.OBJECTS OF THE PRESENT DISCLOSURE
[0012] It is an object of the present disclosure to provide a system and a method for advanced data replication of specific delta sessions between an active node and a spare node created during a split-brain scenario.
[0013] It is an object of the present disclosure to enable the spare node to replicate all of its delta session towards the active node when a network connection is restored and to send a replication completion message to the active node.
[0014] It is an object of the present disclosure to allow the active node to replicate a delta session from its end after receiving the replication completion message from the spare node.
[0015] It is an object of the present disclosure to enable the active node and the spare node to clear their delta maps once the replication of the delta session is completed.
[0016] It is an object of the present disclosure to ensure data consistency and integrity between the active and spare nodes during and after the split-brain scenario.
[0017] It is an object of the present disclosure to minimize downtime and prevent service disruption by enabling seamless data synchronization between the active node and the spare node.SUMMARY OF THE PRESENT DISCLOSURE
[0018] The present disclosure relates to a method for replicating data between an active node and a spare node in a communication network. The method includes monitoring, by a processing unit, a connection established between the active node and the spare node. Further, upon detecting a disconnection in themonitored connection, the method includes setting, by the processing unit, a flag and initializing a delta session at each of the active node and the spare node corresponding to each incoming request. Further, the method includes storing, by the processing unit, incoming data corresponding to the initialized delta session. Further, the method includes detecting, by the processing unit, a re-establishment of the connection between the active node and the spare node. Further, the method includes replicating, by a replication module associated with the processing unit, the stored incoming data corresponding to the initialized delta session from the spare node to the active node, upon detection of the re-establishment of the connection.
[0019] In an embodiment, the active node and the spare node is connected to each other via a replication channel.
[0020] In an embodiment, the delta session is initialized to track one or more changes and updates to the data occurring at the spare node during the disconnection in the monitored connection.
[0021] In an embodiment, the one or more changes and updates are replicated from the spare node to the active node once the connection is reestablished.
[0022] In an embodiment, the method includes a step of sending a completion message from the spare node to the active node upon completion of the data replication.
[0023] In an embodiment, the method includes the step of storing a time stamp at each of the active node and the spare node, the stored time stamp indicates a time of initialization of the delta session.
[0024] In an embodiment, the method includes the step of resetting the flag upon detecting the re-establishment of the connection.
[0025] In an embodiment, the method includes the step of deleting thestored data from the spare node upon completion of the data replication.
[0026] The present disclosure relates to a system for replicating data between an active node and a spare node in a communication network. The system includes a receiving module configured to receive a plurality of information from one or more data sources. The system further includes a memory configured to store the plurality of received information. The system further includes a processing unit configured to monitor a connection established between the active node and the spare node based on processing the plurality of received information, wherein the processing unit is further configured to set a flag and initialize a delta session at each of the active node and the spare node corresponding to each incoming request, upon detecting a disconnection in the monitored connection, store incoming data corresponding to the initialized delta session, and detect a re-establishment of the connection between the active node and the spare node. The system further includes a replication module configured to replicate the stored data corresponding to the initialized delta session from the spare node to the active node upon detection of the re-establishment of the connection.
[0027] In an embodiment, the plurality of information comprises a network traffic information, a packet loss information, a latency information, and a throughput information.
[0028] In an embodiment, the one or more data sources comprises a network management system (NMS), an operations support system (OSS), and a performance management system (PMS).
[0029] In an embodiment, the delta session is initialized to track one or more changes and updates to the data occurring at the spare node during the disconnection in the monitored connection.
[0030] In an embodiment, the one or more changes and updates are replicated from the spare node to the active node once the connection is reestablished.
[0031] In an embodiment, the spare node is configured to send a completion message to the active node upon completion of the data replication.
[0032] In an embodiment, the memory is configured to store a time stamp at each of the active node and the spare node, indicating a time of initialization of the delta session.
[0033] In an embodiment, the processing unit is configured to reset the flag upon detecting the re-establishment of the connection.
[0034] In an embodiment, the processing unit is configured to delete the stored incoming data from the spare node upon completion of the data replication.
[0035] In an embodiment, the processing unit is configured to update the memory of the active node after receiving the completion message from the spare node.
[0036] The present disclosure relates to a network function for replicating data between an active node and a spare node in a communication network. The network function includes a receiving module configured to receive a plurality of information from one or more data sources. The network function further includes a memory configured to store the plurality of received information. The network function further includes a processing unit configured to monitor a connection established between the active node and the spare node based on processing the plurality of received information, the processing unit is further configured to set a flag and initialize a delta session at each of the active node and the spare node corresponding to each incoming request, upon detecting a disconnection in the monitored connection, store incoming data corresponding to the initialized delta session, and detect a re-establishment of the connection between the active node and the spare node. The network function further includes a replication module configured to replicate the stored data corresponding to the initialized delta session from the spare node to the active node upon detection of the re-establishment of the connection.
[0037] In an embodiment, the disclosure discloses a user equipment (UE) communicatively coupled with a network, the coupling comprises steps of receiving, by the network, a connection request from the UE, sending, by the network, an acknowledgment of the connection request to the UE and transmitting a plurality of signals in response to the connection request, the network is configured for performing a method for replicating data between an active node and a spare node.
[0038] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.BRIEF DESCRIPTION OF THE DRAWINGS
[0039] In the figures, similar components and / or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label with a second label that distinguishes among the similar components. If only the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label.
[0040] The diagrams are for illustration only, which thus is not a limitation of the present disclosure, and wherein:
[0041] FIG. 1 illustrates an exemplary network architecture in which or with which embodiments of the present disclosure may be implemented.
[0042] FIG. 2 illustrates an exemplary block diagram of a system for replicating data of the delta sessions between the active node and the spare node, in accordance with an embodiment of the disclosure.
[0043] FIG. 3 illustrates an exemplary block diagram representing functioning of a replication module for data replication between the active node andthe spare node, in accordance with an embodiment of the disclosure.
[0044] FIG. 4 illustrates an exemplary process flow for replicating data of the delta sessions between the active node and the spare node, in accordance with an embodiment of the disclosure.
[0045] FIG. 5 illustrates a flow diagram of a method for replicating data of the delta sessions between the active node and the spare node, in accordance with an embodiment of the disclosure.
[0046] FIG. 6 illustrates an exemplary block diagram of a computer system in which or with which embodiments of the present disclosure may be implemented.LIST OF REFERENCE NUMERALS100 - Network architecture102-1, 102-2... 102-N - Users104-1, 104-2. . . 104-N - User Equipment106 - Network108- System200 - Block diagram202 - One or more processor(s)204 - Memory206 - Interface(s)208 - Receiving unit210 - Processing unit212 - Replication module214 - Database216, 302, 306, 310 - Active node218, 304, 308, 312 - Spare node300 - Exemplary block diagram400 - Exemplary process flow500 - Flow chart600 - Computer system610 - External Storage Device620 - Bus630 - Main Memory640 - Read Only Memory650 - Mass Storage Device660 - Communication Port670 - ProcessorDETAILED DESCRIPTION
[0047] 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 can each be used independently of one another or with any combination of other features. An individual feature may not address all of the problems discussed above or might address only some of the problems discussed above. Some of the problems discussed above might not be fully addressed by any of the features described herein.
[0048] 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 invention as set forth.
[0049] 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, networks, processes, and othercomponents may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.
[0050] 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 can 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. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
[0051] 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.
[0052] Reference throughout this specification to “one embodiment” or “an embodiment” or “an instance” or “one instance” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of thephrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0053] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and / or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the term “and / or” includes any and all combinations of one or more of the associated listed items.
[0054] The disclosed system and method facilitate the development of an enhanced mechanism at a Network Function (NF) to monitor a connection between an active and a spare node, achieving data synchronization of real-time session data. This ensures seamless transition and efficient utilization of resources by enabling a request to be served without any failover after the resolution of a split-brain scenario.
[0055] By introducing automatic replication of data between the active and the spare nodes, the disclosed system and method address a crucial aspect of high availability in networks (e.g., 5G network, 6G network, or another next-generation network). This approach prevents denial of service, which may arise due to loss of data between the active node and the spare node in the event of a connection failure.
[0056] The NF is designed to clear the delta cache from its memory once replication is completed. This ensures effective utilization of memory and prevents a network system from becoming overloaded due to delta sessions.
[0057] The disclosed system and method enable advanced data replication of specific delta sessions between the active and the spare node which were created during the split-brain scenario.
[0058] The various embodiments of the present disclosure will be explained in detail with reference to FIGS. 1 to 6.
[0059] FIG. 1 illustrates an exemplary network architecture (100) in which or with which embodiments of the present disclosure may be implemented.
[0060] Referring to FIG. 1, the network architecture (100) may include one or more computing devices or user equipments (104-1, 104-2. . . 104-N) associated with one or more users (102-1, 102-2. .. 102-N) in an environment. A person of ordinary skill in the art will understand that one or more users (102-1, 102-2. . . 102- N) may be collectively referred to as the users (102). Similarly, a person of ordinary skill in the art will understand that one or more user equipments (104-1, 104- 2... 104-N) may be collectively referred to as the user equipment (104). A person of ordinary skill in the art will appreciate that the terms “computing device(s)” and “user equipment” may be used interchangeably throughout the disclosure. Although three user equipments (104) are depicted in FIG. 1, however any number of the user equipments (104) may be included without departing from the scope of the ongoing description.
[0061] In an embodiment, the user equipment (104) may include smart devices operating in a smart environment, for example, an Internet of Things (loT) system. In such an embodiment, the user equipment (104) may include, but is not limited to, smart phones, smart watches, smart sensors (e.g., mechanical, thermal, electrical, magnetic, etc.), networked appliances, networked peripheral devices, networked lighting system, communication devices, networked vehicle accessories, networked vehicular devices, smart accessories, tablets, smart television (TV), computers, smart security system, smart home system, other devices for monitoring or interacting with or for the users (102) and / or entities, or any combination thereof. A person of ordinary skill in the art will appreciate that the user equipment (104)may include, but is not limited to, intelligent, multi-sensing, network-connected devices, that can integrate seamlessly with each other and / or with a central server or a cloud-computing system or any other device that is network-connected.
[0062] In an embodiment, the user equipment (104) may include, but is not limited to, a handheld wireless communication device (e.g., a mobile phone, a smart phone, a phablet device, and so on), a wearable computer device(e.g., a headmounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and / or any other type of computer device with wireless communication capabilities, and the like. In an embodiment, the user equipment (104) may include, but is not limited to, any electrical, electronic, electro-mechanical, or an equipment, or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the user equipment (104) may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, an audio aid, a microphone, a keyboard, and input devices for receiving input from the user (102) or the entity such as touch pad, touch enabled screen, electronic pen, and the like. A person of ordinary skill in the art will appreciate that the user equipment (104) may not be restricted to the mentioned devices and various other devices may be used.
[0063] Referring to FIG. 1, the user equipment (104) may communicate with a system (108) through a network (106). The system (108) may be configured to perform data replication of specific delta sessions between the active node and the spare node during the split-brain scenario. As will be described in greater detail in conjunction with FIG. 1 to FIG. 6, in order to replicate data between the active node and the spare node, the system (108) may initially receive a plurality of information (e.g., a network traffic information, a packet loss information, a latencyinformation, and a throughput information) from one or more data sources associated with the user equipment (104). Further, the system (108) may monitor a connection established between the active node and the spare node based on the plurality of received information. Upon detecting a disconnection in the monitored connection, the system (108) may set a flag and initialize a delta session at each of the active node and the spare node corresponding to each incoming request. Further, the system (108) may store incoming data corresponding to the initialized delta session. Further, the system (108) may detect a re-establishment of the connection between the active node and the spare node. Further, the system (108) may replicate the stored incoming data corresponding to the initialized delta session from the spare node to the active node, upon detection of the re-establishment of the connection.
[0064] In an embodiment, the network (106) may include at least one of a Fifth Generation (5G) network, 6G network, or the like. The network (106) may enable the user equipment (104) to communicate with other devices in the network architecture (100) and / or with the system (108). The network (106) may include a wireless card or some other transceiver connection to facilitate this communication. In another embodiment, the network (106) may be implemented as, or include any of a variety of different communication technologies such as a wide area network (WAN), a local area network (LAN), a wireless network, a mobile network, a Virtual Private Network (VPN), the Internet, the Public Switched Telephone Network (PSTN), or the like.
[0065] Although FIG. 1 shows exemplary components of the network architecture (100), in other embodiments, the network architecture (100) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 1. Additionally, or alternatively, one or more components of the network architecture (100) may perform functions described as being performed by one or more other components of the network architecture (100).
[0066] FIG. 2 illustrates an exemplary block diagram (200) of the system (108) for replicating data of the delta sessions between the active node and the spare node, in accordance with an embodiment of the present disclosure.
[0067] In an embodiment, the system (108) may include one or more processor(s) (202). The one or more processor(s) (202) may be implemented as one or more microprocessors, microcomputers, microcontrollers, edge or fog microcontrollers, digital signal processors, central processing units, logic circuitries, and / or any devices that process data based on operational instructions. Among other capabilities, one or more processor(s) (202) may be configured to fetch and execute computer-readable instructions stored in a memory (204) of the system (108). The memory (204) may be configured to store one or more computer- readable instructions or routines in a non-transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory (204) may comprise any non-transitory storage device including, for example, volatile memory such as Random-Access Memory (RAM), or non-volatile memory such as Erasable Programmable Read-Only Memory (EPROM), flash memory, and the like.
[0068] In an embodiment, the system (108) may include an interface(s) (206). The interface(s) (206) may include a variety of interfaces, for example, interfaces for data input and output devices, referred to as VO devices, storage devices, and the like. The interface(s) (206) may facilitate communication of the system (108). The interface(s) (206) may also provide a communication pathway for one or more components of the system (108). Examples of such components include but are not limited to, a receiving unit (208), a processing unit (210) and a database (214).
[0069] The processing unit (210) may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing unit (210). In the examples described herein, such combinations of hardware and programming may beimplemented in several different ways. For example, the programming for the processing unit (210) may be processor-executable instructions stored on a non- transitory machine-readable storage medium and the hardware for the processing unit (210) may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine- readable storage medium may store instructions that, when executed by the processing resource, implement the processing unit (210). In such examples, the system (108) may comprise the machine -readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine- readable storage medium may be separate but accessible to the system (108) and the processing resource. In other examples, the processing unit (210) may be implemented by an electronic circuitry.
[0070] In order to replicate data between the active nodes (e.g., active node 1, active node 2. . . active node N) may be collectively referred to as an active node (216) and the spare nodes (e.g., spare node 1, spare node 2. . . spare node N) may be collectively referred to as a spare node (218). Initially a receiving unit (208) may be configured to receive a plurality of information from one or more data sources. The plurality of information may include, but is not limited to, a network traffic information, a packet loss information, a latency information, and a throughput information. The one or more data sources may include a network management system (NMS), an operations support system (OSS), and a performance management system (PMS).
[0071] The NMS is responsible for monitoring and managing network infrastructure, including real-time data on network traffic patterns, device status, and overall network health. This information is essential for monitoring the connection between the active and spare nodes and detecting any disconnections.
[0072] Further, the OSS is essential for setting flags and initializing delta sessions in response to detected disconnections, ensuring the system accurately tracks and manages the network.
[0073] Additionally, the PMS delivers detailed performance metrics, including latency, throughput, and packet loss statistics. These data are used to evaluate network performance and ensure efficient data replication. The PMS enables the system to maintain high availability and avoid denial of service by ensuring timely and accurate replication of the delta session between the active node and spare node.
[0074] The memory (204) may be configured to store the plurality of received information. Based on processing the plurality of received information, the processing unit (210) may monitor a connection established between the active node (216) and the spare node (218). Upon detecting a disconnection in the monitored connection, the processing unit (210) may further set a flag. The flag may be set during the split-brain scenario. In such scenario, the processing unit (210) may initialize a delta session at each of the active node and the spare node corresponding to each incoming request. Each of the incoming request may include, but are not limited to, session initiation requests (e.g., logging into a service, initiating voice or video calls, or starting data transfer sessions), data transfer requests (e.g., upload or download of data), configuration change requests (e.g., adjusting firewall rules, modifying access permissions, or updating user profiles), authentication requests (e.g., login attempts, token verifications, and two-factor authentication processes), and service utilization requests)e.g., request for accessing specific network services like cloud applications, virtual private networks (VPNs), or content delivery networks (CDNs)).
[0075] In an embodiment, the delta session may be initialized to track one or more changes and updates to the data occurring between at the spare node (218) during the disconnected or the split-brain scenario. In an embodiment, the memory (204) may store incoming data corresponding to the initialized delta session. In some embodiments, the memory (204) may store a time stamp at each of the active node (216) and the spare node (218), indicating a time of initialization of the delta session. In some embodiments, the incoming data may be stored in the database (214). In some embodiments, the time stamp may be stored at both the active nodeand the spare node to mark the time when the delta session is initialized. The time stamp may be obtained using a system clock of each node at a precise moment when the delta session initialization event occurs.
[0076] Further, the processing unit (210) may detect a re-establishment of the connection between the active node (216) and the spare node (218). Upon detecting the re-establishment of the connection, the processing unit (210) may reset the flag. The setting the flag and resetting the flag may be performed by the processing unit (210) by monitoring the connection between the active node (216) and the spare node (218).
[0077] The processing unit (210) may include a replication module (212). Upon detection of the re-establishment of the connection, the replication module (212) may be configured to replicate the stored incoming data corresponding to the initialized delta session from the spare node (218) to the active node (216). In particular, the replication module (212) may replicate the one or more changes and updates that may occur during the disconnection in the monitored connection from the spare node (218) to the active node (216). The one or more changes and updates may be, for example, updates on ongoing user sessions, transaction data, modification on network configurations or settings, updates on state of various network functions and the like.
[0078] In an embodiment, the spare node (218) may be configured to send a completion message to the active node (216) upon completion of the data replication. In an embodiment, the processing unit (210) may be configured to delete the stored incoming data from the spare node (218) upon completion of the data replication. In an embodiment, the processing unit (210) may be configured to update the memory (204) of the active node (216) after receiving the completion message from the spare node (218).
[0079] In an embodiment, the database (214) may store data (e.g., logs of delta sessions, timestamps, and other relevant information) that may be either stored or generated as a result of functionalities implemented by any of the components ofthe one or more processor(s) (202) or the processing unit (210) of the system (108).
[0080] Although FIG. 2 shows an exemplary block diagram (200) of the system (108), in other embodiments, the system (108) may include fewer components, different components, differently arranged components, or additional functional components than depicted in FIG. 2. Additionally, or alternatively, one or more components of the system (108) may perform functions described as being performed by one or more other components of the system (108). For example, the system (108) may perform functions as described in detail in FIG. 5.
[0081] FIG. 3 illustrates an exemplary block diagram (300) that represents the functioning of the replication module (212) for the data replication of the delta sessions between the active node and the spare node, in accordance with an embodiment of the disclosure. As illustrated are various states of the active node and the spare node during a connection break scenario, and a connection reestablished and replication initiation scenario.
[0082] When a connection between the active node (e.g., active NF, Session 1) (302) and the spare node (e.g., spare NF, Session 2) (304) breaks, the system ensures that both the active and the spare nodes start maintaining the delta sessions independently. This delta session management involves tracking changes and updates to data at both nodes during the connection break scenario. The replication module (212) stores these changes to ensure no data is lost during the disconnection.
[0083] Upon re-establishment of the connection between the active node and the spare node, the replication module (212) detects the change in connection status. The spare node (e.g., spare NF (308)) begins replicating its delta session data towards the active node (e.g., active NF (306)). This replication process includes transferring all updates and changes tracked during the disconnection. The spare node (308) then sends a completion message to the active node (306) to signal the end of its replication process.
[0084] After receiving the completion message, the active node (306)replicates its delta session data from its end to ensure both nodes are synchronized. This process ensures that any changes made at the active node (306) during the disconnection are also updated at the spare node (308). For example, both the nodes, i.e., the active node (active NF, which includes session 1 and session 2) (310) and the spare node (spare NF, which includes both Session 1 and Session 2) (312), may have synchronized data. The active node (310) and spare node (312) then clear their delta maps once the replication is complete, preventing any data redundancy and ensuring efficient memory usage.
[0085] The disclosed system and method ensure data consistency between the active node and the spare node. The NF automatically replicates session data after the re-establishment of the connection via a replication channel. This automatic data synchronization ensures seamless transition and efficient utilization of resources. Further, by enabling the data synchronization between the active and the spare nodes, the active node may handle update and / or terminate requests for the session created on the spare node during its active state i.e., when it was serving as a spare-active node. This prevents any denial of service which may arise due to inconsistent data between nodes.
[0086] Additionally, the disclosed system and method enable advanced data replication techniques, such as prioritizing critical sessions for replication first, managing replication in high-latency environments, and ensuring minimal disruption to ongoing services. The replication module (212) may dynamically adjust replication processes based on network conditions.
[0087] FIG. 4 illustrates an exemplary process flow (400) for replicating data of the delta sessions between the active node and the spare node, in accordance with an embodiment of the disclosure. The process flow (400) starts at step (402). The process first checks if the connection between the spare node and the active node is down, at step (404). If the connection is not down, then the process continues sending traffic as usual, at step (406).
[0088] If the connection is detected to be down, the process starts keepingdelta sessions between the spare node and the active node, at step (408). This involves both nodes tracking changes and updates to data independently. As illustrated, when the connection between the active and the spare node goes down, the connection down stamp is stored at both the active and the spare node. A flag is set to indicate split-brain condition. If the split-brain flag is set, a delta session is maintained for an incoming request.
[0089] The process then checks if the connection between the spare node and the active node is re-established, at step (410). If the connection is not reestablished, the spare node and active node continue saving delta sessions independently, at step (420).
[0090] If the connection is re-established, the split-brain condition flag is reset. Thereafter, a thread is delegated in the spare node and session maps are iterated, the sessions which are created or deleted after a connection break time are replicated to an active instance. When the connection is re-established, the spare node replicates its delta session data and sends a completion message to the active node, at step (412). This step ensures that all updates tracked by the spare node during the disconnection are sent to the active node.
[0091] Once the replication completion message is received at the active node, a split-brain handling thread is delegated at the active node. The active node replicates its delta sessions towards the spare node, at step (414). When the replication requests are received at the active node, its local cache is updated. This ensures that any changes made at the active node during the disconnection are also updated at the spare node.
[0092] Once the replication is completed, both the active node and the spare node clear their delta caches, at step (416). This step is essential for freeing up memory and maintaining the efficiency of the nodes.
[0093] The process flow then ends at step (418), having ensured that the active node and the spare node are fully synchronized, and data consistency ismaintained.
[0094] FIG. 5 illustrates a flow diagram of a method (500) for replicating data of the delta sessions between the active node and the spare node, in accordance with an embodiment of the disclosure. The method (500), at step 502, includes monitoring, by a processing unit (210), a connection established between the active node (216) and the spare node (218). The active node (216) and the spare node (218) are connected to each other via a replication channel. The replication channel is crucial for synchronizing the delta session between the active node and spare node, ensuring data consistency and seamless transition during re-establishment of the connection. The replication channel facilitates the efficient transfer of delta session data, mitigating data loss and maintaining high availability within the network.
[0095] Upon detecting a disconnection in the monitored connection, the method (500), at step 504, further includes setting, by the processing unit (210), a flag and initializing a delta session at each of the active node (216) and the spare node (218) corresponding to each incoming request. The delta session is initialized to track one or more changes and updates to the data occurring at the spare node (218) during the disconnection in the monitored connection.
[0096] The method (500), at step 506, further includes storing, by the processing unit, incoming data corresponding to the initialized delta session. In some embodiments, the method (500) includes storing a time stamp at each of the active node (216) and the spare node (218) in a memory (204). The stored time stamp indicates a time of initialization of the delta session.
[0097] The method (500), at step 508, further includes detecting, by the processing unit (210), a re-establishment of the connection between the active node (216) and the spare node (218). In an embodiment, the flag may be reset upon detecting the re-establishment of the connection. In an embodiment, once the connection is re-established, the one or more changes and updates are replicated from the spare node (218) to the active node (216).
[0098] The method (500), at step 510, further includes replicating, by a replication module (212) associated with the processing unit (210), the stored incoming data corresponding to the initialized delta session from the spare node (218) to the active node (216), upon detection of the re-establishment of the connection.
[0099] In some embodiments, the method (500) further includes sending a completion message from the spare node (218) to the active node (216) upon completion of the data replication. In some embodiments, the method (500) further includes deleting the stored data from the spare node (218) upon completion of the data replication.
[0100] FIG. 6 illustrates an exemplary computer system (600) in which or with which embodiments of the present disclosure may be implemented. As shown in FIG. 6, the computer system may include an external storage device 610, a bus 620, a main memory 630, a read-only memory 640, a mass storage device 650, communication port(s) 660, and a processor 670. A person skilled in the art will appreciate that the computer system may include more than one processor and communication ports. The processor 670 may include various modules associated with embodiments of the present disclosure. The communication port(s) 660 may be any of an RS-232 port for use with a modem-based dialup connection, a 10 / 100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port(s) 660 may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system connects.
[0101] The main memory 630 may be random access memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory 640 may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or Basic Input / Output System (BIOS) instructions for the processor 670. The mass storage device 650 may be any current or future mass storagesolution, which can be used to store information and / or instructions. Exemplary mass storage device 650 includes, but is not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and / or Firewire interfaces), one or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g. an array of disks.
[0102] The bus 620 communicatively couples the processor 670 with the other memory, storage, and communication blocks. The bus 620 may be, e.g. a Peripheral Component Interconnect (PCI) / PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor 670 to the computer system.
[0103] Optionally, operator and administrative interfaces, e.g. a display, keyboard, joystick, and a cursor control device, may also be coupled to the bus 620 to support direct operator interaction with the computer system. Other operator and administrative interfaces can be provided through network connections connected through the communication port(s) 660. Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system limit the scope of the present disclosure.
[0104] While the foregoing describes various embodiments of the invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. The scope of the invention is determined by the claims that follow. The invention is not limited to the described embodiments, versions or examples, which are included to enable a person having ordinary skill in the art to make and use the invention when combined with information and knowledge available to the person having ordinary skill in the art.
[0105] The present disclosure provides technical advancement related to data replication in communication networks. This advancement addresses thelimitations of existing solutions by introducing an automated mechanism for handling split-brain scenarios between the active and spare nodes. The disclosure involves the delta session management and synchronization protocols, which ensure data replication upon re-establishment of the connection. These inventive aspects improves data consistency and operational reliability in distributed network deployments. By implementing real-time synchronization of the delta sessions between the active node and the spare node, the present disclosure enhances session management efficiency, mitigates the risk of service disruptions, and optimizes resource utilization in dynamic network environments, ultimately ensuring uninterrupted service delivery and improved user experience.ADVANTAGES OF THE PRESENT DISCLOSURE
[0106] The present disclosure provides a system and a method for advanced data replication of specific delta sessions between the active node and the spare node created during the split-brain scenario.
[0107] The present disclosure enables the spare node to replicate all of its delta session towards the active node when a network connection is restored and send a replication completion message towards the active node.
[0108] The present disclosure allows the active node to replicate a delta session from its end, after receiving the replication completion message.
[0109] The present disclosure enables the active node and the delta node to clear their delta maps once the replication of messages is completed.
[0110] The present disclosure enables a Network Function (NF) to automatically replicate session data after re-connection of a replication channel and ensures seamless transition and efficient utilization of resources.
[0111] The present disclosure ensures that there is no avoidance of denial of service, which arises due to inconsistent data.
[0112] The present disclosure ensures data consistency and integrity between the active and spare nodes during and after the split-brain scenario.
[0113] The present disclosure minimize downtime and prevent service disruption by enabling seamless data synchronization between the active node and the spare node.
Claims
CLAIMS:
1. A method (500) of replicating data between an active node (216) and a spare node (218) in a communication network, the method (500) comprising: monitoring (502), by a processing unit (210), a connection established between the active node (216) and the spare node (218); upon detecting a disconnection in the monitored connection, setting (504), by the processing unit (210), a flag and initializing a delta session at each of the active node (216) and the spare node (218) corresponding to each incoming request; storing (506), by the processing unit (210), incoming data corresponding to the initialized delta session; detecting (508), by the processing unit (210), a re-establishment of the connection between the active node (216) and the spare node (218); and replicating (510), by a replication module (212) associated with the processing unit (210), the stored incoming data corresponding to the initialized delta session from the spare node (218) to the active node (216), upon detection of the re-establishment of the connection.
2. The method (500) as claimed in claim 1, wherein the active node (216) and the spare node (218) are connected to each other via at least one replication channel.
3. The method (500) as claimed in claim 1, further comprising initializing the delta session to track one or more changes and updates to the data occurring at the spare node (218) during the disconnection in the monitored connection.
4. The method (500) as claimed in claim 3, wherein the one or more changes and updates are replicated from the spare node (218) to the active node (216) once the connection is re-established.
5. The method (500) as claimed in claim 1, further comprising sending a completion message from the spare node (218) to the active node (216) upon completion of the data replication.
6. The method (500) as claimed in claim 1, further comprising storing a time stamp at each of the active node (216) and the spare node (218), wherein the stored time stamp indicates a time of initialization of the delta session.
7. The method (500) as claimed in claim 1, further comprising resetting the flag upon detection of the re-establishment of the connection.
8. The method (500) as claimed in claim 1, further comprising deleting the stored data from the spare node (218) upon completion of the data replication.
9. A system (108) for replicating data between an active node (216) and a spare node (218) in a communication network, the system (108) comprising: a receiving unit (208) configured to receive a plurality of information from one or more data sources; a memory (204) configured to store the plurality of received information; a processing unit (210) configured to monitor a connection established between the active node (216) and the spare node (218) by processing the plurality of received information, wherein the processing unit (210) is further configured to: upon detecting a disconnection in the monitored connection, set a flag and initialize a delta session at each of the active node (216) and the spare node (218) corresponding to each incoming request; store incoming data corresponding to the initialized delta session; anddetect a re-establishment of the connection between the active node (216) and the spare node (218); and a replication module (212) configured to replicate the stored incoming data corresponding to the initialized delta session from the spare node (218) to the active node (216) upon detection of the re-establishment of the connection.
10. The system (108) as claimed in claim 9, wherein the plurality of information comprises a network traffic information, a packet loss information, a latency information, and a throughput information.
11. The system (108) as claimed in claim 9, wherein the one or more data sources comprise a network management system (NMS), an operations support system (OSS), and a performance management system (PMS).
12. The system (108) as claimed in claim 9, wherein the delta session is initialized to track one or more changes and updates to the data occurring at the spare node (218) during the disconnection in the monitored connection.
13. The system (108) as claimed in claim 12, wherein the one or more changes and updates are replicated from the spare node (218) to the active node (216) once the connection is re-established.
14. The system (108) as claimed in claim 9, wherein the spare node (218) is configured to send a completion message to the active node (216) upon completion of the data replication.
15. The system (108) as claimed in claim 9, is configured to store a time stamp at each of the active node and the spare node, indicating a time of initialization of the delta session.
16. The system (108) as claimed in claim 9, wherein the processing unit (210) is configured to reset the flag upon detection of the re-establishment of the connection.
17. The system (108) as claimed in claim 9, wherein the processing unit (210) is configured to delete the stored incoming data from the spare node (218) upon completion of the data replication.
18. A network function (NF) for replicating data between an active node and a spare node in a communication network, the NF comprising: a receiving unit (208) configured to receive a plurality of information from one or more data sources; a memory (204) configured to store the plurality of received information; a processing unit (210) configured to monitor a connection established between the active node (216) and the spare node (218) based on processing the plurality of received information, wherein the processing unit (210) is further configured to: upon detecting a disconnection in the monitored connection, set a flag and initialize a delta session at each of the active node (216) and the spare node (218) corresponding to each incoming request; store incoming data corresponding to the initialized delta session; and detect a re-establishment of the connection between the active node (216) and the spare node (218); and a replication module (212) configured to replicate the stored incoming data corresponding to the initialized delta session from the spare node (218) to the active node (216) upon detection of the re-establishment of the connection.
19. A user equipment (UE) (104) communicatively coupled with a network (106), the coupling comprises steps of:receiving, by the network (106), a connection request from the UE(104); sending, by the network (106), an acknowledgment of the connection request to the UE (104); and transmitting a plurality of signals in response to the connection request, wherein replication of data between an active node and a spare node in the network (106) is performed by a method (500) as claimed in claim 1.
20. A computer program product comprising a non-transitory computer- readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to: monitor a connection established between an active node (216) and a spare node (218); upon detecting a disconnection in the monitored connection, set a flag and initialize a delta session at the active node (216) and the spare node (218) corresponding to each incoming request; store incoming data corresponding to the initialized delta session; and detect a re-establishment of the connection between the active node (216) and the spare node (218); and replicate the stored incoming data corresponding to the initialized delta session from the spare node (218) to the active node (216) upon detection of the re-establishment of the connection.