Sign In to Follow Application
View All Documents & Correspondence

Method And System For Synchronizing An Inventory Database

Abstract: ABSTRACT METHOD AND SYSTEM FOR SYNCHRONIZING AN INVENTORY DATABASE The present disclosure relates to methods for synchronizing an inventory database (214) in a network (106) by a processor (202). The method includes retrieving, from an IM (408), a first list pertaining to one or more CNFCs and corresponding one or more resources of a server (104) utilized by the CNFCs. Further, the method includes retrieving, from an adapting unit (410), a second list pertaining to the CNFCs and the corresponding one or more resources of server utilized by the CNFCs. Further, the method includes comparing the first list with the second list to changes detected for an update pertaining to the CNFCs and the corresponding resources utilized by the CNFCs. Further, the method includes updating the database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding resources based on the comparison, so as to synchronize the database (214). Ref. FIG. 6

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
20 September 2023
Publication Number
03/2025
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
Parent Application

Applicants

JIO PLATFORMS LIMITED
Office-101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, India

Inventors

1. Aayush Bhatnagar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
2. Ankit Murarka
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
3. Rizwan Ahmad
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
4. Kapil Gill
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
5. Arpit Jain
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
6. Shashank Bhushan
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
7. Jugal Kishore
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
8. Meenakshi Sarohi
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
9. Kumar Debashish
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
10. Supriya Kaushik De
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
11. Gaurav Kumar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
12. Kishan Sahu
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
13. Gaurav Saxena
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
14. Vinay Gayki
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
15. Mohit Bhanwria
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
16. Durgesh Kumar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
17. Rahul Kumar
Reliance Corporate Park, Thane - Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India

Specification

DESC:
FORM 2

THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003

COMPLETE SPECIFICATION
(See section 10 and rule 13)
1. TITLE OF THE INVENTION
METHOD AND SYSTEM FOR SYNCHRONIZING AN INVENTORY DATABASE
2. APPLICANT(S)
NAME NATIONALITY ADDRESS
JIO PLATFORMS LIMITED INDIAN OFFICE-101, SAFFRON, NR. CENTRE POINT, PANCHWATI 5 RASTA, AMBAWADI, AHMEDABAD 380006, GUJARAT, INDIA
3.PREAMBLE TO THE DESCRIPTION

THE FOLLOWING SPECIFICATION PARTICULARLY DESCRIBES THE NATURE OF THIS INVENTION AND THE MANNER IN WHICH IT IS TO BE PERFORMED.

FIELD OF THE INVENTION
[0001] The present invention relates generally to a communication network, and in particular, to a method and a system for synchronizing an inventory database in the communication network.
BACKGROUND OF THE INVENTION
[0002] In a telecommunication network, at the time of instantiation, a request is made to an inventory management for resources (e.g., bandwidth, memory usage or the like). In some cases, there may not be a synchronization (sync) of the resources with a real inventory. For example, although the resources are actually available but due to data mismatch at an inventory level, the inventory may reply that resources are not available. This may impact the instantiation. Further, the instantiation of the Cloud-Native Network Function (CNF) may be impacted and a user of the telecommunication network may not be able to instantiate them, due to this mismatch.
[0003] There is, therefore, a need for solutions for automatically synchronizing host inventories with the available resources in a network (e.g., communication network or the like).
SUMMARY OF THE INVENTION
[0004] One or more embodiments of the present disclosure provide a system and a method for synchronizing an inventory database in a network (e.g., communication network or the like).
[0005] In one aspect of the present invention, the method for synchronizing the inventory database in the network is disclosed. The method includes retrieving, by one or more processors, from an Inventory Manager (IM), a first list pertaining to one or more Cloud Native Network Functions Components (CNFCs) and corresponding one or more resources of a server utilized by the one or more CNFCs. Further, the method includes retrieving, by the one or more processors, from an adapting unit, a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the method includes comparing, by the one or more processors, the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the method includes updating, by the one or more processors, the inventory database with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database.
[0006] In an embodiment, the synchronization of the inventory database is initiated upon receiving at least one of, an on-demand request via Command Line Interface (CLI) unit and a scheduled request via a Platform Scheduler and Cron Management (PSC) unit.
[0007] In an embodiment, the one or more resources is at least one of: a physical memory, Random Access Memory (RAM), and Central Processing Unit (CPU).
[0008] In an embodiment, the adapting unit in communication with one or more servers, fetches, details of the one or more CNFCs and the corresponding one or more resources from the one or more servers.
[0009] In an embodiment, the one or more processors retrieves the first list based on requesting details of one or more servers on which the one or more CNFCs are running from the IM.
[0010] In an embodiment, the IM is a Physical and Virtual Inventory Manager (PVIM).
[0011] In an embodiment, the step of, updating, the inventory database with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, includes the step of transmitting, by the one or more processors, data updated at the inventory database to a user. The data updated at the inventory database pertains to changes detected with respect to the one or more CNFCs and the corresponding one or more resources of the server.
[0012] In another aspect of the present invention, a system for synchronizing the inventory database in the network is disclosed. The system includes a retrieving unit, a comparing unit and an updating unit. The retrieving unit is configured to retrieve, from an IM, a first list pertaining to one or more CNFCs and corresponding one or more resources of a server utilized by the one or more CNFCs. Further, the retrieving unit is configured to retrieve, from an adapting unit, a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the comparing unit is configured to compare, the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the updating unit is configured to update the inventory database with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, when the changes are is detected based on comparing the first list with the second list, thereby synchronizing the inventory database.
[0013] In another aspect of the present invention, a non-transitory computer-readable medium having stored thereon computer-readable instructions is provided. The computer-readable instructions, when executed by a processor, cause the processor to retrieve, from an IM, a first list pertaining to one or more CNFCs and corresponding one or more resources of a server utilized by the one or more CNFCs. Further, the processor is configured to retrieve, from an adapting unit, a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the processor is configured to compare, the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the processor is configured to update the inventory database with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database.
[0014] In another aspect of the present invention, a UE includes one or more primary processors communicatively coupled to one or more processors. The one or more primary processors are coupled with a memory. The memory stores instructions which when executed by the one or more primary processors causes the UE to transmit, a request for synchronization, to the one or more processors, via a UI. The one or more processors is configured to retrieve, from an IM, a first list pertaining to one or more CNFCs and corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the one or more processors is configured to retrieve, from an adapting unit, a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the one or more processors is configured to compare, the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the one or more processors is configured to update the inventory database with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database.
[0015] Other features and aspects of this invention will be apparent from the following description and the accompanying drawings. The features and advantages described in this summary and in the following detailed description are not all-inclusive, and particularly, many additional features and advantages will be apparent to one of ordinary skill in the relevant art, in view of the drawings, specification, and claims hereof. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0017] FIG. 1 is an exemplary block diagram of an environment for synchronizing an inventory database in a network (e.g., communication network or the like), according to various embodiments of the present disclosure.
[0018] FIG. 2 is a block diagram of a system of FIG. 1, according to various embodiments of the present disclosure.
[0019] FIG. 3 is an example schematic representation of the system of FIG. 1 in which various entities operations are explained, according to various embodiments of the present system.
[0020] FIG. 4 illustrates a flow diagram of a process of synchronizing the inventory database in the network, in accordance with an embodiment of the present disclosure.
[0021] FIG. 5 illustrates a system architecture for synchronizing the inventory database in the network, in accordance with an embodiment of the present disclosure.
[0022] FIG. 6 is an exemplary flow diagram illustrating the method for synchronizing the inventory database in the network, according to various embodiments of the present disclosure.
[0023] Further, skilled artisans will appreciate that elements in the drawings are illustrated for simplicity and may not have necessarily been drawn to scale. For example, the flow charts illustrate the method in terms of the most prominent steps involved to help to improve understanding of aspects of the present invention. Furthermore, in terms of the construction of the device, one or more components of the device may have been represented in the drawings by conventional symbols, and the drawings may show only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the drawings with details that will be readily apparent to those of ordinary skill in the art having benefit of the description herein.
[0024] The foregoing shall be more apparent from the following detailed description of the invention.

