Network Service Model and TOSCA Types
Building NS modular bring a lot of benefits.
Simplifies NS building ; simple small networks built and then composed to make it complex.
Reduces maintenance overheads.
Allows reuse ; use the existing the network service.
Individual NS can be from different companies.
Can have hierarchy.
The proposal is to define the TOSCA node model for the NS (abstract and substituted service template) which facilitates the modularity , composition and nesting of NS.
NS can include VNF, PNF and other nested NS along with the SAP if any.
Nested NS is represented as an abstract node which can have its implementation as another service template or it can be referenced from an existing NS.
Network Service node (abstract)
node_types:
tosca.nodes.nfv.NS.NS1:
derived_from: tosca.nodes.Root
version: 1.0.0
description: specific network service node.
properties:
id:
type: string
description: network service descriptor identifier (NSD).
required: true
designer:
type: string
description: identifies the designer of NSD.
required: true
version:
type: string
description: identifies the version of NSD.
required: true
name:
type: string
description: name of the NSD.
required: true
invariantId:
type: string
description: version independent network service descriptor identifier (NSD).
required: true
...
interfaces:
Basic:
type: tosca.interfaces.nfv.ns.lifecycle.Basic
...
requirements:
- virtualLinkable1: tosca.capabilities.nfv.VirtualLinkable
- virtualLinkable2: tosca.capabilities.nfv.VirtualLinkable
Network Service template
description: World Famous Network Service
topology_template:
substitution_mappings:
node_type: tosca.nodes.nfv.NS.NS1
properties:
id: 316aa140-c99a-4a08-b8f5-8e2cb73c83e8
designer: Nokia
version: "1.0.0"
name: "World Famous"
invariantId: 416aa140-c99a-4a08-b8f5-8e2cb73c8fef
requirements:
- virtualLinkable1: [ vnf1, virtualLinkable2 ]
- virtualLinkable2: [ SAP1, virtualLinkable2 ]
capabilities:
...
interfaces:
...
node_templates:
vnf1:
type: tosca.nodes.nfv.VNF.VNF1
properties:
...
requirements:
- virtualLinkable1: VL1 #virtualLinkable2 is exposed through substitution mapping
ns2:
type: tosca.nodes.nfv.NS.NS2
properties:
...
requirements:
- virtualLinkable1: VL1
pnf:
type: tosca.nodes.nfv.PNF.PNF1
properties:
...
requirements:
- virtualLinkable1: VL1
VL1:
type: tosca.nodes.nfv.VL
properties:
...
SAP1:
type: tosca.nodes.nfv.SAP
properties:
layer_protocol: ipv4
sap_address_assignment: true
requirements:
- virtualLinkable1: VL1 #virtualLinkable2 is exposed through substitution mapping
...
More info in the attached presentation - NSD modeling Rel2.pptx