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:
    name#id:
      type: string
# node name
    name:      required: true
    description: # 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
    boot_orderdescription:
      type: liststring
      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: 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,  entry_schema:
     the multipilicity of VnfcConfigurableProperties is 1, not a map.
     type: tosca.  entry_schema:
          type: tosca.datatypes.nfv.VnfcConfigurableProperties
       required: true true 
attributes:
    privatevdu_addressprofile:
      status: deprecated
   
 public_address:
      statustype: deprecatedtosca.datatypes.nfv.VduProfile
    networks:
   required: true
    statusinject_files: deprecated
# Used for vCPE ports:
usecase Aligned with ONAP R2 IM. status:not deprecated
defined in capabilities:
    virtual_compute: 
IFA011 v2.4.1 and SOL001 v0.6.0.
       type: tosca.capabilitiesdatatypes.nfv.VirtualComputeinjectFile
    virtual_binding   required: 
false  #Aligned with ONAP  type: tosca.capabilities.nfv.VirtualBindable
      occurrences: [1, UNBOUND]
    #monitoring_parameter:
      # modeled as ad hoc (named) capabilities in VDU node templateR2 IM. it should be false.
    meta_data: #metadata attached to the VM or container
       type: map
       entry_schema:
      #  for exampletype: string
      #capabilities required: false
    user_data: #cloudinit #userdata  cpu_load: tosca.capabilities.nfv.Metricscript support
      # memory_usagetype: tosca.capabilities.nfv.Metricstring
    host  required: #Editorfalse
  note#attributes: FFS. How this capabilities should be used in NFV ProfileNOT DEFINED IN ONAP IM and SOL001
    #private_address:
    #  typestatus: tosca.capabilities.Containerdeprecated
      valid_source_types: [tosca.nodes.SoftwareComponent]#public_address:
    #  status: deprecated
    #networks:
    occurrences: [0,UNBOUNDED]  #  status: deprecated
    endpoint#ports: 
    #    occurrencesstatus: [0,0]deprecated
  capabilities:
    osvirtual_compute: 
        occurrences: [0,0]  type: tosca.capabilities.nfv.VirtualCompute
    scalable: #Editor note: FFS. How this capabilities should be used in NFV Profilevirtual_binding: 
      type: tosca.capabilities.Scalable
    binding: 
 nfv.VirtualBindable
       occurrences: [01, UNBOUND]
  requirements  monitoring_parameter:
    - virtual_storage:
        capabilitytype: tosca.capabilities.nfv.VirtualStorage
        relationship: tosca.relationships.nfv.VDU.AttachedTo
        node: tosca.nodes.nfv.VDU.VirtualStorage
        occurences: [ 0, UNBOUNDED ]Metric # this is not a very clear data structure enough to be coded, suggest to be annotated.
      occurrences: [0,UNBOUND]
  requirements:
    - localvirtual_storage:
   #For NFV Profile, this requirement is deprecated.capability: tosca.capabilities.nfv.VirtualStorage
        occurrences: [0,0]  relationship: tosca.relationships.nfv.Vdu.AttachedTo
        node: tosca.nodes.nfv.VDU.VirtualStorage
        occurences: [ 0, UNBOUNDED ]
  artifacts:    
    - sw_image:
        file:    
        type: tosca.artifacts.nfv.SwImage
Code Block
languagexml
titletosca.nodes.nfv.VDU.VirtualStorage
linenumberstrue
collapsetrue
tosca.nodes.nfv.VDUVdu.VirtualStorage: 
  derived_from: tosca.nodes.Root
  properties:
    #id:
      # node name
    type_of_storage:
      type: string
      requiredconstraints:
 true  
       - valid_values: [volume, object, root, block]
      required: true 
    size_of_storage:
      type: scalar-unit.size
      required: true
    rdmavdu_storage_enabledrequirements: 
      type: booleanmap
      required: false
  capabilities:
    virtualrdma_storageenabled:
      type: boolean
      required: false
  capabilities:
    virtual_storage:
      type: tosca.capabilities.nfv.VirtualStorage
  artifacts:  
    - sw_image:
        file:       
        type: tosca.artifacts.Deployment.Image
