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 with ETSI IFA011 v2.5.1 and other proposed changes:

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

cpdId

Identifier

1

Identifier of this Cpd information element.

OpenModelAttribute

  • isInvariant: true
  • support:  MANDATORY
attribute

In IFA 011 and model but not in clean:

layerProtocol

Enum

Model has type LayerProtocol

1..NIdentifies which protocol the CP uses for connectivity purposes (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


attribute

cpRole

In model this is called cpdRole to distinguish it from a cpRole

String

0..1

Identifies the role of the port in the context of the traffic flow patterns in the VNF or parent NS.

For example a VNF with a tree flow pattern within the VNF will have legal cpRoles of ROOT and LEAF.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attribute

description

String

0..1

Provides human-readable information on the purpose of the CP (e.g. CP for control plane traffic).

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attribute

cpProtocol

CpProtocolData

1..N

Identifies the protocol layering information the CP uses for connectivity purposes and associated information. There shall be one cpProtocol for each layer protocol as indicated by the attribute layerProtocol.

Editor's note: the attribute "layerProtocol" still needs further discussion. The info model has layerProtocol and has moved cpProtocol to sub-classes.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attribute

trunkMode

Boolean

1

Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attribute

New in IFA011 v2.5.1

securityGroupRuleId

Identifier

(reference to SecurityGroupRule

0..*Reference of the security group rules bound to this CPD.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
attribute or association?

allowedAddressData

Note: propose to move this out of common definition of Cpd as it is specified specific 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


attribute

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttribute Type

bitrateRequirement

Number

0..1

Bitrate requirement on this CP.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


attribute

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


attribute

vnicOrder (see newly added attribute below "order" to see if it could replace this)

Integer

0..1

Describes the order to create the vNIC within the scope of this Vdu.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


attribute

vnicType

Note: This is new in IFA011 v2.5.1

Enum (create an enum called VnicType with the literals specified in valueRange ...in CAPS)

0..1

Describes the type of the virtual network interface realizing the CPs instantiated from this CPD. This is used to determine which mechanism driver(s) to be used to bind the port. 

Experimental

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
  • valueRange: NORMAL, MACVTAP, DIRECT, BAREMETAL, DIRECT_PHYSICAL and VIRTIO_FORWARDER

Note: This is an Enum and would not have a valueRange specified

attribute
virtualNetworkInterfaceRequirementsVirtualNetworkInterfaceRequirements0..*Specifies requirements on a virtual network interface realizing the CPs instantiated from this CPD.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


association

IFA 011 and model both contain

intVirtualLinkDesc

VnfVirtualLinkDesc (model)

Identifier (IFA 011)

0..1Reference of the internal VLD which this internal CPD connects to.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


PassedByReference
association

IFA 011 and model both contain

order


Note: Did not add this due to presence of vnicOrder

Integer0..1

The order of the NIC to be assigned on the compute instance (e.g. 2 for eth2).

Note: when binding more than one port to a single compute (aka multi vNICs) and ordering is desired, it is mandatory that all ports will be set with an order

value. The order values shall represent a positive, arithmetic progression that starts with 0 (i.e. 0, 1, 2,..., n).


If the property is not present, it shall be left to the VIM to assign a value when creating the instance.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


attribute
Note that model contains cpProtocol at this sub-class level rather than in cpd




(inherited attributes)

All attributes inherited from Cpd.

...

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..*Describes additional instantiation data for the VDUs used in this flavor.

OpenModelAttribute

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

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

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

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


0..*The 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..*Determine where VNFC's (VDU's) are placed with respect to the VNF

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


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..*DeploymentGroup 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

monitoringParameter

Should these be added?

Note: For now have only included defaultInstantiationLevelId , monitoringParameter and vnfIndicator (missing association)







Class: VirtualLinkProfile

...

Attribute NameTypeMultiplicityDescriptionApplied StereotypesAttributeType

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
Attribute

vnfVirtualLinkDescId

Identifier (Reference to VnfVirtualLinkDesc)

Model has type VnfVirtualLinkDesc because this is a member end of an association

1

Uniquely identifies a Vnf VLD.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

PassedByReference

Association
flavourId

Identifier (Reference to VirtualLinkDescFlavour)

Model has VirtualLinkDf


1

Identifies a flavour within the VnfVirtualLinkDesc.

Model says it's a flavor within the VLD

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

PassedByReference

Association
localAffinityOrAntiAffinityRuleLocalAffinityOrAntiAffinityRule0..*

Specifies affinity or anti-affinity rules applicable between the VLs based on this VnfVirtualLinkDesc.

When the cardinality is greater than 1, both affinity rule(s) and anti-affinity rule(s) with different scopes are applicable to the VLs based on this VnfVirtualLinkDesc.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


Attribute
affinityOrAntiAffinityGroupId

Identifier

Model has AffinityOrAntiAffinityGroup as this is an association end.

0..*

Identifier(s) of the affinity or anti-affinity group(s) the VnfVirtualLinkDesc belongs to.

NOTE: Each identifier references an affinity or anti-affinity group which expresses affinity or anti-affinity relationship between the VL(s) using this VnfVirtualLinkDesc and the VL(s) using other VnfVirtualLinkDesc(s) in the same group.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

PassedByReference

Association
maxBitRateRequirements

LinkBitrateRequirements


1

Specifies the maximum bitrate requirements for a VL instantiated according to this profile.

NOTE: These attributes are used to control scaling boundaries.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY


Attribute
minBitRateRequirementsLinkBitrateRequirements1

Specifies the minimum bitrate requirements for a VL instantiated according to this profile.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

New in IFA011 v2.5.1

virtualLinkProtocolData

VirtualLinkProtocolData (see definition of this datatype in IFA011 v2.5.1)0..*Specifies the protocol data for a VL instantiated according to this profile. Cardinality 0 is used when no protocol data needs to be specified. 

OpenModelAttribute

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


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

Attribute

dhcpEnabled

Note: I removed this as it is defined in L3ProtocolData

Boolean0..1Indicating whether DHCP is enabled. Default is "FALSE" if not specified otherwise.

OpenModelAttribute

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
Attribute

...

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 InstancesInteger1Number 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

...

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

...

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

Model has affinityOrAntiAffinity

Enum

AffinityType with literals: "AFFINITY" "ANTI_AFFINITY)

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. Remove it

Attribute
scope

AffinityOrAntiAffinityScope enum with literals: "NFVI_POP"

"ZONE"

"ZONE_GROUP"

"NFVI_NODE"

1Specifies the scope of the rule.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

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

Note: Incorrect usage of value range. Put in enum as CAPS.

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

addressType

Identifier

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

"MAC"

"IP"

(note: model incorrectly calls this AdressType)

1

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

Value:


  • MAC address.
  • IP address.


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.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

...

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

AddressType

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

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

associatedLayerProtocol

Enum

Model has this as LayerProtocol enum

1

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
addressDataAddressData

0..*

Model has 1

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

layerProtocol

Enum

Model has enum LayerProtocol, however it doesn't define the literals:

"ETHERNET", "MPLS", "ODU2", "IPV4", "IPV6" and "PSEUDOWIRE"

Note: Just because we may not support all these layer protocols does not mean they shouldn't be defined.


1..*

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
flowPatternString0..1Identifies the flow pattern of the connectivity (Line, Tree, Mesh).

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

virtualCpuPinningPolicy

Enum

Model has enum CpuPinningPolicy with values: STATIC, DYNAMIC

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

valueRange: "static", "dynamic"

Incorrect use of valueRange

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.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

requestedAdditionalCapabilityName

String

1

Identifies a requested additional capability for the VDU.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

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

Incorrect use of valueRange. Put in description

supportMandatory

Boolean

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
minRequestedAdditionalCapabilityVersionString0..1Identifies the minimum version of the requested additional capability.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
preferredRequestedAdditionalCapabilityVersionString0..1Identifies the preferred version of the requested additional capability.

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
targetPerformanceParametersKeyValuePair1..*Identifies specific attributes, dependent on the requested additional capability type.

OpenModelAttribute

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

OpenModelAttribute

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY
additionalConfigurableProperty

Not specified

We need to specify and propose to ETSI

0..*It provides VNF specific configurable properties that can be modified using the ModifyVnfInfo operation.

OpenModelAttribute

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

OpenModelAttribute

  • isInvariant: false
  • support:  MANDATORY

...

Attribute NameTypeMultiplicityDescriptionApplied Stereotypes

event

Enum

In the model this is LcmEventType

0..*

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.

OpenModelAttribute

  • isInvariant: false
  • support:  CONDITIONAL_MANDATORY
  • condition: At least one of the 2 attributes event or lcmTransitionEvent shall be included

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.

Incorrect usage of valueRange. Remove this.

lcmTransitionEventString0..*

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.

OpenModelAttribute

  • isInvariant: false
  • support:  CONDITIONAL_MANDATORY
  • condition: At least one of the 2 attributes event or lcmTransitionEvent shall be included
scriptNot specified. We should define this and propose to ETSI1Information 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
scriptDslString1Defines the domain specific language (i.e. the type) of script that is provided. Types of scripts could include bash, python, etc.

OpenModelAttribute

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

...