Network Service Descriptor Model - Based on R2

This model is based on the ETSI model defined in IFA014/IFA015 v2.4.4

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

  • isInvariant: true

  • valueRange:  no range constraint

  • support:  MANDATORY

Identifier of this NSD class. It globally uniquely identifies an instance of the NSD





autoScalingRule

Rule

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Identifies either a virtualised resource-related performance metric or a VNF Indicator.





lifeCycleManagementScript

NsLifeCycleManagementScript

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Provides a life cycle management script written in a Domain Specific Language (DSL).





security

SecurityParameters

1

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Provides a signature to prevent tampering.





_nsdf

NsDf

1..*

Experimental

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Identifies a DF within the scope of an NSD.





_sapd

Sapd

0..*

Experimental

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Provides the descriptor of a SAP of the NS.





_vnffgd

Vnffgd

0..*

Experimental

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Provides the constituent VLDs. Cardinality of 0 means that the NS is a NF set with unspecified connectivity.





_vnfdId

Vnfd

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

PassedByReference

References the VNFD of a constituent VNF.





_pnfdId

Pnfd

0..*

Experimental

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

PassedByReference

References the PNFD of a constituent PNF.





_nestedNsdId

NetworkServiceDescriptor

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Defines the organization generating the VLD.





virtuaLinkDescVersion

Version

1

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Specifies the version of the VLD.





virtualLinkDf

VirtualLinkDf

1..*

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Specifies properties for instantiating a VL according to a specific flavour.





security

SecurityParameters

0..1

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Provides a signature to prevent tampering.





virtualLinkDescId

Identifier

1

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

Specifies the protocol exposed by a VL and the flow pattern supported by the VL.





testAccess

String

0..*

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Identifies this VirtualLinkDF datatype within a VLD.





qos

NsQoS

0..1

RW

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Specifies quality of service parameters applicable to a VL.





serviceAvaibilityLevel

ServiceAvailabilityLevel

0..1

RW

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Identifies the protocol this VL gives access to (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire).





flowPattern

String

0..1

RW

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Provides the signature of the signed part of the descriptor.





algorithm

String

1

RW

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Identifies the algorithm used to compute the signature.





certificate



0..1

RW

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Specifies the priority level in case of congestion on the underlying physical links.





latency

Number

1

RW

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Maximum latency in ms.





packetDelayVariation

Number

1

RW

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 Maximum jitter in ms.





packetLossRatio

Number

0..1

RW

Preliminary

OpenModelAttribute

  • isInvariant: false

  • valueRange:  no range constraint

  • support:  MANDATORY

 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.