5.1.3. TOSCA VNF Descriptor
5.1.3.1. General
Requirement: R-35854
|
The VNF Descriptor (VNFD) provided by VNF vendor MUST comply with TOSCA/YAML based Service template for VNF descriptor specified in ETSI NFV-SOL001. Note: As the ETSI NFV-SOL001 is work in progress the below tables summarizes the TOSCA definitions agreed to be part of current version of NFV profile and that VNFD MUST comply with in ONAP Release 2+ Requirements. |
Requirement: R-65486
|
The VNFD MUST comply with ETSI GS NFV-SOL001 specification endorsing the above mentioned NFV Profile and maintaining the gaps with the requirements specified in ETSI GS NFV-IFA011 standard. |
Requirement: R-17852
|
The VNFD MAY include TOSCA/YAML definitions that are not part of NFV Profile. If provided, these definitions MUST comply with TOSCA Simple Profile in YAML v.1.2. |
Requirement: R-46527
|
A VNFD is a deployment template which describes a VNF in terms of deployment and operational behavior requirements. It contains virtualized resources (nodes) requirements as well as connectivity and interfaces requirements and MUST comply with info elements specified in ETSI GS NFV-IFA 011. The main parts of the VNFD are the following:
Note: The deployment aspects (deployment flavour etc.) are postponed for future ONAP releases.
|
Requirement: R-15837
|
The following table defines the major TOSCA Types specified in ETSI NFV-SOL001 standard draft. The VNFD provided by a VNF vendor MUST comply with the below definitions: |
Info Element From ETSI GS NFV-IFA 011 |
Implementation in TOSCA NFV Profile and Endorsement in ETSI GS NFV-SOL001 |
Derived from |
Description |
Supported in ONAP Casablanca release |
---|---|---|---|---|
VNFD |
tosca.nodes.nfv.VNF |
tosca.nodes.Root |
TOSCA main service template and describes a VNF in terms of deployment and operational behavior requirements, connectivity, interfaces and virtualized resource requirements. |
Y |
VDU Compute Descriptor R-09467 |
tosca.nodes.nfv.VDU.Compute |
tosca.nodes.Root |
Represents VNF-C (or VM) with deployment flavours. Represents the virtual compute part of a VDU entity which it mainly describes the deployment and operational behavior of a VNFC. Note: Currently not directly supported but allowed via tosca.capabilities.nfv.VirtualCompute |
Y but different way |
VDU VirtualCompute Descriptor |
tosca.capabilities.nfv.VirtualCompute |
tosca.capabilities.Root |
Represents the virtual compute part of a VDU entity which it mainly describes the deployment and operational behavior of a VNFC |
Y |
VDU VirtualStorage Descriptor R-09467 |
tosca.nodes.nfv.VDU.VirtualStorage |
tosca.nodes.Root |
Represents a virtual storage entity which it describes the deployment and operational behavior of a virtual storage resources. Note: This node type is split into three in latest SOL001 draft how the data model uses an older version for Casablanca release. |
Y |
Cpd - Connection Point Descriptor |
tosca.nodes.nfv.Cp |
tosca.nodes.Root |
Represents network connectivity to a compute resource or a VL - abstract type used as parent for the various Cpd types. |
Y |
VduCpd R-35851 |
tosca.nodes.nfv.VduCp |
tosca.nodes.nfv.Cp |
Represents a type of TOSCA Cpd node and describes network connectivity between a VNFC instance (based on this VDU) and an internal VL |
Y |
VnfVirtualLinkDesc R-35851 |
tosca.nodes.nfv.VnfVirtualLink |
tosca.nodes.Root |
Node type represents a logical internal virtual link |
Y |
VnfExtCpd (External Connection Point) R-35851 |
tosca.nodes.nfv.VnfExtCp |
tosca.nodes.Root |
Represents a logical external connection point, exposed by this VNF enabling connecting with Virtual Link, |
N |
SwImageDesc R-02454 |
tosca.artifacts.nfv.SwImage |
tosca.artifacts.Deployment.Image |
Artifact type describes the software image which is directly loaded on the Virtualisation container of the VDU or is to be loaded on a virtual storage resource. Note: Currently not supported in Casablanca release as well as SW image artifact in CSAR |
N |
DeploymentFlavour VnfDf info element R-41215 |
tosca.capabilities.nfv.DeploymentFlavour |
tosca.capabilities.Root |
Note: Current ONAP release support a single deployment flavour |
N |
Scaling Aspect R-96634 The VNF providerMUSTdescribe scaling capabilities to manage scaling characteristics of the VNF. |
tosca.datatypes.nfv.ScalingAspect |
tosca.datatypes.Root |
TBD in ETSI NFV-SOL001 |
N |
5.1.3.2. Data Types
Requirement: R-54356
|
The below table includes the data types used by NFV node and is based on TOSCA/YAML constructs specified in draft GS NFV-SOL 001. The node data definitions/attributes used in VNFD MUST comply with the below table. |
Info Element From ETSI GS NFV-IFA 011 |
Implementation in ETSI NFV-SOL001 |
Derived from |
Description |
Supported in ONAP Casablanca release |
---|---|---|---|---|
l2AddressData |
tosca.datatype.nfv.L2AddressData |
tosca.datatypes.Root |
Describes the information on the MAC addresses to be assigned to the connection point(s) instantiated from the parent Connection Point Descriptor |
Y |
L3AddressData |
tosca.datatypes.nfv.L3AddressData |
tosca.datatypes.Root |
A complex TOSCA data type describe L3AddressData information element, it provides the information on the IP addresses to be assigned to the connection point instantiated from the parent Connection Point Descriptor |
Y |
AddressData |
tosca.datatypes.nfv.AddressData |
tosca.datatypes.Root |
A complex TOSCA data type describe AddressData information elemen, it provides information on the addresses to be assigned to the connection point(s) instantiated from a Connection Point |
Y |
VirtualNetworkInterfaceRequirements |
tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements |
tosca.datatypes.Root |
A complex TOSCA data type describe VirtualNetworkInterfaceRequirements information element, it provides the information to specify requirements on a virtual network interface realizing the CPs instantiated from this CPD |
Y |
ConnectivityType |
tosca.datatypes.nfv.ConnectivityType |
tosca.datatypes.Root |
A complex TOSCA data type used to describe ConnectivityType information element |
Y |
RequestedAdditionalCapabilityData |
tosca.datatypes.nfv.RequestedAdditionalCapability |
tosca.datatypes.Root |
Describes additional capability for a particular VDU e.g. acceleration |
Y |
VirtualMemoryData |
tosca.datatypes.nfv.VirtualMemory |
tosca.datatypes.Root |
Describes virtual memory for virtualized compute descriptor |
Y |
VirtualCpuData |
tosca.datatypes.nfv.VirtualCpu |
tosca.datatypes.Root |
Describes virtual CPU (s) for virtualized compute descriptor |
Y |
VirtualCpuPinning |
tosca.datatypes.nfv.VirtualCpuPinning |
tosca.datatypes.Root |
Describes CPU pinning configuration for a particular CPU |
Y |
VnfcConfigurableProperties |
tosca.datatypes.nfv.VnfcConfigurableProperties |
tosca.datatypes.Root |
Describes additional configurable properties of a VNFC |
Y |
VduProfile |
tosca.datatypes.nfv.VduProfile |
tosca.datatypes.Root |
Describes additional instantiation data for a given VDU used in the a specific deployment flavour. Note: Deployment flavour is not supported in Casablanca release. |
N |
VirtualLinkProfile |
tosca.datatypes.nfv.VlProfile |
tosca.datatypes.Root |
Describes additional instantiation data for a given VL used in the a specific deployment flavour. Note: Deployment flavour is not supported in Casablanca release. |
N |
InstantiationLevel |
tosca.datatypes.nfv.InstantiationLevel |
tosca.datatypes.Root |
Describes a given level of resources to be instantiated within a deployment flavour in term of the number VNFC instances to be created from each VDU. Note: Deployment flavour is not supported in Casablanca release. |
N |
VduLevel |
tosca.datatypes.nfv.VduLevel |
tosca.datatypes.Root |
Indicates for a given VDU in a given level the number of instances to deploy |
Y |
ScaleInfo |
tosca.datatypes.nfv.ScaleInfo |
tosca.datatypes.Root |
Indicates for a given Scaling Aspect the corresponding Scaling Level |
Y |
Inject File |
tosca.datatypes.nfv.injectFile |
tosca.datatypes.Root |
Note: ONAP extension used for vCPE use case |
Y |
Scaling Aspect |
tosca.datatypes.nfv.ScalingAspect |
tosca.datatypes.Root |
Y |
|
Link Bit Rate Requirements |
tosca.datatypes.nfv.LinkBitRateRequirements |
tosca.datatypes.Root |
Y |
|
Quality of service data (loss ratio etc.) |
tosca.datatypes.nfv.Qos |
tosca.datatypes.Root |
Y |
|
Connection point protocol |
tosca.datatypes.nfv.CpProtocolData |
tosca.datatypes.Root |
Y |
|
VNF Configurable Properties |
tosca.datatypes.nfv.VnfConfigurableProperties |
tosca.datatypes.Root |
Y |
|
VNF Additional Configurable Properties |
tosca.datatypes.nfv.VnfAdditionalConfigurableProperties |
tosca.datatypes.Root |
Y? |
|
VnfInfo Modifiable Attributes |
tosca.datatypes.nfv.VnfInfoModifiableAttributes |
tosca.datatypes.Root |
Y |
|
VnfInfo Modifiable Attributes Extension |
tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions |
tosca.datatypes.Root |
Y |
|
VnfInfo Modifiable Attributes Metadata |
tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata |
tosca.datatypes.Root |
Y |
Requirement: R-54876
|
The below table describes the data types used for LCM configuration and is based on TOSCA constructs specified in draft GS NFV-SOL 001. The LCM configuration data elements used in VNFD MUST comply with the below table. |
Info Element From ETSI GS NFV-IFA 011 |
Implementation in ETSI NFV-SOL001 |
Derived from |
Description |
Supported in ONAP Casablanca release |
---|---|---|---|---|
VnfLcmOperationsConfiguration |
tosca.datatypes.nfv.VnfLcmOperationsConfiguration |
tosca.datatypes.Root |
Represents information to configure lifecycle management operations. Each VNF LCM operation configuration represent as a container for all attributes that effect the invocation of the VNF Lifecycle Management operations ? see below per LCM operation |
Y |
InstantiateVnfOpConfig |
tosca.datatypes.nfv.VnfInstantiateOperationConfiguration |
tosca.datatypes.Root |
Represents information that affect the invocation of the InstantiateVnf operation |
Y |
ScaleVnfOpConfig |
tosca.datatypes.nfv.VnfScaleOperationConfiguration |
tosca.datatypes.Root |
Represents information that affect the invocation of the ScaleVnf operation |
Y |
ScaleVnfToLevelOpConfig |
tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration |
tosca.datatypes.Root |
Represents information that affect the invocation of the ScaleVnfToLevel operation |
Y |
HealVnfOpConfig |
tosca.datatypes.nfv.VnfHealOperationConfiguration |
tosca.datatypes.Root |
Represents information that affect the invocation of the HealVnf operation |
Y |
TerminateVnfOpConfig |
tosca.datatypes.nfv.VnfTerminateOperationConfiguration |
tosca.datatypes.Root |
Represents information that affect the invocation of the TerminateVnf |
Y |
OperateVnfOpConfig |
tosca.datatypes.nfv.VnfOperateOperationConfiguration |
tosca.datatypes.Root |
Represents information that affect the invocation of the OperateVnf operation |
Y |
ChangeVnfFlavourOpConfig |
tosca.datatypes.nfv.VnfChangeFlavourOperationConfiguration |
tosca.datatypes.Root |
Defines attributes for invocation of ChangeVnfFlavour operation |
N |
ChangeExtVnfConnectivityOpConfig |
tosca.datatypes.nfv.VnfExtConnectivityOperationConfiguration |
tosca.datatypes.Root |
Defines attributes for invocation of ChangeExtVnfConnectivty operation. Note: External VNF connectivity is postponed to future ONAP releases. |
N |
5.1.3.3. Artifact Types
No artifact type is currently supported in ONAP.
5.1.3.4. Capability Types
Requirement: R-67895
|
The VNFD provided by VNF vendor may use the below described TOSCA capabilities. An on-boarding entity (ONAP SDC) MUST support them.
|
5.1.3.5. Relationship Types
Requirement: R-95321
|
The VNFD provided by VNF vendor may use the below described TOSCA relationships. An on-boarding entity (ONAP SDC) MUST support them.
|
5.1.3.6. Interface Types
Requirement: R-32155
|
The VNFD provided by VNF vendor may use the below described TOSCA interface types. An on-boarding entity (ONAP SDC) MUST support them.
|
|
|
---|---|