Versions Compared

Key

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

Some VNF suppliers make use of the underlying hardware platform capabilities in order to accelerate performance and optimize throughput of their VNF products. In order to ensure proper instantiation and operation of such VNFs, the VNF descriptor (VNFD) is used to describe VNF-specific hardware platform (HPA) capability requirements that will be matched against the capabilities of the underlying hardware infrastructure resources, in order to ensure that appropriate resources are used for instantiation.

Requirement Format

Specifying HPA

...

requirements

There are five different types of HPA capability requirements that can be specified using in the VNFD VNFdescriptor - CPU, memory, storage, network and NUMA. Each requirement type is specified using a separate key-value pair arrayspecified using a TOSCA hash map containing a list of capabilities and their corresponding desired configuration values. The names of HPA capabilities and the format of their configuration values are managed outside of ONAP, using the HPA Capability Registry maintained by ETSI NFV ISG, and are meant to be opaque from the TOSCA orchestrator and parser perspectives. The following table describes where within the VNFD the HPA requirement hash maps are defined and where within the VNFD they are used. 

HPA RequirementsAttribute NameDefined in...Used in...
CPUvdu_cpu_requirementstosca.datatypes.nfv.VirtualCputosca.nodes.nfv.VDU.Compute
Memoryvdu_memory_requirementstosca.datatypes.nfv.VirtualMemorytosca.nodes.nfv.VDU.Compute
NICnetwork_interface_requirementstosca.datatypes.nfv.VirtualNetworkInterfaceRequirements

tosca.nodes.nfv.VduCp

tosca.nodes.nfv.VnfExtCp

Storagevdu_storage requirementsmaptosca.nodes.nfv.VDU.VirtualStorage
NUMAlogical_node_requirementstosca.datatypes.nfv.LogicalNodeDatatosca.nodes.nfv.VDU.Compute

HPA Requirement Key/Value Pair Entry Format

HPA capability requirements are specified using a set of TOSCA hash maps within the VNFD. Each entry in the array hash map fully defines a single HPA capability requirement. Within a given hash map entry, the "key" portion of the entry contains the HPA capability name and the "value" portion contains structured data representing the the attributes of the corresponding configuration value.

The "key" portion of each array entry contains a string specifying a particular HPA capability name. The "value" portion of each array entry is a structured field containing information used to interpret the requested capability configuration. The capability values are defined as TOSCA strings, and their content can vary from a single attribute to complex permutations of simple attributes, lists and hash maps. Content and structure of capability values are defined using JSON schemas that can be used to parse the capability value strings in order to determine the desired state of HPA capabilities.

All capability value strings contain a set of pre-defined attributes that are used refine the how the requirements should be treated and what configuration value schema should be used for its interpretation. The following table describes that pre-defined attributes and their purpose:

Array EntryValues
<key>A string specifying the name of a given HPA capability.
<value>A
list
map of key-value pairs describing the configuration value of a given capability, where the key-value pairs are defined as follows

keytypevalue
schema-version
schemaVersionstringA string describing the version the schema to be used for validation and interpretation of the <configuration-value>.
schema-location
schemaSelectorstring
A URL formatted string describing the location of the schema.platform-id

An Identifier for the particular schema to use.

hardwarePlatformstringA string describing what hardware platform associated with a given HPA capability. For vendor-neutral HPA capabilities, a value of "generic" is used.
mandatory
boolean
stringA boolean value expressed in string type specifying whether the requested capability is mandatory for for proper operation of the VNF. The value of "true" indicated that a given HPA capability must be present. The value of "false" indicates that the VNF can function with or without the capability.
configuration-value
configurationValuestringA string describing the configuration value of a given capability, as defined by the schema.

CPU & Memory Requirements

Storage Requirements

...

NUMA Requirements

.

...

.

...

.Structured data representing the HPA capability configuration value-specific attributes. Can vary from a single attribute to complex permutations of simple attributes, lists and hash maps.