The present invention relates to an apparatus, a method, and a computer program product related to instantiation of network services and/or virtualized network functions. More particularly, the present invention relates to an apparatus, a method, and a computer program product related to security aware instantiation of network services and/or virtualized network functions.
Abbreviations
3GPP 3rd Generation Partnership Project
COTS Commercially of the shelf
ETSI European Telecommunications Standards Institute
GS Group Specification
KPI Key Performance Indicator
LTE Long Term Evolution
LTE-A LTE Advanced
MANO Management and Orchestration
NF Network Function
NFV Network Functions Virtualisation
NFVI Network Functions Virtualisation Infrastructure
NS Network Service
NSD Network Service Descriptor
PNF Physical Network Function
PoP Point of Presence
QoS Quality of Service
SDN Software-defined Networking
SLA Service Level Agreement
VL Virtual Link
VNF Virtualised Network Function
VNFC Virtualised Network Function Component
VNFD Virtualised Network Function Descriptor
Glossary
If not otherwise explained in the present description, the terms used herein have a meaning as according to ETSI GS NFV 003 V1.2.1 (2014-12): “Network Functions Virtualisation (NFV); Terminology for Main Concepts in NFV”. For self-containment, the relevant definitions are repeated:
Network Function (NF): functional block within a network infrastructure that has well-defined external interfaces and well-defined functional behaviour.
Network Functions Virtualisation (NFV): principle of separating network functions from the hardware they run on by using virtual hardware abstraction.
Network Functions Virtualisation Infrastructure (NFVI): totality of all hardware and software components that build up the environment in which VNFs are deployed. For example, this includes storage & network infrastructure and hypervisor.
Network Functions Virtualisation Infrastructure (NFVI) components: NFVI hardware resources that are not field replaceable, but are distinguishable as COTS components at manufacturing time
Network service: composition of Network Functions and defined by its functional and behavioral specification
Network service descriptor: template that describes the deployment of a Network Service including service topology (constituent VNFs and the relationships between them, Virtual Links, VNF Forwarding Graphs) as well as Network Service characteristics such as SLAs and any other artefacts necessary for the Network Service on-boarding and lifecycle management of its instances This includes service chaining represented by the VNF forwarding graph.
Physical Network Function (PNF): implementation of a NF via a tightly coupled software and hardware system
Virtual link: set of connection points along with the connectivity relationship between them and any associated target performance metrics (e.g. bandwidth, latency, QoS)
Virtualized Network Function (VNF): implementation of an NF that can be deployed on one or more Network Function Virtualization Infrastructure (NFVI) PoPs.
Virtualized Network Function Instance (VNF Instance): run-time instantiation of the VNF software, resulting from completing the instantiation of its components and of the connectivity between them, using the VNF deployment and operational information captured in the VNFD, as well as additional run-time instance-specific information and constraints
Virtualised Network Function Descriptor (VNFD): configuration template that describes a VNF in terms of its deployment and operational behaviour, and is used in the process of VNF on-boarding and managing the lifecycle of a VNF instance.
Throughout the present application, if not otherwise indicated or made clear from the context, the terms “network function” and “network service” are used synonymously, i.e. a network function may be considered as a network service consisting of only this one network function.
However, in general, the terms “network function” and “network service” are not synonymous. Namely, a network service may consist of many network functions. As previously discussed, a network service may be a composition of Network Functions and is defined by its functional and behavioral specification. Furthermore—a Network service descriptor is a template that describes the deployment of a Network Service including service topology (constituent VNFs and the relationships between them, Virtual Links, VNF Forwarding Graphs) as well as Network Service characteristics such as SLAs and any other artifacts necessary for the Network Service on-boarding and lifecycle management of its instances. This includes service chaining represented by the VNF forwarding graph.
Throughout the present application, the terms “higher level function” and “lower level function” are used. For example, the higher level function may be a network service or a virtual network function and the lower level function may be a network function on which the network service or network function is implemented. As another example, the higher level function may be a network service and the lower level function may be a virtual network function on which the network service or network function is implemented. As another example, the higher level function may be a virtual network function and the lower level function may be a networks functions virtualization infrastructure on which the virtual network function is implemented.
A “capability” describes a property of a “lower level function” to provide a particular function to one or more “higher level functions”.
In the MANO security framework progress is being made on defining the mechanisms which enable instantiation of different instances of virtualized network functions as a function of resource requirements.
Traditionally network functions were run inside the operator's network, and provided a consistent level of security, e.g. over time.
Patent Application No.: PCT/US2015/028533 (Filing date: Apr. 30, 2015) describes mechanisms for using a per subscriber security estimate to route users traffic, e.g. determining which users should be allocated to which of two different virtualized network function instances, based on the security requirement of that user, where the two different instantiations were created to have two different types of security.
It is an object of the present invention to improve the prior art.
According to a first aspect of the invention, there is provided an apparatus, comprising comparing means adapted to compare a security requirement for a higher level function with respective security levels of one or more virtualized lower level functions, wherein each of the one or more virtualized lower level functions is capable to deploy the higher level function; selecting means adapted to select a selected virtualized lower level function of the one or more virtualized lower level functions, wherein the security level of the selected virtualized lower level function is equal to or higher than the security requirement; instantiating means adapted to instantiate the higher level function on the selected virtualized lower level function.
The higher level function may be a network service or a network function and the lower level function may be a virtual network function, and/or the higher level function may be a virtual network function and the lower level function may be a networks functions virtualization infrastructure.
The selecting means may be additionally adapted to take into account, for selecting the selected lower level function, at least one of a future security requirement for the higher level function, a scalability of the higher level function deployed on the selected lower level function, costs to deploy the higher level function on the selected lower level function, and a performance of the higher level function deployed on the selected lower level function.
The security requirement and each of the security levels may be expressed by a respective numerical value; the comparing means may be adapted to compare the numerical value of the security requirement with the respective numerical value of each of the one or more lower level functions; the selecting means may be adapted to select the selected lower level function if the numerical value of the security requirement and the numerical value of the security level of the selected lower level function fulfill a predetermined relationship.
The security requirement may comprise plural security sub-requirements and each of the security levels may comprise corresponding plural security sub-levels; the comparing means may be adapted to compare one or more of the plural security sub-requirements with the corresponding security sub-level of each of the virtualized lower level functions; the selecting means may be adapted to select the selected virtualized lower level function if each of the compared security sub-levels of the selected virtualized lower level function is equal to or higher than the corresponding security sub-requirement.
The security requirement may comprise plural sub-requirements and each of the security levels comprises corresponding plural security sub-levels; and the apparatus may comprise determining means adapted to determine a global security requirement based on one or more of the plural security sub-requirements and to determine a respective global security level for each of the lower level functions based on the corresponding one or more of the security sub-levels; wherein the comparing means may be adapted to compare the global security requirement with the respective global security levels; the selecting means may be adapted to select the selected virtualized lower level function if the global security level of the selected virtualized lower level function is equal to or higher than the global security requirement.
The apparatus may further comprise control means adapted to control the comparing means, the selecting means, and the instantiating means such that, in a first step, the higher level function is a network service or a network function, the virtualized lower level functions are virtualized network functions, and the selected virtualized lower level function is one of the virtualized network functions, and, in a second step following the first step, the higher level function is the selected virtualized network function, the virtualized lower level functions are network functions virtualization infrastructures, and the selected virtualized lower level function is one of the network functions virtualization infrastructures.
The apparatus may further comprise determining means adapted to determine at least one of the security levels based on at least one of an attribute, a location, a vendor, a virtualization type, and other tenants of the respective virtualized lower level function.
According to a second aspect of the invention, there is provided an apparatus, comprising comparing circuitry configured to compare a security requirement for a higher level function with respective security levels of one or more virtualized lower level functions, wherein each of the one or more virtualized lower level functions is capable to deploy the higher level function; selecting circuitry configured to select a selected virtualized lower level function of the one or more virtualized lower level functions, wherein the security level of the selected virtualized lower level function is equal to or higher than the security requirement; instantiating circuitry configured to instantiate the higher level function on the selected virtualized lower level function.
The higher level function may be a network service or a network function and the lower level function may be a virtual network function, and/or the higher level function may be a virtual network function and the lower level function may be a networks functions virtualization infrastructure.
The selecting circuitry may be additionally configured to take into account, for selecting the selected lower level function, at least one of a future security requirement for the higher level function, a scalability of the higher level function deployed on the selected lower level function, costs to deploy the higher level function on the selected lower level function, and a performance of the higher level function deployed on the selected lower level function.
The security requirement and each of the security levels may be expressed by a respective numerical value; the comparing circuitry may be configured to compare the numerical value of the security requirement with the respective numerical value of each of the one or more lower level functions; the selecting circuitry may be configured to select the selected lower level function if the numerical value of the security requirement and the numerical value of the security level of the selected lower level function fulfill a predetermined relationship.
The security requirement may comprise plural security sub-requirements and each of the security levels may comprise corresponding plural security sub-levels; the comparing circuitry may be configured to compare one or more of the plural security sub-requirements with the corresponding security sub-level of each of the virtualized lower level functions; the selecting circuitry may be configured to select the selected virtualized lower level function if each of the compared security sub-levels of the selected virtualized lower level function is equal to or higher than the corresponding security sub-requirement.
The security requirement may comprise plural sub-requirements and each of the security levels comprises corresponding plural security sub-levels; and the apparatus may comprise determining circuitry configured to determine a global security requirement based on one or more of the plural security sub-requirements and to determine a respective global security level for each of the lower level functions based on the corresponding one or more of the security sub-levels; wherein the comparing circuitry may be configured to compare the global security requirement with the respective global security levels; the selecting circuitry may be configured to select the selected virtualized lower level function if the global security level of the selected virtualized lower level function is equal to or higher than the global security requirement.
The apparatus may further comprise control circuitry configured to control the comparing circuitry, the selecting circuitry, and the instantiating circuitry such that, in a first step, the higher level function is a network service or a network function, the virtualized lower level functions are virtualized network functions, and the selected virtualized lower level function is one of the virtualized network functions, and, in a second step following the first step, the higher level function is the selected virtualized network function, the virtualized lower level functions are network functions virtualization infrastructures, and the selected virtualized lower level function is one of the network functions virtualization infrastructures.
The apparatus may further comprise determining circuitry configured to determine at least one of the security levels based on at least one of an attribute, a location, a vendor, a virtualization type, and other tenants of the respective virtualized lower level function.
According to a third aspect of the invention, there is provided a method, comprising comparing a security requirement for a higher level function with respective security levels of one or more virtualized lower level functions, wherein each of the one or more virtualized lower level functions is capable to deploy the higher level function; selecting a selected virtualized lower level function of the one or more virtualized lower level functions, wherein the security level of the selected virtualized lower level function is equal to or higher than the security requirement; instantiating the higher level function on the selected virtualized lower level function.
The higher level function may be a network service or a network function and the lower level function may be a virtual network function, and/or the higher level function may be a virtual network function and the lower level function may be a networks functions virtualization infrastructure.
The selecting may take additionally into account, for selecting the selected lower level function, at least one of a future security requirement for the higher level function, a scalability of the higher level function deployed on the selected lower level function, costs to deploy the higher level function on the selected lower level function, and a performance of the higher level function deployed on the selected lower level function.
The security requirement and each of the security levels may be expressed by a respective numerical value; the numerical value of the security requirement may be compared with the respective numerical value of each of the one or more lower level functions; the selected lower level function may be selected if the numerical value of the security requirement and the numerical value of the security level of the selected lower level function fulfill a predetermined relationship.
The security requirement may comprise plural security sub-requirements and each of the security levels may comprise corresponding plural security sub-levels; one or more of the plural security sub-requirements may be compared with the corresponding security sub-level of each of the virtualized lower level functions; the selected virtualized lower level function may be selected if each of the compared security sub-levels of the selected virtualized lower level function is equal to or higher than the corresponding security sub-requirement.
The security requirement may comprise plural sub-requirements and each of the security levels may comprise corresponding plural security sub-levels; and the method may comprise determining a global security requirement based on one or more of the plural security sub- requirements and to determine a respective global security level for each of the lower level functions based on the corresponding one or more of the security sub-levels; wherein the global security requirement may be compared with the respective global security levels; the selected virtualized lower level function may be selected if the global security level of the selected virtualized lower level function is equal to or higher than the global security requirement.
The method may further comprise controlling the comparing of the security requirement with the respective security levels, the selecting of the selected virtualized lower level function, and the instantiating of the higher level function such that, in a first step, the higher level function is a network service or a network function, the virtualized lower level functions are virtualized network functions, and the selected virtualized lower level function is one of the virtualized network functions, and, in a second step following the first step, the higher level function is the selected virtualized network function, the virtualized lower level functions are network functions virtualization infrastructures, and the selected virtualized lower level function is one of the network functions virtualization infrastructures.
The method may further comprise determining at least one of the security levels based on at least one of an attribute, a location, a vendor, a virtualization type, and other tenants of the respective virtualized lower level function.
The method may be a method of instantiation.
According to a fourth aspect of the invention, there is provided a computer program product comprising a set of instructions which, when executed on an apparatus, is configured to cause the apparatus to carry out the method according to the third aspect. The computer program product may be embodied as a computer-readable medium or directly loadable into a computer.
According to some example embodiments of the invention, at least one of the following technical effects is provided:
It is to be understood that any of the above modifications can be applied singly or in combination to the respective aspects to which they refer, unless they are explicitly stated as excluding alternatives.
Further details, features, objects, and advantages are apparent from the following detailed description of example embodiments of the present invention which is to be taken in conjunction with the appended drawings, wherein
Herein below, certain example embodiments of the present invention are described in detail with reference to the accompanying drawings, wherein the features of the example embodiments can be freely combined with each other unless otherwise described. However, it is to be expressly understood that the description of certain embodiments is given by way of example only, and that it is by no way intended to be understood as limiting the invention to the disclosed details.
Moreover, it is to be understood that the apparatus is configured to perform the corresponding method, although in some cases only the apparatus or only the method are described.
In the MANO security framework, 3GPP standard instantiation process in response to security needs is not considered. For example, in section 7.1 (for NS) and 7.2 (for VNF) of gs_NFV-MAN001v010101p—Management and Orchestration a security treatment across/within the subsections is lacking.
Different network operators have different security needs. Additionally, the operator's security needs may change over time. There are numerous different capabilities which can be used to meet the requirements of the operator's network service. There is a need for enabling the operator's instantiation of a network service which meets the operator's security requirement, while managing the way in which that security requirement matches the possible capabilities for satisfying those requirements, and the operator's need to provide the best performing solution while considering other factors such as the anticipated future security requirements.
Some embodiments of the invention bring the network service security requirements and the available capabilities “together” while instantiating a NS and/or VNF using the MANO framework.
In contrast to PCT/US2015/028533, some embodiments of the invention are related to the instantiation process. For example, there may be only a single instantiation or plural instantiations. Some embodiments of the invention may include steps such as taking the NS's security requirements, and then using them to identify a set of NVF capabilities which meet the NS's security requirements. This may lead to a selection and creation of a VNF instantiation which meets the NS security requirements.
Some embodiments of the invention are related to creating an instantiation, and/or some embodiments of the invention are related to updating an instantiation.
Some embodiments of the invention provide standards enablers for using security, to impact/trigger the instantiation (and scaling and termination) of NS (network service) and VNF (virtual network function). As mentioned, previous standards work focused on instantiation, scaling, and termination of virtual network function instances based on resource requirements.
Some embodiments cover the process of matching the security requirements of the NS with the security capabilities available in the VNF, so that the resource allocation is optimized. In addition, anticipated future security requirements, cost, performance, scalability, etc. may be considered when selecting among the capabilities meeting the security NS constraints.
Instead of the security requirements of the NS, in some embodiments of the invention, those of a VNF maybe matched with the security capabilities of the NFVI.
Since the mechanisms are substantially the same, in the former case, the NS may be considered as a higher level function and the VNF as a virtualized lower level function.
Correspondingly, in the latter case, the VNF may be considered as a higher level function and the NFVI as a virtualized lower level function. In these terms, in some embodiments of the invention, the security requirements of the higher level function are matched with the security capabilities available in the virtualized lower level function.
In the following, some embodiments of the invention are described, where NS is the higher level function. The following steps may be performed:
NS security requirements used to select its (next level) capabilities
Correspondingly to the NS security requirements, VNF security requirements may be fulfilled. In this case, the following steps may be performed, which largely correspond to the steps described for NS security requirements:
VNF Requirements Used to Select its Capabilities
According to some embodiments of the invention, new fields are added to one or both of the network service descriptor (NSD) and the VNF descriptor (VNFD) covering the security requirement for the network service and virtual network function respectively. According to gs_NFV-MONO01v010101p—Management and Orchestration, the Network Service Descriptor (NSD) consists of static information elements as defined below. It is used by the NFV Orchestrator to instantiate a Network Service, which would be formed by one or more VNF Forwarding Graphs, VNFs, PNFs and VLs. The NSD also describes deployment flavours of Network Service.
An example of an updated definition (only the new element is shown) of nsd base element and vnfd base information elements are shown in Tables 1 and 2, respectively.
In other words, some embodiments of the invention may be described as according to the following clauses 1 to 12:
The apparatus comprises comparing means 10, selecting means 20, and instantiating means 30. The comparing means 10, selecting means 20, and instantiating means 30 may be a comparing circuitry, selecting circuitry, and instantiating circuitry, respectively.
The comparing means 10 compares a security requirement for a higher level function with respective security levels of one or more virtualized lower level functions (S10). Each of the one or more virtualized lower level functions is capable to deploy the higher level function. As described above, the higher level function may a network service or a network function and the lower level function may be a virtual network function, and/or the higher level function may be a virtual network function and the lower level function may be a networks functions virtualization infrastructure.
The selecting means 20 selects a selected virtualized lower level function of the one or more virtualized lower level functions (S20). The security level of the selected virtualized lower level function is equal to or higher than the security requirement for the higher level function. In other words, the security level of the selected virtualized lower level function at least matches the security requirement of the higher level function.
The instantiating means 30 instantiates the higher level function on the selected virtualized lower level function (S30).
In some embodiments of the invention described herein, the capabilities (virtualized lower level functions) are selected first, which fulfill the security requirements of the higher level function. Then, other requirements such as costs and performance are considered to finally select the capabilities on which the higher level function is instantiated.
According to some embodiments of the invention, one or more of the other requirements are considered first, and, thus, a subset of virtualized lower level functions is selected. Then, the selection of the virtualized lower level function in view of the security requirement is based on the subset.
In some embodiments of the invention, security and some other selection criteria may be considered simultaneously. In these cases, the selection may be made based on a metric which combines the security requirements with the other requirements.
One piece of information may be transmitted in one or plural messages from one entity to another entity. Each of these messages may comprise further (different) pieces of information.
Names of network elements, protocols, and methods are based on current standards. In other versions or other technologies, the names of these network elements and/or protocols and/or methods may be different, as long as they provide a corresponding functionality.
If not otherwise stated or otherwise made clear from the context, the statement that two entities are different means that they perform different functions. It does not necessarily mean that they are based on different hardware. That is, each of the entities described in the present description may be based on a different hardware, or some or all of the entities may be based on the same hardware. It does not necessarily mean that they are based on different software. That is, each of the entities described in the present description may be based on different software, or some or all of the entities may be based on the same software.
Some example embodiments of the invention may be applied to a 3GPP network (e.g. LTE, LTE-A, or a 5G network), as described herein. However, some example embodiments of the invention may be applied to any kind of network wherein a network function or a network service is virtualized.
According to the above description, it should thus be apparent that example embodiments of the present invention provide, for example an orchestrator, or a component thereof, an apparatus embodying the same, a method for controlling and/or operating the same, and computer program(s) controlling and/or operating the same as well as mediums carrying such computer program(s) and forming computer program product(s).
Implementations of any of the above described blocks, apparatuses, systems, techniques, means, entities, units, devices, or methods include, as non-limiting examples, implementations as hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, a virtual machine, or some combination thereof.
It should be noted that the description of the embodiments is given by way of example only and that various modifications may be made without departing from the scope of the invention as defined by the appended claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2015/040587 | 7/15/2015 | WO | 00 |