Commit 208df219 authored by ETSI CTI's avatar ETSI CTI

Update to version 2.7.1

parent 02556b3c
tosca_definitions_version: tosca_simple_yaml_1_2
description: ETSI NFV SOL 001 common types definitions version 2.6.1
description: ETSI NFV SOL 001 common types definitions version 2.7.1
metadata:
template_name: etsi_nfv_sol001_common_types
template_author: ETSI_NFV
template_version: 2.6.1
template_version: 2.7.1
data_types:
tosca.datatypes.nfv.L2AddressData:
......@@ -156,15 +156,48 @@ data_types:
constraints:
- in_range: [ 0.0, 1.0 ]
tosca.datatypes.nfv.VnfMonitoringParameter:
derived_from: tosca.datatypes.Root
description: Represents information on virtualised resource related performance metrics applicable to the VNF.
properties:
name:
type: string
description: Human readable name of the monitoring parameter
required: true
performance_metric:
type: string
description: Identifies a performance metric to be monitored, according to ETSI GS NFV-IFA 027.
required: true
constraints:
- valid_values: [ v_cpu_usage_mean_vnf, v_cpu_usage_peak_vnf, v_memory_usage_mean_vnf, v_memory_usage_peak_vnf, v_disk_usage_mean_vnf, v_disk_usage_peak_vnf, byte_incoming_vnf_ext_cp, byte_outgoing_vnf_ext_cp, packet_incoming_vnf_ext_cp, packet_outgoing_vnf_ext_cp ]
collection_period:
type: scalar-unit.time
description: Describes the periodicity at which to collect the performance information.
required: false
constraints:
- greater_than: 0 s
capability_types:
tosca.capabilities.nfv.VirtualLinkable:
derived_from: tosca.capabilities.Node
description: A node type that includes the VirtualLinkable capability indicates that it can be pointed by tosca.relationships.nfv.VirtualLinksTo relationship type
tosca.capabilities.nfv.Forwarding:
derived_from: tosca.capabilities.Root
relationship_types:
tosca.relationships.nfv.VirtualLinksTo:
derived_from: tosca.relationships.DependsOn
description: Represents an association relationship between the VduCp and VnfVirtualLink node types
description: Represents an association relationship between the VduCp and VnfVirtualLink node types or the association between either a VnfExtCp, a PnfExtCp or a Sap and an NsVirtualLink node types.
valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable ]
tosca.relationships.nfv.ForwardTo:
derived_from: tosca.relationships.Root
valid_target_types: [ tosca.capabilities.nfv.Forwarding ]
tosca.relationships.nfv.VipVirtualLinksTo:
derived_from: tosca.relationships.DependsOn
description: Represents an association relationship between the VipCp and a VnfVirtualLink node types or between the former and a NsVirtualLink node types.
valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable ]
node_types:
......@@ -180,7 +213,7 @@ node_types:
type: string
constraints:
- valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
role: #Name in ETSI NFV IFA011 v0.7.3: cpRole
role: #Name in ETSI NFV IFA011: cpRole
type: string
description: Identifies the role of the port in the context of the traffic flow patterns in the VNF or parent NS
required: false
......@@ -200,3 +233,51 @@ node_types:
type: boolean
description: Provides information about whether the CP instantiated from this Cp is in Trunk mode (802.1Q or other), When operating in "trunk mode", the Cp is capable of carrying traffic for several VLANs. Absence of this property implies that trunkMode is not configured for the Cp i.e. It is equivalent to boolean value "false".
required: false
policy_types:
tosca.policies.nfv.Abstract.SecurityGroupRule:
derived_from: tosca.policies.Root
description: The Abstract.SecurityGroupRule type represents an abstract policy type without any target requirements
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
tosca_definitions_version: tosca_simple_yaml_1_2
description: ETSI NFV SOL 001 nsd types definitions version 2.6.1
description: ETSI NFV SOL 001 nsd types definitions version 2.7.1
metadata:
template_name: etsi_nfv_sol001_nsd_types
template_author: ETSI_NFV
template_version: 2.6.1
template_version: 2.7.1
imports:
- https://forge.etsi.org/rep/nfv/SOL001/raw/v2.6.1/etsi_nfv_sol001_common_types.yaml
- https://forge.etsi.org/rep/nfv/SOL001/raw/v2.7.1/etsi_nfv_sol001_common_types.yaml
# editor's note: During the development of the SOL001ed271 GS, to enable this file to be verified by a TOSCA parser, the imports statement has to be replaced with a reference to a local copy of the common definitions YAML file
data_types:
tosca.datatypes.nfv.ServiceAvailability:
derived_from: tosca.datatypes.Root
description: service availability
description: service availability
properties:
level:
type: string
......@@ -40,7 +42,7 @@ data_types:
type: tosca.datatypes.nfv.ServiceAvailability
description: Network service virtual link service availability levels, as described in ETSI GS NFV-REL 001
required: false
tosca.datatypes.nfv.NsVirtualLinkQos:
derived_from: tosca.datatypes.nfv.Qos
description: describes QoS data for a given VL used in a VNF deployment flavour
......@@ -76,7 +78,47 @@ data_types:
type: string
description: Identifies the applicable network service DF within the scope of the NSD.
required: true
tosca.datatypes.nfv.Mask:
derived_from: tosca.datatypes.Root
properties:
starting_point:
description: Indicates the offset between the last bit of the source mac address and the first bit of the sequence of bits to be matched.
type: integer
required: true
length:
description: Indicates the number of bits to be matched.
type: integer
required: true
value:
description: Provide the sequence of bit values to be matched.
type: string
required: true
tosca.datatypes.nfv.NsOperationAdditionalParameters:
derived_from: tosca.datatypes.Root
description: Is an empty base type for deriving data types for describing NS-specific additional parameters to be passed when invoking NS lifecycle management operations
#properties:
tosca.datatypes.nfv.NsMonitoringParameter:
derived_from: tosca.datatypes.Root
description: Represents information on virtualised resource related performance metrics applicable to the NS.
properties:
name:
type: string
description: Human readable name of the monitoring parameter
required: true
performance_metric:
type: string
description: Identifies a performance metric to be monitored, according to ETSI GS NFV-IFA 027.
required: true
constraints:
- valid_values: [byte_incoming_sap, byte_outgoing_sap, packet_incoming_sap, packet_outgoing_sap, byte_incoming, byte_outgoing, packet_incoming, packet_outgoing ]
collection_period:
type: scalar-unit.time
description: Describes the periodicity at which to collect the performance information.
required: false
interface_types:
tosca.interfaces.nfv.Nslcm:
derived_from: tosca.interfaces.Root
......@@ -84,51 +126,52 @@ interface_types:
instantiate_start:
description: Preamble to execution of the instantiate operation
instantiate:
description: Base procedure for instantiating an NS, corresponding to the Instantiate NS operation defined in GS NFV-IFA 013.
description: Base procedure for instantiating an NS, corresponding to the Instantiate NS operation defined in ETSI GS NFV-IFA 013.
# inputs:
# additional_parameters:
# type: tosca.datatypes.nfv.NsOperationAdditionalParameters
# required: false
instantiate_end:
description: Postamble to the execution of the instantiate operation
terminate_start:
description: Preamble to execution of the terminate operation
terminate:
description: Base procedure for terminating an NS, corresponding to the Terminate NS operation defined in GS NFV-IFA 013.
description: Base procedure for terminating an NS, corresponding to the Terminate NS operation defined in ETSI GS NFV-IFA 013.
terminate_end:
description: Postamble to the execution of the terminate operation
update_start:
description: Preamble to execution of the update operation
update:
description: Base procedure for updating an NS, corresponding to the Update NS operation defined in GS NFV-IFA 013.
description: Base procedure for updating an NS, corresponding to the Update NS operation defined in ETSI GS NFV-IFA 013.
update_end:
description: Postamble to the execution of the update operation
scale_start:
description: Preamble to execution of the scale operation
scale:
description: Base procedure for scaling an NS, corresponding to the Scale NS operation defined in GS NFV-IFA 013.
description: Base procedure for scaling an NS, corresponding to the Scale NS operation defined in ETSI GS NFV-IFA 013.
# inputs:
# additional_parameters:
# type: tosca.datatypes.nfv.NsOperationAdditionalParameters
# required: false
scale_end:
description: Postamble to the execution of the scale operation
heal_start:
description: Preamble to execution of the heal operation
heal:
description: Base procedure for healing an NS, corresponding to the Heal NS operation defined in GS NFV-IFA 013.
description: Base procedure for healing an NS, corresponding to the Heal NS operation defined in ETSI GS NFV-IFA 013.
# inputs:
# additional_parameters:
# type: tosca.datatypes.nfv.NsOperationAdditionalParameters
# required: false
heal_end:
description: Postamble to the execution of the heal operation
group_types:
tosca.groups.nfv.PlacementGroup:
derived_from: tosca.groups.Root
description: PlacementGroup is used for describing the affinity or anti-affinity relationship applicable between VNF instances created using different VNFDs, the Virtual Link instances created using different VLDs or the nested NS instances created using different NSDs
properties:
description:
type: string
description: Human readable description of the group
required: true
members: [ tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS ]
node_types:
tosca.nodes.nfv.NS:
derived_from: tosca.nodes.Root
properties:
descriptor_id:
type: string # GUID
type: string # UUID
description: Identifier of this NS descriptor
required: true
designer:
......@@ -143,9 +186,9 @@ node_types:
type: string
description: Provides the human readable name of the NSD.
required: true
invariant_id:
invariant_id: # UUID
type: string
description: Identifies an NSD in a version independent manner. This attribute is invariant across versions of NSD.
description: Identifies an NSD in a version independent manner. This attribute is invariant across versions of NSD
required: true
flavour_id:
type: string
......@@ -172,14 +215,16 @@ node_types:
- external_virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
occurrences: [0, 1]
- internal_virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
occurrences: [1, 1]
tosca.nodes.nfv.NsVirtualLink:
derived_from: tosca.nodes.Root
description: node definition of Virtual Links
properties:
properties:
vl_profile:
type: tosca.datatypes.nfv.NsVlProfile # only covers min/max bitrate requirements
description: Specifies instantiation parameters for a virtual link of a particular NS deployment flavour.
......@@ -202,75 +247,206 @@ node_types:
capabilities:
virtual_linkable:
type: tosca.capabilities.nfv.VirtualLinkable
policy_types:
tosca.policies.nfv.AffinityRule:
tosca.nodes.nfv.NfpPositionElement:
derived_from: tosca.nodes.Root
description: node definition of NfpPositionElement
capabilities:
forwarding:
type: tosca.capabilities.nfv.Forwarding
requirements:
- profile_element:
capability: tosca.capabilities.nfv.Forwarding
relationship: tosca.relationships.nfv.ForwardTo
occurrences: [ 1, 2 ] # When the number of occurrences is 1, the ingress and egress traffic is associated to a single VnfExtCp or Sap; When the number of occurrences is 2, the ingress VnfExtCp or Sap is associated to the first value and the egress VnfExtCp or Sap is associated to the second value.
tosca.nodes.nfv.NfpPosition:
derived_from: tosca.nodes.Root
description: node definition of NFP position
properties:
forwarding_behaviour:
type: string
description: Identifies a rule to apply to forward traffic to CP or SAP instances corresponding to the referenced NfpPositionElement(s).
constraints:
- valid_values: [ all, lb, ff ]
required: false
# forwarding_behaviour_input_parameters:
# description: Provides input parameters to configure the forwarding behaviour.
# type: map
# required: false
# entry_schema:
# type: strin
capabilities:
forwarding:
type: tosca.capabilities.nfv.Forwarding
requirements:
- element:
capability: tosca.capabilities.nfv.Forwarding
node: tosca.nodes.nfv.NfpPositionElement
relationship: tosca.relationships.nfv.ForwardTo
occurrences: [ 1, UNBOUNDED ]
tosca.nodes.nfv.NFP:
derived_from: tosca.nodes.Root
description: node definition of NFP
requirements:
- nfp_position:
capability: tosca.capabilities.nfv.Forwarding
node: tosca.nodes.nfv.NfpPosition
relationship: tosca.relationships.nfv.ForwardTo
occurrences: [ 1, UNBOUNDED ]
tosca.nodes.nfv.Forwarding:
derived_from: tosca.nodes.Root
capabilities:
virtual_linkable:
type: tosca.capabilities.nfv.VirtualLinkable
forwarding:
type: tosca.capabilities.nfv.Forwarding
occurrences: [ 1, 2 ] #When the number of occurrences is 1, the ingress and egress traffic is associated to a single VnfExtCp, PnfExtCp or Sap; When the number of occurrences is 2, the ingress VnfExtCp, PnfExtCp or Sap is associated to the first value and the egress VnfExtCp, PnfExtCp or Sap is associated to the second value.
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
group_types:
tosca.groups.nfv.NsPlacementGroup:
derived_from: tosca.groups.Root
description: NsPlacementGroup is used for describing the affinity or anti-affinity relationship applicable between VNF instances created using different VNFDs, the Virtual Link instances created using different VLDs or the nested NS instances created using different NSDs when used in a NSD.
properties:
description:
type: string
description: Human readable description of the group
required: true
members: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS]
tosca.groups.nfv.VNFFG:
derived_from: tosca.groups.Root
description: the VNFFG group type describes a topology of the NS or a portion of the NS, and optionally forwarding rules, applicable to the traffic conveyed over this topology
properties:
description:
type: string
description: Human readable description of the group
required: true
members: [ tosca.nodes.nfv.NFP, tosca.nodes.nfv.VNF, tosca.nodes.nfv.PNF, tosca.nodes.nfv.NS, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NfpPositionElement ]
policy_types:
tosca.policies.nfv.NsAffinityRule:
derived_from: tosca.policies.Placement
description: The AffinityRule describes the affinity rules applicable for the defined targets
description: The NsAffinityRule describes the affinity rules applicable for the defined targets
properties:
scope:
type: string
description: scope of the rule is an NFVI_node, an NFVI_PoP, etc.
description: Specifies the scope of the local affinity rule.
required: true
constraints:
- valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ]
targets: [ tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.PlacementGroup ]
targets: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.NsPlacementGroup ]
tosca.policies.nfv.AntiAffinityRule:
tosca.policies.nfv.NsAntiAffinityRule:
derived_from: tosca.policies.Placement
description: The AntiAffinityRule describes the anti-affinity rules applicable for the defined targets
description: The NsAntiAffinityRule describes the anti-affinity rules applicable for the defined targets
properties:
scope:
type: string
description: scope of the rule is an NFVI_node, an NFVI_PoP, etc.
description: Specifies the scope of the local affinity rule..
required: true
constraints:
- valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ]
targets: [ tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.PlacementGroup ]
targets: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.NsPlacementGroup ]
tosca.policies.nfv.SecurityGroupRule:
tosca.policies.nfv.NsSecurityGroupRule:
derived_from: tosca.policies.nfv.Abstract.SecurityGroupRule
description: The NsSecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited SAPs.
targets: [ tosca.nodes.nfv.Sap ]
tosca.policies.nfv.NfpRule:
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].
description: policy definition of NfpRule
properties:
description:
ether_destination_address:
description: Indicates a destination Mac address.
type: string
description: Human readable description of the security group rule.
required: false
direction:
required: false
ether_source_address:
description: Indicates a source Mac address.
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
type: string
constraints:
- valid_values: [ ipv4, ipv6 ]
default: ipv4
required: false
vlan_tag:
description: Indicates a VLAN identifier in an IEEE 802.1Q-2014 tag [14]. Multiple tags can be included for QinQ stacking.
type: list
entry_schema:
type: string
required: false
protocol:
description: 'Indicates the L4 protocol, For IPv4 [15] this corresponds to the field called "Protocol" to identify the next level protocol. For IPv6 [16] this corresponds to the field is called the "Next Header" field. Permitted values: Any keyword defined in the IANA [17] protocol registry.'
type: string
required: false
dscp:
description: For IPv4 [15] a string of "0" and "1" digits that corresponds to the 6-bit Differentiated Services Code Point (DSCP) field of the IP header. For IPv6 [16] a string of "0" and "1" digits that corresponds to the 6 differentiated services bits of the traffic class header field.
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
source_port_range:
description: Indicates a range of source ports.
type: range
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.
- in_range: [0, 65535]
destination_port_range:
description: Indicates a range of destination ports.
type: range
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.
- in_range: [0, 65535]
source_ip_address_prefix:
description: Indicates the source IP address range in CIDR format.
type: string
required: false
destination_ip_address_prefix:
description: Indicates the destination IP address range in CIDR format.
type: string
required: false
extended_criteria:
description: Indicates values of specific bits in a frame.
type: list
entry_schema:
type: tosca.datatypes.nfv.Mask
required: false
targets: [ tosca.nodes.nfv.NFP ]
tosca.policies.nfv.NsMonitoring:
derived_from: tosca.policies.Root
description: Policy type is used to identify information to be monitored during the lifetime of a network service instance as defined in ETSI GS NFV-IFA 014 [2].
properties:
ns_monitoring_parameters:
type: list
description: Specifies a virtualised resource related performance metric to be monitored on the NS level.
required: true
entry_schema:
type: tosca.datatypes.nfv.NsMonitoringParameter
constraints:
- greater_or_equal: 0
- less_or_equal: 65535
default: 65535
targets: [ tosca.nodes.nfv.Sap ]
- min_length: 1
targets: [ tosca.nodes.nfv.NS ]
tosca.policies.nfv.VnfMonitoring:
derived_from: tosca.policies.Root
description: Policy type is used to identify information to be monitored during the lifetime of a VNF instance as defined in ETSI GS NFV-IFA 014 [2].
properties:
vnf_monitoring_parameters:
type: list
description: Specifies a virtualised resource related performance metric to be monitored on the NS level.
required: true
entry_schema:
type: tosca.datatypes.nfv.VnfMonitoringParameter
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.VNF ]
tosca_definitions_version: tosca_simple_yaml_1_2
description: ETSI NFV SOL 001 pnfd types definitions version 2.6.1
description: ETSI NFV SOL 001 pnfd types definitions version 2.7.1
metadata:
template_name: etsi_nfv_sol001_pnfd_types
template_author: ETSI_NFV
template_version: 2.6.1
template_version: 2.7.1
imports:
- https://forge.etsi.org/rep/nfv/SOL001/raw/v2.6.1/etsi_nfv_sol001_common_types.yaml
- https://forge.etsi.org/rep/nfv/SOL001/raw/v2.7.1/etsi_nfv_sol001_common_types.yaml
# editor's note: During the development of the SOL001ed271 GS, to enable this file to be verified by a TOSCA parser, the imports statement has to be replaced with a reference to a local copy of the common definitions YAML file
data_types:
data_types:
tosca.datatypes.nfv.LocationInfo:
derived_from: tosca.datatypes.Root
description: Represents geographical information on the location where a PNF is deployed.
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
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
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].
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
type: string # RFC4776
description: caType as per RFC4776
required: true
ca_value:
type: string # RFC4776
description: caValue as per RFC4776.
required: true
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
type: string # UUID
required: true
description: Identifier of this PNFD information element. It uniquely identifies the PNFD.
function_description:
type: string
required: true
type: string
required: true
description: Describes the PNF function.
provider:
type: string
required: true
type: string
required: true
description: Identifies the provider of the PNFD.
version:
type: string
required: true
type: string
required: true
description: Identifies the version of the PNFD.
descriptor_invariant_id: # instead of pnfd-invariant-id
type: string # GUID
required: true
type: string # UUID
required: true
description: Identifier of this PNFD in a version independent manner. This attribute is invariant across versions of PNFD.
name:
type: string
required: true
type: string
required: true
description: Name to identify the PNFD.
geographical_location_info:
type: tosca.datatypes.nfv.LocationInfo
required: false
type: tosca.datatypes.nfv.LocationInfo
required: false
description: Provides information about the geographical location (e.g. geographic coordinates or address of the building, etc.) of the PNF
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
occurrences: [ 0, 1 ]
- 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