You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »


The following describes Data Model based on the ETSI v3.3.1 SOL001 VNFD plus CNF enhancements, which came from 4.1.1.

  • in Honolulu, the VDU and Container relation is 1:1. We plan to enhance it in the future.
  • 2.7.x for backward compatibility during SDC onboarding + 3.3.1 with CNF enhancements
    • If the type is changed, separate properties for 2.7.x and 3.3.1 will be used

ETSI 3.3.1 SOL001 Data Model with minimum CNF Properties from 4.1.1 


VNF Data Model

  • property "vnfm_info" constraint pattern: "(etsivnfm:v[0-9]?[0-9]\.[0-9]?[0-9]\.[0-9]?[0-9]$)|([0-9]:[a-zA-Z0-9.-]$)"
    • values must be in format etsivnfm:v3.3.1 or <int>:<string>
    • this is not enforced by constraint in type definition in ONAP
  • property "vnf_profile" has not changed, but it is commented out in existing version in ONAP 
  • new attribute "scale_status" added

 tosca.nodes.nfv.VNF:

    derived_from: tosca.nodes.Root

    description: The generic abstract type from which all VNF specific node types shall be derived to form, together with other node types, the TOSCA service template(s) representing the VNFD

IdTypeCardinalityDescription
descriptor_idString #UUID1Identifier for the VNFD
descriptor_versionString1

Identifies the version of the VNFD

providerString1provider of the VNF and of the VNFD
product_nameString1name to identify the VNF product. Invariant for the VNF Product lifetime
software_versionString1Software version of the VNF
product_info_nameString0..1Human readable name of the VNF Product
product_info_descriptionString0..1Human readable name for the VNF product
vnfm_infolist of String1..nIdentifies VNFM(s) compatible with the VNF
localization_languageslist of String0..nInformation about localization languages of the VNF

lcm_operations_configuration

tosca.datatypes.nfv.VnfLcmOperationsConfiguration

0..n

Describes the configuration parameters for the VNF LCM operations

monitoring_parameters

list of 

tosca.datatypes.nfv.VnfMonitoringParameter

0..n

Describes monitoring parameters applicable to the VNF.

flavour_id

String1

Identifier of the Deployment Flavour within the VNFD

flavour_description

String1

Human readable description of the DF

vnf_profile

tosca.datatypes.nfv.VnfProfile

0..1

Describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF

mciop_profilelist of tosca.datatypes.nfv.MciopProfile0..n

Describes additional instantiation data for the MCIOPs used in this deployment

scale_statusmap of tosca.datatypes.nfv.ScaleInfo0..nScale status of the VNF, one entry per aspect. Represents for every scaling aspect how "big" the VNF has been scaled w.r.t. that aspect.




    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

    # VnfIndicator:

    #   type: tosca.interfaces.nfv.VnfIndicator

    # derived types are expected to introduce Vnf Indicator interfaces 

    # with their type derived from tosca.interfaces.nfv.VnfIndicator






VDU OsContainer Data Model

tosca.nodes.nfv.Vdu.osContainer:

    derived_from: tosca.nodes.Root

    description: Describes the container compute part of a VDU which is a construct  supporting the description of the deployment and operational behavior of a VNFC 

IdTypeCardinalityDescription
nameString1Human readable name of the VDU
descriptionString1Human readable description of the VDU
nfvi_constraintsmap of String0..n

Describes constraints on the NFVI for the VNFC instance(s) created from this VDU. This property is reserved for future use in the present document.

monitoring_parameters

list of 

tosca.datatypes.nfv.VnfcMonitoringParameter

0..n

Describes monitoring parameters applicable to a VNFC instantiated from this VDU

#configurable_properties

tosca.datatypes.nfv.VnfcConfigurableProperties

0..1

# derived types are expected to introduce configurable_properties with its type derived from tosca.datatypes.nfv.VnfcConfigurableProperties

vdu_profile

tosca.datatypes.nfv.VduProfile

1

Defines additional instantiation data for the Vdu.OsContainer node

sw_image_data

tosca.datatypes.nfv.SwImageData

0..1

Defines information related to a SwImage artifact used by this Vdu.OsContainer node

boot_data

tosca.datatypes.nfv.BootData

0..1

Contains the information used to customize a container compute resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent





    capabilities:

      virtual_compute:

        type: tosca.capabilities.nfv.VirtualCompute

        occurrences: [ 1, 1 ]

      virtual_binding:

        type: tosca.capabilities.nfv.VirtualBindable

        occurrences: [ 1, UNBOUNDED ]

    requirements:

      - virtual_storage:

          capability: tosca.capabilities.nfv.VirtualStorage

          relationship: tosca.relationships.nfv.AttachesTo

          occurrences: [ 0, UNBOUNDED ]


