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
| ||||||
Attribute Name | Type | Mult. | Stereotypes | Description | |||||
vnfProvider | String | 1 | Preliminary OpenModelAttribute
| Provider of the VNF and of the VNFD.
| |||||
vnfProductName | String | 1 | Preliminary OpenModelAttribute
| Name to identify the VNF Product. Invariant for the VNF Product lifetime.
| |||||
vnfSoftwareVersion | String | 1 | Preliminary OpenModelAttribute
| Software version identifier of the VNF instance . This is changed when there is any change to the software that is included in the VNF Package.
| |||||
vnfdVersionvnfInstanceName | String | 1..* | PreliminaryExperimental OpenModelAttribute
| Identifies the version name of the VNFDVNF instance. Multiple names are possible.
| |||||
vnfProductNamevnfProductInfoName | String | 0..1 | PreliminaryExperimental OpenModelAttribute
| Human readable name for to identify the VNF Product. Can change during , invariant for the VNF Product lifetime.
| |||||
vnfProductInfoDescriptiondescription | Stringinvalid | 0..1 | PreliminaryExperimental OpenModelAttribute
| Human readable description of the VNF Product. Can change during the VNF Product lifetime.instance
| |||||
vnfProvider | invalid | 1 | Experimental OpenModelAttribute
| provider of the VNF model
| |||||
vnfmInfovnfdId | String | 0..* | Identifier | 1 | ExperimentalPreliminary OpenModelAttribute
| Identifies VNFM(s) compatible with identifier of the VNF described in this version of the VNFD.model
| |||
localizationLanguagevnfdVersion | String | 0..* | 1 | ExperimentalPreliminary OpenModelAttribute
| Information about localization languages version of the VNF model (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.
| ||||
modifiableAttributesvnfSoftwareVersion | VnfInfoModifiableAttributesString | 0..1 | PreliminaryExperimental OpenModelAttribute
| Defines Software version of the VNF. This is changed when there is any change to the software that is included in the VNF package -specific extension and metadata attributes of the VnfInfo that are writeable via the ModifyVnfInfo operation.
| |||||
vnfdIdonboardedVnfPkgInfoId | Identifier | 1 | PreliminaryExperimental OpenModelAttribute
| 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.specific VNF package on which the VNF instance is based
| |||||
defaultLocalizationLanguageavailabilityZone | Stringinvalid | 0..1 | PreliminaryExperimental OpenModelAttribute
| Information about localization languages availability zone information of the VNF instance (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.
| |||||
configurablePropertiesoperationalStatus | VnfConfigurablePropertiesOperationalStatus | 0..1 | PreliminaryExperimental OpenModelAttribute
| Describes the configurable properties of the VNF (e.g. related to auto scaling and auto healing)indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path.
| |||||
orchestrationStatuslifecycleManagementScript | LifecycleManagementScript | 0..* | OrchestrationStatus | 1 | ExperimentalPreliminary OpenModelAttribute
| whether the VNF instance is instantiated Includes a list of events and corresponding management scripts performed for the VNF.
| |||
oamlpv4Address | logo StringIpAddress | 0..1 | PreliminaryExperimental OpenModelAttribute
| File path of the vendor specified logo.oam ip address, ipv4
guide | |||||
Stringoamlpv6Address |
IpAddress | 0..1 | PreliminaryExperimental OpenModelAttribute
| oam ip address, ipv6 UUID of the vendor guide/documentation which is attached to VNF and can be downloaded from the model.
| |||||
_vduinstantiatedVnfInfo | Vduinvalid | 10..*1 | PreliminaryExperimental OpenModelAttribute
| Virtualisation Deployment Unit.information specific to an instantiated VNF instance, e.g., vm information
| _vnfExtCpd | VnfExtCpd | |||
inMaint | Boolean | 01..*1 | PreliminaryExperimental OpenModelAttribute
| Describes external interface(s) exposed by this VNF enabling connection with a VLwhether the VNF instance is in maintenance mode, if yes, DCAE will not observe alarms/traps, etc.
| |||||
isClosedLoopDisabled | Boolean | 0 | _deploymentFlavour | VnfDf | 1..*1 | PreliminaryExperimental OpenModelAttribute
| whether closed loop function is enabled Describes specific DF(s) of a VNF with specific requirements for capacity and performance.
| ||
_vnfIndicatorencryptedAccessFlag | VnfIndicatorBoolean | 0..*1 | PreliminaryExperimental OpenModelAttribute
| whether this VNF is accessed using SSH Declares the VNF indicators that are supported by this VNF.
| |||||
_virtualComputeDescvnfConfigurableProperty | VirtualComputeDescinvalid | 0..*1 | PreliminaryExperimental OpenModelAttribute
| indicator for whether autoHeal and autoScale is enabled Defines descriptors of virtual compute resources to be used by the VNF.
| |||||
_virtualStorageDescnfNamingCode | VirtualStorageDesc | 0..* | String | 1 | ExperimentalPreliminary OpenModelAttribute
| Defines descriptors of virtual storage resources to be used by the VNF.
| _intVirtuallinkdesc | String assigned to this model used for naming purpose.
| |
vnfNamingPolicyId | String | 1 | Experimental | LinkDesc | 0..* | Preliminary OpenModelAttribute
| Identifier of the policy which has the naming logic for this VNF instance Represents the type of network connectivity mandated by the VNF provider between two or more CPs which includes at least one internal CP.
| ||
_vnfReservedCpdvnfHomingPolicyId | VduCpd | 0..* | String | 1 | ExperimentalPreliminary OpenModelAttribute
| Identifier of the policy which provides homing conditions. 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.
| |||
_elementGroupnfType | VnfdElementGroup | 0..* | String | 1 | ExperimentalPreliminary OpenModelAttribute
| Describes the associated elements of a VNFD for a certain purpose during VNF lifecycle management.Generic description of the type of network function
| |||
nfFunction veVnfmVnfInterface (Run time instance model attribute) | String | 0..1 | Experimental OpenModelAttribute
IP Address between VNF and VNFM. comment:check with IFA 2.6.1
|
Class: Vdu
English description of network function that the specific VNF deployment is providing.
| ||||||||
nfRole | String | 1 | Experimental | |||||
Attribute Name | Type | Mult. | Stereotypes | Description | ||||
vduId | Identifier | 1 | Preliminary OpenModelAttribute
| Role in the network this model will be providing Unique identifier of this Vdu in VNFD.
| ||||
nameclosedLoopStatus | StringClosedLoopStatus | 1 | PreliminaryExperimental OpenModelAttribute
| Human readable name of the VduWhether closed loop capabilities are enabled for this or not.
| description | String | 1 | |
_nfc (vnfcinstance) | Vnfc | 1..* | ExperimentalPreliminary OpenModelAttribute
| Relatonship to the NF components that are part of this VNF. Human readable description of the Vdu.
| ||||
bootOrder_vnfd | KeyValuePair | 0..* | Vnfd | 1 | ExperimentalPreliminary OpenModelAttribute
| Relationship to the VNF descriptor 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_vnfvirtuallink | KeyValuePairVnfVirtualLink | 0..* | PreliminaryExperimental 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.
| Relationship to VnfVirtualLink
|
Class: Vdu
Attribute Name | Type | Mult. | Stereotypes | Description | Rationale | |||
vduId | Identifier | 1 | monitoringParameter | MonitoringParameter | 0..* | Preliminary OpenModelAttribute
| Unique identifier of this Vdu in VNFD. Defines the virtualised resources monitoring parameters on VDU level.
| |
injectFilesname | String | 0..*1 | Preliminary OpenModelAttribute
| Human readable name of the Vdu. Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process.
| ||||
configurablePropertiesdescription | VnfcConfigurablePropertiesString | 1 | Preliminary OpenModelAttribute
| Human readable description of the Vdu. Describes the configurable properties of all VNFC instances based on this VDU.
| ||||
_vduCpdbootOrder | VduCpd | KeyValuePair | 0..*1 | Preliminary OpenModelAttribute
| Describes network connectivity between a VNFC instance (based on this Vdu) and an Virtual Link (VL)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.
| _virtualComputeDesc | VirtualComputeDesc | |
nfviConstraint | KeyValuePair | 01..* | Preliminary OpenModelAttribute
| Describes CPU, Memory and acceleration requirements of the Virtualisation Container realising this Vdu.
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 | _virtualStorageDesc | VirtualStorageDesc | 0..* | Preliminary OpenModelAttribute
| Defines the virtualised resources monitoring parameters on VDU level. Describes storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu.
| ||
_swImageDescinjectFiles | SwImageDescString | 0..1* | Preliminary OpenModelAttribute
| Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process. 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.
| ||||
configurableProperties | _dependOnVnfcConfigurableProperties | Vdu | 1 | Preliminary0..* OpenModelAttribute
| Specify instantiation priority and dependencies of VDU. Describes the configurable properties of all VNFC instances based on this VDU.
|
...
|
...
Attribute | Name | Type | Mult. | Stereotypes | Description | ||
_vduCpd | VduCpd | bitrateRequirement | Number | 0..1 | Preliminary OpenModelAttribute
| Describes network connectivity between a VNFC instance (based on this Vdu) and an Virtual Link (VL).
Bitrate requirement on this CP.
| |
vnicName_virtualComputeDesc | StringVirtualComputeDesc | 01..1* | Preliminary OpenModelAttribute
| Describes the name CPU, Memory and acceleration requirements of the vNIC this CP attaches to, e.g. eth0. It will be configured during the Vdu booting processVirtualisation Container realising this Vdu.
| |||
_virtualStorageDesc | VirtualStorageDesc | vnicOrder | String | 0..1* | Preliminary OpenModelAttribute
| Describes the order to create the vNIC within the scope of storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu.
| |
vnicType_swImageDesc | VnicTypeSwImageDesc | 0..1 | Preliminary OpenModelAttribute
| Describes the type of the vNIC this CP attaches tosoftware 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.
| |||
_virtualNetworkInterfaceRequirementsdependsOnVirtualNetworkInterfaceRequirements | Vdu | 0..* | Preliminary OpenModelAttribute
| Specifies requirements on a virtual network interface realising the CPs instantiated from this CPDSpecify instantiation priority and dependencies of VDU.
| |||
sriovAntiAffinityGroup | Identifier | 0..1 | 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.
| securityGroups | String | 0..*|
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
|
VNFD needs to specify the security group name {security_groups} for each vNic.
Bitrate requirement on this CP.
|
|
vnicName |
String | 0..1 | Preliminary 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
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..* |
description
String
Preliminary OpenModelAttribute
|
Specifies requirements on a virtual network interface realising the CPs instantiated from this CPD.
|
securityGroups |
String |
0..* |
trunkMode
Boolean
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.
VNFD needs to specify the security group name {security_groups} for each vNic.
| See description. | |
portSecurityEnabled | Boolean | 0..1 |
OpenModelAttribute
|
Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).
VNFD needs to specify whether to enable security group for the vNic.
| See description. |
_qos | QoS |
allowedAddressData
0.. |
1 |
Preliminary
OpenModelAttribute
|
Describe the Qos requirements of the VduCpd.
|
Class: VduProfile
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 |
Attribute Name
Type
Mult.
Stereotypes
Description
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
|
Specifies affinity or anti-affinity rules applicable between the virtualisation containers (e.g. virtual machines) to be created based on this VDU.
affinityOrAntiAffinityGroupId
Identifier
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..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.
| |
vmBootUpTimeOut | Integer | 0..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 VDU.
| See description. |
flavorExtraSpecs | KeyValuePair | 0..* | OpenModelAttribute
| Additional 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 | Preliminary OpenModelAttribute
| Unique identifier of this VirtualStorageDesc in the VNFD.
| |
typeOfStorage | String | 1 | Preliminary OpenModelAttribute
| Type of virtualised storage resource (e.g. volume, object).
| |
sizeOfStorage | Number | 1 | Preliminary OpenModelAttribute
| Size of virtualised storage resource (e.g. size of volume, in GB).
| |
vduStorageRequirements | KeyValuePair | 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 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.
| Each vDisk corresponds to one volume, it should set if the volume can be shared by other VMs. |
_storageQos | StorageQos | 0..1 | OpenModelAttribute
| Describe storage Qos requirements.
| Describe special Qos requirements for storage, see datatype"StorageQos" for details. |
_volumeType | VolumeType | 0..1 | OpenModelAttribute
| Describe the volume type a storage is based on.
| 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
| Network name associated with this L2 protocol.
| |
networkType (Aligned with IFA 011v2.5.1) | NetworkType | 0..1 | RW | OpenModelAttribute
| 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
| Indicating 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
| 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
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.
| |
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 . | |
gatewayIp (Aligned with IFA 011v2.5.1) | IpAddress | 0..1 | RW | OpenModelAttribute
| Specifies the gateway IP address for this L3 protocol. See note. | |
ipVersion (Aligned with IFA 011v2.5.1) | IpVersion | 1 | RW | OpenModelAttribute
| Specifies IP version of this L3 protocol. | |
dhcpEnabled (Aligned with IFA 011v2.5.1)
| Boolean | 0..1 | RW | OpenModelAttribute
| 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
| 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
| 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
| 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 | OpenModelAttribute
Preliminary | Maximum latency in ms.
| ||||||
packetDelayVariation | Number | 1 | RW | OpenModelAttribute
Preliminary | Maximum jitter in ms.
| ||||||
packetLossRatio | Number | 0..1 | RW | 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 | 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 | 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
| Timeout value for the VNFM to wait before the successful booting up of the VDU Human readable Qos name.
| Human readable name, corresponding to qosId. |
rules | KeyValuePair | securityGroups | String | 0..* | RW | OpenModelAttribute
| Detailed requirements of Qos, including maximum bandwidth limitation{max_kbps}、maximum burst bandwidth limitation{max_burst_kbps} 、direction{egress|ingress},etc. VNFD needs to specify the security group name {security_groups} for each VDU.
| See description. Note: the whole Qos attributes are needed for both VL and VduCpd. |
Class:
...
StorageQos
Attribute Name | Type | Mult. | Access | Stereotypes | Description | Rationale | ||
qosIdid | Identifier | 1 | PreliminaryRW | OpenModelAttribute
| Unique Unique identifier of this VirtualStorageDesc in the the storage Qos in VNFD.
| See description. | ||
typeOfStorageqosName | String | 1 | PreliminaryRW | OpenModelAttribute
| Type Name of virtualised storage resource (e.g. volume, object).QoS.
| sizeOfStorage | Human readable name, corresponding to the Id. | |
consumer | ConsumerScopeNumber | 1 | PreliminaryRW | OpenModelAttribute
| Size of virtualised storage resource (e.g. size of volume, in GB).
| Consumer type.
| Identify the volume which a Storge is based on comes from the backend or local. | |
qosSpecs | vduStorageRequirements | KeyValuePair | 0..* | PreliminaryRW | 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 | An array of key-value pairs that articulate the storage deployment requirements.
| rdmaEnabled | Boolean | 0..1 | OpenModelAttribute
Obsolete | Indicate if the storage support RDMA Unique identifier of volume type in VNFD.
| See description. |
swImageDescvolumeTypeName | IdentifierString | 0..1 | PreliminaryRW | OpenModelAttribute
| Software image to be loaded on the VirtualStorage resource created based on this VirtualStorageDesc.
| Name of volume type.
| Human readable name, corresponding to the Id. | |||
backendName | String | 1 | RW | multiAttach | Boolean | 0..1 | OpenModelAttribute
| Indicating whether a vDisk is a shared volume in VNFD.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 | |||
_storageQos | StorageQos | 0..1 | OpenModelAttribute
| Describe storage Qos.
|
_volumeType | VolumeType | 0..1 | OpenModelAttribute
| Describe volume type.
|
Datatype: Qos
Preliminary | Identifier of this DF within the VNFD. | ||||||||||
description | String | 1 | |||||||||
Attribute Name | Type | Mult. | Access | Stereotypes | Description | ||||||
latency | Number | 1 | RW | OpenModelAttribute
Preliminary | Maximum latency in ms.
| packetDelayVariation | Number | 1 |
Preliminary | Human readable description of the DF. | |
_virtuaLlinkProfile | VirtualLinkProfile | 0..*RW | OpenModelAttribute
Preliminary | Maximum jitter in ms.
| packetLossRatio | Number | 0..1 | 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..*RW | OpenModelAttribute
Preliminary | Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists.
| qosId | Identifier | 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 | 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..* | Qos ID.
| 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 | 1RW | 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 | 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 | OpenModelAttribute
| Backend 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
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.