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.

ONAP Vnfd - Topology View

Image Removed

Vnf Deployment Flavor

Image Removed

VNF Instance

Image Removed 

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

Image Added

ONAP Vnfd - Topology View

Image Added

Vnf Deployment Flavor

Image Added

VNF Instance

Image Added 

Class:  Vnf

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   changed when there is any change to the software that is included in the VNF   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

...

Preliminary

Attribute   Name

Type

Mult.

Stereotypes

Description

vduId

Identifier

1

Preliminary

OpenModelAttribute

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

Unique identifier of this Vdu in VNFD.

 

 Rationale

nameid

StringIdentifier

1

Preliminary

OpenModelAttribute

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

Unique identifier of this   VirtualStorageDesc in the VNFD.

 Human readable name of the Vdu.

 

 

descriptiontypeOfStorage

String

1

Preliminary

OpenModelAttribute

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

Human readable description of the VduType of virtualised storage resource  (e.g. volume, object).

 

 

 

sizeOfStoragebootOrder

KeyValuePair

Number

10..*

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 usedSize of virtualised storage resource  (e.g. size of volume, in GB).

 

 

 

vduStorageRequirementsnfviConstraint

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.

 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.

 

 

monitoringParameterswImageDesc

MonitoringParameterIdentifier

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.

 Defines the virtualised resources   monitoring parameters on VDU level.

 

 

injectFilesmultiAttach

StringBoolean

0..*Preliminary1

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   processIndicating 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

configurableProperties

VnfcConfigurableProperties

1

Preliminary

OpenModelAttribute

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

Describes the configurable properties of   all VNFC instances based on this VDUDescribe storage Qos requirements.

 

 

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


volumeType

_vduCpdvolumeType


VduCpdVolumeType

