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.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  type: String
	  constraints:
IFA011 v0.7.3 cpRole
      type:string
      constraints:
        - valid_values: [normal, macvtaproot, direct, baremetal, direct-physical, virtio-forwarderleaf ]
      required:false
    virtual_network_interface_requirements: description:
      type: liststring
      entry_schemarequired: false
    protocol_data:
      type: VirtualNetworkInterfaceRequirementslist
      requiredentry_schema:false
    requirements:
    type: tosca.datatypes.nfv.CpProtocolData
     - virtual_linkrequired:true
    trunk_mode:
      capabilitytype: tosca.capabilities.nfv.VirtualLinkableboolean
          relationshiprequired: tosca.relationships.nfv.VirtualLinksTotrue
    allowed_address_data: # Aligned with ONAP  node: tosca.nodes.nfv.VnfVirtualLinkDesc    
R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.        - virtual_binding:
          capability: tosca.capabilities.nfv.VirtualBindable
    
      relationshiptype: tosca.relationshipsdatatypes.nfv.VirtualBindsTo
AddressData   # In the IM, it is a array, but  node: tosca.nodes.nfv.VDU  here it is not a array. TBD.
      required: false
Code Block
languagexml
titletosca.nodes.nfv.VnfExtCpVduCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfExtCpVduCp:
  derived_from: tosca.nodes.nfv.Cp
  properties:
    virtual_network_interface_requirementsbitrate_requirement:
      type: listinteger
      entry_schemarequired:false
    vnic_name: #   type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirementsAligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0. 
      requiredtype: falsestring
  requirements:
    - external_virtual_link:required:false
    vnic_order: # Aligned with capability: tosca.capabilities.nfv.VirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksTo
ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0. 
      type: integer
  node: tosca.nodes.nfv.VL
   required:false
    - internal_virtual_linkvnic_type: #name# inAligned ETSIwith NFVONAP IFA011R2 v0Im.7.3 intVirtualLinkDesc
not defined in IFA011 v2.4.1 and SOL001  capability: tosca.capabilities.nfv.VirtualLinkable
v0.6.0
      type: string
	  relationshipconstraints: tosca.relationships.nfv.VirtualLinksTo

         node: tosca.nodes.nfv.VL
        occurrences: [ 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_type - valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
      required:false
    virtual_network_interface_requirements: 
      type: list
      entry_schema:
        type: tosca.datatypes.nfv.ConnectivityTypeVirtualNetworkInterfaceRequirements
      required: truefalse
   # descriptionorder:
      type:#there string
is no this attribute in IM.
 required: false
 #   test_accesstype: integer
   #   typerequired: listfalse
   #   entry_schemaconstraints:
   #   type: string
   - greater_or_equal: 0
   required: false
 requirements:
        - vlvirtual_profilelink:
      type    capability: tosca.datatypescapabilities.nfv.VlProfileVirtualLinkable
       required: true
  capabilities:relationship: tosca.relationships.nfv.VirtualLinksTo
    monitoring_parameter:
      typenode: tosca.capabilitiesnodes.nfv.Metric
VnfVirtualLink    
  occurrences: [0,UNBOUND]
      - virtual_linkablebinding:
          typecapability: tosca.capabilities.nfv.VirtualLinkableVirtualBindable
          relationship: tosca.relationships.nfv.VirtualBindsTo
          node: tosca.nodes.nfv.Vdu.Compute
Code Block
languagexml
titletosca.nodes.nfv.VnfVirtualLink
linenumberstrue
Code Block
languagexml
titletosca.nodes.nfv.VDU.Composition
linenumberstrue
collapsetrue
tosca.nodes.nfv.VDU.CompositionVnfVirtualLink:
  derived_from: tosca.nodes.rootRoot
  properties:
    nameconnectivity_type:
      type: stringtosca.datatypes.nfv.ConnectivityType
      required: true
    description:
      type: string
      required: truefalse
    boottest_orderaccess:
      type: list 
      entry_schema:
        type: string
      required: false
    nfvivl_constraintsprofile:
      type: listtosca.datatypes.nfv.VlProfile
      entry_schemarequired: true
  capabilities:
    monitoring_parameter:  type: string
# this is not a very required:clear false
data structure enough to configurable_properties:
       type: map
       entry_schema:
     be coded, suggest to be annotated.
       type: tosca.datatypescapabilities.nfv.VnfcConfigurablePropertiesMetric
       requiredoccurrences: true [0,UNBOUND]
  capabilities:
    virtual_computelinkable: 
      type: tosca.capabilities.nfv.VirtualCompute
    virtual_storageVirtualLinkable
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VNF:
      typederived_from: tosca.capabilities.nfv.VirtualStorage
occurrences: [0,UNBOUNDED]nodes.Root
  requirementsproperties: 
    - virtualdescriptor_linkid:
 # instead of vnfd_id
     capability type: tosca.capabilities.nfv.VirtualLinkable
  string # GUID
      relationshiprequired: tosca.relationships.nfv.VirtualLinksTotrue
    descriptor_version: # instead of vnfd_version
  node: tosca.nodes.nfv.VnfVirtualLinkDesc   type: string
       occurrences: [1,UNBOUNDED] 
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VNF:
  derived_from: tosca.nodes.Root
  properties: 
    descriptor_id: # instead of vnfd_idrequired: true
    provider: # instead of vnf_provider
      type: string
      required: true
    product_name: # instead of vnf_product_name
      type: string
      required: true
    software_version: # instead of vnf_software_version
      type: string
      required: true
    product_info_name: # instead of vnf_product_info_name
      type: string
      required: false
    product_info_description: # instead of vnf_product_info_description
      type: string
      required: false
    vnfm_info:
      type: list
      entry_schema:
        type: string
      typerequired: true
  string # GUIDlocalization_languages:
      requiredtype: truelist
      descriptorentry_versionschema:
 # instead of vnfd_version
      type: string
      required: truefalse
    provider: # instead of vnf_providerdefault_localization_language:
      type: string
      required: truefalse
    productconfigurable_name: # instead of vnf_product_nameproperties:
      type: string: tosca.datatypes.nfv.VnfConfigurableProperties
      required: truefalse
    softwaremodifiable_version: # instead of vnf_software_versionattributes:
      type: stringtosca.datatypes.nfv.VnfInfoModifiableAttributes
      required: true
    product_info_name: # instead of vnf_product_info_name false  # true in IFA011, but all of members are false. Align with the IM, it is false
    flavour_id:
      type: string
      required: true false 
    product_infoflavour_description: # instead of vnf_product_info_description
      type: string
      required: false
    vnfm_info:
  true  
  typecapabilities: list
    #  entrymonitoring_schemaparameter:
      # modelled type:as string
ad hoc capabilities in the VNF required:node truetemplate
  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