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.

Class:  Vnfd        

  


COLOR EXPLANATION: Black means already have in R3, all the attributes with colors are new requirements to propose. Blue means haved discussed, pink means haven't yet. Currently, all the attributes have been introduced, so pink is no longer have, all the pink attributes turn into blue ones. Red means already have in ONAP, but to align with new IFA 011 v2.5.1, I suggest to remove them from the current position to the new places I list here. Orange means the suggested modifications for the discussed attributes. 

If the proposed attributes are aligned with IFA specs, you will find a sentence below the attribute name, if not, they are the extended requirements.

ONAP Vnfd View

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

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

Attribute   Name

Type

Mult.

Stereotypes

Description

vnfProvider

String

1

Preliminary

OpenModelAttribute

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

Provider of the VNF and of the VNFD.

 

 

vnfProductName

String

1

Preliminary

OpenModelAttribute

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

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

 

 

vnfSoftwareVersion

String

1

Preliminary

vnfdVersion

String

1

Preliminary

OpenModelAttribute

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.

 

 

 Network name associated with this L2 protocol.

 

 

 

 networkType

(Aligned with IFA 011v2.5.1)

 NetworkType  0..1 RW  OpenModelAttribute

Preliminary

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

Identifies the version of the VNFD.

 

 

vnfProductInfoName

String