MciopProfile Data Model

  tosca.datatypes.nfv.MciopProfile:

    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.

IdTypeCardinalityConstraintsDescription

mciopId

String1

Identifies the MCIOP in the VNF package.

deploymentOrder

Integer0..1greater_or_equal: 0

Indicates the order in which this MCIOP shall be deployed in relation to other MCIOPs.  A lower value specifies an earlier deployment.

null is allowed

#     affinityOrAntiAffinityGroupId

list of String0..n

References the affinity or anti-affinity groups(s) the MCIOP belongs to.

associatedVdu

list of String0..n

List of VDUs which are associated to this MCIOP and which are deployed using this MCIOP


VnfInstantiateOperationConfiguration Data Model

  tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:

   derived_from: tosca.datatypes.Root

   description: represents information that affect the invocation of the InstantiateVnf operation.

IdTypeCardinalityConstraintsDescription
descriptionString0..1
Description of VnfInstantiateOperationConfiguration











VnfMonitoringParameter Data Model

tosca.datatypes.nfv.VnfMonitoringParameter:
    derived_from: tosca.datatypes.Root
    description: Represents information on virtualised resource related performance metrics applicable to the VNF.

IdTypeCardinalityConstraintsDescription

name

String

1


Human readable name of the monitoring parameter

performance_metric

String

1

- 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

Identifies the performance metric, according to ETSI GS NFV-IFA 027.

collection_period

scalar-unit.time

0..1

- greater_than: 0 s

Describes the recommended periodicity at which to collect the performance information.






VnfProfile Data Model

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.

IdTypeCardinalityConstraintsDescription

instantiation_level

String

0..1


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

min_number_of_instances

Integer

1

- greater_or_equal: 0

Minimum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile.

max_number_of_instances

Integer

1

- greater_or_equal: 0

Maximum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile.

service_availability_levelInteger0..1greater_or_equal: 1

If present, specifies the service availability level for the VNF instance created from this profile.


SwImageData Data Model

  • Change: checksum propeorty is used to be string in 2.6.x. Now, it is tosca.datatypes.nfv.ChecksumData. During SDC onboarding, the old type checksum data will be stored in a new property in SDC (e.g., checksum261).

  tosca.datatypes.nfv.SwImageData:

   derived_from: tosca.datatypes.Root

   description: describes information  related to a software image artifact 

IdTypeCardinalityConstraintsDescription

name

String

1


Name of this software image

version

String

1


Version of this software image

provider

String

1


Provider of this software image

checksum

tosca.datatypes.nfv.ChecksumData

1

Checksum of the software image file

container_format

String1

- valid_values: [ aki, ami, ari, bare, docker, ova, ovf ]

The container format describes the container file format in which software image is provided

disk_format

String1

- valid_values: [ aki, ami, ari, iso, qcow2, raw, vdi, vhd, vhdx, vmdk ]

The disk format of a software image is the format of the underlying disk image

min_disk

scalar-unit.size # Number

1

#no need: - greater_or_equal: 0 B

The minimal disk size requirement for this software image 

min_ram

scalar-unit.size # Number

0..1

#no need: - greater_or_equal: 0 B

The minimal RAM requirement for this software image 

size

scalar-unit.size # Number

1

The size of this software image 

operating_system

String0..1

Identifies the operating system used in the software image

supported_virtualisation_environments

list of String0..n

Identifies the virtualisation environments (e.g. hypervisor) compatible with this software image

BootData Data Model

tosca.datatypes.nfv.BootData:

    derived_from: tosca.datatypes.Root

    description: describes the information used to customize a virtualised or containerized compute resource at boot time.

IdTypeCardinalityConstraintsDescription

vim_specific_properties

tosca.datatypes.nfv.BootDataVimSpecificProperties

0..1


Properties used for selecting VIM or CISM specific capabilities when setting the boot data.

kvp_data

tosca.datatypes.nfv.KvpData

0..1


A set of key-value pairs for configuring a virtual or container compute resource.

content_or_file_data

tosca.datatypes.nfv.ContentOrFileData

0..1


A string content or a file for configuring a virtual or container compute resource. 

BootDataVimSpecificProperties Data Model

  tosca.datatypes.nfv.BootDataVimSpecificProperties:

    derived_from: tosca.datatypes.Root

    description: describes the VIM specific information used for selecting VIM specific capabilities when setting the boot data.

IdTypeCardinalityConstraintsDescription

vim_type

String

1


Discriminator for the different types of the VIM or CISM information.

properties

map of String

