Node Types

tosca.nodes.nfv.Vdu.Compute:
derived_from: tosca.nodes.Root
description: Describes the virtual compute part of a VDU which is a construct supporting the description of the deployment and operational behavior of a VNFC
properties:
name:
type: string
description: Human readable name of the VDU
required: true
description:
type: string
description: Human readable description of the VDU
required: true
boot_order:
type: list # explicit index (boot index) not necessary, contrary to IFA011.
description: References a node template name from which a valid boot device is created
required: false|
entry_schema:
type: string
nfvi_constraints:
type: list
description: Describes constraints on the NFVI for the VNFC instance(s) created from this VDU
entry_schema:
type: string
required: false
monitoring_parameters:
type: list
description: Describes monitoring parameters applicable to a VNFC instantiated from this VDU
required: false
entry_schema:
type: tosca.datatypes.nfv.VnfcMonitoringParameter
#configurable_properties:
#type: tosca.datatypes.nfv.VnfcConfigurableProperties
#required: false
# derived types are expected to introduce
# configurable_properties with its type derived from
# tosca.datatypes.nfv.VnfcConfigurableProperties
vdu_profile:
type: tosca.datatypes.nfv.VduProfile
description: Defines additional instantiation data for the VDU.Compute node
required: true
sw_image_data:
type: tosca.datatypes.nfv.SwImageData
description: Defines information related to a SwImage artifact used by this Vdu.Compute node
required: false # property is required when the node template has an associated artifact of type tosca.artifacts.nfv.SwImage and not required otherwise
boot_data:
type: string
description: Contains a string or a URL to a file contained in the VNF package used to customize a virtualised compute resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent to the VIM.
required: false
#inject_files: #Introduced from Beijing release, used for vCPE usecase, outside the scope of SOL001 v2.5.1
# type: tosca.datatypes.nfv.injectFile
# required: false #Aligned with ONAP R2 IM. it should be false.
#meta_data: #Introduced from Beijing release, used for metadata attached to the VM or container, outside the scope of SOL001 v2.5.1
# type: map
# entry_schema:
# type: string
# required: false
capabilities:
virtual_compute:
type: tosca.capabilities.nfv.VirtualCompute
occurrences: [ 1, 1 ]
virtual_binding:
type: tosca.capabilities.nfv.VirtualBindable
occurrences: [1, UNBOUND]
requirements:
- virtual_storage:
capability: tosca.capabilities.nfv.VirtualStorage
relationship: tosca.relationships.nfv.Vdu.AttachedTo
occurences: [ 0, UNBOUNDED ]


tosca.nodes.nfv.Vdu.VirtualBlockStorage:
derived_from: tosca.nodes.Root
description: This node type describes the specifications of requirements related to virtual block storage resources
properties:
virtual_block_storage_data:
type: tosca.datatypes.nfv.VirtualBlockStorageData
description: Describes the block storage characteristics.
required: true
sw_image_data:
type: tosca.datatypes.nfv.SwImageData
description: Defines information related to a SwImage artifact used by this Vdu.Compute node.
required: false # property is required when the node template has an associated artifact of type tosca.artifacts.nfv.SwImage and not required otherwise
capabilities:
virtual_storage:
type: tosca.capabilities.nfv.VirtualStorage
description: Defines the capabilities of virtual_storage.


tosca.nodes.nfv.Vdu.VirtualObjectStorage:
derived_from: tosca.nodes.Root
description: This node type describes the specifications of requirements related to virtual object storage resources
properties:
virtual_object_storage_data:
type: tosca.datatypes.nfv.VirtualObjectStorageData
description: Describes the object storage characteristics.
required: true
capabilities:
virtual_storage:
type: tosca.capabilities.nfv.VirtualStorage
description: Defines the capabilities of virtual_storage.


tosca.nodes.nfv.Vdu.VirtualFileStorage:
derived_from: tosca.nodes.Root
description: This node type describes the specifications of requirements related to virtual file storage resources
properties:
virtual_file_storage_data:
type: tosca.datatypes.nfv.VirtualFileStorageData
description: Describes the file storage characteristics.
required: true
capabilities:
virtual_storage:
type: tosca.capabilities.nfv.VirtualStorage
description: Defines the capabilities of virtual_storage.
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
#description: Describes the requirements for linking to virtual link


tosca.nodes.nfv.Cp:
derived_from: tosca.nodes.Root
description: Provides information regarding the purpose of the connection point
properties:
layer_protocol:
type:list
description: Identifies which protocol the connection point uses for connectivity purposes
entry_schema:
constraints:
- valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
required:true
role: #Name in ETSI NFV IFA011 v0.7.3 cpRole
type:string
description: Identifies the role of the port in the context of the traffic flow patterns in the VNF or parent NS
constraints:
- valid_values: [ root, leaf ]
required:false
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
entry_schema:
type: tosca.datatypes.nfv.CpProtocolData
required:false
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
#allowed_address_data: # Introduced from Beijing release, align with resource IM, outside the scope of SOL001 v2.5.1
type: tosca.datatypes.nfv.AddressData # In the IM, it is a array, but here it is not a array. TBD.
required: false


