Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

This page shows the extensions and changes made in R3 clean version VNFD model compared with ETSI IFA011 v2.5.1.

The analysis is based on Comparison of Current R3 Clean Version with IFA011 v2.5.1.

BOLD BLUE text indicates those enhancements ONAP has made and would like to propose back to the ETSI community. And BOLD PURPLE text represents candidates for deprecation in support of HPA.

Class: Vnfd

A VNFD is a deployment template which describes a VNF in terms of deployment and operational behaviour requirements. It also contains connectivity, interface and virtualised resource requirements.

Applied Stereotypes:

  • OpenModelClass

          support:  MANDATORY

  • Preliminary
Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale
vnfmInfoString0..*Identifies VNFM(s) compatible with the VNF described in this version of the VNFD.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
  • valueRange: use 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".
attributevalue specified
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.


OpenModelAttribute

attributevalue specified
defaultLocalizationLanguageString0..1

Default localization language that is instantiated if no information about selected localization language is available.

OpenModelAttribute

  • isInvariant: false
  • support:  CONDITIONAL
  • valueRange: refer to ISO936 https://www.iso.org/iso-639-language-codes.html
    Remove this from the valueRange and put in the description.
  • condition: Shall be present if "localizationLanguage" is present and shall be absent otherwise.
attributevalue specified
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
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.

A VNFC instance created based on the VDU maps to a single virtualisation container (e.g.; a VM).

Applied Stereotypes:

  • OpenModelClass

           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.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
  • valueRange: "key/name" includes "AvailabilityZone", "HostAggregates".
attributevalue specified
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

Class: VirtualComputeDesc


The VirtualComputeDesc class supports the specification of requirements related to virtual compute resources.

Applied Stereotypes:

  • OpenModelClass

           support:  MANDATORY

  • Preliminary 
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
attributevalue specified

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
vduCpuRequirementsNot specified (what do we recommend?)0..*Array of key-value pair requirements on the Compute (CPU) for the VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
value specified
virtualCpuPinningVirtualCpuPinningData0..1The virtual CPU pinning configuration for the virtualised compute resource.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


deprecate

Datatype: VirtualMemoryData

The VirtualMemoryData information element supports the specification of requirements related to virtual memory of a virtual compute resource.

Applied Stereotypes:

  • Preliminary
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
value specified
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

Class: VirtualStorageDesc

The VirtualStorageDesc information element supports the specifications of requirements related to persistent virtual storage resources. Ephemeral virtual storage is specified in VirtualComputeDesc information element.

Applied Stereotypes:

  • OpenModelClass

           support:  MANDATORY

  • Preliminary 
Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale

vduStorageRequirements

This is moved to BlockStorageData

KeyValuePair

0..*

An array of key-value pairs that articulate the storage deployment requirements.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attributevalue specified

rdmaEnabled

This is moved to BlockStorageData

Boolean

0..1

Indicate if the storage support RDMA.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attributedeprecate

Class: LogicalNodeData  NOTE: In IFA011 v2.5.1 this is changed to class LogicalNodeRequirements

This information element describes compute, memory and I/O requirements that are to be associated with the logical node of infrastructure. The logical node requirements are a sub-component of the VDU level requirements. As an example for illustration purposes, a logical node correlates to the concept of a NUMA cell in libvirt terminology.

Applied Stereotypes:

  • Preliminary
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
value specified

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.

Note 1: the description of this class is different in ETSI GS NFV IFA 011 and ETSI GS NFV IFA 014. The present definition uses the definition in ETSI GS NFV IFA 014 as it is the more general.

Applied Stereotypes:

  • OpenModelClass

           support:  MANDATORY

  • Preliminary
Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute TypeCategoryRationale

allowedAddressData

Note: propose to move this out of common definition of Cpd 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 attribute

Class: VduCpd

Describes network connectivity between a VNFC instance (based on this VDU) and an internal Virtual Link.

Parent class: Cpd

Applied Stereotypes:

  • OpenModelClass

          support:  MANDATORY

  • Preliminary 
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 attribute

Class: VduProfile

The VduProfile describes additional instantiation data for a given VDU used in a DF.

Applied Stereotypes:

  • OpenModelClass

           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 attribute
vmBootUpTimeOutInteger0..1Timeout value for the VNFM to wait before the successful booting up of the VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  OPTIONAL
Attributenew attribute

Class: VirtualNetworkInterfaceRequirements

This class specifies requirements on a virtual network interface.

