etsi_nfv_sol001_pnfd_types.yaml 5.74 KB
Newer Older
tosca_definitions_version: tosca_simple_yaml_1_2
description: ETSI NFV SOL 001 pnfd types definitions version 2.6.1
metadata:
  template_name: etsi_nfv_sol001_pnfd_types
  template_author: ETSI_NFV
  template_version: 2.6.1
  - https://forge.etsi.org/rep/nfv/SOL001/raw/v2.6.1/etsi_nfv_sol001_common_types.yaml
  tosca.datatypes.nfv.LocationInfo:
    derived_from: tosca.datatypes.Root
    description:  Represents geographical information on the location where a PNF is deployed.
    properties:
      country_code:
        type: string # two-letter ISO 3166 country code
        description: Country code
        required: true
      civic_address_element:
        type: list
        entry_schema:
          type: tosca.datatypes.nfv.CivicAddressElement
        description: Elements composing the civic address where the PNF is deployed.
        required: false

  tosca.datatypes.nfv.CivicAddressElement:
    derived_from: tosca.datatypes.Root
    description:  Represents an element of a civic location as specified in IETF RFC 4776 [11]. 
    properties:
      ca_type:
        type: string # RFC4776
        description: caType as per RFC4776
        required: true
      ca_value:
        type: string # RFC4776
        description: caValue as per RFC4776.
        required: true
  
node_types:
  tosca.nodes.nfv.PNF:
    derived_from: tosca.nodes.Root
    properties: 
      descriptor_id: # instead of pnfd_id
        type: string # GUID
        required: true
      function_description:
        type: string
        required: true
      provider:
        type: string
        required: true
      version:
        type: string
        required: true
      descriptor_invariant_id: # instead of pnfd-invariant-id
        type: string # GUID
        required: true
      name:
        type: string
        required: true
      geographical_location_info: 
        type: tosca.datatypes.nfv.LocationInfo
        required: false
    requirements:
      - virtual_link:
          capability: tosca.capabilities.nfv.VirtualLinkable
          relationship: tosca.relationships.nfv.VirtualLinksTo
          occurrences: [ 0, 1 ]
  # Additional requirements shall be defined in the PNF specific node type (deriving from tosca.nodes.nfv.PNF) corresponding to NS virtual links that need to connect to PnfExtCps

  tosca.nodes.nfv.PnfExtCp:
    derived_from: tosca.nodes.nfv.Cp
    description: node definition of PnfExtCp.
    requirements:
      - external_virtual_link:
          capability: tosca.capabilities.nfv.VirtualLinkable
          relationship: tosca.relationships.nfv.VirtualLinksTo  
  
policy_types: 
  tosca.policies.nfv.SecurityGroupRule:
    derived_from: tosca.policies.Root
    description: The SecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited connection points as defined in ETSI GS NFV-IFA 011 [1].
    properties:
      description:
        type: string
        description: Human readable description of the security group rule.
        required: false
      direction:
        type: string
        description: The direction in which the security group rule is applied. The direction of 'ingress' or 'egress' is specified against the associated CP. I.e., 'ingress' means the packets entering a CP, while 'egress' means the packets sent out of a CP.
        required: false
        constraints:
          - valid_values: [ ingress, egress ]
        default: ingress
      ether_type:
        type: string
        description: Indicates the protocol carried over the Ethernet layer.
        required: false
        constraints:
          - valid_values: [ ipv4, ipv6 ]
        default: ipv4
      protocol:
        type: string
        description: Indicates the protocol carried over the IP layer. Permitted values include any protocol defined in the IANA protocol registry, e.g. TCP, UDP, ICMP, etc.
        required: false
        constraints:
          - valid_values: [ hopopt, icmp, igmp, ggp, ipv4, st, tcp, cbt, egp, igp, bbn_rcc_mon, nvp_ii, pup, argus, emcon, xnet, chaos, udp, mux, dcn_meas, hmp, prm, xns_idp, trunk_1, trunk_2, leaf_1, leaf_2, rdp, irtp, iso_tp4, netblt, mfe_nsp, merit_inp, dccp, 3pc, idpr, xtp, ddp, idpr_cmtp, tp++, il, ipv6, sdrp, ipv6_route, ipv6_frag, idrp, rsvp, gre, dsr, bna, esp, ah, i_nlsp, swipe, narp, mobile, tlsp, skip, ipv6_icmp, ipv6_no_nxt, ipv6_opts, cftp, sat_expak, kryptolan, rvd, ippc, sat_mon, visa, ipcv, cpnx, cphb, wsn, pvp, br_sat_mon, sun_nd, wb_mon, wb_expak, iso_ip, vmtp, secure_vmtp, vines, ttp, iptm, nsfnet_igp, dgp, tcf, eigrp, ospfigp, sprite_rpc, larp, mtp, ax.25, ipip, micp, scc_sp, etherip, encap, gmtp, ifmp, pnni, pim, aris, scps, qnx, a/n, ip_comp, snp, compaq_peer, ipx_in_ip, vrrp, pgm, l2tp, ddx, iatp, stp, srp, uti, smp, sm, ptp, isis, fire, crtp, crudp, sscopmce, iplt, sps, pipe, sctp, fc, rsvp_e2e_ignore, mobility, udp_lite, mpls_in_ip, manet, hip, shim6, wesp, rohc ]
        default: tcp
      port_range_min:
        type: integer
        description: Indicates minimum port number in the range that is matched by the security group rule. If a value is provided at design-time, this value may be overridden at run-time based on other deployment requirements or constraints.
        required: false
        constraints:
          - greater_or_equal: 0
          - less_or_equal: 65535
        default: 0
      port_range_max:
        type: integer
        description: Indicates maximum port number in the range that is matched by the security group rule. If a value is provided at design-time, this value may be overridden at run-time based on other deployment requirements or constraints.
        required: false
        constraints:
          - greater_or_equal: 0
          - less_or_equal: 65535
        default: 65535
    targets: [ tosca.nodes.nfv.PnfExtCp ]