The invention is in the field of virtualized telecommunication networks and more specifically relates to a method for optimizing the quantity of network resources and the number of services likely to use said resources.
The invention also relates to a computer program stored on a recording medium and containing instructions for implementing the method when run on a computer.
Over the last decade, the technological revolution that characterizes mobile telephone networks has changed the way we communicate and led to new applications and services, which will characterize the communication systems fifth generation (5G) and subsequent developments.
These new applications and services are gathered into three case of use classes, each characterized by specific requirements and Key Performance Indicators (KPIs):
In addition to designing the access and core functions, one of the most difficult tasks is to transition from a fixed-capacity OSS (Operating Support System) and BSS (Business Support System) system to a new hierarchy of elements that have to deal with a very complex ecosystem, both from the point of view of network users, network slices, and services that generally have different throughput and QoS requirements.
In addition to management, future 5G and subsequent networks will require orchestration capabilities, which are divided into two main categories, service orchestration and resource orchestration. Tasks such as sharing a VNF between network slices, their location in a highly heterogeneous cloud infrastructure or the number of allocated core processors are just a few examples of the responsibilities of the M&O, Management and Orchestration, function.
Functions related to the lifecycle management of virtual network functions VNFs and the orchestration of their resources go beyond the responsibility of the 3GPP group. The standardization body in charge of defining these functions is the European Telecommunications Standards Institute (ETSI), more precisely the Network Function Standardization Group (NFV) [ETSIGR].
According to the 3GPP group, a network slice is a logic network that extends over the Radio access network RAN and the core network CN. To manage each domain, the 3GPP group suggests to break down a slice into RAN and CN slice subnets and defines the Network Slice Management Function (NSMF) and the Network Slice Subnet Management Function (NSSMF). The NSMF is the entity responsible for managing a slice across multiple domains and the NSSMF is the entity responsible for managing slice subnets in a specific domain [3GPPTS28.531]. A slice subnet comprises radio and core network functionalities configured to provide particular behaviour and meet specific requirements. To create and manage a slice, the NSMF (and NSSMFs) use a set of predefined descriptors or a template. Each descriptor, called Network Slice Template (NST), provides a description of the functionalities and their specific configuration (for example, operating frequency bands). In particular, it describes the list of NFV components that have to be instantiated to configure a network slice instance, as well as other information, such as configurations, life cycle steps, actions, monitoring, rules, service level agreements, etc.
However, these standardization frameworks only define guidelines on architectural aspects (interfaces and requirements) and design principles without providing specific solutions for the configuration and management of network slices, such as the allocation of the necessary resources by the VNF, priority or quality of service management. Consequently, it is necessary to create new schemes and frameworks capable of managing network resources related to radio, transport and cloud domains. In addition, it is necessary to take into account the fact that different slice requests may have different priorities and requirements and therefore the network resources have to be managed to ensure cross resource orchestration and management.
The purpose of the invention is to optimize the management and orchestration of networks by avoiding both under-provisioning and over-dimensioning of resources, which are the main causes of service outages and excessive expenses respectively for mobile communication service providers.
The invention is implemented by means of a cellular network management and orchestration system configured to receive service instantiation requests and to decide which network slices can be instantiated/accepted to implement these services according to their types/priorities, resource needs, the presence of other simultaneous requests and available network capacities (which depend on the network slices already instantiated).
The objective of the invention is therefore to increase the efficiency of the network, i.e. to increase the number of services instantiated using a given set of network resources, or equivalently, to limit the quantity of resources required to meet the requirements of a given set of services. This objective is achieved by means of a method for optimizing the quantity of network resources and the number of services likely to use said resources in a telecommunications network, comprising the following steps of:
By identifying and gathering services with common needs into network slices, instead of creating a new slice for each requested service, the method according to the invention makes it possible to reduce the resources consumed globally so as to use, if necessary, a single slice to support services thus identified. In this way, the method according to the invention also makes it possible to reduce the time required to instantiate a new network service.
According to the invention, each service is instantiated in a logic network slice (NSI) comprising at least two sets of virtual network functions, i.e. a set of network functions KR which correspond to the radio access network RAN and a set of network functions KC which correspond to the core network.
The method according to the invention further comprises the steps of:
In addition, for each service awaiting instantiation, n∈={0,1, . . . , N}, where N is an integer N≥0, is defined a subset Dn of the set =R∪C={NF1, . . . , NFK} containing the network functions required for its instantiation and a set of configuration parameters n,k for each network function, and, to indicate the network functions that make up the nth request Dn, the vector λn∈{0,1}K is defined, whose k-th input is defined by:
Then, for each network function NFk belonging to Dn, the configuration parameters associated therewith are represented as a set of J binary vectors as follows:
n,k={ln,k,1,ln,k,2, . . . ,ln,k,J}.
Then the configuration parameters are mapped with a parameter dn,k,r representing the quantity of communication resources, a parameter dn,k,c representing the computing resources of the calculation, and a parameter dn,k,m representing the cloud storage capacity required by the network function NFk of the n-th service instantiation request using a template consisting of a static and a dynamic part:
dn,k,r=ρk+fk,r(n,k),
dn,k,c=χkfk,c(n,k),
dn,k,m+μk+fk,m(n,k),
where ρk, χk and μk represent the minimum quantity of resources required to activate a given network function NFk ∈Dn, and fk,r(n,k), fk,c (n,k) and fk,m(n,k) representing the additional quantity of resources required, which depends on the configuration parameters n,k, of the network function NFk,
and the total request for communication resources, computing resources and cloud storage resources for said n-th request is calculated by the following formula:
Tn=(dn,r,dn,c,dn,m),
where dn,r=dn,k,r, dn,c=dn,k,c and dn,m=dn,k,m).
Evaluation of similarities between the network functions required by a network slice awaiting instantiation and those of the set of NSIs already instantiated is obtained by calculating a Jaccard similarity parameter by the following formula:
where λi indicates the network functions that make up the NSI i∈ already instantiated, and ∥⋅∥ representing a Euclidean norm operator.
If none of the NSIs already instantiated is adapted to the service awaiting instantiation, a new NSI is defined.
On the basis of the similarities calculated, the already instantiated NSI i*∈ is selected, which shares the largest number of network functions VNFs with the network service awaiting instantiation n:
Then, n is temporarily added to the list of services related to NSI i*.
According to the invention, for each pair of network services n, n′∈Ri*,k, where Ri*,k represents all the services included in the NSI i*∈ which require the network function NFk ∈n,the similarity between a first set of configuration parameters n,k and a second set of configuration parameters n′,k is defined as follows:
where J is the number of parameters of the network function NFk, and h(⋅) is the cosine similarity function (or cosine metric) which allows calculation of the similarity between two N-dimensional vectors by determining the cosine of the angle between them:
And, for each network function NFk ∈n of the service n, the quantity of resources that can be pooled between the different network services instantiated in the NSI i* and the new service n through the parameter σ*n,k,j is evaluated as follows:
where the index j represents either communication resources, computing resources or storage resources.
According to another characteristic of the invention, the resources required to instantiate each function of the service n are calculated via the NSI i* using a template consisting of a static and a dynamic part:
d′n,k,r=ρkβ(σ*n,k,j)+(1−σ*n,k,j)fk,r(n,k),
d′n,k,c=χkβ(σ*n,k,j)+(1−σ*n,k,j)fk,c(n,k),
d′n,k,m=μkβ(σ*n,k,j)+(1−σ*n,k,j)fk,m(n,k),
where β(x) is the characteristic function, which is equal to 1 if x=0 and is equal to 0 if x≠0 and, the total request for communication resources, computing resources and cloud storage resources for said nth service instantiation request is calculated as follows:
T′n=(d′n,r,d′n,c,d′n,m),
where d′n,r=d′n,k,r, d′n,c=d′n,k,c and d′n,m=d′n,k,m.
In one embodiment of the invention, the services previously instantiated in the set of NSIs are periodically re-classified using a normalized spectral classification algorithm, the services being represented as nodes of a connected graph and clusters are found by partitioning this graph according to their spectral decomposition into sub-graphs.
In addition, the set ={1, NR) of services already instantiated with NF requests {λ1, . . . , AN
Where Δn,n′, is calculated by
Then from are deduced the corresponding diagonal matrix S whose element (n, n) is the sum of the n-th row of A, sn,n=Δn,n′ and the associated normalized Laplacian matrix as:
Then the normalized eigenvectors of are calculated and the first k eigenvectors are gathered using K-means, the number of clusters k is obtained such that all eigenvalues (1, . . . , k) are very small, but the (k+1)-th is relatively large.
According to the invention, requests for the instantiation of new network services are ordered as a function of:
Further characteristics and advantages of the invention will appear from the following description, taken as a non-limiting example, with reference to the appended figures in which:
The method according to the invention will be described within the scope of a cellular network management and orchestration system configured to receive service instantiation requests and to decide to accept or refuse these services according to their types/priorities, resource requirements, the presence of other simultaneous requests and available network capacities (which depend on the network slices already instantiated).
For the sake of clarity, in the following description, the instantiation of a network slice will mean the instantiation of the applications and services likely to be provided in that slice.
It should be remembered that each service is instantiated in a logic network slice comprising at least two sets of virtual network functions (VNF), i.e. a set of network functions KR which correspond to the radio access network RAN and a set of network functions KC corresponding to the core network.
The implementation of the method according to the invention will be described in reference to
The set of NSIs instantiated is then defined, and, for each element of this set i∈, the subset of the set containing the network functions VNFs instantiated for the NSI i. As for each network service, for each NSI i∈, the vector λi is defined to indicate the available network functions VNFs.
A Jaccard similarity parameter is then calculated in step 6 to perform evaluation of the similarities between the network functions required by a service awaiting instantiation. n with those of all NSIs already instantiated.
The Jaccard similarity parameter is defined by the following formula:
In step 8, it is checked whether there is i∈, such that Λi,n>0.
If yes, on the basis of the similarities calculated, in step 10, the NSI already instantiated i*∈ which shares the largest number of network functions VNFs with the network service awaiting instantiation n is selected:
After temporarily adding n to the list of services associated with NSI i*∈, for each pair of services n, n′ belonging to Ri*,k where Ri*,k represents the set of services included in the NSI i*which require the network function N Fk ∈n, in step 12, the similarity between the configuration parameters of the two services n,k and n′, k is defined as follows:
where J is the number of parameters of the network function NFk.
In step 14, the resources needed to be able to instantiate the service n through the selected NSI i* are determined, and in step 16 it is evaluated whether the resource request associated with this new service n can be accepted.
If there is no i∈ such that Λi,n>0, i.e. if none of the NSIs of shares network functions with the network service awaiting instantiation n, in step 18, a new NSI is defined and its request for resources is calculated, and then the admission control process is started to determine whether the service can be instantiated (step 16).
In one particular embodiment of the invention illustrated in
To this end, the set ={1, NR) of services already instantiated with requests NF {λ1, . . . , λN
where Λn,n′ is calculated by
Then in step 22, from are deduced the corresponding diagonal matrix S the element (n, n) of which is the sum of the n-th row of A, sn,n=Λn,n′ and the associated normalized Laplacian matrix as:
Then, in step 24, the normalized eigenvectors of are calculated and the first k eigenvectors are gathered using K-means, the number of clusters k is obtained such that all the eigenvalues (1, . . . , k) are very small, but the (k+1)-th one is relatively large. Other similarity calculation techniques can be alternatively used as described in the papers entitled “Content caching clustering based on piecewise interest similarity,” in Proc. IEEE GLOBECOM, December 2017, pp. 1-6 and “Cache-aided coded multicast for correlated sources,” in Proc. of 9th International Symposium on Turbo Codes and Iterative Information Processing (ISTC), September 2016, pp. 360-364.
Preferably, requests for the instantiation of new network services are ordered according to their waiting time in a queue, and then, based on the oldest one, the NSI capable of instantiating this service and the associated quantity of network resources are determined, and then requests that can be fulfilled according to their request for resources are admitted.
In addition, requests for instantiation of new network services are ranked in relation to the average quantity of resources requested, and then checked to see which requests can be met, starting with the request characterized by the lowest request for network resources.
In one first alternative implementation, in the admission control step for accepting or rejecting requests for instantiation of new services, requests are classified into M classes, each characterized by a gain related to the instantiation acceptance rm and an instantiation rejection cost Im, m E M. In addition, each network service request is stored in a queue with a size Qm dedicated to its class. A new service request is deleted when the corresponding queue is full. The management and orchestration systems perceive a gain related to instantiation acceptance rn, when a request for a slice of the class m is accepted and an instantiation refusal cost Im when the request is deleted from its queue. Therefore, at time t, the action am(t) of the admission controller can be evaluated through a reward function as follows:
where dm (t) indicates the number of requests for service of the class m abandoned at time t, which can be calculated as follows:
dm(t)=max{sm(t)−am(t)+nm(t)−Qm,0},
where sm (t) and nm (t) indicate respectively the number of requests for slice of the mth class in the queue and the additional slice requests received at time t.
A first solution is to maximize R (t) at each time interval t.
A second approach is to maximize a long-term reward function as follows:
where 0<γ<1 is a parameter called a reduction factor, which determines the importance of actions at each time interval on the long-term evaluation function.
Reinforcement learning can be used to optimize the function
In a second alternative of the admission control step for accepting or rejecting requests for instantiation of new services, as in the first alternative, service requests are classified into M classes, each characterized by a gain related to the instantiation acceptance rm and potentially an instantiation refusal cost Im, m∈M. Then, a controller momentarily reduces the quantity of resources for some of the services already instantiated, to potentially increase the number of services that can be accepted at a given slot. For example, the controller reduces the resources allocated to lower priority services in order to instantiate higher priority services. This limits the number of abandoned requests for low priority services. As a result, a smart controller can maximize a reward that takes into account the cost of reducing the resources allocated to services instantiated with low priority. In this case, the action am(t) of the admission controller can be evaluated as follows:
where ncc,m(t) is the quantity of resources reduced to the service m∈M and Icc,m is the cost associated with this action. As in the previous embodiment, it is possible to simply maximize R(t) at each time slice. On the other hand, reinforcement learning algorithms could be used to optimize the long-term instantiation acceptance
Number | Date | Country | Kind |
---|---|---|---|
19 11263 | Oct 2019 | FR | national |
Number | Name | Date | Kind |
---|---|---|---|
20170141973 | Vrzic | May 2017 | A1 |
20170142591 | Vrzic | May 2017 | A1 |
20180317133 | Sciancalepore | Nov 2018 | A1 |
20180317134 | Leroux et al. | Nov 2018 | A1 |
20180332485 | Senarath | Nov 2018 | A1 |
20190123963 | Tang | Apr 2019 | A1 |
20190174320 | Kodaypak et al. | Jun 2019 | A1 |
20190364431 | Kodaypak et al. | Nov 2019 | A1 |
20200379793 | Parihar | Dec 2020 | A1 |
20200412612 | Cherunni | Dec 2020 | A1 |
Number | Date | Country |
---|---|---|
2018-207190 | Dec 2018 | JP |
Entry |
---|
French Preliminary Search Report dated Jun. 8, 2020 in French Application 19 11263 filed on Oct. 10, 2019 (with English Translation of Categories of Cited Documents), citing documents AA-AE & AO therein, 3 pages. |
U.S. Appl. No. 16/681,973, filed Nov. 13, 2019, 2020/0162930 A1, Miscopein, B, et al. |
Number | Date | Country | |
---|---|---|---|
20210153069 A1 | May 2021 | US |