0..n


Properties used for selecting VIM or CISM specific capabilities when setting the boot data

KvpData Data Model

  tosca.datatypes.nfv.KvpData:

    derived_from: tosca.datatypes.Root

    description: describes a set of key-value pairs information used to customize a virtualised or containerized compute resource at boot time by using only key-value pairs data.

IdTypeCardinalityConstraintsDescription

data

map of String

0..n


A map of strings that contains a set of key-value pairs that describes the information for configuring the virtualised or containerized compute resource.

ContentOrFileData Data Model

  tosca.datatypes.nfv.ContentOrFileData:

    derived_from: tosca.datatypes.Root

    description: describes a string content or a file information used to customize a virtualised or containerized compute resource at boot time by using string content or file.

IdTypeCardinalityConstraintsDescription

data

map of String

0..n


A map of strings that contains a set of key-value pairs that carries the dynamic deployment values which used to replace the corresponding variable parts in the file as identify by a URL as described in source_path. Shall be present if "source_path" is present and shall be absent otherwise..

content

String0..1

The string information used to customize a virtualised or containerized compute resource at boot time.

source_path

String0..1

The URL to a file contained in the VNF package used to customize a virtualised or containerized compute resource. The content shall comply with IETF RFC 3986 [8].

destination_path

String0..1

The URL address when inject a file into the virtualised or containerized compute resource. The content shall comply with IETF RFC 3986 [8].

ChecksumData Data Model

  tosca.datatypes.nfv.ChecksumData:

     derived_from: tosca.datatypes.Root

     description: Describes information about the result of performing a checksum operation over some arbitrary data 

IdTypeCardinalityConstraintsDescription

algorithm

String

1


Describes the algorithm used to obtain the checksum value

hash

String1

Contains the result of applying the algorithm indicated by the algorithm property to the data to which this ChecksumData refers 

vduCp Data Model

  • tosca.nodes.nfv.VduCP
  • No Change since 2.7.1

vnfExtCp Data Model

  • tosca.nodes.nfv.VnfExtCP
  • No Change since 2.7.1
  • There are some changes from 2.6.1 to 2.7.1
    • property "vnic_type" has the following extra valid_values:
      • macvtap, baremetal, virtio-forwarder, smart-nic
    • and the following removed valid_values - backwards incompatible:
      • virtio
    • requirement "virtual_link" cardinality changed from default (1-1) to 0-1
    • requirement "virtual_binding" cardinality changed from default (1-1) to 1-1, i.e. no effective change
  • requirement "external_virtual_link" cardinality changed from default (1-1) to 0-1
  • requirement "internal_virtual_link" cardinality changed from default (1-1) to 1-1, i.e. no effective change


VduCompute Data Model

  • tosca.nodes.nfv.Vdu.Compute
  • No Change since 2.7.1
  • There are some changes from 2.6.1 to 2.7.1
    • property "boot_order" changed from list to boolean 
      • Backwards incompatible change from 2.6.1 -> 2.7.1
    • property "nfvi_constraints" changed from list to map
      • Backwards incompatible change from 2.6.1 -> 2.7.1
    • property "boot_data" changed from string to tosca.datatypes.nfv.BootData
  • The configurable_properties is still out of scope in Honolulu

  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 

IdTypeCardinalityConstraintsDescription

name

String

1


Human readable name of the VDU 

description

String1

Human readable description of the VDU 

boot_order

boolean1

indicates whether the order of the virtual_storage requirements is used as the boot index (the first requirement represents the lowest index and defines highest boot priority)

default: false

nfvi_constraints

map of String0..n

Describes constraints on the NFVI for the VNFC instance(s) created from this VDU. This property is reserved for future use in the present document.

monitoring_parameters

list of 

tosca.datatypes.nfv.VnfcMonitoringParameter

0..n

Describes monitoring parameters applicable to a VNFC instantiated from this VDU

#configurable_properties

tosca.datatypes.nfv.VnfcConfigurableProperties

0..n

derived types are expected to introduce configurable_properties with its type derived from tosca.datatypes.nfv.VnfcConfigurableProperties

vdu_profile

tosca.datatypes.nfv.VduProfile

1

Defines additional instantiation data for the VDU.Compute node 

sw_image_data

tosca.datatypes.nfv.SwImageData

0..1

Defines information related to a SwImage artifact used by this Vdu.Compute node 

boot_data

tosca.datatypes.nfv.BootData

0..1