DETAILED DESCRIPTION OF THE INVENTION
[0025] Some embodiments of the present disclosure, illustrating all its features, will now be discussed in detail. It must also be noted that as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise.
[0026] Various modifications to the embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments. However, one of ordinary skill in the art will readily recognize that the present disclosure including the definitions listed here below are not intended to be limited to the embodiments illustrated but is to be accorded the widest scope consistent with the principles and features described herein.
[0027] A person of ordinary skill in the art will readily ascertain that the illustrated steps detailed in the figures and here below are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0028] Before discussing example, embodiments in more detail, it is to be noted that the drawings are to be regarded as being schematic representations and elements that are not necessarily shown to scale. Rather, the various elements are represented such that their function and general purpose becomes apparent to a person skilled in the art. Any connection or coupling between functional blocks, devices, components, or other physical or functional units shown in the drawings or described herein may also be implemented by an indirect connection or coupling. A coupling between components may also be established over a wireless connection. Functional blocks may be implemented in hardware, firmware, software or a combination thereof.
[0029] Further, the flowcharts provided herein, describe the operations as sequential processes. Many of the operations may be performed in parallel, concurrently or simultaneously. In addition, the order of operations maybe re-arranged. The processes may be terminated when their operations are completed, but may also have additional steps not included in the figured. It should be noted, that in some alternative implementations, the functions/acts/ steps noted may occur out of the order noted in the figured. For example, two figures shown in succession may, in fact, be executed substantially concurrently, or may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
[0030] Further, the terms first, second etc… may be used herein to describe various elements, components, regions, layers and/or sections, it should be understood that these elements, components, regions, layers and/or sections should not be limited by these terms. These terms are used only to distinguish one element, component, region, layer or section from another region, layer, or a section. Thus, a first element, component, region layer, or section discussed below could be termed a second element, component, region, layer, or section without departing form the scope of the example embodiments.
[0031] Spatial and functional relationships between elements (for example, between modules) are described using various terms, including “connected,” “engaged,” “interfaced,” and “coupled.” Unless explicitly described as being “direct,” when a relationship between first and second elements is described in the description below, that relationship encompasses a direct relationship where no other intervening elements are present between the first and second elements, and also an indirect relationship where one or more intervening elements are present (either spatially or functionally) between the first and second elements. In contrast, when an element is referred to as being "directly” connected, engaged, interfaced, or coupled to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., "between," versus "directly between," "adjacent," versus "directly adjacent," etc.).
[0032] The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which example embodiments belong. It will be further understood that terms, e.g., those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0033] As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the terms “and/or” and “at least one of” include any and all combinations of one or more of the associated listed items. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0034] Unless specifically stated otherwise, or as is apparent from the description, terms such as “processing” or “computing” or “calculating” or “determining” of “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device/hardware, that manipulates and transforms data represented as physical, electronic quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
[0035] The proposed system and proposed method can be used for synchronizing an inventory database in a network (e.g., communication network or the like). The method includes retrieving, by one or more processors, from an Inventory Manager (IM), a first list pertaining to one or more Cloud Native Network Functions Components (CNFCs) and corresponding one or more resources of a server utilized by the one or more CNFCs. Further, the method includes retrieving, by the one or more processors, from an adapting unit, a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the method includes comparing, by the one or more processors, the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs. Further, the method includes updating, by the one or more processors, the inventory database with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database.
[0036] As mentioned above, in some scenarios, there is no synchronization (sync) of the resources with a real inventory. For example, although the resources are actually available but due to data mismatch at an inventory level, the inventory may reply that resources are not available. This impacts the instantiation of Cloud-Native Network Function (CNF) and CNFCs, as a result of which a user of the network may not be able to instantiate them, due to this mismatch.
[0037] The present method provides for an auditor service (AU) that audits the resources in terms of physical memory, RAM and CPU at an inventory manager and brings the inventory in close synchronization (sync) with real-time available resources (or used resources). Further, the auditor service minimizes the mismatch between the inventory manager and a real-time hardware. The data accuracy depends primarily on Swarm Adaptor (SA) and the inventory manager. The AU detects whether the system contain less or more containers than the amount present in inventory managed by the inventory manager, and accordingly sends an application programming interface (API) request to the IM to update its inventory.
[0038] In an example, the present disclosure relates to a microservice auditor. The function of this microservice is to synchronize (sync) resources at the actual server level and at the inventory where the data is stored for hosts. Resources such as the memory, RAM, CPU, etc. are stored on a physical virtual inventory manager (PVIM) side. The microservice helps in syncing these resources. Further, the microservice minimizes the mismatch between inventory management and real-time hardware (for example, the hardware including physical memory, RAM, CPU, etc.). For example, when a new user wants to instantiate N number of instances of their microservice with the specified resources and have requirement of say 10 GB of memory. At the time of instantiation, a request may be made to the PVIM to ask for the resources.
[0039] FIG. 1 illustrates an exemplary block diagram of an environment (100) for synchronizing an inventory database (214) (as shown in FIG. 2) in a communication network (106), according to various embodiments of the present disclosure. The environment (100) comprises a plurality of user equipment’s (UEs) (102-1, 102-2, ……,102-n). The at least one UE (102-n) from the plurality of the UEs (102-1, 102-2, ……102-n) is configured to connect to a system (108) via the communication network (106). Hereafter, label for the plurality of UEs or one or more UEs is 102.
[0040] In accordance with yet another aspect of the exemplary embodiment, the plurality of UEs (102) may be a wireless device or a communication device that may be a part of the system (108). The wireless device or the UE (102) may include, but are not limited to, a handheld wireless communication device (e.g., a mobile phone, a smart phone, a phablet device, and so on), a wearable computer device (e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with wireless communication or Voice Over Internet Protocol (VoIP) capabilities. In an embodiment, the UEs may include, but are not limited to, any electrical, electronic, electro-mechanical or an equipment or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a microphone, a keyboard, input devices for receiving input from a user such as touch pad, touch enabled screen, electronic pen and the like. It may be appreciated that the UEs may not be restricted to the mentioned devices and various other devices may be used. A person skilled in the art will appreciate that the plurality of UEs (102) may include a fixed landline, a landline with assigned extension within the communication network (106).
[0041] The communication network (106), may use one or more communication interfaces/protocols such as, for example, Voice Over Internet Protocol (VoIP), 802.11 (Wi-Fi), 802.15 (including Bluetooth™), 802.16 (Wi-Max), 802.22, Cellular standards such as Code Division Multiple Access (CDMA), CDMA2000, Wideband CDMA (WCDMA), Radio Frequency Identification (e.g., RFID), Infrared, laser, Near Field Magnetics, etc.
[0042] The communication network (106) includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof. The communication network (106) may include, but is not limited to, a Third Generation (3G) network, a Fourth Generation (4G) network, a Fifth Generation (5G) network, a Sixth Generation (6G) network, a New Radio (NR) network, a Narrow Band Internet of Things (NB-IoT) network, an Open Radio Access Network (O-RAN), and the like.
[0043] The communication network (106) may also include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth. The communication network (106) may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, a VOIP or some combination thereof.
[0044] The system (108) is communicatively coupled to a server (104) via the communication network (106). The server (104) can be, for example, but not limited to a standalone server, a server blade, a server rack, an application server, a bank of servers, a business telephony application server (BTAS), a server farm, a cloud server, an edge server, home server, a virtualized server, one or more processors executing code to function as a server, or the like. In an implementation, the server (104) may operate at various entities or a single entity (include, but is not limited to, a vendor side, a service provider side, a network operator side, a company side, an organization side, a university side, a lab facility side, a business enterprise side, a defense facility side, or any other facility) that provides service.
[0045] The environment (100) further includes the system (108) communicably coupled to the server (e.g., remote server or the like) (104) and each UE of the plurality of UEs (102) via the communication network (106). The remote server (104) is configured to execute the requests in the communication network (106).
[0046] The system (108) is adapted to be embedded within the remote server (104) or is embedded as the individual entity. The system (108) is designed to provide a centralized and unified view of data and facilitate efficient business operations. The system (108) is authorized to access to update/create/delete one or more parameters of their relationship between the requests for the API call flows, which gets reflected in real-time independent of the complexity of network.
[0047] In another embodiment, the system (108) may include an enterprise provisioning server (for example), which may connect with the remote server (104). The enterprise provisioning server provides flexibility for enterprises, ecommerce, finance to update/create/delete information related to the requests in real time as per their business needs. A user with administrator rights can access and retrieve the requests for the API call flows and perform real-time analysis in the system (108).
[0048] The system (108) may include, by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a business telephony application server (BTAS), a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof. In an implementation, system (108) may operate at various entities or single entity (for example include, but is not limited to, a vendor side, service provider side, a network operator side, a company side, an organization side, a university side, a lab facility side, a business enterprise side, ecommerce side, finance side, a defense facility side, or any other facility) that provides service.
[0049] However, for the purpose of description, the system (108) is described as an integral part of the remote server (104), without deviating from the scope of the present disclosure. Operational and construction features of the system (108) will be explained in detail with respect to the following figures.
[0050] FIG. 2 illustrates a block diagram of the system (108) provided for synchronizing the inventory database (214) in the communication network (106), according to one or more embodiments of the present invention. As per the illustrated embodiment, the system (108) includes one or more processors (202), a memory (204), an user interface (206), a display (208), an input device (210), and the inventory database (214). Further the system (108) may comprise one or more processors (202). The one or more processors (202), hereinafter referred to as the processor (202) may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions. As per the illustrated embodiment, the system (108) includes one processor. However, it is to be noted that the system (108) may include multiple processors as per the requirement and without deviating from the scope of the present disclosure.
[0051] The information related to the request may be provided or stored in the memory (204) of the system (108). Among other capabilities, the processor (202) is configured to fetch and execute computer-readable instructions stored in the memory (204). The memory (204) may be configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory (204) may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as disk memory, EPROMs, FLASH memory, unalterable memory, and the like.
[0052] The memory (204) may comprise any non-transitory storage device including, for example, volatile memory such as Random-Access Memory (RAM), or non-volatile memory such as Electrically Erasable Programmable Read-only Memory (EPROM), flash memory, and the like. In an embodiment, the system (108) may include an interface(s). The interface(s) may comprise a variety of interfaces, for example, interfaces for data input and output devices, referred to as input/output (I/O) devices, storage devices, and the like. The interface(s) may facilitate communication for the system. The interface(s) may also provide a communication pathway for one or more components of the system. Examples of such components include, but are not limited to, processing unit/engine(s) and the inventory database (214). The processing unit/engine(s) may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s).
[0053] The information related to the requests may further be configured to render on the user interface (206). The user interface (206) may include functionality similar to at least a portion of functionality implemented by one or more computer system interfaces such as those described herein and/or generally known to one having ordinary skill in the art. The user interface (206) may be rendered on the display (208), implemented using Liquid Crystal Display (LCD) display technology, Organic Light-Emitting Diode (OLED) display technology, and/or other types of conventional display technology. The display (208) may be integrated within the system (108) or connected externally. Further the input device(s) (210) may include, but not limited to, keyboard, buttons, scroll wheels, cursors, touchscreen sensors, audio command interfaces, magnetic strip reader, optical scanner, etc.
[0054] The inventory database (214) may be communicably connected to the processor (202) and the memory (204). The inventory database (214) may be configured to store and retrieve the request pertaining to features, or services or API call flows of the system (108), access rights, attributes, approved list, and authentication data provided by an administrator. Further the remote server (104) may allow the system (108) to update/create/delete one or more parameters of their information related to the API call flows, which provides flexibility to roll out multiple variants of the request as per business needs. In another embodiment, the inventory database (214) may be outside the system (108) and communicated through a wired medium and wireless medium.
[0055] Further, the processor (202), in an embodiment, may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor (202). In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processor (202) may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor (202) may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the memory (204) may store instructions that, when executed by the processing resource, implement the processor (202). In such examples, the system (108) may comprise the memory (204) storing the instructions and the processing resource to execute the instructions, or the memory (204) may be separate but accessible to the system (108) and the processing resource. In other examples, the processor (202) may be implemented by an electronic circuitry.
[0056] In order for the system (108) for synchronizing the inventory database (214) in the communication network (106), the processor (202) includes a retrieving unit (216), a comparing unit (218), and an updating unit (220). The retrieving unit (216), the comparing unit (218), and the updating unit (220) may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor (202). In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processor (202) may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor (202) may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the memory (204) may store instructions that, when executed by the processing resource, implement the processor. In such examples, the system (108) may comprise the memory (204) storing the instructions and the processing resource to execute the instructions, or the memory (204) may be separate but accessible to the system (108) and the processing resource. In other examples, the processor (202) may be implemented by the electronic circuitry.
[0057] In order for the system (108) synchronizing the inventory database (214) in the communication network (106), the retrieving unit (216), the comparing unit (218), and the updating unit (220) are communicably coupled to each other. In an example embodiment, the retrieving unit (216) retrieves a first list pertaining to one or more CNFCs and corresponding one or more resources of the server (104) utilized by the one or more CNFCs from an Inventory Manager (IM) (404) (as shown in FIG. 4). The IM can be, for example, but not limited to a Physical and Virtual Inventory Manager (PVIM) (408). The one or more resources can be, for example, but not limited to a physical memory, Random Access Memory (RAM), and Central Processing Unit (CPU). In an embodiment, the retrieving unit (216) retrieves the first list based on requesting details of one or more servers (104) on which the one or more CNFCs are running from the IM (404). In an example, the retrieving unit (216) retrieves sync configurations and a monitor resource utilization. The sync configurations ensure that the configurations and resources are properly aligned and synchronized across different servers. The monitor resource utilization tracks which resources are associated with which configurations, helping in resource management and optimization in the communication network (106).
[0058] Further, the retrieving unit (216) retrieves a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs in real time from an adapting unit (410) (as shown in FIG. 4). The adapting unit (410) in communication with the one or more servers (104), fetches details of the one or more CNFCs and the corresponding one or more resources of the server (104) from the one or more servers (104). In other words, the adapting unit (410) is responsible for real-time fetching and integration of configuration details and resource information from one or more servers (104). This functionality is crucial for maintaining up-to-date synchronization of the inventory database (214) across the network (106), ensuring that configuration changes and resource allocations are accurately reflected and managed.
[0059] Further, comparing unit (218) compares the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs. Further, the updating unit (220) updates the inventory database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) in real time, when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database (214). The synchronization of the inventory database (214) is initiated upon receiving at least one of, an on-demand request via Command Line Interface (CLI) unit (404) and a scheduled request via a Platform Scheduler and Cron Management (PSC) unit (402) as shown in FIG. 4. The updating unit (220) notifies the data updated at the inventory database (214) to a user. The data updated at the inventory database (214) pertains to changes detected with respect to the one or more CNFCs and the corresponding one or more resources of the server (104).
[0060] In an example, consider, the system (108) keeps track of resources of the server (104) and the state of various CNFCs. The system (108) maintains the inventory database (214) that reflects the current status of the resources. At an initial state, the retrieving unit (216) retrieves the first list. The first list represents the initial inventory of resources and CNFCs at a given time. For example, a first CNFC uses 2 GB of RAM and 50% CPU, a second CNFC uses 4 GB of RAM and 30% CPU, total RAM available is 32 GB and a total CPU usage is 20%.
[0061] Further, the system (108) periodically checks the current state of the resources of the server (104) and the CNFCs. After some time, the retrieving unit (216) retrieves the second list. The second list captures the updated state of resources and the CNFCs. For example, the first CNFC now uses 3 GB of RAM and 60% CPU, the second CNFC uses 4 GB of RAM and 35% CPU, the total RAM available is 31 GB (indicating a change), and total CPU usage is 25% (indicating a change)
[0062] Further, the comparing unit (218) examines the differences between the first list and the second list. Further, the comparing unit (218) detects the changes such as the first CNFC’s RAM usage increased from 2 GB to 3 GB, the first CNFC’s CPU usage increased from 50% to 60%, a second CNFC’s CPU usage increased from 30% to 35%., total RAM available decreased by 1 GB and total CPU usage increased by 5%.
[0063] Further, the updating unit (220) updates the inventory database (214) with the detected changes (such as updated first CNFC’s record to show 3 GB of RAM and 60% CPU, the updated second CNFC’s record to show 4 GB of RAM and 35% CPU, and adjusted the total RAM and CPU usage metrics in the database (214)). Hence, the inventory database (214) now accurately represents the current resource usage and allocation.
[0064] More details, functions and operations of synchronizing the inventory database (214) are explained in FIG. 4 to FIG. 6.
[0065] FIG. 3 is an example schematic representation of the system (300) of FIG. 1 in which various entities operations are explained, according to various embodiments of the present system. It is to be noted that the embodiment with respect to FIG. 3 will be explained with respect to the first UE (102-1) and the system (108) for the purpose of description and illustration and should nowhere be construed as limited to the scope of the present disclosure.
[0066] As mentioned earlier, the first UE (102-1) includes one or more primary processors (305) communicably coupled to the one or more processors (202) of the system (108). The one or more primary processors (305) are coupled with a memory (310) storing instructions which are executed by the one or more primary processors (305). Execution of the stored instructions by the one or more primary processors (305) causes the UE (102-1) to transmit a request for synchronization, to the one or more processors (202), via a User Interface (UI) (206).
[0067] As per the illustrated embodiment, the system (108) includes the one or more processors (202), the memory (204), the user interface (206), the display (208), and the input device (210). The operations and functions of the one or more processors (202), the memory (204), the user interface (206), the display (208), and the input device (210) are already explained in FIG. 2. For the sake of brevity, we are not explaining the same operations (or repeated information) in the patent disclosure. Further, the processor (202) includes the retrieving unit (216), the comparing unit (218), and the updating unit (220). The operations and functions of the retrieving unit (216), the comparing unit (218), and the updating unit (220) are already explained in FIG. 2. For the sake of brevity, we are not explaining the same operations (or repeated information) in the patent disclosure.
[0068] FIG. 4 illustrates a flow diagram (400) of a process of synchronizing the inventory database (214) in the communication network (106), in accordance with an embodiment of the present disclosure. In an example, there may be two types of synchronization (syncs) – the first being a periodic type with a scheduler (not shown) that may regularly sync-up the resources. The second may be an on-demand solution that allows to do a sync-up, at any time other than the scheduled time, using a CLI command.
[0069] As shown in FIG. 4, information of the system (108) may be obtained from the PVIM for all the CNFCs running. Using the CNFC details, a Monitor, Microservice auditor (MAUD) (or auditor) (406) may send a service request to the adapting unit (410). By using the adapting unit (410), the actual resources that are running on that system (108) may be obtained. Thereafter, the information about the actual resources used by the CNFCs may be obtained and that may be sent back to the IM (e.g., PVIM or the like) (408). The PVIM may then update on its own inventory database (214). In this way, the actual resources are updated at the PVIM (i.e., inventory side).
[0070] As mentioned above, there are two ways through which the request for the syncing may be made - one using the CLI command and the other using a schedule job. After receiving the request at the MAUD (406), a list of CNF is requested from the PVIM, in response to which the PVIM (408) sends the list of CNF to the MAUD (406). It should be noted that for each CNF, there may exist multiple CNFCs. Therefore, for each CNF, a list of all the CNFCs running on all the servers (104) within a region may be received. The region is defined by the system (108) or a service provider.
[0071] Once the information of all the CNFCs (that includes information about which CNFC is running on which host or which server (104)) is obtained, then based on this information, JSON data (for example) may be sent to the adapting unit (410). The adapting unit (410) may be used to get the actual resources running. Therefore, the adapting unit microservice, after receiving this information, gets the detail corresponding to that CNFC and then sends back details corresponding to each CNFCs. After getting the updated data, the updated data is sent back to the PVIM to update its resources that are earlier present in the inventory. Therefore, the resources are updated.
[0072] The MAUD (406) may obtain a node list of the PVIM. Further, the MAUD (406) may receive a fetch service (i.e. the service list or the details of CNFCs). Thereafter, the MAUD (406) may receive a CNFC list at the particular node. For example, if there are 10 nodes, then the MAUD (406) may receive a list of 10 nodes from the PVIM. Further, the MAUD (406) may receive all the CNFCs present in these nodes, in a last get event. After that, the auditing may be performed at the MAUD level. Upon auditing, the inventory is updated. In a nutshell, the process of automatically synchronizing the inventories with the available resources may be performed through the following steps:
[0073] At step 1, the syncing of resources is done both via the on-demand request (e.g. via Command Line Interface (CLI) (404)) and by the PSC management unit (402)) by using a START_SYNC_FOR_CNF CLI: synccnfc command. The START_SYNC_FOR_CNF CLI:synccnfc is a command used to initiate a synchronization process for Cloud-Native Network Functions, ensuring that their configurations and states are up-to-date and consistent with the desired specifications. The START_SYNC_FOR_CNF CLI:synccnfc helps in maintaining the operational integrity and performance of CNFs in the communication network (106).
[0074] At step 2, the on-demand request is received by the auditor (406) to initiate a syncing process using a GET_CNF_LIST_FROM_PVIM. In an embodiment, the MAUD (406) sends the GET_CNF_LIST_FROM_PVIM to the IM (408). The GET_CNF_LIST_FROM_PVIM is likely a function or API call used to query or retrieve a list of CNFs from the PVIM (408). The GET_CNF_LIST_FROM_PVIM may involve fetching a CNF metadata operation and an inventory management operation. The fetching CNF metadata operation includes obtaining details about deployed CNFs, such as their configurations, and resource usage. The inventory management operation includes listing all CNFs that are currently managed or recognized by the PVIM (408). At step 3, the auditor (406) requests the list of CNFs from the IM (408) (by using the GET_CNF_LIST_FROM_PVIM). The GET_CNF_LIST_FROM_PVIM would help in synchronization, configuration management and integrating configuration. The synchronization ensures that the configuration settings are consistent and up-to-date across different nodes involved in an inventory synchronization process. The configuration management accesses and manages configuration details stored in a PVIM system for accurate synchronization. The integrating configuration details from a specific source to align with the synchronization needs of the inventory database (214).
[0075] At step 4, for every CNF, its details are fetched from the inventory corresponding to each CNFC present in CNF’s service-id list, and the server details on which the CNFC is running (by using a GET_CNFC_LIST_BY_CNFID). In an embodiment, the MAUD (406) sends the GET_CNFC_LIST_BY_CNFID to the IM (408). The GET_CNFC_LIST_BY_CNFID appears to be a command or function used to retrieve a list of configuration details based on a specific configuration identifier. The GET_CNFC_LIST_BY_CNFID is an operation used to retrieve a list of configurations for the specific CNF, identified by its unique CNFID. This operation is crucial for managing, inspecting, and maintaining the configurations of CNFs, ensuring they are properly set up and functioning as intended. At step 5, the MAUD (406) receives the GET_CNFC_LIST_BY_CNFID from the IM (408) in response to step 4.
[0076] At step 6, the MAUD (406) sends a FETCH_CNFC_DETAILS to the adapting unit (410). The FETCH_CNFC_DETAILS would typically be a command or function used to obtain detailed configuration information necessary for synchronizing the inventory database (214). This might include data such as synchronization schedules, network settings, data mapping rules, or other parameters needed to ensure that the inventory data is correctly and efficiently synchronized across different nodes in the communication network (106). At step 7, the MAUD (406) receives the FETCH_CNFC_DETAILS from the adapting unit (410) in response to step 6.
[0077] At step 8, the MAUD (406) sends a GET_NODE_LIST_FROM_PVIM to the IM (408). The GET_NODE_LIST_FROM_PVIM refers to the command or function used to retrieve the list of nodes (or system components) from a specific source identified as PVIM. The GET_NODE_LIST_FROM_PVIM is an operation used to retrieve a list of nodes from the PVIM (408). This is crucial for managing and overseeing the infrastructure on which Cloud-Native Network Functions are deployed, providing necessary visibility and information for operational and management tasks. At step 9, the MAUD (406) receives a response for the GET_NODE_LIST_FROM_PVIM from the IM (408). The node details list is also got from the inventory manager.
[0078] At step 10, for every node in the node-list, a list of CNFC details with actual resources are fetched per node by the adapting unit (410). (by using a FETCH_SERVICE_LIST_FOR_NODE). The FETCH_SERVICE_LIST_FOR_NODE is an operation used to retrieve a list of services running on the PVIM (408) within the communication network (106). In an embodiment, the MAUD (406) sends a FETCH_SERVICE_LIST_FOR_NODE to the adapting unit (410). At step 11, the MAUD (406) receives a response for the FETCH_SERVICE_LIST_FOR_NODE from the adapting unit (410) in response to step 10.
[0079] Further, the node list includes actual resources sent by a swarm adaptor back to the auditor (406). Further, the auditor (406) sends this updated list to the IM (408) and gets the updated list from the IM (408). Further, the IM (408) then updates the details of the resources on its own database (214).
[0080] At step 12, the MAUD (406) sends a GET_CNFC_LIST_BY_NODEID to the IM (408). At step 13, the MAUD (406) receives a response for the GET_CNFC_LIST_BY_NODEID from the IM (408). In an example, the GET_CNFC_LIST_BY_NODEID is the command used to retrieve the list of configuration details associated with a specific node identified by a Node ID. Finally, the updated resource’s list is sent back to the auditor (406) by using the GET_CNFC_LIST_BY_NODEID.
[0081] At step 14, the UI (206) sends a GET_CNFC_INVENTORY_AUDIT to MAUD (406). At step 15, the UI (206) receives a response for the GET_CNFC_INVENTORY_AUDIT from the MAUD (406) in response to step 14. The GET_CNFC_INVENTORY_AUDIT likely refers to a command used to retrieve details of the audit related to configuration settings within the inventory database (214).
[0082] Once the information of all the CNFCs (that includes information about which CNFC is running on which host or which server (104)) is obtained, then based on this information, the JSON data (for example) may be sent to the adapting unit (410). The adapting unit (410) may be used to get the actual resources running. Therefore, the adapting unit (410), after receiving this information, gets the details corresponding to that CNFC and then sends back details corresponding to each CNFCs. After getting the updated data, the updated data is sent back to the PVIM (408) to update its resources that were earlier present in the inventory. Therefore, the resources are updated.
[0083] FIG. 5 illustrates a system architecture (500) for synchronizing the inventory database (214) in the communication network (106), in accordance with an embodiment of the present disclosure. The system architecture (500) shows microservices that are interacting with the auditor (406). When the service request is received, auditing may be performed using two microservices by the auditor (406). The service request may be received from the CLI (404) or the scheduler. Once the service request is received, the auditor (406) may get the details from the inventory. Further, by using the adapting unit (410), the auditor (406)may receive the updated resources. As such, the auditor (406) may sync and then send the request back to the IM (404).
[0084] Further, the auditor (406) requests the details of the servers on which CNFCs are running from the IM (404) and then using the details, the adapting unit (410) is used to fetch the actual resources used on the actual servers. These actual resource details are then sent to the IM (404) via the auditor (406) which then updates the resources on its own database (214).
[0085] The proposed method provides a periodic sync-up of resources at the server (104) and at inventory’s database (214). Further, the proposed method provides for on-demand clearance of the mismatch between actual resources and the entries present at the inventory database (214). As the process is fully automatic, there is no need to manually calculate and update the resources regularly. This helps in optimizing the resources of the server (104) regularly.
[0086] FIG. 6 is an exemplary flow diagram (600) illustrating the method for synchronizing the inventory database (214) in the communication network (106), according to various embodiments of the present disclosure.
[0087] The method includes retrieving, from the IM (404), the first list pertaining to the one or more CNFCs and corresponding one or more resources of the server (104) utilized by the one or more CNFCs. In an embodiment, the method allows the retrieving unit (216) to retrieve, from the IM (404), the first list pertaining to the one or more CNFCs and corresponding one or more resources of the server (104) utilized by the one or more CNFCs.
[0088] Further, the method includes retrieving, from the adapting unit (410), the second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs. In an embodiment, the method allows the retrieving unit (216) to retrieve, from the adapting unit (410), the second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs.
[0089] Further, the method includes comparing the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs. In an embodiment, the method allows the comparing unit (218) to compare the first list with the second list to check for the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs.
[0090] Further, the method includes updating the inventory database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104), when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database (214). In an embodiment, the method allows the updating unit (220) to update the inventory database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104), when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database (214).
[0091] Below is the technical advancement of the present invention:
[0092] The present disclosure provides for an auditor service (AU) that audits the resources in terms of physical memory, RAM and CPU at an inventory manager and brings the inventory in close synchronization (sync) with real-time available resources (or used resources). Further, the auditor service minimizes the mismatch between the inventory manager and the real-time hardware. The data accuracy depends primarily on Swarm Adaptor (SA) and the inventory manager. The AU detects whether the hosts contain less or more containers than the amount present in inventory managed by the inventory manager, and accordingly sends API request to IM to update its inventory.
[0093] In particular, the present disclosure relates to a MAUD microservice auditor. The function of this microservice is to synchronize (sync) resources at the actual server level and at the inventory where the data is stored for hosts. Resources such as the memory, RAM, CPU, etc. are stored on the Physical Virtual Inventory Manager (PVIM) side. The microservice helps in syncing these resources. Further, the microservice minimizes the mismatch between inventory management and real-time hardware (for example, the hardware including physical memory, RAM, CPU, etc.). For example, when a new user wants to instantiate N number of instances of their microservice with the specified resources and have requirement of say 10 GB of memory. At the time of instantiation, a request may be made to the PVIM to ask for the resources. In some cases, there may not be a sync of the resources with the real inventory. For example, although the resources are actually available, but due to data mismatch at the inventory level, the inventory may reply that resources are not available. This may impact the instantiation. Further, the instantiation of the CNF and CNFCs may be impacted and user may not be able to instantiate them, due to this mismatch.
[0094] The techniques of the proposed method and system provide various advantages including periodic sync-up of resources at server level and at inventory’s database (214). Further, the techniques provide for on-demand clearance of the mismatch between actual resources and the entries present at the inventory. As the process is fully automatic, there is no need to manually calculate and update the resources regularly. This helps in optimizing the resources of the server (104) regularly.
[0095] A person of ordinary skill in the art will readily ascertain that the illustrated embodiments and steps in description and drawings (FIGS. 1-6) are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0096] Method steps: A person of ordinary skill in the art will readily ascertain that the illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0097] The present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features. The listed advantages are to be read in a non-limiting manner.

