Versions Compared

Key

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

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
borderStylesolid
titleNode Types
Code Block
languagexml
titletosca.nodes.nfv.VDU.Compute
linenumberstrue
collapsetrue
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: list map # 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: NOT DEFINED IN ONAP IM and SOL001
    #private_address:
    #  status: deprecated
    #public_address:
    #  status: deprecated
    #networks:
    #  status: deprecated
    #ports:
    #  status: deprecated
  capabilities:
    virtual_compute: inject_files: # Used for vCPE usecase Aligned with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
       type: tosca.datatypes.nfv.injectFile
       required: false  #Aligned with ONAP R2 IM. it should be false.
    meta_data: #metadata attached to the VM or container
       type: map
      type: tosca.capabilities.nfv.VirtualCompute
    virtual_binding: 
 entry_schema:
         type: tosca.capabilities.nfv.VirtualBindable
string
       occurrencesrequired: [1, UNBOUND]false
    monitoringuser_parameter: data: #cloudinit userdata script support
      type: tosca.capabilities.nfv.Metric string
      occurrencesrequired: [0,UNBOUND]
false
  requirements:#attributes: NOT DEFINED IN ONAP IM and SOL001
    - virtual#private_storageaddress:
    #  status: deprecated
 capability: tosca.capabilities.nfv.VirtualStorage
  #public_address:
    #  relationshipstatus: tosca.relationships.nfv.VDU.AttachedTodeprecated
    #networks:
    #  nodestatus: tosca.nodes.nfv.VDU.VirtualStoragedeprecated
    #ports:
    occurences:# [ 0, UNBOUNDED ]status: deprecated
  artifactscapabilities:
    - swvirtual_imagecompute: 
      type:  file:
tosca.capabilities.nfv.VirtualCompute
    virtual_binding: 
      type: tosca.artifactscapabilities.nfv.SwImage
Code Block
languagexml
titletosca.nodes.nfv.VDU.VirtualStorage
linenumberstrue
collapsetrue
tosca.nodes.nfv.VDU.VirtualStorage: 
  derived_from: tosca.nodes.Root
  properties:
    #id:VirtualBindable
      occurrences: [1, UNBOUND]
    monitoring_parameter:  #  node name
      type_of_storage:
      type: string
      required: true : tosca.capabilities.nfv.Metric # this is not a very clear data structure enough to be coded, suggest to be annotated.
    size_of_storage:
   occurrences: [0,UNBOUND]
  requirements:
    - typevirtual_storage: scalar-unit.size

        requiredcapability: truetosca.capabilities.nfv.VirtualStorage
   #vduStorageRequirements:
   #  typerelationship: maptosca.relationships.nfv.Vdu.AttachedTo
   #  entrySchema:
   #node: tosca.nodes.nfv.VDU.VirtualStorage
    type: TBD, missing in ONAPoccurences: IM
[ 0, UNBOUNDED #]
  requiredartifacts: false
    rdma_enabled:
    -  type: booleansw_image:
      required: false
  capabilitiesfile:
    virtual_storage:
      type: tosca.capabilities.nfv.VirtualStorage
  artifacts:
    - sw_image:
        file: 
        type: tosca.artifacts.Deploymentnfv.ImageSwImage
Code Block
languagexml
titletosca.nodes.nfv.VDU.CpVirtualStorage
linenumberstrue
collapsetrue
tosca.nodes.nfv.CpVdu.VirtualStorage: 
  derived_from: tosca.nodes.Root 
  properties:
    properties:#id:
      # node name
    layertype_of_protocolstorage:
      type: string
        constraints:
          - valid_values: [ethernetvolume, mplsobject, odu2root, ipv4, ipv6, pseudo_wire block]
      required: true 
    rolesize_of_storage:
 #Name in ETSI NFV IFA011 v0.7.3 cpRole type: scalar-unit.size
      typerequired:string true
      constraints:vdu_storage_requirements: 
        - valid_values: [ root, leaf ]type: map
      required: false
    descriptionrdma_enabled:
      type: stringboolean
      required: false
  capabilities:
   protocol virtual_datastorage:
      type: listtosca.capabilities.nfv.VirtualStorage
  artifacts:  
    entry- sw_schemaimage:
        typefile: tosca.datatype.nfv.CpProtocolData
      required:true
    allowedAddressData:
      type: tosca.datatypeartifacts.nfvDeployment.AddressDataImage
#interfaces: # not needed for virtualstroage. it required: falsedoesn't support cloudinit.
#	cloudinit:
#       type:tosca.interfaces.nfv.vdu.cloudinit
Code Block
Code Block
languagexml
titletosca.nodes.nfv.VduCpCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VduCp:
  derived_from: tosca.nodes.nfv.Cp
  properties:
    bitrate_requirement:
      type: integertosca.nodes.nfv.Cp:
  derived_from: tosca.nodes.Root 
    properties:
    layer_protocol:
      type:list
      entry_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
    vnicNamedescription:
      type: Stringstring
      required: false
    vnicOrderprotocol_data:
      type: integerlist
      requiredentry_schema:false
    vnicType:
      type: String
	tosca.datatypes.nfv.CpProtocolData
  constraints:
    required:true
      - valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]trunk_mode:
      type: boolean
      required:false true
    virtualallowed_network_interface_requirements: 
