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
    #namename:
    #  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  entryshoul 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 entry_schema:
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: listtosca.datatypes.nfv.injectFile
       entry_schemarequired: 
false  #Aligned with ONAP R2 IM. it should type:be stringfalse.
    meta_data: #metadata attached to the VM required:or truecontainer
    #attributes: NOT DEFINED INtype: ONAPmap
 IM and SOL001
    #privateentry_addressschema:
      #   statustype: deprecatedstring
    #public_address:   required: false
    user_data: #cloudinit userdata script support
    #  statustype: deprecatedstring
      #networksrequired: false
  #attributes: NOT DEFINED IN #ONAP IM status:and deprecatedSOL001
    #ports#private_address:
    #  status: deprecated
  capabilities:
    virtual#public_computeaddress: 
    #  typestatus: tosca.capabilities.nfv.VirtualComputedeprecated
    virtual_binding#networks: 
    #  type: tosca.capabilities.nfv.VirtualBindablestatus: deprecated
    #ports:
    #  occurrencesstatus: deprecated
 [1, UNBOUND] capabilities:
    monitoringvirtual_parametercompute: 
      type: tosca.capabilities.nfv.MetricVirtualCompute
    virtual_binding: 
      occurrencestype: [0,UNBOUND]
  requirements:
tosca.capabilities.nfv.VirtualBindable
      occurrences: - virtual_storage:[1, UNBOUND]
    monitoring_parameter:    capability: tosca.capabilities.nfv.VirtualStorage
        relationshiptype: tosca.relationshipscapabilities.nfv.Vdu.AttachedTo
Metric # this is not a very clear node: tosca.nodes.nfv.VDU.VirtualStoragedata structure enough to be coded, suggest to be annotated.
        occurencesoccurrences: [ 0, UNBOUNDED UNBOUND]
  artifactsrequirements:
    - swvirtual_imagestorage:
        file:capability: 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
    type_of_storage:
      type: string
      required: true
        occurences: [ 0, UNBOUNDED ]
  artifacts:    
    - sw_image:
        file:    
    size_of_storage:
      type: scalar-unit.size
      required: true
    vdu_storage_requirements:
      type: map
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:
      # required:node falsename
    rdmatype_of_enabledstorage:
      type: booleanstring
      requiredconstraints: false
  capabilities:
    virtual_storage:
    -  type: tosca.capabilities.nfv.VirtualStorage
  artifacts:
valid_values: [volume, object, root, block]
     - sw_imagerequired:
 true 
      file: size_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 scalar-unit.size
      required: true
    propertiesvdu_storage_requirements: 
    layer_protocol:  type: map
      typerequired:list false
      entryrdma_schemaenabled:
      type:  constraints:boolean
      required: false
   - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]capabilities:
    virtual_storage:
      requiredtype:true
    role: #Name in ETSI NFV IFA011 v0.7.3 cpRole
      type:string tosca.capabilities.nfv.VirtualStorage
  artifacts:  
    -  constraintssw_image:
        - valid_valuesfile: [ root, leaf ]
      required:false
    description:
      type: string
      required: false
    protocol_data:
      type: list
      entry_schema:
 tosca.artifacts.Deployment.Image
#interfaces: # not needed for virtualstroage. it doesn't support cloudinit.
#	cloudinit:
#       type: tosca.datatypeinterfaces.nfv.CpProtocolData
      required:true
    trunk_mode:
      type: boolean
      required: true
    allowedAddressData: # not defined in IFA011 v2.4.1 and SOL001 v0.6.0
      type: tosca.datatype.nfv.AddressData
      required: false
Code Block
vdu.cloudinit
Code Block
languagexml
titletosca.nodes.nfv.Cp
linenumberstrue
collapsetrue
tosca.nodes.nfv.Cp:
  derived_from: tosca.nodes.Root 
    properties:
    layer_protocol
