Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
borderStylesolid
titleNode Type
Code Block
firstline1
titletosca.nodes.nfv.NS
linenumberstrue
collapsetrue
   tosca.nodes.nfv.NS:
    derived_from: onap.nodes.ServiceComponent
    requirements:
      - virtualLink:
        capability: tosca.capabilities.nfv.VirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksTo
      - wanLink:
        capability: tosca.capabilities.wan.VirtualLinkable
        relationship: tosca.relationships.wan.VirtualLinksTo
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VNF:
  derived_from: tosca.nodes.Root
  properties: 
    descriptor_id: # instead of vnfd_id
      type: string # GUID
      required: true
    descriptor_version: # instead of vnfd_version
      type: string
      required: true
    provider: # instead of vnf_provider
      type: string
      required: true
    product_name: # instead of vnf_product_name
      type: string
      required: true
    software_version: # instead of vnf_software_version
      type: string
      required: true
    product_info_name: # instead of vnf_product_info_name
      type: string
      required: false
    product_info_description: # instead of vnf_product_info_description
      type: string
      required: false
    vnfm_info:
      type: list
      entry_schema:
        type: string
      required: true
  requirements:
    - virtual_link:
        capability: tosca.capabilities.nfv.VirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksTo
        node: tosca.nodes.nfv.VnfVirtualLink
        occurrences: [ 0, UNBOUNDED ]    # anatony: Opt1:occurrences: [ 0,0]; opt2 remove the virtual_link in the vnf base node. 
Code Block
firstline1
titletosca.nodes.nfv.NsVirtualLink
linenumberstrue
collapsetrue
  tosca.nodes.nfv.NsVirtualLink:
    derived_from: tosca.nodes.Root
    description: External virtual link used in network service.
    properties:
      id: #virtual_link_desc_id:
        type: string
        required: true
        description: Identifier of the NsVirtualLinkDesc information element. It uniquely identifies a VLD.
      provider: #vitual_link_desc_provider:
        type: string
        required: false
        description: Defines the organization generating the VLD.
      version: #virtual_link_desc_version:
        type: string
        required: true
        description: Specifies the version of the VLD.
      connectivity_type:
        type: tosca.datatypes.nfv.ConnectivityType
        required: true
        description: Specifies the protocol exposed by a VL and the flow pattern supported by the VL.
      test_access:
        type: list
        entry_schema:
          type: string
        required: false
        description: > 
          Specifies test access facilities expected on the VL 
          (e.g. none, passive monitoring, or active (intrusive) loopbacks at endpoints).
      description:
        type: string
        required: false
        description: >
        Provides human-readable information on the purpose of the virtual link (e.g. VL for control plane traffic). 
    capabilities:
      virtual_linkable:
        type: tosca.capabilities.nfv.VirtualLinkable
Code Block
firstline1
titletosca.nodes.nfv.OpenstackNetwork
linenumberstrue
collapsetrue
  tosca.nodes.nfv.OpenstackNetwork:
    derived_from: tosca.nodes.nfv.NsVirtualLink
    description: Implement the openstack network L2/L3 model
    properties:
      cidr:
        type: string
        required: false
      start_ip:
        type: string
        required:false
      end_ip:
        type: string
        required:false
      gateway_ip:
        type: string
        required: false
      dhcpEnabled: 
         type: Boolean
         required: false
      network_name:
        type: string
        required: false
      network_id:
        type: string
        required: false
      segmentation_id:
        type: string
        required: false 
      network_type:
        type: string
        constraints:
           - valid_values: [VLAN, VXLAN]
        required: false 
      physical_network:
        type: string
        required: false
      vlanTransparent:  
         type: Boolean
         required: false
Panel
borderStylesolid
titleData Type:
Code Block
firstline1
titletosca.datatypes.nfv.ConnectivityType
linenumberstrue
collapsetrue
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]
Panel
borderStylesolid
titleCapability
Code Block
firstline1
titletosca.capabilities.nfv.VirtualLinkable
linenumberstrue
collapsetrue
tosca.capabilities.nfv.VirtualLinkable:
    derived_from: tosca.capabilities.network.Linkable
Panel
borderStylesolid
titleRelationship
Code Block
firstline1
titletosca.relationships.nfv.VirtualLinksTo
linenumberstrue
collapsetrue
tosca.relationships.nfv.VirtualLinksTo:
    derived_from: tosca.relationships.DependsOn
    valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable ]
Panel
borderStylesolid
titleNS Example
Code Block
firstline1
titleNS Example
linenumberstrue
collapsetrue
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
    requirements:
      - virtualLink: [VNF1, virtualLink2]
node_templates:
    NsVL1:
      type: tosca.nodes.nfv.NsVirtualLink
      properties:     ...
    NsVL2:
      type: tosca.nodes.nfv.NsVirtualLink
      properties:     ...
    VNF1:
      type: tosca.nodes.nfv.VNF
      properties: ...
      requirements:
        - virtualLink1: NsVL2
    VNF2:
      type: onap.nodes.VNF
      properties: ...
      requirements:
        - virtualLink1: NsVL1    
    VNF3:
      type: onap.nodes.VNF
      properties: ...
      requirements:
        - virtualLink1: NsVL1
        - virtualLink2: NsVL2

###################VNF1 Template ##################
   .....
  substitution_mappings: 
    requirements: 
      virtualLink1: 
      - ext_port_1
      - virtual_link
    node_type: NsVL2




###################VNF 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: 
      -  sriov_planeext_port_1
      - virtual_link
      virtualLink2: 
      - SRIOVext_port_Port2
      - virtual_link
    node_type: tosca.nodes.nfv.VNF.exampleVNF3