Network Service Descriptor Model - Based on R2
This model is based on the ETSI model defined in IFA014/IFA015 v2.4.4
- 1 Class Diagram
- 2 Classes
- 2.1 NSD - Network Service Descriptor
- 2.2 NSVirtualLinkDesc - Network Service Virtual Link Descriptor
- 2.3 Sapd - Service Access Point Descriptor
- 2.4 NsDf - Network Service Deployment Flavor
- 2.5 Vnffgd - VNF Forwarding Graph Descriptor
- 2.6 Pnfd - PNF Descriptor
- 2.7 Vnfd - VNF Descriptor
- 2.8 VnfExtCpd - VNF External CP Descriptor
- 3 Datatypes
- 3.1 MonitoredData
- 3.2 NsLifeCycleManagementScript
- 3.3 VirtualLinkDf
- 3.4 ConnectivityType
- 3.5 SecurityParameters
- 3.6 NsQos
- 4 Enumerations
- 5 Primitives
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
Preliminary
Attribute Name | Type | Mult. | Stereotypes | Description |
nsdIdentifier | Identifier | 1 | Preliminary OpenModelAttribute
| Identifier of this NSD class. It globally uniquely identifies an instance of the NSD |
autoScalingRule | Rule | 0..* | Preliminary OpenModelAttribute
| 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
| Provides a life cycle management script written in a Domain Specific Language (DSL). |
security | SecurityParameters | 1 | Preliminary OpenModelAttribute
| 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
| 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. |
_vnfdId | Vnfd | 0..* | Preliminary OpenModelAttribute
PassedByReference | References the VNFD of a constituent VNF. |
_pnfdId | Pnfd | 0..* | Experimental OpenModelAttribute
PassedByReference | References the PNFD of a constituent PNF. |
_nestedNsdId | NetworkServiceDescriptor | 0..* | Preliminary OpenModelAttribute
| References the NSD of a constituent nested NS. |
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
Preliminary
Attribute Name | Type | Mult. | Stereotypes | Description |
vitualLinkDescProvider | String | 0..1 | Preliminary OpenModelAttribute
| Defines the organization generating the VLD. |
virtuaLinkDescVersion | Version | 1 | Preliminary OpenModelAttribute
| Specifies the version of the VLD. |
virtualLinkDf | VirtualLinkDf | 1..* | Preliminary OpenModelAttribute
| 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
| 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
| 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
Experimental
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
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 | 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.