REFERENCE NUMERALS
[0098] Environment - 100
[0099] UEs– 102, 102-1-102-n
[00100] Server - 104
[00101] Communication network – 106
[00102] System – 108
[00103] Processor – 202
[00104] Memory – 204
[00105] User Interface – 206
[00106] Display – 208
[00107] Input device – 210
[00108] Inventory database – 214
[00109] Retrieving unit– 216
[00110] Comparing unit – 218
[00111] Updating unit– 220
[00112] System - 300
[00113] Primary processors -305
[00114] Memory– 310
[00115] Kernel– 315
[00116] PSC management unit – 402
[00117] CLI unit - 404
[00118] MAUD – 406
[00119] IM – 408
[00120] Adapting unit– 410
[00121] System architecture - 500
,CLAIMS:CLAIMS:
We Claim:
1. A method for synchronizing an inventory database (214) in a network (106), the method comprises the steps of:
retrieving, by one or more processors (202), from an Inventory Manager (IM) (408), a first list pertaining to one or more Cloud Native Network Functions Components (CNFCs) and corresponding one or more resources of a server (104) utilized by the one or more CNFCs;
retrieving, by the one or more processors (202), from an adapting unit (410), a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs;
comparing, by the one or more processors (202), the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server utilized by the one or more CNFCs; and
updating, by the one or more processors (202), the inventory database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104), when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database (214).

