Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The following describes Data Model based on the ETSI v3v4.32.1 SOL001 VNFD plus CNF enhancements, which came from 4.1.1with CNF support.

  • 2.7.x for backward compatibility during SDC onboarding + 4.2.1 with CNF
    • If the type is changed, separate properties for 2.7.x and 34.32.1 will be used
    As the

ETSI SOL001

...

ETSI SOL001 v4.2.1 Data Model with CNF support

Gliffy Diagram
nameETSI SOL001 v4.2.1 VNFD
pagePin36

Gliffy Diagram
macroId2c5176e3-7108-4c77-9e11-a577a167a530
displayNameETSI SOL004 v4.2.1 Package
nameETSI SOL004 v4.2.1 Package
pagePin115


Gliffy Diagram

VNF Data Model

macroId5bff857c-6db5-454d-9593-02a5af1fc7bd
displayNameONAP ETSI NFV SOL001 Aligned Proposal
nameONAP ETSI NFV SOL001 Aligned Proposal
pagePin5

VNF Data Model

  • property "vnfm_infoproperty "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

OsContainer VDU  Data Model

Gliffy Diagram
macroId2eaccb5d550c980d-58304f64-48ff4753-ac07b6d0-2f937e7845995a084f06ee84
namev4.12.1 VDU and OsContainerDesc mappingOsContainerDeployableUnit
pagePin12

VDU OsContainer Data Model

additionalcapabilities

tosca.nodes.nfv.Vdu.osContainer:

    derived_from: tosca.nodes.Root

    description: Describes the resources of a single container within a VDU

IdTypeCardinalityDescription
nameString1Human readable name of the Container
descriptionString1Human readable description of the Containerlogical_nodemap of tosca.datatypes.nfv.LogicalNodeData0..nDescribes the logical node requirements

requested_

cpu_

map of 

tosca.datatypes.nfv.RequestedAdditionalCapability

0..n

Describes additional capabilities to host this container

resources

requestedCpuResources

integer

0..1

Number of milli-Cpus

CpuResourcesLimitcpu_resources_limit

integer

0..1

Limit (Max) Number of milli-Cpus

requestedMemoryResourcesrequested_memory_resources

scalar-unit.size

0..1

Amount of Memory requested

MemoryResourcesLimitmemory_resources_limit

scalar-unit.size

0..1

Limit (Max) Memory

requestedEphemeralStorageResourcesrequested_ephemeral_storage_resourcesscalar-unit.size0..1Amount of Ephemeral Storage Requested

ephemeralStorageResourcesLimitephemeral_storage_resources_limit

scalar-unit.size

0..1

Limit on Ephemeral Storage

    capabilities:

      ContainerGroupablecontainer_deployable:

        type: tosca.capabilities.nfv.ContainerGroupableContainerDeployable

        occurrences: [ 1, UNBOUNDED ]

VDU

...

OsContainerDeployableUnit Data Model


tosca.nodes.nfv.Vdu.

osContainerGroup

osContainerDeployableUnit:

    derived_from: tosca.nodes.Root

    description: Describes the aggregate of container(s) of a VDU which is a construct  supporting the description of the deployment and operational behavior of a VNFC; Corresponds to a "Pod" in K8S; Can have multiple constitute containers.

IdTypeCardinalityDescription
nameString1Human readable name of the VDU
descriptionString1Human readable description of the VDU
logical_node

Map of tosca.datatypes.nfv.LogicalNodeData

0..1

Describes the Logical Node requirements

requested_additional_capabilities

Map of tosca.datatypes.nfv.RequestedAdditionalCapability

0..1

Describes additional capability for a particular OS container.

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.VnfcMonitoringParameter0..n

Describes monitoring parameters applicable to a VNFC instantiated from this VDU; Per Container on IFA011 v4.1.1 but more relevant at the VDU (Pod) Level

#configurable

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

Describes the configurable properties of all VNFC instances based on this VDU.

vdu_profile

tosca.datatypes.nfv.VduProfile

1

