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_schematype: tosca.datatypes.nfv.VduProfile
         typerequired: stringtrue
    inject_files: # Used required:for true
vCPE usecase #attributes:Aligned NOTwith DEFINEDONAP IN ONAPR2 IM. andnot SOL001
defined in IFA011  #private_address:
    #  status: deprecated
    #public_address:
v2.4.1 and SOL001 v0.6.0.
       type: tosca.datatypes.nfv.injectFile
     #  statusrequired: deprecated
false  #Aligned with #networks:
ONAP R2 IM. it #should  status: deprecatedbe false.
    #portsmeta_data:
 #metadata attached to #the VM status:or deprecatedcontainer
  capabilities:
     virtual_computetype: map
       type: tosca.capabilities.nfv.VirtualComputeentry_schema:
    virtual_binding: 
      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:
    #    capabilitystatus: tosca.capabilities.nfv.VirtualStoragedeprecated
    #public_address:
    relationship: tosca.relationships.nfv.VDU.AttachedTo#  status: deprecated
    #networks:
    # node status: tosca.nodes.nfv.VDU.VirtualStoragedeprecated
    #ports:
    occurences:# [ 0, UNBOUNDED ]status: deprecated
  artifactscapabilities:
    - swvirtual_imagecompute: 
      type:  file:
  tosca.capabilities.nfv.VirtualCompute
    virtual_binding: 
      type: tosca.artifacts.nfv.SwImage
Code Block
languagexml
titletosca.nodes.nfv.VDU.VirtualStorage
linenumberstrue
collapsetrue
tosca.nodes.nfv.VDU.VirtualStorage: 
  derived_from: tosca.nodes.Root
  properties:
    #id:
      # node name
    type_of_storage:
      type: stringcapabilities.nfv.VirtualBindable
      occurrences: [1, UNBOUND]
    monitoring_parameter:     
      type: tosca.capabilities.nfv.Metric # this is not a very clear data structure enough to be coded, suggest to be annotated.
      required: true 
occurrences: [0,UNBOUND]
  requirements:
    - size_ofvirtual_storage:
      type  capability: scalar-unit.sizetosca.capabilities.nfv.VirtualStorage
      required  relationship: truetosca.relationships.nfv.Vdu.AttachedTo
   #vduStorageRequirements:
   #  typenode: map
tosca.nodes.nfv.VDU.VirtualStorage
      #  entrySchemaoccurences:
 [ 0, #UNBOUNDED ]
   typeartifacts: TBD, missing in ONAP IM
   # - requiredsw_image: false
    rdma_enabled:
      type: boolean
file:      required: false
  capabilities:
    virtual_storage:
      type: tosca.capabilities.artifacts.nfv.SwImage
Code Block
languagexml
titletosca.nodes.nfv.VDU.VirtualStorage
linenumberstrue
collapsetrue
tosca.nodes.nfv.Vdu.VirtualStorage: VirtualStorage
  artifacts:
  derived_from: tosca.nodes.Root
 - sw_imageproperties:
    #id:
      # file:node name
    type_of_storage:
      type: tosca.artifacts.Deployment.Image
Code Block
languagexml
titletosca.nodes.nfv.Cp
linenumberstrue
collapsetrue
tosca.nodes.nfv.Cp:
  derived_from: tosca.nodes.Root  string
      constraints:
    properties:
    layer_protocol:
   - valid_values:  type:string
  [volume, object, root, block]
      constraintsrequired:
 true 
        - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]size_of_storage:
      type: scalar-unit.size
      required: true
    rolevdu_storage_requirements: #Name
  in ETSI NFV IFA011 v0.7.3 cpRole type: map
      typerequired:string false
      constraintsrdma_enabled:
        - valid_values: [ root, leaf ]type: boolean
      required: false
    descriptioncapabilities:
      type: stringvirtual_storage:
      requiredtype: falsetosca.capabilities.nfv.VirtualStorage
    protocol_data:
      type: listartifacts:  
    -  entrysw_schemaimage:
        typefile: tosca.datatype.nfv.CpProtocolData
      required:true
    allowedAddressData:
      type: tosca.datatypeartifacts.nfvDeployment.AddressDataImage
