...
- the nf_classification property - provides useful data governed filtering criteria, whose values should not be used in any ONAP platform logic but which could be used in model-specific logic.
- the name of a sub-type - no ONAP platform logic should ever use the name of a sub-type.
It is non-trivial in many senses. First, a NetworkFunction is non-trivial in terms of its connectivity with the outer world. A NetworkFunction-based type is normally defined with multiple capabilities and requirements of different types, which are serving different purposes. Since there is no typical “connectivity set” shared by all function, it cannot be captured by means of TOSCA in the base NetworkFunction node type. That is, the NetworkFunction node type is practically unusable per se. It needs to be further sub-typed, along with extending it with additional capabilities and requirements.
...
Code Block | ||||
---|---|---|---|---|
| ||||
node_types:
onap.nodes.NetworkFunction:
description: |
a base of the ONAP hierarchy of network functions
If you have a requirement for a factory, you're allotted
If you have a requirement for a PNFdevice, you're physical
If you have neither, you're virtual.
Expect to see network functions be group members for naming and homing.
derived_from: onap.nodes.Resource
properties:
# classification is inherited from onap.nodes.Resource, type, role, function should be required
provider_details:
type: onap.datatypes.ProviderDetails
required: false
attributes:
localization_language:
type: SOME STANDARD ENUMERATION MUST EXIST
required: false
description: instance-specific localization chosen for driving human-readable interfaces
capabilities:
# Expect to define these in the derived node_type, with mappings to appropriate the NetworkFunctionComponent CP
# This exposes external CPs of the NF.
requirements:
# Expect to define these in the derived node_type, with mappings to appropriate inner nodes
|
...