address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.        type: list
      entry_schema:
        type: VirtualNetworkInterfaceRequirements
      required:false
type: tosca.datatypes.nfv.AddressData   # In requirements:
the IM, it is a array, but here - virtual_link:
    it is not a array. TBD.
      capabilityrequired: false
Code Block
languagexml
titletosca.nodes.nfv.VduCp
linenumberstrue
collapsetrue
tosca.capabilitiesnodes.nfv.VirtualLinkableVduCp:
          relationshipderived_from: tosca.relationshipsnodes.nfv.VirtualLinksTo
Cp
  properties:
    bitrate_requirement:
       nodetype: tosca.nodes.nfv.VnfVirtualLinkDescinteger
    
  required:false
    vnic_name: # - virtual_binding:
Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and capability:SOL001 toscav0.capabilities6.nfv0.VirtualBindable 
      type: string
      relationship: tosca.relationships.nfv.VirtualBindsTorequired:false
    vnic_order: # Aligned with ONAP R2 node: tosca.nodes.nfv.VDU  
Code Block
languagexml
titletosca.nodes.nfv.VnfExtCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfExtCp:
  derived_from: tosca.nodes.nfv.Cp
  properties:
    virtual_network_interface_requirements:Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0. 
      type: integer
      typerequired:false
 list
   vnic_type: #  entry_schema:
        type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirementsAligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0
      requiredtype: falsestring
	  requirementsconstraints:
    - external_virtual_link:
        capability: tosca.capabilities.nfv.VirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksTo
        node: tosca.nodes.nfv.VL
   
    - internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3 intVirtualLinkDesc- valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
      required:false
    virtual_network_interface_requirements: 
      type: list
      entry_schema:
        capabilitytype: tosca.capabilities.nfv.VirtualLinkableVirtualNetworkInterfaceRequirements
      required:false
  relationship: tosca.relationships.nfv.VirtualLinksTo
 # order:      #there is no this attribute node: tosca.nodes.nfv.VLin IM.
   #     occurrencestype: [integer
 0, 1 ] # 0 if re-exposing a VduCp
# 1 if connecting to an internal VL
Code Block
languagexml
titletosca.nodes.nfv.VnfVirtualLink
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfVirtualLink:
  derived_from: tosca.nodes.Root
  properties:
    connectivity_typerequired: false
   #   constraints:
   #     - greater_or_equal: 0
    requirements:
        - virtual_link:
      type    capability: tosca.datatypescapabilities.nfv.ConnectivityTypeVirtualLinkable
          requiredrelationship: truetosca.relationships.nfv.VirtualLinksTo
    description:
      type: string
node: tosca.nodes.nfv.VnfVirtualLink    
   required: false
    test- virtual_accessbinding:
      type: list
    entry_schema:
   capability: tosca.capabilities.nfv.VirtualBindable
   type: string
      requiredrelationship: falsetosca.relationships.nfv.VirtualBindsTo
    vl_profile:
      node: tosca.nodes.nfv.Vdu.Compute