languagexml
titletosca.nodes.nfv.VduCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VduCp:
  derived_from: tosca.nodes.nfv.Cp
  properties:
    bitrate_requirement:
      type: integer
      required:false
    vnicName: # not defined in IFA011 v2.4.1 and SOL001 v0.6.0
      type: String
      required:false
    vnicOrder: # not defined in IFA011 v2.4.1 and SOL001 v0.6.0
      type: integer
      required:false
    vnicType: # 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:
      type: integerlist
      requiredentry_schema:
  false
      constraints:
          - greatervalid_or_equalvalues: 0
    requirements:
  [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
      - virtual_linkrequired:true
    role: #Name in ETSI NFV IFA011 capability: tosca.capabilities.nfv.VirtualLinkablev0.7.3 cpRole
          relationship: tosca.relationships.nfv.VirtualLinksTo
type:string
      constraints:
     node: tosca.nodes.nfv.VnfVirtualLinkDesc  - valid_values: 
[ root, leaf ]
     - virtual_bindingrequired:false
    description:
      capabilitytype: tosca.capabilities.nfv.VirtualBindablestring
      required: false
    relationshipprotocol_data: tosca.relationships.nfv.VirtualBindsTo

      type: list
     node: tosca.nodes.nfv.Vdu.Compute
Code Block
languagexml
titletosca.nodes.nfv.VnfExtCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfExtCp:
  derived_from entry_schema:
        type: tosca.nodesdatatypes.nfv.CpCpProtocolData
      propertiesrequired:true
    virtual_network_interface_requirementstrunk_mode:
      type: listboolean
      required: true
    entryallowed_address_schema:
        type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements
data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.       required: false
  requirements:
    - external_virtual_link:
        capability: tosca.capabilities.nfv.VirtualLinkable
        relationshiptype: tosca.relationshipsdatatypes.nfv.VirtualLinksTo
AddressData   # In the IM, it node: tosca.nodes.nfv.VnfVirtualLink
   
    - internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3 intVirtualLinkDescis a array, but here it is not a array. TBD.
        capabilityrequired: false
capabilities
Code Block
languagexml
titletosca.
nodes.nfv.VduCp
linenumberstrue
collapsetrue
tosca.nodesVirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksToVduCp:
        nodederived_from: tosca.nodes.nfv.VnfVirtualLinkCp
  properties:
      occurrences: [ 0, 1 ] # 0 if re-exposing a VduCp
             bitrate_requirement:
      type: integer
      required:false
    vnic_name: #  Aligned with ONAP R2 #Im.not 1defined ifin connecting to an internal VL
Code Block
languagexml
titletosca.nodes.nfv.VnfVirtualLink
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfVirtualLink:
  derived_from: tosca.nodes.Root
  properties:IFA011 v2.4.1 and SOL001 v0.6.0. 
      type: string
      required:false
    connectivityvnic_type:
      type: tosca.datatypes.nfv.ConnectivityTypeorder: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0. 
      requiredtype: trueinteger
      descriptionrequired:false
    vnic_type: # type:Aligned string
with ONAP R2 Im. not defined required:in false
    test_access:IFA011 v2.4.1 and SOL001 v0.6.0
      type: liststring
	    constraints:
  entry_schema:
        - typevalid_values: string
      required: false
[normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
      vl_profilerequired:false
      type: tosca.datatypes.nfv.VlProfilevirtual_network_interface_requirements: 
      requiredtype: truelist
  capabilities:
    monitoringentry_parameterschema:
        type: tosca.capabilities.nfv.MetricVirtualNetworkInterfaceRequirements
      occurrences: [0,UNBOUND]required:false
   # virtual_linkableorder:
      #there type: tosca.capabilities.nfv.VirtualLinkableis 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:
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
#tosca.datatypes.nfv.ConnectivityType
      entry_schemarequired: true
#    description:
      type: string
#      required: false
#    configurabletest_propertiesaccess:
#       type: maplist
#       entry_schema:
#          type: tosca.datatypes.nfv.VnfcConfigurableProperties
# string
      required: true 
#  capabilities:
#false
    virtualvl_computeprofile: 
#      type: tosca.capabilitiesdatatypes.nfv.VirtualComputeVlProfile
#    virtual_storage:
#      type: tosca.capabilities.nfv.VirtualStorage
# occurrences: [0,UNBOUNDED]
#  requirements:
#    required: true
  capabilities:
    - virtualmonitoring_linkparameter:
#   # this is not a very capability: tosca.capabilities.nfv.VirtualLinkable
#        relationship: tosca.relationships.nfv.VirtualLinksTo
#  clear data structure enough to be coded, suggest to be annotated.
      nodetype: tosca.nodescapabilities.nfv.VnfVirtualLinkDescMetric
      occurrences: 
# [0,UNBOUND]
    virtual_linkable:
      occurrencestype: [1,UNBOUNDED] 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: truefalse  # 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