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.Vdu.Compute:
  derived_from: tosca.nodes.Root
  properties:
    #id:
      # node name
    name:       # 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: map # 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: 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 
    vdu_profile:          
       type: tosca.datatypes.nfv.VduProfile
       required: true
    inject_files: #Aligned # Used for vCPE usecase Aligned with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
       type: list  tosca.datatypes.nfv.injectFile
       entry_schemarequired: 
false  #Aligned with ONAP R2 IM. it should type: stringbe false.
    #injectmeta_filesdata: is not enough, suggest#metadata attached to bethe aVM structure.or TBD.container
       requiredtype: false map
 #Aligned with ONAP R2 IM. it shouldentry_schema:
 be false.
  #attributes: NOT DEFINED IN ONAP IM and SOL001
    #private_address:
type: string
     #  statusrequired: deprecatedfalse
    #publicuser_addressdata:
 #cloudinit userdata script #support
  status: deprecated
   type: #networks:string
    #  statusrequired: deprecatedfalse
    #ports#attributes:
 NOT DEFINED IN #ONAP IM status:and deprecatedSOL001
  capabilities:
    virtual#private_computeaddress: 
    #  typestatus: tosca.capabilities.nfv.VirtualComputedeprecated
    virtual#public_bindingaddress: 
    #  typestatus: tosca.capabilities.nfv.VirtualBindabledeprecated
      occurrences#networks:
 [1, UNBOUND]
  #  monitoring_parameterstatus: deprecated
    #ports:
    #  typestatus: tosca.capabilities.nfv.Metric # this is not a very clear data structure enough to be coded, suggest to be annotated.deprecated
  capabilities:
    virtual_compute: 
      type: tosca.capabilities.nfv.VirtualCompute
      occurrencesvirtual_binding: [0,UNBOUND]
  requirements:
    - virtual_storage:type: tosca.capabilities.nfv.VirtualBindable
      occurrences:  capability: tosca.capabilities.nfv.VirtualStorage[1, UNBOUND]
    monitoring_parameter:    relationship: tosca.relationships.nfv.Vdu.AttachedTo
        nodetype: tosca.nodescapabilities.nfv.VDU.VirtualStorage
Metric # this is not a very  occurences: [ 0, UNBOUNDED ]
  artifacts:    clear data structure enough to be coded, suggest to be annotated.
      occurrences: [0,UNBOUND]
  requirements:
    - swvirtual_imagestorage:
        filecapability:    tosca.capabilities.nfv.VirtualStorage
        typerelationship: tosca.artifactsrelationships.nfv.SwImage
Code Block
languagexml
title
.Vdu.AttachedTo
        node: tosca.nodes.nfv.VDU.VirtualStorage
linenumberstrue
collapsetrue
tosca.nodes.nfv.Vdu.VirtualStorage: 
  derived_from: tosca.nodes.Root
  properties:
    #id:
      # node name
        occurences: [ 0, UNBOUNDED ]
  artifacts:    
    type_of_storage- sw_image:
      type: string
      constraints:
          - valid_values: [volume, object]
      required: true 
    size_of_storage:
 file:    
        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:scalar-unit.size
      required: true
    vdu_storage_requirements#id: 
      # node name
    type_of_storage: map
      requiredtype: falsestring
      rdma_enabledconstraints:
          - type: booleanvalid_values: [volume, object, root, block]
      required: false
 true capabilities:
    virtualsize_of_storage:
      type: tosca.capabilities.nfv.VirtualStoragescalar-unit.size
  artifacts:  
    required: true
    vdu_storage_requirements: 
     - sw_imagetype: map
      required:  file:false
    rdma_enabled:
      type: boolean
      required: false
  typecapabilities: tosca.artifacts.Deployment.Image
Code Block
languagexml
titletosca.nodes.nfv.Cp
linenumberstrue
collapsetrue
tosca.nodes.nfv.Cp
    virtual_storage:
  derived_from    type: tosca.capabilities.nodesnfv.Root VirtualStorage
  artifacts:  properties:
    - layersw_protocolimage:
        typefile:list
       entry_schema:
        constraints:
          - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
type: tosca.artifacts.Deployment.Image
#interfaces: # not needed for virtualstroage. it doesn't support cloudinit.
#	cloudinit:
#       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.datatypes.nfv.CpProtocolData
      required:true
    trunk_mode:
      type: boolean
      required: true
    allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.                        
      type: tosca.datatypes.nfv.AddressData   # In the IM, it is a array, but here it is not a array. TBD.
      required: falsetype:tosca.interfaces.nfv.vdu.cloudinit
Code Block
languagexml
titletosca.nodes.nfv.Cp
linenumberstrue
collapsetrue
tosca.nodes.nfv.Cp:
  derived_from: tosca.nodes.Root 
    properties:
    layer_protocol:
      type:list
      entry_schema
Code Block
languagexml
titletosca.nodes.nfv.VduCp
linenumberstrue
collapsetrue
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_linkconstraints:
          - capability: tosca.capabilities.nfv.VirtualLinkable
    valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
      relationship: tosca.relationships.nfv.VirtualLinksTorequired:true
    role: #Name in ETSI NFV IFA011 node: tosca.nodes.nfv.VnfVirtualLinkDesc v0.7.3 cpRole
   
   type:string
     - virtual_bindingconstraints:
        -  capability: tosca.capabilities.nfv.VirtualBindable
    valid_values: [ root, leaf ]
      relationship: tosca.relationships.nfv.VirtualBindsTorequired:false
    description:
      node: tosca.nodes.nfv.Vdu.Compute
