System and method for selection of host nodes for container network function operations

The CNFLM system addresses host node selection and resource management challenges for CNFs by dynamically selecting nodes based on affinity rules and updating resources, improving scalability and fault tolerance in cloud environments.

WO2026126241A1PCT designated stage Publication Date: 2026-06-18JIO PLATFORMS LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
JIO PLATFORMS LTD
Filing Date
2025-12-12
Publication Date
2026-06-18

AI Technical Summary

Technical Problem

Existing cloud-native approaches for Container Network Functions (CNFs) face challenges in selecting host nodes and managing resources efficiently during instantiation operations, leading to scalability limitations in cloud environments.

Method used

A system and method for selecting host nodes for CNF instantiation using a Container Network Function Lifecycle Manager (CNFLM) that determines resource availability, applies affinity/anti-affinity rules, and reserves resources, while also updating resources dynamically based on operation success or failure.

🎯Benefits of technology

Ensures efficient resource management and smooth execution of CNF operations by automating host node selection and resource updates, enhancing scalability and fault tolerance in cloud environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IN2025052044_18062026_PF_FP_ABST
    Figure IN2025052044_18062026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed is a method (500) for selection of host nodes for Container Network Function (CNF) instantiation operation. The method includes receiving (502), at a CNF Life Cycle Manager (CNFLM) (121), a request to perform the CNF instantiation operation. The method further includes determining (504), based on the received request, whether a set of resources are available for the CNF instantiation operation. Further, the method includes selecting (506), upon determination that the set of resources are available for the CNF instantiation operation, one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti-affinity rules. Furthermore, the method includes sending (508), to a Unified Cloud Service Executor (UCSE) (169), the request to perform the CNF instantiation operation on the selected one or more host nodes.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEM AND METHOD FOR SELECTION OF HOST NODES FOR CONTAINER NETWORK FUNCTION OPERATIONSTECHNICAL FIELD

[0001] The embodiments of the present disclosure generally relate to the field of communication networks. More particularly, the present disclosure relates to a system and a method for selection of host nodes for a Container Network Function (CNF) instantiation operation.BACKGROUND OF THE INVENTION

[0002] In today’s world, Network Functions Virtualization (NFV) has become an important aspect of application development. The virtualization is a computing method in which functions of physical hardware are moved into logical resources, enabling multiple operating systems or applications to run on the same physical infrastructure. In the NFV, network functions are decoupled from the propriety hardware to run as software. The NFV provides an approach to design, deploy, and manage network services. To manage these virtualized network functions (VNFs), Network function virtualization management and orchestration (NFV MANO) provide an architectural framework. The VNFs are software applications that deliver network functions such as directory services, routers, firewalls, load balancers, and more. The VNFs are deployed on Virtual Machines (VMs). However, the VMs impose limitations to achieve scalability in cloud environments.

[0003] To overcome above mentioned limitations, a cloud-native approach is used which uses containers rather than VMs. The containers allow users to package software with all of files necessary to run it while sharing access to the operating system and other server resources such as processor, database, and Input / output interfaces. In the cloud-native approach, Container Network Function (CNF) refers to the network functions that are implemented and executed within the container. The CNF allows for the creation of virtual networks within containers, enablingcommunication between containers and with the external network. This allows for the implementation of network functions like firewalls, load balancers, and VPNs within a container environment.

[0004] To perform management and coordination on the container, provisioning of CNF operations is required. The provisioning of the CNF operations involves various operations, such as instantiation, termination, scaling, and change management, across major container orchestration platforms.

[0005] Further, at the time of CNF instantiation operation, host nodes are needed to be selected based on pre-grouped set of hosts, affinity rules and resource availability in a cluster of a container platform. To ensure smooth execution of the CNF instantiation operation, automatic selection of the host nodes and proper resource update is required to be carried out.

[0006] Therefore, there is a need for an improved system and method for selection of host nodes and updating of resources for a Container Network Function (CNF) instantiation operation.SUMMARY

[0007] The following embodiments present a simplified summary in order to provide a basic understanding of some aspects of the disclosed invention. This summary is not an extensive overview, and it is not intended to identify key / critical elements or to delineate the scope thereof. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.

[0008] In an embodiment, a method for selection of host nodes for Container Network Function (CNF) instantiation operation is disclosed. The method includes receiving, by a reception module at a CNF Life Cycle Manager (CNFLM), a request to perform the CNF instantiation operation. The method further includes determining, by a resource management module based on the received request,whether a set of resources are available for the CNF instantiation operation. Further, the method includes selecting, by a selection module upon determination that the set of resources are available for the CNF instantiation operation, one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti -affinity rules. Furthermore, the method includes sending, by a transmission module to a Unified Cloud Service Executor (UCSE), the request to perform the CNF instantiation operation on the selected one or more host nodes.

[0009] According to some aspect of the present disclosure, the method further includes reserving, by the resource management module, resources for the selected one or more host nodes for the CNF instantiation operation in a database.

[0010] According to some aspect of the present disclosure, the method further includes unreserving, by the resource management module, unused resources among the resources reserved for the CNF instantiation operation based on a determination that the CNF instantiation operation is partially successful.

[0011] According to some aspect of the present disclosure, the method further includes analyzing, by the resource management module, deployment plan included in the request. The deployment plan includes information of CNF deployment parameters, resource requirement, and network configuration. Further, the method includes determining, by the resource management module, whether the set of resources are available for the CNF instantiation operation based on a result of the analysis of the deployment plan.

[0012] According to some aspect of the present disclosure, the request is received based on one or more user operation on a User Interface (UI) of a user device.

