Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
printablefalse


These diagrams come from papyrus based on R3 vnf model clean, blue ones are new requirements added.


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

Image Added

ONAP Vnfd - Topology View

Image Added

Vnf Deployment Flavor

Image Added

VNF Instance

Image Added 

...

Class:  V

...

           

nf

Attribute   Name

Type

Mult.

Stereotypes

Description

 Rationale

vnfInstanceId

Identifier

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

identifier of the VNF instance

 

 

 

vnfInstanceName

String

1..*

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

name of the VNF instance.  Multiple names are possible.

 

 

 

vnfProductName

String

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

name to identify the VNF Product,   invariant for the VNF Product lifetime

 

 

 

description

invalid

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

description of the VNF instance

 

 

 

vnfProvider

invalid

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

provider of the VNF model

 

 

 

vnfdId

Identifier

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

identifier of the VNF model

 

 

 

vnfdVersion

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

version of the VNF model

 

 

 

vnfSoftwareVersion

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Software version of the VNF. This is  

  

Attribute

    

Qualifier

    

Cardinality

    

Content

    

Description

  

vnfdId

M

1

Identifier

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.

vnfProvider

M

1

String

Provider of the   VNF and of the VNFD.

vnfProductName

M

1

String

Name to identify   the VNF Product. Invariant for the VNF Product lifetime.

vnfSoftwareVersion

M

1

String

Software version   of the VNF. This is

changed when there is any change to the software that is

 

included in the VNF

Package.

vnfdVersion

M

1

String

Identifies the   version of the VNFD.

vnfProductInfoName

M

0..1

String

Human readable   name for the VNF Product. Can change during the VNF Product lifetime.

vnfProductInfo
  Description

M

0..1

String

Human readable   description of the VNF Product. Can change during the VNF Product lifetime.

vnfmInfo

O

0..N

String

Identifies   VNFM(s) compatible with the VNF described in this version of the VNFD.

localizationLanguage

O

0..N

Not specified

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.

defaultLocalization
  Language

O

0..1

Not specified

Default   localization language that is instantiated if no information about selected localization   language is available.

Vdu

M

1..N

Vdu

Virtualisation   Deployment Unit.

virtualComputeDesc

M

1..N

VirtualComputeDesc

Defines   descriptors of virtual compute resources to be used by the VNF.

virtualStorageDesc

M

0..N

VirtualStorageDesc

Defines descriptors   of virtual storage resources to be used by the VNF.

intVirtualLinkDesc

M

1..N

VnfVirtualLinkDesc

Represents the   type of network connectivity mandated by the VNF provider between two or more   CPs which includes at least one internal CP.

vnfReservedCpd

 

M

1..N

VduCpd

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.

vnfExtCpd

M

1..N

VnfExtCpd

Describes   external interface(s) exposed by this VNF enabling connection with a VL.

deploymentFlavour

M

1

VnfDf

Describes   specific DF(s) of a VNF with specific requirements for capacity and   performance.

configurableProperties

M

0..1

VnfConfigurableProperties

Describes the   configurable properties of the VNF (e.g. related to auto scaling and auto   healing).

modifiableAttributes

M

0..1

VnfInfoModifiableAttributes

Describes the   modifiable attributes of the VNF.

lifeCycleManagementScript

M

0..N

LifeCycleManagementScript

Includes a list   of events and corresponding management scripts performed for the VNF.

vnfIndicator

M

0..N

VnfIndicator

Declares the VNF   indicators that are supported by this VNF.

VeVnfmVnfInterface

M

1

String

IP   Address between VNF and VNFM.

Logo

M

0..1

String

File path of the   vendor specified logo.

Class:  Vdu

...

Attribute

...

Qualifier

...

Cardinality

...

Content

...

Description

...

vduId

...

M

...

1

...

Identifier

...

Unique identifier of this Vdu in VNFD.

...

Name

...

M

...

1

...

String

...

Human readable   name of the Vdu.

...

Description

...

M

...

1

...

String

...

Human readable   description of the Vdu.

...

intCpd

...

M

...

1..N

...

VduCpd

...