2. The method as claimed in claim 1, wherein the synchronization of the inventory database (214) is initiated upon receiving at least one of, an on-demand request via Command Line Interface (CLI) unit (404) and a scheduled request via a Platform Scheduler and Cron Management (PSC) unit (402).

3. The method as claimed in claim 1, wherein the one or more resources are at least one of: a physical memory, Random Access Memory (RAM), and Central Processing Unit (CPU).

4. The method as claimed in claim 1, wherein the adapting unit (410) in communication with one or more servers (104), fetches, details of the one or more CNFCs and the corresponding one or more resources from the one or more servers (104).

5. The method as claimed in claim 1, wherein the one or more processors (202), retrieves the first list based on requesting details of the one or more servers (104) on which the one or more CNFCs are running from the IM (408).

6. The method as claimed in claim 1, wherein the IM (408) is a Physical and Virtual Inventory Manager (PVIM).

7. The method as claimed in claim 1, wherein the step of, updating, the inventory database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104), further includes the step of:
transmitting, by the one or more processors (202), data updated at the inventory database (214) to a user, wherein the data updated at the inventory database (214) pertains to changes detected with respect to the one or more CNFCs and the corresponding one or more resources of the server (204).

8. A system (108) for synchronizing an inventory database (214) in a network (106), the system (108) comprising:
a retrieving unit (216), configured to, retrieve, from an Inventory Manager (IM) (408), a first list pertaining to one or more Cloud Native Network Functions Components (CNFCs) and corresponding one or more resources of a server (104) utilized by the one or more CNFCs;
the retrieving unit (216), configured to, retrieve, from an adapting unit (410), a second list pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs;
a comparing unit (218), configured to, compare, the first list with the second list to check for changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server (104) utilized by the one or more CNFCs; and
an updating unit (220), configured to, update, , the inventory database (214) with the changes detected pertaining to the one or more CNFCs and the corresponding one or more resources of the server, when the changes are detected based on comparing the first list with the second list, thereby synchronizing the inventory database (214).

