Table of Contents | ||
---|---|---|
|
...
These diagrams come from papyrus based on R3 vnf model clean, blue ones are new requirements added.
ONAP Vnfd View
ONAP Vnfd - Topology View
Vnf Deployment Flavor
VNF Instance
Class: Vnf
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.. |
Attribute Name
Type
Mult.
Stereotypes
Description
vnfInstanceId
Identifier
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.
|
isClosedLoopDisabled
Boolean
_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
|
|
nfNamingCode
String
1
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
String assigned to this model used for naming purpose.
vnfNamingPolicyId
String
1
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 |
String
1
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 |
String
1
KeyValuePair | 0..* | Preliminary |
OpenModelAttribute
|
Role in the network this model will be providing
closedLoopStatus
ClosedLoopStatus
1
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
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.
|
_nfc (vnfcinstance)
Vnfc
monitoringParameter | MonitoringParameter | 0 |
..* |
Preliminary OpenModelAttribute
|
Defines the virtualised resources monitoring parameters on VDU level.
|
_vnfd
Vnfd
1
injectFiles | String | 0..* | Preliminary |
OpenModelAttribute
|
Relationship to the VNF descriptor
_vnfvirtuallink
VnfVirtualLink
0..*
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Relationship to VnfVirtualLink
veVnfmVnfInterface
String
0..1
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.
|
...
...
Attribute Name | Type | Mult. | Stereotypes | Description | |||||
_vduCpd | VduCpd | vduId | Identifier | 1 | Preliminary OpenModelAttribute
| Describes network connectivity between a VNFC instance (based on this Vdu) and an Virtual Link (VL)Unique identifier of this Vdu in VNFD.
| |||
_virtualComputeDesc | VirtualComputeDesc | name | String | 1..* | Preliminary OpenModelAttribute
| Human readable name Describes CPU, Memory and acceleration requirements of the Virtualisation Container realising this Vdu.
| |||
description_virtualStorageDesc | String | VirtualStorageDesc | 0..*1 | Preliminary OpenModelAttribute
| Describes storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu. Human readable description of the Vdu.
| ||||
bootOrder_swImageDesc | KeyValuePairSwImageDesc | 0..*1 | Preliminary OpenModelAttribute
| Boot order of valid boot devicesDescribes the software image which is directly loaded on the virtualisation container realising this Vdu. NOTE: If no boot order is defined the default boot order defined in the VIM or NFVI shall be usedMore software images can be attached to the virtualisation container using VirtualStorage resources.
| nfviConstraint | ||||
_dependsOn | Vdu | 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..*
| 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.
|
_virtualStorageDesc
securityGroups | String | 0..* |
OpenModelAttribute
|
VNFD needs to specify the security group name {security_groups} for each vNic.
|
_swImageDesc
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
|
...
Attribute Name
Type
Mult.
Stereotypes
Description
bitrateRequirement
Number
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 |
VirtualNetworkInterfaceRequirements
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 | OPTIONALDefine 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: creat cpd profile, define the number of instances.
| securityGroups | String | 0..* OpenModelAttribute
| VNFD needs to specify the security group name {security_groups} for each vNicUniquely identifies a VDU.
| |
minNumberOfInstancesportSecurityEnabled | BooleanInteger | 0..1 | Preliminary OpenModelAttribute
| VNFD needs to specify whether to enable security group for the vNicMinimum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour.
| |||||
maxNumberOfInstancesqos | QoSInteger | 0..1 | Preliminary OpenModelAttribute
| Describe the Qos requirements Maximum number of instances of the VduCpd.VNFC based on this VDU that is permitted to exist for this flavour.
| |||||
cpdIdlocalAffinityOrAntiAffinityRule | Identifier | LocalAffinityOrAntiAffinityRule | 0..*1 | Preliminary OpenModelAttribute
| Specifies affinity or anti-affinity rules applicable between the virtualisation containers (e.g. virtual machines) to be created based on this VDU. Identifier of this Cpd information element.
| ||||
cpRoleaffinityOrAntiAffinityGroupId | StringIdentifier | 0..1* | 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. 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.
| |||||
descriptionwatchdog | String | 0..1 | Preliminary OpenModelAttribute
| Provides human-readable information on the purpose of the CP (e.g. CP for control plane traffic)Watchdog action to be triggered by the VIM for the VNF in case the heart beat fails, e.g. reset or hard shutdown, etc.
| |||||
vmBootUpTimeOutcpProtocol | CpProtocolDataInteger | 10..*1 | Preliminary OpenModelAttribute
| 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 VDUIdentifies 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 | See description. | |
flavorExtraSpecs | KeyValuePair | 0..*Preliminary | OpenModelAttribute
| Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or otherAdditional expansion requirements for Infrastructure layer, e.g. HA property (Host Aggregate label).
| |||||
allowedAddressData | AddressData | 0..* | Preliminary OpenModelAttribute
| For specifying floating IP(s) to be shared among Cpds, which are reserved for vnfReservedCpd described in the VNFD.
|
...
This attribute is the extension for Openstack flavor, currently including:
|
Class: VirtualStorageDesc
Attribute Name | Type | Mult. | Stereotypes | Description | |||||
vdudId | Identifier | 1 | Preliminary OpenModelAttribute
| Uniquely identifies a VDU.
| |||||
Description | Rationale | ||||||||
id | Identifier | minNumberOfInstances | Integer | 1 | Preliminary OpenModelAttribute
| Unique identifier of this VirtualStorageDesc in the VNFD. Minimum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour.
| |||
maxNumberOfInstancestypeOfStorage | IntegerString | 1 | Preliminary OpenModelAttribute
| Type of virtualised storage resource (e.g. volume, object). Maximum number of instances of the VNFC based on this VDU that is permitted to exist for this flavour.
| |||||
localAffinityOrAntiAffinityRulesizeOfStorage | LocalAffinityOrAntiAffinityRule | Number | 10..* | Preliminary OpenModelAttribute
| Specifies affinity or anti-affinity rules applicable between the virtualisation containers Size of virtualised storage resource (e.g. virtual machines) to be created based on this VDU.size of volume, in GB).
| ||||
affinityOrAntiAffinityGroupIdvduStorageRequirements | IdentifierKeyValuePair | 0..* | Preliminary OpenModelAttribute
| An array of key-value pairs that articulate the storage deployment requirements.
| |||||
rdmaEnabled | Boolean | 0..1 | OpenModelAttribute
Obsolete | Indicate if the storage support RDMAIdentifier(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.
| |||||
swImageDescwatchdog | StringIdentifier | 0..1 | Preliminary OpenModelAttribute
| Watchdog action Software image to be triggered by loaded on the VirtualStorage resource created based on this VirtualStorageDesc. VIM for the VNF in case the heart beat fails, e.g. reset or hard shutdown, etc.
| |||||
vmBootUpTimeOutmultiAttach | IntegerBoolean | 0..1Preliminary | OpenModelAttribute
| Indicating whether a vDisk is a shared volume in VNFD.
MANDATORY | Timeout value for the VNFM to wait before the successful booting up of the VDU.
| Each vDisk corresponds to one volume, it should set if the volume can be shared by other VMs. | |||
_storageQos | StorageQos | securityGroups | String | 0..*1 | OpenModelAttribute
| VNFD needs to specify the security group name {security_groups} for each VDUDescribe storage Qos requirements.
| flavorExtraSpecs | Describe special Qos requirements for storage, see datatype"StorageQos" for details. | |
_volumeType | VolumeTypeKeyValuePair | 0..*1 | OpenModelAttribute
| Describe the volume type a storage is based on. Additional expansion requirements for Infrastructure layer, e.g. HA property (Host Aggregate ).
|
...
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 |
localAffinityOrAntiAffinityRule
Rationale | |
name (Aligned with IFA 011v2.5.1) | String |
0.. |
1 |
0..*
Preliminary
OpenModelAttributeRW | OpenModelAttribute
|
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.
affinityOrAntiAffinityGroupId
Identifier
Network name associated with this L2 protocol.
| ||||
networkType (Aligned with IFA 011v2.5.1) | NetworkType | 0..1 | RW | OpenModelAttribute |
maxBitRateRequirements
LinkBitrateRequirements
1
Preliminary
OpenModelAttribute
|
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.
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 |
|
Specifies the minimum bitrate requirements for a VL instantiated according to this profile.
minBitRateRequirements
LinkBitrateRequirements
1
Preliminary
OpenModelAttributeIndicating whether "VLAN Transparent Mode" is supported. Default is "FALSE" if not specified otherwise. | ||||||
segmentationId | String | 0..1 | RW | OpenModelAttribute
| Network segment ID. | The id of vlan/vxlan. |
physicalNetwork | String | 0..1 | RW | OpenModelAttribute |
|
Specifies the minimum bitrate requirements for a VL instantiated according to this profile.
initiationParameters
KeyValuePair
0..*
Preliminary
OpenModelAttributeThe 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 |
|
Specifies initiation parameters for the virtual link.
_virtualLinkDescFlavour
VirtualLinkDescFlavour
1
Preliminary
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Identifies a flavour within the VnfVirtualLinkDesc.
_virtualLinkDesc
LinkDesc
1
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
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale |
cidr (Aligned with IFA 011v2.5.1) | String | 1 | RW |
OpenModelAttribute
|
Specifies the CIDR (Classless Inter- Domain Routing) of this L3 protocol. See note.
|
virtualLinkProtocolData
ipAllocationPools (Aligned with IFA 011v2.5.1) | KeyValuePair |
0.. |
N | RW |
OpenModelAttribute
| Specifies the |
Attribute Name
Type
Mult.
Stereotypes
Description
id
Identifier
1
Preliminary
OpenModelAttributeallocation pools with start and end IP addresses for this L3 protocol. See note . |
Class: VirtualStorageDesc
gatewayIp (Aligned with IFA 011v2.5.1) | IpAddress | 0..1 | RW | OpenModelAttribute |
|
Specifies the gateway IP address for this L3 protocol. See note. |
typeOfStorage
String
1
Preliminary
OpenModelAttributeipVersion (Aligned with IFA 011v2.5.1) | IpVersion | 1 | RW | OpenModelAttribute |
Preliminary
OpenModelAttribute
|
Type of virtualised storage resource (e.g. volume, object).
sizeOfStorage
Number
1
Specifies IP version of this L3 protocol. | ||||
dhcpEnabled (Aligned with IFA 011v2.5.1)
| Boolean | 0..1 | RW | OpenModelAttribute |
vduStorageRequirements
KeyValuePair
0..*
Preliminary
OpenModelAttribute
|
Size of virtualised storage resource (e.g. size of volume, in GB).
Indicates 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 |
|
An array of key-value pairs that articulate the storage deployment requirements.
rdmaEnabled
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 | OpenModelAttribute
|
Obsolete
Indicate if the storage support RDMA.
swImageDesc
Identifier
0..1
Preliminary
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Software image to be loaded on the VirtualStorage resource created based on this VirtualStorageDesc.
multiAttach
Boolean
0..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 |
storageQos
StorageQos
0..1
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
Describe storage Qos.
volumeType
VolumeType
0..1
|
Indicating whether a vDisk is a shared volume in VNFD.
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 |
associatedLayerProtocol
invalid
1
RW
OpenModelAttribute
Rationale |
latency |
Number |
L2ProtocolData
1 | RW | OpenModelAttribute
|
Preliminary | Maximum latency in ms.
|
packetDelayVariation |
Number |
1 | RW | OpenModelAttribute
|
Preliminary | Maximum jitter in ms.
|
...
...
packetLossRatio |
networkName
String
Number |
Mult.
Access
Stereotypes
Description
0..1 | RW | OpenModelAttribute
Preliminary |
Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists.
|
qosId |
Identifier |
1 | RW |
OpenModelAttribute
|
Qos ID. |
|
| Give Qos an id for muliple classes to quote. This means Qos will be a class. | |||
qosName | String | 1 | RW | OpenModelAttribute |
|
Human readable Qos name.
| Human readable name, corresponding to qosId. | |||
rules | KeyValuePair | 0..* | RW | OpenModelAttribute |
| Detailed requirements of Qos, including maximum bandwidth |
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
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 | OpenModelAttribute |
|
Datatype: L3ProtocolData
Unique identifier of the storage Qos in VNFD.
| See description. |
qosName | String |
Attribute Name
Type
Mult.
Access
Stereotypes
Description
cidr
1 | RW | OpenModelAttribute
|
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 | 0..* | RW | OpenModelAttribute |
|
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 | OpenModelAttribute |
ipVersion
|
Define address type, value:
• IPv4 address.
• IPv6 address.Unique identifier of volume type in VNFD.
| See description. | ||
volumeTypeName | String | 1 | RW |
OpenModelAttribute
| Name of volume type.
|
Human readable name, corresponding to the Id. | |||
backendName | String | 1 | RW |
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
Attribute Name | Type | Mult. | Stereotypes | Description |
flavorId | Identifier | 1 |
OpenModelAttribute
|
Preliminary | Identifier of this DF within the VNFD. | |
description | String | 1 |
OpenModelAttribute
|
Preliminary | Human readable description of the DF. |
_virtuaLlinkProfile |
VirtualLinkProfile |
0.. |
* |
OpenModelAttribute
|
Datatype: Qos
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..* | ||||||||
Attribute Name | Type | Mult. | Access | Stereotypes | Description | |||||
latency | Number | 1 | RW | OpenModelAttribute
Preliminary | Maximum latency in ms.
| packetDelayVariation | Number | 1 | RW | 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..* | OpenModelAttribute
Preliminary | Maximum jitter in ms.
| ||||||
packetLossRatio | Number | 0..1 | RW | OpenModelAttribute
Preliminary | Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists.
| |||||
qosId | Identifier | 1 | RW | OpenModelAttribute
| Qos ID.
| |||||
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..* | qosName | String | 1 | RW | OpenModelAttribute
| Human readable Qos name.
| Preliminary | The scaling aspects supported by this DF of the VNF. scalingAspect shall be present if the VNF supports scaling. |
_vduProfile | VduProfile | 1..* | rules | KeyValuePair | 0..* | RW | OpenModelAttribute
| Detailed requirements of Qos, including maximum bandwidth limitation{max_kbps}、maximum burst bandwidth limitation{max_burst_kbps} 、direction{egress|ingress},etc.
|
Datatype: StorageQos
Preliminary | Describes additional instantiation data for the VDUs used in this flavor. | ||||||||||
_vduCpdProfile | VduCpdProfile | 1..* | OpenModelAttribute
Preliminary | Describes additional instantiation data for the vduCpds used in this flavour. | |||||||
_placementGroup | PlacementGroup | 0..* | |||||||||
Attribute Name | Type | Mult. | Access | Stereotypes | Description | ||||||
qosId | Identifier | 1 | RW | OpenModelAttribute
| Unique identifier of the storage Qos in VNFD.
| qosName | String | 1 | RW | Preliminary | Determine where VNFC's (VDU's) are placed with respect to the VNF |
_baseConfigGroup | BaseConfigGroup | 1 | 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..* | Name of storage QoS.
| consumer | consumerScope | 1 | RW | OpenModelAttribute
| Consumer type.
| Preliminary | DeploymentGroup provides the minimum viable VDU and associated VNFC configuration for a useable VNF. |
_scalinggroup | ScalingGroup | qos_specs | KeyValuePair | 0..* | RW | OpenModelAttribute
| Describe qualities of Qos:total_bytes_sec、total_iops_sec.
|
...
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. | Access | Stereotypes | DescriptionvolumeTypeId | |||||
_vduCpd | IdentifierVduCpd | 1 | RW | OpenModelAttribute
| Unique identifier of volume type in VNFD.
| volumeTypeName | String | 1 | Preliminary | Uniquely identifies a VduCpd. |
_AffinityOrAntiAffinityGroup | AffinityOrAntiAffinityGroup | 0..*RW | OpenModelAttribute
| Name of volume type.
| backendName | String | 1 | RW | OpenModelAttributePreliminary | 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 | OpenModelAttribute
| MANDATORYBackend volume name of cinder.
|
Datatype: LocalAffinityOrAntiAffinityRule
Preliminary | Identifies an affinity or anti-affinity group to which the affinity or anti-affinity rule applies. | Attribute Name | Type | Mult. | Access | Stereotypes | Description|
type | RuleType | 1 | RW | OpenModelAttribute
Preliminary | Specifies whether the rule is an affinity rule or an anti-affinity rule.
| ||
scope | RuleScope | 1 | RW | OpenModelAttribute
Preliminary | Specifies the scope of the rule. Currently Currently, the scopes scopes of the rule include:
Suggest to add NFVI_NIC.
|
Enumerations
Enumerations:
...
1. ConsumerScope
Contains Enumeration Literals:
- BACK_END
- LOCAL back-end
fr2. NetworkType
Contains Enumeration Literals:
- VLAN
- VXLAN
- FLAT
- GRE
3. IpVersionContains Enumeration Literals:
- IPv4 address
- IPv6 address
4. AssociatedLayerProtocol
Contains Enumeration Literals:
Ethernet, MPLS, ODU2, IPV4, IPV6 and Pseudo-Wire.