Abstract: The present disclosure relates to a method and a system for communication between a microservice and a policy execution engine (PEEGN). The present disclosure encompasses receiving 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; determining a target publisher, associated with the request message, based on the publisher type, wherein the publisher type is the PEEGN; transmitting to the target publisher, the request message; receiving from the target publisher, a response for the request message, the response comprising a subscriber type associated with the request message; identifying a subscriber, associated with the request message, based on the subscriber type; an transmitting to the subscriber, the response associated with the request message. [FIG. 4]
FORM 2
THE PATENTS ACT, 1970
(39 OF 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
“METHOD AND SYSTEM FOR COMMUNICATION
BETWEEN A MICROSERVICE AND A POLICY EXECUTION
ENGINE (PEEGN)”
We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr.
Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
The following specification particularly describes the invention and the manner in
which it is to be performed.
2
METHOD AND SYSTEM FOR COMMUNICATION BETWEEN A
MICROSERVICE AND A POLICY EXECUTION ENGINE (PEEGN)
FIELD OF INVENTION
5
[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).
10
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
15 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.
20 [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
25 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
30 deployed, promising even faster data speeds, low latency, and the ability to connect
multiple devices simultaneously. With each generation, wireless communication
3
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
5 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
10 used to 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,
15 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
20 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
25
[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.
30
4
[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
5 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
10 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,
15 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
20 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.
25 [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
30 comprises transmitting, by the transceiver unit, from the ERM unit to the subscriber,
5
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
5 communication between a microservice and a policy execution engine (PEEGN).
The system comprises an event routing manager (ERM) unit comprising a
transceiver unit [302]. The transceiver unit [302] 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 [302] is further
10 configured to transmit to the target publisher, the request message. The transceiver
unit [302] 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 [304]
configured to identify a subscriber, associated with the request message, based on
15 the subscriber type. The transceiver unit [302] 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
20 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
25 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 request message,
30 based on the subscriber type. The executable code when executed further causes the
6
transceiver unit to transmit to the subscriber the response associated with the
request message.
OBJECTS OF THE DISCLOSURE
5
[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
10 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
15 (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.
20 [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
25 [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
30 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
7
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.
5
[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.
10 [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
15 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
20 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.
25
[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.
30 [0026] The foregoing shall be more apparent from the following more detailed
description of the disclosure.
8
DETAILED DESCRIPTION
[0027] In the following description, for the purposes of explanation, various
5 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
10 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,
15 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.
20
[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
25 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
30 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
9
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.
5 [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
10 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
15 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
20 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,
25 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”,
30 “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”,
“a wireless communication device”, “a mobile communication device”, “a
10
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,
5 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.
10 [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
15 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
20 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.
25
[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
30 microprocessors in association with a DSP core, a controller, a microcontroller,
11
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
5 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
10 several shortcomings. The present disclosure aims to overcome the abovementioned 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).
15 [0039] Referring to FIG. 1 an exemplary block diagram representation of a
management and orchestration (MANO) architecture [100], in accordance with
exemplary implementation of the present disclosure is illustrated. The MANO
architecture [100] is developed for managing telecom cloud infrastructure
automatically, managing design or deployment design, managing instantiation of a
20 network node(s) etc. The MANO architecture [100] deploys the network node(s) in
the form of Virtual Network Function (VNF) and Cloud-native/ Container Network
Function (CNF). The MANO architecture [100] 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.
25
[0040] As shown in FIG. 1, the MANO architecture [100] comprises a user
interface layer, a network function virtualization (NFV) and software defined
network (SDN) design function module [104]; a platforms foundation services
module [106], a platform core services module [108] and a platform resource
30 adapters and utilities module [112], wherein all the components are assumed to be
12
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 [104] further comprises a VNF
5 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.
10 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
15 processes P1 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
20 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.
25 [0042] The platforms foundation services module [106] 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
30 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
13
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 [100]. The logs
are used for debugging purposes. The ERM unit [1070] is responsible for routing
5 the events i.e., the application programming interface (API) hits to the
corresponding services.
[0043] The platforms core services module [108] further comprises NFV
infrastructure monitoring manager [1082]; an assure manager [1084]; a
10 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
15 & 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
20 performance manager [1086] is responsible for manging the performance counters.
The PEEGN [1088] is responsible 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,
25 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
30 resource utilization. The release management (mgmt.) repository [1092] is
responsible for managing the releases and the images of all the vendor network
14
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
5 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
10 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 [100] and using the network resources then the
microservice auditor [1104] audits and informs the same so that resources can be
15 released for services running in the MANO architecture [100], thereby assuring the
services only run on the MANO architecture [100]. The platform operations,
administration, and maintenance manager [1106] is used for newer instances that
are spawning.
20 [0044] The platform resource adapters and utilities module [112] 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 [100])
25 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 [100] for communication. The API
adapter [1128] is used to connect with the virtual machines (VMs). The NFV
30 gateway [1130] is responsible for providing the path to each service going
to/incoming from the MANO architecture [100].
15
[0045] FIG. 2 illustrates an exemplary block diagram of a computing device [200]
upon which the features of the present disclosure may be implemented in
accordance with exemplary implementation of the present disclosure. In an
5 implementation, the computing device [200] may also implement a method for
communication between a microservice and a policy execution engine (PEEGN)
utilising the system [300]. In another implementation, the computing device [200]
itself implements the method for communication between a microservice and a
policy execution engine (PEEGN) using one or more units configured within the
10 computing device [200], wherein said one or more units are capable of
implementing the features as disclosed in the present disclosure.
[0046] The computing device [200] may include a bus [202] or other
communication mechanism for communicating information, and a processor [204]
15 coupled with bus [202] for processing information. The processor [204] may be, for
example, a general-purpose microprocessor. The computing device [200] may also
include a main memory [206], such as a random-access memory (RAM), or other
dynamic storage device, coupled to the bus [202] for storing information and
instructions to be executed by the processor [204]. The main memory [206] also
20 may be used for storing temporary variables or other intermediate information
during execution of the instructions to be executed by the processor [204]. Such
instructions, when stored in non-transitory storage media accessible to the processor
[204], render the computing device [200] into a special-purpose machine that is
customized to perform the operations specified in the instructions. The computing
25 device [200] further includes a read only memory (ROM) [208] or other static
storage device coupled to the bus [202] for storing static information and
instructions for the processor [204].
[0047] A storage device [210], such as a magnetic disk, optical disk, or solid-state
30 drive is provided and coupled to the bus [202] for storing information and
instructions. The computing device [200] may be coupled via the bus [202] to a
16
display [212], 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 [214], including
alphanumeric and other keys, touch screen input means, etc. may be coupled to the
5 bus [202] for communicating information and command selections to the processor
[204]. Another type of user input device may be a cursor controller [216], such as a
mouse, a trackball, or cursor direction keys, for communicating direction
information and command selections to the processor [204], and for controlling
cursor movement on the display [212]. The input device typically has two degrees
10 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.
[0048] The computing device [200] may implement the techniques described
herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware
15 and/or program logic which in combination with the computing device [200] causes
or programs the computing device [200] to be a special-purpose machine.
According to one implementation, the techniques herein are performed by the
computing device [200] in response to the processor [204] executing one or more
sequences of one or more instructions contained in the main memory [206]. Such
20 instructions may be read into the main memory [206] from another storage medium,
such as the storage device [210]. Execution of the sequences of instructions
contained in the main memory [206] causes the processor [204] 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
25 software instructions.
[0049] The computing device [200] also may include a communication interface
[218] coupled to the bus [202]. The communication interface [218] provides a twoway data communication coupling to a network link [220] that is connected to a
30 local network [222]. For example, the communication interface [218] may be an
integrated services digital network (ISDN) card, cable modem, satellite modem, or
17
a modem to provide a data communication connection to a corresponding type of
telephone line. As another example, the communication interface [218] 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
5 implementation, the communication interface [218] sends and receives electrical,
electromagnetic or optical signals that carry digital data streams representing
various types of information.
[0050] The computing device [200] can send messages and receive data, including
10 program code, through the network(s), the network link [220] and the
communication interface [218]. In the Internet example, a server [230] might
transmit a requested code for an application program through the Internet [228], the
ISP [226], the local network [222], a host [224] and the communication interface
[218]. The received code may be executed by the processor [204] as it is received,
15 and/or stored in the storage device [210], or other non-volatile storage for later
execution.
[0051] The computing device [200] encompasses a wide range of electronic
devices capable of processing data and performing computations. Examples of
20 computing device [200] include, but are 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 [200]
may include peripheral devices, such as monitors, keyboards, and printers, as well
25 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 [300] for
communication between a microservice and a policy execution engine (PEEGN),
30 is shown, in accordance with the exemplary implementations of the present
disclosure. The system [300] comprises at least ERM unit [1070]. The ERM unit
18
[1070] further comprises at least one transceiver unit [302], and at and at least one
identification unit [304]. Also, all of the components/ units of the system [300] are
assumed to be connected to each other unless otherwise indicated below. As shown
in the figures all units shown within the system [300] should also be assumed to be
5 connected to each other. Also, in FIG. 3 only a few units are shown, however, the
system [300] may comprise multiple such units or the system [300] may comprise
any such numbers of said units, as required to implement the features of the present
disclosure. Further, in an implementation, the system [300] may be present in a user
device/ user equipment [102] to implement the features of the present disclosure.
10 The system [300] may be a part of the user device [102]/ or may be independent of
but in communication with the user device [102] (may also referred herein as a UE).
In another implementation, the system [300] may reside in a server or a network
entity. In yet another implementation, the system [300] may reside partly in the
server/ network entity and partly in the user device.
15
[0053] The system [300] 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 [300].
20 [0054] The system [300] comprises an event routing manager (ERM) unit [1070].
The ERM unit [1070] further comprises 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.
25 [0055] The transceiver unit [302] 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
30 specifies the nature of the event. For example, event type may relate to a request
for resource allocation.
19
[0057] In an exemplary aspect, for each publisher type, there can be multiple
subscribers.
5 [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
10 subscribers informing them of the said event.
[0060] The transceiver unit [302] is further configured to transmit to the target
publisher, the request message.
15 [0061] The transceiver unit [302] 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 [302].
20 [0062] 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.
[0063] The transceiver unit [302] transmits to the target publisher, the request
message, in a scenario the event type is the event.
25
[0064] The transceiver unit [302] 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.
30 [0065] The transceiver unit [302] receives from the target publisher, the response
for the request message. The response further comprises the subscriber type
20
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.
5 [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
10 interface (U.I) etc.
[0067] The system [300] further comprises an identification unit [304] configured
to identify a subscriber, associated with the request message, based on the
subscriber type.
15
[0068] The identification unit [304] identifies the subscriber, associated with the
request message based on the subscriber type.
[0069] The identification unit [304] is further configured to identify the subscriber
20 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 [304] identifies the subscriber as the microservice.
25 [0071] The transceiver unit [302] 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 [302] transmits to the subscriber the response associated with the
30 request message.
21
[0073] 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.
5 [0074] The transceiver unit [302] 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 [400] for
10 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 [400] is performed by the system [300]. Further,
in an implementation, the system [300] may be present in a server device to
implement the features of the present disclosure. Also, as shown in FIG. 4, the
15 method [400] starts at step [402].
[0076] At step 404, the method [400] comprises receiving, by a transceiver unit
[302], 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.
20
[0077] The transceiver unit [302] 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.
25 [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
30 subscribers.
22
[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
5 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 [400] comprises transmitting, by the transceiver
unit [302], from the ERM unit [1070], to the target publisher, the request message.
10
[0083] The transceiver unit [302] 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 [302].
15
[0084] The method [400] 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.
20 [0085] The transceiver unit [302] transmits to the target publisher, the request
message, in a scenario the event type is the event.
[0086] At step 408, the method [400] comprises receiving, by the transceiver unit
[302], at the ERM unit [1070], from the target publisher, a response for the request
25 message, the response comprising a subscriber type associated with the request
message.
[0087] The transceiver unit [302] receives from the target publisher, the response
for the request message. The response further comprises the subscriber type
30 associated with the request message. In an exemplary aspect, when the target
23
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
5 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.
10
[0089] At step 410, the method [400] comprises identifying, by an identification
unit [304], at the ERM unit [1070], a subscriber, associated with the request
message, based on the subscriber type.
15 [0090] The identification unit [304] identifies the subscriber, associated with the
request message based on the subscriber type.
[0091] 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
20 publisher is the PEEGN.
[0092] In an exemplary aspect, in the event the target publisher is the PEEGN, the
identification unit [304] identifies the subscriber as the microservice.
25 [0093] At step 412, the method [400] comprises transmitting, by the transceiver
unit [302], 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
30 transceiver unit [302] transmits to the subscriber the response associated with the
request message.
24
[0095] The method [400] 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.
5
[0096] The transceiver unit [302] transmits to the subscriber, the response
associated with the request message, in a scenario the event type is the
acknowledgement.
10 [0097] Thereafter, at step [414], the method [400] is terminated.
[0098] Referring to FIG. 5, an exemplary block diagram of a system architecture
[500] for communication between a microservice and a policy execution engine
(PEEGN), is shown, in accordance with the exemplary implementations of the
15 present disclosure. The system architecture comprises at least one microservice
[502], at least one PEEGN [1088], and at least one ERM unit [1070].
[0099] In an exemplary aspect, when a microservice [502] wants to communicate
with PEEGN [1088], it first registers it as an event at ERM unit [1070]. In an
20 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
25 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 [600] flow diagram for
communication between a microservice and a policy execution engine (PEEGN),
30 in accordance with exemplary implementations of the present disclosure is shown.
25
In an implementation the process [600] is performed by the system [300]. Also, as
shown in FIG. 6, the process [600] starts at step [602].
[0101] At step [604], If any microservice [502] wants to send request to PEEGN
5 [1088] then that event should be registered in ERM unit [1070] as publisher as
PEEGN [1088] and subscriber as other microservice [502].
[0102] At step [606], If PEEGN [1088] wants to send request to other microservice
then that event should be registered in ERM unit [1070] with subscriber as PEEGN
10 [1088] and publisher as other microservice [502].
[0103] At step [608], the process [600] 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].
15
[0104] At step [610], the process [600] 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.
20 [0105] At step [612], 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 [614], the process [600] terminates.
25
[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
30 [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. The executable code
26
when executed further causes transceiver unit [302] to transmit to the target
publisher, the request message. The executable code when executed further causes
transceiver unit [302] to receive from the target publisher, a response for the request
message, the response comprising a subscriber type associated with the request
5 message. The executable code when executed further causes an identification unit
[304] 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 [302] is further configured to transmit to the subscriber, the
response associated with the request message.
10
[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
15 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
20 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
25 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
30 functionality described herein, are considered to be encompassed within the scope
of the present disclosure.
27
[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
5 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.
28
We Claim:
1. A method for communication between a microservice and a policy execution
engine (PEEGN), the method comprising:
5 - 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;
10 - 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;
15 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
20 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.
25
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.
30 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
29
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
5 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
10 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;
15 - 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.
20 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
25 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.
30
30
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.
| # | Name | Date |
|---|---|---|
| 1 | 202321065361-STATEMENT OF UNDERTAKING (FORM 3) [28-09-2023(online)].pdf | 2023-09-28 |
| 2 | 202321065361-PROVISIONAL SPECIFICATION [28-09-2023(online)].pdf | 2023-09-28 |
| 3 | 202321065361-POWER OF AUTHORITY [28-09-2023(online)].pdf | 2023-09-28 |
| 4 | 202321065361-FORM 1 [28-09-2023(online)].pdf | 2023-09-28 |
| 5 | 202321065361-FIGURE OF ABSTRACT [28-09-2023(online)].pdf | 2023-09-28 |
| 6 | 202321065361-DRAWINGS [28-09-2023(online)].pdf | 2023-09-28 |
| 7 | 202321065361-Proof of Right [15-02-2024(online)].pdf | 2024-02-15 |
| 8 | 202321065361-FORM-5 [28-09-2024(online)].pdf | 2024-09-28 |
| 9 | 202321065361-ENDORSEMENT BY INVENTORS [28-09-2024(online)].pdf | 2024-09-28 |
| 10 | 202321065361-DRAWING [28-09-2024(online)].pdf | 2024-09-28 |
| 11 | 202321065361-CORRESPONDENCE-OTHERS [28-09-2024(online)].pdf | 2024-09-28 |
| 12 | 202321065361-COMPLETE SPECIFICATION [28-09-2024(online)].pdf | 2024-09-28 |
| 13 | 202321065361-FORM 3 [07-10-2024(online)].pdf | 2024-10-07 |
| 14 | 202321065361-Request Letter-Correspondence [11-10-2024(online)].pdf | 2024-10-11 |
| 15 | 202321065361-Power of Attorney [11-10-2024(online)].pdf | 2024-10-11 |
| 16 | 202321065361-Form 1 (Submitted on date of filing) [11-10-2024(online)].pdf | 2024-10-11 |
| 17 | 202321065361-Covering Letter [11-10-2024(online)].pdf | 2024-10-11 |
| 18 | 202321065361-CERTIFIED COPIES TRANSMISSION TO IB [11-10-2024(online)].pdf | 2024-10-11 |
| 19 | Abstract.jpg | 2024-11-09 |
| 20 | 202321065361-ORIGINAL UR 6(1A) FORM 1 & 26-311224.pdf | 2025-01-04 |