Versions Compared

Key

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

This page shows the differences between the current clean version model This page shows the differences between the current clean version model with ETSI IFA011 v2.4.3.

  • Verified against IFA011 v2.4.3. Also verified against v2.4.3 of the info model.
  • Added "Attribute Type" column to indicate whether the class attribute is an "attribute" or member end of an "association"
  • Changed attribute Applied Stereotypes to OpenModelAttribute
  • Added class definitions and applied stereotypes

...

Applied Stereotypes:

  • Preliminary
Attribute NameTypeMultiplicityDescriptionApplied Stereotypes
cpuArchitectureString0..1CPU architecture type. Examples are x86, ARM. The cardinality can be 0 during the allocation request, if no particular CPU architecture type is requested.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
numVirtualCpuInteger1Number of virtual CPUs.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
virtualCpuClockNumber(recommended DM type: Scalar-Unit-Freq)0..1Minimum virtual CPU clock rate (e.g. in MHz). The cardinality can be 0 during the allocation request, if no particular value is requested.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
virtualCpuOversubscriptionPolicyString0..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
vduCpuRequirementsKeyValuePair0..NArray of key-value pair requirements on the Compute (CPU) for the VDU.

OpenModelAttribute

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

editor's note: need to check whether can be optional

Datatype: VirtualMemoryData

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

virtualLinkDescId

Identifier

1

Unique identifier of this internal VLD in VNFD.

Model definition:

Uniquely identifies a VLD in the parent descriptor.

(this is because you can have VnfVirtualLinkDesc amd and NsVirtualLinkDesc)

Inherited from Class VirtualLinkDesc

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
virtualLinkDescFlavourVirtualLinkDescFlavour1..NDescribes a specific flavour of the VL with specific bitrate requirements.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
connectivityType

ConnectivityType

Where do we define the datatypes in the model?

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

Inherited from Class VirtualLinkDesc

OpenModelAttribute

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

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

Inherited from Class VirtualLinkDesc

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute
monitoringParameterMonitoringParameter0..NDefines the virtualised resources monitoring parameters on VLD level. 

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

flavorId

Identifier

1

Identifier of this DF within the VNFD.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
descriptionString1Human readable description of the DF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute
vduProfileVduProfile1..NDescribes additional instantiation data for the VDUs used in this flavor.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
virtualLinkProfileVirtualLinkProfile0..N

Defines the internal VLD along with additional data which is used in this DF.

NOTE 1: This allows for different VNF internal topologies between DFs.

NOTE 2: virtualLinkProfile needs to be provided for all VLs that the CPs of the VDUs in the VDU profiles connect to.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
instantiationLevelInstantiationLevel1..N

Describes the various levels of resources that can be used to instantiate the VNF using this flavour.

Examples: Small, Medium, Large.

If there is only one "instantiationLevel" entry, it shall be treated as the default instantiation level for this DF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
affinityOrAntiAffinityGroupAffinityOrAntiAffinityGroup0..N

Specifies affinity or anti-affinity relationship applicable between the virtualisation containers (e.g. virtual machines) to be created using different VDUs or internal VLs to be created using different VnfVirtualLinkDesc(s) in the same affinity or anti-affinity group.

NOTE: In the present specification, including either VDU(s) or VnfVirtualLinkDesc(s) into the same affinity or anti-affinity group is supported. Extension to support including both VDU(s) and VnfVirtualLinkDesc(s) into the same affinity or anti-affinity group is left for future specification.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
scalingAspect

ScalingAspect

Note: This is not defined by ONAP. It is a Class

0..NThe scaling aspects supported by this DF of the VNF. scalingAspect shall be present if the VNF supports scaling.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
placementGroupPlacementGroup0..NDetermine where VNFC's (VDU's) are placed with respect to the VNF

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental (note that experimental is a lifecycle state and not a value for "support")

Association
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

Association
deploymentGroupDeploymentGroup1..NDeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental

Association

IFA011 also defines:

defaultInstantiationLevelId

supportedOperation

vnfLcmOperationsConfiguration

vnfIndicator

initialDelta







...

Class: VirtualLinkDescFlavour

...

Description:

The VirtualLinkDescFlavour describes additional instantiation data for a given internal VL used in a DF.

Applied Stereotypes:

  • OpenModelClass

-             support:  MANDATORY

Preliminary 

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

flavourId

Identifier

1

Identifies a flavour within a VnfVirtualLinkDesc.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
qos

QoS

Model has VnfQoS

0..1QoS of the VL.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

Datatype: LinkBitrateRequirements

The LinkBitrateRequirements datatype describes the requirements in terms of bitrate for a Virtual Link.

Applied Stereotypes:

Preliminary

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

root

Number

1

Throughput requirement of the link (e.g. bitrate of E-Line, root bitrate of E-Tree, aggregate capacity of E-LAN).

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
leafNumber0..1

Throughput requirement of leaf connections to the link when applicable to the connectivity type (e.g. for E-Tree and E?LAN branches).

NOTE: The present document does not specify the means to declare different bitrate requirements for leaf connections (e.g. E-LAN leaves).

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Class: InstantiationLevel