Applied Stereotypes:

  • OpenModelClass

           support:  MANDATORY

Preliminary 

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
Attributevalue specified

Class: VnfVirtualLinkDesc

Represents the type of network connectivity mandated by the VNF vendor between two or more Connection Points which includes at least one Internal Connection Point.

Parent class: VirtualLinkDesc   *** NOTE: Model has this class, but not IFA011. ONAP has not defined this class *** - New parent class defined

Applied Stereotypes:

  • OpenModelClass

          support:  MANDATORY

  • Preliminary 
Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

virtualLinkDescId

Identifier

1

Unique identifier of this internal VLD in VNFD.B

Model definition:

Uniquely identifies a VLD in the parent descriptor.

(this is because you can have VnfVirtualLinkDesc and NsVirtualLinkDesc)

Note: Inherited from Class VirtualLinkDesc

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
connectivityType

ConnectivityType


1Model defines this as: Specifies the protocol exposed by a VL and the flow pattern supported by the VL.

Note: Inherited from Class VirtualLinkDesc

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute
testAccessString0..*Specifies test access facilities expected on the VL (e.g. none, passive monitoring, or active (intrusive) loopbacks at endpoints).

Note: Inherited from Class VirtualLinkDesc

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute
descriptionString0..1Provides human-readable information on the purpose of the VL (e.g. control plane traffic).

Note: Inherited from Class VirtualLinkDesc

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

Class: VnfDf

A specific deployment version of a VNF with specific requirements for capacity and performance

Applied Stereotypes:

  • OpenModelClass

           support:  MANDATORY

  • Preliminary 
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
deploymentGroupDeploymentGroup1..*DeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental

Associationnew attribute

Class: VirtualLinkProfile

The VirtualLinkProfile class specifies a profile for instantiating VLs of a particular NS DF according to a specific VLD and VL DF.

Applied Stereotypes:

  • OpenModelClass

-             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 attribute
initiationParametersKeyValuePair0..*Specifies initiation parameters for the virtual link.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: specified values include: cidr, allocationPools (represented by [starting ip address, ending ip address]), gatewayIp, networkName, segmentationId, physicalNetwork.

Note: Incorrect usage of valueRange, remove this and put in the description


Attributenew attribute
networkType

Enum

Note: What which enum? Give it a name.

0..1Type of the network.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: "VLAN", "VXLAN"

Note: incorrect usage of valueRange. It is not intended to define enums

Attributenew attribute
dhcpEnabledBoolean0..1Indicating whether DHCP is enabled. Default is "FALSE" if not specified otherwise.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attributenew attribute
vlanTransparentBoolean0..1Indicating whether "VLAN Transparent Mode" is supported. Default is "FALSE" if not specified otherwise.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attributenew attribute

Datatype: VnfcConfigurableProperties

This datatype defines the configurable properties of a VNFC. For a VNFC instance, the value of these properties can be modified through the VNFM.

Applied Stereotypes:

  • Preliminary
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
data type specified

Datatype: LifecycleManagementScript

Note: In the model this is called VnfLifecycleManagementScript to distinguish it from NsLifecycleManagementScript. Would this be the abstract class in Common?

Defines the information elements related to the lifecycle management script for the VNF.

Applied Stereotypes:

  • Preliminary


Attribute NameTypeMultiplicityDescriptionApplied StereotypesCategoryRationale
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
data type specified

Class: PlacementGroup (Experimental) - New Class

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type
elementGroupIdIdentifier1Unique identifier of this group in the VNFD.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
placementStrategy

Enum

Define an actual enum type with values: COLOCATION, ISOLATION, and EXCLUSIVELY

1Determine where VNFC's (VDU's) are placed with respect to the VNF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: "co-location", "isolation", "exclusively"

NOTE:

  • Co-location - members of the group share the same physical host or rack.
  • isolation - members of the group do not share the same physical host or rack.
  • Exclusivity - members have sole use of a given physical host or rack (not shared with any vnfcs outside the group).

Incorrect use of valueRange

Attribute
vnfcMembers

Not specified

(should it be Identifier (Reference to Vdu)?)

Good question. If it is the end of an association is should be type Vdu?

0..NReferences to Vdus that are part of this group.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association?
strategyScope

Enum

Define an actual enum with values: HOST, and RACK

1indicate if the strategy is applied at the host or rack level

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: "host", "rack"

Incorrect usage of valueRange

Attribute

Class: BaseConfigGroup - New Class

Class: DeploymentGroup - New Class


  • No labels