Describes network   connectivity between a VNFC instance (based on this Vdu) and an Virtual Link   (VL).

...

virtualComputeDesc

...

M

...

1

...

Identifier (reference to VirtualComputeDesc)

...

Describes CPU,   Memory and acceleration requirements of the Virtualisation Container   realising this Vdu.

...

virtualStorageDesc

...

M

...

1..N

...

Identifier (reference to VirtualStorageDesc)

...

Describes storage   requirements for a VirtualStorage instance attached to the virtualisation   container created from virtualComputeDesc defined for this Vdu.

...

bootOrder

...

M

...

0..N

...

KeyValuePair

...

The key indicates   the boot index (lowest index defines highest boot priority). The Value   references a descriptor from which a valid boot device is created e.g.   VirtualStorageDesc from which a VirtualStorage instance is created.See   note 1.

 

...

swImageDesc

...

M

...

0..1

...

Identifier (Reference to SwImageDesc)

...

Describes the   software image which is directly loaded on the virtualisation container realising   this Vdu. See clause 7.1.6.5.See note 2.

...

nfviConstraint

...

M

...

0..N

...

NfviConstraint

...

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.See note 3.

 

...

monitoringParameter

...

 O

...

0..N

...

MonitoringParameter

...

Defines the   virtualised resources monitoring parameters on VDU level. MonitoringParameter   is defined in clause 7.1.11.3.

...

configurableProperties

...

 O

...

0..1

...

VnfcConfigurableProperties

...

Describes the   configurable properties of all VNFC instances based on this VDU. See clause   7.1.6.7.

...

injectFiles

...

M

...

0..N

...

String

...

Describes the   information (e.g. URL) about the scripts, config drive metadata, etc. which   can be used during Vdu booting process.

 

...

dependOn

...

M

...

0..N

...

Identifier

...

Specify instantiation priority   and dependencies of VDU

  package

 

 

 

onboardedVnfPkgInfoId

Identifier

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

identifier of the specific VNF package on   which the VNF instance is based

 

 

 

availabilityZone

invalid

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

availability zone information of the VNF   instance

 

 

 

operationalStatus

OperationalStatus

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

indicator for whether the resource is   considered operational. Valid values are in-service-path and   out-of-service-path.

 

 

 

orchestrationStatus

OrchestrationStatus

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

whether the VNF instance is instantiated

 

 

 

oamlpv4Address

invalid

IpAddress

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

oam ip address, ipv4

 

 

 

oamlpv6Address

invalid


IpAddress


0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

oam ip address, ipv6

 

 

 

instantiatedVnfInfo

invalid

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

information specific to an instantiated   VNF instance, e.g., vm information

 

 

 

inMaint

Boolean

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

whether the VNF instance is in maintenance   mode, if yes, DCAE will not observe alarms/traps, etc.

 

 

 

isClosedLoopDisabled

Boolean

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

whether closed loop function is enabled

 

 

 

encryptedAccessFlag

Boolean

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

whether this VNF is accessed using SSH

 

 

 

vnfConfigurableProperty

invalid

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

indicator for whether autoHeal and   autoScale is enabled

 

 

 

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

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Identifier of the policy which has the   naming logic for this VNF instance

 

 

 

vnfHomingPolicyId

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Identifier of the policy which provides   homing conditions.

 

 

 

nfType

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Generic description of the type of network   function

 

 

 

nfFunction

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

English description of network function that   the specific VNF deployment is providing.

 

 

 

nfRole

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Role in the network this model will be   providing

 

 

 

closedLoopStatus

ClosedLoopStatus

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Whether closed loop capabilities are   enabled for this or not.

 

 

 

_nfc   (vnfcinstance)

Vnfc

1..*

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Relatonship to the NF components that are   part of this VNF.

 

 

 

_vnfd

Vnfd

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Relationship to the VNF descriptor

 

 

 

_vnfvirtuallink

VnfVirtualLink

0..*

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Relationship to VnfVirtualLink

 

 

 

        

Class:  Vdu

Attribute   Name

Type

Mult.

Stereotypes

Description

 Rationale

vduId

Identifier

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Unique identifier of this Vdu in VNFD.

 

 

 

