This page shows the extensions and changes made in R3 clean version VNFD model compared with ETSI IFA011 v2.5.1.
...
support: MANDATORY
- Preliminary
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
vnfmInfo | String | 0..* (IFA has 1..*) | Identifies VNFM(s) compatible with the VNF described in this version of the VNFD. Using the name of micro-service of the vnfm drive. For vendor specific VNFM, the value composes of "vendorname" and "vnfmdriver", e.g. "mycompanyvnfmdriver"; for generic VNFM, the value is "gvnfmdriver". | OpenModelAttribute
| attribute | value specified cardinality change | Value is specified according to the usage in VFC project. Lower cardinality is changed to 0 because not all VNFs in ONAP need to be managed by VNFMs, SO/APPC could also serve the similar functionality. |
localizationLanguage | String | 0..* | Information about localization languages of the VNF (includes e.g. strings in the VNFD). NOTE: This allows to provide one or more localization languages to support selecting a specific localization language at VNF instantiation time. The value refer to ISO936 https://www.iso.org/iso-639-language-codes.html . | OpenModelAttribute
| attribute | type and value specified | Value is specified according to the usage in VFC project. |
defaultLocalizationLanguage | String | 0..1 | Default localization language that is instantiated if no information about selected localization language is available. The value refer to ISO936 https://www.iso.org/iso-639-language-codes.html . | OpenModelAttribute
| attribute | type and value specified |
Value is specified according to the usage in VFC project. | |||||||
vnfReservedCpd | VduCpd | 0..* | Reserved IP Address for VNF which is not bounded to any specific VNFC, but assigned manually from outside and potentially shared as a floating IP among VNFCs. | OpenModelAttribute
| association | new attribute | Used to describe CPs which don't belong to a specific VNFC, but are shared among VNFCs. Corresponding to "allowed address pair" concept in openstack, or "virtual ip" concept. Usually used for redundancy (reliability) design. |
modifiableAttributes | VnfInfoModifiableAttributes | 1 (IFA has 0..1) | Describes the modifiable attributes of the VNF. | OpenModelAttribute
| attribute | cardinality change | |
logo | String | 0..1 | File path of the vendor specified logo. | OpenModelAttribute
| attribute | new attribute | |
guide | String | 0..1 | UUID of the vendor guide/documentation which is attached to VNF and can be downloaded from the model. | OpenModelAttribute
| attribute | new attribute |
Class: Vdu
The Virtualisation Deployment Unit (VDU) is a construct supporting the description of the deployment and operational behaviour of a VNFC.
...
support: MANDATORY
- Preliminary
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
nfviConstraint | KeyValuePair | 0..* | Describes constraints on the NFVI for the VNFC instance(s) created from this Vdu. For example, aspects of a secure hosting environment for the VNFC instance that involve additional entities or processes. NOTE: These are constraints other than stipulating that a VNFC instance has access to a certain resource, as a prerequisite to instantiation. The attributes virtualComputeDesc and virtualStorageDesc define the resources required for instantiation of the VNFC instance. The "key/name" includes "AvailabilityZone" and "HostAggregates". | OpenModelAttribute
| attribute | type specified |
Openstack has the concepts "availability zone" and "host aggregates" by which the operator could specify (or constrain) the deployment location of the VM (VNFC instance). It's proposed to have these two attributes defined in the VNFD as input parameters (with default values defined if necessary). | |||||||
injectFiles | String | 0..* | Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process. | OpenModelAttribute
| attribute | new attribute | There are two ways to inject data into VM instance during instantiation process: 1) using config drive to provide such information (covered by the bootData attribute in the VNFD); 2) using an injection file. It's proposed to also support this way of providing additional data to the VM instance. Note: file injection is deprecated in OpenStack Queen version |
Class: SwImageDesc
This information element describes the software image for a particular VDU or a virtual storage resource.
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
requestAdditionalCapabilities | RequestedAdditionalCapabilityData | 0..* | Specifies requirements for additional capabilities. These may be for a range of purposes. One example is acceleration related capabilities. | OpenModelAttribute
| attribute | deprecate | |
computeRequirements | KeyValuePair | 0..* | Specifies compute requirements. | OpenModelAttribute
| attribute | type specified | Type and value are defined per HPA proposal. |
Datatype: VirtualCpuData
The VirtualCpuData information element supports the specification of requirements related to virtual CPU(s) of a virtual compute resource.
Applied Stereotypes:
- Preliminary
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Category | Rationale |
---|---|---|---|---|---|---|
virtualCpuOversubscriptionPolicy | 0..1 | The CPU core oversubscription policy e.g. the relation of virtual CPU cores to physical CPU cores/threads. The cardinality can be 0 during the allocation request, if no particular value is requested. | OpenModelAttribute
| deprecate | ||
vduCpuRequirements | KeyValuePair | 0..* | Array of key-value pair requirements on the Compute (CPU) for the VDU. | OpenModelAttribute
| type specified | Type and value are defined per HPA proposal. |
virtualCpuPinning | VirtualCpuPinningData | 0..1 | The virtual CPU pinning configuration for the virtualised compute resource. | OpenModelAttribute
| deprecate | Covered by vduCpuRequirements attribute per HPA proposal. |
Datatype: VirtualMemoryData
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Category | Rationale |
---|---|---|---|---|---|---|
virtualMemOversubscriptionPolicy | 0..1 | The memory core oversubscription policy in terms of virtual memory to physical memory on the platform. The cardinality can be 0 during the allocation request, if no particular value is requested. | OpenModelAttribute
| deprecate | ||
vduMemRequirements | KeyValuePair | 0..* | Array of key-value pair requirements on the memory for the VDU. | OpenModelAttribute
| type specified | Type and value are defined per HPA proposal. |
numaEnabled | Boolean | 0..1 | It specifies the memory allocation to be cognizant of the relevant process/core allocation. The cardinality can be 0 during the allocation request, if no particular value is requested. | OpenModelAttribute
| deprecate |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
vduStorageRequirements NOTE: This attribute is moved to BlockStorageData in IFA011 v2.5.1 | KeyValuePair | 0..* | An array of key-value pairs that articulate the storage deployment requirements. | OpenModelAttribute
| attribute | type specified | Type and value are defined per HPA proposal. |
rdmaEnabled NOTE: This attribute is moved to BlockStorageData in IFA011 v2.5.1 | Boolean | 0..1 | Indicate if the storage support RDMA. | OpenModelAttribute
| attribute | deprecate |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Category | Rationale |
---|---|---|---|---|---|---|
logicalNodeRequirementDetail | KeyValuePair | 1..* | The logical node-level compute, memory and I/O requirements. An array of key-value pairs that articulate the deployment requirements. This could include the number of CPU cores on this logical node, a memory configuration specific to a logical node (e.g. such as available in the Linux kernel via the libnuma library) or a requirement related to the association of an I/O device with the logical node. | OpenModelAttribute
| type specified | Type and value are defined per HPA proposal. |
Class: Cpd
The Cpd class specifies the characteristics of connection points attached to NFs and NSs. This is an abstract class used as parent for the various Cpd classes.
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
allowedAddressData Note: Ongoing discussion is proposing to move this out of Cpd (into VNFD) as it is specified to VNFD. | AddressData | 0..N | For specifying floating IP(s) to be shared among Cpds, which are reserved for vnfReservedCpd described in the VNFD. | OpenModelAttribute
| attribute | new attributenew attribute | To specify the IP addresses used for the vnfReservedCpd. |
Class: VduCpd
Describes network connectivity between a VNFC instance (based on this VDU) and an internal Virtual Link.
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
vnicName | String | 0..1 | Describes the name of the vNIC this CP attaches to, e.g. eth0. It will be configured during the Vdu booting process. | OpenModelAttribute
| attribute | new attribute | An optional attribute used when creating a port resource in Openstack. |
Class: VduProfile
The VduProfile describes additional instantiation data for a given VDU used in a DF.
...
support: MANDATORY
- Preliminary
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
watchdog | String | 0..1 | Watchdog action to be triggered by the VIM for the VNF in case the heart beat fails, e.g. reset or hard shutdown, etc. | OpenModelAttribute
| Attribute | new attribute | See description. |
vmBootUpTimeOut | Integer | 0..1 | Timeout value for the VNFM to wait before the successful booting up of the VDU. | OpenModelAttribute
| Attribute | new attribute | To specify the maximum time VNFM should wait before a VNF instance is successfully boot up. If timeout, the instantiation would be considered as failed. |
Class: VirtualNetworkInterfaceRequirements
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale |
---|---|---|---|---|---|---|---|
networkInterfaceRequirements | KeyValuePair | 0..* | The network interface requirements. An element from an array of key-value pairs that articulate the network interface deployment requirements. | OpenModelAttribute
| Attribute | type specified | Type and value are defined per HPA proposal. |
Class: VnfVirtualLinkDesc
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type | Category | Rationale | |||
---|---|---|---|---|---|---|---|---|---|---|
placementGroup | PlacementGroup | 0..* | Determine where VNFC's (VDU's) are placed with respect to the VNF | OpenModelAttribute
| Association | new attribute | ||||
baseConfigGroup | BaseConfigGroup | 0..1 |
| OpenModelAttribute
Experimental | Association | new attribute | Association | new attribute | serves different use cases, please see description | |
deploymentGroup | DeploymentGroup | 1..* | DeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF. | OpenModelAttribute
Experimental | Association | new attribute |
...
support: MANDATORY
- Preliminary
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | AttributeType | Category | Rationale |
---|---|---|---|---|---|---|---|
virtualLinkProfileId Note: This is missing in IFA011 but is in the model. This is a necessary attribute in order to instantiate the class | Identifier | 1 | Uniquely identifies this VirtualLinkProfile class. | OpenModelAttribute
| Attribute | new attribute | align with IFA015 |
initiationParameters | KeyValuePair | 0..* | Specifies initiation parameters for the virtual link. Specified values include: cidr, allocationPools (represented by [starting ip address, ending ip address]), gatewayIp, networkName, segmentationId, physicalNetwork. NOTE: cidr, allocationPools, gatewayIp, networkName are already defined in L3ProtocolData in IFA. | OpenModelAttribute
| Attribute | new attribute | specify the input parameters for creating virtual link (network) in openstack; IFA has added several attributes for the L3 in the latest version, but not for the VLAN related ones (L2?) |
Class: VirtualLinkDescFlavour
...
Datatype: VirtualCpuPinningData (suggest to deprecate)
NOTE: The rationale is to include this information in vduCpuRequirements as part of the HPA proposal.
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
virtualCpuPinningPolicy | Enum | 0..1 | The policy can take values of "static" or "dynamic". In case of "static" the virtual CPU cores are requested to be allocated to logical CPU cores according to the rules defined in virtualCpuPinningRules. In case of "dynamic" the allocation of virtual CPU cores to logical CPU cores is decided by the VIM. (e.g.: SMT (Simultaneous Multi-Threading) requirements). | OpenModelAttribute
|
virtualCpuPinningRule | Not specified | 0..1 | A list of rules that should be considered during the allocation of the virtual CPUs to logical CPUs in case of "static" virtualCpuPinningPolicy. | OpenModelAttribute
|
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Category | Rationale |
---|---|---|---|---|---|---|
additionalVnfcConfigurableProperty | String | 0..N | It provides VNFC configurable properties that can be modified using the ModifyVnfInfo operation. NOTE: A cardinality of "0" indicates that configuring this present VNF property is not supported. | OpenModelAttribute
| type specified |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Category | Rationale |
---|---|---|---|---|---|---|
script | String | 1 | Information to locate a VNF LCM script (e.g. written in a DSL as specified in requirement VNF_PACK.LCM.001)triggered to react to one of the events listed in the event attribute. | OpenModelAttribute
| type specified | |
scriptInput | KeyValuePair | 0..* | Array of KVP requirements with the key as the parameter name and the value as the parameter that need to be passed as an input to the script. NOTE: The scriptInput values are passed to the scripts in addition to the parameters received in the operation invocation request or indicator value change. | OpenModelAttribute
| type specified | Align with description. |
Datatype: MonitoringParameter
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Category | Rationale |
---|---|---|---|---|---|---|
collectionPeriod | Enum (CollectionPeriod) but with no enumeration literals defined | 0..1 | An attribute that describes the recommended periodicity at which to collect the performance information. VNFM determines if this parameter is considered. The vendor may provide this information as a guidance for creating PmJobs if needed. NOTE: The MANO or NFVI may not support the recommended collectionPeriod based on their functionalities, and can reject the requests based on the recommended collectionPeriod in this case. | OpenModelAttribute
| type specified |
...