This page shows the differences between the current clean version model with ETSI IFA011 v2This page shows the differences between the current clean version model with ETSI IFA011 v2.5.1 and other proposed changes:
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type |
---|---|---|---|---|---|
flavorId | Identifier | 1 | Identifier of this DF within the VNFD. | OpenModelAttribute
| Attribute |
description | String | 1 | Human readable description of the DF. | OpenModelAttribute
| Attribute |
vduProfile | VduProfile | 1..* | Describes additional instantiation data for the VDUs used in this flavor. | OpenModelAttribute
| Association |
virtualLinkProfile | VirtualLinkProfile | 0..* | 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
| Association |
instantiationLevel | InstantiationLevel | 1..* | 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
| Association |
affinityOrAntiAffinityGroup | AffinityOrAntiAffinityGroup | 0..* | 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
| Association |
scalingAspect | ScalingAspect | 0..* | The scaling aspects supported by this DF of the VNF. scalingAspect shall be present if the VNF supports scaling. | OpenModelAttribute
| Association |
placementGroup | PlacementGroup | 0..* | Determine where VNFC's (VDU's) are placed with respect to the VNF | OpenModelAttribute
| Association |
baseConfigGroup | BaseConfigGroup | 0..1 |
| OpenModelAttribute
Experimental | Association |
deploymentGroup | DeploymentGroup | 1..* | DeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF. | OpenModelAttribute
Experimental | Association |
IFA011 also defines: defaultInstantiationLevelId supportedOperation vnfLcmOperationsConfiguration vnfIndicator initialDelta |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | AttributeType |
---|---|---|---|---|---|
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 |
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
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
PassedByReference | Association |
localAffinityOrAntiAffinityRule | LocalAffinityOrAntiAffinityRule | 0..N* | 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
| Attribute |
affinityOrAntiAffinityGroupId | Identifier Model has AffinityOrAntiAffinityGroup as this is an association end. | 0..N* | 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
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
| Attribute |
minBitRateRequirements | LinkBitrateRequirements | 1 | Specifies the minimum bitrate requirements for a VL instantiated according to this profile. | OpenModelAttribute
| Attribute |
New in IFA011 v2.5.1 virtualLinkProtocolData | VirtualLinkProtocolData (see definition of this datatype in IFA011 v2.5.1) | 0..N* | 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
| Attribute |
initiationParameters | KeyValuePair | 0..N* | Specifies initiation parameters for the virtual link. | OpenModelAttribute
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..1 | Type of the network. | OpenModelAttribute
valueRange: "VLAN", "VXLAN" Note: incorrect usage of valueRange. It is not intended to define enums | Attribute |
dhcpEnabled | Boolean | 0..1 | Indicating whether DHCP is enabled. Default is "FALSE" if not specified otherwise. | OpenModelAttribute
| Attribute |
vlanTransparent | Boolean | 0..1 | Indicating whether "VLAN Transparent Mode" is supported. Default is "FALSE" if not specified otherwise. | OpenModelAttribute
| Attribute |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type |
---|---|---|---|---|---|
flavourId | Identifier | 1 | Identifies a flavour within a VnfVirtualLinkDesc. | OpenModelAttribute
| Attribute |
qos | QoS Model has VnfQoS | 0..1 | QoS of the VL. | OpenModelAttribute
| Attribute |
Datatype: LinkBitrateRequirements - Missing in output of model
The LinkBitrateRequirements datatype describes the requirements in terms of bitrate for a Virtual Link.
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type |
---|---|---|---|---|---|
levelId | Identifier | 1 | Uniquely identifies a level with the DF. | OpenModelAttribute
| Attribute |
description | String | 1 | Human readable description of the level. | OpenModelAttribute
| Attribute |
vduLevel | VduLevel | 1..N* | Indicates the number of instance of this VDU to deploy for this level. | OpenModelAttribute
| 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
| Attribute |
scaleInfo | ScaleInfo | 0..N* | Represents for each aspect the scale level that corresponds to this instantiation level. scaleInfo shall be present if the VNF supports scaling. | OpenModelAttribute
| Attribute |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type |
---|---|---|---|---|---|
aspectId | Identifier (Reference to ScalingAspect) Model has ScalingAspect as this is an end of an association | 1 | Reference to the scaling aspect. | OpenModelAttribute
PassedByReference | Association |
scaleLevel | Integer | 1 | The scale level, greater than or equal to 0. | OpenModelAttribute
| Attribute |
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type |
---|---|---|---|---|---|
vduId | Identifier (Reference to Vdu) Model has type Vdu as this is an association end | 1 | Uniquely identifies a VDU. | OpenModelAttribute
PassedByReference | Association |
numberOf Instances | Integer | 1 | Number of instances of VNFC based on this VDU to deploy for an instantiation level or for a scaling delta. | OpenModelAttribute
Experimental | Association |
Datatype: QoS
(Note: In model this is an abstract parent of NsQoS and VnfQoS. I recommend we create QoS in "common" with attributes as specified in the model, and then create VnfQoS and NsQos.
The QoS datatype specifies quality of service parameters applicable to a VL.
Applied )
It is the asbstract parent of the NsQos and VnfQos datatypes, as the NsQoS (QoS in ETSI GS NFV IFA 014) includes a priority attribute, while VnfQoS (QoS in ETSI GS NFV IFA 011) does not.
The QoS datatype specifies quality of service parameters applicable to a VL.
Applied Stereotypes:
- Preliminary
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
latency | Number | 1 | Maximum latency in ms. | OpenModelAttribute
|
packetDelayVariation | Number | 1 | Maximum jitter in ms. | OpenModelAttribute
|
packetLossRatio | Number | 0..1 | Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists. | OpenModelAttribute
|
Datatype: LocalAffinityOrAntiAffinityRule - Missing from clean output
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 Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
type Model has affinityOrAntiAffinity | Enum Which one? | 1 | SpecifiesSpecifies whether the rule is an affinity rule or an anti-affinity rule. | support: MANDATORY valueRange: "Affinity", "Anti-Affinity" Remove from valueRange and put into enum as caps |
scope | Enum Which one? | 1 | Specifies the scope of the rule. | support: MANDATORY valueRange: "NFVI-PoP", "Zone", "ZoneGroup", "NFVI-node" Remove from valueRange and put into enum as caps |
Class: AffinityOrAntiAffinityGroup - missing in clean output
Note: This should probably go into common as it is applicable to NS and VNFs with the following definition:
The AffinityOrAntiAffinityGroup class describes the affinity or anti-affinity relationship.
For NSs, those rules are applicable between the VNF instances created using different VnfProfiles, the Virtual Link instances created using different VlProfiles or the nested NS instances created using different NsProfiles.
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).
Per VNF, the affinity / anti-affinity rules defined using this class, using the LocalAffinityOrAntiAffinityRule datatypet, and using the placement constraints in the GrantLifecycleOperation as defined in ETSI GS NFV IFA 007 should be conflict-free. In case of conflicts, the placement constraints in the GrantLifecycleOperation shall take precedence
Applied Stereotypes:
- OpenModelClass
- support: MANDATORY
Preliminary
Note: The model defines the attributes of this class differently.
...
Attribute |
---|
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes | Attribute Type |
---|---|---|---|---|---|
groupId | Identifier | 1 | Identifies an affinity or anti-affinity group to which the affinity or anti-affinity rule applies. | OpenModelAttribute
| Attribute |
type Model has affinityOrAntiAffinity | Enum AffinityType with literals: "AFFINITY" "ANTI_AFFINITY) | 1 | Specifies whether the rule is an affinity rule or an anti-affinity rule. | OpenModelAttribute
valueRange: "Affinity", "Anti-Affinity" Note: Incorrect usage of value range. Remove it | Attribute |
scope | AffinityScope AffinityOrAntiAffinityScope enum with literals: "NFVI_POP" "ZONE" "ZONE_GROUP" "NFVI_NODE" | 1 | Specifies the scope of the rule. | OpenModelAttribute
valueRange: "NFVI-PoP", "Zone", "ZoneGroup", "NFVI-node Note: Incorrect usage of value range. Put in enum as CAPS. |
Datatype: AddressData
The AddressData datatype supports providing information about the addressing scheme and parameters applicable to a CP.
...
Attribute Name | Type | Multiplicity | Description | Applied 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:
etc. The content type shall be aligned with the address type supported by the layerProtocol attribute of the parent CPD. | OpenModelAttribute
|
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
Experimental |
l3AddressData | L3AddressData | 0..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
|
...
Attribute Name | Type | Multiplicity | Description | Applied 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
|
floatingIpActivated | Boolean | 1 | Specify if the floating IP scheme is activated on the CP or not. | OpenModelAttribute
|
iPAddressType | Enum Which one? | 0..1 | Define address type. Values:
NOTE: The address type should be aligned with the address type supported by the layerProtocol attribute of the parent Cpd. | OpenModelAttribute
valueRange: "IPv4", "IPv6" Note: Incorrect usage of value range |
numberOfIpAddress | Integer | 0..1 | Minimum number of IP addresses to be assigned based on this L3AddressData information element. | OpenModelAttribute
|
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
associatedLayerProtocol | Enum Model has this as LayerProtocol enum | 1 | One of the values of the attribute layerProtocol of the Cpd IE. | OpenModelAttribute
|
addressData | AddressData | 0..N Model has 1 | Provides information on the addresses to be assigned to the CP(s) instantiated from the CPD. | OpenModelAttribute
|
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
layerProtocol | Enum Model has enum LayerProtocol, however it doesn't define the literals: "ETHERNET", "MPLS", "ODU2", "IPV4", "IPV6" and "PSEUDOWIRE" | 1..N | Identifies the protocol this VL gives access to (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). | OpenModelAttribute
|
flowPattern | String | 0..1 | Identifies the flow pattern of the connectivity (Line, Tree, Mesh). | OpenModelAttribute
|
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
virtualCpuPinningPolicy | Enum Model has enum CpuPinningPolicy | 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
valueRange: "static", "dynamic" Incorrect use of valueRange |
virtualCpuPinningRule | Not specified Editor's note: need to be 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 |
---|---|---|---|---|
requestedAdditionalCapabilityName | String | 1 | Identifies a requested additional capability for the VDU. | OpenModelAttribute
valueRange: For acceleration capabilities, reference to ETSI GS NFV-IFA 002. Incorrect use of valueRange |
supportMandatory | Boolean | 1 | Indicates whether the requested additional capability is mandatory for successful operation. | OpenModelAttribute
|
minRequestedAdditionalCapabilityVersion | String | 0..1 | Identifies the minimum version of the requested additional capability. | OpenModelAttribute
|
preferredRequestedAdditionalCapabilityVersion | String | 0..1 | Identifies the preferred version of the requested additional capability. | OpenModelAttribute
|
targetPerformanceParameters | KeyValuePair | 1..N | Identifies specific attributes, dependent on the requested additional capability type. | OpenModelAttribute
|
...
Attribute Name | Type | Multiplicity | Description | Applied 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
|
isAutohealEnabled | Boolean | 0..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
|
additionalConfigurableProperty | String | 0..N | It provides VNF specific configurable properties that can be modified using the ModifyVnfInfo operation. | OpenModelAttribute
|
...
Attribute Name | Type | Multiplicity | Description | Applied 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
|
...
Attribute Name | Type | Multiplicity | Description | Applied Stereotypes |
---|---|---|---|---|
event | Enum In the model this is LcmEventType | 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. | OpenModelAttribute
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. |
lcmTransitionEvent | String | 0..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. | OpenModelAttribute
|
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
|
scriptDsl | String | 1 | Defines the domain specific language (i.e. the type) of script that is provided. Types of scripts could include bash, python, etc. | OpenModelAttribute
|
scriptInput | KeyValuePair | 0..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. | OpenModelAttribute
|
...