Method and system for communication between a microservice and a policy execution engine (PEEGN)
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- JIO PLATFORMS LTD
- Filing Date
- 2024-09-28
- Publication Date
- 2026-07-01
AI Technical Summary
Current communication systems between the Event Routing Manager (ERM) and the Policy Execution Engine (PEEGN) face challenges such as request routing inefficiencies, operational issues for new request subscribers and publishers, and service impacting problems, which hinder system performance and request reusability.
A method and system for communication between a microservice and a policy execution engine (PEEGN) that involves receiving a request message at the ERM unit, determining the target publisher, transmitting the request message, receiving a response, identifying the subscriber, and transmitting the response, thereby optimizing communication and request routing.
The proposed solution enhances system performance by simplifying request routing, improving operational capabilities, and ensuring request reusability without service impact, thereby optimizing communication between the ERM and PEEGN.
Smart Images

Figure IN2024051893_03042025_PF_FP_ABST
Abstract
Description
METHOD AND SYSTEM FOR COMMUNICATION BETWEEN A MICROSERVICE AND A POLICY EXECUTION ENGINE (PEEGN)FIELD OF INVENTION
[0001] The present disclosure generally relates to network performance management systems. More particularly, embodiments of the present disclosure relate to methods and systems for communication between a microservice and a policy execution engine (PEEGN).BACKGROUND
[0002] The following description of the related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section is used only to enhance the understanding of the reader with respect to the present disclosure, and not as an admissions of the prior art.
[0003] Wireless communication technology has rapidly evolved over the past few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on 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] Policy Execution Engine (PEEGN) provides network NFV SDN Platform functionality to support dynamic requirements of resource management and network service orchestration in the virtualized network (VNF). The PEEGN enriches the NFV SDN Platform with automatic scaling and healing functionality of network components and services. The PEEGN provide policies for Resource, Security, Availability, and Scalability. ERM is an event routing manager, which is usedto route all the incoming requests to the PEEGN and all the outgoing requests from the PEEGN. This interface follows a subscription and notification model based on the events which are published to it. Each micro service registers its standard platform events with the ERM. There are many problems faced with the communication between the PEEGN and the ERM such as request routing, operational issues for new request subscriber and publisher, service impacting, and similar request cannot be reused.
[0005] Thus, there exists an imperative need in the art to optimize system performance by enhancing operation capability and simplifying routing request based on robust communication between the Event Routing Manager (ERM) and the Policy Execution Engine (PEEGN) via PE EM interface, which the present disclosure aims to address.SUMMARY
[0006] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0007] An aspect of the present disclosure may relate to a method for communication between a microservice and a policy execution engine (PEEGN). The method includes receiving, by a transceiver unit, at an Event Routing Manager (ERM) unit, a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN and the microservice. The method further includes determining, by a determination unit, at the ERM unit, a target publisher, associated with the request message, based on the publisher type, wherein the publisher type is the PEEGN. The method further includes transmitting, by the transceiver unit, from the ERM unit to the target publisher, the request message; receiving, by the transceiver unit, at the ERM unit, from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message. The method further includes identifying, by an identification unit, at the ERM unit, a subscriber, associated with the request message, based on the subscriber type. The method further includes transmitting, by the transceiver unit, from the ERM unit to the subscriber, the response associated with the request message
[0008] In an exemplary aspect of the present disclosure, the method further comprises identifying, by the identification unit, at the ERM unit, the subscriber as the microservice in an event the target publisher is the PEEGN.
[0009] In an exemplary aspect of the present disclosure, the event type is at least one of an event and an acknowledgement for an event.
[0010] In an exemplary aspect of the present disclosure, the method further comprises transmitting, by the transceiver unit, from the ERM unit to the target publisher, the request message, in a scenario the event type is the event.
[0011] In an exemplary aspect of the present disclosure, the method further comprises transmitting, by the transceiver unit, from the ERM unit to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
[0012] Another aspect of the present disclosure may relate to a system for communication between a microservice and a policy execution engine (PEEGN). The system comprises an event routing manager (ERM) unit comprising a transceiver unit
[0302] , The transceiver unit
[0302] is configured to receive a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN. The transceiver unit
[0302] is further configured to transmit to the target publisher, the request message. The transceiver unit
[0302] is further configured to receive from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message. The system further comprises an identification unit
[0304] configured to identify a subscriber, associated with the request message, based on the subscriber type. The transceiver unit
[0302] is further configured to transmit to the subscriber, the response associated with the request message.
[0013] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for communication between a microservice and a policy execution engine (PEEGN), the instructions include executable code which, when executed by one or more units of a system, causes a transceiver unit to receive a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN. The executable code when executed further causes transceiver unit to transmit to the target publisher, the request message. The executable code when executed further causes the transceiver unit to receive from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message. The executable code when executed further causes an identification unit to identify a subscriber, associated with the requestmessage, based on the subscriber type. The executable code when executed further causes the transceiver unit to transmit to the subscriber the response associated with the request message.OBJECTS OF THE DISCLOSURE
[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 communication between a microservice and a policy execution engine (PEEGN).
[0016] It is an object of the present disclosure to provide a system and a method optimizing system performance by enhancing operation capability and simplifying routing request based on robust communication between Event Routing Manager (ERM) unit and Policy Execution Engine (PEEGN) via PE EM interface.
[0017] It is yet another object of the present disclosure to provide a solution to enhance request reusability and avoid any non-service impact.
[0018] It is yet another object of the present disclosure to provide a solution to simplify operational issues to add or modify request subscriber publishers.BRIEF 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 representation of a management and orchestration (MANO) architecture, in accordance with exemplary implementation of the present disclosure.
[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 communication between a microservice and a policy execution engine (PEEGN), in accordance with exemplary implementations of the present disclosure.
[0023] FIG. 4 illustrates a method flow diagram for communication between a microservice and a policy execution engine (PEEGN), in accordance with exemplary implementations of the present disclosure.
[0024] FIG. 5 illustrates an exemplary block diagram of a system architecture for communication between a microservice and a policy execution engine (PEEGN), in accordance with exemplary implementations of the present disclosure.
[0025] FIG. 6 illustrates a process flow diagram for communication between a microservice and a policy execution engine (PEEGN), 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 skills 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 microprocessorsin 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 smartdevice”, “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 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 “interface” or “user interface” refers to a shared boundary across which two or more separate components of a system exchange information or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
[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, amicrocontroller, 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 includes at least one receiver and at least one transmitter configured respectively for receiving and transmitting data, signals, information or a combination thereof between units / components within the system and / or connected with the system.
[0038] As discussed in the background section, the current known solutions have several shortcomings. The present disclosure aims to overcome the above-mentioned and other existing problems in this field of technology by providing a method and system for communication between a microservice and a policy execution engine (PEEGN).
[0039] Referring to FIG. 1 an exemplary block diagram representation of a management and orchestration (MANO) architecture
[0100] , in accordance with exemplary implementation of the present disclosure is illustrated. 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 of Virtual Network Function (VNF) and Cloud-native / Container Network Function (CNF). 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.
[0040] 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.
[0041] 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 determining on which server of the communication network the microservice will be instantiated. The VNF lifecycle manager (compute)
[1042] will manage the overall flow ofincoming / 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.
[0042] The platforms foundation services module
[0106] further comprises a microservices edge load balancer
[1062] ; an identify & access manager
[1064] ; a command line interface (CLI)
[1066] ; a central logging manager
[1068] ; and an event routing manager (ERM)
[1070] (alternatively referred to as ERM unit
[1070] herein). The microservices edge 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 line interface (CLI)
[1066] is used to provide commands to execute certain processes which require changes during the run time. The central logging manager
[1068] is responsible for keeping the logs of every service. The logs are generated by the MANO architecture
[0100] , The logs are used for debugging purposes. The ERM unit
[1070] is responsible for routing the events i.e., the application programming interface (API) hits to the corresponding services.
[0043] 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 (PEEGN)
[1088] ; a capacity monitoring manager (CP)
[1090] ; a release management (mgmt.) repository
[1092] ; a configuration manager & Golden Configuration Template (GCT))
[1094] ; an NFV platform decision analytics
[1096] ; a platform NoSQL DB
[1098] ; a platform schedulers and cron jobs (PSC) service
[1100] ; a VNF backup & upgrade manager
[1102] ; a microservice 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 PEEGN
[1088] isresponsible for managing all the policies. The capacity monitoring manager (CP)
[1090] is responsible for sending the request to the PEEGN
[1088] , The capacity monitoring manager (CP)
[1090] is capable of monitoring usage of network resources such as but not limited to CPU utilization, RAM utilization and storage utilization across all the instances of the virtual infrastructure manager (VIM) or simply the NFV infrastructure monitoring manager
[1082] , The capacity monitoring manager (CP)
[1090] is also capable of monitoring said network resources for each instance of the VNF. The capacity monitoring manager (CP)
[1090] is responsible for constantly tracking the network resource utilization. The release management (mgmt.) repository
[1092] is responsible for managing the releases and the images of all the vendor network nodes. The configuration manager & GCT
[1094] manages the configuration and GCT of all the vendors. The NFV platform decision analytics
[1096] helps in deciding the priority of using the network resources. It is further noted that the PEEGN
[1088] , the configuration manager & GCT
[1094] and the NFV platform decision analytics
[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 (PSC) service
[1100] schedules the task such as but not limited to triggering of an event, traversing 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 microservice auditor
[1104] audits the microservices. For e.g., in a hypothetical case, instances not being instantiated by the MANO architecture
[0100] and using the network resources then the microservice 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 architecture
[0100] , The platform operations, administration, and maintenance manager
[1106] is used for newer instances that are spawning.
[0044] The platform resource adapters and utilities module
[0112] further comprises a platform external API adaptor and gateway
[1122] ; a generic decoder and indexer (XML, CSV, JSON)
[1124] ; a docker service adaptor
[1126] ; an API adapter
[1128] ; and a NFV gateway
[1130] , The platform external API adaptor and gateway
[1122] is responsible for handling the external services (to the MANO architecture
[0100] ) that require the network resources. The generic decoder and indexer (XML, CSV, JSON)
[1124] directly gets the data of the vendor system in the XML, CSV, JSON format. The docker service adaptor
[1126] is the interface provided between the telecom cloud and the MANO architecture
[0100] for communication. The API adapter
[1128] is used to connect with the virtual machines (VMs). The NFV gateway
[1130] is responsible for providing the path to each service going to / incoming from the MANO architecture
[0100] ,
[0045] FIG. 2 illustrates an exemplary block diagram of a computing device
[0200] upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. In an implementation, the computing device
[0200] may also implement a method for communication between a microservice and a policy execution engine (PEEGN) utilising the system
[0300] , In another implementation, the computing device
[0200] itself implements the method for communication between a microservice and a policy execution engine (PEEGN) 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.
[0046] The computing device
[0200] may include a bus
[0202] or other communication mechanism for communicating information, and a processor
[0204] coupled with bus
[0202] for processing information. The 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 specified in the instructions. The computing device
[0200] further includes a read only memory (ROM)
[0208] or other static storage device coupled to the bus
[0202] for storing static information and instructions for the processor
[0204] ,
[0047] 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 offreedom 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.
[0048] 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.
[0049] 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.
[0050] 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] , a 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.
[0051] The computing device
[0200] encompasses a wide range of electronic devices capable of processing data and performing computations. Examples of computing device
[0200] include, butare not limited only to, personal computers, laptops, tablets, smartphones, servers, and embedded systems. The devices may operate independently or as part of a network and can perform a variety of tasks such as data storage, retrieval, and analysis. Additionally, computing device
[0200] may include peripheral devices, such as monitors, keyboards, and printers, as well as integrated components within larger electronic systems, showcasing their versatility in various technological applications.
[0052] Referring to FIG. 3, an exemplary block diagram of a system
[0300] for communication between a microservice and a policy execution engine (PEEGN), is shown, in accordance with the exemplary implementations of the present disclosure. The system
[0300] comprises at least ERM unit
[1070] , The ERM unit
[1070] further comprises at least one transceiver unit
[0302] , and at and at least one identification unit
[0304] , Also, all of the components / units of the system
[0300] are assumed to be connected to each other unless otherwise indicated below. As shown in the figures all units shown within the system
[0300] should also be assumed to be connected to each other. Also, in FIG. 3 only a few units are shown, however, the system
[0300] may comprise multiple such units or the system
[0300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system
[0300] may be present in a user device / user equipment
[0102] to implement the features of the present disclosure. The system
[0300] may be a part of the user device
[0102] / or may be independent of but in communication with the user device
[0102] (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.
[0053] The system
[0300] is configured for communication between a microservice and a policy execution engine (PEEGN), with the help of the interconnection between the components / units of the system
[0300] ,
[0054] The system
[0300] comprises an event routing manager (ERM) unit
[1070] , The ERM unit
[1070] further comprises a transceiver unit
[0302] configured to receive a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN.
[0055] The transceiver unit
[0302] receives the request message for registering an event. The request message comprises at least the event type and the publisher type. The publisher is at least one of the PEEGN.
[0056] In an exemplary aspect, the request message includes the event type which specifies the nature of the event. For example, event type may relate to a request for resource allocation.
[0057] In an exemplary aspect, for each publisher type, there can be multiple subscribers.
[0058] In an exemplary aspect, the event type is at least one of an event and an acknowledgement for an event.
[0059] In an exemplary aspect, whenever the event type is received, the acknowledgment is sent in the form of notification by the ERM unit
[1070] to the subscribers informing them of the said event.
[0060] The transceiver unit
[0302] is further configured to transmit to the target publisher, the request message.
[0061] The transceiver unit
[0302] transmits to the target publisher, the request message. In an exemplary aspect, target publisher refers to the specific or targeted microservice or the Policy Execution Engine (PEEGN) that is assigned to handle the request message transmitted by the transceiver unit
[0302] ,
[0062] The transceiver unit
[0302] is further configured to transmit, to the target publisher, the request message, in a scenario the event type is the event.
[0063] The transceiver unit
[0302] transmits to the target publisher, the request message, in a scenario the event type is the event.
[0064] The transceiver unit
[0302] is further configured to receive from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message.
[0065] The transceiver unit
[0302] receives from the target publisher, the response for the request message. The response further comprises the subscriber type associated with the request message. In an exemplary aspect, when the target publisher processes the request message, it sends back the response that includes the subscriber type related to the initially sent request.
[0066] In an exemplary aspect, the subscriber type may include such as but not limited to containerized network function lifecycle manager (CNFLM)
[1052] , network function virtualization (NFV) platform decision analytics (NPDA)
[1096] , physical virtual resource manager (PVIM)
[1050] (also referred as physical and virtual resource manager
[1050] ), policy execution engine (PEEGN)
[1088] , user interface (U.I) etc.
[0067] The system
[0300] further comprises an identification unit
[0304] configured to identify a subscriber, associated with the request message, based on the subscriber type.
[0068] The identification unit
[0304] identifies the subscriber, associated with the request message based on the subscriber type.
[0069] The identification unit
[0304] is further configured to identify the subscriber as the microservice in an event the target publisher is the PEEGN.
[0070] In an exemplary aspect, in the event the target publisher is the PEEGN, the identification unit
[0304] identifies the subscriber as the microservice.
[0071] The transceiver unit
[0302] is further configured to transmit to the subscriber, the response associated with the request message.
[0072] Based on the identification of the subscriber as the microservice, the transceiver unit
[0302] transmits to the subscriber the response associated with the request message.
[0073] The transceiver unit
[0302] is further configured transmit, to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
[0074] The transceiver unit
[0302] transmits to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
[0075] Referring to FIG. 4, an exemplary method flow diagram
[0400] for communication between a microservice and a policy execution engine (PEEGN), in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method
[0400] is performed by the system
[0300] , Further, in an implementation, the system
[0300] may be present in a server device to implement the features of the present disclosure. Also, as shown in FIG. 4, the method
[0400] starts at step
[0402] ,
[0076] At step 404, the method
[0400] comprises receiving, by a transceiver unit
[0302] , at the ERM unit
[1070] , a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN.
[0077] The transceiver unit
[0302] receives the request message for registering an event. The request message comprises at least the event type and the publisher type. The publisher is at least one of the PEEGN.
[0078] In an exemplary aspect, the request message includes the event type which specifies the nature of the event. For example, event type may relate to a request for resource allocation.
[0079] In an exemplary aspect, for each publisher type, there can be multiple subscribers.
[0080] In an exemplary aspect, the event type is at least one of an event and an acknowledgement for an event.
[0081] In an exemplary aspect, whenever the event type is received, the acknowledgment is sent in the form of notification by the ERM unit
[1070] to the subscribers informing them of the said event.
[0082] At step 406, the method
[0400] comprises transmitting, by the transceiver unit
[0302] , from the ERM unit
[1070] , to the target publisher, the request message.
[0083] The transceiver unit
[0302] transmits to the target publisher, the request message. In an exemplary aspect, target publisher refers to the specific or targeted microservice or the Policy Execution Engine (PEEGN) that is assigned to handle the request message transmitted by the transceiver unit
[0302] ,
[0084] The method
[0400] further comprises transmitting, by the transceiver unit
[0302] , from the ERM unit
[1070] , to the target publisher, the request message, in a scenario the event type is the event.
[0085] The transceiver unit
[0302] transmits to the target publisher, the request message, in a scenario the event type is the event.
[0086] At step 408, the method
[0400] comprises receiving, by the transceiver unit
[0302] , at the ERM unit
[1070] , from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message.
[0087] The transceiver unit
[0302] receives from the target publisher, the response for the request message. The response further comprises the subscriber type associated with the request message. In an exemplary aspect, when the target publisher processes the request message, it sends back the response that includes the subscriber type related to the initially sent request.
[0088] In an exemplary aspect, the subscriber type may include such as but not limited to containerized network function lifecycle manager (CNFLM)
[1052] , network function virtualization (NFV) platform decision analytics (NPDA)
[1096] , physical virtual resource manager (PVIM)
[1050] (also referred as physical and virtual resource manager
[1050] ), policy execution engine (PEEGN)
[1088] , user interface (U.I) etc.
[0089] At step 410, the method
[0400] comprises identifying, by an identification unit
[0304] , at the ERM unit
[1070] , a subscriber, associated with the request message, based on the subscriber type.
[0090] The identification unit
[0304] identifies the subscriber, associated with the request message based on the subscriber type.
[0091] The method further comprises identifying, by the identification unit
[0304] , at the ERM unit
[1070] , the subscriber as the microservice in an event the target publisher is the PEEGN.
[0092] In an exemplary aspect, in the event the target publisher is the PEEGN, the identification unit
[0304] identifies the subscriber as the microservice.
[0093] At step 412, the method
[0400] comprises transmitting, by the transceiver unit
[0302] , from the ERM unit
[1070] , to the subscriber, the response associated with the request message.
[0094] Based on the identification of the subscriber as the microservice, the transceiver unit
[0302] transmits to the subscriber the response associated with the request message.
[0095] The method
[0400] further comprises transmitting, by the transceiver unit
[0302] , from the ERM unit
[1070] , to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
[0096] The transceiver unit
[0302] transmits to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
[0097] Thereafter, at step
[0414] , the method
[0400] is terminated.
[0098] Referring to FIG. 5, an exemplary block diagram of a system architecture
[0500] for communication between a microservice and a policy execution engine (PEEGN), is shown, in accordance with the exemplary implementations of the present disclosure. The system architecture comprises at least one microservice
[0502] , at least one PEEGN
[1088] , and at least one ERM unit
[1070] ,
[0099] In an exemplary aspect, when a microservice
[0502] wants to communicate with PEEGN
[1088] , it first registers it as an event at ERM unit
[1070] , In an exemplary aspect, ERM unit
[1070] is an event routing manager, which is used to route all the incoming request to PEEGN
[1088] and all the outgoing request from PEEGN
[1088] , This interface follows a subscription and notification model based on the events which are published to it. Each micro service registers its standard platform events with the ERM unit
[1070] , For each event, there can be multiple subscribers. Whenever the event of interest is received, the notifications are sent by the ERM unit
[1070] to the subscribers informing them of the said event.
[0100] Referring to FIG. 6, an exemplary process
[0600] flow diagram for communication between a microservice and a policy execution engine (PEEGN), in accordance with exemplary implementations of the present disclosure is shown. In an implementation the process
[0600] is performed by the system
[0300] , Also, as shown in FIG. 6, the process
[0600] starts at step
[0602] ,
[0101] At step
[0604] , If any microservice
[0502] wants to send request to PEEGN
[1088] then that event should be registered in ERM unit
[1070] as publisher as PEEGN
[1088] and subscriber as other microservice
[0502] ,
[0102] At step
[0606] , If PEEGN
[1088] wants to send request to other microservice then that event should be registered in ERM unit
[1070] with subscriber as PEEGN
[1088] and publisher as other microservice
[0502] ,
[0103] At step
[0608] , the process
[0600] comprises checking, at PE EM interface, in the event for publisher name as PEEGN
[1088] and if finds true then it will send request to PEEGN
[1088] ,
[0104] At step
[0610] , the process
[0600] comprises checking, at PE EM interface, the event which is being sent by PEEGN
[1088] for the publisher’s name and redirects the request to same publisher.
[0105] At step
[0612] , in case the event type is “event” then ERM unit
[1070] will pass the request to publisher, and if event type is “eventAck” then ERM unit
[1070] will pass the request to subscriber.
[0106] At step
[0614] , the process
[0600] terminates.
[0107] The present disclosure further discloses a non-transitory computer readable storage medium storing instructions for communication between a microservice and a policy execution engine (PEEGN), the instructions include executable code which, when executed by one or more units of a system, causes a transceiver unit
[0302] to receive a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN. The executable code when executed further causes transceiver unit
[0302] to transmit to the target publisher, the request message. The executable code when executed further causes transceiver unit
[0302] to receive from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message. The executable code when executed further causes an identification unit
[0304] configured to identify a subscriber, associated with the request message, based on the subscriber type. The executable code when executed further causes the transceiver unit
[0302] is further configured to transmit to the subscriber, the response associated with the request message.
[0108] As is evident from the above, the present disclosure provides a technically advanced solution for communication between a microservice and a policy execution engine (PEEGN). The present invention provides a solution for optimizing system performance by enhancing operation capability and simplifying routing request based on robust communication between Event Routing Manager (ERM) unit and Policy Execution Engine (PEEGN) via PE EM interface. The present solution further provides easy Request routing that increases overall system efficiency, operational issue to add / modify request subscriber publisher. Furthermore, the present solution enhances request reusability ensuring that there is no nonservice impact.
[0109] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various components / units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.
[0110] While considerable emphasis has been placed herein on the disclosed implementations, it will be appreciated that many implementations can be made and that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
Claims
We Claim:
1. A method for communication between a microservice and a policy execution engine (PEEGN), the method comprising: receiving, by a transceiver unit [302], at an event routing manager (ERM) unit [1070], a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN;- transmitting, by the transceiver unit [302], from the ERM unit [1070], to a target publisher, the request message; receiving, by the transceiver unit [302], at the ERM unit [1070], from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message; identifying, by an identification unit [304], at the ERM unit [1070], a subscriber, associated with the request message, based on the subscriber type; and- transmitting, by the transceiver unit [302], from the ERM unit [1070], to the subscriber, the response associated with the request message.
2. The method as claimed in claim 1, the method further comprises identifying, by the identification unit [304], at the ERM unit [1070], the subscriber as the microservice in an event the target publisher is the PEEGN.
3. The method as claimed in claim 1, wherein the event type is at least one of an event and an acknowledgement for an event.
4. The method as claimed in claim 3, the method further comprises transmitting, by the transceiver unit [302], from the ERM unit [1070], to the target publisher, the request message, in a scenario the event type is the event.
5. The method as claimed in claim 3, the method further comprises transmitting, by the transceiver unit [302], from the ERM unit [1070], to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
6. A system for communication between a microservice and a policy execution engine (PEEGN), the system comprising: an event routing manager (ERM) unit [1070] comprising:o a transceiver unit [302] configured to:■ receive a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN;■ transmit to a target publisher, the request message;■ receive from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message; an identification unit [304] configured to identify a subscriber, associated with the request message, based on the subscriber type; and- the transceiver unit [302] is further configured to transmit to the subscriber, the response associated with the request message.
7. The system as claimed in claim 6, wherein the identification unit [304] is further configured to identify the subscriber as the microservice in an event the target publisher is the PEEGN.
8. The system as claimed in claim 6, wherein the event type is at least one of an event and an acknowledgement for an event.
9. The system as claimed in claim 8, wherein the transceiver unit [302] is further configured to transmit, to the target publisher, the request message, in a scenario the event type is the event.
10. The system as claimed in claim 8, the transceiver unit [302] is further configured transmit, to the subscriber, the response associated with the request message, in a scenario the event type is the acknowledgement.
11. A non-transitory computer-readable storage medium storing instruction for communication between a microservice and a policy execution engine (PEEGN), which, when executed by one or more units of a system, causes: a transceiver unit [302] to:■ receive a request message comprising at least an event type and a publisher type, wherein the publisher type is at least one of the PEEGN;■ transmit to a target publisher, the request message;■ receive from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message; an identification unit [304] to identify a subscriber, associated with the request message, based on the subscriber type; and- the transceiver unit [302] further to transmit to the subscriber, the response associated with the request message.