Contains the information 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.

    capabilities:

      virtual_compute:

        type: tosca.capabilities.nfv.VirtualCompute

        occurrences: [ 1, 1 ]

      virtual_binding:

        type: tosca.capabilities.nfv.VirtualBindable

        occurrences: [ 1, UNBOUNDED ]

    requirements:

      - virtual_storage:

          capability: tosca.capabilities.nfv.VirtualStorage

          relationship: tosca.relationships.nfv.AttachesTo

          occurrences: [ 0, UNBOUNDED ]


VduVirtualBlockStorage Data Model

  • tosca.nodes.nfv.Vdu.VirtualBlockStorage

  • property "sw_image_data" deprecated in 3.3.1

VduVirtualObjectStorage Data Model

  • tosca.nodes.nfv.Vdu.VirtualObjectStorage

  • No Change since 2.7.1

VduVirtualFileStorage Data Model

  • tosca.nodes.nfv.Vdu.VirtualFileStorage

  • requirement "virtual_binding" cardinality changed from default (1-1) to 1-1, i.e. no effective change in 3.3.1

VnfVirtualLink Data Model

  • tosca.nodes.nfv.VnfVirtualLink

  • No Change since 2.7.1

VipCp Data Model

  • New to SDC

  tosca.nodes.nfv.VipCp:

    derived_from: tosca.nodes.nfv.Cp

    description: Describes a connection point to allocate one or a set of virtual IP addresses 

IdTypeCardinalityConstraintsDescription

vip_function

String

1

- valid_values: [ high_availability, load_balance ]

Describes the algorithm used to obtain the checksum value

    requirements:

      - target:

          capability: tosca.capabilities.Node

          relationship: tosca.relationships.DependsOn

          occurrences: [ 1, UNBOUNDED ]

      - virtual_link:

          capability: tosca.capabilities.nfv.VirtualLinkable

          relationship: tosca.relationships.nfv.VipVirtualLinksTo

          occurrences: [1, 1]


VirtualCp Data Model

  tosca.nodes.nfv.VirtualCp:

    derived_from: tosca.nodes.nfv.Cp

    description: Describes a virtual connection point allowing the access to a number of VNFC instances (based on their respective VDUs).

IdTypeCardinalityConstraintsDescription

additionalServiceData

list of 

tosca.datatypes.nfv.AdditionalServiceData

1


References the VDU(s) which implement this service

    requirements:

      - target:

          capability: tosca.capabilities.Node

          relationship: tosca.relationships.DependsOn

          occurrences: [ 1, UNBOUNDED ]

      - virtual_link:

          capability: tosca.capabilities.nfv.VirtualLinkable

          relationship: tosca.relationships.nfv.VirtVirtualLinksTo

          occurrences: [1, 1]


Data types

Changed

The following data types already in ONAP have been changed from 2.5.1:

  • tosca.datatypes.nfv.VirtualMemory:
    • property "numa_enabled" default value changed from false to true
  • tosca.datatypes.nfv.VnfcConfigurableProperties:
    • property "additional_vnfc_configurable_properties" commented out
  • tosca.datatypes.nfv.VnfcAdditionalConfigurableProperties:
    • property "description" removed
  • tosca.datatypes.nfv.VduProfile:
    • version in ONAP contains extra properties not in ETSI:
      • "watchdog", "vmBootUpTimeOut"
  • tosca.datatypes.nfv.L2ProtocolData:
    • property "vlan_transparent" now mandatory
    • version in ONAP contains extra properties not in ETSI:
      • "segmentation_id" -> now in ONAP but as a string rather than int
      • "physical_network"
  • tosca.datatypes.nfv.VnfLcmOperationsConfiguration:
    • new properties added:
      • change_current_package, create_snapshot, revert_to_snapshot
  • tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:
    • property "description" removed"
  • tosca.datatypes.nfv.VnfScaleOperationConfiguration
    • property "scaling_by_more_than_one_step_supported" now mandatory
  • tosca.datatypes.nfv.VnfConfigurableProperties:
    • new optional properties added:
      • vnfm_interface_info, vnfm_oauth_server_info, vnf_oauth_server_info
    • existing property commented out:
      • additional_configurable_properties
  • tosca.datatypes.nfv.VnfAdditionalConfigurableProperties:
    • new required property added:
      • is_writable_anytime
    • existing property removed:
      • description
  • tosca.datatypes.nfv.VnfInfoModifiableAttributes:
    • existing properties commented out:
      • extensions, metadata
  • tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions:
    • existing property removed:
      • description
  • tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata:
    • existing property removed:
      • description
  • tosca.datatypes.nfv.SwImageData:
    • new optional property added:
      • provider
    • property "checksum" changed type from string to tosca.datatypes.nfv.ChecksumData
    • property "min_disk" new constraint added "greater_or_equal: 0 B"
    • property "min_ram" new constraint added "greater_or_equal: 0 B"
  • tosca.datatypes.nfv.VirtualBlockStorageData:
    • property "size_of_storage" new constraint added "greater_or_equal: 0 B"
    • property "rdma_enabled" now required
  • tosca.datatypes.nfv.VirtualObjectStorageData:
    • property "max_size_of_storage" new constraint added "greater_or_equal: 0 B"
  • tosca.datatypes.nfv.VirtualFileStorageData:
    • property "size_of_storage" new constraint added "greater_or_equal: 0 B"
  • tosca.datatypes.nfv.VirtualLinkBitrateLevel:
    • existing property removed:
      • description
  • tosca.datatypes.nfv.VnfOperationAdditionalParameters:
    • existing property removed:
      • description
  • tosca.datatypes.nfv.VnfChangeFlavourOperationConfiguration:
    • existing property removed:
      • description
  • tosca.datatypes.nfv.VnfChangeExtConnectivityOperationConfiguration:
    • existing property removed:
      • description
  • tosca.datatypes.nfv.VnfcMonitoringParameter
    • property "performance_metric" new valid_values added:
      • v_cpu_usage_mean, v_cpu_usage_peak,v_memory_usage_mean,v_memory_usage_peak, v_disk_usage_mean, v_disk_usage_peak, v_net_byte_incoming, v_net_byte_outgoing, v_net_packet_incoming, v_net_packet_outgoing, usage_mean_vStorage, usage_peak_vStorage
  • tosca.datatypes.nfv.VirtualLinkMonitoringParameter:
    • property "performance_metric" valid_values added:
      • byte_incoming, byte_outgoing, packet_incoming, packet_outgoing
    • property "performance_metric" valid_values removed:
      • packet_outgoing_virtual_link, packet_incoming_virtual_link
  • tosca.datatypes.nfv.VnfProfile
    • new optional property "service_availability_level"
  • tosca.datatypes.nfv.L3AddressData
    • version in SDC contains extra property not defined in ETSI:
      • fixed_ip_address