0..1Preliminary

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

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
  • Describes storage requirements for a VirtualStorage   instance attached to the virtualisation container created from   virtualComputeDesc defined for this Vdu
    • support:    MANDATORY

     Network name associated with this L2 protocol.

     

     

    _swImageDesc

    SwImageDesc

     

     networkType

    (Aligned with IFA 011v2.5.1)

     NetworkType  0
    0
    ..1
    Preliminary
     RW
    OpenModelAttribute

    _dependOn

    Vdu

    0..*

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

     

     

    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

    Attribute   Name

    Type

    Mult.

    Stereotypes

    Description

    bitrateRequirement

    Number

    0..1

    Preliminary

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

    Specify instantiation priority and dependencies of VDU.

     

     

    Class:  VduCpd

     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
    Bitrate requirement on this CP
     Network segment ID. 

     

    vnicName

    String

    The id of vlan/vxlan.
     physicalNetwork  String 0
    0
    ..1
    Preliminary
     RW
    OpenModelAttribute

    vnicOrder

    String

    0..1

    Preliminary

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

     

     

    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

    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
     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 requirements on a virtual   network interface realising the CPs instantiated from this CPD

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

    See note.

     

     

    sriovAntiAffinityGroup

    Identifier

     ipAllocationPools  

    (Aligned with IFA 011v2.5

    0.

    .1

    OpenModelAttribute

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

    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: creat cpd profile, define the number of instances.

     

    securityGroups

    String

    0..*

    OpenModelAttribute

    )

     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
    comment: check with IFA
    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY

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

    portSecurityEnabled

    Boolean

    0..1

    OpenModelAttribute
    Specifies the gateway IP address for this L3 protocol. See note. 

     

    ipVersion

    (Aligned with IFA 011v2.5.1)



     IpVersion 1 RW OpenModelAttribute

    qos

    QoS

    0..1

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

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

    Coment: to put as the same level as the securityGroups, as the cpd level as in IFA.

     

     

    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

    Describe the Qos requirements of the   VduCpd.

     

     

    cpdId

    Identifier

    1

    Preliminary

    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)


    Ipv6AddressMode0..1  RW OpenModelAttribute
    Preliminary
    • 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

    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 

    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

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

     

     

    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

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

      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

      For specifying floating IP(s) to be shared   among Cpds, which are reserved for vnfReservedCpd described in the VNFD.

       

       

      Class: VduProfile

      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

      Attribute   Name

      Type

      Mult.

      Stereotypes

      Description

      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

      Preliminary

       Maximum latency in ms.

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

       

       

      maxNumberOfInstancespacketDelayVariation

      IntegerNumber

      1

      PreliminaryRW

      OpenModelAttribute

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

      Preliminary

       Maximum jitter in ms.

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

       

       

      localAffinityOrAntiAffinityRulepacketLossRatio

      LocalAffinityOrAntiAffinityRuleNumber

      0..*1

      PreliminaryRW

      OpenModelAttribute

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

      Preliminary

       Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio   requirement existsSpecifies affinity or anti-affinity rules   applicable between the virtualisation containers (e.g. virtual machines) to   be created based on this VDU.

       

       

       

      qosIdaffinityOrAntiAffinityGroupId

      Identifier

      0..*

      1

      RWPreliminary

      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.

       

       

       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

      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 Unique identifier of the storage Qos in VNFD.

       

       

       See description.

      qosName

      String

      1

      RW

      flavorExtraSpecs

      KeyValuePair

      0..*

      OpenModelAttribute

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

      Additional expansion requirements for  Infrastructure layer, e.g. HA property (Host Aggregate ). Name of storage QoS.

       

       

      Class: VirtualStorageDesc

       Human readable name, corresponding to the Id.

      consumer

      ConsumerScope

      1

      RW

      Attribute   Name

      Type

      Mult.

      Stereotypes

      Description

      id

      Identifier

      1

      Preliminary

      OpenModelAttribute

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

      Unique identifier of this   VirtualStorageDesc in the VNFD.

       

       

      typeOfStorage

      String

      1

       Consumer type.

      • BACK_END
      • LOCAL

       

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

      qosSpecs

      KeyValuePair

      0..*

      RWPreliminary

      OpenModelAttribute

      • isInvariant: false
      • valueRange:  no range constraint
      • support:    MANDATORY
      Type of virtualised storage resource  (e.g. volume, object).

       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

      Indicating whether a vDisk is a shared volume in VNFD

      Attribute   Name

      Type

      Mult.

      Access

      Stereotypes

      Description

       Rationale

      volumeTypeId

      Identifier

      1

      RW

      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 Unique identifier of volume type in VNFD.

       

       

      See description.

      volumeTypeName

      String

      1

      RW

      rdmaEnabled

      Boolean

      0..1

      OpenModelAttribute

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

      Obsolete

      Indicate if the storage support RDMA Name of volume type.

       

       

      swImageDesc

      Identifier

      0..1

      Human readable name, corresponding to the Id.

      backendName

      String

      1

      RWPreliminary

      OpenModelAttribute

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

      Software image to be loaded on the   VirtualStorage resource created based on this VirtualStorageDesc.Name of the object linking to the backend distributed storage.(Name in cinder) 

       

       

      multiAttach

      Boolean

      0..1

      OpenModelAttribute

      • isInvariant: false
      • valueRange:  no range constraint
      • support:    MANDATORY
       Each volume type has a corresponding backend, the name is also the name in Openstack Cinder configuration.
       

      Class: VnfDf

      storageQosAttribute   Name

      StorageQosType

      Mult.

      Stereotypes

      Description

      flavorId

      Identifier

      0..1

      OpenModelAttribute

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

      Preliminary

      Identifier of this DF within the VNFDDescribe storage Qos.

       

       



      description

      String

      volumeType

      VolumeType

      0..1

      OpenModelAttribute

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

       

       

      ...

      • :

      ...

      •     MANDATORY

      Preliminary

      Human readable description of the DF.



      _virtuaLlinkProfile

      VirtualLinkProfile

      0..*

      ...

      Attribute   Name

      Type

      Mult.

      Access

      Stereotypes

      Description

      latency

      Number

      1

      RW

      OpenModelAttribute

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

      Preliminary

       Maximum latency in ms.

       

       

      packetDelayVariation

      Number

      1

      RW

      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

       Maximum jitter in ms.

       

       

      packetLossRatio

      Number

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

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

       

       

      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

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

       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

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

       

       

      Datatype:  StorageQos

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

      Attribute   Name

      Type

      Mult.

      Access

      Stereotypes

      Description

      qosId

      Identifier

      1

      RW

      OpenModelAttribute

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

       Unique identifier of the storage Qos in VNFD.

       

       

      qosName

      String

      1

      Preliminary

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



      _baseConfigGroup

      BaseConfigGroup

      1RW

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

       Name of storage QoS.

       

       

      consumer

      consumerScope

      1

      RW

      OpenModelAttribute

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

       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

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

       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


      OpenModelAttribute

      Attribute   Name

      Type

      Mult.

      Access

      Stereotypes

      DescriptionvolumeTypeId

      _vduCpd

      IdentifierVduCpd

      1

      RW

      OpenModelAttribute

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

       Unique identifier of volume type in VNFD.

       

       

      volumeTypeName

      String

      1

      RW

      Preliminary

      Uniquely identifies a VduCpd.



      _AffinityOrAntiAffinityGroup

      AffinityOrAntiAffinityGroup

      0..*

      OpenModelAttribute

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

       Name of volume type.

       

       

      backendName

      String

      1

      RW

      •   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

       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

      • 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 Currently, the scopes scopes of the rule include:

      • NFVI_POP
      •  ZONE
      •  ZONE_GROUP
      • NFVI_NODE.

      Suggest to add NFVI_NIC.

       

      Enumerations  

      ...

       Enumerations:

             consumerScope

      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.