[0013] In another embodiment, a system for selection of host nodes for Container Network Function (CNF) instantiation operation is disclosed. The system includes a CNF Life Cycle Manager (CNFLM) and a Unified Cloud Service Executor (UCSE) connected to the CNFLM via an interface. The CNFLM includes a reception module, a resource management module, a selection module, and atransmission module. The reception module is configured to receive a request to perform the CNF instantiation operation. The resource management module is configured to determine, based on the received request, whether a set of resources are available for the CNF instantiation operation. The selection module is configured to select, upon determination that the set of resources are available for the CNF instantiation operation, one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti -affinity rules. The transmission module is configured to send, to the UCSE, the request to perform the CNF instantiation operation on the selected one or more host nodes.BRIEF DESCRIPTION OF DRAWINGS

[0014] Various embodiments disclosed herein will become better understood from the following detailed description when read with the accompanying drawings. The accompanying drawings constitute a part of the present disclosure and illustrate certain non-limiting embodiments of inventive concepts disclosed herein. Further, components and elements shown in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. For the purpose of consistency and ease of understanding, similar components and elements are annotated by reference numerals in the exemplary drawings.

[0015] FIG. 1 illustrates a diagram depicting an architecture framework for performing Container Network Function (CNF) operations, in accordance with an embodiment of the present disclosure.

[0016] FIG. 2 illustrates a diagram depicting a functional block diagram of a system for selection of host nodes for a CNF instantiation operation, in accordance with an embodiment of the present disclosure.

[0017] FIG. 3 illustrates a block diagram depicting one or more components of a Container Network Function Lifecycle Manager (CNFLM) of the system, in accordance with an embodiment of the present disclosure.

[0018] FIG. 4 illustrates a flow chart of method steps for managing the CNF instantiation operation, in accordance with an embodiment of the present invention.

[0019] FIG. 5 illustrates a flow chart of a method for selection of the host nodes for the CNF instantiation operation, in accordance with an embodiment of the present invention.

[0020] FIG. 6 illustrates a schematic block diagram of a computing system for the selection of the host nodes for the CNF instantiation operation, in accordance with an embodiment of the present disclosure.DETAILED DESCRIPTION OF THE INVENTION

[0021] Inventive concepts of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, in which examples of one or more embodiments of inventive concepts are shown. Inventive concepts may, however, be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Further, the one or more embodiments disclosed herein are provided to describe the inventive concept thoroughly and completely, and to fully convey the scope of each of the present inventive concepts to those skilled in the art. Furthermore, it should be noted that the embodiments disclosed herein are not mutually exclusive concepts. Accordingly, one or more components from one embodiment may be tacitly assumed to be present or used in any other embodiment.

[0022] The following description presents various embodiments of the present disclosure. The embodiments disclosed herein are presented as teaching examples and are not to be construed as limiting the scope of the present disclosure. The present disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary design and implementation illustrated and described herein, but may be modified, omitted, or expanded upon without departing from the scope of the present disclosure.

[0023] The following description contains specific information pertaining to embodiments in the present disclosure. The detailed description uses the phrases “in some embodiments” or “some implementations” which may each refer to one or more or all of the same or different embodiments or implementations. The term “some” as used herein is defined as “one, or more than one, or all.” Accordingly, the terms “one,” “more than one,” “more than one, but not all” or “all” would all fall under the definition of “some.” In view of the same, the terms, for example, “in an embodiment” or “in an implementation” refers to one embodiment or one implementation and the term, for example, “in one or more embodiments” refers to “at least one embodiment, or more than one embodiment, or all embodiments ”. Further, the term, for example, “in one or more implementations” refers to “at least one implementation, or more than one implementation, or all implementations.

[0024] The term “comprising,” when utilized, means “including, but not necessarily limited to;” it specifically indicates open-ended inclusion in the so- described one or more listed features, elements in a combination, unless otherwise stated with limiting language. Furthermore, to the extent that the terms “includes,” “has,” “have,” “contains,” and other similar words are used in either the detailed description, such terms are intended to be inclusive in a manner similar to the term “comprising.”

