This model is based on the ETSI model defined in IFA014/IFA015 v2.4.4
Table of Contents |
---|
Class Diagram
Classes
NSD - Network Service Descriptor
The NSD class is a deployment template whose instances are used by the NFVO for the lifecycle management of NSs.
Applied stereotypes:
...
- OpenModelClass
- support: MANDATORY
- OnapModelLifecycle
- state: INPUT
- Preliminary
Attribute Name | Type | Mult. | Stereotypes | Description |
nsdIdentifier | Identifier | 1 |
Preliminary OpenModelAttribute
|
|
OnapModelLifecycle
Identifier of this NSD class. It globally uniquely identifies an instance |
designer
String
1
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
of the NSD |
version
Version
1
Experimental
OpenModelAttribute
isInvariant: falsensdName
String
1
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Provides the human readable name of the NSD.
nsdInvariantId
Identifier
1
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Identifies an NSD in a version independent manner. This attribute is invariant across versions of NSD.
OnapModelLifecycle
Identifies the version of the NSD.
autoScalingRule | Rule | 0..* |
Preliminary OpenModelAttribute
|
OnapModelLifecycle
Specifies a rule to trigger a scaling action on a NS instantiated according to the NSD. NOTE 1: The rule is based on a combination of assertions on the values of virtualised resource-related performance metrics and VNF Indicators identified by the monitoredInfo attribute. NOTE 2: There may be multiple data sources (each identified as monitoredInfo) per rule | |||
monitoredInfo | MonitoredData | 0..* | Preliminary OpenModelAttribute
|
| Identifies either a virtualised resource-related performance metric or a VNF Indicator. | |
lifeCycleManagementScript | NsLifeCycleManagementScript | 0..* |
Preliminary OpenModelAttribute
|
OnapModelLifecycle
Provides a life cycle management script written in a Domain Specific Language (DSL). |
security | SecurityParameters | 1 |
Preliminary OpenModelAttribute
|
OnapModelLifecycle
Provides a signature to prevent tampering. |
_nsdf | NsDf | 1..* | Experimental OpenModelAttribute
|
Identifies a DF within the scope of an NSD. |
_sapd | Sapd | 0..* | Experimental OpenModelAttribute
|
OnapModelLifecycle
Provides the descriptor of a SAP of the NS. |
_vnffgd | Vnffgd | 0..* | Experimental OpenModelAttribute
|
Provides the descriptors of the applicable forwarding graphs. Cardinality of 0 means that the NS is a NF set with unspecified connectivity. |
_virtualLinkdesc | NsVirtualLinkDesc | 0..* |
Preliminary OpenModelAttribute
|
Provides the constituent VLDs. Cardinality of 0 means that the NS is a NF set with unspecified connectivity. |
Experimental
_vnfdId | Vnfd | 0..* |
PassedByReference
Preliminary OpenModelAttribute
|
PassedByReference | References the VNFD of a constituent VNF. |
_pnfdId | Pnfd | 0..* |
PassedByReference
Experimental OpenModelAttribute
|
PassedByReference | References the PNFD of a constituent PNF. |
_nestedNsdId | NetworkServiceDescriptor | 0..* | Preliminary OpenModelAttribute
|
References the NSD of a constituent nested NS. |
NsDf (Network Service Deployment Flavor)
The NsDf class specifies the properties of a variant of an NS. NOTE: Every VNF, VL and nested NS whose descriptor is referenced by the NS DF shall be involved in an NS instantiation level of the parent NS. If no instances of a given VNF/nested NS have to be deployed at NS instantiation time, the numberOfInstances attribute in the corresponding VnfToLevelMapping/NsToLevelMapping datatype shall be set to 0.
Applied stereotypes:
- Experimental
- OpenModelClass
- support: MANDATORY
- OnapModelLifecycle
- state: INPUT
...
Attribute Name
...
Type
...
Mult.
...
Stereotypes
...
Description
...
nsDfId
...
Identifier
...
1
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Identifies this NsDf class. It identifies a NS DF within the NSD.
...
flavourKey
...
String
...
1
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Assurance parameter against which this flavour is being described. The key can be a combination of multiple assurance parameters with a logical relationship between them. The parameters should be present as a monitoredInfo attribute in the NSD.
...
monitoredInfo
...
MonitoredData
...
0..*
...
Experimental
OnapModelLifecycle
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
...
Identifies either a virtualised resource-related performance metric or a VNF Indicator.
...
_nsInstantiationLevel
...
NsLevel
...
1..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Describes the details of an NS level. NOTE: Every VNF, VL and nested NS whose descriptor is referenced by the NS DF shall be involved in an NS instantiation level of the parent NS. If no instances of a given VNF/nested NS have to be deployed at NS instantiation time, the numberOfInstances attribute in the corresponding VnfToLevelMapping/NsToLevelMapping datatype shall be set to 0.
...
_defaultNsInstantiationLevel
...
NsLevel
...
0..1
...
Experimental
OnapModelLifecycle
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
...
...
_affinityOrAntiAffinitygroup
...
AffinityOrAntiAffinityGroup
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Specifies affinity or anti-affinity relationship applicable between the VNF instances created using different VNFDs, the Virtual Link instances created using different NsVirtualLinkDescs or the nested NS instances created using different NSDs in the same affinity or anti-affinity group.
...
_scalingAspect
...
NsScalingAspect
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
The scaling aspects supported by this DF of the NS.
...
_pnfProfile
...
PnfProfile
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
PNF profile to be used for the NS flavour.
...
_nsProfile
...
NsProfile
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Specifies a NS Profile supported by this NS DF.
...
_vnfProfile
...
VnfProfile
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
VNF profile to be used for the NS flavour.
...
_dependencies
...
Dependencies
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Specifies the order in which instances of the VNFs and/or nested NSs have to be created.
...
_virtualLinkprofile
...
VirtualLinkProfile
...
0..*
...
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
VL profile to be used for the NS flavour.
NsVirtualLinkDesc
...
NSVirtualLinkDesc - Network Service Virtual Link Descriptor
The NsVirtualLinkDesc class provides general information enabling the instantiation of virtual links.
Parent class: VirtualLinkDesc
Applied stereotypes:
...
- OpenModelClass
- support: MANDATORY
- OnapModelLifecycle
- state: INPUT
...
- Preliminary
Attribute Name | Type | Mult. | Stereotypes | Description |
vitualLinkDescProvider | String | 0..1 |
Preliminary OpenModelAttribute
|
Defines the organization generating the VLD. |
virtuaLinkDescVersion | Version | 1 |
Preliminary OpenModelAttribute
|
OnapModelLifecycle
Specifies the version of the VLD. |
virtualLinkDf | VirtualLinkDf | 1..* |
Preliminary OpenModelAttribute
|
OnapModelLifecycle
Specifies properties for instantiating a VL according to a specific flavour. |
security | SecurityParameters | 0..1 |
Preliminary OpenModelAttribute
|
Provides a signature to prevent tampering. |
virtualLinkDescId | Identifier | 1 | Preliminary OpenModelAttribute
|
OnapModelLifecycle
Uniquely identifies a VLD in the parent descriptor. For VnfVirtualLinkDesc, the parent descriptor is the VNFD. For NsVirtualLinkDesc, the parent descriptor is the NSD. Note: the description of this class are different in ETSI GS NFV IFA 011 and ETSI GS NFV IFA 014. The present definition merges the 2 definitions. |
connectivityType |
ConnectivityType | 1 | Preliminary OpenModelAttribute
|
| Specifies the protocol exposed by a VL and the flow pattern supported by the VL. |
testAccess | String | 0..* | Preliminary OpenModelAttribute
|
Specifies test access facilities expected on the VL (e.g. none, passive monitoring, or active (intrusive) loopbacks at endpoints. |
description | String | 0..1 | Preliminary OpenModelAttribute
|
OnapModelLifecycle
Provides human-readable information on the purpose of the VL (e.g. control plane traffic). |
Sapd - Service Access Point Descriptor
The SAPD class specifies the information used to instantiate the service access points of an NS. A Sapd inherits from the Cpd class. All attributes of the Cpd are also attributes of the Sapd.
Parent class: Cpd
Applied stereotypes:
...
- OpenModelClass
- support: MANDATORY
- OnapModelLifecycle
- state: INPUT
...
Attribute Name
...
Type
...
Mult.
...
Stereotypes
...
Description
...
sapAddressAssignment
...
Boolean
...
- Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
Specify whether the SAP address assignment is under the responsibility of management and orchestration functions or not. If it is set to True, management and orchestration functions are responsible for assigning addresses to the access points instantiated from this SAPD.
...
associatedCpdId
...
Cpd
...
0..1
...
PassedByReference
Experimental
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
References the descriptor of VNF or PNF external connection points the SAPs instantiated from this SAPD are mapped to.
...
nsVirtualLinkDescId
...
NsVirtualLinkDesc
...
0..1
...
PassedByReference
Experimental
OnapModelLifecycle
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
...
References the descriptor of the NS VL instance to which the SAP instantiated from this SAPD connects to.
...
cpdId
...
Identifier
...
1
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Preliminary
...
Identifier of this Cpd information element.
...
cpRole
...
String
...
0..1
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Preliminary
...
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
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Preliminary
...
Provides human-readable information on the purpose of the CP (e.g. CP for control plane traffic).
...
cpProtocol
...
CpProtocolData
...
1..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Preliminary
...
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
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Preliminary
...
Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).
...
allowedAddressData
...
AddressData
...
0..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
Preliminary
...
For specifying floating IP(s) to be shared among Cpds, which are reserved for vnfReservedCpd described in the VNFD.
NsDf - Network Service Deployment Flavor
The NsDf class specifies the properties of a variant of an NS. NOTE: Every VNF, VL and nested NS whose descriptor is referenced by the NS DF shall be involved in an NS instantiation level of the parent NS. If no instances of a given VNF/nested NS have to be deployed at NS instantiation time, the numberOfInstances attribute in the corresponding VnfToLevelMapping/NsToLevelMapping datatype shall be set to 0.
Applied stereotypes:
- OpenModelClass
- support: MANDATORY
- Experimental
Vnffgd - VNF Forwarding Graph Descriptor
The Vnffgd class specifies a topology of connectivity of a NS and optionally forwarding rules applicable to the traffic conveyed over this topology.
Applied stereotypes:
...
- OpenModelClass
- support: MANDATORY
- OnapModelLifecycle
- state: INPUT
...
MonitoredData
...
Type
...
Mult.
...
Stereotypes
...
Description
...
vnffgdId
...
Identifier
...
1
...
Experimental
OnapModelLifecycle
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
...
Identifier of this Vnffgd information element. It uniquely identifies a VNFFGD.
...
vnfdId
...
Vnfd
...
1..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
References the VNFD of a constituent VNF. NOTE 1: The list of constituent VNFs, PNFs, and nested NS SAPs of a VNFFG can be identical to the list of constituent VNFs, PNFs and nested NSs of the parent NSD, or can be a subset of it. NOTE 2: The presence of a VNFD or PNFD identifier in a VNFFGD does not imply that all connection points instantiated from all embedded CPDs are connected to the VNFFG instantiated using the VNFFGD.
...
cpdPoolId
...
CpdPool
...
1..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
A reference to a pool of descriptors of connection points attached to one of the constituent VNFs and PNFs and/or one of the SAPs of the parent NS or of a nested NS.
...
nfpd
...
Nfpd
...
0..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
The network forwarding path associated to the VNFFG.
...
_nsVirtualLinkDesc
...
NsVirtualLinkDesc
...
1..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
References the VLD of a constituent VL. NOTE: The presence of a VLD identifier in a VNFFGD does not imply that all connection points of the VLs instantiated using this VL are connected to the VNFFG instantiated using the VNFFGD.
...
_pnfd
...
Pnfd
...
0..*
...
OpenModelAttribute
- isInvariant: false
- valueRange: no range constraint
- support: MANDATORY
OnapModelLifecycle
...
References the PNFD of a constituent PNF. NOTE 1 : The list of constituent VNFs, PNFs, and nested NS SAPs of a VNFFG can be identical to the list of constituent VNFs, PNFs and nested NSs of the parent NSD, or can be a subset of it. NOTE 2: The presence of a VNFD or PNFD identifier in a VNFFGD does not imply that all connection points instantiated from all embedded CPDs are connected to the VNFFG instantiated using the VNFFGD.
- Experimental
Pnfd - PNF Descriptor
The Pnfd class is a deployment template enabling on-boarding PNFs and referencing them from an NSD. It focuses on connectivity aspects only.
Applied stereotypes:
- OpenModelClass
- support: MANDATORY
- Experimental
Vnfd - VNF Descriptor
See VNFD Model
VnfExtCpd - VNF External CP Descriptor
See VNFD Model
Datatypes
MonitoredData
The MonitoredData datatype identifies information to be monitored during the lifetime of a network service instance.
Attribute Name | Type | Mult. | Access | Stereotypes | Description |
vnfIndicatorInfo | VnfIndicatorData | 0..1 | RW |
OnapModelLifecycle
OpenModelAttribute
| Uniquely identifies the VNF Indicator class. One and only one of the attributes shall be included (i.e. there is a XOR relationship between the attributes). | ||
monitoringParameter | 0..1 | RW |
OpenModelAttribute
| Specifies the virtualised resource related performance metric to be monitored on an NS level or VNF level. One and only one of the attributes shall be included (i.e. there is a XOR relationship between the attributes). |
...
NsLifeCycleManagementScript
The LifeCycleManagementScript information element specifies a script for the NS.
Attribute Name | Type | Mult. | Access | Stereotypes | Description |
event | String | 1..* | RW |
OpenModelAttribute
| Describes NS lifecycle event(s) or an external stimulus detected on an NFVO reference point. NOTE 1: A minimum set of NS lifecycle events triggered internally by the NFVO includes: start instantiation, end instantiation, start scaling, end scaling, start healing, end healing, start termination, end termination, start update, end update. NOTE 2: A minimum set of external stimulus includes: the receipt of request message of instantiation, scaling, healing, termination, update of NS. | |
script |
String | 1 | RW |
OpenModelAttribute
| Includes an NS LCM script (e.g., written in a DSL) triggered to react to one of the events listed in the event attribute. |
...
VirtualLinkDf
The VirtualLinkDf datatype specifies properties for instantiating a VL according to a specific flavour.
Attribute Name | Type | Mult. | Access | Stereotypes | Description |
flavourId | 1 | RW |
Preliminary OpenModelAttribute
| Identifies this VirtualLinkDF datatype within a VLD. | ||
qos | NsQoS | 0..1 | RW |
Preliminary OpenModelAttribute
| Specifies quality of service parameters applicable to a VL. | ||
serviceAvaibilityLevel | ServiceAvailabilityLevel | 0..1 | RW |
Preliminary OpenModelAttribute
| Specifies one of the three levels defined in ETSI GS NFV-REL 001: • Level 1 • Level 2 • Level 3 |
ConnectivityType
Attribute Name | Type | Mult. | Access | Stereotypes | Description |
layerProtocol | LayerProtocol | 1 | RW | OpenModelAttribute
| Identifies the protocol this VL gives access to (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). |
flowPattern | String | 0..1 | RW | OpenModelAttribute
| Identifies the flow pattern of the connectivity (Line, Tree, Mesh). |
SecurityParameters
The SecurityParameters contains the signature of a NSD, VLD, PNFD or VNFFGD instance together with information required to validate the signature.
Attribute Name | Type | Mult. | Access | Stereotypes | Description |
signature | String | 1 | RW | OpenModelAttribute
| Provides the signature of the signed part of the descriptor. |
algorithm | String | 1 | RW | OpenModelAttribute
| Identifies the algorithm used to compute the signature. |
certificate | 0..1 | RW | OpenModelAttribute
| Provides a certificate or a reference to a certificate to validate the signature. NOTE: Cardinality of 0 corresponds to the case where the certificate is provided by means outside the NSD |
NsQos
The NsQoS datatype specifies quality of service parameters applicable to a NS VL.
Parent Datatype: QoS
Attribute Name | Type | Mult. | Access | Stereotypes | Description |
priority | Integer | 0..1 | RW | Preliminary OpenModelAttribute
| Specifies the priority level in case of congestion on the underlying physical links. |
latency | Number | 1 | RW | Preliminary OpenModelAttribute
| Maximum latency in ms. |
packetDelayVariation | Number | 1 | RW | Preliminary OpenModelAttribute
| Maximum jitter in ms. |
packetLossRatio | Number | 0..1 | RW | Preliminary OpenModelAttribute
| Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists. |
Enumerations
ServiceAvailabilityLevel
Specifies one of the three levels defined in ETSI GS NFV-REL 001: • Level 1 • Level 2 • Level 3
Contains Enumeration Literals:
- LEVEL_1:
- LEVEL_2:
- LEVEL_3:
Primitives
Number
This primitive type is a superset of the standard UML numbering primitives, e.g. Integer and Real.
Version
This primitive type defines the version of an element.