this is the DM agreed to R2 and maintenance release page version 35.
the final R3 DM is still under discussion.
any change to this page done by someone other then Victor Gao or Michael Lando will be reverted thank you.
Panel |
---|
borderStyle | solid |
---|
title | Node Types |
---|
|
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VDU.Compute |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VDUVdu.Compute:
derived_from: tosca.nodes.ComputeRoot
properties:
#id:
# node name
name:
type: string
# align with the IM, please refer to https://wiki.onap.org/display/DW/Design+Time+Model+Clean+Version#DesignTimeModelCleanVersion-Class:VDU/VDUDesc
type: string
required: true
description:
type: string
required: true
boot_order:
type: listmap # explicit index (boot index) not necessary, contrary to IFA011
. In the IM, it shoul be a array of KeyValuePair/NameValuePair
entry_schema:
type: string
required: false
nfvi_constraints:
type: listmap # Align with IM, it shoul be a array of KeyValuePair/NameValuePair
entry_schema:
type: string
required: false
configurable_properties:
type: map
#In the IM, the multipilicity of VnfcConfigurableProperties is 1, not a map.
entry_schema:
type: tosca.datatypes.nfv.VnfcConfigurableProperties
required: true true
injectvdu_filesprofile:
type: list
entry_schema:
type: stringtosca.datatypes.nfv.VduProfile
required: true
attributes:
privateinject_addressfiles:
# Used for vCPE usecase status:Aligned deprecated
with ONAP R2 public_address:
status: deprecatedIM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
networks:
statustype: deprecated
tosca.datatypes.nfv.injectFile
ports:
status: deprecated
capabilities: required: false #Aligned with ONAP R2 IM. it should be false.
virtualmeta_computedata: #metadata attached to the VM or container
type: tosca.capabilities.nfv.VirtualComputemap
virtual_binding:
entry_schema:
type: tosca.capabilities.nfv.VirtualBindable
string
occurrencesrequired: [1, UNBOUND]false
#monitoringuser_parameterdata:
#cloudinit userdata script support
# modeled as ad hoc (named) capabilities in VDU node template
# for example:
#capabilities:
type: string
required: false
#attributes: NOT DEFINED IN ONAP IM and SOL001
#private_address:
# cpu_loadstatus: tosca.capabilities.nfv.Metricdeprecated
#public_address:
# memory_usage status: tosca.capabilities.nfv.Metricdeprecated
host#networks:
#Editor note: FFS. How this capabilities should be used in NFV Profile
type: tosca.capabilities.Container # status: deprecated
#ports:
# status: deprecated
capabilities:
virtual_compute:
valid_source_typestype: [tosca.capabilities.nodesnfv.SoftwareComponent]VirtualCompute
virtual_binding:
occurrences: [0,UNBOUNDED]
endpointtype: tosca.capabilities.nfv.VirtualBindable
occurrences: [01,0 UNBOUND]
monitoring_parameter: os:
occurrencestype: [0,0]
scalable: #Editor note: FFS. How this capabilities should be used in NFV Profile
type: tosca.capabilities.Scalabletosca.capabilities.nfv.Metric # this is not a very clear data structure enough to be coded, suggest to be annotated.
binding:
occurrences: [0,UNBOUND]
requirements:
- virtual_storage:
capability: tosca.capabilities.nfv.VirtualStorage
relationship: tosca.relationships.nfv.VDUVdu.AttachedTo
node: tosca.nodes.nfv.VDU.VirtualStorage
occurences: [ 0, UNBOUNDED ]
artifacts: - local_storage: #For NFV Profile, this requirement is deprecated.
occurrences: [0,0]
artifacts:
- sw_image:
file:
type: tosca.artifacts.nfv.SwImage |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VDU.VirtualStorage |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VDUVdu.VirtualStorage:
derived_from: tosca.nodes.Root
properties:
#id:
# node name
type_of_storage:
type: string
requiredconstraints:
true
size_ - valid_values: [volume, object, root, block]
required: true
size_of_storage:
type: scalar-unit.size
required: true
#vduStorageRequirementsvdu_storage_requirements:
# type: map
# entrySchemarequired: false
# type: TBD, missing in ONAP IM
# required: false
rdma rdma_enabled:
type: boolean
required: false
capabilities:
virtual_storage:
type: tosca.capabilities.nfv.VirtualStorage
artifacts:
- sw_image:
file:
type: tosca.artifacts.Deployment.Image
#interfaces: # not needed for virtualstroage. it doesn't support cloudinit.
# cloudinit:
# type:tosca.interfaces.nfv.vdu.cloudinit |
Code Block |
---|
| Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.Cp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.Cp:
derived_from: tosca.nodes.Root
properties:
layer_protocol:
type:stringlist
constraintsentry_schema:
constraints:
- valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
required:true
role: #Name in ETSI NFV IFA011 v0.7.3 cpRole
type:string
constraints:
- valid_values: [ root, leaf ]
required:false
description:
type: string
required: false
protocol_data:
type: list
entry_schema:
type: tosca.datatypedatatypes.nfv.CpProtocolData
required:true
allowedAddressDatatrunk_mode:
type: tosca.datatype.nfv.AddressDataboolean
required: false | Code Block |
---|
|
language | xml |
---|
title | tosca.nodes.nfv.VduCp |
---|
linenumbers | true | collapse | true |
---|
tosca.nodes.nfv.VduCp:
derived_from: tosca.nodes.nfv.Cp
properties:
bitrate_requirement:
type: integer
allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0. required:false
vnicName:
type: String
required:false
vnicOrder:
type: integer
tosca.datatypes.nfv.AddressData # In the IM, it is a array, but here it is not a array. TBD.
required: false |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VduCp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VduCp:
derived_from: tosca.nodes.nfv.Cp
properties:
bitrate_requirement:
type: integer
required:false
vnic_name: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: string
required:false
vnic_order: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: integer
required:false
vnic_type: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0
type: string
constraints:
- valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
required:false
virtual_network_interface_requirements:
type: list
entry_schema:
type: VirtualNetworkInterfaceRequirements
required:false
# order: #there is no this attribute in IM.
# type: integer
# required: false
# constraints:
# - greater_or_equal: 0
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.VnfVirtualLink
- virtual_binding: required:false
vnicType:
type: String
constraints:
- valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
required:false
virtual_network_interface_requirementscapability: tosca.capabilities.nfv.VirtualBindable
type: list
entry_schema:relationship: tosca.relationships.nfv.VirtualBindsTo
type: VirtualNetworkInterfaceRequirements
required:false
node: tosca.nodes.nfv.Vdu.Compute |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VnfVirtualLink |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfVirtualLink:
derived_from: tosca.nodes.Root
propertiesrequirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkableconnectivity_type:
relationshiptype: tosca.relationshipsdatatypes.nfv.VirtualLinksToConnectivityType
required: true
nodedescription: tosca.nodes.nfv.VnfVirtualLinkDesc
type: string
required: false
- virtualtest_bindingaccess:
type: list
capability: tosca.capabilities.nfv.VirtualBindable
entry_schema:
relationshiptype: tosca.relationships.nfv.VirtualBindsTo
string
required: false
nodevl_profile: tosca.nodes.nfv.VDU | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VnfExtCp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfExtCp:
derived_from
type: tosca.nodesdatatypes.nfv.CpVlProfile
required: true
propertiescapabilities:
virtual_network_interface_requirements:
type: list
entry_schema:
monitoring_parameter: # this is not a very clear data structure enough to be coded, suggest to be annotated.
type: tosca.datatypescapabilities.nfv.VirtualNetworkInterfaceRequirementsMetric
requiredoccurrences: false
requirements:
[0,UNBOUND]
- external_virtual_linklinkable:
capabilitytype: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
node |
Code Block |
---|
firstline | 1 |
---|
title | tosca.nodes.nfv.VNF |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VNF:
derived_from: tosca.nodes.nfv.VLRoot
- internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3 intVirtualLinkDesc
properties:
capabilitydescriptor_id: tosca.capabilities.nfv.VirtualLinkable
# instead of vnfd_id
relationshiptype: tosca.relationships.nfv.VirtualLinksTo
string # GUID
noderequired: tosca.nodes.nfv.VLtrue
descriptor_version: # occurrences: [ 0, 1 ] # 0 if re-exposing a VduCp
# 1 if connecting to an internal VL | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VnfVirtualLink |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfVirtualLink:
derived_from: tosca.nodes.Root
properties:
connectivity_type:instead of vnfd_version
type: string
required: true
provider: # instead of vnf_provider
type: string
required: true
product_name: # instead of vnf_product_name
type: tosca.datatypes.nfv.ConnectivityTypestring
required: true
description:software_version: # instead of vnf_software_version
type: string
required: falsetrue
testproduct_info_accessname:
# instead of vnf_product_info_name
type: list
entry_schema:type: string
typerequired: stringfalse
requiredproduct_info_description: false
# instead vl_profile:of vnf_product_info_description
type: tosca.datatypes.nfv.VlProfilestring
required: truefalse
capabilities:
monitoringvnfm_parameterinfo:
type: tosca.capabilities.nfv.Metriclist
occurrences: [0,UNBOUND]
virtual_linkableentry_schema:
type: tosca.capabilities.nfv.VirtualLinkable | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VDU.Composition |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VDU.Composition:
derived_from: tosca.nodes.root
properties: type: string
required: true
namelocalization_languages:
type: stringlist
requiredentry_schema: true
description:
type: string
required: truefalse
bootdefault_localization_orderlanguage:
type: list string
entry_schemarequired: false
configurable_properties:
type: stringtosca.datatypes.nfv.VnfConfigurableProperties
required: false
nfvimodifiable_constraintsattributes:
type: listtosca.datatypes.nfv.VnfInfoModifiableAttributes
entry_schemarequired:
false # true in IFA011, type: string
required:but all of members are false. Align with the IM, it is false
configurableflavour_propertiesid:
type: mapstring
required: true entry_schema:
flavour_description:
type: tosca.datatypes.nfv.VnfcConfigurableProperties
string
required: true
capabilities:
# virtualmonitoring_computeparameter:
type: tosca.capabilities.nfv.VirtualCompute
virtual_storage:
type: tosca.capabilities.nfv.VirtualStorage
occurrences: [0,UNBOUNDED]# modelled as ad hoc capabilities in the VNF node template
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.VnfVirtualLinkDesc
VnfVirtualLink
occurrences: [1 0, UNBOUNDED ]
interfaces:
Nfv:
type: tosca.interfaces.nfv.vnf.lifecycle.Nfv |
|