[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 can each be used independently of one another or with any combination of other features.

[0026] The description provided herein discloses exemplary embodiments only and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the foregoing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing anyof the exemplary embodiments. Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it may be understood by one of the ordinary skilled in the art that the embodiments disclosed herein may be practiced without these specific details.

[0027] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein the description, the singular forms "a", "an", and "the" include plural forms unless the context of the invention indicates otherwise.

[0028] The terminology and structure employed herein are for describing, teaching, and illuminating some embodiments and their specific features and elements and do not limit, restrict, or reduce the scope of the present disclosure. Accordingly, unless otherwise defined, all terms, and especially any technical and / or scientific terms, used herein may be taken to have the same meaning as commonly understood by one having ordinary skill in the art.

[0029] According to one or more aspects of the present disclosure, the disclosed system and method enables automatic assignment of host nodes based on affinity rule and resource availability.

[0030] According to one or more aspects of the present disclosure, the disclosed system and method enables proper resource update during Container Network Function (CNF) instantiation, termination and deletion process.

[0031] The term “Container Network Function (CNF)” in the entire disclosure may refer to a network function that is packaged, deployed, and executed within one or more containerized environments (containers) in a communication network.

[0032] The term “Container” in the entire disclosure may refer to an executable software package including an application and its required dependencies. Each network function may run inside one or more containers.

[0033] The term “CNF instantiation” in the entire disclosure may refer to an operation of creating a CNF within a containerized execution environment. The CNF instantiation involves retrieving CNF parameters from a CNF deployment plan, allocating necessary compute, storage, and networking resources, and initializing CNF instance using an orchestration platform.

[0034] The term “CNF scaling” in the entire disclosure may refer to an operation of adjusting resource or a number of CNF instances to meet service requirement.

[0035] The term “CNF termination” in the entire disclosure may refer to an operation of removing a CNF instance from the communication network.

[0036] The term “Container platform” in the entire disclosure may refer to a software environment that provides orchestration, scheduling, networking, and lifecycle management for the one or more containers.

[0037] The term “host node” in the entire disclosure may refer to a physical or virtual machine within a container platform that provide computing, storage, and networking resources for running the one or more containers.

[0038] The term “CNF deployment plan” in the entire disclosure may refer to a structured set of instruction defining how the CNF should be instantiated, scaled, and managed within the container platform.

[0039] The term “affinity / anti -affinity rules” in the entire disclosure may refer to rules / policies which specify where CNF components should be / should not be placed. The affinity / anti-affinity rules ensure that CNFs are scheduled on specific host nodes based on defined attributes (e.g., co-locating CNFs that require low-latency communication). Further, the affinity / anti-affinity rules may also prevent redundant CNFs from being scheduled on the same host node, ensuring redundancy, fault tolerance, and load distribution.

[0040] Embodiments of the present disclosure will be described below in detail with reference to the accompanying drawings. FIG. 1 to FIG. 6, discussed below,and the one or more embodiments used to describe the principles of the present disclosure are by way of illustration only and should not be construed in any way to limit the scope of the present disclosure. Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged system or device.

[0041] FIG. 1 illustrates a diagram depicting an architecture framework 100 for performing Container Network Function (CNF) operations, in accordance with an embodiment of the present disclosure. The embodiment of the architecture framework 100 shown in FIG. 1 is for illustration only. Other embodiments of the architecture framework 100 may be used without departing from the scope of this disclosure.

[0042] The architecture framework 100 includes a user interface layer 101, Network Functions Virtualization (NFV) & Software-defined Networking (SDN) design functions 103, platform foundation services 105, platform core services 107, and platform resource adapters and utilities 109.

[0043] The architecture framework 100 includes new management blocks including a Container Network Function Lifecycle Manager (CNFLM) 121 and a Universal Cloud Service Executor (UCSE) 169 on the top of existing Network Function Virtualization Management and Orchestration (NFV MANO) architectural framework. Further, the architecture framework 100 proposes an interface (CM_UCS interface) that serves as a critical link between the CNFLM 121 and the UCSE 169. The description of those components of architecture framework 100 which are common in the existing NFV MANO architectural framework is not provided in detail for the sake of brevity of the disclosure.

[0044] The user interface layer 101 provides a User Interface (UI) to a user to initiate request for the CNF operations. The CNFLM receives the request for the CNF operations from the user interface layer 101. It is to be noted that the user interface layer 101 may also be referred to as the UI 101 interchangeably throughout this disclosure without departing from the scope of the disclosure.

[0045] The NVF & SDN design functions 103 are configured to manage and orchestrate Virtualized Network Functions (VNFs) and other software components. The NVF & SDN design functions 103 includes a Virtualized Network Functions Lifecycle Manager (VNFLM) 111, VNF catalog 113, network services catalog 115, a network slicing & service changing manager 117, physical & virtual resource manager 119, and the CNFLM 121.

[0046] The VNFLM 111 may manage complete lifecycle of the VNFs, including instantiation, scaling, and termination. The VNF catalog 113 is a repository containing standardized descriptions, metadata, and deployment templates of available VNFs for orchestration and reuse. The network services catalog 115 a repository that may contain service descriptors and deployment rules. The network slicing & service changing manager 117 may create and manage logical network slices and orchestrates service chains by linking the VNFs to deliver end-to-end services. The physical & virtual resource manager 119 may allocate, monitor, and optimize physical resources across physical infrastructure and virtualized environments.

[0047] The CNFLM 121 is a microservice that may capture details of vendors, CNFs, and CNFCs via create, read, and update APIs. The captured details are stored in a database 149 and may be further used by the UCSE 169. The CNFLM 121 is responsible for creating or terminating the CNF. Also, the CNFLM 121 is responsible for scaling of CNFs. In a non-limiting example, the database 149 may include Not only SQL Database (NoSQL DB).

[0048] The platform foundation services 105 provides essential services and infrastructure for the architecture framework 100. The platform foundation services 105 includes microservices elastic load balancer 123, an identity & access manager 125, Command Line Interface (CLI) 127, a central logging manager 129, an event routing manager 131.

[0049] The microservices elastic load balancer 123 may dynamically distributes incoming traffic across multiple microservice instances to ensure scalability, faulttolerance, and high availability. The identity & access manager 125 may control authentication, authorization, and user access policies across the architecture framework 100. The CLI 127 may be a text-based tool that allows network operator to interact with the platform, execute commands, and manage resources. The central logging manager 129 may collect, store, and manage logs from different components of the of the communication network for monitoring, troubleshooting, and compliance. The event routing manager 131 may direct and deliver events between services, enabling asynchronous communication and real-time responsiveness.

[0050] The platform core services 107 are the foundation services responsible for orchestrating and managing the CNF. The platform core services 107 includes NFV infrastructure monitoring manager 133, assurance manager 135, performance manager 137, policy execution engine 139, capability monitoring manager 141, release management repository 143, configuration manager & Golden Configuration Template (GCT) 145, NFV platform decision analytics 147, the database 149, platform schedulers & cron jobs 151, a VNF backup & upgrade manager 153, micro service auditor 155, and a Platform Operations, Administration, and Maintenance Manager (POAM) 157.

[0051] The NFV infrastructure monitoring manager 133 may monitor resources in NFV infrastructure to ensure availability and performance. The assurance manager 135 may validate service quality and compliance with SLAs. The performance manager 137 may track and analyze CNF performance metrics such as throughput, latency, and resource utilization. The policy execution engine 139 may enforce predefined policies across CNFs and infrastructure components. The capability monitoring manager 141 may observe functional capabilities of CNFs to detect degradation, anomalies, or compliance gaps. The release management repository 143 may store and manage CNF software versions, updates, and release artifacts for controlled deployment. The configuration manager & GCT 145 may store and manage CNF configuration applies standardized templates to ensure consistency. The NFV platform decision analytics 147 may provide data-driven insights andrecommendations for the resource allocation, scaling, and optimization. The platform schedulers & cron jobs 151 may automates recurring tasks such as backups, monitoring checks, and resource updates within the CNF platform. The VNF backup & upgrade manager 153 may manage backup, restoration, and controlled upgrades of VNFs. The micro service auditor 155 may audit microservices within CNF deployments.

[0052] The POAM 157 may provide a centralized tools for day-to-day operations, administration, and maintenance of the CNF platform. The POAM 157 connects with CNFLM 121 and UCSE 169. The POAM 157 provides available CNFLM instances and load balancer details to the CNFLM 121. Also, the POAM 157 provides available UCSE instances, and the load balancer details to the UCSE 169. The POAM 157 receives the load balancer details from the microservices elastic load balancer 123.

[0053] The platform resource adapters and utilities 109 comprises one or more platform adapters as a software component to allow the architecture framework 100 to interface with external resource providers, cloud environment, and infrastructure platforms. Further, the platform resource adapters and utilities 109 comprises one or more supporting tools and services for the function of the components of the architecture framework 100. The platform resource adapters and utilities 109 includes platform external API adapter and gateway 159, generic decoder and indexer 161, docker swarm adapter 163, open stack API adapter 165, NFV gateway 167, and the UCSE 169.

[0054] The platform external API adapter and gateway 159 may be an interface that enables the architecture framework 100 to communicate securely with external APIs and resource providers. The generic decoder and indexer 161 may parse, decode, and index heterogeneous data formats for standardized processing. The docker swarm adapter 163 may integrate the architecture framework 100 with docker swarm clusters, enabling container orchestration and workload management. The open stack API adapter 165 is a connector that may allow thearchitecture framework 100 to interact with cloud environments for provisioning and managing virtualized resources. The NFV gateway 167 corresponds to a gateway component that bridges the platform with NFV infrastructure, enabling interoperability and service delivery across the virtualized network functions.

[0055] The UCSE 169 may connect with container platform managers of container infrastructure setup to deploy all CNFCs on eligible host nodes. Further, the UCSE 169 connect with the POAM 157 to receive available UCSE instance and the load balancer details. The UCSE 169 interacts with the CNFLM 121 via the CM_UCS interface that serves as the link between the CNFLM 121 and the UCSE 169. The UCSE 169 spawn the available UCSE instances in the container infrastructure setup.

[0056] FIG. 2 illustrates a diagram depicting a functional block diagram of a system 200 for selection of host nodes for CNF instantiation operation, in accordance with an embodiment of the present disclosure.

[0057] The functional system 200 includes the user interface layer 101, the CNFLM 121, and the UCSE 169. As shown in the FIG. 2, the CNFLM 121 connects with the UCSE 169 using the interface (CM_UCS interface). The CM_UCS interface serves as a critical link between the CNFLM 121 and the UCSE 169 for performing CNF operations effectively. The CM_UCS interface facilitates CNF and site monitoring, ensuring that lifecycle operations are executed efficiently, thus supporting stable operation of cloud-native functions.

[0058] Further, the CNFLM 121 is also connected with the database 149 to receive the details of vendors, CNFs, and CNFCs via create, read, and update APIs. The UCSE 169 is connect with the container platform managers 201-1, 201-2, . . ., 201- n (hereafter may be referred to as “container platform managers 201”) of the container infrastructure setup to deploy all the CNFCs on the eligible host nodes.

[0059] The CNFLM 121 may include a processor to control one or more operations. The processor may include one or more general purpose processorsand / or one or more special purpose processors, a microprocessor, a digital signal processor, an application specific integrated circuit, a microcontroller, a state machine, or ay any type of programmable logic array.

[0060] The CNFLM 121 may receive a request to perform the CNF instantiation operation. The CNFLM 121 may receive the request from the user interface layer 101. In one or more embodiments, the CNFLM 121 may receive the request based on one or more user operation on a User Interface (UI) of a user device. In one or more other embodiments, the CNFLM 121 may receive the request from an end user device at operator end.

[0061] Further, upon receiving the request, the CNFLM 121 may determine whether sufficient resources are available for the CNF instantiation operation. For example, the CNFLM 121 may analyze deployment plan included in the request and determine whether sufficient resources are available or not for the CNF instantiation operation based on a result of the analysis of the deployment plan. The deployment plan may include information of CNF deployment parameters, resource requirement, and network configuration.

[0062] The resource requirement may include memory, storage, and network resources needed for a CNF instance. The network configuration may include IP addressing, interfaces, service endpoints, routing rules, and connectivity to other CNFs. The CNF deployment parameters may include other parameters such as CNF image reference, scaling policies, or termination policies. The image reference specifies a container image (e.g., Docker / OCI image) used to instantiate the CNF, including version tags and registry location. The scaling policies defines rules for horizontal scaling (adding / removing CNF instances) or vertical scaling (adjusting CPU / memory resources). Further, the termination policies related to how CNFs are gracefully shut down.

[0063] The the CNFLM 121 may use information of the resource requirement for the CNF instantiation operation to determine whether the sufficient resources areavailable or not. The sufficient resources indicate minimum resources required for the CNF instantiation operation.

[0064] Further, upon determination that the sufficient resources are available for the CNF instantiation operation, the CNFLM 121 may select one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti -affinity rules. Additionally, the CNFLM 121 may reserve resources in the database 149 for the selected one or more host nodes for the CNF instantiation operation.

[0065] Further, the CNFLM 121 may send, to the UCSE 169 via a CM_UCS interface, the request to perform the CNF instantiation operation on the selected one or more host nodes. The UCSE 169 may be directly connect to the container platform managers 201-1, 201-2, . . ., 201-n of the container infrastructure setup to deploy all CNFCs on the one or more host nodes.

[0066] Although FIG. 2 illustrates one example of the system 200, various changes may be made to FIG. 2. Further, the system 200 may include any number of components in addition to those shown in FIG. 2, without deviating from the scope of the present disclosure. Further, various components in FIG. 2 may be combined, further subdivided, or omitted and additional components may be added according to particular needs.

[0067] FIG. 3 illustrates a block diagram 300 depicting one or more components of the CNFLM 121 of the system 200, in accordance with an embodiment of the present disclosure.

[0068] The CNFLM 121 may include a processor 302, a memory 304, a communication unit 306, an Input / Output (I / O) interface 308, and one or more processing modules 310 (may also be referred to as “processing modules 310”). Various components of the CNFLM 121 may be communicatively coupled to each other via a communication bus 312.

[0069] The processor 302 may perform computations and data processing tasks of the CNFLM 121. The processor 302 may correspond to one or more general purpose processors and / or one or more special purpose processors such as digital signal processors, Field Programmable Gate Array (FPGA) processor, a microprocessor, a digital signal processor, an application specific integrated circuit, a microcontroller, a state machine, or ay any type of programmable logic array, that controls the overall operation of the CNFLM 121.

[0070] The memory 304 stores the set of instructions required by the processor 302 of the CNFLM 121 for controlling its overall operations. The memory 304 may include non-volatile storage elements. Examples of such non-volatile storage elements may include magnetic hard discs, optical discs, floppy discs, flash memories, or forms of electrically programmable memories (EPROM) or electrically erasable and programmable (EEPROM) memories. In addition, the memory 304 may, in some examples, be considered a non -transitory storage medium. The "non-transitory" storage medium is not embodied in a carrier wave or a propagated signal. However, the term "non-transitory" should not be interpreted as the memory 304 is non-movable. In some examples, the memory 304 may be configured to store larger amounts of information. In certain examples, a non- transitory storage medium may store data that can, over time, change (e.g., in Random Access Memory (RAM) or cache). The memory 304 may be an internal storage unit or an external storage unit of the CNFLM 121, cloud storage, or any other type of external storage. In certain examples, the memory 304 configured as the non-transitory storage medium may include hard drives, solid-state drives, flash drives, Compact Disk (CD), Digital Video Disk (DVD), and the like. Further, the memory 304 may include any type of non-transitory storage medium, without deviating from the scope of the present disclosure.

[0071] More specifically, the memory 304 may store computer-readable instructions 304 A including instructions that, when executed by a processor (e.g., the processor 302) cause the CNFLM 121 to perform various functions described herein. In some cases, the memory 304 may contain, among other things, a BIOSwhich may control basic hardware or software operation such as the interaction with peripheral components or devices.

[0072] The communication unit 306 may be configured to enable the CNFLM 121 to communicate with various entities of a wireless communication network such as the one or more containers. Examples of the communication unit 306 may include, but are not limited to, a network interface such as an Ethernet card, a communication port, and / or a Personal Computer Memory Card International Association (PCMCIA) slot and card, an antenna, a Radio Frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a coder-decoder (CODEC) chipset, a Subscriber Identity Module (SIM) card, and a local buffer circuit. It will be apparent to a person of ordinary skill in the art that the communication unit 306 may include any device and / or apparatus capable of providing wireless or wired communications between the CNFLM 121 and various other entities of the system 200.

[0073] The I / O interface 308 may include suitable logic, circuitry, interfaces, and / or codes that may be configured to receive input(s) and present (or display) output(s) on the CNFLM 121. For example, the I / O interface 308 may have an input interface and an output interface. The input interface may be configured to enable a user to provide input(s) to trigger (or configure) the CNFLM 121 to perform various operations. Examples of the input interface may include, but are not limited to, a touch interface, a mouse, a keyboard, a motion recognition unit, a gesture recognition unit, a voice recognition unit, or the like. Aspects of the present disclosure are intended to include or otherwise cover any type of the input interface including known, related art, and / or later developed technologies without deviating from the scope of the present disclosure. The output interface is configured to control a user device to display an output message to the user. Examples of the output interface of the I / O interface 308 may include, but are not limited to, a digital display, an analog display, a touch screen display, an appearance of a desktop, and / or illuminated characters. In one or more embodiments, the I / O interface 308 may be a part of the UI 101.

[0074] The processing module(s) 310 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the system 200. In non-limiting examples, described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing modules(s) 310 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor 302 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine- readable storage medium may store instructions that, when executed by the processing resource, implement the processing module(s) 310. In such examples, the system 200 may also comprise the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the system 200 and the processing resource. In other examples, the processing module(s) 310 may be implemented using an electronic circuitry.

[0075] In one or more embodiments, the processing module(s) 310 may include a reception module 314, a resource management module 316, a selection module 318, and a transmission module 320.

[0076] In an embodiment, the processor 302, using the reception module 314, may receive the request to perform the CNF instantiation operation. The request may include information associated with the deployment plan for the CNF. The information associated with the deployment plan may include information of the CNF deployment parameters, the resource requirement, and the network configuration.

[0077] Further, the processor 302, using the resource management module 316 upon receiving the request, triggers an operation to determine whether the set of resources are available for the CNF instantiation operation. For instance, the resource management module 316 may analyze information of the resourcerequirement included in the deployment plan and determine whether the set of resources are available for the CNF instantiation operation based on the result of the analysis.

[0078] The resource management module 316 may further reserve the set of resources for the selected one or more host nodes for the CNF instantiation operation in the database 149 if the set of resources are available.

[0079] Further, the processor 302, using the selection module 318, may select, upon determination that the set of resources are available for the CNF instantiation operation, the one or more host nodes from the set of host nodes in the deployed cluster based on the affinity / anti -affinity rules.

[0080] Further, the processor 302, using the transmission module 320, may the request to the UCSE to perform the CNF instantiation operation on the selected one or more host nodes.

[0081] Further, the resource management module 316 may also unreserve unused resources among the resources reserved for the CNF instantiation operation based on a determination that the CNF instantiation operation is partially successful. In a non-limiting example, if a CNF includes 3 CNFC and while instantiation 2 CNFC are get instantiated successfully and 1 CNFC instantiation failed then CNFLM moved reserved resources for failed CNFC to free pool.

[0082] FIG. 4 illustrates a flow chart of method steps 400 for managing the CNF instantiation operation, in accordance with an embodiment of the present invention. The method 400 comprises a series of operation steps indicated by blocks 402 through 412. The operations steps are performed by the one or more components of the CNFLM 121 of the system 200.

[0083] At block 402, a user may input a request for the CNF instantiation operation on the UI 101. The CNFLM 121 may receive the request from the user interface layer 101. The request may include the deployment plan associated with the CNF.The deployment plan may include information of the CNF deployment parameters, the resource requirement, and the network configuration.

[0084] At bock 404, the CNFLM 121 may determine whether a set of resources are available or not for the CNF instantiation operation. For instance, the CNFLM 121 may analyze the deployment plan included in the request and determine whether the set of resources are available or not for the CNF instantiation operation based on the result of the analysis of the deployment plan. The set of resources are minimum resources required for the CNF instantiation operation. If the minimum resources are available for the CNF instantiation operation, the flow of the method 400 proceeds to block 406. Further, if the minimum resources are not available for the CNF instantiation operation, the flow of the method 400 proceeds to block 408.

[0085] At block 406, the CNFLM 121 may select the one or more host nodes from the set of host nodes based on the affinity / anti -affinity rules. The affinity / anti- affinity rulesare policies which specify where CNF components should be / should not be placed. For instance, the CNFs may be scheduled on specific host nodes based on defined attributes (e.g., co-locating CNFs that require low-latency communication). Further, the CNFs may be prevented from being scheduled on the same host node, ensuring redundancy, fault tolerance, and load distribution.

[0086] At block 408, the CNFLM 121 may send a response to the user via the UI 101 indicating that the set of resources are not available for the CNF instantiation operation. Upon receiving the response that the set of resources are not available, the CNFLM 121 terminates the CNF instantiation operation. The CNFLM 121 may send a notification message to the end user via the UI 101. In a non-limiting example, the notification message may include that the “ CNF instantiation operation is failed”. The notification message may also include that the “CNF instantiation operation is failed due to resource unavailability”.

[0087] At block 410, the CNFLM 121 may reserve resources in the database 149 for the selected one or more host nodes for the CNF instantiation operation.

[0088] At block 412, the CNFLM 121 may send, to the UCSE 169, the request to perform the CNF instantiation operation on the selected one or more host nodes. The UCSE 169 may be connected to the container platform managers 301-1, 301- 2, . . . , 301-n of the container infrastructure setup to deploy all CNFCs on the one or more host nodes.

[0089] In one or more embodiments, the disclosed system and method may ensure proper resource update on CNF and CNFC instantiation, termination, and deletion process. Updating resources inventory ensures that CNFs have sufficient CPU, memory, and bandwidth to handle traffic loads.

[0090] For instance, the disclosed system and method may provide proper resource inventory update during partial CNF instantiation based on the response from the UCSE 169. For example, if a CNF includes 3 CNFC and while instantiation 2 CNFC are get instantiated successfully and 1 CNFC instantiation failed then CNFLM moved reserved resources for failed CNFC to free pool of resources. Therefore, the disclosed method prevents over-provisioning by reclaiming unused resources.

[0091] Further, the disclosed system and method may provide proper resource inventory update during partial CNF termination. For example, if a CNF includes 3 CNFC and 1 CNFC get terminated successfully then CNFLM moved reserved resources for terminated CNFC to the free pool.

[0092] FIG. 5 illustrates a flow chart of a method 500 for selection of the host nodes for the CNF instantiation operation, in accordance with an embodiment of the present invention. The method 500 comprises a series of operation steps indicated by blocks 502 through 508. The operations steps are performed by the one or more components of the CNFLM 121 of the system 200.

[0093] At block 502, the CNFLM 121 may receive the request for the CNF instantiation operation. The request may be inputted by the user associated withoperator. The CNFLM 121 may receive the request via the user interface layer 101.The request may include the deployment plan associated with the CNF.

[0094] At bock 504, the CNFLM 121 may determine whether a set of resources are available or not for the CNF instantiation operation. For instance, the CNFLM 121 may analyze the deployment plan included in the request and determine whether the set of resources are available or not for the CNF instantiation operation based on the result of the analysis of the deployment plan. The set of resources are minimum resources required for the CNF instantiation operation.

[0095] At block 506, upon determination that the set of resources are available for the CNF instantiation operation, the CNFLM 121 may select the one or more host nodes from the set of host nodes based on the aflfinity / anti -affinity rules.

[0096] At block 508, the CNFLM 121 may send the request to the UCSE 169 via the CM UCS interface to perform the CNF instantiation operation on the selected one or more host nodes.

[0097] FIG. 6 illustrates a schematic block diagram of a computing system 600 for the selection of the host nodes for the CNF instantiation operation, in accordance with an embodiment of the present disclosure.

[0098] The computing system 600 includes a network 602, a network interface 604, a processor 606 (similar in functionality to the processor 302 of FIG. 3), an Input / Output (I / O) interface 608 (similar in functionality to the I / O interface 308 of FIG. 3), and a non-transitory computer readable storage medium 610 (hereinafter may also be referred to as the “storage medium 610” or the “storage media 610”). The network interface 604 may include an Ethernet card, Universal Serial Bus (USB), a communication port, or a Personal Computer Memory Card International Association (PCMCIA) slot and card. It will be apparent to a person of ordinary skill in the art that the network interface 604 may include any interface capable of supporting wireless or wired communications between the computing system 600 and the one or more containers using a communication technique, such as a 5thGeneration 5G / New Radio (NR), Long Term Evolution (LTE), Long Term Evolution Advanced (LTE-A), Worldwide Interoperability for Microwave Access (WiMAX), Wireless Fidelity (Wi-Fi), Narrowband Internet of Things (NB-IoT), or other wireless communication techniques.

[0099] The processor 606 may include various processing circuitry / modules and communicate with the storage medium 610 and the I / O interface 608. The processor 606 is configured to execute instructions stored in the storage medium 610 and to perform various processes. The processor 606 may include an intelligent hardware device including a general-purpose processor, such as, for example, and without limitation, the CPU, the AP, the dedicated processor, or the like, the graphics-only processing unit such as the GPU, the microcontroller, the FPGA, the programmable logic device, the discrete hardware component, or any combination thereof. The processor 606 may be configured to execute computer-readable instructions 610-1 stored in the storage medium 610 to cause the system 200 to perform various functions disclosed throughput the disclosure.

[0100] The storage medium 610 stores a set of instructions i.e., computer program instructions 610-1 (hereinafter may also be referred to as instructions 610-1) required by the processor 606 for controlling its overall operations. The storage medium 610 may include an electronic storage medium, a magnetic storage medium, an optical storage medium, a quantum storage medium, or the like. For example, the storage medium 610 may include, but are not limited to, hard drives, floppy diskettes, optical disks, ROMs, RAMs, EPROMs, EEPROMs, flash memory, magnetic or optical cards, solid-state memory devices, or other types of physical media suitable for storing electronic instructions. In one or more embodiments, the storage medium 610 includes a Compact Disk-Read Only Memory (CD-ROM), a Compact Disk-Read / Write (CD-R / W), and / or a Digital Video Disc (DVD). In one or more implementations, the storage medium 610 stores computer program code configured to cause the computing system 600 to perform at least a portion of the processes and / or methods disclosed herein throughput the disclosure.

[0101] Embodiments of the present disclosure have been described above with reference to flowchart illustrations of methods and systems according to embodiments of the disclosure, and / or procedures, algorithms, steps, operations, formulae, or other computational depictions, which may also be implemented as computer program products. In this regard, each block or step of the flowchart, and combinations of blocks (and / or steps) in the flowchart, as well as any procedure, algorithm, step, operation, formula, or computational depiction can be implemented by various means, such as hardware, firmware, and / or software including one or more computer program instructions embodied in computer-readable program code. As will be appreciated, any such computer program instructions may be executed by one or more computer processors, including without limitation a general -purpose computer or special purpose computer, or other programmable processing apparatus to perform a group of operations comprising the operations or blocks described in connection with the disclosed method.

[0102] Further, these computer program instructions, such as embodied in computer-readable program code, may also be stored in one or more computer- readable memory or memory devices (for example, the memory 304 or the storage medium 610) that can direct a computer processor or other programmable processing apparatus to function in a particular manner, such that the instructions 610-1 stored in the computer-readable memory or memory devices produce an article of manufacture including instruction means which implement the function specified in the block(s) of the flowchart(s).

[0103] It will further be appreciated that the term “computer program instructions” as used herein refer to one or more instructions that can be executed by the one or more processors (for example, the processor 302 or the processor 606) to perform one or more functions as described herein. The instructions 610-1 may also be stored remotely such as on a server, or all or a portion of the instructions can be stored locally and remotely.

[0104] Referring to the technical abilities and advantageous effect of the present disclosure, the disclosed system and method may provide an automation of host selection from a set of resources based on affinity rules and resource availability in a cluster of selected container platform by triggering the resource availability determination upon receiving a user request. Further, the disclosed system and method ensures proper resource update on CNF instantiation, termination, and deletion process, ensuring that CNFs have sufficient CPU, memory, and bandwidth to handle traffic loads.

[0105] Those skilled in the art will appreciate that the methodology described herein in the present disclosure may be carried out in other specific ways than those set forth herein in the above disclosed embodiments without departing from essential characteristics and features of the present invention. The above-described embodiments are therefore to be construed in all aspects as illustrative and not restrictive.

[0106] The drawings and the forgoing description give examples of embodiments. Those skilled in the art will appreciate that one or more of the described elements may well be combined into a single functional element. Alternatively, certain elements may be split into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, orders of processes described herein may be changed and are not limited to the manner described herein. Any combination of the above features and functionalities may be used in accordance with one or more embodiments.

[0107] In the present disclosure, each of the embodiments has been described with reference to numerous specific details which may vary from embodiment to embodiment. The foregoing description of the specific embodiments disclosed herein may reveal the general nature of the embodiments herein that others may, by applying current knowledge, readily modify and / or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications are intended to be comprehendedwithin the meaning of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and is not limited in scope.LIST OF REFERENCE NUMERALS

[0108] The following list is provided for convenience and in support of the drawing figures and as part of the text of the specification, which describe innovations by reference to multiple items. Items not listed here may nonetheless be part of a given embodiment. For better legibility of the text, a given reference number is recited near some, but not all, recitations of the referenced item in the text. The same reference number may be used with reference to different examples or different instances of a given item. The list of reference numerals is:100 - Architecture framework for performing CNF operations101 - User interface layer103 - NFV & SDN design functions105 - Platform foundation services107 - Platform core services109 - Platform resource adapters and utilities111 - Virtualized Network Functions Lifecycle Manager (VNFLM)113 - VNF catalog115 - Network services catalog117 - Network slicing & service changing manager119 - Physical & virtual resource manager121 - Container Network Function Lifecycle Manager (CNFLM)123 - Microservices elastic load balancer125 - Identity & access manager127 - Command Line Interface (CLI)129 - Central logging manager131 - Event routing manager133 - NFV infrastructure monitoring manager135 - Assurance managerT1137 - Performance manager139 - Policy execution engine141 - Capability monitoring manager143 - Release management repository145 - Configuration manager & Golden Configuration Template (GCT)147 - NFV platform decision analytics149 - Database151 - Platform schedulers & cron jobs153 - VNF backup & upgrade manager155 - Micro service auditor157 - Platform Operations, Administration, and Maintenance Manager(POAM)159 - Platform external API adapter and gateway161 - Generic decoder and indexer163 - Docker swarm adapter165 - Open stack API adapter167 - NFV gateway169 - Universal Cloud Service Executor (UCSE)200 - System for selection of host nodes for CNF instantiation operation201 / 201-1, 201-2, ..., 201-n - container platform managers300 - One or more components of the CNFLM 121302 - Processor304 - Memory304A - Set of instructions306 - Communication unit308 - Input / Output (VO) interface310 - Processing unit(s) / modules(s)312 - Communication bus314 - Reception module316 - Resource management module318 - Selection module320 - Transmission module400 - Method steps for managing the CNF instantiation operation402-412 - Operation steps included in the method steps 400500 - Method for selection of the host nodes for the CNF instantiation operation 502-508 - Operation steps of the method 500600 - Block diagram of a computing system602 - Network604 - Network interface606 - Processor 608 - Input / Output (VO) interface610 - Non-transitory computer readable storage medium610-1 - Set of instructions

Claims

I / We Claim:

1. A method (500) for selection of host nodes for Container Network Function (CNF) instantiation operation, the method (500) comprising: receiving (502), by a reception module (314) at a CNF Life Cycle Manager (CNFLM) (121), a request to perform the CNF instantiation operation; determining (504), by a resource management module (316) based on the received request, whether a set of resources are available for the CNF instantiation operation; selecting (506), by a selection module (318) upon determination that the set of resources are available for the CNF instantiation operation, one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti -affinity rules; and sending (508), by a transmission module (320) to a Unified Cloud Service Executor (UCSE) (169), the request to perform the CNF instantiation operation on the selected one or more host nodes.

2. The method (500) as claimed in claim 1, further comprising reserving, by the resource management module (316), resources for the selected one or more host nodes for the CNF instantiation operation in a database (149).

3. The method (500) as claimed in claim 2, further comprising unreserving, by the resource management module (316), unused resources among the resources reserved for the CNF instantiation operation based on a determination that the CNF instantiation operation is partially successful.

4. The method (500) as claimed in claim 1, further comprising: analyzing, by the resource management module (316), deployment plan included in the request, wherein the deployment plan includes information of CNF deployment parameters, resource requirement, and network configuration; anddetermining, by the resource management module (316), whether the set of resources are available for the CNF instantiation operation based on a result of the analysis of the deployment plan.

5. The method (500) as claimed in claim 1, wherein the request is received based on one or more user operation on a User Interface (UI) of a user device.

6. A system (200) for selection of host nodes for Container Network Function (CNF) instantiation operation, the system (200) comprising: a CNF Life Cycle Manager (CNFLM) (121); and a Unified Cloud Service Executor (UCSE) (169) connected to the CNFLM (121) via an interface, wherein the CNFLM (121) comprises: a reception module (314) configured to receive a request to perform the CNF instantiation operation; a resource management module (316) configured to determine, based on the received request, whether a set of resources are available for the CNF instantiation operation; a selection module (318) configured to select, upon determination that the set of resources are available for the CNF instantiation operation, one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti-affinity rules; and a transmission module (320) configured to send, to the UCSE (169), the request to perform the CNF instantiation operation on the selected one or more host nodes.

7. The system (200) as claimed in claim 6, wherein the resource management module (316) is further configured to reserve resources for the selected one or more host nodes for the CNF instantiation operation in a database (1 9).

8. The system (200) as claimed in claim 6, wherein the resource management module (316) is further configured to unreserve unused resources among theresources reserved for the CNF instantiation operation based on a determination that the CNF instantiation operation is partially successful.

9. The system (200) as claimed in claim 6, wherein the resource management module (316) is further configured to: analyze deployment plan included in the request, wherein the deployment plan include information of CNF deployment parameters, resource requirement, and network configuration; and determine whether the set of resources are available for the CNF instantiation operation based on a result of the analysis of the deployment plan.

10. The system (200) as claimed in claim 6, wherein the request is received based on one or more user operation on a User Interface (UI) of a user device.

11. A computer program product comprising computer-executable instructions that are stored on a non-transitory computer-readable medium and that, when executed by at least one processor performs operations comprising: receiving, at a Container Network Function Life Cycle Manager (CNFLM) (121), a request to perform Container Network Function (CNF) instantiation operation; determining, based on the received request, whether a set of resources are available for the CNF instantiation operation; selecting, upon determination that the set of resources are available for the CNF instantiation operation, one or more host nodes from a set of host nodes in a deployed cluster based on affinity / anti -affinity rules; and sending, to a Unified Cloud Service Executor (UCSE) (169), the request to perform the CNF instantiation operation on the selected one or more host nodes.