name

String

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Human readable name of the Vdu.

 

 

 

description

String

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Human readable description of the Vdu.

 

 

 

bootOrder

KeyValuePair

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

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

 

 

 

monitoringParameter

MonitoringParameter

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Describes network connectivity between a VNFC   instance (based on this Vdu) and an Virtual Link (VL).

 

 

 

_virtualComputeDesc

VirtualComputeDesc

1..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Describes CPU, Memory and acceleration requirements   of the Virtualisation Container realising this Vdu.

 

 

 

_virtualStorageDesc

VirtualStorageDesc

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Bitrate requirement on this CP.

 

 

 

vnicName

String

0..1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

 

 

 

vnicType

VnicType

0..1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Describes the type of the vNIC this CP   attaches to.

 

 

 

_virtualNetworkInterfaceRequirements

VirtualNetworkInterfaceRequirements

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Specifies requirements on a virtual   network interface realising the CPs instantiated from this CPD.

 

 

 

securityGroups

String

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

VNFD needs to specify the security group name {security_groups} for each vNic.


 

 

See description.

portSecurityEnabled

Boolean

0..1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

VNFD needs to specify whether to enable security group for the vNic.


 

 

 See description.

_qos

QoS

0..1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Identifier of this Cpd information   element.

 

 

 

cpRole

String

0..1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

 

 

 

cpProtocol

CpProtocolData

1..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

 

 

 

allowedAddressData

AddressData

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Uniquely identifies a VDU.

 

 

 

minNumberOfInstances

Integer

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Minimum number of instances of the VNFC   based on this VDU that is permitted to exist for this flavour.

 

 

 

maxNumberOfInstances

Integer

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Maximum number of instances of the VNFC   based on this VDU that is permitted to exist for this flavour.

 

 

 

localAffinityOrAntiAffinityRule

LocalAffinityOrAntiAffinityRule

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Timeout value for the VNFM to wait before   the successful booting up of the VDU.

 

 

 

securityGroups

String

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

VNFD needs to specify the security group name {security_groups} for each VDU.

 

 

 See description.

flavorExtraSpecs

KeyValuePair

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Additional expansion requirements for  Infrastructure layer, e.g. HA property (Host Aggregate label).

 

 

This attribute is the extension for Openstack flavor, currently including:

  •  HA property (Host Aggregate label).
  • CPU allocation strategy: whether two vCPUs need binding core together or not.
  • Multi-queue vNic: whether to use multi-queue network card mode or not.
  • Real-time performance of network elements: whether to open this function or not.

Class: VirtualStorageDesc

Attribute   Name

Type

Mult.

Stereotypes

Description

 Rationale

id

Identifier

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Unique identifier of this   VirtualStorageDesc in the VNFD.

 

 

 

typeOfStorage

String

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Type of virtualised storage resource  (e.g. volume, object).

 

 

 

sizeOfStorage

Number

1

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Size of virtualised storage resource  (e.g. size of volume, in GB).

 

 

 

vduStorageRequirements

KeyValuePair

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

An array of key-value pairs that   articulate the storage deployment requirements.

 

 

 

rdmaEnabled

Boolean

0..1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Describe storage Qos requirements.

 

 

Describe special Qos requirements for storage, see datatype"StorageQos" for details.


volumeType

_volumeType


VolumeType

0..1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Network name associated with this L2 protocol.

 

 

 

 networkType

(Aligned with IFA 011v2.5.1)

 NetworkType  0..1 RW  OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
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
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
 Indicating whether "VLAN Transparent Mode" is supported. Default is "FALSE" if not specified otherwise.
 segmentationId String 0..1

RW

 
 OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
 Network segment ID. The id of vlan/vxlan.
 physicalNetwork  String 0..1 RW   OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
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
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
 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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Specifies the CIDR (Classless Inter- Domain Routing) of this L3 protocol.

See note.

 

 

 ipAllocationPools  

(Aligned with IFA 011v2.5.1)

 KeyValuePair0..N RW OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
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
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
Specifies the gateway IP address for this L3 protocol. See note. 

ipVersion

