...
- 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
- As the ETSI SOL001 WG produces a stable draft/release of SOL001 4.X specification , we expect to update the data model to align with that specifcation.
ETSI 3.3.1 SOL001 Data Model with minimum CNF Properties from 4.1.1
Gliffy Diagram | ||||||
---|---|---|---|---|---|---|
|
Gliffy Diagram | ||||||
---|---|---|---|---|---|---|
|
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 | |||
Id | Type | Cardinality | Description |
---|---|---|---|
descriptor_id | String #UUID | 1 | Identifier for the VNFD |
descriptor_version | String | 1 | Identifies the version of the VNFD |
provider | String | 1 | provider of the VNF and of the VNFD |
product_name | String | 1 | name to identify the VNF product. Invariant for the VNF Product lifetime |
software_version | String | 1 | Software version of the VNF |
product_info_name | String | 0..1 | Human readable name of the VNF Product |
product_info_description | String | 0..1 | Human readable name for the VNF product |
vnfm_info | list of String | 1..n | Identifies VNFM(s) compatible with the VNF |
localization_languages | list of String | 0..n | Information 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 | String | 1 | Identifier of the Deployment Flavour within the VNFD |
flavour_description | String | 1 | 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_profile | list of tosca.datatypes.nfv.MciopProfile | 0..n | Describes additional instantiation data for the MCIOPs used in this deployment |
scale_status | map of tosca.datatypes.nfv.ScaleInfo | 0..n | Scale 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 | ||||||
---|---|---|---|---|---|---|
|
VDU OsContainer Data Model
tosca.nodes.nfv.Vdu.osContainer: derived_from: tosca.nodes.Root description: Describes the resources of a single container within a VDU | |||||||
Id | Type | Cardinality | Description | ||||
---|---|---|---|---|---|---|---|
name | String | 1 | Human readable name of the Container | ||||
description | String | 1 | Human readable description of the Container | ||||
logical_node | map of tosca.datatypes.nfv.LogicalNodeData | 0..n | Describes the logical node requirements | ||||
requested_additional_capabilities | map of tosca.datatypes.nfv.RequestedAdditionalCapability | 0..n | Describes additional capabilities to host this container | compute_requirements | |||
requestedCpuResources | integer | map of String0..1 | requestedCpuResources | integer | 0..1 | Number of milli-Cpus | |
CpuResourcesLimit | integer | 0..1 | Limit (Max) Number of milli-Cpus | ||||
requestedMemoryResources | scalar-unit.size | 0..1 | Amount of Memory requested | ||||
MemoryResourcesLimit | scalar-unit.size | 0..1 | Limit (Max) Memory | ||||
requestedEphemeralStorageResources | scalar-unit.size | 0..1 | Amount of Ephemeral Storage Requested | ||||
ephemeralStorageResourcesLimit | scalar-unit.size | virtual_local_storage | list of tosca.datatypes.nfv.VirtualBlockStorageData | 0..n1 | Limit on Ephemeral Storage | ||
capabilities: ContainerGroupable: type: tosca.capabilities.nfv.ContainerGroupable occurrences: [ 1, UNBOUNDED ] requirements |
VDU OsContainerGroup Data Model
tosca.nodes.nfv.Vdu.osContainerGroup:
|
derived_ |
from: tosca. |
nodes. |
Root
|
occurrences: [ 0, UNBOUNDED ]
VDU OsContainerGroup Data Model
tosca.nodes.nfv.Vdu.osContainerGroup: 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. | |||
Id | Type | Cardinality | Description |
---|---|---|---|
name | String | 1 | Human readable name of the VDU |
description | String | 1 | Human readable description of the VDU |
nfvi_constraints | map of String | 0..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; Per Container on IFA011 v4.1.1 but more relevant at the VDU (Pod) Level |
#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.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: capability: tosca.capabilities.nfv.ContainerGroupable relationship: tosca.relationships.nfv.GroupsTo occurrences: [ 1, UNBOUNDED ] |
...
Gliffy Diagram macroId 52d3d86d-0434-4565-9ea9-ca1b16d0c8ff name 4.1.1 MciopProfile pagePin 12
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. | ||||
Id | Type | Cardinality | Constraints | Description |
---|---|---|---|---|
mciopId | String | 1 | Identifies the MCIOP in the VNF package. | |
deploymentOrder | Integer | 0..1 | greater_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 String | 0..n | References the affinity or anti-affinity groups(s) the MCIOP belongs to. | |
associatedVdu | list of String | 0..n | List of VDUs which are associated to this MCIOP and which are deployed using this MCIOP |
...
tosca.datatypes.nfv.ChecksumData: derived_from: tosca.datatypes.Root description: Describes information about the result of performing a checksum operation over some arbitrary data | ||||
Id | Type | Cardinality | Constraints | Description |
---|---|---|---|---|
algorithm | String | 1 | Describes the algorithm used to obtain the checksum value | |
hash | String | 1 | 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: derived_from: tosca.nodes.nfv.Cp description: Describes network connectivity between a VNFC instance based on this VDU and an internal VL | |||
Id | Type | Cardinality | Description |
---|---|---|---|
bitrate_requirement | integer | 0..1 | Bitrate requirement in bit per second on this connection point |
virtual_network_interface_requirements | list of tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements | 0..n | Specifies requirements on a virtual network interface realising the CPs instantiated from this CPD |
order | integer | 0..1 | The order of the NIC on the compute instance (e.g.eth2) |
vnic_type | string | 0..1 | Describes the type of the virtual network interface realizing the CPs instantiated from this CPD. Valid values: normal, macvtap, direct, baremetal, virtio-forwarder, direct-physical, smart-nic, bridge, ipvlan, loopback, macvlan, ptp, vlan, host-device |
capabilities: virtual_binding: type: tosca.capabilities.nfv.VirtualBindable occurrences: [ 1, UNBOUNDED ] | |||
requirements: - virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable |
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
- property "vnic_type" has the following extra valid_values:
- 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
...