Abstract: The disclosed a system (108) and a method (500) facilitates advanced data replication of specific delta sessions between an active node (216) and a spare node (218), created during a split-brain scenario. When a connection between the active node (216) and the spare node (218) breaks, both the nodes initiate maintaining delta sessions at their ends. When the connection is re-established, the spare node (218) replicates all the delta sessions towards the active node (216) and sends a completion message towards the active node (216). The active node (216) after receiving the completion message replicates the delta session from its end. Further, both the active and the spare nodes clear their delta maps once the replication is completed. Fig. 2
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
THE PATENTS RULES, 2003
COMPLETE
SPECIFICATION
(See section 10; rule 13)
TITLE OF THE INVENTION
SYSTEM AND METHOD FOR DATA REPLICATION OF DELTA SESSIONS BETWEEN
NETWORK NODES
APPLICANT
JIO PLATFORMS LIMITED
of Office-101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi,
Ahmedabad - 380006, Gujarat, India; Nationality: India
The following specification particularly describes
the invention and the manner in which
it is to be performed
2
RESERVATION OF RIGHTS
[001] 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
5 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.
10 TECHNICAL FIELD
[002] 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
15 [003] 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.
[004] 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
20 changes are tracked and stored separately to facilitate efficient replication once the
network connection is restored.
[005] 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.
25 [006] The term ‘spare node’ as used herein, refers to a secondary network
function node that remains in standby mode to take over responsibilities of the
active node in case of failure or disconnection, ensuring high availability and fault
tolerance.
3
[007] 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.
5 BACKGROUND
[008] 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
10 to enhance the understanding of the reader with respect to the present disclosure,
and not as admissions of prior art.
[009] 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
15 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
20 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.
25 [0011] There is therefore a need in the art to provide an improved
mechanism 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
4
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
5 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
10 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.
15 [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
20 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 the
monitored 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
25 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,
5
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
5 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
10 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.
15 [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.
20 [0025] In an embodiment, the method includes the step of deleting the
stored 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
25 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
6
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
5 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
10 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).
15 [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 re20 established.
[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
25 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
7
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.
5 [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
10 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
15 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
20 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
25 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
30 features described above, further aspects, embodiments, and features will become
8
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
5 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
10 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
15 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 and
the spare node, in accordance with an embodiment of the disclosure.
[0044] FIG. 4 illustrates an exemplary process flow for replicating data of
20 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.
25 [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.
9
LIST OF REFERENCE NUMERALS
100 – Network architecture
102-1, 102-2…102-N – Users
104-1, 104-2…104-N – User Equipment
5 106 – Network
108– System
200 – Block diagram
202 – One or more processor(s)
204 – Memory
10 206 – Interface(s)
208 – Receiving unit
210 – Processing unit
212 – Replication module
214 – Database
15 216, 302, 306, 310 – Active node
218, 304, 308, 312 – Spare node
300 – Exemplary block diagram
400 – Exemplary process flow
500 – Flow chart
20 600 – Computer system
610 – External Storage Device
620 – Bus
630 – Main Memory
640 – Read Only Memory
25 650 – Mass Storage Device
660 – Communication Port
670 – Processor
DETAILED DESCRIPTION
30 [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
10
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
5 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
10 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
15 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 other
components may be shown as components in block diagram form in order not to
obscure the embodiments in unnecessary detail. In other instances, well-known
20 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
25 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
30 function, its termination can correspond to a return of the function to the calling
function or the main function.
11
[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
5 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
10 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
15 in at least one embodiment of the present invention. Thus, the appearances of the
phrases “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.
20 [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
25 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.
30 [0054] The disclosed system and method facilitate the development of an
enhanced mechanism at a Network Function (NF) to monitor a connection between
12
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.
5 [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.
10 [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
15 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.
20 [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
25 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
13
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 (IoT)
5 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),
10 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
15 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
20 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,
25 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
30 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)
14
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.
5 [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
10 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 latency
information, 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
15 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
20 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
25 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
30 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
15
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
5 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).
10 [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
15 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
20 system (108). The memory (204) may be configured to store one or more computerreadable 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
25 (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 I/O devices, storage
30 devices, and the like. The interface(s) (206) may facilitate communication of the
16
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).
5 [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 be
implemented in several different ways. For example, the programming for the
10 processing unit (210) may be processor-executable instructions stored on a nontransitory 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 machinereadable storage medium may store instructions that, when executed by the
15 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 machinereadable storage medium may be separate but accessible to the system (108) and
the processing resource. In other examples, the processing unit (210) may be
20 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
25 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
30 management system (PMS).
[0071] The NMS is responsible for monitoring and managing network
17
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
5 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
10 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,
15 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
20 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),
25 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
30 or more changes and updates to the data occurring between at the spare node (218)
18
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
5 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 node
and 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.
10 [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)
15 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
20 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
25 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
30 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
19
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 of
5 the 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
10 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
15 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
20 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.
25 [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
30 node (308) then sends a completion message to the active node (306) to signal the
20
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
5 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
10 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
15 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.
20 [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.
25 [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
30 continues sending traffic as usual, at step (406).
21
[0088] If the connection is detected to be down, the process starts keeping
delta 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,
5 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 re10 established, 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
15 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
20 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.
25 [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 is
30 maintained.
22
[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
5 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
10 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
15 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
20 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
25 (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
30 replication module (212) associated with the processing unit (210), the stored
23
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
5 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.
[00100] FIG. 6 illustrates an exemplary computer system (600) in which or
10 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
15 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
20 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.
[00101] 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
25 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 storage
solution, which can be used to store information and/or instructions. Exemplary
mass storage device 650 includes, but is not limited to, Parallel Advanced
30 Technology Attachment (PATA) or Serial Advanced Technology Attachment
(SATA) hard disk drives or solid-state drives (internal or external, e.g., having
24
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.
[00102] The bus 620 communicatively couples the processor 670 with the
other memory, storage, and communication blocks. The bus 620 may be, e.g. a
5 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.
10 [00103] 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
15 only to exemplify various possibilities. In no way should the aforementioned
exemplary computer system limit the scope of the present disclosure.
[00104] 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
20 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.
[00105] The present disclosure provides technical advancement related to
25 data replication in communication networks. This advancement addresses the
limitations 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
30 aspects improves data consistency and operational reliability in distributed network
25
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
5 uninterrupted service delivery and improved user experience.
ADVANTAGES OF THE PRESENT DISCLOSURE
[00106] 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.
10 [00107] 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.
[00108] The present disclosure allows the active node to replicate a delta
session from its end, after receiving the replication completion message.
15 [00109] The present disclosure enables the active node and the delta node to
clear their delta maps once the replication of messages is completed.
[00110] 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.
20 [00111] The present disclosure ensures that there is no avoidance of denial
of service, which arises due to inconsistent data.
[00112] The present disclosure ensures data consistency and integrity
between the active and spare nodes during and after the split-brain scenario.
[00113] The present disclosure minimize downtime and prevent service
25 disruption by enabling seamless data synchronization between the active node and
the spare node.
26
WE CLAIM:
1. A method (500) of replicating data between an active node (216) and a spare
5 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
10 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
15 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.
20
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.
25 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.
30 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.
27
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.
5 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
10 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.
15
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;
20 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
25 (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;
30 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
28
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.
5
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.
10 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
15 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)
20 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.
25
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.
30 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.
29
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.
5 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
10 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:
15 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
20 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
25 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
30 (104);
sending, by the network (106), an acknowledgment of the
connection request to the UE (104); and
30
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.
| # | Name | Date |
|---|---|---|
| 1 | 202321048810-STATEMENT OF UNDERTAKING (FORM 3) [20-07-2023(online)].pdf | 2023-07-20 |
| 2 | 202321048810-PROVISIONAL SPECIFICATION [20-07-2023(online)].pdf | 2023-07-20 |
| 3 | 202321048810-FORM 1 [20-07-2023(online)].pdf | 2023-07-20 |
| 4 | 202321048810-DRAWINGS [20-07-2023(online)].pdf | 2023-07-20 |
| 5 | 202321048810-DECLARATION OF INVENTORSHIP (FORM 5) [20-07-2023(online)].pdf | 2023-07-20 |
| 6 | 202321048810-FORM-26 [19-10-2023(online)].pdf | 2023-10-19 |
| 7 | 202321048810-FORM-26 [12-04-2024(online)].pdf | 2024-04-12 |
| 8 | 202321048810-FORM 13 [15-04-2024(online)].pdf | 2024-04-15 |
| 9 | 202321048810-AMENDED DOCUMENTS [15-04-2024(online)].pdf | 2024-04-15 |
| 10 | 202321048810-Request Letter-Correspondence [03-06-2024(online)].pdf | 2024-06-03 |
| 11 | 202321048810-Power of Attorney [03-06-2024(online)].pdf | 2024-06-03 |
| 12 | 202321048810-Covering Letter [03-06-2024(online)].pdf | 2024-06-03 |
| 13 | 202321048810-CORRESPONDANCE-WIPO CERTIFICATE-11-06-2024.pdf | 2024-06-11 |
| 14 | 202321048810-ENDORSEMENT BY INVENTORS [25-06-2024(online)].pdf | 2024-06-25 |
| 15 | 202321048810-DRAWING [25-06-2024(online)].pdf | 2024-06-25 |
| 16 | 202321048810-CORRESPONDENCE-OTHERS [25-06-2024(online)].pdf | 2024-06-25 |
| 17 | 202321048810-COMPLETE SPECIFICATION [25-06-2024(online)].pdf | 2024-06-25 |
| 18 | 202321048810-ORIGINAL UR 6(1A) FORM 26-190724.pdf | 2024-07-24 |
| 19 | Abstract1.jpg | 2024-09-10 |
| 20 | 202321048810-FORM 18 [04-10-2024(online)].pdf | 2024-10-04 |
| 21 | 202321048810-FORM 3 [04-11-2024(online)].pdf | 2024-11-04 |