Code Block
languagexml
titletosca.nodes.nfv.VnfExtCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfExtCp:
  derived_from: tosca.nodes.nfv.Cp
  properties:type: string
      required: false
    virtual_network_interface_requirementsprotocol_data:
      type: list
      entry_schema:
        type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirementsCpProtocolData
      required: false
  requirements:
    - external_virtual_link:
        capability: tosca.capabilities.nfv.VirtualLinkable
 true
    trunk_mode:
      type: boolean
      required: true
    allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.       relationship: tosca.relationships.nfv.VirtualLinksTo
        node: tosca.nodes.nfv.VnfVirtualLink
   
    - internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3 intVirtualLinkDesc
        capability: tosca.capabilities.nfv.VirtualLinkable
      type: tosca.datatypes.nfv.AddressData   # In the IM, it is a array, but here it is not a array. TBD.
        relationship: tosca.relationships.nfv.VirtualLinksTo
        node: required: false
Code Block
languagexml
titletosca.nodes.nfv.VduCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfVirtualLinkVduCp:
        occurrences: [ 0, 1 ] # 0 if re-exposing a VduCp
  derived_from: tosca.nodes.nfv.Cp
  properties:
    bitrate_requirement:
      type: integer
      required:false
          vnic_name: # 1 ifAligned connectingwith toONAP an internal VL
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: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: stringinteger
      required: false
    testvnic_accesstype:
 # Aligned with ONAP R2 Im. type:not list
defined in IFA011 v2.4.1 and  entry_schema:SOL001 v0.6.0
        type: string
	  constraints:
      required: false
   - vlvalid_profilevalues:
 [normal, macvtap, direct, baremetal,  type: tosca.datatypes.nfv.VlProfiledirect-physical, virtio-forwarder]
      required:false
  true
  capabilities:
virtual_network_interface_requirements: 
      monitoring_parametertype: list
   # this is notentry_schema:
 a very clear data structure enough to be coded, suggest to be annotated.
  type: VirtualNetworkInterfaceRequirements
      required:false
   # typeorder: tosca.capabilities.nfv.Metric
     #there occurrences: [0,UNBOUND]
    virtual_linkable:is no this attribute in IM.
   #   type: tosca.capabilities.nfv.VirtualLinkableinteger
   #   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
Code Block
languagexml
titletosca.nodes.nfv.VDU.Composition
linenumberstrue
collapsetrue
# this node type is no long valid or applicable
# for now, the entire node definition is mark-off.
# Agree TO BE REMOVED, we have not agreed VDUcomposition in ONAP IM, It is not defined in SOL001, same properties and capabilities defined # in VDU.COMPUTE
# tosca.nodes.nfv.VDU.Composition:
#  derived_from: tosca.nodes.root
#  properties:
#    name:
#      type: string
#      required: true
#    description:
#      type: string
#      required: true
#    boot_order:
#      type: list 
#      entry_schema:
#        type: string
#      required: false
#    nfvi_constraints:
#      type: list
#      entry_schema:
#        type: string
#      required: falsetrue
#    configurable_propertiesdescription:
#       type: mapstring
#       entry_schema:
#required: false
    test_access:
      type: tosca.datatypes.nfv.VnfcConfigurableProperties
#list
       requiredentry_schema:
 true 
#  capabilities:
#    virtual_computetype: string
#      typerequired: tosca.capabilities.nfv.VirtualCompute
#false
    virtualvl_storageprofile:
#      type: tosca.capabilitiesdatatypes.nfv.VirtualStorage
# occurrences: [0,UNBOUNDED]
#  requirements:
#VlProfile
      required: true
  capabilities:
    - virtualmonitoring_linkparameter:
#        capability: tosca.capabilities.nfv.VirtualLinkable
#   # this is not a very clear data structure enough to be coded, suggest to be annotated.
        relationshiptype: tosca.relationshipscapabilities.nfv.VirtualLinksToMetric
#        node: tosca.nodes.nfv.VnfVirtualLinkDescoccurrences: [0,UNBOUND]
    virtual_linkable:
#       occurrences: [1,UNBOUNDED] 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
      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
      required: true
    localization_languages:
      type: list
      entry_schema:
        type: string
      required: false
    default_localization_language:
      type: string
      required: false
    configurable_properties:
      type: tosca.datatypes.nfv.VnfConfigurableProperties
      required: false
    modifiable_attributes:
      type: tosca.datatypes.nfv.VnfInfoModifiableAttributes
      required: false  # true in IFA011, but all of members are false. Align with the IM, it is false
    flavour_id:
      type: string
      required: true  
    flavour_description:
      type: string
      required: true  
  capabilities:
    # monitoring_parameter:
      # 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.VnfVirtualLink
        occurrences: [ 0, UNBOUNDED ]
  interfaces:
    Nfv:
      type: tosca.interfaces.nfv.vnf.lifecycle.Nfv