0..1

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
  • Human readable name for the VNF Product.   Can change during the VNF Product lifetime.

     

     

    vnfProductInfoDescription

    String

    0..1

    Preliminary

    OpenModelAttribute
    • 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
    Human readable description of the VNF   Product. Can change during the VNF Product lifetime

    Preliminary

    OpenModelAttribute
     Network segment ID. 

     

    vnfmInfo

    String

    0..*

    The id of vlan/vxlan.
     physicalNetwork  String 0..1 RW   OpenModelAttribute
    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY

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

     

     

    localizationLanguage

    String

    0..*

    Preliminary

    OpenModelAttribute

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

    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.

     

     

    modifiableAttributes

    VnfInfoModifiableAttributes

    0..1

    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

    Preliminary

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    Defines the VNF-specific extension and   metadata attributes of the VnfInfo that are writeable via the ModifyVnfInfo   operation

    Preliminary

    OpenModelAttribute

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

    See note.

     

     

    vnfdId

    Identifier

    1

     ipAllocationPools  

    (Aligned with IFA 011v2.5.1)

     KeyValuePair0..N RW OpenModelAttribute

    0..1

    Preliminary

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

    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.

     

     

    defaultLocalizationLanguage

    String

    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

    configurableProperties

    VnfConfigurableProperties

    0..1

    Preliminary

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

    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.

     

     

    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

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

     

     

    lifecycleManagementScript

    Indicates whether DHCP (Dynamic Host
    Configuration Protocol) is enabled or
    disabled for this L3 protocol. See note.

    ipv6AddressMode

    (Aligned with IFA 011v2.5.1)


    Ipv6AddressMode
    LifecycleManagementScript
    0..
    *
    Preliminary
     RW
    OpenModelAttribute
     OpenModelAttribute
    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY

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

     

     

    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.



     ipv6RaModeIpv6AddressMode

    logo

    String
    0..1
    Preliminary

    Preliminary

    OpenModelAttribute
     RW 

    OpenModelAttribute

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

    File path of the vendor specified logo.

     

     

    guide

    String

    0..1

    Preliminary

    OpenModelAttribute

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

    UUID of the vendor guide/documentation   which is attached to VNF and can be downloaded from the model.

     

     

    _vdu

    Vdu

    1..*

    Preliminary

    OpenModelAttribute

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

    Virtualisation Deployment Unit.

     

     

    _vnfExtCpd

    VnfExtCpd

    1..*

    Specifies IPv6 address mode for vrouter. Possible values:

    • SLAAC.

    • DHCPV6-STATEFUL.

    • DHCPV6-STATELESS.

    May be present when the value of the ipVersion attribute is "IPV6" and shall be absent otherwise. Must be present when the VLAN/VXLAN connects to one or more vrouters. 

    Note2: The value of  ipv6RaMode and ipv6AddressMode must be same.

    This attribute comes from Openstack demand, the address mode should be separately set for vRouter and dhcp. The usage for the  ipv6RaMode and ipv6AddressMode has the following situation:

    • 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

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

     

     

    _deploymentFlavour

    VnfDf

    1..*

    Preliminary

    OpenModelAttribute
    Static routing list, including estination and nexthop information. See description. Estination and nexthop will be provided by network elements.
    dnsNameServers String 0..N  RW OpenModelAttribute
    • 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

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

     

     

    _vnfIndicator

    VnfIndicator

    0..*

    Preliminary

    OpenModelAttribute

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

    Declares the VNF indicators that are   supported by this VNF.

     

     

    _virtualComputeDesc

    VirtualComputeDesc

    0..*

    Preliminary

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    Defines descriptors of virtual compute   resources to be used by the VNF.

    Preliminary

     Maximum latency in ms.

     

     

     
    _virtualStorageDesc

    packetDelayVariation

    VirtualStorageDesc

    0..*

    Preliminary

    Number

    1

    RW

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    Defines descriptors of virtual storage   resources to be used by the VNF.

    Preliminary

     Maximum jitter in ms.

     

     

     
    _intVirtuallinkdesc

    packetLossRatio

    LinkDesc

    Number

    0..

    *

    1

    Preliminary

    RW

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    Represents the type of network   connectivity mandated by the VNF provider between two or more CPs which   includes at least one internal CP.

    Preliminary

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

     

     

     
    _vnfReservedCpd

    qosId

    VduCpd

    0..*

    Identifier

    1

    RW

    Preliminary

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:
        MANDATORYReserved 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
    •   MANDATORY

     Qos ID.

     

     

    _elementGroup

    VnfdElementGroup

    0..*

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

    qosName

    String

    1

    RW

    Preliminary

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    Describes the associated elements of a   VNFD for a certain purpose during VNF lifecycle management

     Human readable Qos name.

     

     

    veVnfmVnfInterface

     Human readable name, corresponding to qosId.

    rules

    KeyValuePair

    String

    0..

    1

    *

    RW

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    IP Address between VNF and VNFM

     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

    vduId
     Rationale

    qosId

    Identifier

    1

    Preliminary

    RW

    OpenModelAttribute

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

     Unique identifier of

    this Vdu

    the storage Qos in VNFD.

     

     

    name

    String

    1

    Preliminary

    OpenModelAttribute

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

    Human readable name of the Vdu.

     

     

     See description.

    qosName

    description

    String

    1

    Preliminary

    RW

    OpenModelAttribute

    • isInvariant: false
    • valueRange:  no range constraint
    • support:    MANDATORY
    Human readable description of the Vdu

     Name of storage QoS.

     

     

    bootOrder

    KeyValuePair

    0..*

     Human readable name, corresponding to the Id.

    consumer

    ConsumerScope

    1

    RW

    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

     Consumer type.

    • BACK_END
    • LOCAL

     

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

    qosSpecs

    KeyValuePair

    0..*

    Preliminary

    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

    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

     Unique identifier of volume type in VNFD.

     

     

    injectFiles
    See description.

    volumeTypeName

    String

    0..*

    1

    RW

    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
    • :  no range constraint
    • support:    MANDATORY

     Name of volume type.

     

     

    configurableProperties

    VnfcConfigurableProperties

    Human readable name, corresponding to the Id.

    backendName

    String

    1

    Preliminary

    RW

    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

    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

    1..*

    Preliminary

    Attribute   Name

    Type

    Mult.

    Stereotypes

    Description

    flavorId

    Identifier

    1

    0..*

    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

    Preliminary

    Identifier of this DF within the VNFD.



    description

    String

    1

    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

    Preliminary

    Human readable description of the DF.



    _virtuaLlinkProfile

    VirtualLinkProfile

    SwImageDesc

    0..

    1Preliminary

    *

    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.

     

     

    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

    dependOn

    Identifier

    0

    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

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

    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

    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  

      MANDATORY

    Bitrate requirement on this CP.

     

     

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

    vnicType

    VnicType

    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.

     

     

    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

    the type of the vNIC this CP   attaches to

    additional instantiation data for the VDUs   used in this flavor.



     

     

    _
    virtualNetworkInterfaceRequirements
    vduCpdProfile
    VirtualNetworkInterfaceRequirements
     VduCpdProfile
    0
     1..*

    Preliminary

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

    Preliminary

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

     

     

     

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

    _placementGroup

    PlacementGroup

    0..*

    qosPolicyId

    Identifier

    0..10..

    OpenModelAttribute

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

    Qos ID of a vdu.

     

     

    sriovAntiAffinityGroup

    Identifier

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

     

     

    • 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

    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.

     

     

    portSecurityEnabled

    Boolean

    Preliminary

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



    _scalinggroup

    ScalingGroup

    0..

    1

    *

    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

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

     

     

    cpdId

    Identifier

    1

    Preliminary

    OpenModelAttribute

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

    Identifier of this Cpd information   element.

     

     

    cpRole

    String
    •     MANDATORY

    Preliminary

    Uniquely identifies a VduCpd.



    _AffinityOrAntiAffinityGroup

    AffinityOrAntiAffinityGroup

    0..

    1

    *

    Preliminary

    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

    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

    Attribute   Name

    Type

    Mult.

    Access

    Stereotypes

    Description

    groupIdIdentifier1 RW 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

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

    type

    RuleType

    1

    RW

    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

    ...

    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.