#interfaces: # not needed for virtualstroage. it doesn't support cloudinit.
#	cloudinit:
#       type:tosca.interfaces.nfv.vdu.cloudinit
Code Block
languagexml
Code Block
languagexml
titletosca.nodes.nfv.Cp
linenumberstrue
collapsetrue
tosca.nodes.nfv.Cp:
  derived_from: tosca.nodes.Root 
    properties:
    layer_protocol:
      type:stringlist
        constraintsentry_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
    description:
      type: string
      required: false
    protocol_data:
      type: list
      entry_schema:
        type: tosca.datatypedatatypes.nfv.CpProtocolData
      required:true
    allowedAddressDatatrunk_mode:
      type: tosca.datatype.nfv.AddressDataboolean
      required: false
Code Block
languagexml
titletosca.nodes.nfv.VduCp
linenumbers
true
collapsetrue
tosca.nodes.nfv.VduCp:
  derived_from: tosca.nodes.nfv.Cp
  properties:
    bitrate_requirement:
      type: integer
  allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.       required:false
    vnicName:
      type: String
      required:false
    vnicOrder:
      type: integer
tosca.datatypes.nfv.AddressData   # In the IM, it is a array, but here it is not a array. TBD.
      required: false
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_link:
          capability: tosca.capabilities.nfv.VirtualLinkable
          relationship: tosca.relationships.nfv.VirtualLinksTo
          node: tosca.nodes.nfv.VnfVirtualLink    
        - virtual_binding: required:false
    vnicType:
      type: String
	  constraints:
          - valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
      required:false
    virtual_network_interface_requirementscapability: 
  tosca.capabilities.nfv.VirtualBindable
    type: list
      entry_schema: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
  propertiestype: VirtualNetworkInterfaceRequirements
      required:false
    requirements:
        - virtual_linkconnectivity_type:
          capabilitytype: tosca.capabilitiesdatatypes.nfv.VirtualLinkableConnectivityType
      required: true
    relationship: tosca.relationships.nfv.VirtualLinksTo
 description:
      type: string
  node: tosca.nodes.nfv.VnfVirtualLinkDesc   required: false
    test_access:
     - virtual_bindingtype: list
      entry_schema:
    capability: tosca.capabilities.nfv.VirtualBindable
   type: string
      relationshiprequired: tosca.relationships.nfv.VirtualBindsTofalse
    vl_profile:
      nodetype: tosca.nodesdatatypes.nfv.VDU  
Code Block
languagexml
titletosca.nodes.nfv.VnfExtCp
linenumberstrue
collapsetrue
tosca.nodes.nfv.VnfExtCp:
  derived_from: tosca.nodes.nfv.Cp
  propertiesVlProfile
      required: true
  capabilities:
    virtual_network_interface_requirements:
      type: list
      entry_schema:
  monitoring_parameter:   # this is not a very clear data structure enough to be coded, suggest to be annotated.
      type: tosca.datatypescapabilities.nfv.VirtualNetworkInterfaceRequirementsMetric
      required: false
  requirements:occurrences: [0,UNBOUND]
    - external_virtual_linklinkable:
        capabilitytype: tosca.capabilities.nfv.VirtualLinkable
        relationship: tosca.relationships.nfv.VirtualLinksTo
        node: 
Code Block
firstline1
titletosca.nodes.nfv.VNF
linenumberstrue
collapsetrue
tosca.nodes.nfv.VLVNF:
   
    - internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3 intVirtualLinkDesc
   derived_from: tosca.nodes.Root
  properties: 
     capability: tosca.capabilities.nfv.VirtualLinkable
  descriptor_id: # instead of vnfd_id
      relationshiptype: tosca.relationships.nfv.VirtualLinksTo
  string # GUID
      noderequired: tosca.nodes.nfv.VLtrue
    descriptor_version: # instead  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:of vnfd_version
      type: string
      required: true
    provider: # instead of vnf_provider
      type: string
      required: true
    product_name: # instead of vnf_product_name
      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