Unchanged

 The following data types are included in SDC but have no changes:

  • tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements
  • tosca.datatypes.nfv.RequestedAdditionalCapability
  • tosca.datatypes.nfv.VirtualCpu
  • tosca.datatypes.nfv.VirtualCpuPinning
  • tosca.datatypes.nfv.VlProfile
  • tosca.datatypes.nfv.VirtualLinkProtocolData
  • tosca.datatypes.nfv.L3ProtocolData
  • tosca.datatypes.nfv.IpAllocationPool
  • tosca.datatypes.nfv.InstantiationLevel
  • tosca.datatypes.nfv.VduLevel
  • tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration
  • tosca.datatypes.nfv.VnfHealOperationConfiguration
  • tosca.datatypes.nfv.VnfTerminateOperationConfiguration
  • tosca.datatypes.nfv.VnfOperateOperationConfiguration
  • tosca.datatypes.nfv.ScaleInfo
  • tosca.datatypes.nfv.ScalingAspect
  • tosca.datatypes.nfv.LogicalNodeData
  • tosca.datatypes.nfv.InterfaceDetails
  • tosca.datatypes.nfv.UriComponents
  • tosca.datatypes.nfv.UriAuthority
  • tosca.datatypes.nfv.ConnectivityType
  • tosca.datatypes.nfv.LinkBitrateRequirements
  • tosca.datatypes.nfv.CpProtocolData
  • tosca.datatypes.nfv.AddressData
  • tosca.datatypes.nfv.L2AddressData
  • tosca.datatypes.nfv.Qos
  • tosca.datatypes.nfv.VnfMonitoringParameter
Not Present

The following data types are not in SDC:

  • introduced 2.6.1
    • tosca.datatypes.nfv.ChecksumData 
  • introduced  2.7.1
    • tosca.datatypes.nfv.VnfmInterfaceInfo
    • tosca.datatypes.nfv.OauthServerInfo
    • tosca.datatypes.nfv.BootData
    • tosca.datatypes.nfv.KvpData
    • tosca.datatypes.nfv.ContentOrFileData 
    • tosca.datatypes.nfv.BootDataVimSpecificProperties
  • introduced 3.3.1
    • tosca.datatypes.nfv.VnfPackageChangeSelector
    • tosca.datatypes.nfv.VnfPackageChangeComponentMapping
    • tosca.datatypes.nfv.VnfChangeCurrentPackageOperationConfiguration 
    • tosca.datatypes.nfv.VnfCreateSnapshotOperationConfiguration
    • tosca.datatypes.nfv.VnfRevertToSnapshotOperationConfiguration 





  • No labels