Download presentation
Presentation is loading. Please wait.
1
Deployment Flavour as VNF Capability: Alt1_r3
May 31, 2017 Thinh Nguyenphu, Nokia History: R1: based on each DF (different topology) would be represented in its own Service Template. And, All the common attributes of VNFD should be described in as properties within VNFD capability type. R2: update slide 7 R3: including examples
2
Overview: VNF Node Type: tosca. nodes. nfv
Overview: VNF Node Type: tosca.nodes.nfv.VNF: (DF & VNFD as a VNF capabilities) VNF topology template: substtution_mappings: tosca.nodes.nfv.VNF capabilities: vnf_common: deployment_flavour requirements: virtual_link node templates: tosca.nodes.nfv.VNF.Header tosca.nodes.nfv.VDU.Compute tosca.nodes.nfv.VDU.VirtualStorage tosca.nodes.nfv.VduCpd tosca.nodes.nfv.VL tosca.nodes.nfv.ExtCpd tosca.nodes.nfv.VNF: derived_from: tosca.nodes.Root capabilities: vnf_common: type: tosca.capabilities.nfv.VNFD deployment_flavour: type: tosca.capabilities.nfv.VnfDeploymentFlavour #monitoring_parameter: # modeled as ad hoc capabilities in VNF node template requirements: - virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable relationship: tosca.relationships.nfv.VirtualLinksTo node: tosca.nodes.nfv.VL occurrences: [ 0, UNBOUNDED ] # still under discussion: #interfaces: # Basic: # not to collide with Standard on tosca.nodes.Root # type: tosca.interfaces.nfv.vnf.lifecycle.Basic # Healable: # type: tosca.interfaces.nfv.vnf.lifecycle.Healable # Scalable: # type: tosca.interfaces.nfv.vnf.lifecycle.Scalable # Custom: # type: tosca.interfaces.nfv.vnf.lifecycle.Custom VNF tosca.nodes.nfv.VNF cap: req vnf: deployment_flavour: interfaces VL Node Type Service template Note: tosca.nodes.nfv.VNF.Header is not a manageable entity, and DependOn relationship is required.
3
tosca.capabilities.nfv.VNFD:
derived_from: tosca. capabilities.Root properties: descriptor_id: # instead of vnfd_id type: string # GUID required: true descriptor_version: # instead of vnfd_version type: string provider: # instead of vnf_provider product_name: # instead of vnf_product_name software_version: # instead of vnf_software_version product_info_name: # instead of vnf_product_info_name required: false product_info_description: # instead of vnf_product_info_description vnfm_info: type: list entry_schema: localization_languages: default_localization_language:
4
tosca.capabilities.nfv.VnfDeploymentFlavour:
derived_from: tosca.capabilities.Root properties: flavour_id: type: string # Identifier description: type: string required: true vdu_profile: type: map # key: VDU id entry_schema: type: tosca.datatypes.nfv.VduProfile vl_profile: type: map # key: VL id type: map # key: VlFlavour id type: tosca.datatypes.nfv.VlProfile required: false instantiation_levels: type: map type: tosca.datatypes.nfv.InstantiationLevel default_instantiation_level_id: #supported_operations: # modeled as operations lcm_operations_configuration: type: tosca.datatypes.nfv.VnfLcmOperationsConfiguration required: false # true in IFA011, but all members are false #affinity_or_anti_affinity_groups: # modeled as policies #monitoring_parameters: # modeled as ad hoc capabilities in VNF node template scaling_aspects: type: map # key: aspectId type: tosca.datatypes.nfv.ScalingAspect
5
Using enhance substitution_mappings grammar (capabilities)
Service template (VNF): top level VNF (abstract) VNF req req VNFDeploymentFlavour req req req req property property interface cap: DF interface cap: DF deployment_flavour cap: DF deployment_flavour VNFDeploymentFlavour#1 VNFDeploymentFlavour #xyz (DF = Deployment Flavour) req req CP1 CP1 req req req req Note: substitution_mappings gramma enhancement in Simple YAML v1.2: Properties in substitution_mappings In-place capabilities in substitution_mappings Interfaces in substitution_mappings Indexed access of requirements in substitution_mappings CP2 CP2 req req cap: DF cap: DF flavour_id: flavour_id: VDU1 VDU2 VDU3 … … … … … … … Service template (DF): lower level, only represent DF
6
Overview: Without enhanced substitution_mappings grammar
.. topology_template: substitution_mappings: node_type: tosca.nodes.nfv.VNF capabilities: vnf_common: [ header, vnf_common ] deployment_flavour: [ df, deployment_flavour ] requirements: - virtual_link: [ df, virtual_link] node_templates: header: type: tosca.nodes.nfv.VNF.Header vnf_common: properties: descriptor_id: .. descriptor_version: .. provider: .. df: type: tosca.nodes.nfv.VnfDeploymentFlavour .. topology_template: substitution_mappings: type: tosca.nodes.nfv.VnfDeploymentFlavour capabilities: deployment_flavour: [ header, deployment_flavour ] requirements: - virtual_link: [ ecp, external_virtual_link ] node_templates: header: type: tosca.nodes.nfv.VNF.Header deployment_flavour: type: tosca.capabilities.nfv.VnfDeploymentFlavour properties: flavour_id: aspects: vdu: type: tosca.nodes.nfv.VDU.Compute ecp: type: tosca.nodes.nfv.ECP # external connection point Service template (VNF): top level Service template (DF): lower level, only represent DF
7
Using enhance substitution_mappings grammar (properties, capabilities)
8
DF tosca.nodes.nfv.VnfDeploymentFlavour
Overview: Using enhance substitution_mappings grammar (capabilities) 1/2 VNF topology template: substtution_mappings: type: tosca.nodes.nfv.VnfDeploymentFlavour properties: capabilities: deployment_flavour requirements: virtual_link node templates: tosca.nodes.nfv.VDU.Compute tosca.nodes.nfv.VDU.VirtualStorage tosca.nodes.nfv.VduCpd tosca.nodes.nfv.VL tosca.nodes.nfv.ExtCpd tosca.nodes.nfv.VnfDeploymentFlavour: derived_from: tosca.nodes.Root capabilities: vnf_common: type: tosca.capabilities.nfv.VNFD deployment_flavour: type: tosca.capabilities.nfv.VnfDeploymentFlavour #monitoring_parameter: # modeled as ad hoc capabilities in VNF node template requirements: - virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable relationship: tosca.relationships.nfv.VirtualLinksTo node: tosca.nodes.nfv.VL occurrences: [ 0, UNBOUNDED ] # still under discussion: #interfaces: # Basic: # not to collide with Standard on tosca.nodes.Root # type: tosca.interfaces.nfv.vnf.lifecycle.Basic # Healable: # type: tosca.interfaces.nfv.vnf.lifecycle.Healable # Scalable: # type: tosca.interfaces.nfv.vnf.lifecycle.Scalable # Custom: # type: tosca.interfaces.nfv.vnf.lifecycle.Custom DF tosca.nodes.nfv.VnfDeploymentFlavour cap: req deployment_flavour: interfaces VL properties Node Type Service template Note: substitution_mappings gramma enhancement in Simple YAML v1.2: Properties in substitution_mappings In-place capabilities in substitution_mappings Interfaces in substitution_mappings Indexed access of requirements in substitution_mappings
9
Overview: Using enhanced substitution_mappings grammar (capabilities) 2/2
.. topology_template: substitution_mappings: node_type: tosca.nodes.nfv.VNF capabilities: vnf_common: properties: descriptor_id: .. descriptor_version: .. provider: .. deployment_flavour: [ df, deployment_flavour ] requirements: - virtual_link: [ df, virtual_link] node_templates: df: type: tosca.nodes.nfv.VnfDeploymentFlavour .. topology_template: substitution_mappings: type: tosca.nodes.nfv.VnfDeploymentFlavour capabilities: deployment_flavour: properties: flavour_id: aspects: requirements: - virtual_link: [ ecp, external_virtual_link ] node_templates: vdu: type: tosca.nodes.nfv.VDU.Compute ecp: type: tosca.nodes.nfv.ECP # external connection point Service template (VNF): top level Service template (DF): lower level, only represent DF
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.