From 0693a26d6c44317a9bcffe6b9674b7a043b6eddd Mon Sep 17 00:00:00 2001 From: "Bozawglanian, Hagop (hb755d)" Date: Mon, 8 Oct 2018 21:20:28 +0000 Subject: VNFRQTS - TOSCA Update Adding info to the TOSCA section as well as new requirements. Issue-ID: VNFRQTS-258 Change-Id: I37b257fedc2210ba2e4733268fd79e7c098c9eff Signed-off-by: Bozawglanian, Hagop (hb755d) --- docs/Chapter5/LCM_config.csv | 16 ++ docs/Chapter5/NFV_data_type.csv | 34 +++ docs/Chapter5/TOSCA_descriptor.csv | 42 ++++ docs/Chapter5/Tosca.rst | 441 ++++++++++++++++++++++++++------ docs/data/needs.json | 499 ++++++++++++++++++++++++++++++++++++- 5 files changed, 952 insertions(+), 80 deletions(-) create mode 100755 docs/Chapter5/LCM_config.csv create mode 100755 docs/Chapter5/NFV_data_type.csv create mode 100755 docs/Chapter5/TOSCA_descriptor.csv (limited to 'docs') diff --git a/docs/Chapter5/LCM_config.csv b/docs/Chapter5/LCM_config.csv new file mode 100755 index 0000000..5fdcebc --- /dev/null +++ b/docs/Chapter5/LCM_config.csv @@ -0,0 +1,16 @@ +"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 diff --git a/docs/Chapter5/NFV_data_type.csv b/docs/Chapter5/NFV_data_type.csv new file mode 100755 index 0000000..a8a42c6 --- /dev/null +++ b/docs/Chapter5/NFV_data_type.csv @@ -0,0 +1,34 @@ +"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 diff --git a/docs/Chapter5/TOSCA_descriptor.csv b/docs/Chapter5/TOSCA_descriptor.csv new file mode 100755 index 0000000..99bed14 --- /dev/null +++ b/docs/Chapter5/TOSCA_descriptor.csv @@ -0,0 +1,42 @@ +"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 diff --git a/docs/Chapter5/Tosca.rst b/docs/Chapter5/Tosca.rst index 2aaae3f..41fc0d1 100644 --- a/docs/Chapter5/Tosca.rst +++ b/docs/Chapter5/Tosca.rst @@ -13,31 +13,37 @@ limitations under the License. -TOSCA YAML ----------- +ONAP TOSCA VNFD Requirements +----------------------------- Introduction ^^^^^^^^^^^^ -This reference document is the VNF TOSCA Template Requirements for -ONAP, which provides recommendations and standards for building VNF -TOSCA templates compatible with ONAP initial implementations of -Network Cloud. It has the following features: +The following sub-clauses describe the numbered requirements +for VNF Descriptor (VNFD) or in other words the VNF Service Template +based on the most updated draft of ETSI NFV-SOL001 standard for VNF +Descriptor. The ETSI standard specifies a NFV specific data model using +TOSCA/YAML data model constructs specified in TOSCA Simple Profile in +YAML v.1.2. -1. VNF TOSCA template designer supports GUI and CLI. +The requirements for TOSCA/CSAR based VNF package are described as well +and they are based on ETSI NFV-SOL004 standard. -2. VNF TOSCA template is aligned to the newest TOSCA protocol, “Working - Draft 04-Revision 06”. +References +^^^^^^^^^^^^^^^^^^ -3. VNF TOSCA template supports HPA features, such as NUMA, Hyper - Threading, SRIOV, etc. + 1. ETSI GS NFV-SOL001 draft v.0.10.0 + 2. TOSCA SIMPLE Profile in YAML v.1.2 + 3. ETSI GS NFV-SOL004 v.2.5.1 Intended Audience ^^^^^^^^^^^^^^^^^^ -This document is intended for persons developing VNF TOSCA templates -that will be orchestrated by ONAP. +This document is intended for developers of VNF TOSCA templates that +will be orchestrated by ONAP. The document is also applicable for +creating RFP’s with the list of required TOSCA/YAML features +supported by VNF provider. Scope ^^^^^^^^^^^^^^^^ @@ -68,11 +74,133 @@ The VNFD and VNF package are all align to the NFV TOSCA protocol, which supports multiple TOSCA template yaml files, and also supports self-defined node or other extensions. -NFV TOSCA Template +VNF CSAR Package ^^^^^^^^^^^^^^^^^^^^ -TOSCA templates supported by ONAP must follow the requirements -enumerated in this section. +CSAR Overview +~~~~~~~~~~~~~~~~ + +TOSCA YAML CSAR file is an archive file using the ZIP file format whose +structure complies with the TOSCA Simple Profile YAML v1.2 Specification. +The CSAR file may have one of the two following structures: + + - CSAR containing a TOSCA-Metadata directory, which includes the TOSCA.meta + metadata file providing an entry information for processing a CSAR file. + + - CSAR containing a single yaml (.yml or .yaml) file at the root of the + archive. The yaml file is a TOSCA definition template that contains a + metadata section with template_name and template_version metadata. This + file is the CSAR Entry-Definitions file. + +VNF Package Structure and Format +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. req:: + :id: R-51347 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNF package **MUST** be arranged as a CSAR archive as specified in + TOSCA Simple Profile in YAML 1.2. + + +.. req:: + :id: R-87234 + :target: VNF + :keyword: MAY + :introduced: casablanca + + The VNF package provided by a VNF vendor **MAY** be either with + TOSCA-Metadata directory (CSAR Option 1) or without TOSCA-Metadata + directory (CSAR Option 2) as specified in ETSI GS NFV-SOL004. On-boarding + entity (ONAP SDC) must support both options. + + **Note:** SDC supports only the CSAR Option 1 in Casablanca. The Option 2 + will be considered in future ONAP releases, + + +VNF Package Contents +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. req:: + :id: R-10087 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNF package **MUST** contain all standard artifacts as specified in + ETSI GS NFV-SOL004 including Manifest file, VNFD (or Main TOSCA/YAML + based Service Template) and other optional artifacts. CSAR Manifest + file as per SOL004 - for example ROOT\\ **MainServiceTemplate.mf** + +.. req:: + :id: R-01123 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNF package Manifest file **MUST** contain: VNF package meta-data, a + list of all artifacts (both internal and external) entry’s including + their respected URI’s, an algorithm to calculate a digest and a digest + result calculated on the content of each artifacts, as specified in + ETSI GS NFV-SOL004. The VNF Package MUST include VNF Identification + Data to uniquely identify the resource for a given VNF provider. The + identification data must include: an identifier for the VNF, the name + of the VNF as was given by the VNF provider, VNF description, VNF + provider, and version. + +.. req:: + :id: R-21322 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNF provider **MUST** provide their testing scripts to support + testing as specified in ETSI NFV-SOL004 - Testing directory in CSAR + +.. req:: + :id: R-26885 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNF provider **MUST** provide the binaries and images needed to + instantiate the VNF (VNF and VNFC images) either as: + + - Local artifact in CSAR: ROOT\\Artifacts\\ **VNF_Image.bin** + + - externally referred (by URI) artifact in Manifest file (also may be + referred by VNF Descriptor) + + Note: Currently, ONAP doesn't have the capability of Image management, + we upload the image into VIM/VNFM manually. + +.. req:: + :id: R-40820 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNF provider MUST enumerate all of the open source licenses + their VNF(s) incorporate. CSAR License directory as per ETSI SOL004. + + for example ROOT\\Licenses\\ **License_term.txt** + + +VNF Package Authenticity +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Will be added in future releases. + + +VNF Package ONAP Extensions +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +1. TOACA data type extension tosca.datatypes.nfv.injectFile is used for vCPE + use case. +2. ONAP extensions for VNF package that is currently proposed for Dublin + release is VES extension described below. TOSCA Introduction ^^^^^^^^^^^^^^^^^^^ @@ -106,69 +234,220 @@ This section describing TOSCA modeling principles and data model for NFV, which shall be based on [TOSCA-1.0] and [TOSCA-Simple-Profile-YAML V1.0], or new type based on ETSI NFV requirements, etc. -VNF Descriptor Template +TOSCA VNF Descriptor ^^^^^^^^^^^^^^^^^^^^^^^^^ -The VNF Descriptor (VNFD) describes the topology of the VNF by means of -ETSI NFV IFA011 [IFA011] terms such as VDUs, Connection Points, Virtual -Links, External Connection Points, Scaling Aspects, Instantiation Levels -and Deployment Flavours. - -The VNFD (VNF Descriptor) is read by both the NFVO and the VNFM. It -represents the contract & interface of a VNF and ensures the -interoperability across the NFV functional blocks. - -The main parts of the VNFD are the following: - -- VNF topology: it is modeled in a cloud agnostic way using virtualized - containers and their connectivity. Virtual Deployment Units (VDU) - describe the capabilities of the virtualized containers, such as - virtual CPU, RAM, disks; their connectivity is modeled with VDU - Connection Point Descriptors (VduCpd), Virtual Link Descriptors (Vld) - and VNF External Connection Point Descriptors (VnfExternalCpd); - -- VNF deployment aspects: they are described in one or more deployment - flavours, including instantiation levels, supported LCM operations, - VNF LCM operation configuration parameters, placement constraints - (affinity / antiaffinity), minimum and maximum VDU instance numbers, - and scaling aspect for horizontal scaling. - -The following table defines the TOSCA Type “derived from” values that -SHALL be used when using the TOSCA Simple Profile for NFV version 1.0 -specification [TOSCA-Simple-Profile-NFV-v1.0] for NFV VNFD with aggreed -changes from ETSI SOL001 draft. - -+---------------------+------------------------------------+-----------------+ -| **ETSI NFV Element**| **TOSCA VNFD** | **Derived from**| -| | | | -| **[IFA011]** | **[TOSCA-Simple-Profile-NFV-v1.0]**| | -+=====================+====================================+=================+ -| VNF | tosca.nodes.nfv.VNF | tosca.nodes.Root| -+---------------------+------------------------------------+-----------------+ -| Cpd (Connection | tosca.nodes.nfv.Cp | tosca.nodes.Root| -| Point) | tosca.nodes.nfv.Cp | tosca.nodes.Root| -+---------------------+------------------------------------+-----------------+ -| VduCpd (internal | tosca.nodes.nfv.VduCp | tosca.nodes.\ | -| connection point) | | nfv.Cp | -+---------------------+------------------------------------+-----------------+ -| VnfVirtualLinkDesc | tosca.nodes.nfv.VnfVirtualLink | tosca.nodes.Root| -| (Virtual Link) | | | -+---------------------+------------------------------------+-----------------+ -| VDU Virtual Storage | tosca.nodes.nfv.VDU.VirtualStorage | tosca.nodes.Root| -+---------------------+------------------------------------+-----------------+ -| VDU Virtual Compute | tosca.nodes.nfv.VDU.Compute | tosca.nodes.Root| -+---------------------+------------------------------------+-----------------+ -| Software Image | | | -+---------------------+------------------------------------+-----------------+ -| Deployment Flavour | | | -+---------------------+------------------------------------+-----------------+ -| Scaling Aspect | | | -+---------------------+------------------------------------+-----------------+ -| Element Group | | | -+---------------------+------------------------------------+-----------------+ -| Instantiation | | | -| Level | | | -+---------------------+------------------------------------+-----------------+ +General +~~~~~~~~~~ + +.. req:: + :id: R-35854 + :target: VNF + :keyword: MUST + :introduced: casablanca + + 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. + + +.. req:: + :id: R-65486 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNFD **MUST** comply with ETSI GS NFV-SOL001 document endorsing + the above mentioned NFV Profile and maintaining the gaps with the + requirements specified in ETSI GS NFV-IFA011 standard. + + +.. req:: + :id: R-17852 + :target: VNF + :keyword: MAY + :introduced: casablanca + + 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. + +.. req:: + :id: R-46527 + :target: VNF + :keyword: MUST + :introduced: casablanca + + 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: + + - VNF topology: it is modeled in a cloud agnostic way using virtualized + containers and their connectivity. Virtual Deployment Units (VDU) + describe the capabilities of the virtualized containers, such as + virtual CPU, RAM, disks; their connectivity is modeled with VDU + Connection Point Descriptors (VduCpd), Virtual Link Descriptors + (VnfVld) and VNF External Connection Point Descriptors + (VnfExternalCpd); + + - VNF deployment aspects: they are described in one or more + deployment flavours, including configurable parameters, instantiation + levels, placement constraints (affinity / antiaffinity), minimum and + maximum VDU instance numbers. Horizontal scaling is modeled with + scaling aspects and the respective scaling levels in the deployment + flavours; + + **Note**: The deployment aspects (deployment flavour etc.) are postponed + for future ONAP releases. + + - VNF lifecycle management (LCM) operations: describes the LCM operations + supported per deployment flavour, and their input parameters; + Note, thatthe actual LCM implementation resides in a different layer, + namely referring to additional template artifacts. + +.. req:: + :id: R-15837 + :target: VNF + :keyword: MUST + :introduced: casablanca + + 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: + + +.. csv-table:: **TOSCA Definition** + :file: TOSCA_descriptor.csv + :header-rows: 1 + :align: center + :widths: auto + +Data Types +~~~~~~~~~~~~ + +.. req:: + :id: R-54356 + :target: VNF + :keyword: MUST + :introduced: casablanca + + 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. + + +.. csv-table:: **NFV Data Types** + :file: NFV_data_type.csv + :header-rows: 1 + :align: center + :widths: auto + +.. req:: + :id: R-54876 + :target: VNF + :keyword: MUST + :introduced: casablanca + + 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. + +.. csv-table:: **LCM Configuration** + :file: LCM_config.csv + :header-rows: 1 + :align: center + :widths: auto + + +Artifact Types +~~~~~~~~~~~~~~~~~~~~~~~~ + +No artifact type is currently supported in ONAP. + + +Capability Types +~~~~~~~~~~~~~~~~~~~~~~~~ + +.. req:: + :id: R-67895 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNFD provided by VNF vendor may use the below described TOSCA + capabilities. An on-boarding entity (ONAP SDC) **MUST** support them. + + **tosca.capabilities.nfv.VirtualBindable** + + A node type that includes the VirtualBindable capability indicates + that it can be pointed by **tosca.relationships.nfv.VirtualBindsTo** + relationship type. + + **tosca.capabilities.nfv.VirtualLinkable** + + A node type that includes the VirtualLinkable capability indicates + that it can be pointed by **tosca.relationships.nfv.VirtualLinksTo** + relationship. + + **tosca.capabilities.nfv.ExtVirtualLinkable** + + A node type that includes the ExtVirtualLinkable capability + indicates that it can be pointed by + **tosca.relationships.nfv.VirtualLinksTo** relationship. + + **Note**: This capability type is used in Casablanca how it does + not exist in the last SOL001 draft + + **tosca.capabilities.nfv.VirtualCompute** and + **tosca.capabilities.nfv.VirtualStorage** includes flavours of VDU + + +Relationship Types +~~~~~~~~~~~~~~~~~~~~~~~~ + +.. req:: + :id: R-95321 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNFD provided by VNF vendor may use the below described TOSCA + relationships. An on-boarding entity (ONAP SDC) **MUST** support them. + + **tosca.relationships.nfv.VirtualBindsTo** + + This relationship type represents an association relationship between + VDU and CP node types. + + **tosca.relationships.nfv.VirtualLinksTo** + + This relationship type represents an association relationship between + the VduCpd’s and VirtualLinkDesc node types. + + +Interface Types +~~~~~~~~~~~~~~~~~~~~~~~~ + +.. req:: + :id: R-32155 + :target: VNF + :keyword: MUST + :introduced: casablanca + + The VNFD provided by VNF vendor may use the below described TOSCA + interface types. An on-boarding entity (ONAP SDC) **MUST** support them. + + **tosca.interfaces.nfv.vnf.lifecycle.Nfv** supports LCM operations +--------------------------------------------------------------------+ @@ -421,6 +700,14 @@ supports dpdk. Here is an example. sw:ovs\_dpdk: "true" +VES Requirements +^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Note: ONAP proprietary extensions in ETSI SOL004 standards for VES support +in CSAR package need to be manually loaded in R3 (Casablanca) for VNF and +PNFs. Platform support will be developed for this in upcoming releases.** + + NFV TOSCA Type Definition ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/docs/data/needs.json b/docs/data/needs.json index fd6ff09..4dc831b 100644 --- a/docs/data/needs.json +++ b/docs/data/needs.json @@ -1,5 +1,5 @@ { - "created": "2018-10-08T20:37:27.230153", + "created": "2018-10-08T21:19:15.296533", "current_version": "casablanca", "project": "", "versions": { @@ -21858,7 +21858,7 @@ "needs_amount": 750 }, "casablanca": { - "created": "2018-10-08T20:37:27.230135", + "created": "2018-10-08T21:19:15.296381", "needs": { "R-00011": { "description": "A VNF's Heat Orchestration Template's parameter defined\nin a nested YAML file\n**MUST NOT** have a parameter constraint defined.", @@ -22116,6 +22116,35 @@ "validated_by": "", "validation_mode": "" }, + "R-01123": { + "description": "The VNF package Manifest file **MUST** contain: VNF package meta-data, a\nlist of all artifacts (both internal and external) entry\u2019s including\ntheir respected URI\u2019s, an algorithm to calculate a digest and a digest\nresult calculated on the content of each artifacts, as specified in\nETSI GS NFV-SOL004. The VNF Package MUST include VNF Identification\nData to uniquely identify the resource for a given VNF provider. The\nidentification data must include: an identifier for the VNF, the name\nof the VNF as was given by the VNF provider, VNF description, VNF\nprovider, and version.", + "full_title": "", + "hide_links": "", + "id": "R-01123", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "VNF Package Contents", + "sections": [ + "VNF Package Contents", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-01334": { "description": "The xNF **MUST** conform to the NETCONF RFC 5717,\n\"Partial Lock Remote Procedure Call\".", "full_title": "", @@ -23629,6 +23658,35 @@ "validated_by": "", "validation_mode": "static" }, + "R-10087": { + "description": "The VNF package **MUST** contain all standard artifacts as specified in\nETSI GS NFV-SOL004 including Manifest file, VNFD (or Main TOSCA/YAML\nbased Service Template) and other optional artifacts. CSAR Manifest\nfile as per SOL004 - for example ROOT\\\\ **MainServiceTemplate.mf**", + "full_title": "", + "hide_links": "", + "id": "R-10087", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "VNF Package Contents", + "sections": [ + "VNF Package Contents", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-10129": { "description": "The xNF **SHOULD** conform its YANG model to RFC 7223,\n\"A YANG Data Model for Interface Management\".", "full_title": "", @@ -24860,6 +24918,35 @@ "validated_by": "", "validation_mode": "" }, + "R-15837": { + "description": "The following table defines the major TOSCA Types specified in\nETSI NFV-SOL001 standard draft. The VNFD provided by a VNF vendor\n**MUST** comply with the below definitions:", + "full_title": "", + "hide_links": "", + "id": "R-15837", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "General", + "sections": [ + "General", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-15884": { "description": "The VNF **MUST** include the field \"date\" in the Security alarms\n(where applicable and technically feasible).", "full_title": "", @@ -25316,6 +25403,35 @@ "validated_by": "", "validation_mode": "" }, + "R-17852": { + "description": "The VNFD **MAY** include TOSCA/YAML definitions that are not part of\nNFV Profile. If provided, these definitions MUST comply with TOSCA\nSimple Profile in YAML v.1.2.", + "full_title": "", + "hide_links": "", + "id": "R-17852", + "impacts": "", + "introduced": "casablanca", + "keyword": "MAY", + "links": [], + "notes": "", + "section_name": "General", + "sections": [ + "General", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-18001": { "description": "If the VNF's ports connected to a unique internal network\nand the port's IP addresses are statically assigned IP Addresses,\nthe IPv4 Addresses **MAY** be from different subnets and the\nIPv6 Addresses **MAY** be from different subnets.", "full_title": "", @@ -26087,6 +26203,35 @@ "validated_by": "", "validation_mode": "" }, + "R-21322": { + "description": "The VNF provider **MUST** provide their testing scripts to support\ntesting as specified in ETSI NFV-SOL004 - Testing directory in CSAR", + "full_title": "", + "hide_links": "", + "id": "R-21322", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "VNF Package Contents", + "sections": [ + "VNF Package Contents", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-21330": { "description": "A VNF's Heat Orchestration Template's Resource property parameter that is\nassociated with external network **MUST** include the ``{network-role}``\nas part of the parameter name.", "full_title": "", @@ -27480,6 +27625,35 @@ "validated_by": "", "validation_mode": "" }, + "R-26885": { + "description": "The VNF provider **MUST** provide the binaries and images needed to\ninstantiate the VNF (VNF and VNFC images) either as:\n\n - Local artifact in CSAR: ROOT\\\\Artifacts\\\\ **VNF_Image.bin**\n\n - externally referred (by URI) artifact in Manifest file (also may be\n referred by VNF Descriptor)\n\nNote: Currently, ONAP doesn't have the capability of Image management,\nwe upload the image into VIM/VNFM manually.", + "full_title": "", + "hide_links": "", + "id": "R-26885", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "VNF Package Contents", + "sections": [ + "VNF Package Contents", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-270358": { "description": "A VNF's Heat Orchestration Template's Cinder Volume Template **MUST**\ncontain either\n\n* An ``OS::Cinder::Volume`` resource\n* An ``OS::Heat::ResourceGroup`` resource that references a Nested YAML\n file that contains an ``OS::Cinder::Volume`` resource\n* A resource that defines the property ``type`` as a Nested YAML file\n (i.e., static nesting) and the Nested YAML contains\n an ``OS::Cinder::Volume`` resource", "full_title": "", @@ -28650,6 +28824,35 @@ "validated_by": "", "validation_mode": "" }, + "R-32155": { + "description": "The VNFD provided by VNF vendor may use the below described TOSCA\ninterface types. An on-boarding entity (ONAP SDC) **MUST** support them.\n\n **tosca.interfaces.nfv.vnf.lifecycle.Nfv** supports LCM operations", + "full_title": "", + "hide_links": "", + "id": "R-32155", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "Interface Types", + "sections": [ + "Interface Types", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-32217": { "description": "The xNF **MUST** have routable FQDNs that are reachable via\nthe Ansible Server for the endpoints (VMs) of a xNF on which playbooks\nwill be executed. ONAP will initiate requests to the Ansible Server\nfor invocation of playbooks against these end points [#7.3.3]_.", "full_title": "", @@ -29531,6 +29734,35 @@ "validated_by": "", "validation_mode": "" }, + "R-35854": { + "description": "The VNF Descriptor (VNFD) provided by VNF vendor **MUST** comply with\nTOSCA/YAML based Service template for VNF descriptor specified in\nETSI NFV-SOL001.\n\n**Note**: As the ETSI NFV-SOL001 is work in progress the below tables\nsummarizes the TOSCA definitions agreed to be part of current version\nof NFV profile and that VNFD MUST comply with in ONAP Release 2+\nRequirements.", + "full_title": "", + "hide_links": "", + "id": "R-35854", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "General", + "sections": [ + "General", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-35960": { "description": "The xNF Package **MUST** include documentation which must include\nall events, severity level (e.g., informational, warning, error) and\ndescriptions including causes/fixes if applicable for the event.", "full_title": "", @@ -30380,6 +30612,35 @@ "validated_by": "", "validation_mode": "" }, + "R-40820": { + "description": "The VNF provider MUST enumerate all of the open source licenses\ntheir VNF(s) incorporate. CSAR License directory as per ETSI SOL004.\n\nfor example ROOT\\\\Licenses\\\\ **License_term.txt**", + "full_title": "", + "hide_links": "", + "id": "R-40820", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "VNF Package Contents", + "sections": [ + "VNF Package Contents", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-40827": { "description": "The xNF provider **MUST** enumerate all of the open\nsource licenses their xNF(s) incorporate.", "full_title": "", @@ -31752,6 +32013,35 @@ "validated_by": "", "validation_mode": "static" }, + "R-46527": { + "description": "A VNFD is a deployment template which describes a VNF in terms of\ndeployment and operational behavior requirements. It contains\nvirtualized resources (nodes) requirements as well as connectivity\nand interfaces requirements and **MUST** comply with info elements\nspecified in ETSI GS NFV-IFA 011. The main parts of the VNFD are\nthe following:\n\n - VNF topology: it is modeled in a cloud agnostic way using virtualized\n containers and their connectivity. Virtual Deployment Units (VDU)\n describe the capabilities of the virtualized containers, such as\n virtual CPU, RAM, disks; their connectivity is modeled with VDU\n Connection Point Descriptors (VduCpd), Virtual Link Descriptors\n (VnfVld) and VNF External Connection Point Descriptors\n (VnfExternalCpd);\n\n - VNF deployment aspects: they are described in one or more\n deployment flavours, including configurable parameters, instantiation\n levels, placement constraints (affinity / antiaffinity), minimum and\n maximum VDU instance numbers. Horizontal scaling is modeled with\n scaling aspects and the respective scaling levels in the deployment\n flavours;\n\n**Note**: The deployment aspects (deployment flavour etc.) are postponed\nfor future ONAP releases.\n\n - VNF lifecycle management (LCM) operations: describes the LCM operations\n supported per deployment flavour, and their input parameters;\n Note, thatthe actual LCM implementation resides in a different layer,\n namely referring to additional template artifacts.", + "full_title": "", + "hide_links": "", + "id": "R-46527", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "General", + "sections": [ + "General", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-46567": { "description": "The xNF Package **MUST** include configuration scripts\nfor boot sequence and configuration.", "full_title": "", @@ -32838,6 +33128,35 @@ "validated_by": "", "validation_mode": "" }, + "R-51347": { + "description": "The VNF package **MUST** be arranged as a CSAR archive as specified in\nTOSCA Simple Profile in YAML 1.2.", + "full_title": "", + "hide_links": "", + "id": "R-51347", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "VNF Package Structure and Format", + "sections": [ + "VNF Package Structure and Format", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-51430": { "description": "The VNF's Heat Orchestration Template's Resource ``OS::Nova::Server``\nproperty\n``name`` parameter **MUST** be declared as either type ``string``\nor type ``comma_delimited_list``.", "full_title": "", @@ -33384,6 +33703,35 @@ "validated_by": "", "validation_mode": "static" }, + "R-54356": { + "description": "The below table includes the data types used by NFV node and is based\non TOSCA/YAML constructs specified in draft GS NFV-SOL 001. The node\ndata definitions/attributes used in VNFD **MUST** comply with the below\ntable.", + "full_title": "", + "hide_links": "", + "id": "R-54356", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "Data Types", + "sections": [ + "Data Types", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-54373": { "description": "The xNF **MUST** have Python >= 2.6 on the endpoint VM(s)\nof a xNF on which an Ansible playbook will be executed.", "full_title": "", @@ -33553,6 +33901,35 @@ "validated_by": "", "validation_mode": "" }, + "R-54876": { + "description": "The below table describes the data types used for LCM configuration\nand is based on TOSCA constructs specified in draft GS NFV-SOL 001.\nThe LCM configuration data elements used in VNFD **MUST** comply\nwith the below table.", + "full_title": "", + "hide_links": "", + "id": "R-54876", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "Data Types", + "sections": [ + "Data Types", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-54930": { "description": "The VNF **MUST** implement the following input validation controls:\nDo not permit input that contains content or characters inappropriate\nto the input expected by the design. Inappropriate input, such as\nSQL expressions, may cause the system to execute undesirable and\nunauthorized transactions against the database or allow other\ninappropriate access to the internal network (injection attacks).", "full_title": "", @@ -35480,6 +35857,35 @@ "validated_by": "", "validation_mode": "" }, + "R-65486": { + "description": "The VNFD **MUST** comply with ETSI GS NFV-SOL001 document endorsing\nthe above mentioned NFV Profile and maintaining the gaps with the\nrequirements specified in ETSI GS NFV-IFA011 standard.", + "full_title": "", + "hide_links": "", + "id": "R-65486", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "General", + "sections": [ + "General", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-65515": { "description": "The VNF **MUST** provide a mechanism and tool to start VNF\ncontainers (VMs) without impacting service or service quality assuming\nanother VNF in same or other geographical location is processing service\nrequests.", "full_title": "", @@ -35938,6 +36344,35 @@ "validated_by": "", "validation_mode": "static" }, + "R-67895": { + "description": "The VNFD provided by VNF vendor may use the below described TOSCA\ncapabilities. An on-boarding entity (ONAP SDC) **MUST** support them.\n\n **tosca.capabilities.nfv.VirtualBindable**\n\n A node type that includes the VirtualBindable capability indicates\n that it can be pointed by **tosca.relationships.nfv.VirtualBindsTo**\n relationship type.\n\n **tosca.capabilities.nfv.VirtualLinkable**\n\n A node type that includes the VirtualLinkable capability indicates\n that it can be pointed by **tosca.relationships.nfv.VirtualLinksTo**\n relationship.\n\n **tosca.capabilities.nfv.ExtVirtualLinkable**\n\n A node type that includes the ExtVirtualLinkable capability\n indicates that it can be pointed by\n **tosca.relationships.nfv.VirtualLinksTo** relationship.\n\n **Note**: This capability type is used in Casablanca how it does\n not exist in the last SOL001 draft\n\n **tosca.capabilities.nfv.VirtualCompute** and\n **tosca.capabilities.nfv.VirtualStorage** includes flavours of VDU", + "full_title": "", + "hide_links": "", + "id": "R-67895", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "Capability Types", + "sections": [ + "Capability Types", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-67918": { "description": "The VNF **MUST** handle replication race conditions both locally\nand geo-located in the event of a data base instance failure to maintain\nservice continuity.", "full_title": "", @@ -40218,6 +40653,35 @@ "validated_by": "", "validation_mode": "static" }, + "R-87234": { + "description": "The VNF package provided by a VNF vendor **MAY** be either with\nTOSCA-Metadata directory (CSAR Option 1) or without TOSCA-Metadata\ndirectory (CSAR Option 2) as specified in ETSI GS NFV-SOL004. On-boarding\nentity (ONAP SDC) must support both options.\n\n**Note:** SDC supports only the CSAR Option 1 in Casablanca. The Option 2\nwill be considered in future ONAP releases,", + "full_title": "", + "hide_links": "", + "id": "R-87234", + "impacts": "", + "introduced": "casablanca", + "keyword": "MAY", + "links": [], + "notes": "", + "section_name": "VNF Package Structure and Format", + "sections": [ + "VNF Package Structure and Format", + "VNF CSAR Package", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-87247": { "description": "VNF Heat Orchestration Template's Incremental Module file name\n**MUST** contain only alphanumeric characters and underscores\n'_' and **MUST NOT** contain the case insensitive word ``base``.", "full_title": "", @@ -41876,6 +42340,35 @@ "validated_by": "", "validation_mode": "static" }, + "R-95321": { + "description": "The VNFD provided by VNF vendor may use the below described TOSCA\nrelationships. An on-boarding entity (ONAP SDC) **MUST** support them.\n\n **tosca.relationships.nfv.VirtualBindsTo**\n\n This relationship type represents an association relationship between\n VDU and CP node types.\n\n **tosca.relationships.nfv.VirtualLinksTo**\n\n This relationship type represents an association relationship between\n the VduCpd\u2019s and VirtualLinkDesc node types.", + "full_title": "", + "hide_links": "", + "id": "R-95321", + "impacts": "", + "introduced": "casablanca", + "keyword": "MUST", + "links": [], + "notes": "", + "section_name": "Relationship Types", + "sections": [ + "Relationship Types", + "TOSCA VNF Descriptor", + "ONAP TOSCA VNFD Requirements" + ], + "status": null, + "tags": [], + "target": "VNF", + "test": "", + "test_case": "", + "test_file": "", + "title": "", + "title_from_content": "", + "type_name": "Requirement", + "updated": "", + "validated_by": "", + "validation_mode": "" + }, "R-95430": { "description": "A VNF's Heat Orchestration Template's OS::Nova::Server Resource\n``metadata`` map value parameter ``vm_role`` **MUST**\nbe declared as type: ``string``.", "full_title": "", @@ -43035,7 +43528,7 @@ "validation_mode": "static" } }, - "needs_amount": 744 + "needs_amount": 761 } } } \ No newline at end of file -- cgit 1.2.3-korg