#interfaces: # not needed for  required: falsevirtualstroage. it doesn't support cloudinit.
#	cloudinit:
#       type:tosca.interfaces.nfv.vdu.cloudinit
Code Block
languagexml
titletosca.nodes.nfv.VduCpCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VduCpCp:
  derived_from: tosca.nodes.nfv.CpRoot 
    properties:
    bitratelayer_requirementprotocol:
      type: integerlist
      requiredentry_schema:false
    vnicName:
      typeconstraints:
 String
      required:false
   - vnicOrdervalid_values:
 [ethernet, mpls, odu2, ipv4,  type: integeripv6, pseudo_wire ]
      required:falsetrue
    vnicTyperole:
 #Name in ETSI NFV IFA011 v0.7.3 cpRole
      type: String
	string
      constraints:
          - valid_values: [normal, macvtaproot, direct, baremetal, direct-physical, virtio-forwarderleaf ]
      required:false
    virtual_network_interface_requirements: description:
      type: liststring
      entry_schemarequired: false
        type: VirtualNetworkInterfaceRequirementsprotocol_data:
      requiredtype:false
    requirements: list
        - virtual_linkentry_schema:
          capabilitytype: tosca.capabilitiesdatatypes.nfv.VirtualLinkableCpProtocolData
      required:true
    relationship: tosca.relationships.nfv.VirtualLinksTotrunk_mode:
      type: boolean
   node: tosca.nodes.nfv.VnfVirtualLinkDesc  required:  true
    allowed_address_data: # Aligned with - virtual_binding:
          capability: tosca.capabilities.nfv.VirtualBindable
ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.          relationship: tosca.relationships.nfv.VirtualBindsTo
              
   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:
      type: list
      entry_schema:   type: tosca.datatypes.nfv.AddressData   # In the IM, it is a array, but here it is not a array. TBD.
      required:  typefalse
Code Block
languagexml
titletosca.nodes.nfv.VduCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VduCp:
  derived_from: tosca.datatypesnodes.nfv.VirtualNetworkInterfaceRequirementsCp
  properties:
    requiredbitrate_requirement: false
  requirements:
    - external_virtual_link:type: integer
      required:false
    vnic_name: #  Aligned capability: tosca.capabilities.nfv.VirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksTowith ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0. 
      type: string
  node: tosca.nodes.nfv.VL
   required:false
    - internal_virtual_linkvnic_order: #name# inAligned ETSIwith NFVONAP IFA011R2 v0.7Im.3 intVirtualLinkDesc
not defined in IFA011 v2.4.1 and   capability: tosca.capabilities.nfv.VirtualLinkableSOL001 v0.6.0. 
        relationshiptype: tosca.relationships.nfv.VirtualLinksTointeger
        node: tosca.nodes.nfv.VLrequired:false
    vnic_type: # Aligned with occurrences:ONAP [R2 0,Im. 1not ]defined # 0 if re-exposing a VduCp
# 1 if connecting to an internal VLin 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:
          capability: tosca.capabilities.nfv.VirtualBindable
          relationship: tosca.relationships.nfv.VirtualBindsTo
          node: tosca.nodes.nfv.Vdu.Compute
Code Block
languagexml
titletosca.nodes.nfv.VnfVirtualLink
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfVirtualLink:
  derived_from: tosca.nodes.Root
  properties:
    connectivity_type:
      type: tosca.datatypes.nfv.ConnectivityType
      required: true
    description:
      type: string
      required: false
    test_access:
      type: list
      entry_schema:
        type: string
      required: false
    vl_profile:
      type: tosca.datatypes.nfv.VlProfile
      required: true
  capabilities:
    monitoring_parameter:   # this is not a very clear data structure enough to be coded, suggest to be annotated.
      type: tosca.capabilities.nfv.Metric
      occurrences: [0,UNBOUND]
    virtual_linkable:
      type: tosca.capabilities.nfv.VirtualLinkable
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VNF:
  derived_from: tosca.nodes.Root
  properties: 
    descriptor_id: # instead of vnfd_id
      type: string # GUID
      required: true
    descriptor_version: # instead of vnfd_version
      type: string
      required: true
    provider: # instead of vnf_provider
      type: string
      required: true
    product_name: # instead of vnf_product_name
Code Block
languagexml
titletosca.nodes.nfv.VnfVirtualLink
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfVirtualLink:
  derived_from: tosca.nodes.Root
  properties:
    connectivity_type:
      type: tosca.datatypes.nfv.ConnectivityType
string
      required: true
   required software_version: true
# instead   description: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_linkable:
entry_schema:
        type: tosca.capabilities.nfv.VirtualLinkable
Code Block
languagexml
titletosca.nodes.nfv.VDU.Composition
linenumberstrue
collapsetrue
tosca.nodes.nfv.VDU.Composition:string
  derived_from: tosca.nodes.root
    propertiesrequired: 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_schema:
        type: string
      required:required: false  # true in IFA011, 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.VnfcConfigurablePropertiesstring
       required: true  
  capabilities:
    virtual# monitoring_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