tosca_definitions_version: tosca_simple_yaml_1_3 description: ETSI NFV SOL 001 common types definitions version 3.5.1 metadata: template_name: etsi_nfv_sol001_common_types template_author: ETSI_NFV template_version: 3.5.1 data_types: tosca.datatypes.nfv.L2AddressData: derived_from: tosca.datatypes.Root description: Describes the information on the MAC addresses to be assigned to a connection point. properties: mac_address_assignment: type: boolean description: Specifies if the address assignment is the responsibility of management and orchestration function or not. If it is set to True, it is the management and orchestration function responsibility required: true tosca.datatypes.nfv.L3AddressData: derived_from: tosca.datatypes.Root description: Provides information about Layer 3 level addressing scheme and parameters applicable to a CP properties: ip_address_assignment: type: boolean description: Specifies if the address assignment is the responsibility of management and orchestration function or not. If it is set to True, it is the management and orchestration function responsibility required: true floating_ip_activated: type: boolean description: Specifies if the floating IP scheme is activated on the Connection Point or not required: true ip_address_type: type: string description: Defines address type. The address type should be aligned with the address type supported by the layer_protocols properties of the connetion point required: false constraints: - valid_values: [ ipv4, ipv6 ] number_of_ip_address: type: integer description: Minimum number of IP addresses to be assigned required: false constraints: - greater_than: 0 tosca.datatypes.nfv.AddressData: derived_from: tosca.datatypes.Root description: Describes information about the addressing scheme and parameters applicable to a CP properties: address_type: type: string description: Describes the type of the address to be assigned to a connection point. The content type shall be aligned with the address type supported by the layerProtocol property of the connection point required: true constraints: - valid_values: [ mac_address, ip_address ] l2_address_data: type: tosca.datatypes.nfv.L2AddressData description: Provides the information on the MAC addresses to be assigned to a connection point. required: false l3_address_data: type: tosca.datatypes.nfv.L3AddressData description: Provides the information on the IP addresses to be assigned to a connection point required: false tosca.datatypes.nfv.ConnectivityType: derived_from: tosca.datatypes.Root description: describes additional connectivity information of a virtualLink properties: layer_protocols: type: list description: Identifies the protocol a virtualLink gives access to (ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire).The top layer protocol of the virtualLink protocol stack shall always be provided. The lower layer protocols may be included when there are specific requirements on these layers. required: true entry_schema: type: string constraints: - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ] flow_pattern: type: string description: Identifies the flow pattern of the connectivity required: false constraints: - valid_values: [ line, tree, mesh ] tosca.datatypes.nfv.LinkBitrateRequirements: derived_from: tosca.datatypes.Root description: describes the requirements in terms of bitrate for a virtual link properties: root: type: integer # in bits per second description: Specifies the throughput requirement in bits per second of the link (e.g. bitrate of E-Line, root bitrate of E-Tree, aggregate capacity of E-LAN). required: true constraints: - greater_or_equal: 0 leaf: type: integer # in bits per second description: Specifies the throughput requirement in bits per second of leaf connections to the link when applicable to the connectivity type (e.g. for E-Tree and E LAN branches). required: false constraints: - greater_or_equal: 0 tosca.datatypes.nfv.CpProtocolData: derived_from: tosca.datatypes.Root description: Describes and associates the protocol layer that a CP uses together with other protocol and connection point information properties: associated_layer_protocol: type: string required: true description: One of the values of the property layer_protocols of the CP constraints: - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ] address_data: type: list description: Provides information on the addresses to be assigned to the CP entry_schema: type: tosca.datatypes.nfv.AddressData required: false tosca.datatypes.nfv.VnfProfile: derived_from: tosca.datatypes.Root description: describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF. properties: instantiation_level: type: string description: Identifier of the instantiation level of the VNF DF to be used for instantiation. If not present, the default instantiation level as declared in the VNFD shall be used. required: false min_number_of_instances: type: integer description: Minimum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile. required: true constraints: - greater_or_equal: 0 max_number_of_instances: type: integer description: Maximum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile. required: true constraints: - greater_or_equal: 0 service_availability_level: type: integer description: Specifies the service availability level for the VNF instance created from this profile. required: false constraints: - greater_or_equal: 1 tosca.datatypes.nfv.Qos: derived_from: tosca.datatypes.Root description: describes QoS data for a given VL used in a VNF deployment flavour properties: latency: type: scalar-unit.time #Number description: Specifies the maximum latency required: true constraints: - greater_than: 0 s packet_delay_variation: type: scalar-unit.time #Number description: Specifies the maximum jitter required: true constraints: - greater_or_equal: 0 s packet_loss_ratio: type: float description: Specifies the maximum packet loss ratio required: false 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 relationship_types: tosca.relationships.nfv.VirtualLinksTo: derived_from: tosca.relationships.DependsOn 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.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: tosca.nodes.nfv.Cp: derived_from: tosca.nodes.Root description: Provides information regarding the purpose of the connection point properties: layer_protocols: type: list description: Identifies which protocol the connection point uses for connectivity purposes required: true entry_schema: type: string constraints: - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ] 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 constraints: - valid_values: [ root, leaf ] description: type: string description: Provides human-readable information on the purpose of the connection point required: false protocol: type: list description: Provides information on the addresses to be assigned to the connection point(s) instantiated from this Connection Point Descriptor required: false entry_schema: type: tosca.datatypes.nfv.CpProtocolData trunk_mode: 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: true constraints: - valid_values: [ ingress, egress ] default: ingress ether_type: type: string description: Indicates the protocol carried over the Ethernet layer. required: true 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: true 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: true 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: true constraints: - greater_or_equal: 0 - less_or_equal: 65535 default: 65535