...

levelId

...

Identifier

...

1

...

Uniquely identifies a level with the DF.

...

The InstantiationLevel class describes a given level of resources to be instantiated within a DF in term of the number of VNFC instances to be created from each VDU.

All the VDUs referenced in the level shall be part of the corresponding DF and their number shall be within the range (min/max) for this DF.

Applied Stereotypes:

  • OpenModelClass

-             support:  MANDATORY

Preliminary 


Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

levelId

Identifier

1

Uniquely identifies a level with the DF.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
descriptionString1Human readable description of the level.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute
vduLevelVduLevel1..NIndicates the number of instance of this VDU to deploy for this level.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
virtualLinkBitRateLevel

VirtualLinkBitRateLevel

Note: Not defined by ONAP. It is a datatype

0..N

Specifies bitrate requirements applicable to virtual links created from particular virtual link descriptors for this level.

NOTE: If not present, it is assumed that the bitrate requirements can be derived from those specified in the VduCpd instances applicable to the internal VL. If present in both the InstantiationLevel and the VduCpd instances applicable to the internal VL, the highest value takes precedence.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Association
scaleInfoScaleInfo0..NRepresents for each aspect the scale level that corresponds to this instantiation level. scaleInfo shall be present if the VNF supports scaling.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

Datatype: ScaleInfo

This datatype provides information about the scale level of a VNF instance w.r.t. one scaling aspect.

Applied Stereotypes:

Preliminary

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

aspectId

Identifier (Reference

to ScalingAspect)

to ScalingAspect)

Model has ScalingAspect as this is an end of an association

1

Reference to the scaling aspect.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

PassedByReference

Association
scaleLevelInteger1The scale level, greater than or equal to 0.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

Class: VduLevel


Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

vduId

Identifier (Reference to Vdu)

Model has type Vdu as this is an association end

1

Uniquely identifies a VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

PassedByReference

Association
numberOf InstancesInteger1
Number of instances of VNFC based on this VDU to deploy for an instantiation level or for a scaling delta.support: MANDATORY

...

Number of instances of VNFC based on this VDU to deploy for an instantiation level or for a scaling delta.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental

Association

Datatype: QoS

Note: In model this is an abstract parent of NsQoS and VnfQoS. 

The QoS datatype specifies quality of service parameters applicable to a VL.

Applied Stereotypes:

  • Preliminary


Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

latency

Number

1

Maximum latency in ms.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
packetDelayVariationNumber1Maximum jitter in ms.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
packetLossRatioNumber0..1Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Datatype: LocalAffinityOrAntiAffinityRule: LocalAffinityOrAntiAffinityRule

The LocalAffinityOrAntiAffinityRule describes the affinity or anti-affinity rule applicable between the virtualization containers to be created based on a particular VDU, or between internal VLs to be created based on a particular VnfVirtualLinkDesc.

Applied Stereotypes:

Preliminary

Note: The model defines this in a completely different way.

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

type

Enum

Which one?

1

Specifies whether the rule is an affinity rule or an anti-affinity rule.

support: MANDATORY

valueRange: "Affinity", "Anti-Affinity"

scope

Enum

Which one?

1Specifies the scope of the rule.

support: MANDATORY

valueRange: "NFVI-PoP", "Zone", "ZoneGroup", "NFVI-node"

Class: AffinityOrAntiAffinityGroup

The AffinityOrAntiAffinityGroup class describes the affinity or anti-affinity relationship.

For VNFs, those rules are applicable between the virtualization containers to be created based on different VDUs, or between internal VLs to be created based on different VnfVirtualLinkDesc(s).

Applied Stereotypes:

  • OpenModelClass

-             support:  MANDATORY

Preliminary 

Note: The model defines the attributes of this class differently.

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

groupId

Identifier

1

Identifies an affinity or anti-affinity group to which the affinity or anti-affinity rule applies.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
Attribute
type

Enum

Which one?

1Specifies whether the rule is an affinity rule or an anti-affinity rule
.
.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: "Affinity", "Anti-Affinity"

Note: Incorrect usage of value range.

Attribute
scope

Enum

Which one?

1Specifies the scope of the rule.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: "NFVI-PoP", "Zone", "ZoneGroup", "NFVI-node

"

Note: Incorrect usage of value range.

Datatype: AddressData

The AddressData datatype supports providing information about the addressing scheme and parameters applicable to a CP.

Applied Stereotypes:

  • Preliminary


Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

addressType

Identifier

Both IFA011 and model have this as an enum called "AddressType"

1

Describes the type of the address to be assigned to the CP instantiated from the parent CPD.


Value:


  • MAC address.
  • IP address.

etc.

The content type shall be aligned with the address type supported by the layerProtocol attribute of the parent CPD.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
l2AddressData

L2AddressData

0..1

Provides the information on the MAC addresses to be assigned to the CP(s) instantiated from the parent CPD.

Shall be present when the addressType is MAC address.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Experimental

l3AddressDataL3AddressData0..1

Provides the information on the IP addresses to be assigned to the CP instantiated from the parent CPD.

Shall be present when the addressType is IP
address.
address.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Datatype: L2AddressData