9. The system as claimed in claim 8, wherein the synchronization of the inventory database (214) is initiated upon receiving at least one of, an on-demand request via Command Line Interface (CLI) unit (404) and a scheduled request via a Platform Scheduler and Cron Management (PSC) unit (402).

10. The system as claimed in claim 8, wherein the one or more resources are at least one of: a physical memory, Random Access Memory (RAM), and Central Processing Unit (CPU).

11. The system as claimed in claim 8, wherein the adapting unit (410) in communication with one or more servers (104), fetches, details of the one or more CNFCs and the corresponding one or more resources from the one or more servers (104).

12. The system as claimed in claim 8, wherein the retrieving unit (216), retrieves the first list based on requesting details of one or more servers (104) on which the one or more CNFCs are running from the IM (408).

13. The system as claimed in claim 8, wherein the IM (408) is a Physical and Virtual Inventory Manager (PVIM).

14. The system as claimed in claim 8, wherein the updating unit (220), is further configured to:
transmit, data updated at the inventory database (214) to a user, wherein the data updated at the inventory database (214) pertains to changes detected with respect to the one or more CNFCs and the corresponding one or more resources of the server (104).

15. A User Equipment (UE) (102), comprising:
one or more primary processors (305) communicatively coupled to one or more processors (202), the one or more primary processors (305) coupled with a memory (310), wherein said memory (310) stores instructions which when executed by the one or more primary processors (305) causes the UE (102-1) to:
transmit a request for synchronization, to the one or more processors (202), via a User Interface (UI) (206),
wherein the one or more processors (202) are configured to perform the steps as claimed in claim 1.

