Method and system for distributing a traffic load using an interface
The method and system for distributing traffic load in 5G communication systems using a Load Balancer-Service Adapter interface address the issue of heavy traffic by efficiently routing requests and ensuring no server is overloaded, thereby maintaining system performance and availability.
Patent Information
- Application Number
- PCT/IN2024/051750
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-13
- Filing Date
- 2024-09-13
- Publication Date
- 2025-03-20
AI Technical Summary
In 5G communication systems, the rapid growth of technology and increased types of services lead to heavy traffic, causing microservice instances to fail and resulting in system failure due to overworked servers.
A method and system for distributing traffic load using a Load Balancer-Service Adapter (LB-SA) interface, which involves receiving requests at a load balancer, monitoring the health status of registered applications and microservice instances, determining an optimal server based on health status, and distributing requests to that server.
This solution efficiently handles heavy load traffic by ensuring no server is overloaded, distributing requests effectively among all service adapter instances, and performing fault tolerance to maintain high availability.
Smart Images

Figure IN2024051750_20032025_PF_FP_ABST
Abstract
Description
METHOD AND SYSTEM FOR DISTRIBUTING A TRAFFIC LOAD USING AN INTERFACEFIELD OF INVENTION
[0001] Embodiments of the present disclosure generally relate to the field of wireless communication system. More particularly, embodiments of the present disclosure relate to a method and a system for distributing a traffic load using an interface.BACKGROUND
[0002] 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.
[0003] Wireless communication technology has rapidly evolved over the past few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on analog technology and offered only voice services. However, with the advent of the second-generation (2G) technology, digital communication and data services became possible, and text messaging was introduced. 3G technology marked the introduction of high-speed internet access, mobile video calling, and location-based services. The fourth-generation (4G) technology revolutionized wireless communication with faster data speeds, better network coverage, and improved security. Currently, the fifth-generation (5G) technology is being deployed, promising even faster data speeds, low latency, and the ability to connect multiple devices simultaneously. With each generation, wireless communication technology has become more advanced, sophisticated, and capable of delivering more services to its users.
[0004] In the 5G communication system, there is provided a plurality of network functions (NFs), for example an Access and Mobility Management Function (AMF), session management function (SMF), Authentication Server function (AUSF), a Network Slice Selection Function (NSSF), Policy control function (PCF), a Network Repository Function (NRF), Network Exposure Function (NEF), Converged Charging Function (CHF) and the like. One or more of theaforementioned NFs communicates with each other, to implement multiple activities on the 5G communication system. For example, CHF is one of the key network functions, which supports charging or billing services for user consumption of services.
[0005] In communication networks, due to the rapid growth of technology, different types of services and microservices have increased for providing support and services as per users and system consumption requirements. Due to heavy traffic, a particular microservice instance or unhealthy instance requests might fail, resulting in the failure of the system. Since as per traffic, servers providing requested services may get overworked and not capable enough to handle such heavy traffic demands. Therefore, the efficiency and performance of the system may drop from as per expectation and operational requirements.
[0006] Thus, there exists an imperative need in the art for a system and method for efficiently distributing a traffic load, which the present disclosure aims to address.SUMMARY
[0007] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0008] An aspect of the present disclosure may relate to a method for distributing a traffic load using an interface. The method includes receiving, by a transceiver unit using the interface, one or more requests at a load balancer. Next, the method includes monitoring, by a monitoring unit using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests. Next, the method includes fetching, by a retrieval unit, via an orchestrator manager, a real time health status of the one or more operational microservice instances. Next, the method includes determining, by a determination unit using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances. Thereafter, the method includes distributing, by the transceiver unit, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.
[0009] In an exemplary aspect of the present disclosure, the one or more requests comprise at least one of: a load balancer request, an HTTP request.
[0010] In an exemplary aspect of the present disclosure, the health status of the one or more registered applications and the one or more operational microservice instances comprises of a positive health status and a negative health status.
[0011] In an exemplary aspect of the present disclosure, the interface is a Load Balancer- Service Adapter (LB-SA) interface to connect the load balancer with the service adapter.
[0012] An aspect of the present disclosure may relate to a system for distributing a traffic load using an interface. The system comprises a transceiver unit configured to receive, using the interface, one or more requests at a load balancer. The system further comprises a monitoring unit connected at least to the transceiver unit, the monitoring unit is configured to monitor, using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests. The system further comprises a retrieval unit connected at least to the monitoring unit, the retrieval unit is configured to fetch, via an orchestrator manager, a real time health status of the one or more operational microservice instances. The system further comprises a determination unit connected at least to the retrieval unit, the determination unit is configured to determine, using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances. The transceiver unit is further configured to distribute, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.
[0013] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for distributing a traffic load using an interface, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit of the system to receive, using the interface, one or more requests at a load balancer; a monitoring unit of the system to monitor, using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests; a retrieval unit of the system to fetch, via an orchestrator manager, a real time health status of the one or more operational microservice instances; a determination unit of the system to determine, using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances; and the transceiver unit of the system to distribute, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.OBJECTS OF THE INVENTION
[0014] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0015] It is an object of the present disclosure to provide a system and a method for handling heavy load traffic on servers efficiently.
[0016] It is another object of the present disclosure to provide a system and a method for distributing traffic load using a Load Balancer-Service Adapter (LB-SA) interface.
[0017] It is yet another object of the present disclosure to provide a system and a method for asynchronous event-based implementation to utilize LB-SA interface efficiently.
[0018] It is yet another object of the present disclosure to provide a system and a method for performing fault tolerance by load balancer for any failure in a high availability mode, such that if one inventory instance is down then next available instance take care of this request.DESCRIPTION OF THE DRAWINGS
[0019] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Also, the embodiments shown in the figures are not to be construed as limiting the disclosure, but the possible variants of the method and system according to the disclosure are illustrated herein to highlight the advantages of the disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components.
[0020] FIG. 1 illustrates an exemplary block diagram of a management and orchestration (MANO) architecture.
[0021] FIG. 2 illustrates an exemplary block diagram of a computing device upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure.
[0022] FIG. 3 illustrates an exemplary block diagram of a system for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure.
[0023] FIG. 4 illustrates a method flow diagram for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure.
[0024] FIG. 5 illustrates an exemplary block diagram of a system for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure.
[0025] FIG. 6 illustrates an exemplary block diagram for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure.
[0026] The foregoing shall be more apparent from the following more detailed description of the disclosure.DETAILED DESCRIPTION
[0027] In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter may each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above.
[0028] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0029] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail.
[0030] Also, it is noted that individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure.
[0031] 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.
[0032] As used herein, a “processing unit” or “processor” or “operating processor” includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a (Digital Signal Processing) DSP core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input / output processing, and / or any other functionality that enables the working of the system according to the present disclosure. More specifically, the processor or processing unit is a hardware processor.
[0033] As used herein, “a user equipment”, “a user device”, “a smart-user-device”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless communication device”, “a mobile communication device”, “a communication device” may be any electrical, electronic and / or computing device or equipment, capable of implementing the features of the present disclosure. The user equipment / device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device which is capable of implementing the features of the present disclosure. Also, the user device may contain at least one input means configured to receive an input from at least one of a transceiver unit, a processing unit, a storage unit, a detection unit and any other such unit(s) which are required to implement the features of the present disclosure.
[0034] As used herein, “storage unit” or “memory unit” refers to a machine or computer- readable medium including any mechanism for storing information in a form readable by a computer or similar machine. For example, a computer-readable medium includes read-only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices or other types of machine-accessible storage media. The storage unit stores at least the data that may be required by one or more units of the system to perform their respective functions.
[0035] As used herein “user interface” refers to a shared boundary across which two or more separate components of a system exchange information or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
[0036] All modules, units, components used herein, unless explicitly excluded herein, may be software modules or hardware processors, the processors being a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.
[0037] As used herein the transceiver unit include at least one receiver and at least one transmitter configured respectively for receiving and transmitting data, signals, information or acombination thereof between units / components within the system and / or connected with the system.
[0038] As used herein, container service adapter (CSA) (may be a docker service adapter) refers to such as, unit, server or service which facilitates communication between container and other services or microservices.
[0039] As used herein, a load balancer refers to a device, unit, server, or service that manages incoming and outgoing network traffic. The load balancer stores details of at least the available servers, and microservice instances. It manages traffic by directing and distributing incoming or outgoing traffic to healthy servers or resources.
[0040] As used herein, microservice refers to such as, unit, node, server loosely coupled, independent deployable services specialized for performing specific functions related to management and optimization of network operations. Further, the microservice instance refers to single deployment of the microservice. The microservice instances may be used for scaling and load balancing. Each microservice may have a unique identifier. Each microservice instance’s health and performance is monitored during the operation. If any microservice instance's health or performance degrades, the network may automatically, or manually, replace the instance or transfer the traffic load to a healthy microservice instance.
[0041] As used herein, orchestrator manager refers to such as, unit, node, service or server, which manages service operations of different microservices in the network. Orchestrator manager maintains records details of the operational microservices and share details of the microservices with other microservices for the operational communication.
[0042] As used herein, Identity Access Management (IAM) node refer to such as, service, unit, platform for providing defence against malicious or unauthorised login activity and safeguards credentials by enabling risk-based access controls, ensuring identity protection and authentication processes.
[0043] As used herein, Elastic Load Balancer (ELB) refers to such as service, unit, platform for managing and distributing incoming traffic efficiently across a group of supported servers, microservices and units in a manner that may increase speed and performance of the network.
[0044] As used herein, Event Routing Management (ERM) refers to such as, node, server, service or platform for monitoring and triggering various actions or responses within the system based on detected event. For example, for any microservice instance down, the ERM may trigger any alert for taking an action to overcome the service breakdown condition in the network.
[0045] As used herein, Central Log management System (CLMS) refers to such as service or platform which may collect log data from multiple sources and may consolidate the collected data. This consolidated data is then presented on a central interface which may be accessed by a user such as network administrator or authorised person.
[0046] As used herein, Elastic Search Cluster (ESC) refers to such as, a group of servers, nodes that work together and form a cluster for distributing tasks, searching and indexing across all the nodes in the cluster.
[0047] As discussed in the background section, the current known solutions have several shortcomings. Thus, there exists an imperative need in the art to provide an efficient system and method for handling heavy load traffic and distribute the load among servers such that no server is overloaded or overworked. The present method and system provide a Load balancer and CSA interface (LB-SA interface), which ensures that no server get overloaded due to bulk traffic. The present system and method provide the LB-SA interface, which distributes incoming / outgoing requests easily among all SA instances. The present method and system enable all instantiation, termination and Containerized Network Function (CNF) information (metrics, state) operations on cloud which may be performed on Management and Orchestration (MANO). The present method and system support HTTP / HTTPS configurations in parallel. The present method and system routes client requests across all servers in a manner that maximizes speed and capacity utilization. The present method and system may perform header-based routing which may save time and database hits.
[0048] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the accompanying drawings.
[0049] FIG. 1 illustrates an exemplary block diagram representation of a management and orchestration (MANO) architecture
[0100] , in accordance with exemplary implementation of the present disclosure. The MANO architecture
[0100] is developed for managing telecom cloud infrastructure automatically, managing design or deployment design, managing instantiation of a network node(s) etc. The MANO architecture
[0100] deploys the network node(s) in the form ofVirtual Network Function (VNF) and Cloud-native / Container Network Function (CNF). The system may comprise one or more components of the MANO architecture. The MANO architecture
[0100] is used to auto-instantiate the VNFs into the corresponding environment of the present disclosure so that it could help in onboarding other vendor(s) CNFs and VNFs to the platform.
[0050] As shown in FIG. 1, the MANO architecture
[0100] comprises a user interface layer, a network function virtualization (NFV) and software defined network (SDN) design function module
[0104] ; a platforms foundation services module
[0106] , a platform core services module
[0108] and a platform resource adapters and utilities module
[0112] , wherein all the components are assumed to be connected to each other in a manner as obvious to the person skilled in the art for implementing features of the present disclosure.
[0051] The NFV and SDN design function module
[0104] further comprises a VNF lifecycle manager (compute)
[1042] ; a VNF catalogue
[1044] ; a network services catalogue
[1046] ; a network slicing and service chaining manager
[1048] ; a physical and virtual resource manager
[1050] and a CNF lifecycle manager
[1052] , The VNF lifecycle manager (compute)
[1042] is responsible for on which server of the communication network the microservice will be instantiated. The VNF lifecycle manager (compute)
[1042] will manage the overall flow of incoming / outgoing requests during interaction with the user. The VNF lifecycle manager (compute)
[1042] is responsible for determining which sequence to be followed for executing the process. For e.g. in an AMF network function of the communication network (such as a 5G network), sequence for execution of processes Pl and P2 etc. The VNF catalogue
[1044] stores the metadata of all the VNFs (also CNFs in some cases). The network services catalogue
[1046] stores the information of the services that need to be run. The network slicing and service chaining manager
[1048] manages the slicing (an ordered and connected sequence of network service / network functions (NFs)) that must be applied to a specific networked data packet. The physical and virtual resource manager
[1050] stores the logical and physical inventory of the VNFs. Just like the VNF lifecycle manager (compute)
[1042] , the CNF lifecycle manager
[1052] is similarly used for the CNFs lifecycle management.
[0052] The platforms foundation services module
[0106] further comprises a microservices elastic load balancer
[1062] ; an identify & access manager
[1064] ; a command line interface (CLI)
[1066] ; a central logging manager
[1068] ; and an event routing manager
[1070] , The microservices elastic load balancer
[1062] is used for maintaining the load balancing of the request for the services. The identify & access manager
[1064] is used for logging purposes. The command lineinterface (CLI)
[1066] is used to provide commands to execute certain processes which requires changes during the run time. The central logging manager
[1068] is responsible for keeping the logs of every services. Theses logs are generated by the MANO platform
[0100] , These logs are used for debugging purposes. The event routing manager
[1070] is responsible for routing the events i.e., the application programming interface (API) hits to the corresponding services.
[0053] The platforms core services module
[0108] further comprises NFV infrastructure monitoring manager
[1082] ; an assure manager
[1084] ; a performance manager
[1086] ; a policy execution engine
[1088] ; a capacity monitoring manager
[1090] ; a release management (mgmt.) repository
[1092] ; a configuration manager & (GCT)
[1094] ; an NFV platform decision analytics
[1096] ; a platform NoSQL DB
[1098] ; a platform schedulers and cron jobs
[1100] ; a VNF backup & upgrade manager
[1102] ; a micro service auditor
[1104] ; and a platform operations, administration and maintenance manager
[1106] , The NFV infrastructure monitoring manager
[1082] monitors the infrastructure part of the NFs. For e.g., any metrics such as CPU utilization by the VNF. The assure manager
[1084] is responsible for supervising the alarms the vendor is generating. The performance manager
[1086] is responsible for manging the performance counters. The policy execution engine (PEGN)
[1088] is responsible for all the managing the policies. The capacity monitoring manager
[1090] is responsible for sending the request to the PEGN
[1088] , The release management (mgmt.) repository (RMR)
[1092] is responsible for managing the releases and the images of all the vendor network node. The configuration manager & (GCT)
[1094] manages the configuration and GCT of all the vendors. The NFV platform decision analytics (NPDA)
[1096] helps in deciding the priority of using the network resources. It is further noted that the policy execution engine (PEGN)
[1088] , the configuration manager & (GCT)
[1094] and the (NPDA)
[1096] work together. The platform NoSQL DB
[1098] is a database for storing all the inventory (both physical and logical) as well as the metadata of the VNFs and CNF. The platform schedulers and cron jobs
[1100] schedules the task such as but not limited to triggering of an event, traverse the network graph etc. The VNF backup & upgrade manager
[1102] takes backup of the images, binaries of the VNFs and the CNFs and produces those backups on demand in case of server failure. The micro service auditor
[1104] audits the microservices. For e.g., in a hypothetical case, instances not being instantiated by the MANO architecture
[0100] using the network resources then the micro service auditor
[1104] audits and informs the same so that resources can be released for services running in the MANO architecture
[0100] , thereby assuring the services only run on the MANO platform
[0100] , The platform operations, administration and maintenance manager
[1106] is used for newer instances that are spawning.
[0054] The platform resource adapters and utilities module
[0112] further comprises a platform external API adapter and gateway
[1122] ; a generic decoder and indexer (XML, CSV, JSON)
[1124] ; a container swarm adapter (also referred to as container service adapter)
[1126] ; an OpenStack API adapter
[1128] ; and a NFV gateway
[1130] , The platform external API adapter and gateway
[1122] is responsible for handling the external services (to the MANO platform
[0100] ) that requires the network resources. The generic decoder and indexer (XML, CSV, JSON)
[1124] gets directly the data of the vendor system in the XML, CSV, JSON format. The container swarm adapter
[1126] is the interface provided between the telecom cloud and the MANO architecture
[0100] for communication. The OpenStack API adapter
[1128] ; is used to connect with the virtual machines (VMs). The NFV gateway
[1130] is responsible for providing the path to each services going to / incoming from the MANO architecture
[0100] ,
[0055] FIG. 2 illustrates an exemplary block diagram of a computing device upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. The present disclosure can be implemented on a computing device
[0200] (also referred herein as a computer system
[0200] ) upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. In an implementation, the computing device
[0200] may also implement a method for distributing a traffic load using an interface utilising the system. In another implementation, the computing device
[0200] itself implements the method for distributing a traffic load using an interface using one or more units configured within the computing device
[0200] , wherein said one or more units are capable of implementing the features as disclosed in the present disclosure.
[0056] The computing device
[0200] may include a bus
[0202] or other communication mechanism for communicating information, and a hardware processor
[0204] coupled with bus
[0202] for processing information. The hardware processor
[0204] may be, for example, a general- purpose microprocessor. The computing device
[0200] may also include a main memory
[0206] , such as a random-access memory (RAM), or other dynamic storage device, coupled to the bus
[0202] for storing information and instructions to be executed by the processor
[0204] , The main memory
[0206] also may be used for storing temporary variables or other intermediate information during execution of the instructions to be executed by the processor
[0204] , Such instructions, when stored in non-transitory storage media accessible to the processor
[0204] , render the computing device
[0200] into a special-purpose machine that is customized to perform the operations specifiedin the instructions. The computing device
[0200] further includes a read only memory (ROM)
[0208] or other static storage device coupled to the bus
[0202] for storing static information and instructions for the processor
[0204] ,
[0057] A storage device
[0210] , such as a magnetic disk, optical disk, or solid-state drive is provided and coupled to the bus
[0202] for storing information and instructions. The computing device
[0200] may be coupled via the bus
[0202] to a display
[0212] , such as a cathode ray tube (CRT), Liquid crystal Display (LCD), Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for displaying information to a computer user. An input device
[0214] , including alphanumeric and other keys, touch screen input means, etc. may be coupled to the bus
[0202] for communicating information and command selections to the processor
[0204] , Another type of user input device may be a cursor controller
[0216] , such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor
[0204] , and for controlling cursor movement on the display
[0212] , The input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.
[0058] The computing device
[0200] may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware and / or program logic which in combination with the computing device
[0200] causes or programs the computing device
[0200] to be a special-purpose machine. According to one implementation, the techniques herein are performed by the computing device
[0200] in response to the processor
[0204] executing one or more sequences of one or more instructions contained in the main memory
[0206] , Such instructions may be read into the main memory
[0206] from another storage medium, such as the storage device
[0210] , Execution of the sequences of instructions contained in the main memory
[0206] causes the processor
[0204] to perform the process steps described herein. In alternative implementations of the present disclosure, hard-wired circuitry may be used in place of or in combination with software instructions.
[0059] The computing device
[0200] also may include a communication interface
[0218] coupled to the bus
[0202] , The communication interface
[0218] provides a two-way data communication coupling to a network link
[0220] that is connected to a local network
[0222] , For example, the communication interface
[0218] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, the communication interface
[0218] may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, the communication interface
[0218] sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
[0060] The computing device
[0200] can send messages and receive data, including program code, through the network(s), the network link
[0220] and the communication interface
[0218] , In the Internet example, a server
[0230] might transmit a requested code for an application program through the Internet
[0228] , the ISP
[0226] , the local network
[0222] , the host
[0224] and the communication interface
[0218] , The received code may be executed by the processor
[0204] as it is received, and / or stored in the storage device
[0210] , or other non-volatile storage for later execution.
[0061] Referring to FIG. 3, an exemplary block diagram of a system
[0300] for distributing a traffic load using an interface is shown, in accordance with the exemplary implementations of the present disclosure. The system
[0300] comprises at least one transceiver unit
[0302] , at least one monitoring unit
[0304] , at least one retrieval unit
[0306] , and at least one determination unit
[0308] , Also, all of the components / units of the system
[0300] are assumed to be connected to each other unless otherwise indicated below. Also, in FIG. 3 only a few units are shown, however, the system
[0300] may comprise multiple such units or the system
[0300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system
[0300] may be present in a user device to implement the features of the present invention. The system
[0300] may be a part of the user device / or may be independent of but in communication with the user device (may also referred herein as a UE). In another implementation, the system
[0300] may reside in a server or a network entity. In yet another implementation, the system
[0300] may reside partly in the server / network entity and partly in the user device.
[0062] The system
[0300] is configured for distributing a traffic load using an interface, with the help of the interconnection between the components / units of the system
[0300] ,
[0063] The system
[0300] comprises a transceiver unit
[0302] , The transceiver unit
[0302] is configured to receive, using the interface, one or more requests at a load balancer. The transceiver unit
[0302] is configured to receive the one or more requests such as, but not limited to, at least one of: a load balancer request, a hypertext transfer protocol (HTTP) request at the load balancer. The one or more requests may be associated with incoming or outgoing network traffic to balancetraffic load in the network. The interface is a Load Balancer-Service Adapter (LB-SA) interface to connect the load balancer with the service adapter or container service adapter. In an example, the one or more requests are received at the load balancer from a northbound interface (NBI). The northbound interface (NBI) refers to a communication interface between a lower layer in a network architecture (like network management or control systems) and higher-level systems (such as business applications or service orchestration platforms). It allows the upper-level systems to monitor, control, and manage the lower-level network functions or resources.
[0064] The system
[0300] includes a monitoring unit
[0304] , The monitoring unit
[0304] is communicatively connected at least to the transceiver unit
[0302] , The monitoring unit
[0304] is configured to monitor, using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests. The monitoring unit
[0304] monitors, using the LB-SA interface, the health status of the one or more registered applications and the one or more operational microservice instances such as a positive health status and a negative health status. In an implementation, the one or more registered application refers to any application or service that is registered within a network management or orchestration framework. Further, the one or more registered applications keep track of their details such as location, status, and available resources. In an exemplary implementation, the one or more operational microservice (MS) instances refer to, such as, but not limited to, inventory microservice and container service adapter (CSA). In an exemplary embodiment, the container service adapter may be a docker service adapter. In an implementation, the registered application may be associated with the operational microservice instances, such as registration details procedure application for inventory microservice.
[0065] The system
[0300] comprises a retrieval unit
[0306] , The retrieval unit
[0306] is connected at least to the monitoring unit
[0304] , The retrieval unit
[0306] is configured to fetch, via an orchestrator manager, a real time health status of the one or more operational microservice instances. After receiving the health status (e.g., positive or negative) from the monitoring unit
[0304] , the retrieval unit
[0306] may fetch the real-time health status of the one or more operational microservice instances from the orchestrator manager. In an exemplary implementation, the one or more microservice (MS) instances may be such as ‘MS-1 instance- 1’, ‘MS-2 instance-2’ and ‘MS-n instance-n’. The retrieval unit
[0206] may fetch real-time health status such as the positive health status of the ‘MS-1 instance-T, the negative health status of ‘MS-2 instance-2’, and the positive health status of ‘MS-n instance-n’ via the orchestrator manager. The orchestrator manager stores real time health status of the one or more operational microservice instances.
[0066] The system
[0300] comprises a determination unit
[0308] , The determination unit
[0308] is connected at least to the retrieval unit
[0306] , The determination unit
[0308] is configured to determine, using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances. Based on the health status (e.g., positive health or negative health) of the one or more operational microservice instances, the determination unit
[0308] is configured to determine the optimal server from the plurality of servers. The load balancers may store details of the plurality of servers such as active servers, capacity of servers, available servers, server location and storage. The determination unit
[0308] may determine the optimal server based on the stored details of the plurality of servers in the load balancer. In an implementation, the determination unit
[0308] may use one or more selection algorithm or set of instructions for selecting the optimal server.
[0067] The system
[0300] comprises the transceiver unit
[0302] , The transceiver unit
[0302] is further configured to distribute, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server. After determining the optimal server via the determination unit
[0308] , the transceiver unit
[0302] is further configured to distribute the one or more requests (e.g., incoming or outgoing) among the one or more operational microservice instances to the optimal server using the LB-SA interface.
[0068] In an exemplary implementation, the load balancer scales atleast one of the one or more registered applications and one or more operational microservice instances based on the traffic load. In an implementation, the load balancer is configured to monitor microservices such as inventory microservice instances and one or more registered applications associated with other microservices details registration. If any inventory instance is down and / or performance is degrading then for managing the traffic load, the load balancer performs scaling of the inventory microservice instance to manage the traffic load.
[0069] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various the components / units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements andsubstitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.
[0070] Referring to FIG. 4 an exemplary method flow diagram
[0400] , for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method
[0400] is performed by the system
[0300] , As shown in FIG. 4, the method
[0400] starts at step
[0402] ,
[0071] At step
[0404] , the method
[0400] as disclosed by the present disclosure comprises receiving, by a transceiver unit
[0302] using the interface, one or more requests at a load balancer. The transceiver unit
[0302] may receive the one or more requests such as but not limited to, at least one of: a load balancer request, a hypertext transfer protocol (HTTP) request from the load balancer. The one or more requests may be associated with incoming or outgoing network traffic to balance the traffic load in the network. The interface is a Load Balancer-Service Adapter (LB- SA) interface to connect the load balancer with the service adapter or container service adapter. In an example, the one or more requests are received at the load balancer from a northbound interface (NBI). The northbound interface (NBI) refers to a communication interface between a lower layer in a network architecture (like network management or control systems) and higher-level systems (such as business applications or service orchestration platforms). It allows the upper-level systems to monitor, control, and manage the lower-level network functions or resources.
[0072] Next, at step
[0406] , the method
[0400] as disclosed by the present disclosure comprises monitoring, by a monitoring unit
[0304] using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests. The monitoring unit
[0304] monitors using the LB-SA interface the health status of the one or more registered applications and the one or more operational microservice instances such as a positive health status and a negative health status. In an implementation, the one or more registered application refers to any application or service that is registered within a network management or orchestration framework. Further, the one or more registered applications keep track of their details such as location, status, and available resources. In an exemplary implementation, the one or more operational microservice (MS) instances refer to, such as, but not limited to, instances associated with inventory microservice and container service adapter (CSA). In an exemplary implementation, the container service adapter may be a docker service adapter. In an implementation, the registered application may be associated withthe operational microservice instances, such as registration details procedure application for inventory microservice.
[0073] Next, at step
[0408] , the method
[0400] as disclosed by the present disclosure comprises fetching, by a retrieval unit
[0306] , via an orchestrator manager, a real time health status of the one or more operational microservice instances. After receiving the health status (e.g., positive or negative) from the monitoring unit
[0304] , the retrieval unit
[0306] may fetch the real time health status of the one or more operational microservice instances via the orchestrator manager. In an exemplary implementation, the one or more microservice (MS) instances may be such as ‘MS-1 instance-1’, ‘MS-2 instance-2’ and ‘MS-n instance-n’. The retrieval unit
[0306] may fetch real time health status such as positive health status of the ‘MS-1 instance-1’, negative health status of ‘MS-2 instance-2’, and positive health status of ‘MS-n instance-n’ at the orchestrator manager. The orchestrator manager stores real time health status of the one or more operational microservice instances at the orchestrator manager.
[0074] Next, at step
[0410] , the method
[0400] as disclosed by the present disclosure comprises determining, by a determination unit
[0308] using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances. Based on the health status (e.g., positive health or negative health) of the one or more operational microservice instances, the determination unit
[0310] may determine the optimal server from the plurality of servers. The load balancers may store details of the plurality of servers such as active servers, capacity of servers, available servers, server location and storage. The determination unit
[0308] may determine the optimal server based on the stored details of the plurality of servers the load balancer. In an implementation, the determination unit
[0310] may use one or more selection algorithms or set of instructions for selecting the optimal server.
[0075] Next, at step
[0412] , the method
[0400] as disclosed by the present disclosure comprises distributing, by the transceiver unit
[0302] , using the interface, the one or more requests among the one or more operational microservice instances to the optimal server. After determining the optimal server via the determination unit
[0310] , the transceiver unit
[0302] further may distribute the one or more requests (e.g., incoming or outgoing) among the one or more operational microservice instances to the optimal server using the LB-SA interface.
[0076] Thereafter, the method
[0400] terminates at step
[0414] ,
[0077] FIG. 5 shows an exemplary block diagram of a system
[0500] for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure. As shown in FIG. 5, the system
[0500] comprises a load balancer (LB)
[0502] node and a container service adapter (CSA or SA) node
[0504] , More particularly, the LB-SA interface connects the load balancer with the Container service adapter (CSA). In an exemplary embodiment, the container service adapter may be a docker service adapter. The role of the LB- SA interface is to distribute all incoming and / or outgoing requests to balance load equally in the CSA or SA service. The LB-SA interface automatically distributes incoming traffic across multiple instances of CSA service. As used herein, the CSA is a microservices-based system designed to deploy and manage Container Network Functions (CNFs) and their components (CNFCs) across container nodes. In an exemplary implementation, the container node may be a docker node. The CSA adapter offers representational state transfer (REST) endpoints for key operations, including uploading container images to a container registry, terminating CNFC instances, and creating docker volumes and networks. In an embodiment, the container registry may be a docker registry. Further, in an embodiment, the container volumes and networks may be docker volumes and networks. CNFs, which are network functions packaged as containers, may consist of multiple CNFCs. The CSA facilitates the deployment, configuration, and management of these components by interacting with container's API, ensuring proper setup and scalability within a containerized environment. In an embodiment, the container’s API may be a docker’s API. This approach provides a modular and flexible framework for handling network functions in a virtualized network setup. Using the interface, the load balancer monitors a health status of one or more registered applications and one or more operational microservice instances., in response to the received one or more requests. Further, using the interface, the load balancer determines an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances, fetched via an orchestrator manager. Thereafter, using the interface, the load balancer distributes the one or more requests among the one or more operational microservice instances to the optimal server.
[0078] Referring to FIG. 6, an exemplary block diagram
[0600] for distributing a traffic load using an interface, in accordance with exemplary implementations of the present disclosure. As shown in FIG. 6, the system
[0600] comprises a User Interface (UI / UX)
[0602] , Identity Access Management (IAM)
[0604] node, Elastic Load Balancer (ELB1) [606a] node, ELB2 [606b] node, Event Routing Management (ERM) node
[0608] , ELB [610a-610b], Container Service Adapter (CSA) [616a-616n], Orchestrator manager (OM)
[0612] , Central Log management System (CLMS) node
[0614] and Elastic Search Cluster
[0618] ,
[0079] As used herein, container service adapter (CSA) (may be a docker service adapter) refers to such as, unit, server or service which facilitates communication between container and other services or microservices.
[0080] As used herein, orchestrator manager
[0612] refers to such as, unit, node, service or server, which manages service operations of different microservices in the network. Orchestrator manager maintains records details of the operational microservices and share details of the microservices with other microservices for the operational communication.
[0081] As used herein, Identity Access Management (IAM)
[0604] refers to such as, service, unit, platform for providing defence against malicious or unauthorised login activity and safeguards credentials by enabling risk-based access controls, ensuring identity protection and authentication processes.
[0082] As used herein, Elastic Load Balancer (ELB)
[0606] refers to such as service, unit, platform for managing and distributing incoming traffic efficiently across a group of supported servers, microservices and units in a manner that may increase speed and performance of the network.
[0083] As used herein, Event Routing Management (ERM)
[0608] refers to such as, node, server, service or platform for monitoring and triggering various actions or responses within the system based on detected event. For example, for any microservice instance down, the ERM may trigger any alert for taking an action to overcome the service breakdown condition in the network.
[0084] As used herein, Central Log management System (CLMS)
[0614] refers to such as service or platform which may collect log data from multiple sources and may consolidate the collected data. This consolidated data is then presented on a central interface which may be accessed by a user such as network administrator or authorised person.
[0085] As used herein, Elastic Search Cluster (ESC)
[0618] refers to such as, a group of servers, nodes that work together and form a cluster for distributing tasks, searching and indexing across all the nodes in the cluster.
[0086] In an implementation, Microservices (MS) instances, such as CSA instances, run in n-way active mode. Each MS instance or CSA instance is being served with a pair of Elastic Load Balancers (ELB). The ELB distributes the load on MS instances in a round-robin manner.ELB ensures that the event acknowledgment against any event that is sent by the MS instance to the subscribed MS is returned to the same MS instance that has published the event. Further, all microservices do not only maintain the state information in their local cache but also persist it in the Elastic Search database. In case one of the MS instances goes down, the orchestrator manager detects it and broadcasts the status to other running MS instances and also the ELB serving the MS. The ELB as such distributes the ingress traffic on the remaining available instances. The n- way active model for deployment of MS instances ensures the availability of a microservice to serve the traffic even if any instance goes down. In an embodiment, one of the available MS instances takes ownership of the instance which has gone down. It fetches the state information of the incomplete transaction being served by the instance gone down from ES and re-executes them. In case any transaction has not persisted, there may be a timeout, and the publisher MS of that event will re-transmit the same event for execution.
[0087] The present disclosure may relate to a non-transitory computer readable storage medium storing instructions for distributing a traffic load using an interface, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit
[0302] of the system to receive, using the interface, one or more requests at a load balancer; a monitoring unit
[0304] connected at least to the transceiver unit
[0302] , the monitoring unit
[0304] of the system to monitor, using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests; a retrieval unit
[0306] connected at least to the monitoring unit
[0304] , the retrieval unit
[0306] of the system to fetch, via an orchestrator manager, a real time health status of the one or more operational microservice instances; a determination unit
[0308] connected at least to the retrieval unit
[0306] , the determination unit
[0308] of the system to determine, using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances; and the transceiver unit
[0302] of the system further to distribute, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.
[0088] As is evident from the above, the present disclosure provides a technically advanced solution of efficient system and method for handling heavy load traffic and distributing the load among servers such that no server is overloaded or overworked. The present method and system provide a LB-SA interface (Load Balancer- Service Adapter interface), which ensures that no server gets overloaded due to bulk traffic. The present system and method provide LB-SA interface, which distributes incoming / outgoing requests easily among all SA instances. Thepresent method and system enable all instantiation, termination and CNF information (metrics, state) operations on the cloud which may be performed on Management and Orchestration (MANO). The present method and system support HTTP / HTTPS configurations in parallel. The present method and system route client requests across all servers in a manner that maximizes speed and capacity utilization. The present method and system may perform header-based routing which may save time and database hits.
[0089] While considerable emphasis has been placed herein on the disclosed embodiments, it will be appreciated that many embodiments can be made and that many changes can be made to the embodiments without departing from the principles of the present disclosure.These and other changes in the embodiments of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
Claims
We Claim:
1. A method for distributing a traffic load using an interface, the method comprising: receiving, by a transceiver unit [302] using the interface, one or more requests at a load balancer; monitoring, by a monitoring unit [304] using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests; fetching, by a retrieval unit [306], via an orchestrator manager, a real time health status of the one or more operational microservice instances; determining, by a determination unit [308] using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances; and distributing, by the transceiver unit [302], using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.
2. The method as claimed in claim 1, wherein the one or more requests comprises at least one of: a load balancer request, or an HTTP request.
3. The method as claimed in claim 1, wherein the health status of the one or more registered applications and the one or more operational microservice instances comprises of a positive health status and a negative health status.
4. The method as claimed in claim 1, wherein the interface is a Load Balancer- Service Adapter (LB-SA) interface to connect the load balancer with the service adapter.
5. A system for distributing a traffic load using an interface, the system comprising: a transceiver unit [302] configured to receive, using the interface, one or more requests at a load balancer; a monitoring unit [304] connected at least to the transceiver unit [302], the monitoring unit is configured to monitor, using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests; a retrieval unit [306] connected at least to the monitoring unit [304], the retrieval unit [306] is configured to fetch, via an orchestrator manager, a real time health status of the one or more operational microservice instances;a determination unit [308] connected at least to the retrieval unit [306], the determination unit [308] is configured to determine, using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances; and the transceiver unit [302] is further configured to distribute, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.
6. The system as claimed in claim 5, wherein the one or more requests comprises at least one of a load balancer request, an HTTP request.
7. The system as claimed in claim 5, wherein the health status of the one or more registered applications and the one or more operational microservice instances comprises of a positive health status and a negative health status.
8. The system as claimed in claim 5, wherein the interface is a Load Balancer-Service Adapter (LB-SA) interface to connect the load balancer with the service adapter.
9. A non-transitory computer readable storage medium storing instructions for distributing a traffic load using an interface, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit [302] of the system to receive, using the interface, one or more requests at a load balancer; a monitoring unit [304] of the system to monitor, using the interface, a health status of one or more registered applications and one or more operational microservice instances, in response to the received one or more requests; a retrieval unit [306] of the system to fetch, via an orchestrator manager, a real-time health status of the one or more operational microservice instances; a determination unit [308] of the system to determine, using the interface, an optimal server from a plurality of servers based on the health status of the one or more operational microservice instances; and the transceiver unit [302] of the system to distribute, using the interface, the one or more requests among the one or more operational microservice instances to the optimal server.
Citation Information
Patent Citations
Server load distribution system
JP2012088797A
Server system, method for controlling server system, and storage medium
US20170208122A1
Distributed load balancing system, health check method, and service node
US20180167453A1
Cited By
Self-adaptive scheduling method based on real-time flow characteristic perception and distribution and forwarding server
CN122476066A