Method and system for managing containers in inventory
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- JIO PLATFORMS LTD
- Filing Date
- 2024-09-26
- Publication Date
- 2026-07-01
AI Technical Summary
In communication networks, particularly in 5G networks, there is a mismatch between the actual number of containers running on hosts and the inventory records, leading to service operation problems due to inefficient existing solutions that rely on manual methods.
A method and system that involve a transceiver unit, an auditor node, a physical and virtual inventory manager (PVIM), and a service adaptor (SA) to compare the details of servers from the PVIM with actual details from the SA, identifying deviations such as additional or limited containers, and transmitting these deviations to a user interface for corrective actions.
This solution ensures accurate synchronization of host resources with inventory records, reducing manual efforts and optimizing server resource management by automatically detecting and correcting mismatches in container counts.
Smart Images

Figure IN2024051865_03042025_PF_FP_ABST
Abstract
Description
METHOD AND SYSTEM FOR MANAGING CONTAINERS IN INVENTORYFIELD OF INVENTION
[0001] The present disclosure generally relates to network performance management systems. More particularly, embodiments of the present disclosure relate to methods and systems for managing containers in an inventory.BACKGROUND
[0002] The following description of the related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.
[0003] In communication network such as 5G communication network, Containerized Network Functions (CNFs) and Containerized Network Function components (CNFCs) instances run on multiple hosts or servers for providing services in the network. Sometimes, due to some reason, when a user creates CNFCs on hosts, the CNFCs may not get created, however, Inventory Manger (IM) may store the information of the created CNFCs in the inventory. This creates a mismatch in information, since host or server has no actual CNFCs or containers, but the inventory has information of CNFCs, which do not exist. Similarly, sometimes when CNFCs or containers are deleted from the host or server, this information is not synchronized with the inventory. This also creates a mismatch and errors in information of the containers available in the inventory.
[0004] Thus, the number of containers may be more or less in host in actual, however, the inventory has different container availability information. This further creates service operation problems in the network. The existing solutions that are available for this problem are not efficient for managing more or lesser containers mismatching in the network and also use manual methods for solving it, which are time consuming and involve cumbersome tasks.
[0005] Thus, there exists an imperative need in the art to provide an efficient system and method for managing containers in inventory.SUMMARY
[0006] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0007] An aspect of the present disclosure may relate to a method for managing containers in inventory in a network. The method includes receiving, by a transceiver unit, through an auditor node, and from a physical and virtual inventory manager (PVIM), details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI) to obtain the details of the plurality of servers. The method further includes retrieving, by a retrieving unit through a service adaptor (SA), actual details of the plurality of servers on which the plurality of CNFCs are running. The method further includes comparing, by a comparison unit via the auditor node, the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM and the service adaptorSA, respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM, and the SA, respectively, the method further comprises transmitting, by the transceiver unit via the auditor node, details of the deviation to the UI, wherein the details of the deviation comprises a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.
[0008] In an exemplary aspect of the present disclosure, when the deviation comprises the list of additional CNFCs being run on the plurality of servers, the method comprises transmitting, by the transceiver unit to the UI, a termination request, wherein the termination request relates to termination of the additional CNFCs being run on the plurality of servers, wherein, in response to receiving, by the transceiver unit, from the UI, a confirmation to terminate the additional CNFCs, the method comprises terminating, by a terminating unit via the PVIM, the additional CNFCs running on the plurality of servers.
[0009] In an exemplary aspect of the present disclosure, the PVIM is communicably coupled to a database, wherein the database comprises a record of the plurality of CNFCs running on the plurality of servers, and wherein the method comprises updating, by an updating unit via the PVIM, the record in the database.
[0010] In an exemplary aspect of the present disclosure, the details of the plurality of servers from the PVIM and the actual details of the plurality of servers from the service adaptor (SA) are received through at least one of: a Platform Scheduler and Cron jobs (PSC) and a command line interface (CLI).
[0011] Another aspect of the present disclosure may relate to a system for managing containers in an inventory in a network. The system comprises a transceiver unit configured to receive, through an auditor node, and from a physical virtual inventory manager (PVIM), details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI) to obtain the details of the plurality of servers. The system further comprises a retrieving unit configured to retrieve, through a service adaptor (SA), actual details of the plurality of servers on which the plurality of CNFCs are running. The system further comprises a comparison unit configured to compare, via the auditor node, the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM and the service adaptor (SA), respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM, and the service adaptor (SA), respectively, the transceiver unit is configured to transmit, via the auditor node, details of the deviation to the UI, wherein the details of the deviation comprises a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.
[0012] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for a method for managing containers in an inventory in a network, the instructions include executable code which, when executed by one or more units of a system, causes a transceiver unit to receive, through an auditor node, and from a physical virtual inventory manager (PVIM), details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI) to obtain the details of the plurality of servers. The executable code, when executed further causes a retrieving unit to retrieve, through a service adaptor (SA), actual details of the plurality of servers on which the plurality of CNFCs are running. The executable code when executed further causes a comparison unit to compare, via the auditor node, the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM and the service adaptor (SA), respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM, and the service adaptor (SA), respectively, the transceiver unit is caused to transmit, via the auditor node, details of the deviationto the UI, wherein the details of the deviation comprises a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.OBJECTS OF THE DISCLOSURE
[0013] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0014] It is an object of the present disclosure to provide a system and a method for managing containers in an inventory in a network.
[0015] It is another object of the present disclosure to provide a solution for updating host or server resources regularly in automated way without manual auditing of resources.
[0016] It is yet another object of the present disclosure to provide a solution for synchronizing host resources.BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Also, the embodiments shown in the figures are not to be construed as limiting the disclosure, but the possible variants of the method and system according to the disclosure are illustrated herein to highlight the advantages of the disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components.
[0018] FIG. 1 illustrates an exemplary block diagram representation of management and orchestration (MANO) architecture / platform
[0100] ,
[0019] FIG. 2 illustrates an exemplary block diagram of a computing device upon which the features of the present disclosure may be implemented, in accordance with exemplary implementations of the present disclosure.
[0020] FIG. 3 illustrates an exemplary block diagram of a system for managing containers in an inventory in a network, in accordance with exemplary implementations of the present disclosure.
[0021] FIG. 4 illustrates a method flow diagram for managing containers in the inventory in the network, in accordance with exemplary implementations of the present disclosure.
[0022] FIG. 5 illustrates an exemplary block diagram of a system architecture for managing containers in the inventory in the network, in accordance with exemplary implementations of the present disclosure.
[0023] FIG. 6 illustrates a process flow diagram for managing containers in the inventory in the network, in accordance with exemplary implementations of the present disclosure.
[0024] The foregoing shall be more apparent from the following more detailed description of the disclosure.DETAILED DESCRIPTION
[0025] In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter may each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above.
[0026] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
[0027] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that theembodiments may be practiced without these specific details. For example, circuits, systems, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail.
[0028] Also, it is noted that individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure.
[0029] The word “exemplary” and / or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and / or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive — in a manner similar to the term “comprising” as an open transition word — without precluding any additional or other elements.
[0030] As used herein, a “processing unit” or “processor” or “operating processor” includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a Digital Signal Processing (DSP) core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input / output processing, and / or any other functionality that enables the working of the system according to the present disclosure. More specifically, the processor or processing unit is a hardware processor.
[0031] As used herein, “a user equipment”, “a user device”, “a smart-user-device”, “a smartdevice”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless communication device”, “a mobile communication device”, “a communication device” may be any electrical, electronic and / or computing device or equipment, capable of implementing thefeatures of the present disclosure. The user equipment / device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device which is capable of implementing the features of the present disclosure. Also, the user device may contain at least one input means configured to receive an input from unit(s) which are required to implement the features of the present disclosure.
[0032] As used herein, “storage unit” or “memory unit” refers to a machine or computer-readable medium including any mechanism for storing information in a form readable by a computer or similar machine. For example, a computer-readable medium includes read-only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices or other types of machine-accessible storage media. The storage unit stores at least the data that may be required by one or more units of the system to perform their respective functions.
[0033] As used herein, “interface” or “user interface” refers to a shared boundary across which two or more separate components of a system exchange information or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
[0034] All modules, units, components used herein, unless explicitly excluded herein, may be software modules or hardware processors, the processors being a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.
[0035] As used herein, the transceiver unit include at least one receiver and at least one transmitter configured respectively for receiving and transmitting data, signals, information or a combination thereof between units / components within the system and / or connected with the system.
[0036] As used herein, a command-line interface (CLI) is a text-based interface (UI) used to run programs, manage computer files and interact with the computer.
[0037] As discussed in the background section, the current known solutions have several shortcomings. The present disclosure aims to overcome the above-mentioned and other existing problems in this field of technology by providing a method and a system for managing containers in inventory.
[0038] FIG. 1 illustrates an exemplary block diagram representation of a management and orchestration (MANO) architecture / platform
[0100] , in accordance with exemplary implementation of the present disclosure. The MANO architecture
[0100] may be developed for managing telecom cloud infrastructure automatically, managing design or deployment design, managing instantiation of network node(s) / service(s) etc. The MANO architecture
[0100] deploys the network node(s) in the form of Virtual Network Function (VNF) and Cloud-native / Container Network Function (CNF). The system as provided by the present disclosure may comprise one or more components of the MANO architecture
[0100] , The MANO architecture
[0100] may be used to auto-instantiate the VNFs into the corresponding environment of the present disclosure so that it could help in onboarding other vendor(s) CNFs and VNFs to the platform.
[0039] As shown in FIG. 1, the MANO architecture
[0100] comprises a user interface layer
[0102] , a network function virtualization (NFV) and software defined network (SDN) design function module
[0104] , a platform foundation services module
[0106] , a platform core services module
[0108] and a platform resource adapters and utilities module
[0112] , All the components are assumed to be connected to each other in a manner as obvious to the person skilled in the art for implementing features of the present disclosure.
[0040] The NFV and SDN design function module
[0104] comprises a VNF lifecycle manager (compute)
[1042] , a VNF catalogue
[1044] , a network services catalogue
[1046] , a network slicing and service chaining manager
[1048] , a physical and virtual resource manager
[1050] and a CNF lifecycle manager
[1052] , The VNF lifecycle manager (compute)
[1042] 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 manager (compute)
[1042] may be responsible for determining which sequence to be followed for executing the process. For e.g., in an AMF network function of the communication network (such as a 5G network), sequence for execution of processes Pl and P2 etc. The VNF catalogue
[1044] stores the metadata of all the VNFs (also CNFs in some cases). The network services catalogue
[1046] stores the information on the services that need to be run. The network slicing and service chaining manager
[1048] manages the slicing (an ordered and connected sequence of network service / network functions (NFs) that must be applied to a specific networked data packet. The physical and virtual resource manager
[1050] stores the logical and physical inventory of the VNFs. Just like the VNF lifecycle manager (compute)
[1042] , the CNF lifecycle manager
[1052] may be used for the CNFs lifecycle management.
[0041] The platforms foundation services module
[0106] comprises a microservices 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 (CLI)
[1066] may be used to provide commands to execute certain processes which 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 platform
[0100] , These logs are used for debugging purposes. The event routing manager
[1070] may be responsible for routing the events i.e., the application programming interface (API) hits to the corresponding services.
[0042] The platforms core services module
[0108] comprises an NFV infrastructure monitoring manager
[1082] , an assure manager
[1084] , a performance manager
[1086] , a policy execution engine
[1088] , a capacity monitoring manager
[1090] , a release management (mgmt.) repository
[1092] , a configuration manager & GCT
[1094] , an NFV platform decision analytics
[1096] , a platform NoSQL DB
[1098] ; a platform scheduler and cron jobs (PSC)
[1100] , a VNF backup & upgrade manager
[1102] , a microservice auditor
[1104] , and a platform operations, administration and maintenance manager
[1106] , The NFV infrastructure monitoring manager
[1082] monitors the infrastructure part of the NFs. For e.g., any metrics such as CPU utilization by the VNF. The assure manager
[1084] 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 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 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] , theconfiguration manager & GCT
[1094] , and the NPDA
[1096] work together. The platform NoSQL DB
[1098] may be a database for storing all the inventory (both physical and logical) as well as the metadata of the VNFs and CNF. The platform scheduler and cron jobs
[1100] schedule the tasks such as but not limited to triggering of an event, traversing the network graph etc. The VNF backup & upgrade manager
[1102] takes a backup of the images, and binaries of the VNFs and the CNFs and produces that backup on demand in case of server failure. The microservice auditor
[1104] audits the microservices. For e.g., in a hypothetical case, instances not being instantiated by the MANO architecture
[0100] may be using the network resources. In such cases, the microservice auditor
[1104] audits and informs the same so that resources can be released for services running in the MANO architecture
[0100] , The audit assures that the services only run on the MANO platform
[0100] , The platform operations, administration, and maintenance manager
[1106] may be used for newer instances that are spawning.
[0043] The platform resource adapters and utilities module
[0112] further comprises a platform external API adaptor and gateway
[1122] ; a generic decoder and indexer (XML, CSV, JSON)
[1124] ; a docker service adaptor
[1126] ; an API adapter
[1128] ; and a NFV gateway
[1130] , The platform's external API adaptor and gateway
[1122] may be responsible for handling the external services (to the MANO platform
[0100] ) 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, JSON format. The docker service adaptor
[1126] may be the interface provided between the telecom cloud and the MANO architecture
[0100] for communication. The API adapter
[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
[0100] ,
[0044] FIG. 2 illustrates an exemplary block diagram of a computing device
[0200] upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. In an implementation, the computing device
[0200] may also implement a method for executing at least one service task utilising the system
[0300] , In another implementation, the computing device
[0200] itself implements the method for executing at least one service task using one or more units configured within the computing device
[0200] , wherein said one or more units are capable of implementing the features as disclosed in the present disclosure.
[0045] The computing device
[0200] may include a bus
[0202] or other communication mechanism for communicating information, and a hardware processor
[0204] coupled with the bus
[0202] forprocessing information. The hardware processor
[0204] may be, for example, a general-purpose microprocessor. The computing device
[0200] may also include a main memory
[0206] , such as a random-access memory (RAM), or other dynamic storage device, coupled to the bus
[0202] for storing information and instructions to be executed by the processor
[0204] , The main memory
[0206] also may be used for storing temporary variables or other intermediate information during the execution of the instructions to be executed by the processor
[0204] , Such instructions, when stored in non-transitory storage media accessible to the processor
[0204] , render the computing device
[0200] into a special-purpose machine that is customized to perform the operations specified in the instructions. The computing device
[0200] further includes a read only memory (ROM)
[0208] or other static storage device coupled to the bus
[0202] for storing static information and instructions for the processor
[0204] ,
[0046] A storage device
[0210] , such as a magnetic disk, optical disk, or solid-state drive is provided and coupled to the bus
[0202] for storing information and instructions. The computing device
[0200] may be coupled via the bus
[0202] to a display
[0212] , such as a cathode ray tube (CRT), Liquid crystal Display (LCD), Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for displaying information to a computer user. An input device
[0214] , including alphanumeric and other keys, touch screen input means, etc. may be coupled to the bus
[0202] for communicating information and command selections to the processor
[0204] , Another type of user input device may be a cursor controller
[0216] , such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor
[0204] , and for controlling cursor movement on the display
[0212] , The input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.
[0047] The computing device
[0200] may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware, and / or program logic which in combination with the computing device
[0200] causes or programs the computing device
[0200] to be a special-purpose machine. According to one implementation, the techniques herein are performed by the computing device
[0200] in response to the processor
[0204] executing one or more sequences of one or more instructions contained in the main memory
[0206] , Such instructions may be read into the main memory
[0206] from another storage medium, such as the storage device
[0210] , Execution of the sequences of instructions contained in the main memory
[0206] causes the processor
[0204] to perform the process steps described herein. In alternative implementations ofthe present disclosure, hard-wired circuitry may be used in place of or in combination with software instructions.
[0048] The computing device
[0200] also may include a communication interface
[0218] coupled to the bus
[0202] , The communication interface
[0218] provides a two-way data communication coupling to a network link
[0220] that is connected to a local network
[0222] , For example, the communication interface
[0218] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, the communication interface
[0218] may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, the communication interface
[0218] sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
[0049] The computing device
[0200] can send messages and receive data, including program code, through the network(s), the network link
[0220] , and the communication interface
[0218] , In the Internet example, a server
[0230] might transmit a requested code for an application program through the Internet
[0228] , the ISP
[0226] , the local network
[0222] , a host
[0224] , and the communication interface
[0218] , The received code may be executed by the processor
[0204] as it is received, and / or stored in the storage device
[0210] , or other non-volatile storage for later execution.
[0050] The computing device
[0200] encompasses a wide range of electronic devices capable of processing data and performing computations. Examples of computing device
[0200] include, but are not limited only to, personal computers, laptops, tablets, smartphones, servers, and embedded systems. The devices may operate independently or as part of a network and can perform a variety of tasks such as data storage, retrieval, and analysis. Additionally, computing device
[0200] may include peripheral devices, such as monitors, keyboards, and printers, as well as integrated components within larger electronic systems, showcasing their versatility in various technological applications.
[0051] Referring to FIG. 3, an exemplary block diagram of a system
[0300] for managing containers in an inventory in a network, is shown, in accordance with the exemplary implementations of the present disclosure. The system
[0300] comprises at least one transceiver unit
[0302] , at least one auditor node
[0304] , at least one physical and virtual inventory manager (PVIM)
[0306] , at least one user interface (UI)
[0308] , at least one retrieving unit
[0310] , at least oneservice adaptor (SA)
[0312] , at least one comparison unit
[0314] , at least one terminating unit
[0316] , at least one database
[0318] , and at least one updating unit
[0320] , Also, all of the components / units of the system
[0300] are assumed to be connected to each other unless otherwise indicated below. As shown in FIG. 3, all units shown within the system
[0300] should also be assumed to be connected to each other. Also, in FIG. 3, only a few units are shown, however, the system
[0300] may comprise multiple such units or the system
[0300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system
[0300] may be present in a user device / user equipment to implement the features of the present disclosure. The system
[0300] may be a part of the user device or may be independent of but in communication with the user device (may also referred herein as a UE). In another implementation, the system
[0300] may reside in a server or a network entity. In yet another implementation, the system
[0300] may reside partly in the server / network entity and partly in the user device.
[0052] The system
[0300] is configured to manage containers in the inventory in the network, with the help of the interconnection between the components / units of the system
[0300] ,
[0053] The system
[0300] comprises the transceiver unit
[0302] configured to receive, through the auditor node
[0304] , and from the physical virtual inventory manager (PVIM)
[0306] , details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running. In one implementation, a request is initially provided at the user interface (UI)
[0308] to obtain the details of the plurality of servers. In response to the request, the transceiver unit
[0302] is configured to receive the details of the plurality of servers.
[0054] Further, the transceiver unit
[0302] is configured to receive the details of the plurality of servers on which the plurality of containerized network function components (CNFC) is running.
[0055] In an exemplary aspect, a system administrator or a user may initiate the request using the UI
[0308] to obtain the details about the plurality of servers. The request may specify a query for information about the CNFCs that are running and on which servers. Thereafter, on receiving the user request, the transceiver unit
[0302] signals the auditor node
[0304] to gather necessary details from the PVIM
[0306] ,
[0056] As used herein, containerized network function (CNF) refers to a network function that acts as a portable container, which include all necessary configurations. The CNFs offer increased portability, and scalability compared to traditional network functions.
[0057] As used herein, Containerized Network Function Component (CNFC) refers to a subcomponent of a Containerized Network Function (CNF) that performs a specific task or set of tasks within the broader network function. CNFCs are deployed in containers, having same advantages as CNFs, which includes efficient resource management.
[0058] The system
[0300] further comprises the retrieving unit
[0310] , The retrieving unit
[0310] is configured to retrieve, through the service adaptor (SA)
[0312] , actual details of the plurality of servers on which the plurality of CNFCs are running.
[0059] In an exemplary aspect, the actual details herein refer to the real or actual information about the plurality of containerized network function components (CNFCs) that are actually running on the plurality of servers.
[0060] The system
[0300] comprises the comparison unit
[0314] , The comparison unit
[0314] is configured to compare, via the auditor node
[0304] , the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM
[0306] and the service adaptor
[0312] , respectively.
[0061] Upon receiving the details of the plurality of servers and the actual details of the plurality of plurality of servers from the PVIM
[0306] and the service adaptor
[0312] respectively, the comparison unit
[0314] compares these details of the plurality of servers and the actual details of the plurality of servers.
[0062] In response to a deviation between the details and the actual details of the plurality of servers received from the PVIM
[0306] , and the service adaptor
[0312] , respectively, the transceiver unit
[0302] is configured to transmit, via the auditor node
[0304] , details of the deviation to the UI
[0308] , The details of the deviation comprise a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.
[0063] Once the deviation (in the form of mismatch or error) between the details and actual details of the plurality of servers received from the PVIM
[0306] is detected by the comparison unit
[0314] ,the transceiver unit
[0302] transmits details of this deviation to back to the UI
[0308] using the auditor node
[0304] , In an exemplary aspect, the details of the deviation provide actionable insights into the state of servers to system administrators.
[0064] In an exemplary aspect, the UI
[0308] displays the details of deviations allowing system administrators to make informed decisions regarding resource allocation or other corrective actions.
[0065] In an exemplary aspect, the details of deviations may include details about additional CNFCs which are running on the plurality of servers than expected which may suggest that the system
[0300] has failed to update the PVIM
[0306] ,
[0066] In another exemplary aspect, the details of deviations may include details about limited CNFCs running on the plurality of servers than expected which may suggest that some CNFCs have crashed, been deleted, or not started properly. In an exemplary aspect, if the deviation suggests the list of limited CNFCs being run on the plurality of servers, the transceiver unit
[0302] transmits a request to the user / system administrator operating the UI
[0308] for allocating more resources in the form of additional CNFCs such that the overall efficiency of the system
[0300] is maintained.
[0067] In an exemplary aspect, when the deviation comprises a list of additional CNFCs being run on the plurality of servers, the transceiver unit
[0302] is configured to transmit to the UI
[0308] , a termination request. The termination request relates to termination of the additional CNFCs being run on the plurality of servers. In response to receiving, by the transceiver unit
[0302] , from the UI
[0308] , a confirmation to terminate the additional CNFCs, the terminating unit
[0316] is configured to terminate, via the PVIM
[0306] , the additional CNFCs running on the plurality of servers.
[0068] In an exemplary aspect, the PVIM
[0306] is communicably coupled to the database
[0318] , The database
[0318] comprises a record of the plurality of CNFCs running on the plurality of servers. In one implementation, the updating unit
[0320] is configured to update, via the PVIM
[0306] , the record in the database
[0318] ,
[0069] The PVIM
[0306] is connected to the database
[0318] , The database
[0318] includes the record of the plurality of CNFCs running on the plurality of servers. In an exemplary aspect, when the user requests details about the plurality of servers on which a plurality of containerized networkfunction components (CNFCs) are running, the PVIM
[0306] fetches the current status of plurality of CNFCs from the database
[0318] ,
[0070] The updating unit
[0320] updates using the PVIM
[0306] , the record in the database
[0318] ,
[0071] Upon receiving updates from the PVIM
[0306] , the updating unit
[0320] updates the record in the database
[0318] , The updating of records may include adding new entries for the plurality of CNFCs, modifying the existing records for plurality of CNFC, or deleting old entries for plurality CNFCs that are no longer in use. In an exemplary aspect, by keeping the database
[0318] updated using the updating unit
[0320] , the system
[0300] ensures that it is operating with accurate information, thereby minimizing deviations or discrepancies between actual CNFCs and those recorded in the inventory.
[0072] In an exemplary aspect, the details of the plurality of servers from the PVIM
[0306] and the actual details of the plurality of servers from the service adaptor
[0312] are received through at least one of: a Platform Scheduler and Cron jobs (PSC) and a command line interface (CLI). In one implementation, PSC is used for automated scheduler and CLI is used for manually sending requests.
[0073] The details of the plurality of servers from the PVIM
[0306] and the actual details of the plurality of servers from the service adaptor
[0312] are received through at least one of the Platform Scheduler and Cron jobs (PSC), and the command line interface (CLI) ensuring efficient communication and data management regarding plurality of servers. In general, PSC is a service used for scheduling tasks on behalf of microservices.
[0074] In an exemplary aspect, the command line interface (CLI) allows users / system administrators to interact with the system
[0300] by entering commands using a command prompt displayed on the user interface
[0308] ,
[0075] Referring to FIG. 4, an exemplary method flow diagram
[0400] for managing the containers in the inventory in the network, in accordance with exemplary implementations of the present disclosure is shown. In an implementation, the method
[0400] is performed by the system
[0300] , Further, in an implementation, the system
[0300] may be present in a server device to implement the features of the present disclosure. Also, as shown in FIG. 4, the method
[0400] starts at step
[0402] ,
[0076] At step
[0404] , the method
[0400] comprises receiving, by the transceiver unit
[0302] , through the auditor node
[0304] , and from the physical and virtual inventory manager (PVIM)
[0306] , details of the plurality of servers on which the plurality of containerized network function components (CNFCs) are running. It is noted that a request is initially provided at the user interface (UI)
[0308] to obtain the details of the plurality of servers.
[0077] The transceiver unit
[0302] then receives details of the plurality of servers on which the plurality of containerized network function components (CNFC) is running. The request to obtain the details of the plurality of servers is provided at the UI
[0308] ,
[0078] In an exemplary aspect, a system administrator or user initiates the request using the UI
[0308] to obtain details about the plurality of servers. Thereafter, upon receiving the request, the transceiver unit
[0302] signals the auditor node
[0304] to obtain necessary details from the PVIM
[0306] ,
[0079] At step
[0406] , the method
[0400] comprises retrieving, by the retrieving unit
[0310] through the service adaptor
[0312] , actual details of the plurality of servers on which the plurality of CNFCs is running.
[0080] At step
[0408] , the method
[0400] comprises comparing, by the comparison unit
[0314] via the auditor node
[0304] , the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM
[0306] and the service adaptor
[0312] , respectively.
[0081] Upon receiving the details of the plurality of servers and the actual details of the plurality of plurality of servers from PVIM
[0306] and service adaptor
[0312] respectively, the comparison unit
[0314] compares these details of the plurality of servers and the actual details of the plurality of servers.
[0082] At step
[0410] , in response to a deviation between the details and actual details of the plurality of servers received from the PVIM
[0306] , and the SA
[0312] , respectively, the method
[0400] comprises transmitting, by the transceiver unit
[0302] via the auditor node
[0304] , details of the deviation to the UI
[0308] , The details of the deviation comprise a list of at least one of additional CNFCs and limited CNFCs being run on the plurality of servers.
[0083] Once the deviation (in the form of mismatch or error) between the details and actual details of the plurality of servers received from the PVIM
[0306] is detected by the comparison unit
[0314] , the transceiver unit
[0302] transmits details of these deviation back to the UI
[0308] using the auditor node
[0304] , In an exemplary aspect, the details of the deviation provide actionable insights into the state of servers to system administrators.
[0084] In an exemplary aspect, the UI
[0308] displays the details of deviations, allowing the system administrators to make informed decisions regarding resource allocation or other corrective actions.
[0085] In an exemplary aspect, the details of deviations may include details about additional CNFCs which are running on the plurality of servers than expected which may suggest that the system
[0300] has failed to update the PVIM
[0306] ,
[0086] In another exemplary aspect, the details of deviations may include details about limited CNFCs running on the plurality of servers than expected which may suggest that some CNFCs have crashed, been deleted, or not started properly. In an exemplary aspect, if the deviation suggests the list of limited CNFCs being run on the plurality of servers, the transceiver unit
[0202] transmits a request to the user / system administrator operating the UI
[0204] for reallocating more resources in the form of additional CNFCs such that the overall efficiency of the system is maintained.
[0087] In an exemplary aspect, when the deviation comprises the list of additional CNFCs being run on the plurality of servers, the method
[0400] comprises transmitting, by the transceiver unit
[0302] to the UI
[0308] , a termination request. The termination request relates to termination of the additional CNFCs being run on the plurality of servers. In response to receiving, by the transceiver unit
[0302] , from the UI
[0308] , a confirmation to terminate the additional CNFCs, the method comprises terminating, by the terminating unit
[0316] via the PVIM
[0306] , the additional CNFCs running on the plurality of servers.
[0088] Thereafter, the method
[0400] terminates at step
[0412] ,
[0089] Referring to FIG. 5, an exemplary block diagram of a system architecture
[0400] for managing the containers in the inventory in the network, is shown, in accordance with the exemplary implementations of the present disclosure.
[0090] The system architecture
[0500] comprises the auditor node
[0304] configured to receive, from the physical virtual inventory manager (PVIM)
[0306] , details of the plurality of servers on which the plurality of containerized network function components (CNFCs) are running. In one implementation, a request is provided at the user interface (UI)
[0308] to obtain the details of the plurality of servers.
[0091] The PVIM
[0306] is connected to the database
[0318] , The database
[0318] includes the record of the plurality of CNFCs running on the plurality of servers. In an exemplary aspect, when the user requests details about the plurality of servers on which the plurality of containerized network function components (CNFCs) is running, the PVIM
[0306] fetches the current status of plurality of CNFCs from the database
[0318] ,
[0092] The system architecture
[0500] comprises the service adaptor
[0312] configured to retrieve actual details of the plurality of servers on which the plurality of CNFCs is running.
[0093] The details of the plurality of servers from the PVIM
[0306] and the actual details of the plurality of servers from the service adaptor
[0312] are received through at least one of the Platform scheduler and Cron jobs (PSC), and the command line interface (CLI)
[0502] (hereinafter referred to as PSC / CLI), ensuring efficient communication and data management regarding plurality of servers.
[0094] The auditor node
[0304] then compares the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM
[0306] and the service adaptor
[0312] , respectively in order to identify any deviations between the details and actual details of the plurality of servers received from the PVIM
[0306] , and the service adaptor
[0312] ,
[0095] The auditor node
[0304] then transmits the details of the deviation to the UI
[0308] , The details of the deviation comprise the list of at least one of additional CNFCs and limited CNFCs being run on the plurality of servers.
[0096] Referring to FIG. 6, an exemplary process flow diagram
[0600] for managing the containers in the inventory in the network, in accordance with exemplary implementations of the present disclosure, is shown. In an implementation, the process
[0600] is performed by the system
[0300] ,
[0097] At step SI, the process
[0600] comprises transmitting, by the PSC / CLI
[0502] , a command to start synchronization of resources. In an implementation, the command is transmitted to the auditor node
[0304] to initiate the synchronization process.
[0098] At step S2, the process
[0600] comprises transmitting, by auditor node
[0304] to the PVIM
[0306] , a request for obtaining the list of plurality of CNFs from the inventory. For example, GET CNF LIST FROM PVIM command is transmitted from the auditor node
[0304] to the PVIM
[0306] ,
[0099] At step S3, the process
[0600] comprises receiving, from the PVIM
[0306] at the auditor node
[0304] , the list of the plurality of CNFs from the inventory.
[0100] At step S4, the process
[0600] comprises transmitting, from auditor node
[0304] to the PVIM
[0306] , a request for obtaining the list of plurality of CNF’s service-ID, and the details of the plurality of servers on which the plurality of CNFCs is running. For example, GET CNFC LIST BY CNFID command is transmitted from the auditor node
[0304] to the PVIM
[0306] ,
[0101] At step S5, the process
[0600] comprises receiving, from the PVIM
[0306] at the auditor node
[0304] , the list of plurality of CNF’s service-ID, and the details of the plurality of servers on which the plurality of CNFCs is running.
[0102] At step S6, the process
[0600] comprises fetching, from the service adaptor
[0312] at the auditor node
[0304] , actual details of the plurality of servers on which the plurality of CNFCs is running. For example, FETCH CNFC DETAILS command is transmitted from the auditor node
[0304] to the SA
[0312] ,
[0103] At step S7, the process
[0600] comprises receiving, at the auditor node
[0304] from the service adaptor
[0312] , the fetched details of plurality of servers on which the plurality of CNFCs is running.
[0104] At step S8, the process
[0600] comprises transmitting, from the auditor node
[0304] to the PVIM
[0306] , a request for receiving the node list. For example, GET NODE LIST FROM PVIM command is transmitted from the auditor node
[0304] to the PVIM
[0306] ,
[0105] At step S9, the process
[0600] comprises receiving, at the auditor node from the PVIM
[0306] , the node list previously requested.
[0106] At step S10, the process
[0600] comprises transmitting, from the auditor node
[0304] to the service adaptor
[0312] , a request for fetching the service list of the node. For example, FETCH SERVICE LIST FOR NODE command is transmitted from the auditor node
[0304] to the SA
[0312] ,
[0107] At step Sil, the process
[0600] comprises receiving, at the auditor node
[0304] from the service adaptor
[0312] , the fetched service list of the node.
[0108] At step S12, the process
[0600] comprises transmitting, from the auditor node
[0304] to the service adaptor
[0312] , a request to get list of plurality of CNFCs by node identifier (ID). For example, GET CNFC LIST BY NODEID command is transmitted from the auditor node
[0304] to the PVIM
[0306] ,
[0109] At step S13, the process
[0600] comprises receiving, at the auditor node
[0304] from the service adaptor
[0312] , the list of plurality of CNFCs by node identifier (ID). In an exemplary aspect, the auditor node
[0304] then compares the list from the service adaptor
[0312] and the PVIM
[0306] in order to identify any deviations.
[0110] At step S14, the process
[0600] comprises transmitting, from the UI
[0308] to the PSC / CLI
[0502] , a request to obtain details of plurality of CNFC inventory audit. For example, the system administrator inputs GET CNFC INVENTORY AUDIT command on the CLI.[OHl] At step S15, the process
[0600] comprises receiving, at the UI
[0308] from the PSC / CLI
[0502] , the details of plurality of CNFC inventory audit.
[0112] The present disclosure further discloses a non-transitory computer readable storage medium storing instructions for managing the containers in the inventory in the network, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit to receive, through an auditor node, and from a physical virtual inventory manager (PVIM), details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI)to obtain the details of the plurality of servers. The executable code, when executed further causes a retrieving unit to retrieve, through a service adaptor, actual details of the plurality of servers on which the plurality of CNFCs are running. The executable code when executed further causes a comparison unit to compare, via the auditor node, the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM and the service adaptor, respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM, and the service adaptor, respectively, the executable code when executed further causes the transceiver unit to transmit, via the auditor node, details of the deviation to the UI, wherein the details of the deviation comprises a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.
[0113] As is evident from the above, the present disclosure provides a technically advanced solution for managing containers in inventory. The present method and system provide a solution with Auditor service (AU) microservice, Inventory Manager (IM) microservice and Docker Service Adaptor (DSA or SA) microservice. The AU audits the resources in terms of physical memory, RAM and CPU at IM. It brings inventory in close sync with real time available or used resources and minimizes the mismatch between inventory and real time hardware. The data accuracy depends primarily on Swarm Adaptor (SA) and Inventory Manager (IM). The AU detects whether the hosts contain lesser or more containers than the amount present in inventory managed by IM. It accordingly sends API request to IM to update its inventory. The present method and system provide a solution, which perform periodic sync-up of resources at server level and at inventory’s database. The present method and system provide on demand clearance of the extra CNFC present at inventory. The present method and system provide automatic solution using which there is no need to manually audit and update the resources regularly. This helps in optimizing the server resources regularly.
[0114] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various components / units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.
[0115] While considerable emphasis has been placed herein on the disclosed implementations, it will be appreciated that many implementations can be made and that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
Claims
We Claim:
1. A method for managing containers in an inventory in a network, the method comprising: receiving, by a transceiver unit [202], through an auditor node [204], and from a physical and virtual inventory manager (PVIM) [206], details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI) [208] to obtain the details of the plurality of servers; retrieving, by a retrieving unit [210] through a service adaptor (SA) [212], actual details of the plurality of servers on which the plurality of CNFCs are running; and comparing, by a comparison unit [214] via the auditor node [204], the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM [206] and the service adaptorSA [212], respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM [206], and the SA [212], respectively, the method comprises: transmitting, by the transceiver unit [202] via the auditor node [204], details of the deviation to the UI [208], wherein the details of the deviation comprises a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.
2. The method as claimed in claim 1, wherein, when the deviation comprises the list of additional CNFCs being run on the plurality of servers, the method comprises: transmitting, by the transceiver unit [202] to the UI [208], a termination request, wherein the termination request relates to termination of the additional CNFCs being run on the plurality of servers, wherein, in response to receiving, by the transceiver unit [202], from the UI [208], a confirmation to terminate the additional CNFCs, the method comprises: terminating, by a terminating unit [216] via the PVIM [206], the additional CNFCs running on the plurality of servers.
3. The method as claimed in claim 2, wherein the PVIM [206] is communicably coupled to a database [218], wherein the database [218] comprises a record of the plurality of CNFCs running on the plurality of servers, and wherein the method comprises updating, by an updating unit [220] via the PVIM [206], the record in the database [218],4. The method as claimed in claim 1, wherein the details of the plurality of servers from the PVIM [206] and the actual details of the plurality of servers from the service adaptor (SA) [210] are received through at least one of: a Platform scheduler and Cron jobs (PSC) and a command line interface (CLI).
5. A system for managing containers in an inventory in a network, the system comprising: a transceiver unit [202] configured to: receive, through an auditor node [204], and from a physical virtual inventory manager (PVIM) [206], details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI) [208] to obtain the details of the plurality of servers; a retrieving unit [210] configured to: retrieve, through a service adaptor (SA) [212], actual details of the plurality of servers on which the plurality of CNFCs is running; and a comparison unit [214] configured to: compare, via the auditor node [204], the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM [206] and the service adaptor (SA) [212], respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM [206], and the service adaptor [212], respectively, the transceiver unit [202] is configured to: transmit, via the auditor node [204], details of the deviation to the UI [208], wherein the details of the deviation comprise a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.
6. The system as claimed in claim 5, wherein, when the deviation comprises a list of additional CNFCs being run on the plurality of servers, the transceiver unit [202] is configured to: transmit, to the UI [208], a termination request, wherein the termination request relates to termination of the additional CNFCs being run on the plurality of servers,wherein, in response to receiving, by the transceiver unit [202], from the UI [208], a confirmation to terminate the additional CNFCs, a terminating unit [216] is configured to: terminate, via the PVIM [206], the additional CNFCs running on the plurality of servers.
7. The system as claimed in claim 6, wherein the PVIM [206] is communicably coupled to a database [218], wherein the database [218] comprises a record of the plurality of CNFCs running on the plurality of servers, and wherein an updating unit [220] is configured to update, via the PVIM [206], the record in the database [218],8. The system as claimed in claim 5, wherein the details of the plurality of servers from the PVIM [206] and the actual details of the plurality of servers from the service adaptor (SA) [212] are received through at least one of: a Platform scheduler and Cron jobs (PSC) and a command line interface (CLI).
9. A non-transitory computer readable storage medium storing instructions for managing containers in an inventory in a network, the instructions comprise executable code which, when executed by one or more units of a system, causes: a transceiver unit to receive, through an auditor node, and from a physical virtual inventory manager (PVIM), details of a plurality of servers on which a plurality of containerized network function components (CNFCs) are running, wherein a request is provided at a user interface (UI) to obtain the details of the plurality of servers; a retrieving unit to retrieve, through a service adaptor (SA), actual details of the plurality of servers on which the plurality of CNFCs are running; and a comparison unit to compare, via the auditor node, the details of plurality of servers and the actual details of the plurality of servers, as received from the PVIM and the service adaptor (SA), respectively, wherein, in response to a deviation between the details and actual details of the plurality of servers received from the PVIM, and the service adaptor (SA), respectively,- the transceiver unit is caused to transmit, via the auditor node, details of the deviation to the UI, wherein the details of the deviation comprises a list of at least one of: additional CNFCs and limited CNFCs being run on the plurality of servers.