You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 44
Next »
NSD Requirements:
1, VFC project requirement:
VFC project implement ETSI NFVO, which needs to consume the NSD.
- In 3GPP management architecture, NFVO needs to expose SOL005 interfaces to 3GPP management system.
![](/download/thumbnails/25437372/image2018-8-14_15-59-59.png?version=1&modificationDate=1534233600000&api=v2)
- NSD needs to be uploaded into NFVO from OSS/BSS, and should be align to standard.
![](/download/attachments/25437372/image2018-8-14_17-53-40.png?version=1&modificationDate=1534240421000&api=v2)
2, NSD vs ServiceD differences:
Service Descriptor in SDC R3: Service composites many resources in the SDC, including SDC AID resources(vf, extVL, AllottedResource) and R2+ resources.
NSD in VFC: NSD composites VNFD, PNFD, and NSVirtualLink, nested NSD, etc, ETSI NFV resources.
NSD requires to do some limitation in NFV resources composition, not all the SDC resources.
NSD related work pages:
NetworkService
ONAP R2+ Design-Time Service DM Input.
PNF resource IM proposal
Proposed Network Service Descriptor Model
tosca.nodes.nfv.NS:
derived_from: tosca.nodes.Root
properties:
ns_id:
type: string
required: true
designer:
type: string
required: true
version:
type: string
required: true
name:
type: string
required: true
invariant_id:
type: string
required: true
capabilities:
#monitoring_parameter:
# modelled as ad hoc capabilities in VNF node template
requirements:
- virtual_link:
capability:
tosca.capabilities.nfv.VirtualLinkable
relationship:
tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.NsVirtualLink # tosca.nodes.nfv.VL
occurrences: [ 0, UNBOUNDED ]
refer to https://wiki.onap.org/display/DW/Node+Type #tosca.nodes.nfv.VNF:
tosca.nodes.nfv.PNF:
derived_from: tosca.nodes.Root
properties:
descriptor_id: # instead of pnfd_id
type: string
required: true
provider:
type: string
required: true
version:
type: string
required: true
descriptor_invariant_id:
type: string # GUID
required: true
name:
type: string
required: true
function_description:
type: string
required: true
#geographical_location_info:
# type: TBD
# required: true
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
tosca.nodes.nfv.NsVirtualLink:
derived_from:
tosca.nodes.Root
description: node definition of Virtual Links
properties:
provider:
type: string
required: false
version:
type: string
required: true
vl_profile
type: tosca.datatypes.nfv.VlProfile # only covers nin/max bitrate requirements
required: true
connectivity_type:
type: tosca.datatypes.nfv.ConnectivityType
required: true
qos:
type: tosca.datatypes.nfv.Qos
required: false
service_availability:
type: tosca.datatypes.nfv.ServiceAvailability
required: false
capabilities:
VirtualLinkable:
type: tosca.capabilities.nfv.VirtualLinkable
tosca.datatypes.nfv.ConnectivityType:
derived_from: tosca.datatypes.Root
properties:
layer_protocol:
type: string
required: true
constraints:
- valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
flow_pattern:
type: string
required: false
constraints:
- valid_values: [Line, Tree, Mesh]
tosca.datatypes.nfv.ServiceAvailability:
derived_from: tosca.datatypes.Root
description: service availability
properties:
Level:
type: string
description: service availability levels
required: true
constraints:
- valid_values: [ Level1, Level2,Level3 ]
tosca.capabilities.nfv.VirtualLinkable:
derived_from: tosca.capabilities.network.Linkable
tosca.relationships.nfv.VirtualLinksTo:
derived_from: tosca.relationships.DependsOn
valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable ]
tosca_definitions_version:
tosca_simple_yaml_1_1
metadata:
...
imports:
- nodes:
file: nodes.yml
- datatypes:
file: data.yml
- capabilities:
file: capabilities.yml
-relationships:
file: relationships.yml
topology_template:
inputs:
# omitted here for brivity
substitution_mappings:
node_type: tosca.nodes.nfv.NS.example
node_templates:
NsVL1:
type: tosca.nodes.nfv.NsVirtualLink
properties: ...
NsVL2:
type: tosca.nodes.nfv.NsVirtualLink
properties: ...
VNF1:
type: tosca.nodes.nfv.VNF.VNF1
properties: ...
requirements:
- virtualLink1: NsVL2
VNF2:
type: tosca.nodes.nfv.VNF.VNF2
properties: ...
requirements:
- virtualLink1: NsVL1
VNF3:
type: tosca.nodes.nfv.VNF.VNF3
properties: ...
requirements:
- virtualLink1: NsVL1
- virtualLink2: NsVL2
PNF1:
type:tosca.nodes.nfv.PNF.PNF1
properties: ...
requirements:
- virtualLink1: NsVL1
###################VNF1 Template ##################
.....
substitution_mappings:
requirements:
virtualLink1:
- ext_port_1
- virtual_link
node_type: tosca.nodes.nfv.VNF.VNF1
###################VNF2 Template ##################
.....
substitution_mappings:
requirements:
virtualLink1:
- ext_port_1
- virtual_link
node_type: tosca.nodes.nfv.VNF.VNF2
###################VNF3 Template ##################
.....
substitution_mappings:
requirements:
virtualLink1:
- ext_port_1
- virtual_link
virtualLink2:
- ext_port_2
- virtual_link
node_type: tosca.nodes.nfv.VNF.VNF3
###################PNF1 Template ##################
.....
substitution_mappings:
requirements:
virtualLink1:
- ext_port_1
- virtual_link
node_type: tosca.nodes.nfv.PNF.PNF1