The L2AddressData datatype provides information about Layer 2 level addressing applicable to a CP.

Applied Stereotypes:

Experimental


Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

macAddressAssignment

Boolean

1

Specify if the MAC address assignment is the responsibility of management and orchestration function or not.

If it is set to True, it is the management and orchestration function responsibility.

If it is set to False, it will be provided by an external entity, e.g. OSS/BSS. 

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

Datatype: L3AddressData

The L3AddressData datatype supports providing information about Layer 3 level addressing scheme and parameters applicable to a CP.

Applied Stereotypes:

Preliminary

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

iPAddressAssignment

Boolean

1

Specify if the address assignment is the responsibility of management and orchestration function or not.

If it is set to True, it is the management and orchestration function responsibility.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
floatingIpActivatedBoolean1Specify if the floating IP scheme is activated on the CP or not.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
iPAddressType

Enum

Which one?

0..1

Define address type.

Values:

  • IPv4 address.
  • IPv6 address

NOTE: The address type should be aligned with the address type supported by the layerProtocol attribute of the parent Cpd.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

valueRange: "IPv4", "IPv6"

Note: Incorrect usage of value range

numberOfIpAddressInteger0..1Minimum number of IP addresses to be assigned based on this L3AddressData information element.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


Datatype: CpProtocolData


Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

associatedLayerProtocol

Enum

1

One of the values of the attribute layerProtocol of the Cpd IE.

support: MANDATORY

addressDataAddressData0..NProvides information on the addresses to be assigned to the CP(s) instantiated from the CPD.

support: MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

layerProtocol

Enum

1

Identifies the protocol this VL gives access to (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire).

support: MANDATORY

flowPatternString0..1Identifies the flow pattern of the connectivity (Line, Tree, Mesh).

support: MANDATORY

...

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

support: MANDATORY

valueRange: "static", "dynamic"

virtualCpuPinningRule

Not specified

Editor's note: need to be 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.

support: MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

requestedAdditionalCapabilityName

String

1

Identifies a requested additional capability for the VDU.

support: MANDATORY

valueRange: For acceleration capabilities, reference to ETSI GS NFV-IFA 002.

supportMandatory

Boolean

1Indicates whether the requested additional capability is mandatory for successful operation.

support: MANDATORY

minRequestedAdditionalCapabilityVersionString0..1Identifies the minimum version of the requested additional capability.

support: MANDATORY

preferredRequestedAdditionalCapabilityVersionString0..1Identifies the preferred version of the requested additional capability.support: MANDATORY
targetPerformanceParametersKeyValuePair1..NIdentifies specific attributes, dependent on the requested additional capability type.support: MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

isAutoscaleEnabled

Boolean

0..1

It permits to enable (TRUE)/disable (FALSE) the auto-scaling functionality.

NOTE: A cardinality of "0" indicates that configuring this present VNF property is not supported.

support: MANDATORY

isAutohealEnabledBoolean0..1

It permits to enable (TRUE)/disable (FALSE) the auto-healing functionality.

NOTE: A cardinality of "0" indicates that configuring this present VNF property is not supported.

support: MANDATORY

additionalConfigurablePropertyString0..NIt provides VNF specific configurable properties that can be modified using the ModifyVnfInfo operation.

support: MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

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.

support: MANDATORY

Datatype: LifecycleManagementScript

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

event

Enum

0..N

Describes VNF lifecycle event(s) or an external stimulus detected on a VNFM reference point.

NOTE: At least one of these two attributes shall be included.

support: MANDATORY

valueRange: for lifecycle events, include: "EVENT_START_INSTANTIATION", "EVENT_END_INSTANTIATION", "EVENT_START_SCALING", "EVENT_END_SCALING", "EVENT_START_SCALING_TO_LEVEL", "EVENT_END_SCALING_TO_LEVEL", "EVENT_START_HEALING", "EVENT_END_HEALING", "EVENT_START_TERMINATION", "EVENT_END_TERMINATION", "EVENT_START_VNF_FLAVOR_CHANGE", "EVENT_END_VNF_FLAVOR_CHANGE", "EVENT_START_VNF_OPERATION_CHANGE", "EVENT_END_VNF_OPERATION_CHANGE", "EVENT_START_VNF_EXT_CONN_CHANGE", "EVENT_END_VNF_EXT_CONN_CHANGE", "EVENT_START_VNFINFO_MODIFICATION", "EVENT_END_VNFINFO_MODIFICATION"; for external stimulus, include: receipt of request message of instantiation, scaling, healing, termination, change of VNF flavour, change of the operation state of the VNF, change of external VNF connectivity, modification of VNF information or the receipt of a notification regarding the change of a VNF indicator value.

lcmTransitionEventString0..N

Describes the transition VNF lifecycle event(s) that cannot be mapped to any of the enumerated values defined for the event attribute.

NOTE: At least one of these two attributes shall be included.

support: MANDATORY

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.support: MANDATORY
scriptDslString1Defines the domain specific language (i.e. the type) of script that is provided. Types of scripts could include bash, python, etc.support: MANDATORY
scriptInputKeyValuePair0..N

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.

support: MANDATORY

...