Code Block
languagexml
titletosca.nodes.nfv.VnfVirtualLink
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfVirtualLink:
  derived_from: tosca.nodes.Root
  propertiestype: tosca.datatypes.nfv.VlProfile
      required: true
  capabilities:
    monitoringconnectivity_parametertype:
      type: tosca.capabilitiesdatatypes.nfv.MetricConnectivityType
      occurrencesrequired: [0,UNBOUND]true
    virtual_linkabledescription:
      type: tosca.capabilities.nfv.VirtualLinkable
Code Block
languagexml
titletosca.nodes.nfv.VDU.Composition
linenumberstrue
collapsetrue
tosca.nodes.nfv.VDU.Composition:
  derived_from: tosca.nodes.root
  properties:
    name:
string
      required: false
    test_access:
      type: list
      entry_schema:
        type: string
      required: truefalse
    descriptionvl_profile:
      type: string: tosca.datatypes.nfv.VlProfile
      required: true
    boot_ordercapabilities:
    monitoring_parameter:  type: list# 
this is not a very clear entry_schema:
data structure enough to be coded, suggest to type:be stringannotated.
      required: false
    nfvi_constraints:type: tosca.capabilities.nfv.Metric
      typeoccurrences: list[0,UNBOUND]
      entryvirtual_schemalinkable:
         type: string
      required: false
    configurable_properties:type: tosca.capabilities.nfv.VirtualLinkable
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VNF:
  derived_from: tosca.nodes.Root
  properties: 
       typedescriptor_id: map
# instead of     entry_schema:
    vnfd_id
      type: tosca.datatypes.nfv.VnfcConfigurableProperties
  string # GUID
      required: true
  
  capabilitiesdescriptor_version:
 # instead of virtualvnfd_compute: version
      type: tosca.capabilities.nfv.VirtualCompute
string
      virtual_storagerequired: true
    provider: # instead type: tosca.capabilities.nfv.VirtualStorage
occurrences: [0,UNBOUNDED]
  requirements:
of vnf_provider
      type: string
     - virtual_linkrequired: true
    product_name: # instead of  capability: tosca.capabilities.nfv.VirtualLinkable
vnf_product_name
      type: string
   relationship: tosca.relationships.nfv.VirtualLinksTo
  required: true
     node: tosca.nodes.nfv.VnfVirtualLinkDesc    
software_version: # instead of vnf_software_version
      type: string
  occurrences: [1,UNBOUNDED] 
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VNF:
  derived_from: tosca.nodes.Root
  properties:    required: true
    product_info_name: # instead of vnf_product_info_name
      type: string
      required: false
    descriptorproduct_info_iddescription: # instead of vnfd_idvnf_product_info_description
      type: string # GUID
      required: truefalse
    descriptorvnfm_versioninfo:
   #  instead of vnfd_versiontype: list
      typeentry_schema:
 string
       requiredtype: truestring
    provider: # instead of vnf_providerrequired: true
      type: stringlocalization_languages:
      requiredtype: truelist
    product  entry_nameschema:
 # instead of vnf_product_name
      type: string
      required: truefalse
    softwaredefault_localization_version: # instead of vnf_software_versionlanguage:
      type: string
      required: truefalse
    product_info_name: # instead of vnf_product_info_nameconfigurable_properties:
      type: stringtosca.datatypes.nfv.VnfConfigurableProperties
      required: false
    productmodifiable_info_description: # instead of vnf_product_info_descriptionattributes:
      type: stringtosca.datatypes.nfv.VnfInfoModifiableAttributes
      required: false
    vnfm_info:
      type: list  # true in IFA011, but all of members are false. Align with the IM, it is false
      entryflavour_schemaid:
        type: string
      required: true  
    localizationflavour_languagesdescription:
      type: liststring
      entry_schemarequired:
        type: string true  
      required: false
capabilities:
    # defaultmonitoring_localization_languageparameter:
      # type: string
      required: falsemodelled 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.VnfVirtualLink
        occurrences: [ 0, UNBOUNDED ]
  interfaces:
    Nfv:
      type: tosca.interfaces.nfv.vnf.lifecycle.Nfv