Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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 NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale
vnfmInfoString0..* (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

  • isInvariant: false
  • support:  MANDATORY
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.

localizationLanguageString0..*

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

  • isInvariant: false
  • support:  MANDATORY
attributetype and value specifiedValue is specified according to the usage in VFC project.
defaultLocalizationLanguageString0..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

  • isInvariant: false
  • support:  CONDITIONAL
  • condition: Shall be present if "localizationLanguage" is present and shall be absent otherwise.
attributetype and value specified
vnfReservedCpd
Value is specified according to the usage in VFC project.
vnfReservedCpdVduCpd0..*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

  • isInvariant: false
  • support:  MANDATORY


associationnew 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.

modifiableAttributesVnfInfoModifiableAttributes1 (IFA has 0..1)

Describes the modifiable attributes of the VNF.


OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attributecardinality change
logoString0..1File path of the vendor specified logo.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


attributenew attribute
guideString0..1UUID of the vendor guide/documentation which is attached to VNF and can be downloaded from the model.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


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 NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale
nfviConstraintKeyValuePair0..*

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

  • isInvariant: false
  • support:  MANDATORY
attributetype specified
injectFilesString

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).

injectFilesString0..*Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


attributenew 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 NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale
requestAdditionalCapabilitiesRequestedAdditionalCapabilityData0..*Specifies requirements for additional capabilities. These may be for a range of purposes. One example is acceleration related capabilities.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

attributedeprecate
computeRequirementsKeyValuePair0..*Specifies compute requirements.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attributetype specifiedType 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 NameTypeMultiplicityDescriptionApplied StereotypesCategoryRationale
virtualCpuOversubscriptionPolicy
0..1The 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

  • isInvariant: false
  • support:  MANDATORY
deprecate
vduCpuRequirementsKeyValuePair0..*Array of key-value pair requirements on the Compute (CPU) for the VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
type specifiedType and value are defined per HPA proposal.
virtualCpuPinningVirtualCpuPinningData0..1The virtual CPU pinning configuration for the virtualised compute resource.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


deprecateCovered by vduCpuRequirements attribute per HPA proposal.

Datatype: VirtualMemoryData

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesCategoryRationale
virtualMemOversubscriptionPolicy
0..1The 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

  • isInvariant: false
  • support:  MANDATORY
deprecate
vduMemRequirements

KeyValuePair

0..*Array of key-value pair requirements on the memory for the VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
type specifiedType and value are defined per HPA proposal.
numaEnabledBoolean
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

  • isInvariant: false
  • support:  MANDATORY
deprecate

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale

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

  • isInvariant: false
  • support:  MANDATORY
attributetype specifiedType 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

  • isInvariant: false
  • support:  MANDATORY
attributedeprecate

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesCategoryRationale

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

  • isInvariant: false
  • support:  MANDATORY
type specifiedType 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 NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale

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

  • isInvariant: false
  • support:  MANDATORY


attributenew attributenew attributeTo 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 NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale

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

  • isInvariant: false
  • support:  MANDATORY


attributenew attributeAn 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 NameTypeMultiplicityDescriptionApplied Stereotypes

Attribute Type

CategoryRationale
watchdogString0..1Watchdog action to be triggered by the VIM for the VNF in case the heart beat fails, e.g. reset or hard shutdown, etc.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attributenew attributeSee description.
vmBootUpTimeOutInteger0..1Timeout value for the VNFM to wait before the successful booting up of the VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  OPTIONAL
Attributenew attributeTo 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 NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale
networkInterfaceRequirements

KeyValuePair

0..*

The network interface requirements. An element from an array of key-value pairs that articulate the network interface deployment requirements.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attributetype specifiedType and value are defined per HPA proposal.

Class: VnfVirtualLinkDesc

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale
placementGroupPlacementGroup0..*Determine where VNFC's (VDU's) are placed with respect to the VNF

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


Associationnew attribute
baseConfigGroupBaseConfigGroup0..1
  • BaseConfigGroup may set Access Control Lists (ACL's) and establish security groups and server groups.
  • BaseConfigGroup creates/establishs storage for the VM's (OpenStack Cinder).
  • BaseConfigGroup may establish internal networks such as OAM (VNF Mgmt) or MNS (Maintenance & Surveillance)  established.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental

Associationnew attribute

Associationnew attributeserves different use cases, please see description
deploymentGroupDeploymentGroup1..*DeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental

Associationnew attribute

...

           support:  MANDATORY

  • Preliminary
Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttributeTypeCategoryRationale

virtualLinkProfileId

Note: This is missing in IFA011 but is in the model. This is a necessary attribute in order to instantiate the class

Identifier1

Uniquely identifies this VirtualLinkProfile class.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attributenew attributealign with IFA015
initiationParametersKeyValuePair0..*

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

  • isInvariant: false
  • support:  MANDATORY


Attributenew attributespecify 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

  • isInvariant: false
  • support:  MANDATORY
virtualCpuPinningRule

Not specified

0..1A list of rules that should be considered during the allocation of the virtual CPUs to logical CPUs in case of "static" virtualCpuPinningPolicy.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesCategoryRationale

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

  • isInvariant: false
  • support:  MANDATORY
type specified

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesCategoryRationale
scriptString1Information 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

  • isInvariant: false
  • support:  MANDATORY
type specified
scriptInputKeyValuePair0..*

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

  • isInvariant: false
  • support:  MANDATORY
type specifiedAlign with description.

Datatype: MonitoringParameter

...

Attribute Name

Type

Multiplicity

Description

Applied Stereotypes

CategoryRationale
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

  • isInvariant: false
  • support:  MANDATORY
type specified

...