Table of Contents | ||
---|---|---|
|
...
These diagrams come from papyrus based on R3 vnf model clean, blue ones are new requirements added.
ONAP Vnfd - Topology View
Vnf Deployment Flavor
Class: Vnfd
COLOR EXPLANATION: Black means already have in R3, all the attributes with colors are new requirements to propose. Blue means haved discussed, pink means haven't yet. Currently, all the attributes have been introduced, so pink is no longer have, all the pink attributes turn into blue ones. Red means already have in ONAP, but to align with new IFA 011 v2.5.1, I suggest to remove them from the current position to the new places I list here. Orange means the suggested modifications for the discussed attributes.
If the proposed attributes are aligned with IFA specs, you will find a sentence below the attribute name, if not, they are the extended requirements.
ONAP Vnfd View
ONAP Vnfd - Topology View
Vnf Deployment Flavor
VNF Instance
Class: Vnf
Attribute Name | Type | Mult. | Stereotypes | Description | Rationale |
vnfInstanceId | Identifier | 1 | Experimental OpenModelAttribute
| identifier of the VNF instance
| |
vnfInstanceName | String | 1..* | Experimental OpenModelAttribute
| name of the VNF instance. Multiple names are possible.
| |
vnfProductName | String | 0..1 | Experimental OpenModelAttribute
| name to identify the VNF Product, invariant for the VNF Product lifetime
| |
description | invalid | 0..1 | Experimental OpenModelAttribute
| description of the VNF instance
| |
vnfProvider | invalid | 1 | Experimental OpenModelAttribute
| provider of the VNF model
| |
vnfdId | Identifier | 1 | Experimental OpenModelAttribute
| identifier of the VNF model
| |
vnfdVersion | String | 1 | Experimental OpenModelAttribute
| version of the VNF model
| |
vnfSoftwareVersion | String | 1 | Experimental OpenModelAttribute
| Software version of the VNF. This is changed when there is any change to the software that is included in the VNF package
| |
onboardedVnfPkgInfoId | Identifier | 1 | Experimental OpenModelAttribute
| identifier of the specific VNF package on which the VNF instance is based
| |
availabilityZone | invalid | 1 | Experimental OpenModelAttribute
| availability zone information of the VNF instance
| |
operationalStatus | OperationalStatus | 0..1 | Experimental OpenModelAttribute
| indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path.
| |
orchestrationStatus | OrchestrationStatus | 1 | Experimental OpenModelAttribute
| whether the VNF instance is instantiated
| |
oamlpv4Address |
IpAddress | 0..1 | Experimental OpenModelAttribute
| oam ip address, ipv4
| |
oamlpv6Address |
IpAddress | 0..1 | Experimental OpenModelAttribute
| oam ip address, ipv6
| |
instantiatedVnfInfo | invalid | 0..1 | Experimental OpenModelAttribute
| information specific to an instantiated VNF instance, e.g., vm information
| |
inMaint | Boolean | 0..1 | Experimental OpenModelAttribute
| whether the VNF instance is in maintenance mode, if yes, DCAE will not observe alarms/traps, etc.
| |
isClosedLoopDisabled | Boolean | 0..1 | Experimental OpenModelAttribute
| whether closed loop function is enabled
| |
encryptedAccessFlag | Boolean | 0..1 | Experimental OpenModelAttribute
| whether this VNF is accessed using SSH
| |
vnfConfigurableProperty | invalid | 0..1 | Experimental OpenModelAttribute
| indicator for whether autoHeal and autoScale is enabled
| |
nfNamingCode | String | 1 | Experimental OpenModelAttribute
| String assigned to this model used for naming purpose.
| |
vnfNamingPolicyId | String | 1 | Experimental OpenModelAttribute
| Identifier of the policy which has the naming logic for this VNF instance
| |
vnfHomingPolicyId | String | 1 | Experimental OpenModelAttribute
| Identifier of the policy which provides homing conditions.
| |
nfType | String | 1 | Experimental OpenModelAttribute
| Generic description of the type of network function
| |
nfFunction | String | 1 | Experimental OpenModelAttribute
| English description of network function that the specific VNF deployment is providing.
| |
nfRole | String | 1 | Experimental OpenModelAttribute
| Role in the network this model will be providing
| |
closedLoopStatus | ClosedLoopStatus | 1 | Experimental OpenModelAttribute
| Whether closed loop capabilities are enabled for this or not.
| |
_nfc (vnfcinstance) | Vnfc | 1..* | Experimental OpenModelAttribute
| Relatonship to the NF components that are part of this VNF.
| |
_vnfd | Vnfd | 1 | Experimental OpenModelAttribute
| Relationship to the VNF descriptor
| |
_vnfvirtuallink | VnfVirtualLink | 0..* | Experimental OpenModelAttribute
| Relationship to VnfVirtualLink
|
Class: Vdu
Attribute Name | Type | Mult. | Stereotypes | Description | Rationale |
vduId | Identifier | 1 | Preliminary OpenModelAttribute
| Unique identifier of this Vdu in VNFD.
| |
name | String | 1 | Preliminary OpenModelAttribute
| Human readable name of the Vdu.
| |
description | String | 1 | Preliminary OpenModelAttribute
| Human readable description of the Vdu.
| |
bootOrder | KeyValuePair | 0..* | Preliminary OpenModelAttribute
| Boot order of valid boot devices. NOTE: If no boot order is defined the default boot order defined in the VIM or NFVI shall be used.
| |
nfviConstraint | KeyValuePair | 0..* | Preliminary OpenModelAttribute
| 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.
| |
monitoringParameter | MonitoringParameter | 0..* | Preliminary OpenModelAttribute
| Defines the virtualised resources monitoring parameters on VDU level.
| |
injectFiles | String | 0..* | Preliminary OpenModelAttribute
| Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process.
| |
configurableProperties | VnfcConfigurableProperties | 1 | Preliminary OpenModelAttribute
| Describes the configurable properties of all VNFC instances based on this VDU.
| |
_vduCpd | VduCpd | 1 | Preliminary OpenModelAttribute
| Describes network connectivity between a VNFC instance (based on this Vdu) and an Virtual Link (VL).
| |
_virtualComputeDesc | VirtualComputeDesc | 1..* | Preliminary OpenModelAttribute
| Describes CPU, Memory and acceleration requirements of the Virtualisation Container realising this Vdu.
| |
_virtualStorageDesc | VirtualStorageDesc | 0..* | Preliminary OpenModelAttribute
| Describes storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu.
| |
_swImageDesc | SwImageDesc | 0..1 | Preliminary OpenModelAttribute
| Describes the software image which is directly loaded on the virtualisation container realising this Vdu. NOTE: More software images can be attached to the virtualisation container using VirtualStorage resources.
| |
_dependsOn | Vdu | 0..* | OpenModelAttribute
| Specify instantiation priority and dependencies of VDU.
| Each template will write the other VDUs that needed deployed before instantiating this VDU. When VDU A points to VDU B and C, it means need B and C instantiated first. If B needs D and E, then will deploy D and E in advance, utill finding no dependcy, namely the atomic ones. 0 means no dependency. |
Class: VduCpd
Attribute Name | Type | Mult. | Stereotypes | Description | Rationale |
bitrateRequirement | Number | 0..1 | Preliminary OpenModelAttribute
| Bitrate requirement on this CP.
| |
vnicName | String | 0..1 | Preliminary OpenModelAttribute
| Describes the name of the vNIC this CP attaches to, e.g. eth0. It will be configured during the Vdu booting process.
| |
vnicOrder | String | 0..1 | Preliminary OpenModelAttribute
| Describes the order to create the vNIC within the scope of this Vdu.
| |
vnicType | VnicType | 0..1 | Preliminary OpenModelAttribute
| Describes the type of the vNIC this CP attaches to.
| |
_virtualNetworkInterfaceRequirements | VirtualNetworkInterfaceRequirements | 0..* | Preliminary OpenModelAttribute
| Specifies requirements on a virtual network interface realising the CPs instantiated from this CPD.
| |
securityGroups | String | 0..* | OpenModelAttribute
| VNFD needs to specify the security group name {security_groups} for each vNic.
| See description. |
portSecurityEnabled | Boolean | 0..1 | OpenModelAttribute
| VNFD needs to specify whether to enable security group for the vNic.
| See description. |
_qos | QoS | 0..1 | OpenModelAttribute
| Describe the Qos requirements of the VduCpd.
| See description. Qos should be put in the Class level, and thus there should be an association. Note: In this proposal, I first supplement requirments for "Qos", you can find 3 new attributes in "Qos" class; then need the Qos requirements for VduCpd, namely this association. |
cpdId | Identifier | 1 | Preliminary OpenModelAttribute
| Identifier of this Cpd information element.
| |
cpRole | String | 0..1 | Preliminary OpenModelAttribute
| 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.
| |
description | String | 0..1 | Preliminary OpenModelAttribute
| Provides human-readable information on the purpose of the CP (e.g. CP for control plane traffic).
| |
cpProtocol | CpProtocolData | 1..* | Preliminary OpenModelAttribute
| 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 and not included in this table.
| |
trunkMode | Boolean | 1 | Preliminary OpenModelAttribute
| Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).
| |
allowedAddressData | AddressData | 0..* | Preliminary OpenModelAttribute
| For specifying floating IP(s) to be shared among Cpds, which are reserved for vnfReservedCpd described in the VNFD.
|
Class: VduProfile
Attribute Name | Type | Mult. | Stereotypes | Description | Rationale | ||
vdudId | Identifier | 1 | Preliminary OpenModelAttribute
| Uniquely identifies a VDU.
| |||
minNumberOfInstances | Integer | 1 | Preliminary OpenModelAttribute
| Minimum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour.
| |||
maxNumberOfInstances | Integer | 1 | Preliminary OpenModelAttribute
| Maximum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour.
| |||
localAffinityOrAntiAffinityRule | LocalAffinityOrAntiAffinityRule | 0..* | Preliminary OpenModelAttribute
| Specifies affinity or anti-affinity rules applicable between the virtualisation containers (e.g. virtual machines) to be created based on this VDU.
| |||
affinityOrAntiAffinityGroupId | Identifier | 0..* | Preliminary OpenModelAttribute
| Identifier(s) of the affinity or anti-affinity group(s) the VDU belongs to. NOTE: Each identifier references an affinity or anti-affinity group which expresses affinity or anti-affinity relationships between the virtualisation container(s) (e.g. virtual machine(s)) to be created using this VDU and the virtualisation container(s) (e.g. virtual machine(s)) to be created using other VDU(s) in the same group.
| |||
watchdog | String | 0.. | |||||
Attribute Name | Type | Mult. | Stereotypes | Description | |||
vnfProvider | String | 1 | Preliminary OpenModelAttribute
| Provider of the VNF and of the VNFD.
| |||
vnfProductName | String | 1 | Preliminary OpenModelAttribute
| Watchdog action to be triggered by the VIM for the VNF in case the heart beat fails, e.g. reset or hard shutdown, etc. Name to identify the VNF Product. Invariant for the VNF Product lifetime.
| |||
vnfSoftwareVersionvmBootUpTimeOut | StringInteger | 0..1 | Preliminary OpenModelAttribute
| Timeout value for the VNFM to wait before the successful booting up of the VDU. Software version of the VNF. This is changed when there is any change to the software that is included in the VNF Package.
| |||
vnfdVersionsecurityGroups | String | 1 | 0..* | Preliminary OpenModelAttribute
| Identifies the version of the VNFDVNFD needs to specify the security group name {security_groups} for each VDU.
| vnfProductInfoName | See description. |
flavorExtraSpecs | KeyValuePairString | 0..1* | Preliminary OpenModelAttribute
| Human readable name for the VNF Product. Can change during the VNF Product lifetimeAdditional expansion requirements for Infrastructure layer, e.g. HA property (Host Aggregate label).
| This attribute is the extension for Openstack flavor, currently including:
|
Class: VirtualStorageDesc
Attribute Name | Type | Mult. | Stereotypes | Description | Rationale | |||
id | Identifier | 1 | ||||||
vnfProductInfoDescription | String | 0..1 | Preliminary OpenModelAttribute
| Human readable description of the VNF Product. Can change during the VNF Product lifetime.
| ||||
vnfmInfo | String | 0..* | Preliminary OpenModelAttribute
| Identifies VNFM(s) compatible with the VNF described in this version of the VNFD.
| ||||
localizationLanguage | String | 0..* | Preliminary OpenModelAttribute
| Unique identifier of this VirtualStorageDesc 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..
| ||||
modifiableAttributestypeOfStorage | VnfInfoModifiableAttributesString | 0..1 | Preliminary OpenModelAttribute
| Type of virtualised storage resource (e.g. volume, object). Defines the VNF-specific extension and metadata attributes of the VnfInfo that are writeable via the ModifyVnfInfo operation.
| ||||
vnfdIdsizeOfStorage | IdentifierNumber | 1 | Preliminary OpenModelAttribute
| Size of virtualised storage resource (e.g. size of volume, in GB). Identifier of this VNFD information element. This attribute shall be globally unique. NOTE: The VNFD Identifier shall be used as the unique identifier of the VNF Package that contains this VNFD. Any modification of the content of the VNFD or the VNF Package shall result in a new VNFD Identifier.
| ||||
defaultLocalizationLanguagevduStorageRequirements | StringKeyValuePair | 0..1* | Preliminary OpenModelAttribute
| An array of key-value pairs that articulate the storage deployment requirements. 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.
| ||||
configurablePropertiesrdmaEnabled | VnfConfigurablePropertiesBoolean | 0..1Preliminary | OpenModelAttribute
Obsolete | Indicate if the storage support RDMA. Describes the configurable properties of the VNF (e.g. related to auto scaling and auto healing).
| ||||
lifecycleManagementScriptswImageDesc | LifecycleManagementScriptIdentifier | 0..*1 | Preliminary OpenModelAttribute
| Includes a list of events and corresponding management scripts performed for the VNFSoftware image to be loaded on the VirtualStorage resource created based on this VirtualStorageDesc.
| ||||
multiAttachlogo | StringBoolean | 0..1 | Preliminary OpenModelAttribute
| File path of the vendor specified logoIndicating whether a vDisk is a shared volume in VNFD.
| guide | Each vDisk corresponds to one volume, it should set if the volume can be shared by other VMs. | ||
_storageQos | StorageQosString | 0..1Preliminary | OpenModelAttribute
| UUID of the vendor guide/documentation which is attached to VNF and can be downloaded from the model.
| Describe storage Qos requirements.
| Describe special Qos requirements for storage, see datatype"StorageQos" for details. | ||
_volumeType | VolumeType | 0..1 | _vdu | Vdu | 1..* | Preliminary | OpenModelAttribute
| Virtualisation Deployment Unit.Describe the volume type a storage is based on.
|
_vnfExtCpd | VnfExtCpd | 1..* | Preliminary OpenModelAttribute
| Describes external interface(s) exposed by this VNF enabling connection with a VL.
| _deploymentFlavour | VnfDf | 1..* | Preliminary|
In Openstack, a backend can have multiple volume types to choose, when instantiate a vStorage, must specify one volume type. |
Datatype: L2ProtocolData
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale |
name (Aligned with IFA 011v2.5.1) | String | 0..1 | RW | OpenModelAttribute
|
Preliminary
OpenModelAttributeNetwork name associated with this L2 protocol.
|
_vnfIndicator
VnfIndicator
0..*
networkType (Aligned with IFA 011v2.5.1) | NetworkType | 0..1 | RW | OpenModelAttribute |
Preliminary
OpenModelAttribute
|
Declares the VNF indicators that are supported by this VNF.
_virtualComputeDesc
VirtualComputeDesc
0..*
Specifies the network type for this L2 protocol. Possible values: FLAT, VLAN, VXLAN, GRE. | ||||
vlanTransparent (Aligned with IFA 011v2.5.1) | Boolean | 0..1 | RW | OpenModelAttribute |
_virtualStorageDesc
VirtualStorageDesc
0..*
Preliminary
OpenModelAttribute
|
Defines descriptors of virtual compute resources to be used by the VNF.
Indicating whether "VLAN Transparent Mode" is supported. Default is "FALSE" if not specified otherwise. | ||||
segmentationId | String | 0..1 | RW | OpenModelAttribute |
Preliminary
OpenModelAttribute
|
Defines descriptors of virtual storage resources to be used by the VNF.
_intVirtuallinkdesc
LinkDesc
0..*
Network segment ID. | The id of vlan/vxlan. | |||
physicalNetwork | String | 0..1 | RW | OpenModelAttribute |
Preliminary
OpenModelAttribute
|
Represents the type of network connectivity mandated by the VNF provider between two or more CPs which includes at least one internal CP.
_vnfReservedCpd
VduCpd
0..*
The connected physical network of network type (VLAN or VxLAN) . | When vlan or vxlan is going to connecting a physical network, it should specify the name of host port. | |||
routerExternal | Boolean | 0..1 | RW | OpenModelAttribute |
|
Specify if a vrouter comes from an external network. | There are two usage situations of vrouters, one is using in the virtual network internally, another is using to connet to the external network. This attribute shows the two situations, if "true", then the vrouter is using to connect another network; if "false", then using internally. |
Datatype: L3ProtocolData
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.
_elementGroup
VnfdElementGroup
0..*
Preliminary
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Describes the associated elements of a VNFD for a certain purpose during VNF lifecycle management.
veVnfmVnfInterface
String
0..1
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale |
cidr (Aligned with IFA 011v2.5.1) | String | 1 | RW |
Attribute Name
Type
Mult.
Stereotypes
Description
vduId
Identifier
1
Preliminary
OpenModelAttributeOpenModelAttribute
|
IP Address between VNF and VNFM.
comment:check with IFA 2.6.1
Class: Vdu
Specifies the CIDR (Classless Inter- Domain Routing) of this L3 protocol. See note.
| ||||
ipAllocationPools (Aligned with IFA 011v2.5.1) | KeyValuePair | 0..N | RW | OpenModelAttribute |
|
Specifies the allocation pools with start and end IP addresses for this L3 protocol. See note . |
name
String
1
Preliminary
OpenModelAttribute gatewayIp (Aligned with IFA 011v2.5.1) | IpAddress | 0..1 | RW | OpenModelAttribute |
|
Specifies the gateway IP address for this L3 protocol. See note. |
description
String
1
Preliminary
OpenModelAttributeipVersion (Aligned with IFA 011v2.5.1) | IpVersion | 1 | RW | OpenModelAttribute |
|
Specifies IP version of this L3 protocol. | |
dhcpEnabled (Aligned with IFA 011v2.5.1)
|
bootOrder
KeyValuePair
Boolean | 0 |
.. |
1 |
RW |
OpenModelAttribute
|
Boot order of valid boot devices. NOTE: If no boot order is defined the default boot order defined in the VIM or NFVI shall be used.
nfviConstraint
KeyValuePair
0..*
Preliminary
OpenModelAttributeIndicates whether DHCP (Dynamic Host Configuration Protocol) is enabled or disabled for this L3 protocol. See note. | ||||
ipv6AddressMode (Aligned with IFA 011v2.5.1) | Ipv6AddressMode | 0..1 | RW | OpenModelAttribute |
|
monitoringParameter
MonitoringParameter
0..*
| Specifies IPv6 address mode. Possible values: • SLAAC. • DHCPV6-STATEFUL. • DHCPV6-STATELESS. May be present when the value of the ipVersion attribute is "IPV6" and shall be absent otherwise. See Note. | |||
ipv6RaMode | Ipv6AddressMode | 0..1 | RW |
Preliminary
OpenModelAttribute
OpenModelAttribute
|
Defines the virtualised resources monitoring parameters on VDU level.
injectFiles
String
0..*
Preliminary
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process.
configurableProperties
VnfcConfigurableProperties
1
Preliminary
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Describes the configurable properties of all VNFC instances based on this VDU.
_vduCpd
VduCpd
1
Specifies IPv6 address mode for vrouter. Possible values: • SLAAC. • DHCPV6-STATEFUL. • DHCPV6-STATELESS. May be present when the value of the ipVersion attribute is "IPV6" and shall be absent otherwise. Must be present when the VLAN/VXLAN connects to one or more vrouters. Note2: The value of ipv6RaMode and ipv6AddressMode must be same. | This attribute comes from Openstack demand, the address mode should be separately set for vRouter and dhcp. The usage for the ipv6RaMode and ipv6AddressMode has the following situation:
| |||
hostRoutes | KeyValuePair | 0..N | RW | OpenModelAttribute |
_virtualComputeDesc
VirtualComputeDesc
1..*
Preliminary
OpenModelAttribute
|
Describes network connectivity between a VNFC instance (based on this Vdu) and an Virtual Link (VL).
Static routing list, including estination and nexthop information. | See description. Estination and nexthop will be provided by network elements. | |||
dnsNameServers | String | 0..N | RW | OpenModelAttribute |
| DNS server list. | See description. | ||||
Note: If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value is provided at design time in the VNFD. If a default value is provided at design-time, this value may be overridden at run-time. |
Class: Qos (Suggest to change to class instead of data type)
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale |
latency | Number | 1 | RW | Describes CPU, Memory and acceleration requirements of the Virtualisation Container realising this Vdu.
| ||
_virtualStorageDesc | VirtualStorageDesc | 0..* | Preliminary OpenModelAttribute
| Describes storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu.
| ||
_swImageDesc | SwImageDesc | 0..1 | Preliminary | OpenModelAttribute
Preliminary | Maximum latency in msDescribes the software image which is directly loaded on the virtualisation container realising this Vdu. NOTE: More software images can be attached to the virtualisation container using VirtualStorage resources.
| |
packetDelayVariation | dependOnNumber | Identifier | 1 | RW0..* | OpenModelAttribute
Preliminary | Maximum jitter in msSpecify instantiation priority and dependencies of VDU.
|
Class: VduCpd
packetLossRatio | Number | 0..1 | RW | OpenModelAttribute
Preliminary | Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists.
| |||
qosId | Identifier | 1 | RW | |||||
Attribute Name | Type | Mult. | Stereotypes | Description | ||||
bitrateRequirement | Number | 0..1 | Preliminary | OpenModelAttribute
| Bitrate requirement on this CP Qos ID.
| Give Qos an id for muliple classes to quote. This means Qos will be a class. | ||
qosNamevnicName | String | 0..1 | PreliminaryRW | OpenModelAttribute
| Human readable Qos nameDescribes the name of the vNIC this CP attaches to, e.g. eth0. It will be configured during the Vdu booting process.
| vnicOrder | Human readable name, corresponding to qosId. | |
rules | KeyValuePairString | 0..1* | PreliminaryRW | OpenModelAttribute
| Describes the order to create the vNIC within the scope of this Vdu Detailed requirements of Qos, including maximum bandwidth limitation{max_kbps}、maximum burst bandwidth limitation{max_burst_kbps} 、direction{egress|ingress},etc.
| See description. Note: the whole Qos attributes are needed for both VL and VduCpd. |
Class: StorageQos
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale | |||
qosId | Identifier | 1 | RW | ||||||
vnicType | VnicType | 0..1 | Preliminary OpenModelAttribute
| Describes the type of the vNIC this CP attaches to.
| |||||
_virtualNetworkInterfaceRequirements | VirtualNetworkInterfaceRequirements | 0..* | Preliminary | OpenModelAttribute
| Specifies requirements on a virtual network interface realising the CPs instantiated from this CPD Unique identifier of the storage Qos in VNFD.
| See description. | |||
sriovAntiAffinityGroupqosName | IdentifierString | 0..1 | RW | OpenModelAttribute
| Define the port anti-affinity group ID for each SR-IOV type vNIC. Multiple vNICs in the same anti-affinity group must belong to the same virtual network, and the number of vNICs in the same anti-affinity group cannot exceed two. comment: need to check.
|
| Name of storage QoS.
| Human readable name, corresponding to the Id. | |
consumer | ConsumerScope | 1 | RW | OpenModelAttribute
| Consumer type.
| Identify the volume which a Storge is based on comes from the backend or local. | |||
qosSpecs | KeyValuePair | securityGroups | String | 0..* | RW | OpenModelAttribute
| VNFD needs to specify the security group name {security_groups} for each vNic. comment: check with IFA.
| Describe qualities of Qos:total read/write rate{total_bytes_sec}、total read/write IOPS{total_iops_sec}.
| This is used for the information of basic stroge Qos requirements. |
Class: VolumeType
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale | |||
volumeTypeId | Identifier | 1 | RW | ||||||
portSecurityEnabled | Boolean | 0..1 | OpenModelAttribute
| VNFD needs to specify whether to enable security group for each vNic. Coment: to put as the same level as the securityGroups, as the cpd level as in IFA.
| |||||
cpdId | Identifier | 1 | Preliminary | OpenModelAttribute
| Identifier of this Cpd information element Unique identifier of volume type in VNFD.
| See description. | |||
cpRolevolumeTypeName | String | 0..1 | PreliminaryRW | OpenModelAttribute
| 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.
| description | String | Name of volume type.
| Human readable name, corresponding to the Id. |
backendName | String | 1 | RW | 0..1 | Preliminary | OpenModelAttribute
| Name of the object linking to the backend distributed storage.(Name in cinder)
| Each volume type has a corresponding backend, the name is also the name in Openstack Cinder configuration. |
Class: VnfDf
cpProtocolAttribute Name | CpProtocolDataType | Mult. | Stereotypes | Description | |||||||
flavorId | Identifier | 1 | 1..* | Preliminary | OpenModelAttribute
| 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 and not included in this table.
| trunkMode | Boolean | 1 | Preliminary | Identifier of this DF within the VNFD. |
description | String | 1 | OpenModelAttribute
Preliminary | Human readable description of the DF. | |||||||
_virtuaLlinkProfile | VirtualLinkProfile | 0..*Preliminary | OpenModelAttribute
| Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).
| |||||||
allowedAddressData | AddressData | 0..* | Preliminary OpenModelAttribute
| For specifying floating IP(s) to be shared among Cpds, which are reserved for vnfReservedCpd described in the VNFD.
|
Class: VduProfile
Preliminary | 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. | |||||||||||
_instantiationLevel | InstantiationLevel | 1..* | OpenModelAttribute
Preliminary | 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. | ||||||||
_affinityOrAntiAffinityGroup | AffinityOrAntiAffinityGroup | 0..* | ||||||||||
Attribute Name | Type | Mult. | Stereotypes | Description | ||||||||
vdudId | Identifier | 1 | Preliminary OpenModelAttribute
| Uniquely identifies a VDU.
|
Preliminary | 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. | ||||||
_scalingAspect | ScalingAspect | 0..* | minNumberOfInstances | Integer | 1 | Preliminary | OpenModelAttribute
Preliminary | The scaling aspects supported by this DF of the VNF. scalingAspect shall be present if the VNF supports scaling. | ||||
_vduProfile | VduProfile | 1..* | Minimum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour.
| maxNumberOfInstances | Integer | 1 | Preliminary OpenModelAttribute
Preliminary | Describes additional instantiation data for the VDUs used in this flavorMaximum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour. | ||||
_vduCpdProfile | VduCpdProfile | 1 | localAffinityOrAntiAffinityRule | LocalAffinityOrAntiAffinityRule | 0..* | Preliminary OpenModelAttribute |
| Specifies affinity or anti-affinity rules applicable between the virtualisation containers (e.g. virtual machines) to be created based on this VDU.
| affinityOrAntiAffinityGroupId | Identifier | Preliminary | Describes additional instantiation data for the vduCpds used in this flavour. |
_placementGroup | PlacementGroup | 0..*Preliminary | OpenModelAttribute
| Identifier(s) of the affinity or anti-affinity group(s) the VDU belongs to. NOTE: Each identifier references an affinity or anti-affinity group which expresses affinity or anti-affinity relationships between the virtualisation container(s) (e.g. virtual machine(s)) to be created using this VDU and the virtualisation container(s) (e.g. virtual machine(s)) to be created using other VDU(s) in the same group.
| watchdog | String | 0..1 |
Preliminary | Determine where VNFC's (VDU's) are placed with respect to the VNF | |||
_baseConfigGroup | BaseConfigGroup | 1 | Preliminary OpenModelAttribute
Preliminary | 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. | ||||||||
_deploymentGroup | DeploymentGroup | 0..* | Watchdog action to be triggered by the VIM for the VNF in case the heart beat fails, e.g. reset or hard shutdown, etc.
| vmBootUpTimeOut | Integer | 0..1 | Preliminary OpenModelAttribute
Preliminary | DeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF. | ||||
_scalinggroup | ScalingGroup | Timeout value for the VNFM to wait before the successful booting up of the VDU.
| securityGroups | String | 0..* | OpenModelAttribute
| VNFD needs to specify the security group name {security_groups} for each VDU.
|
...
Preliminary | Identifies the vaious scaling groups within the VNF which identify which vnfcs that need to be scaled together. |
Class: VduCpdProfile
Attribute Name | Type | Mult. | Stereotypes | Descriptionid |
_vduCpd | IdentifierVduCpd | 1 | Preliminary OpenModelAttribute
| Unique identifier of this VirtualStorageDesc in the VNFD.
|
typeOfStorage | String | 1 | Preliminary OpenModelAttribute
| Type of virtualised storage resource (e.g. volume, object).
|
Preliminary | Uniquely identifies a VduCpd. | |||
_AffinityOrAntiAffinityGroup | AffinityOrAntiAffinityGroup | 0..* | OpenModelAttribute
Preliminary | Identifier(s) of the affinity or anti-affinity group(s) the VduCpd belongs to. |
Class: AffinityOrAntiAffinityGroup
Attribute Name | Type | Mult. | Access | Stereotypes | Description | ||||
groupId | Identifier | 1 | RW | sizeOfStorage | Number | 1 | OpenModelAttribute |
Preliminary | Identifies an affinity or anti-affinity group to which the affinity or anti-affinity rule applies. |
type | RuleType | 1 | RW | Size of virtualised storage resource (e.g. size of volume, in GB).
| vduStorageRequirements | KeyValuePair | 0..* | Preliminary OpenModelAttribute
Preliminary | Specifies whether the rule is an affinity rule or an anti-affinity ruleAn array of key-value pairs that articulate the storage deployment requirements.
|
rdmaEnabledscope | BooleanRuleScope | 0..1 | RW | OpenModelAttribute
Obsolete Preliminary | Specifies the scope of the ruleIndicate if the storage support RDMA.
| ||||
swImageDesc | Identifier | 0..1 | Preliminary OpenModelAttribute
| Software image to be loaded on the VirtualStorage resource created based on this VirtualStorageDesc.
| |||||
multiAttach | Boolean | 0..1 | OpenModelAttribute
| Indicating whether a vDisk is a shared volume in VNFD.
|
...
Currently, the scopes of the rule include:
Suggest to add NFVI_NIC.
|
Enumerations
1. ConsumerScope
Contains Enumeration Literals:
- BACK_END
- LOCAL
2. NetworkType
Contains Enumeration Literals:
- VLAN
- VXLAN
- FLAT
- GRE
3. IpVersionContains Enumeration Literals:
- IPv4
- IPv6
4. AssociatedLayerProtocol
Contains Enumeration Literals:
Ethernet, MPLS, ODU2, IPV4, IPV6 and Pseudo-Wire.