tosca.nodes.nfv.VduCp:
derived_from: tosca.nodes.nfv.Cp
description: describes network connectivity between a VNFC instance based on this VDU and an internal VL
properties:
bitrate_requirement:
type: integer # in bits per second
description: Bitrate requirement in bit per second on this connection point
required:false
constraints:
- greater_or_equal: 0
virtual_network_interface_requirements:
type: list
description: Specifies requirements on a virtual network interface realising the CPs instantiated from this CPD
entry_schema:
type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements
required:false
order:
type: integer
description: The order of the NIC on the compute instance (e.g.eth2)
required: false
constraints:
- greater_or_equal: 0
vnic_type:
type: string
description: Describes the type of the virtual network interface realizing the CPs instantiated from this CPD
required: false
constraints:
- valid_values: [ normal, virtio, direct-physical ]
#vnic_name: # Introduced from Beijing release, aligned with ONAP resource IM, outside the scope of SOL001 v2.5.1
# type: string
# required:false
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
- virtual_binding:
capability: tosca.capabilities.nfv.VirtualBindable
relationship: tosca.relationships.nfv.VirtualBindsTo
node: tosca.nodes.nfv.Vdu.Compute


**tosca.nodes.nfv.VnfExtCp:
derived_from: tosca.nodes.nfv.Cp
description: Describes a logical external connection point, exposed by the VNF enabling connection with an external Virtual Link
properties:
virtual_network_interface_requirements:
type: list
description: The actual virtual NIC requirements that is been assigned when instantiating the connection point
required: false
entry_schema:
type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements
requirements:
- external_virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
- internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3: intVirtualLinkDesc
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo

tosca.nodes.nfv.VnfVirtualLink:
derived_from: tosca.nodes.Root
description: Describes the information about an internal VNF VL
properties:
connectivity_type:
type: tosca.datatypes.nfv.ConnectivityType
description: Specifies the protocol exposed by the VL and the flow pattern supported by the VL
required: true
description:
type: string
description: Provides human-readable information on the purpose of the VL
required: false
test_access:
type: list
description: Test access facilities available on the VL
entry_schema:
type: string
required: false
vl_profile:
type: tosca.datatypes.nfv.VlProfile
description: Defines additional data for the VL
required: true
monitoring_parameters:
type: list
description: Describes monitoring parameters applicable to the VL
required: false
entry_schema:
type: tosca.datatypes.nfv.VirtualLinkMonitoringParameter
capabilities:
virtual_linkable:
type: tosca.capabilities.nfv.VirtualLinkable


tosca.nodes.nfv.VNF:
derived_from: tosca.nodes.Root
description: The generic abstract type from which all VNF specific abstract node types shall be derived to form, together with other node types, the TOSCA service template(s) representing the VNFD
properties:
descriptor_id: # instead of vnfd_id
type: string # GUID
description: Globally unique identifier of the VNFD
required: true
descriptor_version: # instead of vnfd_version
type: string
description: Identifies the version of the VNFD
required: true
provider: # instead of vnf_provider
type: string
description: Provider of the VNF and of the VNFD
required: true
product_name: # instead of vnf_product_name
type: string
description: Human readable name for the VNF Product
required: true
software_version: # instead of vnf_software_version
type: string
description: Software version of the VNF
required: true
product_info_name: # instead of vnf_product_info_name
type: string
description: Human readable name for the VNF Product
required: false
product_info_description: # instead of vnf_product_info_description
type: string
description: Human readable description of the VNF Product
required: false
vnfm_info:
type: list
description: Identifies VNFM(s) compatible with the VNF
entry_schema:
type: string
required: true
localization_languages:
type: list
description: Information about localization languages of the VNF
entry_schema:
type: string#IETF RFC 5646 string
required: false
default_localization_language:
type: string #IETF RFC 5646 string
description: Default localization language that is instantiated if no information about selected localization language is available
required: false
#configurable_properties:
#type: tosca.datatypes.nfv.VnfConfigurableProperties
#description: Describes the configurable properties of the VNF
#required: false
# derived types are expected to introduce configurable_properties
# with its type derived from
# tosca.datatypes.nfv.VnfConfigurableProperties
#modifiable_attributes:
#type: tosca.datatypes.nfv.VnfInfoModifiableAttributes
#description: Describes the modifiable attributes of the VNF|
#required: false
# derived types are expected to introduce modifiable_attributes
# with its type derived from
# tosca.datatypes.nfv.VnfInfoModifiableAttributes
lcm_operations_configuration:
type: tosca.datatypes.nfv.VnfLcmOperationsConfiguration
description: Describes the configuration parameters for the VNF LCM operations
required: false
monitoring_parameters:
type: list
entry_schema:
type: tosca.datatypes.nfv.VnfMonitoringParameter
description: Describes monitoring parameters applicable to the VNF.
required: false
flavour_id:
type: string
description: Identifier of the Deployment Flavour within the VNFD
required: true
flavour_description:
type: string
description: Human readable description of the DF
required: true
#vnf_profile:
# type: tosca.datatypes.nfv.VnfProfile
# description: Describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF
# 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 VNF specific node type (deriving from tosca.nodes.nfv.VNF) corresponding to NS virtual links that need to connect to VnfExtCps
interfaces:
Vnflcm:
type: tosca.interfaces.nfv.Vnflcm