Defines additional instantiation data for the Vdu.OsContainerGroup 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 Per Container on IFA011 v4.1.1 but more relevant at the VDU (Pod) Level

    capabilities:

      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 ]

   - container_grouping

    capabilities:

      virtual_binding:

        type: tosca.capabilities.nfv.VirtualBindable

        occurrences: [ 1, UNBOUNDED ]

      associable:

        type: tosca.capabilities.nfv.AssociableVdu

        occurrences: [ 1, 1 ]

    requirements:

      - virtual_storage:

          capability: tosca.capabilities.nfv.VirtualStorage

          relationship: tosca.relationships.nfv.AttachesTo

          occurrences: [ 0, UNBOUNDED ]

   - container_deployable_unit:

       capability: tosca.capabilities.nfv.

ContainerGroupable

ContainerDeployable

       relationship: tosca.relationships.nfv.

GroupsTo

DeploysTo

       occurrences:  [ 1, UNBOUNDED ]

...


Mciop Data Model

Gliffy Diagram
macroId52d3d86d647a4106-0434061b-45654156-9ea9851e-ca1b16d0c8fff97e1fa3dc2c
name4.12.1 MciopProfilemciop Node
pagePin1

  tosca.datatypesnodes.nfv.MciopProfileMciop:

    derived_from: tosca.datatypesNodes.Root

    description: describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF Representation of the object described by the mciop artifact, capable of being profiled by the properties of the MciopProfile information element defined in ETSI GS NFV-IFA 011 [1].

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

  requirements:

      - associatedVdu:

          capability: tosca.capabilities.nfv.AssociableVdu

          relationship: tosca.relationships.nfv.Associates

          node: tosca.nodes.nfv.OsContainerDeployableUnit

          occurrences: [ 0, UNBOUNDED ]

Note: The dependson requirement as defined TOSCA-Simple-Profile-YAML-v1.3 may be used towards other Mciop nodes to express the order of deployment.


VnfInstantiateOperationConfiguration 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).

...

vduCp Data Model

  • tosca.nodes.nfv.VduCP
  • No Change since 4.2.7.11 added trunk_binding capability
  • 4.2.1 removed the container_binding requirement from 4.1.1 based model
  • 4.2.1 removed the node Vdu.Compute constraint from the virtual_binding requirement so that VduCp can also reference  Vdu.OsContainerDeployableUnit

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

...

  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 ]

(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:

      -

virtual_storage

target:

          capability: tosca.capabilities.

nfv.VirtualStorage

Node

          relationship: tosca.relationships.

nfv.AttachesTo

DependsOn

          occurrences: [

0

1, 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

      - virtual_link:

          capability: tosca.capabilities.nfv.VirtualLinkable

          relationship: tosca.relationships.nfv.VipVirtualLinksTo

          occurrences: [1, 1]


VirtualCp Data Model

Gliffy Diagram
macroIda3b53088-8b52-4dbe-8925-e26a5ae6eba4
namev4.2.1 VirtualCp
pagePin1


  tosca.datatypes.nfv.ServicePortData:

    

  tosca.nodes.nfv.VipCp:

   

derived_from: tosca.

nodes

datatypes.

nfv.Cp

Root

    

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

description: describes the service identifying port properties exposed by the VirtualCp

IdTypeCardinality
ConstraintsDescriptionvip_function
ConstraintsDescription

name

String

1


The name of this port exposed by the VirtualCp.

protocolString1
-

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

...

TCP, UDP, SCTP ]

The L4 protocol for this port exposed by the VirtualCp.

portInteger1

The L4 port number exposed by the VirtualCp.

PortConfigurable

Boolean1

Specifies whether the port attribute value is allowed to be configurable.


  tosca.datatypes.nfv.AdditionaServiceData:

     derived_from: tosca.datatypes.Root

     description: describes the additional service data of the VirtualCp used to expose properties of the VirtualCp

IdTypeCardinalityConstraintsDescription
portData

List of tosca.datatypes.nfv.ServicePortData

1

Service port numbers exposed by the VirtualCp.

serviceData

String0..1

Service matching information exposed by the VirtualCp.

...


  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 toscaof 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.VirtVirtualLinksToVirtualLinksTo

          occurrences: [10, 1]


Data types. (Input from Michael Morris)

...