Sign In to Follow Application
View All Documents & Correspondence

Method And System For Performing One Or More Operations On One Or More Network Functions In A Network

Abstract: The present disclosure relates to a method [400] and a system [300] for performing one or more operations on one or more network functions in a network. The present disclosure encompasses: a transceiver unit [302], at a policy execution engine (PEEGN) [1088], configured to receive a request relating to performing an operation on at least a network function. A validation unit [304] is configured to validate the received request based on the one or more policies relating to the received request. The transceiver unit [302] is configured to transmit an acknowledgement indicative of receipt and validation of the request; and transmit the request to at least the network function for executing the request. Further, a processing unit [306] is configured to execute the request to perform the operation on at least the network function, based on the one or more policies relating to the request. [FIG. 3]

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

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

Applicants

Jio Platforms Limited
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.

Inventors

1. Aayush Bhatnagar
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
2. Adityakar
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
3. Ankit Murarka
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
4. Yog Vashishth
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
5. Meenakshi Rani
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
6. Santosh Kumar Yadav
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
7. Jugal Kishore
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
8. Gaurav Saxena
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India

Specification

1
FORM 2
THE PATENTS ACT, 1970
(39 OF 1970)
&
5 THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
10 “METHOD AND SYSTEM FOR PERFORMING ONE OR MORE
OPERATIONS ON ONE OR MORE NETWORK FUNCTIONS IN A
NETWORK”
15
We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr. Centre
Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
20
The following specification particularly describes the invention and the manner in
which it is to be performed.
25
2
METHOD AND SYSTEM FOR PERFORMING ONE OR MORE
5 OPERATIONS ON ONE OR MORE NETWORK FUNCTIONS IN A
NETWORK
FIELD OF THE DISCLOSURE
10 [0001] Embodiments of the present disclosure generally relate to network
performance management systems. More particularly, embodiments of the present
disclosure relate to methods and systems for performing one or more operations on
one or more network functions in a network.
15 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
20 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] Wireless communication technology has rapidly evolved over the past
25 few decades, with each generation bringing significant improvements and
advancements. The first generation of wireless communication technology was
based on analog technology and offered only voice services. However, with the
advent of the second-generation (2G) technology, digital communication and data
services became possible, and text messaging was introduced. 3G technology
30 marked the introduction of high-speed internet access, mobile video calling, and
3
location-based services. The fourth generation (4G) technology revolutionized
wireless communication with faster data speed, better network coverage, and
improved security. Currently, the fifth generation (5G) technology is being
deployed, promising even faster data speed, low latency, and the ability to connect
5 multiple devices simultaneously. With each generation, wireless communication
technology has become more advanced, sophisticated, and capable of delivering
more services to its users.
[0004] Modern telecommunication networks are rapidly evolving towards
10 virtualized and containerized architectures to meet the growing demands for
scalability, flexibility, and efficiency. In this context, there is a need for an interface
to enable the deployment and management of network functions in virtualized and
containerized environments. Further, over the period of time various solutions have
been developed to address the deployment and management of network functions.
15 However, the increasing complexity of such networks has underscored the need for
a dynamic and policy-driven approach to resource and data management and
network service orchestration.
[0005] Thus, there exists an imperative need in the art to provide a method and
20 a system to address the challenges associated with resource and data management,
which the present disclosure aims to address.
OBJECTS OF THE DISCLOSURE
25 [0006] Some of the objects of the present disclosure, which at least one
embodiment disclosed herein satisfies are listed herein below.
[0007] It is an object of the present disclosure to provide a system and a method
for handling policy management at VNF/VNFC level by various operations (e.g.,
30 create, update, get, and delete).
4
[0008] It is another object of the present disclosure to provide a system and a
method for handling policy management at CNF/CNFC level by various operations.
5 [0009] It is yet another object of the present disclosure to provide a solution
that is less error prone.
SUMMARY
10 [0010] 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.
15 [0011] An aspect of the present disclosure may relate to a method for
performing one or more operations on one or more network functions in a network.
The method comprises receiving, by a transceiver unit, from a user interface (UI),
at a policy execution engine (PEEGN), a request relating to performing an operation
on at least a network function. Thereafter, the method comprises validating, by a
20 validation unit at the PEEGN, the received request based on one or more policies
relating to the received request. Thereafter, the method comprises transmitting, by
the transceiver unit from the PEEGN, to the UI, an acknowledgement indicative of
receipt and validation of the request. Thereafter, the method comprises transmitting,
by the transceiver unit, from the PEEGN by an event routing manager (ERM), the
25 request to at least the network function for executing the request. Thereafter, the
method comprises executing, by a processing unit, at the PEEGN, the request to
perform the operation on at least the network function, based on the one or more
policies relating to the request, wherein the operation comprises at least one of a
create operation, a read operation, an update operation, and a delete operation.
30
5
[0012] In an exemplary aspect of the present disclosure, at least the network
function comprises at least one of virtualized network functions (VNFs), virtualized
network function components (VNFCs), container network functions (CNFs), and
container network function components (CNFCs).
5
[0013] In an exemplary aspect of the present disclosure, the one or more
policies comprise at least one of affinity policies, anti-affinity policies, dependent
policies, scaling policies, instantiation policies, restoration policies, healing
policies, Geographic Redundancy Disaster Recovery policies, Network Service
10 Chaining policies, and combinations thereof.
[0014] In an exemplary aspect of the present disclosure, when the one or more
policies comprises affinity policies, the method comprises allocating, by the
processing unit at the PEEGN, resources for execution of the request on a same
15 network node supporting at least the network function. In another exemplary aspect
of the present disclosure, when the one or more policies comprises anti-affinity
policies, the method comprises allocating, by the processing unit, at the PEEGN,
resources for execution of the request on a network node different from at least the
network node supporting the network function.
20
[0015] In an exemplary aspect of the present disclosure, the PEEGN is
configured to support any one or a combination of one or more container network
function components (CNFCs), and virtualized network function components
(VNFCs).
25
[0016] In an exemplary aspect of the present disclosure, in response to the
PEEGN being unable to support any one or a combination of the CNFCs and the
VNFCs for the received request, the method comprises rejecting, by the validation
unit via the PEEGN, the received request.
30
6
[0017] In an exemplary aspect of the present disclosure, in response to
validation of the received request failing, the method comprises rejecting, by the
validation unit via the PEEGN, the received request.
5 [0018] In an exemplary aspect of the present disclosure, the network comprises
at least a first PEEGN, and at least a second PEEGN, and wherein the method
comprises detecting, by the processing unit, a failure of at least the first PEEGN.
Further, the method comprises operating, by the processing unit, in response to
failure of at least the first PEEGN, at least the second PEEGN to replace at least the
10 first PEEGN.
[0019] In an exemplary aspect of the present disclosure, the request is received
in hypertext transfer protocol (HTTP) format.
15 [0020] In an exemplary aspect of the present disclosure, communication
between the PEEGN and the UI occurs via a PE_UI interface.
[0021] Another aspect of the present disclosure may relate to a system for
performing one or more operations on one or more network functions in a network.
20 The system comprises a transceiver unit at a policy execution engine (PEEGN), the
transceiver unit is configured to receive, from a user interface (UI), a request
relating to performing an operation on at least a network function. Further, the
system comprises a validation unit connected at least with the transceiver unit, the
validation unit is configured to validate the received request based on one or more
25 policies relating to the received request. Further, the transceiver unit is configured
to transmit, to the UI, an acknowledgement indicative of receipt and validation of
the request. Furthermore, the transceiver unit is configured to transmit, via an event
routing manager (ERM), the request to at least the network function for executing
the request. Further, the system comprises a processing unit connected at least with
30 the transceiver unit, the processing unit configured to execute, at the PEEGN, the
7
request to perform the operation on at least the network function, based on the one
or more policies relating to the request, wherein the operation comprises at least
one of a create operation, a read operation, an update operation, and a delete
operation.
5
[0022] Yet another aspect of the present disclosure may relate to a nontransitory computer-readable storage medium, storing instructions for performing
one or more operations on one or more network functions in a network, the storage
medium comprising executable code which, when executed by one or more units
10 of a system, causes: a transceiver unit to receive, from a user interface (UI), at a
policy execution engine (PEEGN), a request relating to performing an operation on
at least a network function; a validation unit to validate, at the PEEGN, the received
request based on one or more policies relating to the received request; the
transceiver unit to: transmit, from the PEEGN, to the UI, an acknowledgement
15 indicative of receipt and validation of the request; and transmit, from the PEEGN,
by an event routing manager (ERM), the request to at least the network function for
executing the request; and a processing unit to execute, at the PEEGN, the request
to perform the operation on at least the network function, based on the one or more
policies relating to the request, wherein the operation comprises at least one of a
20 create operation, a read operation, an update operation, and a delete operation.
DESCRIPTION OF THE DRAWINGS
[0023] The accompanying drawings, which are incorporated herein, and
25 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
30 not to be construed as limiting the disclosure, but the possible variants of the method
8
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.
5
[0024] FIG. 1 illustrates an exemplary block diagram of a manifestation and
orchestration (MANO) architecture, in accordance with exemplary
implementations of the present disclosure.
10 [0025] 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.
[0026] FIG. 3 illustrates an exemplary block diagram of a system for
15 performing one or more operations on one or more network functions in a network,
in accordance with exemplary implementations of the present disclosure.
[0027] FIG. 4 illustrates a method flow diagram for performing one or more
operations on one or more network functions in a network, in accordance with
20 exemplary implementations of the present disclosure.
[0028] FIG. 5 illustrates a system architecture for performing one or more
operations on one or more network functions in a network, in accordance with
exemplary implementations of the present disclosure.
25
[0029] The foregoing shall be more apparent from the following more detailed
description of the disclosure.
9
DETAILED DESCRIPTION
[0030] In the following description, for the purposes of explanation, various
specific details are set forth in order to provide a thorough understanding of
5 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
10 problems discussed above.
[0031] 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
15 skilled in the art with an enabling description for implementing an exemplary
embodiment. It should be understood that various changes may be made in the
function and arrangement of elements without departing from the spirit and scope
of the disclosure as set forth.
20 [0032] 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 the embodiments 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
25 embodiments in unnecessary detail.
[0033] 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
30 operations as a sequential process, many of the operations may be performed in
10
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.
5 [0034] The word “exemplary” and/or “demonstrative” is used herein to mean
serving as an example, instance, or illustration. For the avoidance of doubt, the
subject matter disclosed herein is not limited by such examples. In addition, any
aspect or design described herein as “exemplary” and/or “demonstrative” is not
necessarily to be construed as preferred or advantageous over other aspects or
10 designs, nor is it meant to preclude equivalent exemplary structures and techniques
known to those of ordinary skill in the art. Furthermore, to the extent that the terms
“includes,” “has,” “contains,” and other similar words are used in either the detailed
description or the claims, such terms are intended to be inclusive—in a manner
similar to the term “comprising” as an open transition word—without precluding
15 any additional or other elements.
[0035] 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
20 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
25 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.
11
[0036] As used herein, “a user equipment”, “a user device”, “a smart-userdevice”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld
device”, “a wireless communication device”, “a mobile communication device”, “a
communication device” may be any electrical, electronic and/or computing device
5 or equipment, capable of implementing the features of the present disclosure. The
user equipment/device may include, but is not limited to, a mobile phone, smart
phone, laptop, a general-purpose computer, desktop, personal digital assistant,
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
10 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.
[0037] As used herein, “storage unit” or “memory unit” refers to a machine or
computer-readable medium including any mechanism for storing information in a
15 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
20 functions.
[0038] 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 refer to a set of rules or protocols that
25 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.
[0039] All modules, units, components used herein, unless explicitly excluded
30 herein, may be software modules or hardware processors, the processors being a
12
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
5 circuits (FPGA), any other type of integrated circuits, etc.
[0040] As used herein the transceiver unit includes at least one receiver and at
least one transmitter configured respectively for receiving and transmitting data,
signals, information or a combination thereof between units/components within the
10 system and/or connected with the system.
[0041] As discussed in the background section, the current known solutions
have several shortcomings. The present disclosure aims to overcome the abovementioned and other existing problems in this field of technology by providing a
15 method and a system of performing one or more operations on one or more network
functions in a network by providing an interface to interact with a Policy Execution
Engine (PEEGN). The PEEGN handles one or more policies related to resource
management, security, availability, and scalability as the one or more policies are
used in instantiation, scaling, and healing of VNFs and CNFs. Further, a user
20 interface (UI) such as a Command Line Interface (CLI) or Graphical User Interface
(GUI) is provided to perform CRUD (create, read, update, delete) operations on the
one or more policies, including scaling, dependent policies, affinity/anti-affinity,
restoration, healing, Geographic Redundancy, Disaster Recovery, and Network
Service Chaining. The present disclosure further enables users to manually interact
25 with the system to perform the operations such as the CRUD operation, which
further ensures an effective management of network functions.
[0042] FIG. 1 illustrates an exemplary block diagram representation of a
management and orchestration (MANO) architecture [100], in accordance with
30 exemplary implementations of the present disclosure. The MANO architecture
13
[100] is developed for managing telecom cloud infrastructure automatically,
managing design or deployment design, managing instantiation of a network
node(s) etc. The MANO architecture [100] deploys the network node(s) in the form
of Virtual Network Function (VNF) and Cloud-native/ Container Network Function
5 (CNF). The system may comprise one or more components of the MANO
architecture. The MANO architecture [100] is used to auto-instantiate the VNFs
into the corresponding environment of the present disclosure so that it could help
in onboarding other vendor(s) CNFs and VNFs to the platform. In an
implementation, the system comprises a NFV Platform Decision Analytics (NPDA)
10 [1096] component.
[0043] As shown in FIG. 1, the MANO architecture [100] comprises a user
interface layer, a network function virtualization (NFV) and software defined
network (SDN) design function module [104], a platforms foundation services
15 module [106], a platform core services module [108] and a platform resource
adapters and utilities module [112], wherein 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.
20 [0044] The NFV and SDN design function module [104] further 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] is responsible for on which
25 server of the network the microservice will be instantiated. The VNF lifecycle
manager (compute) [1042] will manage the overall flow of incoming/ outgoing
requests during interaction with the user. The VNF lifecycle manager (compute)
[1042] is responsible for determining which sequence to be followed for executing
the process. For e.g. in an AMF network function of the network (such as a 5G
30 network), sequence for execution of processes P1 and P2 etc. The VNF catalogue
[1044] stores the metadata of all the VNFs (also CNFs in some cases). The network
14
services catalogue [1046] stores the information of the services that need to be run.
The network slicing and service chaining manager [1048] manages the slicing (an
ordered and connected sequence of network service/ network functions (NFs)) that
must be applied to a specific networked data packet. The physical and virtual
5 resource manager [1050] stores the logical and physical inventory of the VNFs. Just
like the VNF lifecycle manager (compute) [1042], the CNF lifecycle manager
[1052] is similarly used for the CNFs lifecycle management.
[0045] The platforms foundation services module [106] further comprises a
10 microservices elastic load balancer [1062], an identify and 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] is
used for maintaining the load balancing of the request for the services. The identify
and access manager [1064] is used for logging purposes. The command line
15 interface (CLI) [1066] is used to provide commands to execute certain processes
which require changes during the run time. The central logging manager [1068] is
responsible for keeping the logs of every service. These logs are generated by the
MANO platform [100]. These logs are used for debugging purposes. The event
routing manager [1070] is responsible for routing the events i.e., the application
20 programming interface (API) hits to the corresponding services.
[0046] The platforms core services module [108] further comprises NFV
infrastructure monitoring manager [1082], an assure manager [1084], a
performance manager [1086], a policy execution engine [1088], a capacity
25 monitoring manager [1090], a release management (mgmt.) repository [1092], a
configuration manager and GCT [1094], an NFV platform decision analytics
[1096], a platform NoSQL DB [1098], a platform schedulers and cron jobs [1100],
a VNF backup and upgrade manager [1102], a micro service auditor [1104], and a
platform operations, administration and maintenance manager [1106]. The NFV
30 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
15
[1084] is responsible for supervising the alarms the vendor is generating. The
performance manager [1086] is responsible for manging the performance counters.
The policy execution engine (PEEGN) [1088] is responsible for all the managing
the policies. The capacity monitoring manager (CPM) [1090] is responsible for
5 sending the request to the PEEGN [1088]. The release management (mgmt.)
repository (RMR) [1092] is responsible for managing the releases and the images
of all the vendor network node. The configuration manager and 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
10 resources. It is further noted that the policy execution engine (PEEGN) [1088], the
configuration manager and GCT [1094] and the (NPDA) [1096] work together. The
platform NoSQL DB [1098] is a platform database for storing all the inventory
(both physical and logical) as well as the metadata of the VNFs and CNF. It may
be noted that the platform NoSQL DB [1098] may be just a narrow implementation
15 of the present disclosure, and any other kind of structure for the database may be
implemented for the platform database such as relational or non-relational database.
The platform schedulers and cron jobs [1100] schedules the task such as but not
limited to triggering of an event, traversing the network graph etc. The VNF backup
and upgrade manager [1102] takes backup of the images, binaries of the VNFs and
20 the CNFs and produces those backups on demand in case of server failure. The
micro service auditor [1104] audits the microservices. For e.g., in a hypothetical
case, instances not being instantiated by the MANO architecture [100] using the
network resources then the micro service auditor [1104] audits and informs the
same so that resources can be released for services running in the MANO
25 architecture [100], thereby assuring the services only run on the MANO platform
[100]. The platform operations, administration and maintenance manager [1106] is
used for newer instances that are spawning.
[0047] The platform resource adapters and utilities module [112] further
30 comprises a platform external API adapter and gateway [1122], a generic decoder
and indexer (XML, CSV, JSON) [1124], a docker service adapter [1126], an API
16
adapter [1128], and a NFV gateway [1130]. The platform external API adapter and
gateway [1122] may be responsible for handling the external services (to the
MANO platform [100]) that require the network resources. The generic decoder
and indexer (XML, CSV, JSON) [1124] gets directly the data of the vendor system
5 in the XML, CSV, JSON format. The docker service adapter [1126] may be the
interface provided between the telecom cloud and the MANO architecture [100] 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 [100].
10
[0048] The docker service adapter (DSA) [1126] is a microservices-based
system designed to deploy and manage Container Network Functions (CNFs) and
their components (CNFCs) across Docker nodes. The DSA [1126] offers REST
endpoints for key operations, including uploading container images to a Docker
15 registry, terminating CNFC instances, and creating Docker volumes and networks.
CNFs, which are network functions packaged as containers, may consist of multiple
CNFCs. The DSA [1126] facilitates the deployment, configuration, and
management of these components by interacting with Docker's API, ensuring
proper setup and scalability within a containerized environment. This approach
20 provides a modular and flexible framework for handling network functions in a
virtualized network setup.
[0049] FIG. 2 illustrates an exemplary block diagram of a computing device
[200] (herein, also referred to as a computer system [200]) upon which one or more
25 features of the present disclosure may be implemented in accordance with an
exemplary implementation of the present disclosure. The present disclosure can be
implemented on a computing device [200] as shown in FIG. 2. The computing
device [200] implements the present disclosure in accordance with the MANO
architecture (as shown in FIG. 1). In an implementation, the computing device
30 [200] may also implement a method for performing one or more operations on one
or more network functions in a network, utilising a system, or one or more sub-
17
systems, provided in the network. In another implementation, the computing device
[200] itself implements the method for performing one or more operations on one
or more network functions in a network, using one or more units configured within
the computing device [200], wherein said one or more units are capable of
5 implementing the features as disclosed in the present disclosure.
[0050] The computing device [200] may include a bus [202] or other
communication mechanism(s) for communicating information, and a hardware
processor [204] coupled with bus [202] for processing said information. The
10 hardware processor [204] may be, for example, a general-purpose microprocessor.
The computing device [200] may also include a main memory [206], such as a
random-access memory (RAM), or other dynamic storage device, coupled to the
bus [202], for storing information and instructions to be executed by the processor
[204]. The main memory [206] also may be used for storing temporary variables or
15 other intermediate information during execution of the instructions to be executed
by the processor [204]. Such instructions, when stored in a non-transitory storage
media accessible to the processor [204], render the computing device [200] into a
special purpose device that is customized to perform operations according to the
instructions. The computing device [200] further includes a read only memory
20 (ROM) [208] or other static storage device coupled to the bus [202] for storing static
information and instructions for the processor [204].
[0051] A storage device [210], such as a magnetic disk, optical disk, or solidstate drive is provided and coupled to the bus [202] for storing information and
25 instructions. The computing device [200] may be coupled via the bus [202] to a
display [212], such as a cathode ray tube (CRT), Liquid crystal Display (LCD),
Light Emitting Diode (LED) display, Organic LED (OLED) display, etc., for
displaying information to a user of the computing device [200]. An input device
[214], including alphanumeric and other keys, touch screen input means, etc. may
30 be coupled to the bus [202] for communicating information and command
selections to the processor [204]. Another type of user input device may be a cursor
18
controller [216], such as a mouse, a trackball, or cursor direction keys, for
communicating direction information and command selections to the processor
[204], and for controlling cursor movement on the display [212]. The cursor
controller [216] typically has two degrees of freedom in two axes, a first axis (e.g.,
5 x) and a second axis (e.g., y), that allows the cursor controller [216] to specify
positions in a plane.
[0052] The computing device [200] may implement the techniques described
herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware
10 and/or program logic which, in combination with the computing device [200],
causes or programs the computing device [200] to be a special-purpose device.
According to one implementation, the techniques herein are performed by the
computing device [200] in response to the processor [204] executing one or more
sequences of one or more instructions contained in the main memory [206]. The
15 one or more instructions may be read into the main memory [206] from another
storage medium, such as the storage device [210]. Execution of the one or more
sequences of the one or more instructions contained in the main memory [206]
causes the processor [204] to perform the process steps described herein. In
alternative implementations of the present disclosure, hard-wired circuitry may be
20 used in place of, or in combination with, software instructions.
[0053] The computing device [200] also may include a communication
interface [218] coupled to the bus [202]. The communication interface [218]
provides two-way data communication coupling to a network link [220] that is
25 connected to a local network [222]. For example, the communication interface
[218] may be an integrated services digital network (ISDN) card, cable modem,
satellite modem, or a modem to provide a data communication connection to a
corresponding type of telecommunication line. In another example, the
communication interface [218] may be a local area network (LAN) card to provide
30 a data communication connection to a compatible LAN. Wireless links may also be
implemented. In any such implementation, the communication interface [218]
19
sends and receives electrical, electromagnetic or optical signals that carry digital
data streams representing different types of information.
[0054] The computing device [200] can send and receive data, including
5 program code, messages, etc. through the network(s), the network link [220] and
the communication interface [218]. In an example, a server [230] might transmit a
requested code for an application program through the Internet [228], the ISP [226],
the local network [222], the host [224] and the communication interface [218]. The
received code may be executed by the processor [204] as it is received, and/or stored
10 in the storage device [210], or other non-volatile storage for later execution.
[0055] Referring to FIG. 3, an exemplary block diagram of a system [300] for
performing one or more operations on one or more network functions in a network,
is shown, in accordance with the exemplary implementations of the present
15 disclosure. The system [300] comprises at least one transceiver unit [302], at least
one validation unit [304], and at least one processing unit [306]. Also, all of the
components/ units of the system [300] are assumed to be connected to each other
unless otherwise indicated below. As shown in the figures all units shown within
the system [300] should also be assumed to be connected to each other. Also, in
20 FIG. 3 only a few units are shown, however, the system [300] may comprise
multiple such units or the system [300] may comprise any such numbers of said
units, as required to implement the features of the present disclosure. Further, in an
implementation, the system [300] may be present in a user device/ user equipment
[102] to implement the features of the present disclosure. The system [300] may be
25 a part of the user equipment (UE) [102] (e.g., a user device) or may be independent
of but in communication with the UE [102]. In another implementation, the system
[300] may reside in a server or a network entity. In yet another implementation, the
system [300] may reside partly in the server/ network entity and partly in the UE
[102].
30
20
[0056] The system [300] is configured for performing one or more operations
on one or more network functions in a network, with the help of the interconnection
between the components/units of the system [300].
5 [0057] 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
10 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.
15
[0058] The system [300] herein comprises the transceiver unit [302] associated
with a policy execution engine (PEEGN) [1088]. The PEEGN [1088] is responsible
for managing one or more network functions based on a set of predefined policies.
The one or more policies herein are based on an efficient and reliable management
20 of resources and functions.
[0059] Further, the transceiver unit [302] is configured to receive, from a user
interface (UI) [308], a request relating to performing an operation on at least a
network function. In an example, the PEEGN [1088] manages one or more requests
25 that are related to the said one or more network functions and further applies the
appropriate policies to execute said request.
[0060] The network function comprises at least one of virtualized network
functions (VNFs), virtualized network function components (VNFCs), container
30 network functions (CNFs), and container network function components (CNFCs).
21
[0061] The operation comprises at least one of a create operation, a read
operation, an update operation, and a delete operation. The user may utilize one or
more requests as mentioned above to instruct the PEEGN [1088] to perform at least
5 one of create, read, update, and delete operations on the network functions (e.g.,
VNFs and/or CNFs) or on network function components (e.g., VNFCs and/or
CNFCs).
[0062] Further, the UI [308] mentioned herein is either a command line
10 interface (CLI) or a graphical user interface (GUI) designed to interact with the
PEEGN [1088]. In an example, the UI [308] allows a user to issue commands or
requests related to a specific network function. In another example, the UI [308]
facilitates users to manage and monitor the network functions.
15 [0063] In an implementation, the create operation may facilitate creation of one
or more new instances of network functions. In an example, users may use the
request to create a new instance from any one of a CNF, CNFC, VNF, and VNFC
using the create request.
20 [0064] In an implementation, the read operation may facilitate retrieval of
information related to existing network functions. In an example, users may use the
request to read or query the status or details of a VNF, VNFC, CNF, or CNFC.
[0065] In an implementation, the update operation may facilitate modification
25 of configuration or operation of an existing network function. In an example, users
may use the request to modify or adjust resource allocation for a specific network
function, or change function parameters for a specific network function, or may
apply new policies to an existing network function.
22
[0066] In an implementation, the delete operation facilitates removal of an
existing network function. In an example, users may use the request to deallocate
resources for a specific network function or terminate a specific network function.
5 [0067] Further, the communication between the PEEGN [1088] and the UI
[308] occurs via a PE_UI interface. In one aspect, the PE_UI interface is responsible
for transmitting the requests and their responses between the PEEGN [1088] and
the UI [308]. In another aspect, the PE_UI interface may manage a flow of data and
commands between the UI [308] and the PEEGN [1088].
10
[0068] In an embodiment, the PE_UI interface is configured to facilitate
exchange of information using hypertext transfer protocol (http) rest application
programming interface (API). In an embodiment, the http rest API is used in
conjunction with JSON and/or XML communication media. In another
15 embodiment, the PE_UI interface is configured to facilitate exchange of
information by establishing a web-socket connection between the PEEGN [1088]
and the UI [308]. A web-socket connection may involve establishing a persistent
connectivity between the PEEGN [1088] and the UI [308]. An example of the websocket based communication includes, without limitation, a transmission control
20 protocol (TCP) connection. In such a connection, information, such as operational
status, health, etc., of different components may be exchanged through the interface
using a ping-pong-based communication.
[0069] Furthermore, the request is received in hypertext transfer protocol
25 (HTTP) format. In one aspect, the HTTP may act as a communication protocol for
transmitting the requests from the UI [308] to the PEEGN [1088]. In another aspect,
the HTTP format facilitates a secure and reliable transmission of data by ensuring
that the requests are properly formatted and delivered to the PEEGN [1088] for
further processing.
30
23
[0070] The system [300] further comprises the validation unit [304] connected
at least with the transceiver unit [302] for further processing the received request.
The validation unit [304] is configured to validate the received request based on the
one or more policies relating to the received request. Further, the PEEGN [1088] is
5 configured to support any one or a combination of one or more container network
function components (CNFCs), and virtualized network function components
(VNFCs).
[0071] In an implementation, the one or more policies are affinity policies that
10 may indicate that a specific network function components such as VNFCs or
CNFCs requires to be allocated on the same host or node in order to enhance
performance, reduce latency, or facilitate closer coordination between function
components.
15 [0072] In another implementation, the one or more policies are anti-affinity
policies that may indicate that specific network function components, such as
VNFCs or CNFCs, are allocated on different hosts or nodes to increase fault
tolerance and reduce the risk of single points of failure.
20 [0073] In yet another implementation, the one or more policies are dependent
policies that may indicate a dependency of a specific network function or their
components on another specific network function or their components.
[0074] In yet another implementation, the one or more policies are scaling
25 policies that may include how a specific network function or their components are
to be scaled within the network. In one aspect, the network function or their
components can be scaled by an addition of extra resources to said specific network
function or their components. In another aspect, the network function or their
components can be scaled by creation of new instances for said specific network
30 function or their components.
24
[0075] In yet another implementation, the one or more policies are instantiation
policies that may include how a specific network function or their components is
created or instantiated. For instance, the instantiation policies may include one or
5 more conditions for creating said specific network function or their components or
a sequence or a process for instantiation of specific network function or their
components.
[0076] In yet another implementation, the one or more policies are restoration
10 policies that may include one or more actions for said specific network function or
their components in an event of failure or disruption.
[0077] In yet another implementation, the one or more policies are healing
policies that may include a re-creation or reallocation of resources for the specific
15 network function or their components during the failure or disruption of said
specific network function or their components.
[0078] In yet another implementation, the one or more policies are geographic
redundancy disaster recovery policies that may include one or more actions to
20 ensure that specific network function or their components are replicated across
geographically diverse locations, in the event of failure or disruption to continue
providing the services.
[0079] In yet another implementation, the one or more policies are network
25 service chaining policies that may include a connection of the specific network
function or their components.
[0080] In yet another implementation, the one or more polices may include
data related to at least the network function. Herein, the data associated with at least
30 the network function may refer to a specific one or more network resources and
25
configurations, respectively that are linked to the execution of the request. In one
example, the data may include information on the one or more resources that are
allocated to the requested VNFs or CNFs, respectively. In another example, the data
may include information regarding a current operational state of VNFCs/CNFCs,
5 that may include health, uptime, and performance metrics of the network services
running on said network node. In yet another example, the data may include
configuration details that specify how the resources are to be set up according to
the one or more policies, for the network functions hosted on the network node. In
yet another example, the data may include information about the nature of the
10 request (such as create, read, update, delete) and their corresponding execution
results, such as success or failure of said request.
[0081] It is to be noted that the one or more policies may comprise at least one
of the policies mentioned above and combinations thereof. It is to be further noted
15 that the one or more policies may comprise any other policies that may not be
mentioned herein, but is known to a person skilled in the art.
[0082] The validation unit [304] may process the received request and may
further utilize one or more processes to validate said received request.
20
[0083] In one example, the validation unit [304] may verify if the received
request complies with the one or more aforementioned policies. For instance, if a
create request is received, the validation unit [304] may ensure that the resources
required for the new VNFC or CNFC are available and align with the affinity or
25 anti-affinity policies.
[0084] In another example, the validation unit [304] may verify whether the
network is able to support the requested resources. For instance, if a scaling request
is received, the validation unit [304] may crosscheck if the network is able to
30 provide the additional resources.
26
[0085] In yet another example, the validation unit [304] may verify that the
request is formatted correctly and is compliant with the predefined protocol (such
as the HTTP format).
5
[0086] In yet another example, the validation unit [304] may verify that other
one or more necessary preconditions that would be known to a person skilled in the
art, are met before the received request is approved.
10 [0087] Herein, in response to the PEEGN [1088] being unable to support any
one or a combination of the CNFCs and the VNFCs for the received request, the
validation unit [304] is configured to reject, via the PEEGN [1088], the received
request. Further, in response to validation of the received request failing, the
validation unit [304] is configured to reject, via the PEEGN [1088], the received
15 request. In an implementation of the present disclosure, if the PEEGN [1088] is
unable to support the VNFCs or CNFCs mentioned in the received request, then in
such case, the validation unit [304] may reject the request. In one example, the
PEEGN [1088] is unable to support the VNFCs or CNFCs due to a lack of resources
that are available for said VNFCs and CNFCs, respectively. In another example,
20 the PEEGN [1088] is unable to support the VNFCs or CNFCs may not align with
the one or more aforementioned policies.
[0088] Further, the transceiver unit [302] is configured to transmit, to the UI
[308], an acknowledgement indicative of receipt and validation of the request. In
25 an example, the request is validated by the validation unit [304], then the transceiver
unit [302] sends a positive acknowledgement indicative to the UI [308]. The
acknowledgement may further notify the user associated with said UI [308], that
the request is eligible to be executed and is in the process of the implementation
within the network.
30
27
[0089] It is to be noted that, the transceiver unit [302] may send an
acknowledgement indicative of receipt of the request prior to the validation request.
Further, the acknowledgement indicative of receipt of the request indicates that the
request initiated by the user is successfully received and is in the process of
5 validation.
[0090] In another example, if the request is failing the validation process, then
the transceiver unit [302] sends a negative acknowledgement to the UI [308]. The
acknowledgement may further notify the user, the one or more reasons due to which
10 the request is not further processed.
[0091] Furthermore, the transceiver unit [302] is further configured to transmit,
via an event routing manager (ERM) [1070], the request to at least the network
function for executing the request. In an event, the request is validated, then the
15 transceiver unit [302] further transmits the request to the target node for executing
the request. Herein, the ERM [1070] routes the request to a corresponding node as
mentioned in the request. It is to be noted that at least the network function
mentioned herein a specific network entity, where the network functions (VNFs or
CNFs) are to be executed as mentioned in the request.
20
[0092] The system [300] further comprises the processing unit [306] connected
at least with the transceiver unit [302]. The processing unit [306] is configured to
execute, at the PEEGN [1088], the request for performing the operation on at least
the network function based on the one or more policies relating to the received
25 request. The operation may comprise one of the create operation, the read operation,
the update operation and the delete operation.
[0093] In an event, the one or more policies comprises affinity policies, then
in such event, the processing unit [306] is configured to allocate, via the PEEGN
30 [1088], resources for execution of the request on the same network node supporting
28
at least the network function. In such event, the processing unit [306] may ensure
that all related VNFs/ VNFCs or CNFs/ CNFCs are executed on the same node. For
instance, if the request involves creating or updating a network function, the
processing unit [306] may then ensure that the new or modified VNF/VNFC or
5 CNF/CNFC is allocated to the same node where the other related network functions
are currently residing within the network. The allocation of resources required for
the execution of the request on the same node reduces an inter-node communication
latency between VNFs/ VNFCs or CNFs/ CNFCs.
10 [0094] In another event, the one or more policies comprises anti-affinity
policies, then in such event, the processing unit [306] is configured to allocate, via
the PEEGN [1088], resources for execution of the request on the network node
different from at least the network node supporting the network function. In such
an event, the processing unit [306] may ensure that VNFs/ VNFCs or CNFs/ CNFCs
15 associated with the request are allocated to different network nodes, depending on
the one or more policy. For instance, if the request involves a scaling request, then
the processing unit [306], through the PEEGN [1088], may assign resources on a
different node from the one hosting existing network functions to avoid co-location.
Furthermore, the allocation of resources for the execution of the request on the
20 different nodes reduces fault tolerance by avoiding single points of failure.
Furthermore, said allocation facilitates a continuation of service in case of node
failures. In addition, said allocation may facilitate an appropriate load distribution
of resources over the different nodes, which may prevent exhaustion on a single
node.
25
[0095] Further, in an implementation of the present disclosure, the network
may comprise at least a first PEEGN [1088], and at least a second PEEGN [1088].
It is to be noted that the network may comprise a plurality of PEEGN [1088];
however, the terms at least the first PEEGN [1088] and at least the second PEEGN
30 [1088] are used herein for the sake of clarity.
29
[0096] Further, the processing unit [306] is configured to detect a failure of at
least the first PEEGN [1088]. The processing unit [306] may monitor the status and
health parameters of each PEEGN [1088] at a predefined time period. Further, in
5 an event, the processing unit [306] may detect that the health parameters of a
specific PEEGN [1088] (suppose the first PEEGN [1088]) exceeds a predetermined
threshold, then in such an event, the processing unit [306] may declare that the
failure of said specific PEEGN [1088] (suppose the first PEEGN [1088]).
10 [0097] Furthermore, the processing unit [306] is configured to operate, in
response to failure of at least the first PEEGN [1088], at least the second PEEGN
[1088] to replace at least the first PEEGN [1088]. Post detection of the failure on
said specific PEEGN [1088] (suppose the first PEEGN [1088]), the processing unit
[306] is configured to perform one or more actions (prestored within a memory
15 associated with the processing unit [306]) to tackle such situations.
[0098] In an example, the processing unit [306] may transfer one or more
operations such as management of resources, validation of requests, and
verification of the request with the one or more policies, from the first PEEGN
20 [1088] to the second PEEGN [1088], in order to ensures that ongoing requests and
network operations may continue without any interruption. Further, the operations
being performed by the first PEEGN [1088], are now to be handled by the second
PEEGN [1088]. The second PEEGN [1088] may re-establish any lost
communication channels, resume pending operations, and ensure that new
25 incoming requests are handled effectively.
[0099] Referring to FIG. 4, an exemplary method flow diagram [400] for
performing one or more operations on one or more network functions in a network,
in accordance with exemplary implementations of the present disclosure is shown.
30 In an implementation the method [400] is performed by the system [300]. Further,
30
in an implementation, the system [300] may be present in a server device to
implement the features of the present disclosure.
[0100] Also, as shown in FIG. 4, the method [400] initially starts at step [402].
5
[0101] At step [404], the method [400] comprises receiving, by the transceiver
unit [302] via the user interface (UI) [308], at the policy execution engine (PEEGN)
[1088], the request relating to performing an operation on at least a network
function. Herein, the network function comprises at least one of virtualized network
10 functions (VNFs), virtualized network function components (VNFCs), container
network functions (CNFs), and container network function components (CNFCs).
[0102] Further, the operation mentioned herein comprises at least one of a
create operation, a read operation, an update operation, and a delete operation.
15
[0103] Furthermore, the communication between the PEEGN [1088] and the
UI [308] occurs via the PE_UI interface, and the request is received in hypertext
transfer protocol (HTTP) format.
20 [0104] At step [406], the method [400] comprises validating, by the validation
unit [304] at the PEEGN [1088], the received request based on the one or more
policies relating to the received request. Further, in an implementation of the
present disclosure the PEEGN [1088] is configured to support any one or a
combination of one or more container network function components (CNFCs), and
25 virtualized network function components (VNFCs).
[0105] The method [400] further explains that the one or more policies
comprise at least one of affinity policies, anti-affinity policies, dependent policies,
scaling policies, instantiation policies, restoration policies, healing policies,
31
Geographic Redundancy Disaster Recovery policies, Network Service Chaining
policies, and combinations thereof.
[0106] The method [400] further explains that in response to the PEEGN
5 [1088] being unable to support any one or a combination of the CNFCs and the
VNFCs for the received request, the method [400] comprises rejecting, by the
validation unit [304] via the PEEGN [1088], the received request.
[0107] The method [400] further explains that in response to the PEEGN
10 [1088] being unable to support any one or a combination of the CNFCs and the
VNFCs for the received request, the method [400] comprises rejecting, by the
validation unit [304] via the PEEGN [1088], the received request.
[0108] At step [408], the method [400] comprises transmitting, by the
15 transceiver unit [302] via the PEEGN [1088], to the UI [308], the acknowledgement
indicative of receipt and validation of the request.
[0109] At step [410], the method [400] comprises transmitting, by the
transceiver unit [302] from the PEEGN [1088] via the event routing manager
20 (ERM) [1070], the request to at least the network function for executing the request.
[0110] At step [412], the method [400] comprises executing, by the processing
unit [306], at the PEEGN [1088], the request for performing the operation on at
least the network function based on the one or more policies relating to the received
25 request. The operation may comprise one of the create operation, the read operation,
the update operation and the delete operation.
[0111] The method [400] further explains that in an event, the one or more
policies comprises affinity policies, then the method [400] comprises allocating, by
32
the processing unit [306] via the PEEGN [1088], resources for execution of the
request on a same network node supporting at least the network function.
[0112] The method [400] further explains that in an event, the one or more
5 policies comprises anti-affinity policies then the method [400] comprises
allocating, by the processing unit [306] via the PEEGN [1088], resources for
execution of the request on a network node different from at least the network node
supporting the network function.
10 [0113] Further, in an implementation of the present disclosure, the
communication network comprises at least a first PEEGN [1088], and at least a
second PEEGN [1088]. Further, the method [400] comprises detecting, by the
processing unit [306], a failure of at least the first PEEGN [1088].
15 [0114] The method [400] further comprises operating, by the processing unit
[306], in response to failure of at least the first PEEGN [1088], at least the second
PEEGN [1088] to replace at least the first PEEGN [1088].
[0115] The method [400] herein terminates at step [414].
20
[0116] Referring to FIG. 5, a system architecture [500] for performing one or
more operations on one or more network functions in a network, is shown, in
accordance with the exemplary implementations of the present disclosure. The
system [500] comprises a user interface [502], a policy execution engine (PEEGN)
25 [504], a business logic event [506], a database [508].
[0117] As shown in FIG. 5, the UI [502] is either a command line interface
(CLI) or a graphical user interface (GUI) which facilitates users to transmit requests
relating to CRUD (Create, Read, Update, Delete) operations to be made on network
30 functions (e.g., VNFs and/or CNFs)and their components (e.g., VNFCs and/or
33
CNFCs) based on one or more policies. The one or more policies may include a
scaling policy, an instantiation policy, a healing policy, an affinity policy, an antiaffinity policy and combination thereof.
5 [0118] Furthermore, for performing the CRUD operations, a request in
hypertext transfer protocol (HTTP) format is to be sent by the UI [502] to the
PEEGN [504]. Further, the communication between the UI [502] and the PEEGN
[504] is established by a PE_UI interface and one or more data exchanged between
the UI [502] and the PEEGN [504] is in JavaScript object notation (JSON) format.
10
[0119] It is to be noted that for every CRUD operation (create, update, fetch,
delete), an HTTP request is generated, and is transmitted to the PEEGN [504].
Further, the PEEGN [504] is responsible for executing and managing the one or
more policies related to the network functions mentioned in the request. The
15 PEEGN [504] with the help of the business logic unit [506] may process the
received request and further validate the request based on one or more pre-defined
criteria.
[0120] Further, it is to be noted that each operation is handled asynchronously,
20 and their corresponding responses are further sent back to the UI (via the PE_UI
interface) once the execution of the request is completed.
[0121] Further, the database [508] mentioned herein stores the data related to
the one or more policies and a plurality of events associated with said PEEGN
25 [504]. The database [508] utilizes elastic search to allow rapid search, modify, and
fetch operations.
[0122] The present disclosure further provides a non-transitory computerreadable storage medium, storing instructions for performing one or more
30 operations on one or more network functions in a network, the storage medium
34
comprising executable code which, when executed by one or more units of a
system, causes: a transceiver unit [302] to receive, from a user interface (UI) [308],
at a policy execution engine (PEEGN) [1088], a request relating to an operation to
be performed on at least a network function; a validation unit [304] to validate, at
5 the PEEGN [1088], the received request based on the one or more policies relating
to the received request; the transceiver unit [302] to: transmit, from the PEEGN
[1088], to the UI [308], an acknowledgement indicative of receipt and validation of
the request; and transmit, from the PEEGN [1088], by an event routing manager
(ERM) [1070], the request to at least the network function for executing the request;
10 and a processing unit [306] to execute, at the PEEGN [1088], the request for
performing the operation on at least the network function based on the one or more
policies relating to the received request, wherein the operation comprises one of a
create operation, a read operation, an update operation and a delete operation.
15 [0123] As is evident from the above, the present disclosure provides a
technically advanced solution for performing one or more operations on one or
more network functions in a network. The present solution provides an async eventbased implementation to utilize the interface efficiently. In addition, the present
invention provides fault tolerance for any event failure. The interface provided by
20 the present disclosure works in a high availability mode and if one PEEGN instance
went down during request processing, then the next available instance takes care of
the request and the other incoming requests.
[0124] While considerable emphasis has been placed herein on the disclosed
25 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
30 and non-limiting.
35
We Claim:
1. A method [400] for performing one or more operations on one or more
network functions in a network, the method [400] comprising:
5 - receiving, by a transceiver unit [302] from a user interface (UI) [308],
at a policy execution engine (PEEGN) [1088], a request relating to
performing an operation on at least a network function;
- validating, by a validation unit [304] at the PEEGN [1088], the
received request based on one or more policies relating to the received
10 request;
- transmitting, by the transceiver unit [302] from the PEEGN [1088], to
the UI [308], an acknowledgement indicative of receipt and validation
of the request;
- transmitting, by the transceiver unit [302] from the PEEGN [1088],
15 by an event routing manager (ERM) [1070], the request to at least the
network function for executing the request; and
- executing, by a processing unit [306], at the PEEGN [1088], the
request to perform the operation on at least the network function,
based on the one or more policies relating to the request, wherein the
20 operation comprises at least one of a create operation, a read
operation, an update operation, and a delete operation.
2. The method [400] as claimed in claim 1, wherein at least the network
function comprises at least one of virtualized network functions (VNFs),
25 virtualized network function components (VNFCs), container network
functions (CNFs), and container network function components (CNFCs).
3. The method [400] as claimed in claim 1, wherein the one or more policies
comprise at least one of affinity policies, anti-affinity policies, dependent
30 policies, scaling policies, instantiation policies, restoration policies, healing
36
policies, Geographic Redundancy Disaster Recovery policies, Network
Service Chaining policies, and combinations thereof.
4. The method [400] as claim in claim 3, wherein,
5 when the one or more policies comprises affinity policies, the method
[400] comprises:
- allocating, by the processing unit [306] at the PEEGN [1088],
resources for execution of the request on a same network node
supporting at least the network function, and
10 when the one or more policies comprises anti-affinity policies, the
method [400] comprises:
- allocating, by the processing unit [306] at the PEEGN [1088],
resources for execution of the request on a network node different
from at least the network node supporting the network function.
15
5. The method [400] as claimed in claim 4, wherein the PEEGN [1088] is
configured to support any one or a combination of one or more container
network function components (CNFCs), and virtualized network function
components (VNFCs).
20
6. The method [400] as claimed in claim 5, wherein, in response to the PEEGN
[1088] being unable to support any one or a combination of the CNFCs and
the VNFCs for the received request, the method [400] comprises rejecting,
by the validation unit [304] at the PEEGN [1088], the received request.
25
7. The method [400] as claimed in claim 1, wherein, in response to validation
of the received request failing, the method [400] comprises rejecting, by the
processing unit [306] via the PEEGN [1088], the received request.
37
8. The method [400] as claimed in claim 1, wherein the network comprises at
least a first PEEGN [1088], and at least a second PEEGN [1088], and
wherein the method [400] comprises:
- detecting, by the processing unit [306], a failure of at least the first
5 PEEGN [1088]; and
- operating, by the processing unit [306], in response to failure of at
least the first PEEGN [1088], at least the second PEEGN [1088] to
replace at least the first PEEGN [1088].
10 9. The method [400] as claimed in claim 1, wherein the request is received in
hypertext transfer protocol (HTTP) format.
10. The method [400] as claimed in claim 1, wherein communication between
the PEEGN [1088] and the UI [308] occurs via a PE_UI interface.
15
11. A system [300] for performing one or more operation on one or more
network functions in a network, the system [300] comprising:
- a transceiver unit [302] configured to receive, from a user interface
(UI) [308], at a policy execution engine (PEEGN) [1088], a request
20 relating to performing an operation on at least a network function;
- a validation unit [304] connected at least to the transceiver unit [302],
the validation unit [304] configured to validate, at the PEEGN [1088],
the received request based on one or more policies relating to the
received request;
25 - the transceiver unit [302] configured to:
- transmit, from the PEEGN [1088], to the UI [308], an
acknowledgement indicative of receipt and validation of the
request; and
38
- transmit, from the PEEGN [1088], by an event routing manager
(ERM) [1070], the request to at least the network function for
executing the request; and
- a processing unit [306] connected at least to the transceiver unit [302],
5 the processing unit [306] configured to execute, at the PEEGN [1088],
the request to perform the operation on at least the network function,
based on the one or more policies relating to the request, wherein the
operation comprises at least one of a create operation, a read
operation, an update operation, and a delete operation.
10
12. The system [300] as claimed in claim 11, wherein at least the network
function comprises at least one of virtualized network functions (VNFs),
virtualized network function components (VNFCs), container network
functions (CNFs), and container network function components (CNFCs).
15
13. The system [300] as claimed in claim 11, wherein the one or more policies
comprise at least one of affinity policies, anti-affinity policies, dependent
policies, scaling policies, instantiation policies, restoration policies, healing
policies, Geographic Redundancy Disaster Recovery policies, Network
20 Service Chaining policies, and combinations thereof.
14. The system [300] as claim in claim 13, wherein,
when the one or more policies comprises affinity policies, the processing
unit [306] is configured to:
25 - allocate, via the PEEGN [1088], resources for execution of the
request on a same network node supporting at least the network
function, and
when the one or more policies comprises anti-affinity policies, the
processing unit [306] is configured to:
39
- allocate, via the PEEGN [1088], resources for execution of the
request on a network node different from at least the network node
supporting the network function.
5 15. The system [300] as claimed in claim 14, wherein the PEEGN [1088] is
configured to support any one or a combination of one or more container
network function components (CNFCs), and virtualized network function
components (VNFCs).
10 16. The system [300] as claimed in claim 15, wherein, in response to the
PEEGN [1088] being unable to support any one or a combination of the
CNFCs and the VNFCs for the received request, the validation unit [304] is
configured to reject, via the PEEGN [1088], the received request.
15 17. The system [300] as claimed in claim 11, wherein, in response to validation
of the received request failing, the processing unit [306] is configured to
reject, via the PEEGN [1088], the received request.
18. The system [300] as claimed in claim 11, wherein the network comprises at
20 least a first PEEGN [1088], and at least a second PEEGN [1088], and
wherein the processing unit [306] is configured to:
- detect a failure of at least the first PEEGN [1088]; and
- operate, in response to failure of at least the first PEEGN [1088], at
least the second PEEGN [1088] to replace at least the first PEEGN
25 [1088].
19. The system [300] as claimed in claim 11, wherein the request is received in
hypertext transfer protocol (HTTP) format.
40
20. The system [300] as claimed in claim 11, wherein communication between
the PEEGN [1088] and the UI [308] occurs via a PE_UI interface.