Documents

Application Documents

# Name Date
1 202321063148-STATEMENT OF UNDERTAKING (FORM 3) [20-09-2023(online)].pdf 2023-09-20
2 202321063148-PROVISIONAL SPECIFICATION [20-09-2023(online)].pdf 2023-09-20
3 202321063148-POWER OF AUTHORITY [20-09-2023(online)].pdf 2023-09-20
4 202321063148-FORM 1 [20-09-2023(online)].pdf 2023-09-20
5 202321063148-FIGURE OF ABSTRACT [20-09-2023(online)].pdf 2023-09-20
6 202321063148-DRAWINGS [20-09-2023(online)].pdf 2023-09-20
7 202321063148-DECLARATION OF INVENTORSHIP (FORM 5) [20-09-2023(online)].pdf 2023-09-20
8 202321063148-FORM-26 [27-11-2023(online)].pdf 2023-11-27
9 202321063148-Proof of Right [12-02-2024(online)].pdf 2024-02-12
10 202321063148-DRAWING [19-09-2024(online)].pdf 2024-09-19
11 202321063148-COMPLETE SPECIFICATION [19-09-2024(online)].pdf 2024-09-19
12 Abstract.jpg 2024-10-18
13 202321063148-FORM-9 [10-01-2025(online)].pdf 2025-01-10
14 202321063148-FORM 18A [14-01-2025(online)].pdf 2025-01-14
15 202321063148-Power of Attorney [24-01-2025(online)].pdf 2025-01-24
16 202321063148-Form 1 (Submitted on date of filing) [24-01-2025(online)].pdf 2025-01-24
17 202321063148-Covering Letter [24-01-2025(online)].pdf 2025-01-24
18 202321063148-CERTIFIED COPIES TRANSMISSION TO IB [24-01-2025(online)].pdf 2025-01-24
19 202321063148-FORM 3 [28-01-2025(online)].pdf 2025-01-28
20 202321063148-FORM 3 [28-01-2025(online)]-1.pdf 2025-01-28
21 202321063148-FER.pdf 2025-03-13
22 202321063148-FER_SER_REPLY [20-05-2025(online)].pdf 2025-05-20

Search Strategy

1 202321063148_SearchStrategyNew_E_PCTIN2024051802-ssgy-000001-EN-20250124E_13-03-2025.pdf
2 202321063148_SearchStrategyAmended_E_SearchHistoryAE_04-11-2025.pdf