Abstract: The present disclosure relates to a method and system for handling multiple instances of auditor microservice. The disclosure encompasses receiving, by a receiving unit [302] at a microservice auditor (MAUD) [1104], a request from one or more services. The disclosure further encompasses checking, by a processing unit [304] at the MAUD [1104], the request to identify at least one of an operation from one or more operations, and a database of a storage unit [306]; and executing, by the processing unit [304], the identified operation utilising the identified database via an interface. [FIG. 4]
1
FORM 2
THE PATENTS ACT, 1970 (39 OF
1970)
&
5 THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
10 “METHOD AND SYSTEM FOR HANDLING MULTIPLE
INSTANCES OF AUDITOR MICROSERVICE”
15 We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr. Centre Point,
Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
20
The following specification particularly describes the invention and the manner in which
it is to be performed.
25
2
METHOD AND SYSTEM FOR HANDLING MULTIPLE INSTANCES OF
AUDITOR MICROSERVICE
FIELD OF INVENTION
5
[0001] Embodiments of the present disclosure generally relate to the field of
wireless communication systems. More particularly, embodiments of the present
disclosure relate to method and system for handling multiple instances of auditor
microservice.
10
BACKGROUND
[0002] The following description of related art is intended to provide background
information pertaining to the field of the disclosure. This section may include
15 certain aspects of the art that may be related to various features of the present
disclosure. However, it should be appreciated that this section be used only to
enhance the understanding of the reader with respect to the present disclosure, and
not as an admission of prior art.
20 [0003] In communication networks such as the 5G communication network,
different microservices perform different services, jobs and tasks in the network.
The Auditor service (AU) microservice audits the resources in terms of physical
memory, RAM and CPU at Inventory Manager (IM) microservice. AU brings
inventory in close sync with real-time available or used resources and minimizes
25 the mismatch between IM and real time hardware. Further, AU communicates for
data accuracy primarily on Swarm Adaptor (SA) and Inventory Manager (IM). AU
detects whether the hosts contain lesser/more containers than the amount present in
inventory managed by IM. AU accordingly sends API requests to IM to update its
inventory. AU interacts with these microservices to fetch the real time data using
30 various APIs. However, to handle multiple instances of AU microservices is
3
cumbersome and the current available solution is not efficient for managing AU
instances in the network.
[0004] Thus, there exists an imperative need in the art to provide an efficient system
5 and method for handling multiple instances of auditor microservice.
SUMMARY
[0005] This section is provided to introduce certain aspects of the present disclosure
10 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.
[0006] An aspect of the present disclosure may relate to a method for handling
15 multiple instances of auditor microservice. The method includes receiving, by a
receiving unit at a microservice auditor (MAUD), a request from one or more
services. Next, the method includes checking, by a processing unit at the MAUD,
the request to identify at least one of an operation from one or more operations, and
a database of a storage unit. Next, the method includes executing, by the processing
20 unit, the identified operation utilising the identified database via an interface.
[0007] In an exemplary aspect of the present disclosure, wherein the request
corresponds to at least one of a data storing request, a data retrieving request, and a
data modifying request.
25
[0008] In an exemplary aspect of the present disclosure, wherein the one or more
operations corresponds to at least one of storing a set of data in the storage unit,
retrieving the set of data from the storage unit, and modifying the set of data stored
in the storage unit.
30
4
[0009] In an exemplary aspect of the present disclosure, wherein the request is
received via a hypertext transfer protocol (HTTP) from the one or more services.
[0010] In an exemplary aspect of the present disclosure, wherein the storage unit
5 comprises a plurality of databases.
[0011] In an exemplary aspect of the present disclosure, wherein the interface is
AU_NS interface.
10 [0012] In an exemplary aspect of the present disclosure, wherein the one or more
operations are executed via the AU_NS interface.
[0013] Another aspect of the present disclosure may relate to a system for handling
multiple instances of auditor microservice. The system comprises a microservice
15 auditor (MAUD). The MAUD comprises a receiving unit configured to receive a
request from one or more services. The MAUD comprises a processing unit
configured to check the request to identify at least one of an operation from one or
more operations, and a database of a storage unit; and execute the identified
operation utilising the identified database via an interface.
20
[0014] Yet another aspect of the present disclosure may relate to a non-transitory
computer readable storage medium storing instructions for handling multiple
instances of auditor microservice, the instructions include executable code which,
when executed by one or more units of a system, causes: a receiving unit of the
25 system to receive a request from one or more services; a processing unit of the
system to check the request to identify at least one of an operation from one or more
operations, and a database of a storage unit; and execute the identified operation
utilising the identified database via an interface.
30
5
OBJECTS OF THE INVENTION
[0015] Some of the objects of the present disclosure, which at least one
embodiment disclosed herein satisfies are listed herein below.
5
[0016] It is an object of the present disclosure to provide a system and a method for
handling multiple instances of auditor microservices via the AU_NS interface.
[0017] It is another object of the present disclosure to provide a system and a
10 method for providing AU_NS interface that enables fast response to query events
and leads to seamless user experience.
[0018] It is yet another object of the present disclosure to provide a system and a
method for providing an AU_NS interface that is capable of interacting with and
15 handling all types of data.
DESCRIPTION OF THE DRAWINGS
[0019] The accompanying drawings, which are incorporated herein, and constitute
20 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
25 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.
30
6
[0020] FIG. 1 illustrates an exemplary block diagram of a management and
orchestration (MANO) architecture.
[0021] FIG. 2 illustrates an exemplary block diagram of a computing device upon
5 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 handling
multiple instances of auditor microservice, in accordance with exemplary
10 implementations of the present disclosure.
[0023] FIG. 4 illustrates a method flow diagram for handling multiple instances of
auditor microservice, in accordance with exemplary implementations of the present
disclosure.
15
[0024] FIG. 5 illustrates an exemplary system architecture for handling multiple
instances of auditor microservice, in accordance with exemplary implementations
of the present disclosure.
20 [0025] FIG. 6 illustrates an exemplary process flow diagram for handling multiple
instances of auditor microservice, in accordance with the exemplary
implementations of the present disclosure.
[0026] The foregoing shall be more apparent from the following more detailed
25 description of the disclosure.
DETAILED DESCRIPTION
[0027] In the following description, for the purposes of explanation, various
30 specific details are set forth in order to provide a thorough understanding of
7
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
5 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,
10 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.
15
[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
20 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
25 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.
30
8
[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
5 necessarily to be construed as preferred or advantageous over other aspects or
designs, nor is it meant to preclude equivalent exemplary structures and techniques
known to those of ordinary skill in the art. Furthermore, to the extent that the terms
“includes,” “has,” “contains,” and other similar words are used in either the detailed
description or the claims, such terms are intended to be inclusive—in a manner
10 similar to the term “comprising” as an open transition word—without precluding
any additional or other elements.
[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
15 processing instructions. A processor may be a general-purpose processor, a special
purpose processor, a conventional processor, a digital signal processor, a plurality
of microprocessors, one or more microprocessors in association with a (Digital
Signal Processing) DSP core, a controller, a microcontroller, Application Specific
Integrated Circuits, Field Programmable Gate Array circuits, any other type of
20 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.
25 [0033] As used herein, “a user equipment”, “a user device”, “a smart-user-device”,
“a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”,
“a wireless communication device”, “a mobile communication device”, “a
communication device” may be any electrical, electronic and/or computing device
or equipment, capable of implementing the features of the present disclosure. The
30 user equipment/device may include, but is not limited to, a mobile phone, smart
9
phone, laptop, a general-purpose computer, desktop, personal digital assistant,
tablet computer, wearable device or any other computing device which is capable
of implementing the features of the present disclosure. Also, the user device may
contain at least one input means configured to receive an input from at least one of
5 a transceiver unit, a processing unit, a storage unit, a detection unit and any other
such unit(s) which are required to implement the features of the present disclosure.
[0034] As used herein, “storage unit” or “memory unit” refers to a machine or
computer-readable medium including any mechanism for storing information in a
10 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
15 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
20 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, and components used herein, unless explicitly excluded
25 herein, may be software modules or hardware processors, the processors being a
general-purpose processor, a special purpose processor, a conventional processor,
a digital signal processor (DSP), a plurality of microprocessors, one or more
microprocessors in association with a DSP core, a controller, a microcontroller,
Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array
30 circuits (FPGA), any other type of integrated circuits, etc.
10
[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
5 and/or connected with the system.
[0038] As used herein, the Physical and Virtual Inventory Manager (PVIM)
maintains the inventory and its resources. In other words, PVIM refers to a tool that
manages resources within a network or IT environment. PVIM is used to track,
10 monitor, and manage physical hardware resources (servers, routers) and virtual
assets (e.g., VNF).
[0039] As used herein, Microservice Auditor (MAUD) may perform auditing of
resources such as physical memory, random access memory (RAM), and a central
15 processing unit (CPU). MAUD may communicate with other services for handling
their requested Create, Read, Update and Delete (CRUD) operation. MAUD may
communicate with the PVIM service for syncing the resources in real time.
[0040] As used herein, Virtual Network Function (VNF) Life Cycle Manager
20 (VLM) may capture the details of vendors, VNFs, and virtual Network Function
Components (VNFCs) via create, read, and update API’s. The captured details are
stored in a database. VLM may create VNF or individual VNFC instances. VLM
may scale-out the VNFs or individual VNFCs.
25 [0041] As used herein, Policy Execution Engine (PEGN) provides a network
function virtualization (NFV) software-defined network (SDN) platform
functionality to support dynamic requirements of resource management and
network service orchestration in the virtualized network. Further, the PEGN is
involved during the Container network function (CNF) instantiation flow to check
11
for CNF policy and to reserve the resources required to instantiate CNF at PVIM.
PEGN supports the scaling policy for CNFC.
[0042] As used herein, a Capacity Manager Platform (CMP) is used for creating a
5 task to monitor the performance metrics data received for network functions such
as VNF, VNFC, and CNFC. In case there is a threshold breach of the performance
metrics data, CMP sends a trigger to an NFV Platform and Decision Analytics
(NPDA).
10 [0043] As discussed in the background section, the current known solutions have
several shortcomings. The present disclosure aims to overcome the abovementioned and other existing problems in this field of technology by providing a
method and a system for handling multiple instances of auditor microservice.
15 [0044] The foregoing shall be more apparent from the following more detailed
description of the disclosure.
[0045] Hereinafter, exemplary embodiments of the present disclosure will be
described with reference to the accompanying drawings.
20
[0046] FIG. 1 illustrates an exemplary block diagram representation of a
management and orchestration (MANO) architecture [100], in accordance with the
exemplary implementation of the present disclosure. The MANO architecture [100]
may be developed for managing telecom cloud infrastructure automatically,
25 managing design or deployment design, managing instantiation of the network
node(s)/ service(s) etc. The MANO architecture [100] deploys the network node(s)
in the form of a Virtual Network Function (VNF) and Cloud-native/ Container
Network Function (CNF). The system as provided by the present disclosure may
comprise one or more components of the MANO architecture [100]. The MANO
30 architecture [100] may be used to auto-instantiate the VNFs into the corresponding
12
environment of the present disclosure so that it could help in onboarding other
vendor(s) CNFs and VNFs to the platform.
[0047] As shown in FIG. 1, the MANO architecture [100] comprises a user
5 interface layer [102], a network function virtualization (NFV) and software-defined
network (SDN) design function module [104], a platform foundation services
module [106], a Platform Schedulers & Cron Jobs module [108] and a platform
resource adapters and utilities module [112]. All the components are assumed to be
connected to each other in a manner as obvious to the person skilled in the art of
10 implementing features of the present disclosure.
[0048] The NFV and SDN design function module [104] comprises a VNF
lifecycle manager (compute) [1042], a VNF catalog [1044], a network services
catalog [1046], a network slicing and service chaining manager [1048], a physical
15 and virtual resource manager [1050] and a CNF lifecycle manager [1052]. The VNF
lifecycle manager (compute) [1042] may be responsible for deciding on which
server of the communication network the microservice will be instantiated. The
VNF lifecycle manager (compute) [1042] may manage the overall flow of
incoming/ outgoing requests during interaction with the user. The VNF lifecycle
20 manager (compute) [1042] may be responsible for determining which sequence to
be followed for executing the process. For example, in an AMF network function
of the communication network (such as a 5G network), the sequence for execution
of processes P1 and P2, etc. The VNF catalog [1044] stores the metadata of all the
VNFs (also CNFs in some cases). The network services catalog [1046] stores the
25 information on 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
13
(compute) [1042], the CNF lifecycle manager [1052] may be used for the CNF
lifecycle management.
[0049] The platform foundation services module [106] comprises a microservices
5 elastic load balancer [1062], an identity & access manager [1064], a command line
interface (CLI) [1066], a central logging manager [1068], and an event routing
manager [1070]. The microservices elastic load balancer [1062] may be used for
maintaining the load balancing of the request for the services. The identity & access
manager [1064] may be used for logging purposes. The command line interface
10 (CLI) [1066] may be used to provide commands to execute certain processes that
require changes during the run time. The central logging manager [1068] may be
responsible for keeping the logs of every service. These logs are generated by the
MANO architecture [100]. These logs are used for debugging purposes. The event
routing manager [1070] may be responsible for routing the events i.e., the
15 application programming interface (API) hits to the corresponding services.
[0050] The platforms core services module [108] comprises an NFV infrastructure
monitoring manager [1082], an assure manager [1084], a performance manager
[1086], a policy execution engine [1088], a capacity monitoring manager (CMM)
20 [1090], a release management (mgmt.) repository [1092], a configuration manager
& GCT [1094], an NFV platform decision analytics [1096], a platform NoSQL DB
[1098]; a platform schedulers and cron jobs [1100], a VNF backup & upgrade
manager [1102], a microservice auditor (MAUD) [1104], and a platform operations,
administration and maintenance manager [1106]. The NFV infrastructure
25 monitoring manager [1082] monitors the infrastructure part of the NFs. For
example, any metrics such as CPU utilization by the VNF. The assure manager
[1084] may be responsible for supervising the alarms the vendor may be generating.
The performance manager [1086] may be responsible for managing the
performance counters. The policy execution engine (PEGN) [1088] may be
14
responsible for managing all of the policies. The capacity monitoring manager
(CMM) [1090] may be responsible for sending the request to the PEGN [1088].
The release management (mgmt.) repository (RMR) [1092] may be responsible for
managing the releases and the images of all of the vendor's network nodes. The
5 configuration manager & (GCT) [1094] manages the configuration and GCT of all
the vendors. The NFV platform decision analytics (NPDA) [1096] helps in deciding
the priority of using the network resources. It may be further noted that the policy
execution engine (PEGN) [1088], the configuration manager & GCT [1094], and
the NPDA [1096] work together. The platform NoSQL DB [1098] may be a
10 database for storing all the inventory (both physical and logical) as well as the
metadata of the VNFs and CNF. The platform schedulers and cron jobs [1100]
schedule tasks such as but not limited to triggering an event, traversing the network
graph etc. The VNF backup & upgrade manager [1102] takes backup of the images,
and binaries of the VNFs and the CNFs and produces those backups on demand in
15 case of server failure. The microservice auditor (MAUD) [1104] audits the
microservices. For example, in a hypothetical case, instances not being instantiated
by the MANO architecture [100] may be using the network resources. In such cases,
the microservice auditor (MAUD) [1104] audits and informs the same so that
resources can be released for services running in the MANO architecture [100]. The
20 audit assures that the services only run on the MANO architecture [100]. The
platform operations, administration, and maintenance manager [1106] may be used
for newer instances that are spawning.
[0051] In an exemplary aspect, the platform noSQL database [1098] may be a
25 repository for storing and managing all types of inventory, including both physical
and logical data within the MANO architecture [100]. The interface associated with
the noSQL database [1028] is configured to store, operate, and manage all logical
data present in MANO. Additionally, the interface used for handling physical data
operations within the MANO architecture [100].
30
15
[0052] 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
(AAD) [1128]; and an NFV gateway [1130]. The platform external API adaptor
5 and gateway [1122] may be responsible for handling the external services (to the
MANO architecture [100]) that require the network resources. The generic decoder
and indexer (XML, CSV, JSON) [1124] gets directly the data of the vendor system
in the XML, CSV, and JSON format. The docker service adaptor [1126] may be the
interface provided between the telecom cloud and the MANO architecture [100] for
10 communication. The API adapter (AAD) [1128] may be used to connect with the
virtual machines (VMs). The NFV gateway [1130] may be responsible for
providing the path to each service going to/incoming from the MANO architecture
[100].
15 [0053] Referring to FIG. 2, an exemplary block diagram of a computing device
[200] (also referred to herein as a computer system [200]) upon which the features
of the present disclosure may be implemented in accordance with exemplary
implementation of the present disclosure, is shown. In an implementation, the
computing device [200] may also implement a method for handling multiple
20 instances of auditor microservice utilizing the system. In another implementation,
the computing device [200] itself implements the method for handling multiple
instances of auditor microservice using one or more units configured within the
computing device [200], wherein said one or more units are capable of
implementing the features as disclosed in the present disclosure.
25
[0054] The computing device [200] may include a bus [202] or other
communication mechanism for communicating information, and a processor [204]
coupled with the bus [202] for processing information. The processor [204] may
be, for example, a general-purpose microprocessor. The computing device [200]
30 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
16
and instructions to be executed by the processor [204]. The main memory [206]
also may be used for storing temporary variables or other intermediate information
during the execution of the instructions to be executed by the processor [204]. Such
instructions, when stored in non-transitory storage media accessible to the processor
5 [204], render the computing device [200] into a special-purpose machine that is
customized to perform the operations specified in the instructions. The computing
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].
10
[0055] A storage device [210], such as a magnetic disk, optical disk, or solid-state
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
display [212], such as a cathode ray tube (CRT), Liquid crystal Display (LCD),
15 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
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
20 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
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.
25
[0056] The computing device [200] 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 [200] causes
or programs the computing device [200] to be a special-purpose machine.
30 According to one implementation, the techniques herein are performed by the
17
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
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
5 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
software instructions.
10 [0057] 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
local network [222]. For example, the communication interface [218] may be an
integrated services digital network (ISDN) card, cable modem, satellite modem, or
15 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
implementation, the communication interface [218] sends and receives electrical,
20 electromagnetic or optical signals that carry digital data streams representing
various types of information.
[0058] The computing device [200] can send messages and receive data, including
program code, through the network(s), the network link [220], and the
25 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], the host [224], and the communication interface
[218]. The received code may be executed by the processor [204] as it is received,
and/or stored in the storage device [210], or other non-volatile storage for later
30 execution.
18
[0059] Referring to FIG. 3, an exemplary block diagram of a system [300] for
handling multiple instances of auditor microservice is shown, in accordance with
the exemplary implementations of the present disclosure. The system [300]
5 comprises at least one MAUD [1104]. The MAUD [1104] comprises at least one
receiving unit [302], at least one processing unit [304] and at least one storage unit
[306]. Also, all of the components/ units of the system [300] are assumed to be
connected to each other unless otherwise indicated below. Also, in FIG. 3 only a
few units are shown, however, the system [300] may comprise multiple such units,
10 or the system [300] may comprise any such numbers of said units, as required to
implement the features of the present disclosure. In an 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.
15 [0060] The system [300] is configured for handling multiple instances of auditor
microservice, with the help of the interconnection between the components/units of
the system [300].
[0061] The system [300] includes a MAUD [1104]. The MAUD [1104] comprises
20 a receiving unit [302]. The receiving unit [302] is configured to receive a request
from one or more services. The request may be such as, at least one of a data storing
request, a data retrieving request, and a data modifying request. The request is
received via a hypertext transfer protocol (HTTP) from one or more services. In an
exemplary implementation, the one or more services may be such as, but not limited
25 to, Physical & Virtual Inventory Manager (PVIM), Virtual Network Function
(VNF) Life Cycle Manager (VLM), Policy Execution Engine (PEGN), Capacity
Manager Platform (CMP). In an exemplary implementation, one or more services
may refer to one or more microservices.
30 [0062] The system [300] further comprises a processing unit [304]. The processing
unit [304] is communicatively coupled with the receiving unit [302]. After
19
receiving the request from the receiving unit [302], the processing unit [304] is
configured to check the request to identify at least one of an operation from one or
more operations, and a database of a storage unit [306], such as NoSQL database.
The one or more operations corresponds to at least one of storing a set of data in the
5 storage unit [306], retrieving the set of data from the storage unit [306], and
modifying the set of data stored in the storage unit [306]. The storage unit [306]
may comprise a plurality of databases. In an exemplary implementation, the
processing unit [304] is configured to identify the request for one or more services
and the associated database of the storage unit [306]. For example, during an
10 operation, PVIM service may request for an operation such as storing the set of data
(e.g., inventory resources data), the processing unit [304] is configured to identify
the particular database from the plurality of databases of the storage unit [306] for
storing the set of data.
15 [0063] In an implementation, each database from the plurality of databases may be
identified by an identifier. The identifier information can be sent from the initial
request of store or retrieval data, or it can derive from such as, service or
microservice or component identifier form where the request is coming. In another
implementation, the system [300] may have some internal maintained mapping
20 between the service(s) or microservice(s) and the plurality of databases in the
storage unit [306].
[0064] The processing unit [304] is configured to execute the identified operation
utilising the identified database via an interface. After identifying the operation
25 such as, but not limited to, retrieving the set of data from the storage unit [306], the
processing unit [304] is configured to execute the identified operation, such as
retrieval utilising the identified database from the plurality of databases via the
interface such as, an AU_NS interface. The one or more operations are executed
via the AU_NS interface. The AU_NS interface interacts to perform operations
30 associated with such as, but not limited to, creation, update, deletion, retrieval of
20
the set of data from a database containing index documented data. The indexed
documents are tagged with certain identifiers based on service and operations.
[0065] The MAUD [1104] and NoSQL Database (DB) or DB are communicatively
5 coupled using the AU_NS interface. The AU_NS interface can comprise at least
one of HTTP and web-socket based connections. In an implementation, the AU_NS
interface is configured to facilitate exchange of information using hypertext transfer
protocol (HTTP) rest application programming interface (API). In an
implementation, the HTTP rest API is used in conjunction with JSON and/or XML
10 communication media. In another implementation, the AU_NS interface is
configured to facilitate exchange of information by establishing a web-socket
connection between the MAUD, and the DB. A web-socket connection may involve
establishing a persistent connectivity between the AU, and the DB. An example of
the web-socket based communication includes, without limitation, a transmission
15 control protocol (TCP) connection. In such a connection, operations such as storing,
deleting, modification and retrieval for a set of data associated with services may
be exchanged through the interface using a ping-pong-based communication.
[0066] In an exemplary aspect, the AU_NS interface employs an asynchronous
20 event-based implementation that allows it to process requests in real time, handling
multiple operations such as data creation, retrieval, updating, and deletion without
delays. Additionally, the AU_NS interface incorporates a fault tolerance
mechanism that enables high availability; if one instance fails during request
processing, the system seamlessly transfers the operations to the next available
25 instance enabling continuous, reliable service in complex network environments.
Further, the AU_NS interface enables interaction with various types of data,
including physical, logical, and metadata, stored in the NoSQL database.
[0067] Further, in accordance with the present disclosure, it is to be acknowledged
30 that the functionality described for the various components/units can be
implemented interchangeably. While specific embodiments may disclose a
21
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
5 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.
[0068] Referring to FIG. 4 an exemplary method flow diagram [400] for handling
10 multiple instances of auditor microservice, in accordance with exemplary
implementations of the present disclosure is shown. In an implementation, the
method [400] is performed by the system [300]. As shown in FIG. 4, the method
[400] starts at step [402].
15 [0069] At step [404], the method [400] as disclosed by the present disclosure
comprises receiving, by a receiving unit [302] at a MAUD [1104], a request from
one or more services. The receiving unit [302] may receive a request from one or
more services. The request may be such as, at least one of a data storing request, a
data retrieving request, and a data modifying request. The request is received via a
20 hypertext transfer protocol (HTTP) from one or more services. In an exemplary
implementation, the one or more services may be such as, but not limited to,
Physical & Virtual Inventory Manager (PVIM), Virtual Network Function (VNF)
Life Cycle Manager (VLM), Policy Execution Engine (PEGN), Capacity Manager
Platform (CMP). In an exemplary implementation, one or more services may refer
25 to one or more microservices.
[0070] Next, at step [406], the method [400] as disclosed by the present disclosure
comprises checking, by a processing unit [304] at the MAUD [1104], the request to
identify at least one of an operation from one or more operations, and a database of
30 a storage unit [306], such as NoSQL database. The one or more operations
corresponds to at least one of storing a set of data in the storage unit [306], retrieving
22
the set of data from the storage unit [306], and modifying the set of data stored in
the storage unit [306]. The storage unit [306] may comprise a plurality of databases.
In an exemplary implementation, the processing unit [304] may identify the request
for one or more services and the associated database of the storage unit [306]. For
5 example, during an operation, PVIM service may request for an operation such as
storing the set of data (e.g., inventory resources data), the processing unit [304] may
identify the particular database from the plurality of databases of the storage unit
[306] for storing the set of data.
10 [0071] In an implementation, each database from the plurality of databases may be
identified by an identifier. The identifier information can be sent from the initial
request of store or retrieval data, or it can derive from such as, service or
microservice or component identifier form where the request is coming. In another
implementation, the system [300] may have some internal maintained mapping
15 between the service(s) or microservice(s) and the plurality of databases in the
storage unit [306].
[0072] Next, at step [408], the method [400] as disclosed by the present disclosure
comprises executing, by the processing unit [304], the identified operation utilising
20 the identified database via an interface. After identifying the operation such as, but
not limited to, retrieving the set of data from the storage unit [306], the processing
unit [304] may execute the identified operation, such as retrieval utilising the
identified database from the plurality of databases via the interface such as, an
AU_NS interface. The one or more operations are executed via the AU_NS
25 interface. The AU_NS interface interacts to perform operations associated with
such as, but not limited to, creation, update, deletion, retrieval of the set of data
from a database containing index documented data. The indexed documents are
tagged with certain identifiers based on service and operations.
30 [0073] Thereafter, the method [400] terminates at step [410].
23
[0074] FIG. 5 illustrates an exemplary system architecture [500] for handling
multiple instances of auditor microservice, in accordance with exemplary
implementations of the present disclosure. As shown in FIG. 5, the MANO
architecture [100] comprises at least one service (such as MS-X) [502], at least one
5 MAUD [1104] and at least one NoSQL database [504] and AU_NS interface
between the MAUD [1104] and the NoSQL database [504]. In an exemplary
implementation, the NoSQL database [504] may comprise a plurality of databases.
The MAUD [1104] is configured to receive a request with data from one or more
services [such as MS-X] [502], wherein the data may be sent via HTTP. The request
10 may be associated with such as, but not limited to, create and update. The MAUD
[1104] is further configured to check the data and store the same in the NoSQL
database [504] or one of the databases from the NoSQL database [504]. Further, the
MAUD [1104] is configured to receive a query event via HTTP request from one
or more services (such as MS-X) [502], wherein the query event is to retrieve data
15 from the MAUD [1104]. In response to receipt of such a query event request, the
MAUD [1104] is configured to identify the appropriate database for the requested
data. Once the appropriate database, such as NoSQL database [504] is identified,
the MAUD [1104] is configured to retrieve the requested data from the NoSQL
database [504] via the AU_NS interface and send the data as response to query
20 events received. The AU_NS interface thus acts as a single interface to
create/update/delete/get the data from a database containing index-documented
data.
[0075] Referring to FIG. 6, an exemplary process flow diagram [600], for handling
25 multiple instances of auditor microservices, in accordance with exemplary
implementations of the present disclosure. In an implementation, the process flow
[600] is performed by MANO architecture [100], system [300] and the system
architecture [500]. As shown, in FIG. 6, the process flow [600] starts at step [602].
24
[0076] At step [604], the process flow [600] as disclosed by the present disclosure
comprises receiving, at the MAUD [1104], a HTTP request from one or more
services. The request corresponds to at least one of a data storing request, a data
retrieving request, and a data modifying request.
5
[0077] Next, at step [606], the process flow [600] as disclosed by the present
disclosure comprises creating a query by the MAUD [1104] in response to the
received request from the one or more services for one or more operations such as
storing a set of data, retrieving the set of data, and modifying the set of data to/from
10 NoSQL DB [504]. In an implementation, the operations are Create, Read, Update
and Delete (CRUD) operations.
[0078] Next, at step [608], the process flow [600] as disclosed by the present
disclosure comprises storing data at NoSQL DB [504] with index, vector and graph
15 format. The noSQL DB [504] stores data in index, vector in graph formats to
optimise performance for various applications. The index format enables fast
searching and retrieval of data by creating and maintaining a structured catalogue
that references the location of data, the vector format support multidimensional data
handling for tasks like machine learning etc., and the graph format efficiently
20 manages relationships between entities, for applications such as social network or
network topologies.
[0079] Next, at step [610], the process flow [600] as disclosed by the present
disclosure comprises processing the requested data from the NoSQL database [504]
25 via the AU_NS interface and sending the data as response to query events received.
The AU_NS interface thus acts as a single interface to create/update/delete/get the
data from the database containing index-documented data. The index-documented
data refers to data that is stored using an indexing structure in the NoSQL DB [504].
In an exemplary aspect, the indexed data may include metadata, document
30 identifiers, or key-value pairs associated with entries stored in the database.
25
[0080] Thereafter, the process flow [600] terminates at step [612].
[0081] The present disclosure may relate to a non-transitory computer readable
storage medium storing instructions for handling multiple instances of auditor
5 microservice, the instructions include executable code which, when executed by
one or more units of a system, causes: a receiving unit [302] of the system to receive
a request from one or more services; a processing unit [304] of the system to check
the request to identify at least one of an operation from one or more operations, and
a database of a storage unit [306]; and execute the identified operation utilising the
10 identified database via an interface.
[0082] As is evident from the above, the present disclosure provides a technically
advanced solution for an efficient system and method for handling multiple
instances of auditor microservices via AU_NS interface. The present method and
15 system provide a solution that is capable of handling data complexity as well as
time complexity. The AU_NS interface implements an asynchronous event-based
system, allowing it to process requests efficiently without delays. Further, the
present solution enables fast response to query events thus leading to seamless user
experience. It also incorporates fault tolerance, working in a high-availability mode,
20 where if one inventory instance fails during request processing, the next available
instance takes over such that to enable continuous operation. The AU_NS interface
provided by the present invention acts as a single interface to interact with all types
of data including physical data, logical data, metadata and indexed data stored in
the noSQL database.
25
[0083] While considerable emphasis has been placed herein on the disclosed
embodiments, it will be appreciated that many embodiments can be made and that
many changes can be made to the embodiments without departing from the
principles of the present disclosure. These and other changes in the embodiments
30 of the present disclosure will be apparent to those skilled in the art, whereby it is to
26
be understood that the foregoing descriptive matter to be implemented is illustrative
and non-limiting.
27
We Claim:
1. A method for handling multiple instances of auditor microservice, the
method comprising:
receiving, by a receiving unit [302] at a microservice auditor
5 (MAUD) [1104], a request from one or more services;
checking, by a processing unit [304] at the MAUD [1104], the
request to identify at least one of an operation from one or more
operations, and a database of a storage unit [306]; and
executing, by the processing unit [304], the identified operation
10 utilising the identified database via an interface.
2. The method as claimed in claim 1, wherein the request corresponds to
at least one of a data storing request, a data retrieving request, and a
data modifying request.
15
3. The method as claimed in claim 1, wherein the one or more operations
corresponds to at least one of storing a set of data in the storage unit
[306], retrieving the set of data from the storage unit [306], and
modifying the set of data stored in the storage unit [306].
20
4. The method as claimed in claim 1, wherein the request is received via
a hypertext transfer protocol (HTTP) from the one or more services.
5. The method as claimed in claim 1, wherein the storage unit [306]
25 comprises a plurality of databases.
6. The method as claimed in claim 1, wherein the interface is AU_NS
interface.
28
7. The method as claimed in claim 6, wherein the one or more operations
are executed via the AU_NS interface.
5 8. A system for handling multiple instances of auditor microservice, the
system comprising:
a microservice auditor (MAUD) [1104] comprising:
a receiving unit [302] configured to receive a request from
one or more services; and
10 a processing unit [304] configured to:
check the request to identify at least one of an
operation from one or more operations, and a database of a
storage unit [306]; and
execute the identified operation utilising the
15 identified database via an interface.
9. The system as claimed in claim 8, wherein the request corresponds to
at least one of a data storing request, a data retrieving request, and a
data modifying request.
20
10. The system as claimed in claim 8, wherein the one or more operations
corresponds to at least one of storing a set of data in the storage unit
[306], retrieving the set of data from the storage unit [306], and
modifying the set of data stored in the storage unit [306].
25
11. The system as claimed in claim 8, wherein the request is received via a
hypertext transfer protocol (HTTP) from the one or more services.
29
12. The system as claimed in claim 8, wherein the storage unit [306]
comprises a plurality of databases.
13. The system as claimed in claim 8, wherein the interface is AU_NS
5 interface.
14. The system as claimed in claim 13, wherein the one or more operations are executed via the AU_NS interface.
| # | Name | Date |
|---|---|---|
| 1 | 202321066606-STATEMENT OF UNDERTAKING (FORM 3) [04-10-2023(online)].pdf | 2023-10-04 |
| 2 | 202321066606-PROVISIONAL SPECIFICATION [04-10-2023(online)].pdf | 2023-10-04 |
| 3 | 202321066606-POWER OF AUTHORITY [04-10-2023(online)].pdf | 2023-10-04 |
| 4 | 202321066606-FORM 1 [04-10-2023(online)].pdf | 2023-10-04 |
| 5 | 202321066606-FIGURE OF ABSTRACT [04-10-2023(online)].pdf | 2023-10-04 |
| 6 | 202321066606-DRAWINGS [04-10-2023(online)].pdf | 2023-10-04 |
| 7 | 202321066606-Proof of Right [09-02-2024(online)].pdf | 2024-02-09 |
| 8 | 202321066606-FORM-5 [04-10-2024(online)].pdf | 2024-10-04 |
| 9 | 202321066606-ENDORSEMENT BY INVENTORS [04-10-2024(online)].pdf | 2024-10-04 |
| 10 | 202321066606-DRAWING [04-10-2024(online)].pdf | 2024-10-04 |
| 11 | 202321066606-CORRESPONDENCE-OTHERS [04-10-2024(online)].pdf | 2024-10-04 |
| 12 | 202321066606-COMPLETE SPECIFICATION [04-10-2024(online)].pdf | 2024-10-04 |
| 13 | 202321066606-FORM 3 [08-10-2024(online)].pdf | 2024-10-08 |
| 14 | 202321066606-Request Letter-Correspondence [24-10-2024(online)].pdf | 2024-10-24 |
| 15 | 202321066606-Power of Attorney [24-10-2024(online)].pdf | 2024-10-24 |
| 16 | 202321066606-Form 1 (Submitted on date of filing) [24-10-2024(online)].pdf | 2024-10-24 |
| 17 | 202321066606-Covering Letter [24-10-2024(online)].pdf | 2024-10-24 |
| 18 | 202321066606-CERTIFIED COPIES TRANSMISSION TO IB [24-10-2024(online)].pdf | 2024-10-24 |
| 19 | Abstract.jpg | 2024-12-03 |
| 20 | 202321066606-ORIGINAL UR 6(1A) FORM 1 & 26-030125.pdf | 2025-01-07 |