Documents

Application Documents

# Name Date
1 202321065368-STATEMENT OF UNDERTAKING (FORM 3) [28-09-2023(online)].pdf 2023-09-28
2 202321065368-PROVISIONAL SPECIFICATION [28-09-2023(online)].pdf 2023-09-28
3 202321065368-POWER OF AUTHORITY [28-09-2023(online)].pdf 2023-09-28
4 202321065368-FORM 1 [28-09-2023(online)].pdf 2023-09-28
5 202321065368-FIGURE OF ABSTRACT [28-09-2023(online)].pdf 2023-09-28
6 202321065368-DRAWINGS [28-09-2023(online)].pdf 2023-09-28
7 202321065368-Proof of Right [08-02-2024(online)].pdf 2024-02-08
8 202321065368-FORM-5 [27-09-2024(online)].pdf 2024-09-27
9 202321065368-ENDORSEMENT BY INVENTORS [27-09-2024(online)].pdf 2024-09-27
10 202321065368-DRAWING [27-09-2024(online)].pdf 2024-09-27
11 202321065368-CORRESPONDENCE-OTHERS [27-09-2024(online)].pdf 2024-09-27
12 202321065368-COMPLETE SPECIFICATION [27-09-2024(online)].pdf 2024-09-27
13 202321065368-FORM 3 [07-10-2024(online)].pdf 2024-10-07
14 202321065368-Request Letter-Correspondence [11-10-2024(online)].pdf 2024-10-11
15 202321065368-Power of Attorney [11-10-2024(online)].pdf 2024-10-11
16 202321065368-Form 1 (Submitted on date of filing) [11-10-2024(online)].pdf 2024-10-11
17 202321065368-Covering Letter [11-10-2024(online)].pdf 2024-10-11
18 202321065368-CERTIFIED COPIES TRANSMISSION TO IB [11-10-2024(online)].pdf 2024-10-11
19 Abstract.jpg 2024-11-09
20 202321065368-ORIGINAL UR 6(1A) FORM 1 & 26-090125.pdf 2025-01-14