(Aligned with IFA 011v2.5.1)



 IpVersion 1 RW OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Specifies IP version of this L3 protocol.
Value:
• IPV4.
• IPV6.

 

 dhcpEnabled 

(Aligned with IFA 011v2.5.1)

 

  Boolean 0..1  RW OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
Indicates whether DHCP (Dynamic Host
Configuration Protocol) is enabled or
disabled for this L3 protocol. See note.

ipv6AddressMode

(Aligned with IFA 011v2.5.1)


Ipv6AddressMode0..1  RW OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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.



 ipv6RaModeIpv6AddressMode0..1 RW 

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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:

  • Both attributes don't specify address modes.
  •  Ipv6RaMode doesn't specify an address mode, while ipv6AddressMode has one of the modes for dhcp
  • Both attributes have to set address mode, then they must be the same value.
  hostRoutes  KeyValuePair 0..N RW OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
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
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY
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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 Maximum latency in ms.

 

 

 

packetDelayVariation

Number

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 Maximum jitter in ms.

 

 

 

packetLossRatio

Number

0..1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio   requirement exists.

 

 

 

qosId

Identifier

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Qos ID.

 

 

Give Qos an id for muliple classes to quote. This means Qos will be a class.

qosName

String

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Human readable Qos name.

 

 

 Human readable name, corresponding to qosId.

rules

KeyValuePair

0..*

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 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

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Unique identifier of the storage Qos in VNFD.

 

 

 See description.

qosName

String

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Name of storage QoS.

 

 

 Human readable name, corresponding to the Id.

consumer

ConsumerScope

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Consumer type.

  • BACK_END
  • LOCAL

 

Identify the volume which a Storge is based on comes from the backend or local.

qosSpecs

KeyValuePair

0..*

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Unique identifier of volume type in VNFD.

 

 

See description.

volumeTypeName

String

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

 Name of volume type.

 

 

Human readable name, corresponding to the Id.

backendName

String

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

Identifier of this DF within the VNFD.



description

String

1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

Human readable description of the DF.



_virtuaLlinkProfile

VirtualLinkProfile

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

The scaling aspects supported by this DF of the VNF.   scalingAspect shall be present if the VNF supports scaling.



_vduProfile

VduProfile

1..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

Describes additional instantiation data for the VDUs   used in this flavor.



 _vduCpdProfile VduCpdProfile 1..* OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 

Describes additional instantiation data for the vduCpds used in this flavour.

_placementGroup

PlacementGroup

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

Determine where VNFC's (VDU's) are placed with   respect to the VNF



_baseConfigGroup

BaseConfigGroup

1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

DeploymentGroup provides the minimum viable VDU and   associated VNFC configuration for a useable VNF.



_scalinggroup

ScalingGroup

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

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

Description

_vduCpd

VduCpd

1

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

Uniquely identifies a VduCpd.



_AffinityOrAntiAffinityGroup

AffinityOrAntiAffinityGroup

0..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

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

Class: AffinityOrAntiAffinityGroup

Attribute   Name

Type

Mult.

Access

Stereotypes

Description

groupIdIdentifier1 RW OpenModelAttribute
  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 Identifies an affinity or anti-affinity group to which the affinity or anti-affinity rule applies.

type

RuleType

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 Specifies whether the rule is an affinity rule or an anti-affinity   rule.

 

 

scope

RuleScope

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:    MANDATORY

Preliminary

 Specifies the scope of the rule.

 Currently, the scopes of the rule include:

  • NFVI_POP
  •  ZONE
  •  ZONE_GROUP
  • NFVI_NODE.

Suggest to add NFVI_NIC.

 

Enumerations  

1. ConsumerScope

        Contains Enumeration Literals:

  •  BACK_END
  •   LOCAL

    2. NetworkType

    Contains Enumeration Literals:

    •  VLAN
    •  VXLAN
    •  FLAT
    •  GRE


    3. IpVersion

    Contains Enumeration Literals:

    •  IPv4
    •  IPv6

         4. AssociatedLayerProtocol

               Contains Enumeration Literals:

                Ethernet, MPLS, ODU2, IPV4, IPV6 and Pseudo-Wire.

Class:  VduCpd