Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Executive Summary- Enable a vendor provided ETSI SOL004 v3.3.1 compliant VNF package including an ETSI SOL001 VNF Descriptor to  be onboarded into ONAP for composition into an ONAP Network Service
    • Support for onboarding ETSI v3.3.1SOL004 CSAR Packages with minimum CNF enhancements from 4.1.1
    • Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1
    • Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1  into SDC AID Data Model
  • Business Impact- Enables operators and service providers to use same ETSI compliant VNF packages with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators that are currently using ETSI packages to deploy VNFs
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard VNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

...

  • Executive Summary- Design, catalog and distribute  an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) for deployment using an ETSI compliant NFVO.
    • Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
    • Composed of one or more VNFs and the Virtual Links that connect them.
    • Support for using VNFs with CNF enhancements
  • Business Impact- Enables operators and service providers to use internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators and service providers that are developing and deploying ETSI compatible Network Services
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.


Design Nested/Hierarchical ETSI SOL001 v3.3.1 Network Service Descriptor package (for Istanbul release)

  • Executive Summary- Design an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) that includes references to other Network Service Descriptors for deployment using an ETSI compliant NFVO.
    • Composed of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them.
    • Support for using VNFs with CNF enhancements
  • Business Impact- Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators and service providers that are developing ETSI compatible Network Services especially for 5G Slicing where each Slice Subnet is associated with a Network Service 
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.


Onboard Prototype Package based on ETSI IFA011 v4.1.1 supporting containerized VNF (CNF)

...

packages (for Istanbul release)

  • Executive Summary- Enable a vendor provided ETSI SOL004 compliant containerized VNF package including an ETSI SOL001 VNF Descriptor with container enhancements to  be onboarded into ONAP for composition into an ETSI Network Service
    • Support for onboarding Prototype v4.1.1 CSAR Packages
    • Support for onboarding Prototype v4.1.1 VNF Descriptor
    • Support for mapping of Prototype v4.1.1 VNF Descriptor into SDC AID Data Model
    • Support for using a Prototype v4.1.1 VNF in an ETSI Network Service
  • Business Impact- Enables operators and service providers to use same ETSI aligned containerized VNF (CNF) packages with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators that are currently using ETSI packages to deploy containerized VNFs (CNFs)
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard containerized VNF (CNF)  packaging.  Reduction in capital expense from vendors using a single packaging methodology.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

...

Feature

Description







Epic and User Story

Epic

User Story

Task

Description

Honolulu Plan?

JIRA

Size

(S/M/L/XL)

Priority

Support Onboard ETSI 3.3.1 SOL004 compliant VNF / CNF packages



  • Executive Summary- Enable a vendor provided ETSI SOL004 v3.3.1 compliant VNF package including an ETSI SOL001 VNF / CNF Descriptor to  be onboarded into ONAP for composition into an ONAP Network Service
    • Support for onboarding ETSI v3.3.1SOL004 VNF CSAR Packages with minimum CNF enhancements from 4.1.1
    • Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1
    • Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements into SDC AID Data Model
  • Business Impact- Enables operators and service providers to use same ETSI compliant VNF packages with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators that are currently using ETSI packages to deploy VNFs
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard VNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2610

4 weeks for one designerHigh

Support for onboarding ETSI v3.3.

1SOL004 Support for editing ETSI v3.3.1 SOL001 VNF Descriptor

SDC users should be able to edit onboarded ETSI v3.3.1 SoL001 VNF Descriptors

Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2881

Onboard ETSI SOL007 compliant Network Service Descriptor packages

Executive Summary - Onboard an ETSI SOL007 v3.3.1 compliant (Link to ETSI SOL007 v3.3.1)  Network Service Descriptor package including an ETSI version 3.3.1 SOL001 Network Service Descriptor (NSD) to  be onboarded into ONAP for composition into an ONAP Service or deployment using an ETSI compliant NFVO.

  • Support for Cataloging and Preserving the original SOL007 package

  • Support for mapping of ETSI v3.3.1 SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

  • Support for deploying a service that contains an ETSI SOL001 v3.3.1 compliant Network Service using VF-C as the NFVO

  • Support for deploying a service that contains an ETSI SOL001 v3.3.1 compliant Network Service using an external NFVO

Business Impact - Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.

Business Markets - All operators and service providers that are developing ETSI compatible Network Services

Funding/Financial Impacts - Reduction in operations expense from using industry standard NSD packaging.

Organization Mgmt, Sales Strategies -There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider. 

No

1 SOL004 VNF CSAR Packages with minimum CNF enhancements from 4.1.1


  • SDC users need to onboard ETSI v3.3.1 SOL004 VNF CSAR Packages with minimum CNF enhancements
Yes

Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements

SDC users need to onboard ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements

  • Support SDC AID DM VF descriptor (see the 

    84670319 section)

Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2611

Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements into SDC AID Data Model

Once SDC onboards an ETSI v3.3.1 SOL001 VNF Descriptor, SDC needs to map the ETSI v3.3.1 SOL001 VNF Descriptor into SDC AID Data Model

VNF Mapping:

  • Define a new data type based on the org.openecomp.resource.abstract.nodes.VF with ETSI SOL001 VNF data type attributes.

    • Make the org.openecomp.resource.abstract.nodes.ETSI.VNF a superset of both tosca.nodes.nfv.VNF and org.openecomp.resource.abstract.node.VF
    • During VNF onboarding, SDC copies SOL001 VNF attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VNF
      • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VNF attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
    • SOL001 VNF attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
      • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
      • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
      • For the Honolulu release, it is under consideration
        • to sync up between those modified SOL001 VNF attributes and the vendor ETSI Package attributes 
        • to reflect those modified SOL001 VNF attributes in the orchestration
    • ONAP specific attributes that are inherited from the org.openecomp.resource.abstract.nodes.VF will be filled up by SDC (design time)
      • Those attribute contents will not be mapped back into the SOL001 VNF (reverse mapping). For that case, only the SOL001 VNF corresponding attributes will be copied

VDU Mapping:

  • Make the org.openecomp.resource.abstract.nodes.ETSI.VFC a superset of both tosca.nodes.nfv.Vdu and org.openecomp.resource.abstract.nodes.VFC
  • Note: the org.openecomp.resource.abstract.nodes.VFC represents design-time VFC, not VFC instances
  • During VNF onboarding, SDC copies SOL001 VDU attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VFC
    • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VDU attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
  • SOL001 VDU attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
    • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
    • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
    • For the Honolulu release, it is under consideration
      • to sync up between those modified SOL001 VDU attributes and the vendor ETSI Package attributes 
      • to reflect those modified SOL001 VDU / VFC attributes in the orchestration

VF-Module Mapping:

  • SDC deduces the VF-Module from the SOL001 VNFD Policies>scaling_aspects>properties>aspects
  • Additional VF-Module attributes are deduced as the following table
  • SOL003 Adapter may need to transform the VF-Module back to the SOL001 VNFD policies for the scaling and healing requests from VNFM(s) – not part of Guilin
Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2617

  • from 4.1.1
    • Manifest File (e.g., MainServiceTemplate.mf): a new non-MANO artifact set identifier "onap_cnf_helm" - This would identify the "top-level" helm chart that can be used to deploy the CNF directly, i.e., without utilizing the LCM info the VNF Descriptor
      • e.g., onap_cnf_helm:

                            source: Artifacts/helm/helm_charts.yaml

  • note: to support the direct path, the VNFD could be optional (under discussion with ETSI NFV and ONAP Direct Path team)
  • SDC users should be also able to onboard the existing ETSI v2.6.1 SOL004 CSAR packages - one level backward compatibility needs to be supported
  • For backward compatibility support, SDC needs to check the package manifest file and metadata such as "compatible_specifcation_versions".
    • If it is 3.3.1+, SDC needs to follow a new onboarding path for the ETSI 3.3.1 version package.
    • If the version is prior to 3.3.1, SDC follows the existing 2.x onboarding path. 
  • The package version and its descriptor version should match.
Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-3337


High


Determine the onboarding path based on manifest metadata
  • Determine the onboarding path based on the manifest file and metadata "compatible_specification_versions"
  • If the version is prior to 3.3.1, invoke the existing 2.x SOL004 VNF package onboarding path
  • Otherwise, invoke a new SOL004 VNF package onboarding path
  • SDC users should be able to choose the onboarding package version from SDC UI Category selection...to be discussed...



High


Create a new onboarding path for SOL004  3.3.1 VNF package
  • Create a new onboarding path for 3.3.1
    • Check the CSAR structure differences between 2.7.1 and 3.3.1
  • Handle additional artifacts for CNF, such as Helm Charts, Container Image file(s)
    • For the Non-ETSI CNF, handle an optional VNFD case
    • Handle container image files with the limited file size (up to 2MB); larger files will not be handled in this release; support of larger files requires huge effort (AMDOC's help is needed)



High

Support the SOL001 vnf_profile properties

SDC needs to support the SOL001 vnf_profile (toaca.databypes.nfv.VnfProfile) properties

Image Added


Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-3380


High

















Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptors 


  • SDC users need to onboard ETSI v3.3.1 SOL001 VNF Descriptors
  • SDC users should be also able to onboard the existing ETSI v2.6.1/v2.5.1 SOL001 VNF Descriptors - one level backward compatibility needs to be supported
  • For backward compatibility support, SDC needs to recognize the properties changes (e.g., use the VNF package version) for the Version indication. 
  • SDC uses a separate onboarding process depending on the version.
Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2611



High


Determine the onboarding path based on metadata
  • Determine the onboarding path based on the VNFD package version "compatible_specifcation_versions"
  • If the version is v2.6.1/v2.5.1, invoke the existing SOL001 VNF onboarding
  • Otherwise, invoke a new SOL001 VNFD onboarding path






Create a new onboarding path for SOL001 VNFD 3.3.1
  • Create a new onboarding path for 3.3.1 VNFD
    • Check the VNFD differences between 2.5.1/2.7.1 and 3.3.1
    • Share the common/base SDC data type and node type to represent both 3.3.1 and 2.x; i.e., merge two structures for minimum impact
    • Note: This is the current SDC limitation without versioning, and it will be handled separately in the future.













Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptors with minimum CNF enhancements from 4.1.1

SDC users need to onboard ETSI 3.3.1 with minimum CNF enhancements from 4.1.1

  1. Add tosca.nodes.nfv.VDU.OsContainer type to vnfd_types - aligned with the IFA011 v4.1.1 specification
  2. Add mciopProfile type vnfd_types - aligned with the IFA011 v4.1.1 specification
  3. Allow OsContainerDesc to be in the VDU section - only one of tosca.nodes.nfv.VDU.osContainer or  tosca.nodes.nfv.VDU.compute in a VNFD
  4. Allow mciopProfile in VNF Descriptor


  • SDC needs to support new CNF properties / classes / schema / data models based on defined Information Models
  • SDC may use a separate onboarding process for CNF
  • No backward compatibility for CNF support is necessary
Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-

2801Support onboarding for Cataloging and Preserving the original SOL007 package

Support onboarding for Cataloging and Preserving the original SOL007 package (Link to ETSI SOL001 v3.3.1)

No

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2806

Design ETSI SOL007 compliant Network Service Descriptor packages

  • Executive Summary- Design, catalog and distribute  an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) for deployment using an ETSI compliant NFVO.
    • Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
    • Composed of one or more VNFs and the Virtual Links that connect them.
    • Support for using VNFs with CNF enhancements
  • Business Impact- Enables operators and service providers to use internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators and service providers that are developing and deploying ETSI compatible Network Services
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

Yes

(enhancements)

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2802

Note: there is a PoC for this. Soon, the PoC design could be shared as initial input for discussions

  • Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
SDC users need to design an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
  • Composed of one or more VNFs and the Virtual Links that connect them.
SDC users need to compose one or more VNFs and the Virtual Links that connect them
  • Support for using VNFs with CNF enhancements
SDC users need to use VNFs with CNF enhancementsDesign ETSI SOL001 NSD and generate an ETSI SOL001 v3.3.1 compliant Network Service Descriptor & package

Design ETSI SOL001 NSD and generate ETSI SOL007 compliant Network Service package

  • Create NS and compose NS with its sub components, such as VNFs, VLs, VNF-FG and dependencies between VNFs, etc. - final support scope will be defined
  • Support for mapping of ETSI SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model
    • use SOL001 NSD as SDC AID DM
  • Generate SOL007 NS package

Yes

(enhancement)

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2808

Support for mapping of ETSI v3.3.1 SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

Support for mapping of ETSI SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

  • use SOL001 NSD as SDC AID DM
  • support only ETSI NS and NsVirtualLink only

Yes

(enhancement)

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2618

Support design of Service templates, leveraging NSDsSupport design of Service templates, leveraging NSDs

Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2882

Design Nested/Hierarchical ETSI SOL001 v3.3.1 Network Service Descriptor package

  • Executive Summary- Design an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) that includes references to other Network Service Descriptors for deployment using an ETSI compliant NFVO.
    • Composed of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them.
    • Support for using VNFs with CNF enhancements
  • Business Impact- Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators and service providers that are developing ETSI compatible Network Services especially for 5G Slicing where each Slice Subnet is associated with a Network Service 
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.
Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2803

Composed of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect themSDC users need to compose zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them

Support for using VNFs with CNF enhancements

Support design of Service templates, leveraging NSDsSupport for onboarding of the SOL007 v3.3.1 compliant NSD package including SOL001 NSD that includes references to other NSDs for composition into ONAP ServiceSupport for onboarding of the SOL007 v3.3.1 compliant NSD package including SOL001 NSD that includes references to other NSDs for composition into ONAP Service

3351


High


Support minimum CNF enhancements from 4.1.1

Support the vnfd_type with CNF attributes from 4.1.1:

  1. Add tosca.nodes.nfv.VDU.OsContainer type to vnfd_types - aligned with the IFA011 v4.1.1 specification
  2. Add mciopProfile type vnfd_types - aligned with the IFA011 v4.1.1 specification
  3. Allow OsContainerDesc to be in the VDU section - only one of tosca.nodes.nfv.VDU.osContainer or  tosca.nodes.nfv.VDU.compute in a VNFD
  4. Allow mciopProfile in VNF Descriptor






Extend the 3.3.1 VNFD onboarding path for CNF attributes Extend the 3.3.1 VNFD onboarding logic for CNF attribute handling 



===========









Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor into SDC AID Data Model


Once SDC onboards an ETSI v3.3.1 SOL001 VNF Descriptor, SDC needs to map the ETSI v3.3.1 SOL001 VNF Descriptor into SDC AID Data Model

  • No backward compatibility ; SDC supports only ETSI 3.3.1 VNFD mapping to SDC AID DM

VNF Mapping:

  • Define a new data type based on the org.openecomp.resource.abstract.nodes.VF with ETSI SOL001 VNF data type attributes.

    • Make the org.openecomp.resource.abstract.nodes.ETSI.VNF a superset of both tosca.nodes.nfv.VNF and org.openecomp.resource.abstract.node.VF
    • During VNF onboarding, SDC copies SOL001 VNF attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VNF
      • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VNF attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
    • SOL001 VNF attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
      • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
      • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
      • For the Honolulu release, it is under consideration
        • to sync up between those modified SOL001 VNF attributes and the vendor ETSI Package attributes 
        • to reflect those modified SOL001 VNF attributes in the orchestration
    • ONAP specific attributes that are inherited from the org.openecomp.resource.abstract.nodes.VF will be filled up by SDC (design time)
      • Those attribute contents will not be mapped back into the SOL001 VNF (reverse mapping). For that case, only the SOL001 VNF corresponding attributes will be copied

VDU Mapping:

  • Make the org.openecomp.resource.abstract.nodes.ETSI.VFC a superset of both tosca.nodes.nfv.Vdu and org.openecomp.resource.abstract.nodes.VFC
  • Note: the org.openecomp.resource.abstract.nodes.VFC represents design-time VFC, not VFC instances
  • During VNF onboarding, SDC copies SOL001 VDU attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VFC
    • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VDU attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
  • SOL001 VDU attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
    • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
    • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
    • For the Honolulu release, it is under consideration
      • to sync up between those modified SOL001 VDU attributes and the vendor ETSI Package attributes 
      • to reflect those modified SOL001 VDU / VFC attributes in the orchestration

VF-Module Mapping (Stretch goal)

  • SDC deduces the VF-Module from the SOL001 VNFD Policies>scaling_aspects>properties>aspects
  • Additional VF-Module attributes are deduced as the following table
  • SOL003 Adapter may need to transform the VF-Module back to the SOL001 VNFD policies for the scaling and healing requests from VNFM(s)

SDC supports Interface mapping to SDC AID DM for creating Service and connect VNF to external networking, etc.

Capacity and requirement mapping won't be necessary in this release

Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-

2811

Onboard Prototype Package based on ETSI IFA011 v4.1.1 supporting containerized VNF (CNF) packages

  • Executive Summary- Enable a vendor provided ETSI SOL004 compliant containerized VNF package including an ETSI SOL001 VNF Descriptor with container enhancements to  be onboarded into ONAP for composition into an ETSI Network Service
    • Support for onboarding Prototype v4.1.1 CSAR Packages
    • Support for onboarding Prototype v4.1.1 VNF Descriptor
    • Support for mapping of Prototype v4.1.1 VNF Descriptor into SDC AID Data Model
    • Support for using a Prototype v4.1.1 VNF in an ETSI Network Service
  • Business Impact- Enables operators and service providers to use same ETSI aligned containerized VNF (CNF) packages with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators that are currently using ETSI packages to deploy containerized VNFs (CNFs)
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard containerized VNF (CNF)  packaging.  Reduction in capital expense from vendors using a single packaging methodology.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.
Onboard ETSI SOL004 compliant PNF packages

Executive Summary - Enable a vendor provided ETSI SOL004 compliant PNF package including an ETSI SOL001 PNF Descriptor to  be onboarded into ONAP for composition into an ONAP Service

Business Impact - Enables operators and service providers to use same ETSI compliant PNF packages with ONAP and existing NFVO. Industry compatibility.

Business Markets - All operators that are currently using ETSI packages to deploy PNFs

Funding/Financial Impacts - Reduction in operations expense from using industry standard PNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.

Organization Mgmt, Sales Strategies -There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider. 

2617


Medium

(VF-Module mapping is a stretch goal)



Map VNF data type to SDC AID DM VFMap VNF data type to SDC AID DM VF





Map VDU data type to SDC AID DM VFCMap VDU data type to SDC AID DM VFC





Deduce VF-Module from VNFD PoliciesDeduce VF-Module from VNFD Policies





Map VNF Interfaces to SDC AID DM Map VNF Interfaces to SDC AID DM 




























Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1 into SDC AID Data Model

Once SDC onboards an ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements, SDC needs to map the ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1 into SDC AID Data Model

  • SDC supports VDU mapping for osContainer to SDC AID DM
    • create a new NF type for CNF
  • SDC supports virtualCPD, MCIOP ...
  • note: need to discuss with the non-ETSI team for compatibility
    • try to have unified modeling between non-ETSI and ETS-based CNF modeling... To discuss with SO team...
    • Thinking about optional VNFD. If there is no VNFD, no mapping is necessary
Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-

2805

SDC supports onboarding of the SOL004 PNF package includes SOL001 PNFD

  • PNFD onboarding is done and its regression testing will be done

3352


medium


Map VNF with CNF properties to SDC AID DM






Map VDU with CNF properties to SDC AID DM






Map virtualCPD to SDC AID DM






Map MCIOP to SDC AID DM













Support for editing ETSI
SOL004 PNF package onboarding is done in Dublin but support
v3.3.1
SOL001 VNF / CNF Descriptor

SDC users should be able to edit onboarded ETSI

Update onboarding procedure for

v3.3.1 SOL001 VNF Descriptors

  • no backward compatibility is necessary
  • SDC supports value changes and also adding properties

Note: should we reflect the changes to original vendor packages in ETSI_PACKAGE directory??? need to think about impact... SDC generates a new digital signature for the package and distributes it to ETSI Catalog Manager.

Yes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-

2837

Support for mapping of ETSI v3.3.1 SOL001 PNF Descriptor into SDC AID Data Model

SOL001 PNFD 3.3.1 Mapping to SDC AID DMYes

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-2836

Support additional package artifact Indicators for ETSI packages and Non-ETSI packages

SDC supports additional package artifact types to split ETSI packages from other non-ETSI TOSCA packages

  • SDC (notification) generates additional artifact types
  • SDC client filters on the additional artifact types

2881


medium


Enhance SDC UI for editing SOL001 VNF / CNF descriptor propertiesEnhance SDC UI for editing SOL001 VNF / CNF descriptor properties



























Design ETSI SOL007 compliant Network Service Descriptor packages



  • Executive Summary- Design, catalog and distribute  an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) for deployment using an ETSI compliant NFVO.
    • Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
    • Compose of one or more VNFs and the Virtual Links that connect them.
    • Support for using VNFs with CNF enhancements
  • Business Impact- Enables operators and service providers to use internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
  • Business Markets- All operators and service providers that are developing and deploying ETSI compatible Network Services
  • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
  • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

Yes


Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDC-

2813SDC Notification supports additional package artifact types to split ETSI package from other non-ETSI TOSCA packages

SDC (Notification) supports additional package artifact types to split ETSI package from other non-ETSI TOSCA packages

3338

1 week for one designerHigh

Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO


SDC users need to design an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO

  • SDC needs to support backward compatibility for 2.5.1/2.6.1?
  • SDC users need to create NS 
  • SDC users need to generate SOL007 NS package
  • for SOL004 and SOL007 packages, artifact type = ONBOARDED_ETSI_PACKAGE
  • for non-ETSI TOSCA package, artifact type = ONBOARDED_ONAP_PACKAGE
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-

    2814

    3339


    High
    SDC client supports additional filtering on the artifact types for distinguishing between ETSI packages and Non-ETSI packages

    SDC client supports additional filtering on the artifact types for distinguishing between ETSI packages and Non-ETSI packages

    • for SOL004 and SOL007 packages, filtering for artifact type = ONBOARDED_ETSI_PACKAGE
    • for non-ETSI TOSCA package, filtering for artifact type = ONBOARDED_ONAP_PACKAGE
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2815

    Support ETSI Package Security and validation


    Enhance SDC design for creating v3.3.1 NSEnhance SDC design for creating v3.3.1 NS





    Generate v3.3.1 SOL007 NS package

    Generate v3.3.1 SOL007 NS package

    • No backward compatibility is necessary





















    Compose of one or more VNFs and the Virtual Links that connect them


    SDC users need to compose one or more VNFs and the Virtual Links that connect them in NS

    • The NSD and its referenced VNF / CNF versions should be matched. 
    • During SDC references VNFs, SDC needs to validate the version of VNFs / CNF, based on the VNF / CNF descriptor metadata (version indicator in the metadata)
      • After 2.6.1, there is a version indicator in the metadata

    Note:  cover the VNF version validation... SAP descriptor has a version...

    ONAP supports vendor ETSI Package Security and validation

    If the vendor package includes signature and certificate, ONAP supports the package security


    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-

    2613
    • SOL004 VNF/PNF Package security will be supported by SDC, based on the package signature and certificate
    • ONAP SDC supports the package security
    Done
    • SOL007 NS Package security will be supported by SDC, based on the package signature and certificate

    3340


    High


    Enhance SDC to compose v3.3.1 VNFs and VLs for v3.3.1 NS

    Enhance SDC to allow compose v3.3.1 VNFs and VLs for v3.3.1 NS







    Validate NSD and VNFD version match

    Validate NSD and VNFD version match

    • The versions of NS and sub models should be matched  













    Support for compose VNFs with CNF enhancements


    SDC users need to compose VNFs with CNF enhancements

    note: virtual CPD ... version... TBD

    ONAP SDC supports the package security

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-

    2614Support of ETSI Package ValidationVNF SDK will support ETSI package validation for VNF and NSTBDVNF SDK will support ETSI VNF package pre-onboarding for validationVNF SDK will support ETSI VNF package pre-onboarding for validationTBDVNF SDK will support ETSI NS package pre-onboarding for validationVNF SDK will support ETSI NS package pre-onboarding for validationTBD

    ETSI Package Management Architecture

    The diagram depicts the package management architecture. 

    1. SDC supports SOL004 VNF/PNF package onboarding, and stores the original vendor VNF/PNF package inside the SDC package
      1. SOL004 package includes SOL001 VNFD/PNFD
      2. PNF onboarding has been tested
    2. SDC will support SOL007 NS package onboarding and store the original vendor NS package inside the SDC package
      1. NS onboarding will be supported
      2. NS onboarding will be tested
    3. SDC supports VNF/PNF package management interfaces from OSS/BSS via SOL005 Package Management APIs (TBD)
    4. SO supports NS package management interfaces from OSS via SOL005 Package Management APIs (TBD)
    5. ETSI Catalog Manager stores SOL004/SOL007 Packages for other ONAP runtime components such as SO, SOL003/SOL005 Adapters, VFC and others
      1. ONAP-ETSI Catalog Manager will store SOL004 packages for VNF and PNF
      2. ONAP-ETSI Catalog Manager will store SOL007 packages for NS
    6. SOL003 VNFM Adapter provides VNFMs Query/Fetch VNF packages/contents/artifacts, Reading VNFD and subscription/notification services
    7. SOL005 Adapter provides NS/PNF/VNF package management to VF-C/External NFVO by leveraging SOL005 package management APIs

    Onboarding

    SDC NS/VNF/PNF/NS Onboarding and Distribution

    This section describes SDC VNF/PNF onboarding and the End-to-End package distribution from SDC to SVNFM/external NFVOs.

    SDC takes the vendor provided package and adds some files or changes files and meta data according to SDC procedure.

    SDC NS/VNF/PNF Onboarding Procedure and Original Vendor VNF/PNF Package Handling

    • Enhancement (Ericsson contribution) was made to the SDC Dublin to support SOL004 PNF/VNF onboarding with .zip and .csar file extensions.
      • SDC VSP and Resource csar files have the ETSI_PACKAGE, which contains the original vendor VNF package.
        • The VNFM and external NFVO use the original vendor VNF/NS packages.
        • ONAP-ETSI Catalog Manager will be changed for the location of the original vendor package.
      • SOL007 NS onboarding will follow the same procedure; i.e., storing the vendor SOL007 NS package into the ETSI_PACKAGE directory.
    • In Guilin, the ONBOARDED_PACKAGE directory is changed to the ETSI_PACKAGE directory.

    Image Removed

    1. At onboarding, SDC checks the file extension and performs the following procedures
      1. If the file is .zip, SDC unzips
        1. If it has .cert & .cms, it is a package with security and security validation will be performed.
        2. If it does not include .cert & .cms, it is an existing Heat template onboarding, and SDC follows the Heat template onboarding procedure
    2. If the file is .csar, it is a package without security.
    3. Next, SDC will check the TOSCA.meta file.
    4. If it contains SOL004v2.x.1 keywords, the package will be handled as SOL004v2.x.1. In the Guilin release, v3.3.1 will be supported.
    5. Otherwise, it will be handled as existing TOSCA (non-SOL004) package onboarding which will not have the ETSI_PACKAGE artifact.

    Image Removed

    NS Onboarding Design
    • extend OrchestrationTemplateProcessCsarHandler.java to handle SOL007
      • processCsar()
        • instantiateToscaConverterFor(resourceType).convert(fileContentHandler)
          • calling ToscaSolModelDrivenConverterPNF()
            • pndfTransformationEngine.transform()
          • calling ToscaSolConverterVnf()
            • vnfTopologyTemplateConverter().convertTopologyTemplate(serviceTemplate, readerService)
              • convertInputs()
              • convertNodeTemplates()
              • convertOutputs()
              • convertSubstitutionMappings()
              • convertPolicies()
          • need to call ToscaSolModelDrivenConverterNS()
    • create ToscaSolModelDrivenConverterNS class
      • create NSdNodeTemplateTransformationEngine class
        • transform() to SDC AID DM NS
    • generate the SDC package for NS with the original vendor SOL007 NS package
    VNF Onboarding Design
    • leverage the existing SOL004 VNF onboarding mechanism
    • create a transform class to transform to SDC AID DM VNF
    • generate the SDC package for VNF with the original vendor SOL004 VNF package
    PNF Onboarding Design
    • leverage the existing SOL004 PNF onboarding mechanism
    • the transformation to SDC AID DM is already done
    • It is already done: generate the SDC package for PNF with the original vendor SOL004 VNF package

    The following diagram depicts the onboarding procedures for VNF/NS/PNF.

    Gliffy Diagram
    macroIdfbc6e2f8-a0f2-4c65-9293-6931f8e8b2e9
    nameETSI SDC Onboarding - Honolulu
    pagePin1

    1. SOL004 VNF/PNF and SOL007 NS Packages are onboarded to SDC.
    2. SDC creates its Resource CSAR by adding ONAP-specific files and metadata according to SDC procedure.
      1. For VNF onboarding, SOL001 VNFD is mapped to SDC Data Model.
      2. For NS onboarding, SOL001 NSD is mapped to SDC Data Model. Note: the SDC NS Data Model would be SOL001 NSD-based.
      3. For PNF onboarding, SOL001 PNFD is mapped to SDC Data Model.
      4. The original SOL004 VNF/PNF and SOL007 NS packages will be stored in the ETSI_PACKAGE directory.
      5. SDC shall have a capability to design SOL007 NSDs and generates SOL007 NS packages
        1. Since SDC does not have a proper NS Model, it will follow SOL001 NSD.
      6. SDC embeds the Resource CSAR into its Service CSAR for distribution.
        1. After SDC validates the onboarded packages, the Service CSAR is distributed.
        2. SDC sends the package notification to DMaaP for its package notification subscribers.
    3. ETSI Catalog Manager receives the package notification from SDC.
      1. ETSI Catalog Manager queries SDC for the SDC CSAR.
        1. ETSI Catalog Managers examines the SDC CSAR. If the SDC CSAR contains the ETSI_PACKAGE directory, it extracts the SOL004/SOL007 packages from the directory.
        2. ETSI Catalog Manager stores the SOL004/SOL007 packages to its Catalog Database.
      2. ETSI Catalog Manager provides APIs for the SOL003/SOL005 Adapters to distribute the packages to SVNFM/NFVO.

    Design NS

    NSD Structure

    Image Removed

    Image Removed

    SDC supports NSD design that meets the following requirements.
    • The NSD shall reference the VNFDs applicable to its constituent VNFs.
    • The NSD shall include the VLDs applicable to the VLs used by the NS to interconnect its constituent NFs.
    • The NSD shall reference the PNFDs applicable to its constituent PNFs.
    • The NSD shall include the descriptors of the VNFFGs applicable to the NS (stretch goal).
    • The NSD shall support the capability to include or reference NS LCM scripts.
    • The NSD shall support the capability to providing monitoring parameters to be tracked during the lifetime of a NS instance (stretch goal).
    • The NSD shall support the capability to describe auto scale rules, associating criteria to scaling actions (stretch goal).
    • The NSD shall include package security information enabling validating its authenticity and integrity.
    • The NSD shall include a globally unique identifier for identifying each descriptor instance.
    • The NSD shall include an identifier to select to controller compatible with the NSD.
    • A VLD shall enable specifying the type of connectivity provided by the link between VNFs.
    NSD Information Element
    • SDC supports the following NSD Information Elements.
    • SDC supports the netestedNsdId(s) for nested NSDs. (not for Guilin)
    • SDC UI should be able to manage the NSD attributes.
    • SDC supports the virtualLinkDesc(s) to define constituent VLs.

    Image Removed

    Image Removed

    Use Cases for Guilin

    VCPE

    The following is an example of VCPE model hierarchy. In VCPE, the E2E Service model includes one NS (vCPE). And the vCPE NS model includes vbng, vbrgemu, vgmux and vgw VNFs and a network VL.

    • SDC should be able to reference the vCPE NSD from the E2E Service model.
    • SDC should be able to reference all the constituent VNFs and VL(s).

    Image Removed

    Image Removed

    <example>

    Image Removed

    • Test with vGW and VGMUX with a VL first.
    Latest vCPE CSARs

    The latest (Frankfurt) vCPE CSARs can be retrieved from the https://git.onap.org/demo/tree/tosca/vCPE_F. There are one NS CSAR and five VNF CSARs:

    • ns.csar
    • infra.csar
    • vbng.csar
    • vbrgemu.csar
    • vgmux.csar
    • vgw.csar
    Other Use Case

    To represent nested NS cases, we will choose another use case.

    • TBD

    NSD Design Process in SDC

    VNF Composition

    The following diagram depicts how SDC

    1. creates a NSD, based on SOL001 NSD
      1. generates SDC AID DM for NS, based on SOL001 NSD
    2. drags and drops constituent VFs
    3. generates SOL007 NS package

    ...

    3341


    High


    Enhance SDC to compose v3.3.1 VNFs with CNF enhancementsEnhance SDC to compose v3.3.1 VNFs with CNF enhancements












    Support for mapping of ETSI v3.3.1 SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

    SDC needs to support for mapping of ETSI SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

    • map SOL001 NSD to SDC AID DM
    • support ETSI NS and NsVirtualLink only.. maybe more... TBD
    • support Interfaces

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3342


    Medium


    Map v3.3.1 NSD to SDC AID DMMap v3.3.1 NSD to SDC AID DM





    Suport InterfacesSuport NS Interfaces to SDC AID DM












    Support design of Service templates, leveraging NSDs

    SDC users need to support design of Service templates, leveraging NSDs

    ONAP service references NSDs...

    Yes


    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2882


    Medium


    Compose Service Templates referencing NSDsCompose Service Templates referencing NSDs



















    Design Nested/Hierarchical ETSI SOL001 v3.3.1 Network Service Descriptor package



    • Executive Summary- Design an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) that includes references to other Network Service Descriptors for deployment using an ETSI compliant NFVO.
      • Composed of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them.
      • Support for using VNFs with CNF enhancements
    • Business Impact- Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators and service providers that are developing ETSI compatible Network Services especially for 5G Slicing where each Slice Subnet is associated with a Network Service 
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.
    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2803


    N/A

    Compose of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them
    SDC users need to compose zero or more VNFs and one or more nested Network Services and the Virtual Links that connect themNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3343


    N/A

    Support for using VNFs with CNF enhancements


    Support design of Service templates, leveraging NSDsNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3344


    N/A








    Onboard Prototype Package based on ETSI IFA011 v4.1.1 supporting containerized VNF (CNF) packages



    • Executive Summary- Enable a vendor provided ETSI SOL004 compliant containerized VNF package including an ETSI SOL001 VNF Descriptor with container enhancements to  be onboarded into ONAP for composition into an ETSI Network Service
      • Support for onboarding Prototype v4.1.1 CSAR Packages
      • Support for onboarding Prototype v4.1.1 VNF Descriptor
      • Support for mapping of Prototype v4.1.1 VNF Descriptor into SDC AID Data Model
      • Support for using a Prototype v4.1.1 VNF in an ETSI Network Service
    • Business Impact- Enables operators and service providers to use same ETSI aligned containerized VNF (CNF) packages with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators that are currently using ETSI packages to deploy containerized VNFs (CNFs)
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard containerized VNF (CNF)  packaging.  Reduction in capital expense from vendors using a single packaging methodology.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.
    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3353


    N/A

    Support for onboarding Prototype v4.1.1 CSAR Packages


    SDC needs to support onboarding prototype v4.1.1 CSAR packages with CNF artifacts and metadataNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3354




    Support for onboarding Prototype v4.1.1 VNF/CNF Descriptor


    SDC needs to support onboarding prototype v4.1.1 VNF/CNF descriptorNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3355




    Support for mapping of Prototype v4.1.1 VNF/CNF Descriptor into SDC AID Data Model


    SDC needs to support mapping of prototype v4.1.1 VNF/CNF Descriptor into SDC AID Data ModelNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3356




    Support for using a Prototype v4.1.1 VNF in an ETSI Network Service


    SDC needs to support for a prototype v4.1.1 VNF/CNF in an ETSI network ServiceNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3357



    Onboard ETSI 3.3.1 SOL004 compliant PNF packages

    Executive Summary - Enable a vendor provided ETSI 3.3.1 SOL004 compliant PNF package including an ETSI SOL001 PNF Descriptor to  be onboarded into ONAP for composition into an ONAP Service

    Business Impact - Enables operators and service providers to use same ETSI compliant PNF packages with ONAP and existing NFVO. Industry compatibility.

    Business Markets - All operators that are currently using ETSI packages to deploy PNFs

    Funding/Financial Impacts - Reduction in operations expense from using industry standard PNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.

    Organization Mgmt, Sales Strategies -There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider. 

    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2805


    N/A

    SDC supports onboarding of the 3.3.1 SOL004 PNF package includes SOL001 PNFD


    • SDC user needs to onboard ETSI 3.3.1 SOL004 PNF packages 
    • SDC needs to update onboarding procedure for v3.3.1
    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2837



    N/A

    Support for mapping of ETSI v3.3.1 SOL001 PNF Descriptor into SDC AID Data Model



    SDC needs to support 3.3.1 SOL001 PNFD Mapping to SDC AID DMNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2836


    N/A

    Onboard ETSI SOL007 compliant Network Service Descriptor packages



    Executive Summary - Onboard an ETSI SOL007 v3.3.1 compliant (Link to ETSI SOL007 v3.3.1)  Network Service Descriptor package including an ETSI version 3.3.1 SOL001 Network Service Descriptor (NSD) to  be onboarded into ONAP for composition into an ONAP Service or deployment using an ETSI compliant NFVO.

    • Support for Cataloging and Preserving the original SOL007 package

    • Support for mapping of ETSI v3.3.1 SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

    • Support for deploying a service that contains an ETSI SOL001 v3.3.1 compliant Network Service using VF-C as the NFVO

    • Support for deploying a service that contains an ETSI SOL001 v3.3.1 compliant Network Service using an external NFVO

    Business Impact - Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.

    Business Markets - All operators and service providers that are developing ETSI compatible Network Services

    Funding/Financial Impacts - Reduction in operations expense from using industry standard NSD packaging.

    Organization Mgmt, Sales Strategies -There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider. 

    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2801


    N/A

    Support onboarding for Cataloging and Preserving the original SOL007 package

    SDC users need to support onboarding for Cataloging and Preserving the original SOL007 package (Link to ETSI SOL001 v3.3.1)

    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2806


    N/A

    Support for onboarding of the SOL007 v3.3.1 compliant NSD package including SOL001 NSD that includes references to other NSDs for composition into ONAP Service
    SDC users need to support for onboarding of the SOL007 v3.3.1 compliant NSD package including SOL001 NSD that includes references to other NSDs for composition into ONAP ServiceNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2811


    N/A








    Support ETSI Package Security and validation

    ONAP supports vendor ETSI 3.3.1Package Security and validation

    • If the vendor package includes signature and certificate, ONAP supports the package security
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2613

    4 weeks for one designerHigh

    • SOL004 VNF/PNF Package security will be supported by SDC, based on the ETSI 3.3.1 package signature and certificate

    ONAP SDC supports ETSI 3.3.1 SOL004 VNF/PNF Package security

    Yes



    • SOL007 NS Package security will be supported by SDC, based on the ETSI 3.3.1 package signature and certificate

    ONAP SDC supports ETSI 3.3.1 SOL007 NS Package security 

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2614


    High
    Support of ETSI Package Validation

    VNF SDK will support ETSI package validation for VNF and NSTBD

    N/A

    VNF SDK will support ETSI VNF package pre-onboarding for validation
    VNF SDK will support ETSI VNF package pre-onboarding for validationTBD

    N/A

    VNF SDK will support ETSI NS package pre-onboarding for validation
    VNF SDK will support ETSI NS package pre-onboarding for validationTBD

    N/A

    ETSI Package Management Architecture

    The diagram depicts the package management architecture. 

    1. SDC supports SOL004 VNF/PNF package onboarding, and stores the original vendor VNF/PNF package inside the SDC package
      1. SOL004 package includes SOL001 VNFD/PNFD
      2. PNF onboarding has been tested
    2. SDC will support SOL007 NS package onboarding and store the original vendor NS package inside the SDC package
      1. NS onboarding will be supported
      2. NS onboarding will be tested
    3. SDC supports VNF/PNF package management interfaces from OSS/BSS via SOL005 Package Management APIs (TBD)
    4. SO supports NS package management interfaces from OSS via SOL005 Package Management APIs (TBD)
    5. ETSI Catalog Manager stores SOL004/SOL007 Packages for other ONAP runtime components such as SO, SOL003/SOL005 Adapters, VFC and others
      1. ONAP-ETSI Catalog Manager will store SOL004 packages for VNF and PNF
      2. ONAP-ETSI Catalog Manager will store SOL007 packages for NS
    6. SOL003 VNFM Adapter provides VNFMs Query/Fetch VNF packages/contents/artifacts, Reading VNFD and subscription/notification services
    7. SOL005 Adapter provides NS/PNF/VNF package management to VF-C/External NFVO by leveraging SOL005 package management APIs


    Onboarding

    SDC NS/VNF/PNF/NS Onboarding and Distribution

    This section describes SDC VNF/PNF onboarding and the End-to-End package distribution from SDC to SVNFM/external NFVOs.

    SDC takes the vendor provided package and adds some files or changes files and meta data according to SDC procedure.


    SDC NS/VNF/PNF Onboarding Procedure and Original Vendor VNF/PNF Package Handling

    • Enhancement (Ericsson contribution) was made to the SDC Dublin to support SOL004 PNF/VNF onboarding with .zip and .csar file extensions.
      • SDC VSP and Resource csar files have the ETSI_PACKAGE, which contains the original vendor VNF package.
        • The VNFM and external NFVO use the original vendor VNF/NS packages.
        • ONAP-ETSI Catalog Manager will be changed for the location of the original vendor package.
      • SOL007 NS onboarding will follow the same procedure; i.e., storing the vendor SOL007 NS package into the ETSI_PACKAGE directory.
    • In Guilin, the ONBOARDED_PACKAGE directory is changed to the ETSI_PACKAGE directory.

    Image Added

    1. At onboarding, SDC checks the file extension and performs the following procedures
      1. If the file is .zip, SDC unzips
        1. If it has .cert & .cms, it is a package with security and security validation will be performed.
        2. If it does not include .cert & .cms, it is an existing Heat template onboarding, and SDC follows the Heat template onboarding procedure
    2. If the file is .csar, it is a package without security.
    3. Next, SDC will check the TOSCA.meta file.
    4. If it contains SOL004v2.x.1 keywords, the package will be handled as SOL004v2.x.1. In the Guilin release, v3.3.1 will be supported.
    5. Otherwise, it will be handled as existing TOSCA (non-SOL004) package onboarding which will not have the ETSI_PACKAGE artifact.


    Image Added

    NS Onboarding Design
    • extend OrchestrationTemplateProcessCsarHandler.java to handle SOL007
      • processCsar()
        • instantiateToscaConverterFor(resourceType).convert(fileContentHandler)
          • calling ToscaSolModelDrivenConverterPNF()
            • pndfTransformationEngine.transform()
          • calling ToscaSolConverterVnf()
            • vnfTopologyTemplateConverter().convertTopologyTemplate(serviceTemplate, readerService)
              • convertInputs()
              • convertNodeTemplates()
              • convertOutputs()
              • convertSubstitutionMappings()
              • convertPolicies()
          • need to call ToscaSolModelDrivenConverterNS()
    • create ToscaSolModelDrivenConverterNS class
      • create NSdNodeTemplateTransformationEngine class
        • transform() to SDC AID DM NS
    • generate the SDC package for NS with the original vendor SOL007 NS package


    VNF Onboarding Design
    • leverage the existing SOL004 VNF onboarding mechanism
    • create a transform class to transform to SDC AID DM VNF
    • generate the SDC package for VNF with the original vendor SOL004 VNF package


    PNF Onboarding Design
    • leverage the existing SOL004 PNF onboarding mechanism
    • the transformation to SDC AID DM is already done
    • It is already done: generate the SDC package for PNF with the original vendor SOL004 VNF package



    The following diagram depicts the onboarding procedures for VNF/NS/PNF.


    Gliffy Diagram
    macroIdfbc6e2f8-a0f2-4c65-9293-6931f8e8b2e9
    nameETSI SDC Onboarding - Honolulu
    pagePin16



    1. SOL004 VNF/PNF and SOL007 NS Packages are onboarded to SDC.
    2. SDC creates its Resource CSAR by adding ONAP-specific files and metadata according to SDC procedure.
      1. For VNF onboarding, SOL001 VNFD is mapped to SDC Data Model.
      2. For NS onboarding, SOL001 NSD is mapped to SDC Data Model. Note: the SDC NS Data Model would be SOL001 NSD-based.
      3. For PNF onboarding, SOL001 PNFD is mapped to SDC Data Model.
      4. The original SOL004 VNF/PNF and SOL007 NS packages will be stored in the ETSI_PACKAGE directory.
      5. SDC shall have a capability to design SOL007 NSDs and generates SOL007 NS packages
        1. Since SDC does not have a proper NS Model, it will follow SOL001 NSD.
      6. SDC embeds the Resource CSAR into its Service CSAR for distribution.
        1. After SDC validates the onboarded packages, the Service CSAR is distributed.
        2. SDC sends the package notification to DMaaP for its package notification subscribers.
    3. ETSI Catalog Manager receives the package notification from SDC.
      1. ETSI Catalog Manager queries SDC for the SDC CSAR.
        1. ETSI Catalog Managers examines the SDC CSAR. If the SDC CSAR contains the ETSI_PACKAGE directory, it extracts the SOL004/SOL007 packages from the directory.
        2. ETSI Catalog Manager stores the SOL004/SOL007 packages to its Catalog Database.
      2. ETSI Catalog Manager provides APIs for the SOL003/SOL005 Adapters to distribute the packages to SVNFM/NFVO.


    SOL004 and SOL001 v3.3.1 + 4.1.1 (hybrid) Onboarding

    Gliffy Diagram
    macroIdd34e147d-5457-466e-a4b2-206abd612a83
    nameSOL004 VNF-CNF structure onboarding - Honolulu
    pagePin19


    Design NS


    NSD Structure


    Image Added

    Image Added

    SDC supports NSD design that meets the following requirements.
    • The NSD shall reference the VNFDs applicable to its constituent VNFs.
    • The NSD shall include the VLDs applicable to the VLs used by the NS to interconnect its constituent NFs.
    • The NSD shall reference the PNFDs applicable to its constituent PNFs.
    • The NSD shall include the descriptors of the VNFFGs applicable to the NS (stretch goal).
    • The NSD shall support the capability to include or reference NS LCM scripts.
    • The NSD shall support the capability to providing monitoring parameters to be tracked during the lifetime of a NS instance (stretch goal).
    • The NSD shall support the capability to describe auto scale rules, associating criteria to scaling actions (stretch goal).
    • The NSD shall include package security information enabling validating its authenticity and integrity.
    • The NSD shall include a globally unique identifier for identifying each descriptor instance.
    • The NSD shall include an identifier to select to controller compatible with the NSD.
    • A VLD shall enable specifying the type of connectivity provided by the link between VNFs.
    NSD Information Element
    • SDC supports the following NSD Information Elements.
    • SDC supports the netestedNsdId(s) for nested NSDs. (not for Guilin)
    • SDC UI should be able to manage the NSD attributes.
    • SDC supports the virtualLinkDesc(s) to define constituent VLs.

    Image Added

    Image Added

    Use Cases for Guilin

    VCPE

    The following is an example of VCPE model hierarchy. In VCPE, the E2E Service model includes one NS (vCPE). And the vCPE NS model includes vbng, vbrgemu, vgmux and vgw VNFs and a network VL.

    • SDC should be able to reference the vCPE NSD from the E2E Service model.
    • SDC should be able to reference all the constituent VNFs and VL(s).

    Image Added

    Image Added

    <example>

    Image Added

    • Test with vGW and VGMUX with a VL first.
    Latest vCPE CSARs

    The latest (Frankfurt) vCPE CSARs can be retrieved from the https://git.onap.org/demo/tree/tosca/vCPE_F. There are one NS CSAR and five VNF CSARs:

    • ns.csar
    • infra.csar
    • vbng.csar
    • vbrgemu.csar
    • vgmux.csar
    • vgw.csar


    Other Use Case

    To represent nested NS cases, we will choose another use case.

    • TBD


    NSD Design Process in SDC

    VNF Composition

    The following diagram depicts how SDC

    1. creates a NSD, based on SOL001 NSD
      1. generates SDC AID DM for NS, based on SOL001 NSD
    2. drags and drops constituent VFs
    3. generates SOL007 NS package


    Gliffy Diagram
    nameDesign SOL007 NS Package for Honolulu
    pagePin1


    VL Composition
    • SDC supports NSVLDs that are defined in the ETSI IFA 014, as part of NS design.
    • SDC UI should be able to handle the following VLD attributes.


    Image Added


    VNFD Composition

    The NSD references the VNFD of a constituent VNFs.

    • Drag and drops onboarded VNFs
    VNFD Data Model

    The following Data Model link define VNFD and its sub node types.


    VNF/CNF Data Model Based on ETSI v3.3.1 SOL001 plus CNF Enhancements


    VNFD Information element

    The following depicts the VNFD information element.



    Image Added

    Image Added

    SapD Composition

    SapD fulfills the following information element.

    Image Added



    Distribution

    ETSI packages will be distributed from SDC to the ETSI Catalog Manager for other ONAP runtime components such as SO (SOL003/SOL005 Adapter) and VF-C.

    • The original vendor package format could be one of the following.
      • Vendor package including certificate and signature (Zip format)
      • Vendor package without certificate and signature (CSAR format)

    ETSI Catalog Manager Enhancements

    ETSI Catalog Manager will interface with the SDC directly, without a help from ONAP SO.

    Image Added

    Package Distribution Components Interactions

    The following diagram depicts the ETSI package distribution. 

    Gliffy Diagram
    nameONAP ETSI Package Management for Honolulu
    pagePin1



     

    ETSI Package Distribution Flows


    PlantUML Macro
    typedot
    @startuml
    participant OSS_BSS
    participant SDC
    participant ONAP_ETSI_Catalog_Mgr
    participant SO_NFVO
    participant SOL003_Adapter
    participant SOL005_Adapter
    participant VNFM
    participant VFC
    participant Ext_NFVO
    autonumber 
    
    OSS_BSS -> SDC : Vendor SOL004/SOL007 package onboarding,\nincluding SOL001
    SDC --> SDC : onboard SOL004/SOL007 package and put the vendor package\ninto the ONBOARD_PACKAGE directory
    ONAP_ETSI_Catalog_Mgr -> SDC : register for SDC notification 
    SDC -> ONAP_ETSI_Catalog_Mgr : send a notification for SDC CSAR with the original vendor CSAR/Zip
    ONAP_ETSI_Catalog_Mgr -> SDC : query the SDC CSAR with the SDC CSAR id
    ONAP_ETSI_Catalog_Mgr --> ONAP_ETSI_Catalog_Mgr : extract SOL004/Sol007 package CSAR/Zip from the SDC CSAR \nand store it
    
    group NS PACKAGE TO SO_NFVO
    	ONAP_ETSI_Catalog_Mgr -> SO_NFVO : send a notification to SO_NFVO
    	SO_NFVO -> ONAP_ETSI_Catalog_Mgr : query for a NS package
    end
    
    group VNF PACKAGE TO SVNFM
    	ONAP_ETSI_Catalog_Mgr -> SOL003_Adapter : send a notification to SOL003_Adapter
    	SOL003_Adapter -> VNFM : send a notification
    	VNFM -> SOL003_Adapter : query for a VNF package
    	SOL003_Adapter -> ONAP_ETSI_Catalog_Mgr : query for a VNF package
    	ONAP_ETSI_Catalog_Mgr -> SOL003_Adapter : send a VNF package 
    	SOL003_Adapter -> VNFM : sends a VNF package
    end
    
    group NS/VNF/PNF PACKAGE TO Ext NFVO
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a notification to SOL005_Adapter
    	SOL005_Adapter -> Ext_NFVO : send a notification
    	Ext_NFVO -> SOL005_Adapter : query for a VNF/PNF/NS package
    	SOL005_Adapter -> ONAP_ETSI_Catalog_Mgr : query for a VNF/PNF/NS package
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a VNF/PNF/NS package 
    	SOL005_Adapter -> Ext_NFVO : sends a VNF/PNF/NS package
    end
    
    group NS/VNF/PNF PACKAGE TO VFC 
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a notification to SOL005_Adapter
    	SOL005_Adapter -> VFC : send a notification
    	VFC -> SOL005_Adapter : query for a VNF/PNF/NS package
    	SOL005_Adapter -> ONAP_ETSI_Catalog_Mgr : query for a VNF/PNF/NS package
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a VNF/PNF/NS package 
    	SOL005_Adapter -> VFC : sends a VNF/PNF/NS package
    end	
    	
    @enduml


    SDC SOL004/SOL007 VNF Package Security

    Among the SOL004/SOL007 VNF package security options, the SDC supports the option2 as depicted below. In the option 2, there are two ways to zip the VNF packages, and SDC supports both.

    SDC validates the VNF packages based on the embedded signature and certificate by leveraging CA.

    • Vendor SOL004/SOL007 VNF Package with certificate and signature is onboarded into SDC
      • ZIP-format VNF package includes CSAR, Signature and Certificate
    • SDC validates VNF package based on the certificate and signature
    • SDC generates SDC internal model plus the vendor SOL004/SOL007 package CSAR and ZIP (with certificate and signature) – the supported format is TBD based on the security requirement

    Image Added


    Package Security

    A VNF package uses the signature and certificate to ensure package integrity and validity. A CSAR file is digitally signed with the VNF provider private key. During the VNF package onboarding to SDC, SDC validates the package and then does the following:

    • Transform SOL001-based VNFD into SDC internal models
    • Store the original Vendor package into the ETSI_PACKAGE directory
      • If the original vendor package is a zip file with signature and certificate, the ETSI_PACKAGE directory will contain the zip file. 
    • VNFM and VF-C will receive the zip-format file.
    • For Frankfurt, the SVNFM and external NFVO will receive a zip-format package with signature and certificate if the original vendor package contains signature and certificate.
      • SVNFM and NFVO will unzip the incoming zip package files and extract CSAR files from the zip package files without validation.
      • After the Frankfurt release, it is assumed that SVNFM and NFVO validate the incoming packages based on signature and certificate.


    SOL001 Mapping to SDC AID DM

    The following diagram depicts SOL001 Mapping to SDC AID DM.

    Gliffy Diagram
    nameSOL001 Mapping to SDC AID DM - Honolulu
    pagePin1


    Current Mapping Support (as of Frankfurt)


    Image Added

    Note: AAI impacts are under discussion.

    Presentation Slide (as a summary)

    The following is a presentation slide that summarizes the Mapping.


    Note:

    The following is being implemented for the Guilin release:

    • SOL007 Design and SOL004 Onboarding
    • ONAP ETSI-Alignment Modeling Hierarchy (partially)
      • NS Mapping
      • NS-Level VirtualLink (between VNFs) Mapping


    The following mapping will be implemented in the Honolulu release:

    • VNF Mapping
    • VDU and VFC Mapping
    • PNF Mapping
    • SOL001 VNFD and SDC AID DM VF Template Mapping
      • VF-Module Deduction from SOL001 VNFD



    View file
    nameSDCEnhancementMapping-2020-9-4.pptx
    height250

    SOL007 Design and SOL004 Onboarding

    • SDC takes the vendor provided package and adds some files or changes files and meta data according to SDC procedure.
    • SDC NS/VNF/PNF Onboarding Procedure and Original Vendor VNF/PNF Package Handling
      • SDC onboarding enhancement was made to the SDC Dublin to support SOL004 PNF/VNF onboarding with .zip and .csar file extensions. We continue to support the current onboarding mechanism with some enhancements.
      • SOL007 NS onboarding (stretch goal for Guilin) will follow the same procedure; i.e., storing the vendor SOL007 NS package into the “ETSI_PACKAGE” directory.
      • SOL007 NS design will allow users to build SOL007 NS package including SOL001 NSD from scratch
      • SDC VSP and Resource csar files have the “ETSI_PACKAGE” directory, which will contain the original vendor VNF/NS/PNF package.
        • The “ONBOARDED_PACKAGE” directory name will be changed to “ETSI_PACKAGE” as a common ETSI directory name. This change is necessary to support design of SOL007 package
        • ONAP-ETSI Catalog Manager will be extracted the ETSI packages from the “ETSI_PACKAGE” directory.
        • The VNFM and external NFVO use the original vendor VNF/NS/PNF packages through ETSI Catalog Manager.
    • SDC provides mapping from ETSI SOL001 NSD/VNFD/PNFD (PNF in the future) to SDC AID DM
      • See the subsequent slides for mapping.
    • Note: ETSI 3.3.1 handling will be discussed separately.


    SDC CSAR for NS structure

    ONAP Service CSAR
      |-- Artifacts
            |-- ETSI_PACKAGE
                  |-- etsi nsd csar
            |-- <VF 1>
                  |-- Deployment
                        |-- ETSI_PACKAGE
                              |-- etsi vnf package
                ...
            |-- <VF n>
                  |-- Deployment
                        |-- ETSI_PACKAGE
                              |-- etsi vnf package

    Mapping of ETSI Information NS-related Elements with TOSCA types

    • For E2E (OSS Service) modeling, use org.openecomp.resource.abstract.nodes.service
      • E2E (OSS Service-Level) is outside of ETSI scope, and it could be ONAP-specific that is orchestrated by ONAP SO
      • The E2E (OSS Service-Level) model references/includes associated NSs
      • For the E2E service level, the org.openecop.resource.abstract.nodes.service type is still used as the base type of the service. SDC will use the ETSI SOL001 NS type and attach the NSs to the E2E (OSS Service).
    • For NS modeling, use tosca.nodes.nfv.NS
      • ONAP SO-NFVO, VFC and external NFVO manage the NS models and packages

    ONAP ETSI-Alignment Modeling Hierarchy

    • The following diagram depicts ONAP ETSI-Alignment Modeling hierarchy.
    • Note: the ONAP VFC model represents the design time VFC, not runtime VFC instance(s).
    • Note: VNF, VFC and PNF node types continue to be discussed for the Honolulu release. 


    Gliffy Diagram
    nameONAP ETSI-Alignment Models - Honolulu
    pagePin1



    Mapping between SOL001 Data Model and SDC AID DM

    The following summarizes the mapping between two models:

    SOL001 Data ModelSDC AID DMCommentsRelease
    N/Aorg.openecomp.resource.abstracts.nodes.servicerepresents OSS Service models
    tosca.nodes.nfv.NStosca.nodes.nfv.NSNS; use of SOL001 as SDC AID DM NSGuilin
    tosca.nodes.nfv.NsVirtualLinktosca.nodes.nfv.NsVirtualLinkNS VirtualLink; use of SOL001 as SDC AID DM VLGuilin
    tosca.nodes.nfv.Vnforg.openecomp.resource.abstract.nodes.ETSI.VNFVNFPlan for Honolulu
    tosca.nodes.nfv.vduorg.openecomp.resource.abstract.nodes.ETSI.VFCVDU and SDC VFCPlan for Honolulu
    tosca.nodes.nfv.VirtualLinkorg.openecomp.resources.vlVNF VLPlan for Honolulu
    tosca.nodes.nfv.VduCporg.openecomp.resources.cpVDU CPPlan for Honolulu
    N/Aorg.openecomp.resource.allottedResourceallotted resource; could not find any from SOL001
    tosca.nodes.nfv.Pnforg.openecomp.resource.abstract.nodes.ETSI.PNFPNFPlan for Honolulu (PNF support is under discussion for Honolulu


    Current SDC Resource Models

    SDC: nfv-types
    SDC: heat-types
    ETSI NFV IESDC Descriptor / SOL001TOSCA TypeDerived fromSDC DescriptorTOSCA TypeDerived from
    NSDnodes.yml / SOL001tosca.nodes.nfv.NStosca.nodes.RootGeneric_Service.yml(question)

    org.openecomp.resource.abstract.nodes.service

    (use it for both E2E (OSS Service) and NS)

    tosca.nodes.Root
    NSD.ymlorg.openecomp.resource.vfc.NSDtosca.nodes.RootN/A

    SapDSOL001tosca.nodes.nfv.Saptosca.nodes.Root


    NsVirtualLinkDescSOL001

    tosca.nodes.nfv.NsVirtualLink

    (there is tosca.nodes.nfv.VnfVirtualLink)

    tosca.nodes.Rootvl.ymlorg.openecomp.resource.vl.VLtosca.nodes.network.Network



    extVl.ymlorg.openecomp.resource.vl.extVLtosca.nodes.Root



    internalVl.ymlorg.openecomp.resource.vl.internalVLtosca.nodes.network.Network
    extZteVL.ymltosca.nodes.nfv.ext.zte.VLtosca.nodes.Root


    Pnfd
    tosca.nodes.nfv.PNFtosca.nodes.RootGeneric_PNF.ymlorg.openecomp.resource.abstract.nodes.PNFtosca.nodes.Root
    VnfdVNF.ymltosca.nodes.nfv.VNFtosca.nodes.RootGeneric_VF.ymlorg.openecomp.resource.abstract.nodes.VFtosca.nodes.Root
    Vnffgd
    tosca.groups.nfv.VNFFGtosca.groups.RootforwardingPath.yml(?)org.openecomp.nodes.ForwardingPathtosca.nodes.Root







    NSD Mapping to SDC AID DM

    Initial Input

    NSD Mapping to SDC AID DM

    A benefit of mapping an onboarded ETSI NS to the internal representation of an ONAP Service is that the ETSI NS can access the standard ONAP runtime functionality implemented or planned for support of ONAP Services.

    SOL001 NSD mapping to/from NS SDC AID DM

    • ONAP previous analysis
      • The SDC NSD node type, org.openecom.resource.vfc.NSD, is modeled as a component of a VF to represent an allotted resource. But, it is not derived from the org.openecomp.resource.vfc.AllottedResource, either. 
      • The SDC NSD might be designed for Volte use case support, and used by the VFC.
      • It is recommended to deprecate the current SDC NSD node type, and to replace with SOL001 tosca.nodes.nfv.NS node type.
    • Solutions
      • SDC generates SOL001 tosca.nodes.nfv.NS node type
      • SDC takes SOL001 NSD with tosca.nodes.nfv.NS node type as is, without mapping; i.e., no mapping is necessary
      • ONAP SO NFVO uses the SOL001 NSD
      • VFC needs to use the SOL001 NSD
      • There could be some impact on VID and ONAP SO Catalog DB for the SOL001 NSD - to be analyzed.
    • Guilin Decisions
      • SDC generates SOL001 tosca.nodes.nfv.NSD node type, and uses it as SDC AID DM.
    SOL001 NS


    SOL001 NS (tosca.nodes.nfv.NS) - Chosen


    SDC NSD

    org.openecomp.resource.vfc.NSD

    namerequiredtype
    namerequiredtype
    descriptor_idyesstring
    nsd_idtruestring
    designeryesstring
    nsd_designertruestring
    versionyesstring
    nsd_versiontruestring
    nameyesstring
    nsd_nametruestring
    invariant_idyesstring
    providing_service_uuidtruestring
    flavor_idyesstring
    providing_service_invariant_uuidtruestring
    ns_profilenotosca.datatypes.nfv.NsProfile
    providing_service_nametruestring

    <tosca.datatypes.nfv.NsProfile>

    Image Added

    SDC TOSCA Repository

    https://gerrit.onap.org/r/gitweb?p=sdc.git;a=tree;f=catalog-be/src/main/resources/import/tosca;h=70fecc1c6de587cd003c38f3e43547a10785e723;hb=refs/heads/master

    Image Added


    SDC nfv-types

    Image Added


    SDC nfv-types/NSD

    SDC TOSCA repository: /catalog-be/src/main/resources/import/tosca/nfv-types/NSD/

    • need to update to tosca_simple_yaml_1.2

    <nodes.yml: org.openecomp.resource.vfc.NSD>

      org.openecomp.resource.vfc.NSD:

        derived_from: tosca.nodes.Root

        description: ECOMP Allotted Resource base type all other allotted resources node types derive from

        properties:

          nsd_id:

            type: string

            required: true

            description: ID of the NSD

          nsd_designer:

            type: string

            required: true

            description: Designer of the NSD

          nsd_version:

            type: string

            required: true

            description: Version of the NSD

          nsd_name:

            type: string

            required: true

            description: Name of the NSD

          providing_service_uuid:

            type: string

            required: true

            description: The depending service uuid in order to map the allotted resource to the specific service version

          providing_service_invariant_uuid:

            type: string

            required: true

            description: The depending service invariant uuid in order to map the allotted resource to the specific service version

          providing_service_name:

            type: string

            required: true

            description: The depending service name in order to map the allotted resource to the specific service version

        requirements:

        - virtualLink:

            capability: tosca.capabilities.network.Linkable

            relationship: tosca.relationships.network.LinksTo

        capabilities:

          virtual_linkable:

            type: tosca.capabilities.network.Linkable

    VNFD Mapping to SDC AID DM

    SOL001 VNF mapping to/from VNF SDC AID DM

    • ONAP previous analysis
      • There is no 1:1 mapping between the SOL001 tosca.nodes.nfv.VNF and org.openecomp.resource.abstract.nodes.VF.
        • SDC VF node types has very few properties.
        • a lot of common properties are added to each node type created by SDC
        • new common properties are mainly about networking and ONAP specific properties
      • There is no clear mapping logic between the current node types
        • SDC creates new data type as ONAP deployment configuration.
      • In ETSI, the descriptor_id is used to reference to the VNF, but in ONAP, the UUID is used to reference to the VNF.
    • Solutions
      • map between SOL001 VNF and SDC AID DM VNF selectively.
        • data in the SOL001 that would be considered Cloud Provider automation data could be remained unmapped
        • Examples of Service Provider data that would need to be mapped in order to drive ONAP automation would include:
          • HPA requirements needed by OOF to determine cloud feasibility
          • Input parameters passed to the Cloud provider
        • ONAP wants to distinguish between the mode/data required to drive ONAP functionality from a Service Provider perspective from any ancillary mode/data required to drive Cloud Provider automation.
      • UUID and invariantUUID must not be modeled as metadata type, per TOSCA YAML because the data provided within metadata, maybe ignored by TOSCA orchestrator and should not affect runtime behavior. 
      • Identify Cloud Provider automation-related data and remove it from the mapping
      • Identify Service Provider data and map it to SDC AID DM
      • ONAP SO NFVO uses SOL001 VNF; other ONAP runtime components could use the new mapped org.openecomp.resource.abstract.nodes.ETSI.VNF

    Current VNF Modeling in ETSI and SDC

    SOL001 VNF (tosca.nodes.nfv.VNF)
    • from SOL001 v3.3.1+4.1.1

    SDC AID DM VNF (org.openecomp.resource.abstract.nodes.VF)
    • from SDC Generic_VF.yml

    org.openecomp.resource.vf.vcpeInfrastructureGwDemoApp (derived from org.openecomp.resource.abstract.nodes.VF)
    namerequiredtype
    namerequiredtype
    namerequiredtype
    descriptor_idyesstring
    nf_function
    string
    nf_function
    string
    descriptor_versionyesstring
    nf_role
    string
    nf_role
    string
    provideryesstring
    nf_type
    string
    nf_type
    string
    product_nameyesstring
    nf_naming_code
    string
    nf_name_code
    string
    software_versionyesstring
    nf_naming
    org.openecomp.datatyhpes.Naming
    nf_naming
    org.openecomp.datatyhpes.Naming
    product_info_nameno string
    availability_zone_max_count
    integer
    availablity_zone_max_count
    integer
    vnfm_infoyeslist of string
    min_instances
    integer
    min_instances
    integer
    localization_languagesnolist of string
    max_instances
    integer
    max_instances
    integer
    default_localization_languageno string
    multi_stage_design
    boolean
    multi_stage_design
    boolean
    configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties
    sdnc_model_name
    string
    vf_module_idno
    modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes
    sdnc_artifact_name
    string
    vcpe_image_nameno
    lcm_operations_configuraionnotosca.datatypes.nfv.VnfLcmOperationsConfiguration
    skip_post_instantiation_configuration

    boolean (default true)

    • constraints : true, false

    public_net_idno
    monitoring_parametersnolist of tosca.dataypes.nfv.VnfMonitoringParameter
    controller_actor

    string (default: SO-REF-DATA)

    • constraints: SO-REF-DATA, CDS, SDNC, APPC

    vgw_name_0no
    flavour_idyesstring




    nexus_artifact_repono
    flavour_descriptionyesstring




    mux_ip_addrno
    vnf_profilenotosca.datatyhpes.nfv.VnfProfile




    vnf_idno

    mciop_profile

    nolist of tosca.datatypes.nfv.MciopProfile




    cpe_public_net_cidrno








    vg_vgmux_tunnel_vnino








    nf_namingno








    multi_stage_designno
    <tosca.datatypes.nfv.VnfProfile>






    nf_naming_codeno
    instantiation_levelnostring




    vgw_private_ip_0no
    min_number_of_instancesyesinteger




    vgw_private_ip_1no
    max_number_of_instancesyesinteger




    vgw_private_ip_2no








    pub_keyno








    install_script_versionno








    onap_private_net_cidrno








    cpe_public_net_idno








    mux_gw_private_net_idno








    dcae_collector_ipno








    dcae_collector_portno








    onap_private_net_idno








    cloud_envno

    Solutions:

    There are two options. For now, we chose the option A. The option B is under discussion.

    Option A (chosen):

    Define a new data type based on the org.openecomp.resource.abstract.nodes.VF with ETSI SOL001 VNF data type attributes.

    • Make the org.openecomp.resource.abstract.nodes.ETSI.VNF a superset of both tosca.nodes.nfv.VNF and org.openecomp.resource.abstract.node.VF
    • During VNF onboarding, SDC copies SOL001 VNF attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VNF
      • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VNF attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
    • SOL001 VNF attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
      • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
      • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
      • For the Honolulu release, it is under consideration
        • to sync up between those modified SOL001 VNF attributes and the vendor ETSI Package attributes 
        • to reflect those modified SOL001 VNF attributes in the orchestration
    • ONAP specific attributes that are inherited from the org.openecomp.resource.abstract.nodes.VF will be filled up by SDC (design time)
      • Those attribute contents will not be mapped back into the SOL001 VNF (reverse mapping). For that case, only the SOL001 VNF corresponding attributes will be copied


    SOL001 VNF (tosca.nodes.nfv.VNF)

    Mapping

    New SDC AID DM VNF (org.openecomp.resource.abstract.nodes.ETSI.VNF)

    derived from org.openecomp.resource.abstract.nodes.VF

    namerequiredtype
    namerequiredtype
    <SOL001 tosca.nodes.nfv.VNF attributes >


    <SOL001 tosca.nodes.nfv.VNF attributes >

    descriptor_idyesstring<-->descriptor_idyesstring
    descriptor_versionyesstring<-->descriptor_versionyesstring
    provideryesstring<-->provideryesstring
    product_nameyesstring<-->product_nameyesstring
    software_versionyesstring<-->software_versionyesstring
    product_info_nameno string<-->product_info_nameno string
    vnfm_infoyeslist of string<-->vnfm_infoyeslist of string
    localization_languagesnolist of string<-->localization_languagesnolist of string
    default_localization_languageno string<-->default_localization_languageno string
    configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties<-->configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties
    modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes<-->modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes
    lcm_operations_configurationnotosca.datatypes.nfv.VnfLcmOperationsConfiguration<-->lcm_operations_configurationnotosca.datatypes.nfv.VnfLcmOperationsConfiguration
    monitoring_parametersnolist of tosca.datatypes.nfv.VnfMonitoringParameter<-->monitoring_parametersnolist of tosca.datatypes.nfv.VnfMonitoringParameter
    flavour_idyesstring<-->flavour_idyesstring
    flavour_descriptionyesstring<-->flavour_descriptionyesstring
    vnf_profilenotosca.datatypes.nfv.VnfProfile<-->vnf_profilenotosca.datatypes.nfv.VnfProfile
    mciop_profilenolist of tosca.datatypes.nfv.MciopProfile<-->mciop_profilenolist of tosca.datatypes.nfv.MciopProfile




    <SDC AID DM VF attributes that are inherited from org.openecomp.resource.abstract.nodes.VF>

    <the followings are being considered>


    nf_functionnostring
    requirementsYes

    nf_rolenostring
    interfacesyestosca.interfaces.nfv.VnfLcm
    nf_typenostring




    nf_naming_codenostring




    nf_namingnoorg.openecomp.datatypes.Naming




    availability_zone_max_countnointeger




    min_instancesnointeger




    max_instancesnointeger




    multi_stage_designnoboolean




    sdnc_model_namenostring




    sdnc_artifact_namenostring




    skip_post_instantiation_configurationno

    boolean (default true)

    • constraints: true, false




    controller_actorno

    string (default: SO-REF-DATA)

    • constraints: SO-REF-DATA, CDS, SDNC, APPC








    Option B:

    Define a new data type based on the tosca.nodes.nfv.VNF with SDC AID DM VNF data type attributes.

    • SDC AID DM VNF data type attributes will be handled as the 'additionalAttributes', which is a map of key, value pairs.
    • Those attribute contents will not be mapped back into the SOL001 VNF (reverse mapping). For that case, only the SOL001 VNF corresponding attributes will be copied.

    a new data type org.openecomp.resource.abstract.nodes.ETSI.VNF that is inherited from SOL001 VNF (tosca.nodes.nfv.VNF)

    namerequiredtype
    <SOL001 tosca.nodes.nfv.VNF attributes >

    descriptor_idyesstring
    descriptor_versionyesstring
    provideryesstring
    product_nameyesstring
    software_versionyesstring
    product_info_nameno string
    vnfm_infoyeslist of string
    localization_languagesnolist of string
    default_localization_languageno string
    configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties
    modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes
    lcm_operations_configuraionnotosca.datatypes.nfv.VnfLcmOperationsConfiguration
    monitoring_parametersnolist of tosca.dataypes.nfv.VnfMonitoringParameter
    flavour_idyesstring
    flavour_descriptionyesstring
    vnf_profilenotosca.datatyhpes.nfv.VnfProfile
    additionalAttriubtes (or nonManoAttributes)nomap of key, value pair


    SOL001 VDU mapping to/from VNF SDC AID DM VFC

    Current SOL001 VDU vs. SDC AID DM VFC

    • no 1:1 mapping
    • note: the SDC AID DM VFC represents design-time VFC (like VDU), not VFC instances in runtime
    SOL001 VDU

    SDC AID DM VFC (org.openecomp.resource.abstract.nodes.VFC)

    NameRequiredTypeNameRequiredType
    nameyesstringnfc_function
    string
    descriptionyesstringhigh_availabilitynostring
    boot_ordernobooleanvm_image_name
    string
    nfvi_constraintsnomap of stringvm_flavor_nameyesstring
    monitoring_parametersnolist of tosca.datatypes.nfv.VnfcMonitoringParameternfc_naming_codenostring
    configurable_propertiesnomap of tosca.datatypes.nfv.VnfcConfigurablePropertiesvm_type_tagnostring
    boot_datanotosca.datatypes.nfv.BootDatanfc_naming

    org.openecomp.datatypes.Naming

    • ONAP_generated_naming: yes: boolean
    • naming_policy: no: string
    • instance_name: no: string
    vdu_profileyestosca.datatypes.nfv.VduProfilemin_instancesnointeger
    sw_image_datanotosca.datatypes.nfv.SwImageData








    Solutions for VDU and VFC mapping

    • Make the org.openecomp.resource.abstract.nodes.ETSI.VFC a superset of both tosca.nodes.nfv.Vdu and org.openecomp.resource.abstract.nodes.VFC
    • Note: the org.openecomp.resource.abstract.nodes.VFC represents design-time VFC, not VFC instances
    • During VNF onboarding, SDC copies SOL001 VDU attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VFC
      • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VDU attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
    • SOL001 VDU attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
      • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
      • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
      • For the Honolulu release, it is under consideration
        • to sync up between those modified SOL001 VDU attributes and the vendor ETSI Package attributes 
        • to reflect those modified SOL001 VDU / VFC attributes in the orchestration

    New SDC AID DM VFC type (org.openecomp.resource.abstract.nodes.ETSI.VFC)

    SOL001 VDU

    Mapping

    org.openecomp.resource.abstract.nodes.ETSI.VFC

    (derived from org.openecomp.resource.abstract.nodes.VFC)



    NameRequiredType<-->NameRequiredType
    nameyesstring<-->nameyesstring
    descriptionyesstring<-->descriptionyesstring
    boot_ordernoboolean<-->boot_ordernoboolean
    nfvi_constraintsnomap of string<-->nfvi_constraintsnomap of string
    monitoring_parametersnolist of tosca.datatypes.nfv.VnfcMonitoringParameter<-->monitoring_parametersnolist of tosca.datatypes.nfv.VnfcMonitoringParameter
    configurable_propertiesnomap of tosca.datatypes.nfv.VnfcConfigurableProperties<-->configurable_propertiesnomap of tosca.datatypes.nfv.VnfcConfigurableProperties
    boot_datanotosca.datatypes.nfv.BootData<-->boot_datanotosca.datatypes.nfv.BootData
    vdu_profileyestosca.datatypes.nfv.VduProfile<-->vdu_profileyestosca.datatypes.nfv.VduProfile
    sw_image_datanotosca.datatypes.nfv.SwImageData<-->sw_image_datanotosca.datatypes.nfv.SwImageData




    <SDC AID DM VFC attributes that are inherited from the org.openecomp.resource.abstract.nodes.VFC>





    nfc_functionnostring




    high_availabilitynostring




    vm_image_namenostring




    vm_flavor_namenostring




    nfc_naming_codenostring




    vm_type_tagnostring




    nfc_namingno

    org.openecomp.datatypes.Naming

    • ONAP_generated_naming: yes: boolean
    • naming_policy: no: string
    • instance_name: no: string




    min_instancesnointeger

    SOL001 3.3.1 VNFD Mapping from/to SDC AID DM VNFD

    SOL001 3.3.1 VNFD Template

    tosca_definitions_version: tosca_simple_yaml_1_3

    description:

    imports:

    data_types:

    node_types:

    topology_template:

        inputs: 

        node_templates: 

            VNF

    substitution_mappings:

        capabilities:

        requirements:

    SDC VFD Template

    tosca_definitions_version: tosca_simple_profile_for_ecomp_1_0

    descriptions:

    imports:

    data_types:

    node_types:

    topology_template:

        inputs:

        node_templates:

             vfc:

                type: org.openecomp.resource.vfc

            extCP:

                type: org.openecomp.resources.cp

        groups:

            VFModule_Base:

                type: org.openecomp.groups.VfModule

            VFModule_Expansion:

                type: org.openecomp.groups.VfModule

        workflows:

        policies:

            anti_collated_az_policy:

    substitution_mappings:

        node_type: org.openecomp.resources.vf.<vf_name>

        capabilities:

        requirements:


    Image Added

    SOL001 VNFD mapping to/from SDC AID DM VFD


    SOL001 VNFD
    SDC AID DM VFD
    NameGrammar
    NameGrammar
    tosca_definitions_version

    string

    (tosca_simple_yaml_1_3)


    tosca_definitions_version

    string

    (tosca_simple_yaml_1_3)

    descriptionstring
    descriptionstring
    metadatamap of <string>
    metadatamap of <string>
    imports

    Single-line grammar

    • <URI_1>
    • <URI_2>

    Multi-line grammar

    • file: <file_URI>
    • repository: <repository name>
    • namespace_uri: <definition_namespace_uri> # deprecated
    • namespace_prefix: <definition_namespace_prefix>

    importsIdentifies the lower level models (VFC, CP, VL, heat)
    data_types

    <data_type_name>:

    derived_from: <existing_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <datatype_description>

    constraints:

    - <type_constraints>

    properties:

    <property_definitions>


    data_types

    <data_type_name>:

    derived_from: <existing_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <datatype_description>

    constraints:

    - <type_constraints>

    properties:

    <property_definitions>

    node_types

    <node_type_name>:

    derived_from: <parent_node_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <node_type_description>

    attributes:

    <attribute_definitions>

    properties:

    <property_definitions>

    requirements:

    - <requirement_definitions>

    capabilities:

    <capability_definitions>

    interfaces:

    <interface_definitions>

    artifacts:

    <artifact_definitions>


    node_types

    <node_type_name>:

    derived_from: <parent_node_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <node_type_description>

    attributes:

    <attribute_definitions>

    properties:

    <property_definitions>

    requirements:

    - <requirement_definitions>

    capabilities:

    <capability_definitions>

    interfaces:

    <interface_definitions>

    artifacts:

    <artifact_definitions>

    topology_template

    topology_template:

    description: <template_description>

    inputs: <input_parameter_list>

    outputs: <output_parameter_list>

    node_templates: <node_template_list>

    relationship_templates: <relationship_template_list>

    groups: <group_definition_list>

    policies:

    - <policy_definition_list>

    workflows: <workflow_list>

    # Optional declaration that exports the Topology Template

    # as an implementation of a Node Type.

    substitution_mappings:

    <substitution_mappings>


    topology_template

    similar, but the following are different

    • node_templates contents
    • groups
    • workflows
    • description
    string
    • description
    string
    • inputs


    • inputs

    <parameter name>:

    type: <parameter_type>

    description: <parameter_description>

    required: <parameter_required>

    default: <parameter_default_value>

    constraints:

    - <parameter_constraints>

    • node_templates

    vnf: tosca.nodes.nfv.Vnf

    vdu: tosca.nodes.nfv.Vdu

    vl: tosca.nodes.nfv.VnfVirtualLink

    vduCp: tosca.nodes.nfv.VduCp

    vduCompute: tosca.nodes.nfv.Vdu.Compute


    • node_templates

    vfc:

        type: org.openecomp.resources.vfc.<>

    vl:

        type: org.openecomp.resources.vl.<>

    cp: 

        type: org.openecomp.resources.cp.<>

    allotted_resource:

        type: org.openecomp.resource.allottedResource.<>





    • workflows
    <workflow name>

    policies

    • scaling aspect

    tosca.datatypes.nfv.ScalingAspect

    • description
    • properties
      • name:
      • description
      • max_scale_level:
      • step_deltas:

    • groups

    list of VF Modules

    VFModule_Base:

        type: org.openecomp.groups.VfModule

    VFModule_Expansion:

        type: org.openecomp.groups.VfModule




    • policies
    optional list of policies
    substitution_mappings

    substitution_mappings
    • node_type


    • node_type

    • capabilities

    <capability_type_name>:

    derived_from: <parent_capability_type_name>

    version: <version_number>

    description: <capability_description>

    properties:

    <property_definitions>

    attributes:

    <attribute_definitions>

    valid_source_types: [ <node type_names> ]


    capabilities

    <capability_type_name>:

    derived_from: <parent_capability_type_name>

    version: <version_number>

    description: <capability_description>

    properties:

    <property_definitions>

    attributes:

    <attribute_definitions>

    valid_source_types: [ <node type_names> ]

    • requirements


    • requirements

    groupnot defined
    group

    <group_type_name>:

    derived_from: <parent_group_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <group_description>

    properties:

    <property_definitions>

    members: [ <list_of_valid_member_types> ]

    requirements:

    - <requirement_definitions>

    capabilities:

    policy

    only the Abstract.SecurityGroupRule policy type is defined

    • not sure if we can map this into SDC AID DM

    policy

    <policy_type_name>:

    derived_from: <parent_policy_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <policy_description>

    properties:

    <property_definitions>

    targets: [ <list_of_valid_target_types> ]

    triggers:

    <list_of_trigger_definitions>

    relationship

    tosca.relationships.nfv.VirtualBindsTo

    tosca.relationships.nfv.AttachesTo


    relationship

    <relationship_type_name>:

    derived_from: <parent_relationship_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <relationship_description>

    properties:

    <property_definitions>

    attributes:

    <attribute_definitions>

    interfaces:

    <interface_definitions>

    valid_target_types: [ <capability_type_names> ]




    annotation_type

    <annotation_type_name>:

    version: <version_number>

    description: <annotation_type_description>

    properties:

    <property_definitions>




    annotation

    <annotation_name>:

    type: <annotation_type>

    properties:

    <property_assignments>






    VF-Module Initial Input 

    The following is a summary of initial input from Gil Bullard (AT&T).

    • Mapping Scope Challenges and Suggestions 

      • ONAP wants to distinguish between the mode/data required to drive ONAP functionality from a Service Provider perspective from any ancillary mode/data required to drive Cloud Provider automation.

        • See the ONAP MultiVim Proposal on the separation of concerns.
      • SDC AID  was created before a separation of concerns was envisioned, thus there are data structures in the SDC AID that would be considered Cloud Provider automation data and that we would likely take out of the SDC AID.
        • Examples of Service Provider data that would need to be mapped in order to drive ONAP automation would include:
          • HPA requirements needed by OOF to determine cloud feasibility
          • Input parameters passed to the Cloud provider
        • There is probably some data in the SOL001 that would be considered Cloud Provider automation data. Any such data could remain unmapped
        • SOL001 content needed to drive ONAP automation (SO, OOF, SDNC, AAI, DCAE, etc.) would need to be mapped
      • The VNFM should not be aware of the VF Module structure, though the current SO-SDNC interactions to get assignment are by VF Module, and the VF Module entity plays prominent in AAI. That means there needs to be two adaptation points as we have discussed:
        • An SDC function to extract VF Module information from the SOL001 VNFD prior to distribution to runtime
        • A VNFM Adapter function to flatten the VF Module structure prior to handoff to the VNFM
    • VF-Module Deduction from SOL001

      • There is an assumption that SDC transforms the vendor provided VNF package into ONAP-compliant one; i.e., deducing VF Modules based on VNFD ScalingAspects and Delta.
      • If SDC supports the transformation in Dublin time-frame, the transformed CSAR will be imported to SO, and SO VNF- and VF-Module-level workflows will manage VNF and VF Module topology towards SDNC with the following changes - Input from Gil Bullard (AT&T)
        • Today the VNF-level workflow has an embedded per-VF Module loop that a) retrieves the SDNC assignments for that VF Module, and then b) sends those VF Module-level assignments down to the VIM (e.g., OpenStack); the loop then moves to repeat "a" with the next VF Module. 
        • The new VNF-level flow will have the following sequences:
          1. an embedded per-VF Module loop that only retrieves the SDNC assignments for each VF Module; because the VIM is hidden from SO's sight, beneath the VNFM Adapter/VNFM.
          2. After finishing the loop, the SO workflows will send a structure  to the VNFM Adapter that includes the aggregate assignments at the VNF level.
          3. The VNFM Adapter aggregates all the VF-Module level assignments and transforms the assignment data into SOL003 API parameters before sending them to SVNFM
            1. The VNFM Adapter would need to be able to parse the VNF-level assignments structure received from SO to obtain the per-VDUconnection point assignments information and any per-VDU parameter information (e.g., hostnames)
            2. In doing so, the VNFM Adapter would need to know to ignore the VF Module groupings of these assignments
            3. Further know how to map the ONAP data structure and parameter names into the ETSI (e.g., VM=VDU, VNFC=VNFC, vNIC=vNIC, etc.). Note that the above assumes that in ONAP, as in ETSI, there will be a one-to-one correspondence between VM/VDU and VNFC.

      • Assumptions for deducing VF-Module from SOL001 (Gil Bullard's input)

        • SOL001 concept of Aspect+ScalingDelta combination is one to one with the ONAP concept of VF Module.
        • SOL001 concept of VDU is one to one with the ONAP concept of A&AI vServer
        • SOL001 concept of a connection point associated with a VDU corresponds to the ONAP concept of the same name, as does the understanding of the meaning of “internal” versus “external” connection point.
        • ONAP-compliant SOL001 VNF Vendors will be obliged to name their HEAT files using a naming convention that encodes the SOL001 Aspect+ScalingDelta names
        • ONAP-compliant SOL001 VNF Vendors will be obliged to name their SOL001 Aspect+ScalingDelta parameters using a naming convention that readily maps to the corresponding HEAT properties.  
        • In addition, if AT&T has already deployed such a vendor’s VNF into its network, the HEAT naming will remain invariant, and (at least) the (AT&T version of that) SOL001 be written to match it.
      • What to do
        • ONAP will be extended to incorporate the constructs of Aspect and Scaling Level.  This includes SDC’s, SOs, and A&AI’s modeling of these constructs and A&AI's ability to capture and SO’s ability to set/update the "current scaling level" of a VNF for a given Aspect. 
        • If ETSI in their SOL001 VNFD had defined a "ScalingDelta" in a straightforward manner, i.e., in terms of the VNFCs that comprise it, then it would be very easy to extract VF Module information from the VNFD.  (I would like to see ETSI define "ScalingDelta" in this manner, as opposed to the current way they do so. )  However, given that they did not, ONAP SDC would need to be extended to derive the VF Module “structure” from the SOL001 document through the algorithm below.  “Structure” in this case includes the VDU topology, connection points and associated parameters.  This algorithm will:
        • Determine the set of Aspects and corresponding VDUs and associated ScalingDeltas (step_deltas) from the SOL001.
        • Determine the set of ScalingLevels associated with each Aspect and the ScalingDeltas associated with each.
        • Translate the VDU-centric representation of ScalingDeltas (step_deltas) as per SOL001 to come up with a ScalingDelta-centric representation that captures the number and type of VDUs associated with that ScalingDelta across the various VDU types.
        • Create a VF Module object that corresponds to each ScalingDelta-centric representation of a ScalingDelta calculated above.
        • Fill in the details of the VF Module object based on the SOL001 data to represent the VDU connection points, associated Networks (internal or external), and associated Parameters.
        • Determine if there is an artifact in the SOL004 package that is a HOT YAML whose file name corresponds (through a VNF vendor obligatory naming convention) to the Aspect+ScalingDelta from which this VF Module object was derived.  If so, associate that HOT file with the VF Module.
        • Name the VF Module based on a naming convention to capture the Aspect+ScalingDelta names
        • Determine and capture the mapping from each Aspect + ScalingLevel model for the VNF to the corresponding VF Module.
        • Given a desired state Aspect+ScalingLevel, will be able to calculate (from the SDC distributed mapping of Aspect+ScalingLevel to VF Module along with the current Scaling Level for this Aspect as per A&AI) the (ordered set of) VF Module(s) needed to take that VNF from the “current scaling level” to the desired level for that Aspect.
        • Note:  As an aside, SDC enhancements are being discussed. It is not clear if the SDC changes will be available in the Dublin time frame. some “stubbing off” SDC with a simulator could be suggested to at least prove in the run-time aspects of the solution.

    Solution:

    • SDC deduces the VF-Module from the SOL001 VNFD Policies>scaling_aspects>properties>aspects
    • Additional VF-Module attributes are deduced as the following table
    • SOL003 Adapter may need to transform the VF-Module back to the SOL001 VNFD policies for the scaling and healing requests from VNFM(s) – not part of Guilin


    Gliffy Diagram
    nameONAP ETSI-Alignment VF-Module Mapping - Honolulu
    pagePin1

    org.openecomp.group.VfModule Attribute and SOL001 VNF Policies deduction

    NameRequiredTypeSOL001 VNFD Policies
    vf_module_typeyes

    string

    valid values: Base, Expansion

    Base

    default: Base

    vf_module_labelyesstringaspects: <A>
    min_vf_module_instancesyesinteger

    initial_delta: 0

    max_vf_module_instancesnointegermax_scale_level
    initial_countyesinteger

    initial_data:

      number_of_instances

    vf_module_descriptionnostring

    aspects: 

      description

    volume_groupyesBooleandefault to false
    group_namingnoorg.openecomp.datatypes.Namingoptional field, leave it empty

    VirtualLink Mapping to SDC AID DM

    SOL001 VL mapping to/from VL SDC AID DM

    • ONAP previous analysis
      • Each vendor/operator defined their own VL node types (e.g., tosca.nodes.nfv.ext.zte.VL)
      • The vendor/operator-specific node types have no direct 1:1 mapping to tosca.nodes.nfv.NsVirtualLink
    • Solutions
      • Deprecate vendor/operator-specific VLs
      • Use SOL001 tosca.nodes.nfv.NsVirtualLink
      • ONAP SO NFVO uses the SOL001 tosca.nodes.nfv.NsVirtualLink
      • VFC needs to adapt SOL001 tosca.nodes.nfv.NsVirtualLink
    SOL001 VL

    <tosca.nodes.nfv.NsVirtualLink>

    Image Added

    Image Added

    <tosca.datatypes.nfv.NsVlProfile>

    Image Added

    <tosca.datatypes.nfv.ConnectivityType>

    Image Added

    <tosca.datatypes.nfv.LinkBitrateRequirements>

    Image Added

    <tosca.datatypes.nfv.NsVirtualLinkQos>

    Image Added

    <tosca.datatypes.nfv.ServiceAvailability>

    Image Added


    Current SDC VL

    <tosca.nodes.nfv.ext.zte.VL>

    tosca.nodes.nfv.ext.zte.VL

    namerequiredtype
    segmentation_idfalsestring
    network_namefalsestring
    is_predefinedfalseboolean
    mtufalseinteger
    dns_nameserversfalselist
    physical_networkfalsestring
    dhcp_enabledfalseboolean
    network_idfalsestring
    host_routesfalselist
    ip_versionfalseinteger
    vendorfalsestring
    namefalsestring
    start_ipfalsestring
    vlan_transparentfalseboolean
    cidrfalsestring
    gateway_ipfalsestring
    network_typefalsestring
    end_ipfalsestring
    location_infofalsetosca.datatypes.nfv.ext.LocationInfo


      tosca.nodes.nfv.ext.zte.VL:

        derived_from: tosca.nodes.Root

        description: Ext ZTE VL

        properties:

          segmentation_id:

            type: string

            required: false

          network_name:

            type: string

            required: false

          is_predefined:

            type: boolean

            required: false

          mtu:

            type: integer

            required: false

          dns_nameservers:

            type: list

            required: false

            entry_schema:

              type: string

          physical_network:

            type: string

            required: false

          dhcp_enabled:

            type: boolean

            required: false

          network_id:

            type: string

            required: false

          host_routes:

            type: list

            required: false

            entry_schema:

              type: tosca.datatypes.nfv.ext.HostRouteInfo

          ip_version:

            type: integer

            required: false

          vendor:

            type: string

            required: false

          name:

            type: string

            required: false

          start_ip:

            type: string

            required: false

          vlan_transparent:

            type: boolean

            required: false

          cidr:

            type: string

            required: false

          gateway_ip:

            type: string

            required: false

          network_type:

            type: string

            required: false

          end_ip:

            type: string

            required: false

          location_info:

            type: tosca.datatypes.nfv.ext.LocationInfo

            required: false

        capabilities:

          virtual_linkable:

            type: tosca.capabilities.nfv.VirtualLinkable

            occurrences:

            - 1

            - UNBOUNDED

            valid_source_types: [

              ]


    PNF Mapping to SDC AID DM

    SOL001 PNF mapping to/from VL SDC AID DM


    Image Added


    Image Added

    Image Added




    Table of Contents

    Requirements & Use Cases

    The following requirements are defined in the Honolulu release - functional requirements proposed list.

    Onboard ETSI SOL004 compliant VNF packages

    • Executive Summary- Enable a vendor provided ETSI SOL004 v3.3.1 compliant VNF package including an ETSI SOL001 VNF Descriptor to  be onboarded into ONAP for composition into an ONAP Network Service
      • Support for onboarding ETSI v3.3.1SOL004 CSAR Packages with minimum CNF enhancements from 4.1.1
      • Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1
      • Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1  into SDC AID Data Model
    • Business Impact- Enables operators and service providers to use same ETSI compliant VNF packages with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators that are currently using ETSI packages to deploy VNFs
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard VNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

    Design ETSI SOL007 compliant Network Service Descriptor packages

    • Executive Summary- Design, catalog and distribute  an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) for deployment using an ETSI compliant NFVO.
      • Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
      • Composed of one or more VNFs and the Virtual Links that connect them.
      • Support for using VNFs with CNF enhancements
    • Business Impact- Enables operators and service providers to use internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators and service providers that are developing and deploying ETSI compatible Network Services
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.


    Design Nested/Hierarchical ETSI SOL001 v3.3.1 Network Service Descriptor package (for Istanbul release)

    • Executive Summary- Design an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) that includes references to other Network Service Descriptors for deployment using an ETSI compliant NFVO.
      • Composed of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them.
      • Support for using VNFs with CNF enhancements
    • Business Impact- Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators and service providers that are developing ETSI compatible Network Services especially for 5G Slicing where each Slice Subnet is associated with a Network Service 
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.


    Onboard Prototype Package based on ETSI IFA011 v4.1.1 supporting containerized VNF (CNF) packages (for Istanbul release)

    • Executive Summary- Enable a vendor provided ETSI SOL004 compliant containerized VNF package including an ETSI SOL001 VNF Descriptor with container enhancements to  be onboarded into ONAP for composition into an ETSI Network Service
      • Support for onboarding Prototype v4.1.1 CSAR Packages
      • Support for onboarding Prototype v4.1.1 VNF Descriptor
      • Support for mapping of Prototype v4.1.1 VNF Descriptor into SDC AID Data Model
      • Support for using a Prototype v4.1.1 VNF in an ETSI Network Service
    • Business Impact- Enables operators and service providers to use same ETSI aligned containerized VNF (CNF) packages with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators that are currently using ETSI packages to deploy containerized VNFs (CNFs)
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard containerized VNF (CNF)  packaging.  Reduction in capital expense from vendors using a single packaging methodology.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.


    Feature Descriptions

    Feature

    Description







    Epic and User Story

    Epic

    User Story

    Task

    Description

    Honolulu Plan?

    JIRA

    Size

    (S/M/L/XL)

    Priority

    Support Onboard ETSI 3.3.1 SOL004 compliant VNF / CNF packages



    • Executive Summary- Enable a vendor provided ETSI SOL004 v3.3.1 compliant VNF package including an ETSI SOL001 VNF / CNF Descriptor to  be onboarded into ONAP for composition into an ONAP Network Service
      • Support for onboarding ETSI v3.3.1SOL004 VNF CSAR Packages with minimum CNF enhancements from 4.1.1
      • Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1
      • Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements into SDC AID Data Model
    • Business Impact- Enables operators and service providers to use same ETSI compliant VNF packages with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators that are currently using ETSI packages to deploy VNFs
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard VNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2610

    4 weeks for one designerHigh

    Support for onboarding ETSI v3.3.1 SOL004 VNF CSAR Packages with minimum CNF enhancements from 4.1.1


    • SDC users need to onboard ETSI v3.3.1 SOL004 VNF CSAR Packages with minimum CNF enhancements from 4.1.1
      • Manifest File (e.g., MainServiceTemplate.mf): a new non-MANO artifact set identifier "onap_cnf_helm" - This would identify the "top-level" helm chart that can be used to deploy the CNF directly, i.e., without utilizing the LCM info the VNF Descriptor
        • e.g., onap_cnf_helm:

                                source: Artifacts/helm/helm_charts.yaml

    • note: to support the direct path, the VNFD could be optional (under discussion with ETSI NFV and ONAP Direct Path team)
    • SDC users should be also able to onboard the existing ETSI v2.6.1 SOL004 CSAR packages - one level backward compatibility needs to be supported
    • For backward compatibility support, SDC needs to check the package manifest file and metadata such as "compatible_specifcation_versions".
      • If it is 3.3.1+, SDC needs to follow a new onboarding path for the ETSI 3.3.1 version package.
      • If the version is prior to 3.3.1, SDC follows the existing 2.x onboarding path. 
    • The package version and its descriptor version should match.
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3337


    High


    Determine the onboarding path based on manifest metadata
    • Determine the onboarding path based on the manifest file and metadata "compatible_specification_versions"
    • If the version is prior to 3.3.1, invoke the existing 2.x SOL004 VNF package onboarding path
    • Otherwise, invoke a new SOL004 VNF package onboarding path
    • SDC users should be able to choose the onboarding package version from SDC UI Category selection...to be discussed...



    High


    Create a new onboarding path for SOL004  3.3.1 VNF package
    • Create a new onboarding path for 3.3.1
      • Check the CSAR structure differences between 2.7.1 and 3.3.1
    • Handle additional artifacts for CNF, such as Helm Charts, Container Image file(s)
      • For the Non-ETSI CNF, handle an optional VNFD case
      • Handle container image files with the limited file size (up to 2MB); larger files will not be handled in this release; support of larger files requires huge effort (AMDOC's help is needed)



    High

    Support the SOL001 vnf_profile properties

    SDC needs to support the SOL001 vnf_profile (toaca.databypes.nfv.VnfProfile) properties

    Image Added


    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3380


    High

















    Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptors 


    • SDC users need to onboard ETSI v3.3.1 SOL001 VNF Descriptors
    • SDC users should be also able to onboard the existing ETSI v2.6.1/v2.5.1 SOL001 VNF Descriptors - one level backward compatibility needs to be supported
    • For backward compatibility support, SDC needs to recognize the properties changes (e.g., use the VNF package version) for the Version indication. 
    • SDC uses a separate onboarding process depending on the version.
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2611



    High


    Determine the onboarding path based on metadata
    • Determine the onboarding path based on the VNFD package version "compatible_specifcation_versions"
    • If the version is v2.6.1/v2.5.1, invoke the existing SOL001 VNF onboarding
    • Otherwise, invoke a new SOL001 VNFD onboarding path






    Create a new onboarding path for SOL001 VNFD 3.3.1
    • Create a new onboarding path for 3.3.1 VNFD
      • Check the VNFD differences between 2.5.1/2.7.1 and 3.3.1
      • Share the common/base SDC data type and node type to represent both 3.3.1 and 2.x; i.e., merge two structures for minimum impact
      • Note: This is the current SDC limitation without versioning, and it will be handled separately in the future.













    Support for onboarding ETSI v3.3.1 SOL001 VNF Descriptors with minimum CNF enhancements from 4.1.1

    SDC users need to onboard ETSI 3.3.1 with minimum CNF enhancements from 4.1.1

    1. Add tosca.nodes.nfv.VDU.OsContainer type to vnfd_types - aligned with the IFA011 v4.1.1 specification
    2. Add mciopProfile type vnfd_types - aligned with the IFA011 v4.1.1 specification
    3. Allow OsContainerDesc to be in the VDU section - only one of tosca.nodes.nfv.VDU.osContainer or  tosca.nodes.nfv.VDU.compute in a VNFD
    4. Allow mciopProfile in VNF Descriptor


    • SDC needs to support new CNF properties / classes / schema / data models based on defined Information Models
    • SDC may use a separate onboarding process for CNF
    • No backward compatibility for CNF support is necessary
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3351


    High


    Support minimum CNF enhancements from 4.1.1

    Support the vnfd_type with CNF attributes from 4.1.1:

    1. Add tosca.nodes.nfv.VDU.OsContainer type to vnfd_types - aligned with the IFA011 v4.1.1 specification
    2. Add mciopProfile type vnfd_types - aligned with the IFA011 v4.1.1 specification
    3. Allow OsContainerDesc to be in the VDU section - only one of tosca.nodes.nfv.VDU.osContainer or  tosca.nodes.nfv.VDU.compute in a VNFD
    4. Allow mciopProfile in VNF Descriptor






    Extend the 3.3.1 VNFD onboarding path for CNF attributes Extend the 3.3.1 VNFD onboarding logic for CNF attribute handling 



    ===========









    Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor into SDC AID Data Model


    Once SDC onboards an ETSI v3.3.1 SOL001 VNF Descriptor, SDC needs to map the ETSI v3.3.1 SOL001 VNF Descriptor into SDC AID Data Model

    • No backward compatibility ; SDC supports only ETSI 3.3.1 VNFD mapping to SDC AID DM

    VNF Mapping:

    • Define a new data type based on the org.openecomp.resource.abstract.nodes.VF with ETSI SOL001 VNF data type attributes.

      • Make the org.openecomp.resource.abstract.nodes.ETSI.VNF a superset of both tosca.nodes.nfv.VNF and org.openecomp.resource.abstract.node.VF
      • During VNF onboarding, SDC copies SOL001 VNF attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VNF
        • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VNF attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
      • SOL001 VNF attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
        • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
        • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
        • For the Honolulu release, it is under consideration
          • to sync up between those modified SOL001 VNF attributes and the vendor ETSI Package attributes 
          • to reflect those modified SOL001 VNF attributes in the orchestration
      • ONAP specific attributes that are inherited from the org.openecomp.resource.abstract.nodes.VF will be filled up by SDC (design time)
        • Those attribute contents will not be mapped back into the SOL001 VNF (reverse mapping). For that case, only the SOL001 VNF corresponding attributes will be copied

    VDU Mapping:

    • Make the org.openecomp.resource.abstract.nodes.ETSI.VFC a superset of both tosca.nodes.nfv.Vdu and org.openecomp.resource.abstract.nodes.VFC
    • Note: the org.openecomp.resource.abstract.nodes.VFC represents design-time VFC, not VFC instances
    • During VNF onboarding, SDC copies SOL001 VDU attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VFC
      • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VDU attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
    • SOL001 VDU attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
      • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
      • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
      • For the Honolulu release, it is under consideration
        • to sync up between those modified SOL001 VDU attributes and the vendor ETSI Package attributes 
        • to reflect those modified SOL001 VDU / VFC attributes in the orchestration

    VF-Module Mapping (Stretch goal)

    • SDC deduces the VF-Module from the SOL001 VNFD Policies>scaling_aspects>properties>aspects
    • Additional VF-Module attributes are deduced as the following table
    • SOL003 Adapter may need to transform the VF-Module back to the SOL001 VNFD policies for the scaling and healing requests from VNFM(s)

    SDC supports Interface mapping to SDC AID DM for creating Service and connect VNF to external networking, etc.

    Capacity and requirement mapping won't be necessary in this release

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2617


    Medium

    (VF-Module mapping is a stretch goal)



    Map VNF data type to SDC AID DM VFMap VNF data type to SDC AID DM VF





    Map VDU data type to SDC AID DM VFCMap VDU data type to SDC AID DM VFC





    Deduce VF-Module from VNFD PoliciesDeduce VF-Module from VNFD Policies





    Map VNF Interfaces to SDC AID DM Map VNF Interfaces to SDC AID DM 




























    Support for mapping of ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1 into SDC AID Data Model

    Once SDC onboards an ETSI v3.3.1 SOL001 VNF Descriptor with CNF enhancements, SDC needs to map the ETSI v3.3.1 SOL001 VNF Descriptor with minimum CNF enhancements from 4.1.1 into SDC AID Data Model

    • SDC supports VDU mapping for osContainer to SDC AID DM
      • create a new NF type for CNF
    • SDC supports virtualCPD, MCIOP ...
    • note: need to discuss with the non-ETSI team for compatibility
      • try to have unified modeling between non-ETSI and ETS-based CNF modeling... To discuss with SO team...
      • Thinking about optional VNFD. If there is no VNFD, no mapping is necessary
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3352


    medium


    Map VNF with CNF properties to SDC AID DM






    Map VDU with CNF properties to SDC AID DM






    Map virtualCPD to SDC AID DM






    Map MCIOP to SDC AID DM













    Support for editing ETSI v3.3.1 SOL001 VNF / CNF Descriptor

    SDC users should be able to edit onboarded ETSI v3.3.1 SOL001 VNF Descriptors

    • no backward compatibility is necessary
    • SDC supports value changes and also adding properties

    Note: should we reflect the changes to original vendor packages in ETSI_PACKAGE directory??? need to think about impact... SDC generates a new digital signature for the package and distributes it to ETSI Catalog Manager.

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2881


    medium


    Enhance SDC UI for editing SOL001 VNF / CNF descriptor propertiesEnhance SDC UI for editing SOL001 VNF / CNF descriptor properties



























    Design ETSI SOL007 compliant Network Service Descriptor packages



    • Executive Summary- Design, catalog and distribute  an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) for deployment using an ETSI compliant NFVO.
      • Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO
      • Compose of one or more VNFs and the Virtual Links that connect them.
      • Support for using VNFs with CNF enhancements
    • Business Impact- Enables operators and service providers to use internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators and service providers that are developing and deploying ETSI compatible Network Services
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

    Yes


    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3338

    1 week for one designerHigh

    Support for designing an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO


    SDC users need to design an ETSI SOL001 v3.3.1 compliant Network Service that can be deployed with an ETSI compliant NFVO

    • SDC needs to support backward compatibility for 2.5.1/2.6.1?
    • SDC users need to create NS 
    • SDC users need to generate SOL007 NS package
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3339


    High


    Enhance SDC design for creating v3.3.1 NSEnhance SDC design for creating v3.3.1 NS





    Generate v3.3.1 SOL007 NS package

    Generate v3.3.1 SOL007 NS package

    • No backward compatibility is necessary





















    Compose of one or more VNFs and the Virtual Links that connect them


    SDC users need to compose one or more VNFs and the Virtual Links that connect them in NS

    • The NSD and its referenced VNF / CNF versions should be matched. 
    • During SDC references VNFs, SDC needs to validate the version of VNFs / CNF, based on the VNF / CNF descriptor metadata (version indicator in the metadata)
      • After 2.6.1, there is a version indicator in the metadata

    Note:  cover the VNF version validation... SAP descriptor has a version...


    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3340


    High


    Enhance SDC to compose v3.3.1 VNFs and VLs for v3.3.1 NS

    Enhance SDC to allow compose v3.3.1 VNFs and VLs for v3.3.1 NS







    Validate NSD and VNFD version match

    Validate NSD and VNFD version match

    • The versions of NS and sub models should be matched  













    Support for compose VNFs with CNF enhancements


    SDC users need to compose VNFs with CNF enhancements

    note: virtual CPD ... version... TBD

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3341


    High


    Enhance SDC to compose v3.3.1 VNFs with CNF enhancementsEnhance SDC to compose v3.3.1 VNFs with CNF enhancements












    Support for mapping of ETSI v3.3.1 SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

    SDC needs to support for mapping of ETSI SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

    • map SOL001 NSD to SDC AID DM
    • support ETSI NS and NsVirtualLink only.. maybe more... TBD
    • support Interfaces

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3342


    Medium


    Map v3.3.1 NSD to SDC AID DMMap v3.3.1 NSD to SDC AID DM





    Suport InterfacesSuport NS Interfaces to SDC AID DM












    Support design of Service templates, leveraging NSDs

    SDC users need to support design of Service templates, leveraging NSDs

    ONAP service references NSDs...

    Yes


    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2882


    Medium


    Compose Service Templates referencing NSDsCompose Service Templates referencing NSDs



















    Design Nested/Hierarchical ETSI SOL001 v3.3.1 Network Service Descriptor package



    • Executive Summary- Design an ETSI SOL007 v3.3.1 compliant Network Service Descriptor package including an ETSI v3.3.1 SOL001 Network Service Descriptor (NSD) that includes references to other Network Service Descriptors for deployment using an ETSI compliant NFVO.
      • Composed of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them.
      • Support for using VNFs with CNF enhancements
    • Business Impact- Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators and service providers that are developing ETSI compatible Network Services especially for 5G Slicing where each Slice Subnet is associated with a Network Service 
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard NSD packaging.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.
    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2803


    N/A

    Compose of zero or more VNFs and one or more nested Network Services and the Virtual Links that connect them
    SDC users need to compose zero or more VNFs and one or more nested Network Services and the Virtual Links that connect themNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3343


    N/A

    Support for using VNFs with CNF enhancements


    Support design of Service templates, leveraging NSDsNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3344


    N/A








    Onboard Prototype Package based on ETSI IFA011 v4.1.1 supporting containerized VNF (CNF) packages



    • Executive Summary- Enable a vendor provided ETSI SOL004 compliant containerized VNF package including an ETSI SOL001 VNF Descriptor with container enhancements to  be onboarded into ONAP for composition into an ETSI Network Service
      • Support for onboarding Prototype v4.1.1 CSAR Packages
      • Support for onboarding Prototype v4.1.1 VNF Descriptor
      • Support for mapping of Prototype v4.1.1 VNF Descriptor into SDC AID Data Model
      • Support for using a Prototype v4.1.1 VNF in an ETSI Network Service
    • Business Impact- Enables operators and service providers to use same ETSI aligned containerized VNF (CNF) packages with ONAP and existing NFVO. Industry compatibility.
    • Business Markets- All operators that are currently using ETSI packages to deploy containerized VNFs (CNFs)
    • Funding/Financial Impacts- Reduction in operations expense from using industry standard containerized VNF (CNF)  packaging.  Reduction in capital expense from vendors using a single packaging methodology.
    • Organization Mgmt, Sales Strategies-There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.
    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3353


    N/A

    Support for onboarding Prototype v4.1.1 CSAR Packages


    SDC needs to support onboarding prototype v4.1.1 CSAR packages with CNF artifacts and metadataNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3354




    Support for onboarding Prototype v4.1.1 VNF/CNF Descriptor


    SDC needs to support onboarding prototype v4.1.1 VNF/CNF descriptorNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3355




    Support for mapping of Prototype v4.1.1 VNF/CNF Descriptor into SDC AID Data Model


    SDC needs to support mapping of prototype v4.1.1 VNF/CNF Descriptor into SDC AID Data ModelNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3356




    Support for using a Prototype v4.1.1 VNF in an ETSI Network Service


    SDC needs to support for a prototype v4.1.1 VNF/CNF in an ETSI network ServiceNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-3357



    Onboard ETSI 3.3.1 SOL004 compliant PNF packages

    Executive Summary - Enable a vendor provided ETSI 3.3.1 SOL004 compliant PNF package including an ETSI SOL001 PNF Descriptor to  be onboarded into ONAP for composition into an ONAP Service

    Business Impact - Enables operators and service providers to use same ETSI compliant PNF packages with ONAP and existing NFVO. Industry compatibility.

    Business Markets - All operators that are currently using ETSI packages to deploy PNFs

    Funding/Financial Impacts - Reduction in operations expense from using industry standard PNF packaging.  Reduction in capital expense from vendors using a single packaging methodology.

    Organization Mgmt, Sales Strategies -There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider. 

    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2805


    N/A

    SDC supports onboarding of the 3.3.1 SOL004 PNF package includes SOL001 PNFD


    • SDC user needs to onboard ETSI 3.3.1 SOL004 PNF packages 
    • SDC needs to update onboarding procedure for v3.3.1
    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2837



    N/A

    Support for mapping of ETSI v3.3.1 SOL001 PNF Descriptor into SDC AID Data Model



    SDC needs to support 3.3.1 SOL001 PNFD Mapping to SDC AID DMNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2836


    N/A

    Onboard ETSI SOL007 compliant Network Service Descriptor packages



    Executive Summary - Onboard an ETSI SOL007 v3.3.1 compliant (Link to ETSI SOL007 v3.3.1)  Network Service Descriptor package including an ETSI version 3.3.1 SOL001 Network Service Descriptor (NSD) to  be onboarded into ONAP for composition into an ONAP Service or deployment using an ETSI compliant NFVO.

    • Support for Cataloging and Preserving the original SOL007 package

    • Support for mapping of ETSI v3.3.1 SOL001 Network Service Descriptor in the SOL007 package into SDC AID Data Model

    • Support for deploying a service that contains an ETSI SOL001 v3.3.1 compliant Network Service using VF-C as the NFVO

    • Support for deploying a service that contains an ETSI SOL001 v3.3.1 compliant Network Service using an external NFVO

    Business Impact - Enables operators and service providers to use vendor provided and internally designed Network Service Descriptors with ONAP and existing NFVO. Industry compatibility.

    Business Markets - All operators and service providers that are developing ETSI compatible Network Services

    Funding/Financial Impacts - Reduction in operations expense from using industry standard NSD packaging.

    Organization Mgmt, Sales Strategies -There is no additional organizational management or sales strategies for this requirement outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider. 

    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2801


    N/A

    Support onboarding for Cataloging and Preserving the original SOL007 package

    SDC users need to support onboarding for Cataloging and Preserving the original SOL007 package (Link to ETSI SOL001 v3.3.1)

    No

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2806


    N/A

    Support for onboarding of the SOL007 v3.3.1 compliant NSD package including SOL001 NSD that includes references to other NSDs for composition into ONAP Service
    SDC users need to support for onboarding of the SOL007 v3.3.1 compliant NSD package including SOL001 NSD that includes references to other NSDs for composition into ONAP ServiceNo

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2811


    N/A








    Support ETSI Package Security and validation

    ONAP supports vendor ETSI 3.3.1Package Security and validation

    • If the vendor package includes signature and certificate, ONAP supports the package security
    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2613

    4 weeks for one designerHigh

    • SOL004 VNF/PNF Package security will be supported by SDC, based on the ETSI 3.3.1 package signature and certificate

    ONAP SDC supports ETSI 3.3.1 SOL004 VNF/PNF Package security

    Yes



    • SOL007 NS Package security will be supported by SDC, based on the ETSI 3.3.1 package signature and certificate

    ONAP SDC supports ETSI 3.3.1 SOL007 NS Package security 

    Yes

    Jira
    serverONAP JIRA
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keySDC-2614


    High
    Support of ETSI Package Validation

    VNF SDK will support ETSI package validation for VNF and NSTBD

    N/A

    VNF SDK will support ETSI VNF package pre-onboarding for validation
    VNF SDK will support ETSI VNF package pre-onboarding for validationTBD

    N/A

    VNF SDK will support ETSI NS package pre-onboarding for validation
    VNF SDK will support ETSI NS package pre-onboarding for validationTBD

    N/A

    ETSI Package Management Architecture

    The diagram depicts the package management architecture. 

    1. SDC supports SOL004 VNF/PNF package onboarding, and stores the original vendor VNF/PNF package inside the SDC package
      1. SOL004 package includes SOL001 VNFD/PNFD
      2. PNF onboarding has been tested
    2. SDC will support SOL007 NS package onboarding and store the original vendor NS package inside the SDC package
      1. NS onboarding will be supported
      2. NS onboarding will be tested
    3. SDC supports VNF/PNF package management interfaces from OSS/BSS via SOL005 Package Management APIs (TBD)
    4. SO supports NS package management interfaces from OSS via SOL005 Package Management APIs (TBD)
    5. ETSI Catalog Manager stores SOL004/SOL007 Packages for other ONAP runtime components such as SO, SOL003/SOL005 Adapters, VFC and others
      1. ONAP-ETSI Catalog Manager will store SOL004 packages for VNF and PNF
      2. ONAP-ETSI Catalog Manager will store SOL007 packages for NS
    6. SOL003 VNFM Adapter provides VNFMs Query/Fetch VNF packages/contents/artifacts, Reading VNFD and subscription/notification services
    7. SOL005 Adapter provides NS/PNF/VNF package management to VF-C/External NFVO by leveraging SOL005 package management APIs


    Onboarding

    SDC NS/VNF/PNF/NS Onboarding and Distribution

    This section describes SDC VNF/PNF onboarding and the End-to-End package distribution from SDC to SVNFM/external NFVOs.

    SDC takes the vendor provided package and adds some files or changes files and meta data according to SDC procedure.


    SDC NS/VNF/PNF Onboarding Procedure and Original Vendor VNF/PNF Package Handling

    • Enhancement (Ericsson contribution) was made to the SDC Dublin to support SOL004 PNF/VNF onboarding with .zip and .csar file extensions.
      • SDC VSP and Resource csar files have the ETSI_PACKAGE, which contains the original vendor VNF package.
        • The VNFM and external NFVO use the original vendor VNF/NS packages.
        • ONAP-ETSI Catalog Manager will be changed for the location of the original vendor package.
      • SOL007 NS onboarding will follow the same procedure; i.e., storing the vendor SOL007 NS package into the ETSI_PACKAGE directory.
    • In Guilin, the ONBOARDED_PACKAGE directory is changed to the ETSI_PACKAGE directory.

    Image Added

    1. At onboarding, SDC checks the file extension and performs the following procedures
      1. If the file is .zip, SDC unzips
        1. If it has .cert & .cms, it is a package with security and security validation will be performed.
        2. If it does not include .cert & .cms, it is an existing Heat template onboarding, and SDC follows the Heat template onboarding procedure
    2. If the file is .csar, it is a package without security.
    3. Next, SDC will check the TOSCA.meta file.
    4. If it contains SOL004v2.x.1 keywords, the package will be handled as SOL004v2.x.1. In the Guilin release, v3.3.1 will be supported.
    5. Otherwise, it will be handled as existing TOSCA (non-SOL004) package onboarding which will not have the ETSI_PACKAGE artifact.


    Image Added

    NS Onboarding Design
    • extend OrchestrationTemplateProcessCsarHandler.java to handle SOL007
      • processCsar()
        • instantiateToscaConverterFor(resourceType).convert(fileContentHandler)
          • calling ToscaSolModelDrivenConverterPNF()
            • pndfTransformationEngine.transform()
          • calling ToscaSolConverterVnf()
            • vnfTopologyTemplateConverter().convertTopologyTemplate(serviceTemplate, readerService)
              • convertInputs()
              • convertNodeTemplates()
              • convertOutputs()
              • convertSubstitutionMappings()
              • convertPolicies()
          • need to call ToscaSolModelDrivenConverterNS()
    • create ToscaSolModelDrivenConverterNS class
      • create NSdNodeTemplateTransformationEngine class
        • transform() to SDC AID DM NS
    • generate the SDC package for NS with the original vendor SOL007 NS package


    VNF Onboarding Design
    • leverage the existing SOL004 VNF onboarding mechanism
    • create a transform class to transform to SDC AID DM VNF
    • generate the SDC package for VNF with the original vendor SOL004 VNF package


    PNF Onboarding Design
    • leverage the existing SOL004 PNF onboarding mechanism
    • the transformation to SDC AID DM is already done
    • It is already done: generate the SDC package for PNF with the original vendor SOL004 VNF package



    The following diagram depicts the onboarding procedures for VNF/NS/PNF.


    Gliffy Diagram
    macroIdfbc6e2f8-a0f2-4c65-9293-6931f8e8b2e9
    nameETSI SDC Onboarding - Honolulu
    pagePin16



    1. SOL004 VNF/PNF and SOL007 NS Packages are onboarded to SDC.
    2. SDC creates its Resource CSAR by adding ONAP-specific files and metadata according to SDC procedure.
      1. For VNF onboarding, SOL001 VNFD is mapped to SDC Data Model.
      2. For NS onboarding, SOL001 NSD is mapped to SDC Data Model. Note: the SDC NS Data Model would be SOL001 NSD-based.
      3. For PNF onboarding, SOL001 PNFD is mapped to SDC Data Model.
      4. The original SOL004 VNF/PNF and SOL007 NS packages will be stored in the ETSI_PACKAGE directory.
      5. SDC shall have a capability to design SOL007 NSDs and generates SOL007 NS packages
        1. Since SDC does not have a proper NS Model, it will follow SOL001 NSD.
      6. SDC embeds the Resource CSAR into its Service CSAR for distribution.
        1. After SDC validates the onboarded packages, the Service CSAR is distributed.
        2. SDC sends the package notification to DMaaP for its package notification subscribers.
    3. ETSI Catalog Manager receives the package notification from SDC.
      1. ETSI Catalog Manager queries SDC for the SDC CSAR.
        1. ETSI Catalog Managers examines the SDC CSAR. If the SDC CSAR contains the ETSI_PACKAGE directory, it extracts the SOL004/SOL007 packages from the directory.
        2. ETSI Catalog Manager stores the SOL004/SOL007 packages to its Catalog Database.
      2. ETSI Catalog Manager provides APIs for the SOL003/SOL005 Adapters to distribute the packages to SVNFM/NFVO.


    Design NS


    NSD Structure


    Image Added

    Image Added

    SDC supports NSD design that meets the following requirements.
    • The NSD shall reference the VNFDs applicable to its constituent VNFs.
    • The NSD shall include the VLDs applicable to the VLs used by the NS to interconnect its constituent NFs.
    • The NSD shall reference the PNFDs applicable to its constituent PNFs.
    • The NSD shall include the descriptors of the VNFFGs applicable to the NS (stretch goal).
    • The NSD shall support the capability to include or reference NS LCM scripts.
    • The NSD shall support the capability to providing monitoring parameters to be tracked during the lifetime of a NS instance (stretch goal).
    • The NSD shall support the capability to describe auto scale rules, associating criteria to scaling actions (stretch goal).
    • The NSD shall include package security information enabling validating its authenticity and integrity.
    • The NSD shall include a globally unique identifier for identifying each descriptor instance.
    • The NSD shall include an identifier to select to controller compatible with the NSD.
    • A VLD shall enable specifying the type of connectivity provided by the link between VNFs.
    NSD Information Element
    • SDC supports the following NSD Information Elements.
    • SDC supports the netestedNsdId(s) for nested NSDs. (not for Guilin)
    • SDC UI should be able to manage the NSD attributes.
    • SDC supports the virtualLinkDesc(s) to define constituent VLs.

    Image Added

    Image Added

    Use Cases for Guilin

    VCPE

    The following is an example of VCPE model hierarchy. In VCPE, the E2E Service model includes one NS (vCPE). And the vCPE NS model includes vbng, vbrgemu, vgmux and vgw VNFs and a network VL.

    • SDC should be able to reference the vCPE NSD from the E2E Service model.
    • SDC should be able to reference all the constituent VNFs and VL(s).

    Image Added

    Image Added

    <example>

    Image Added

    • Test with vGW and VGMUX with a VL first.
    Latest vCPE CSARs

    The latest (Frankfurt) vCPE CSARs can be retrieved from the https://git.onap.org/demo/tree/tosca/vCPE_F. There are one NS CSAR and five VNF CSARs:

    • ns.csar
    • infra.csar
    • vbng.csar
    • vbrgemu.csar
    • vgmux.csar
    • vgw.csar


    Other Use Case

    To represent nested NS cases, we will choose another use case.

    • TBD


    NSD Design Process in SDC

    VNF Composition

    The following diagram depicts how SDC

    1. creates a NSD, based on SOL001 NSD
      1. generates SDC AID DM for NS, based on SOL001 NSD
    2. drags and drops constituent VFs
    3. generates SOL007 NS package


    Gliffy Diagram
    nameDesign SOL007 NS Package for Honolulu
    pagePin1


    VL Composition
    • SDC supports NSVLDs that are defined in the ETSI IFA 014, as part of NS design.
    • SDC UI should be able to handle the following VLD attributes.


    Image Added


    VNFD Composition

    The NSD references the VNFD of a constituent VNFs.

    • Drag and drops onboarded VNFs
    VNFD Data Model

    tosca.nodes.nfv.VNF:

        derived_from: tosca.nodes.Root

        description: The generic abstract type from which all VNF specific abstract node types shall be derived to form, together with other node types, the TOSCA service template(s) representing the VNFD

     tosca.nodes.nfv.VNF:

        derived_from: tosca.nodes.Root

        description: The generic abstract type from which all VNF specific node types shall be derived to form, together with other node types, the TOSCA service template(s) representing the VNFD

    IdTypeCardinalityDescription
    descriptor_idString #UUID1Identifier for the VNFD
    descriptor_versionString1

    Identifies the version of the VNFD

    providerString1provider of the VNF and of the VNFD
    product_nameString1name to identify the VNF product. Invariant for the VNF Product lifetime
    software_versionString1Software version of the VNF
    product_info_nameString0..1Human readable name of the VNF Product
    product_info_descriptionString0..1Human readable name for the VNF product
    vnfm_infolist of String1..nIdentifies VNFM(s) compatible with the VNF
    localization_languageslist of String0..nInformation about localization languages of the VNF

    lcm_operations_configuration

    tosca.datatypes.nfv.VnfLcmOperationsConfiguration

    0..n

    Describes the configuration parameters for the VNF LCM operations

    monitoring_parameters

    list of 

    tosca.datatypes.nfv.VnfMonitoringParameter

    0..n

    Describes monitoring parameters applicable to the VNF.

    flavour_id

    String1

    Identifier of the Deployment Flavour within the VNFD

    flavour_description

    String1

    Human readable description of the DF

    vnf_profile

    tosca.datatypes.nfv.VnfProfile

    0..1

    Describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF

    mciop_profilelist of tosca.datatypes.nfv.MciopProfile0..n

    Describes additional instantiation data for the MCIOPs used in this deployment









        attributes:

          scale_status:

            type: map # key: aspectId

            description: Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how "big" the VNF has been scaled w.r.t. that aspect.

            entry_schema:

              type: tosca.datatypes.nfv.ScaleInfo

        requirements:

          - virtual_link:

              capability: tosca.capabilities.nfv.VirtualLinkable

              relationship: tosca.relationships.nfv.VirtualLinksTo

              occurrences: [ 0, 1 ]

        # Additional requirements shall be defined in the VNF specific node type (deriving from tosca.nodes.nfv.VNF) corresponding to NS virtual links that need to connect to VnfExtCps




    interfaces:

          Vnflcm:

            type: tosca.interfaces.nfv.Vnflcm

        # VnfIndicator:

        #   type: tosca.interfaces.nfv.VnfIndicator

        # derived types are expected to introduce Vnf Indicator interfaces 

        # with their type derived from tosca.interfaces.nfv.VnfIndicator






    VDU OsContainer Data Model

    tosca.nodes.nfv.Vdu.osContainer:

        derived_from: tosca.nodes.Root

        description: Describes the container compute part of a VDU which is a construct  supporting the description of the deployment and operational behavior of a VNFC 

    IdTypeCardinalityDescription
    nameString1Human readable name of the VDU
    descriptionString1Human readable description of the VDU
    nfvi_constraintsmap of String0..n

    Describes constraints on the NFVI for the VNFC instance(s) created from this VDU. This property is reserved for future use in the present document.

    monitoring_parameters

    list of 

    tosca.datatypes.nfv.VnfcMonitoringParameter

    0..n

    Describes monitoring parameters applicable to a VNFC instantiated from this VDU

    #configurable_properties

    tosca.datatypes.nfv.VnfcConfigurableProperties

    0..1

    # derived types are expected to introduce configurable_properties with its type derived from tosca.datatypes.nfv.VnfcConfigurableProperties

    vdu_profile

    tosca.datatypes.nfv.VduProfile

    1

    Defines additional instantiation data for the Vdu.OsContainer node

    sw_image_data

    tosca.datatypes.nfv.SwImageData

    1

    Defines information related to a SwImage artifact used by this Vdu.OsContainer node

    boot_data

    tosca.datatypes.nfv.BootData

    0..1

    Contains the information used to customize a container compute resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent





        capabilities:

          virtual_compute:

            type: tosca.capabilities.nfv.VirtualCompute

            occurrences: [ 1, 1 ]

          virtual_binding:

            type: tosca.capabilities.nfv.VirtualBindable

            occurrences: [ 1, UNBOUNDED ]

        requirements:

          - virtual_storage:

              capability: tosca.capabilities.nfv.VirtualStorage

              relationship: tosca.relationships.nfv.AttachesTo

              occurrences: [ 0, UNBOUNDED ]






    MciopProfile Data Model

      tosca.datatypes.nfv.MciopProfile:

        derived_from: tosca.datatypes.Root

        description: describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF.

    IdTypeCardinalityConstraintsDescription

    mciopId

    String1

    Identifies the MCIOP in the VNF package.

    deploymentOrder

    Integer0..1greater_or_equal: 0

    Indicates the order in which this MCIOP shall be deployed in relation to other MCIOPs.  A lower value specifies an earlier deployment.

    null is allowed

    #     affinityOrAntiAffinityGroupId

    list of String0..n

    References the affinity or anti-affinity groups(s) the MCIOP belongs to.

    associatedVdu

    list of String0..n

    List of VDUs which are associated to this MCIOP and which are deployed using this MCIOP







    VnfInstantiateOperationConfiguration Data Model

      tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:

       derived_from: tosca.datatypes.Root

       description: represents information that affect the invocation of the InstantiateVnf operation.

    IdTypeCardinalityConstraintsDescription
    descriptionString0..1
    Description of VnfInstantiateOperationConfiguration











    VnfMonitoringParameter Data Model

    tosca.datatypes.nfv.VnfMonitoringParameter:
        derived_from: tosca.datatypes.Root
        description: Represents information on virtualised resource related performance metrics applicable to the VNF.

    IdTypeCardinalityConstraintsDescription

    name

    String

    1


    Human readable name of the monitoring parameter

    performance_metric

    String

    1

    - valid_values: [ v_cpu_usage_mean_vnf, v_cpu_usage_peak_vnf,
    v_memory_usage_mean_vnf, v_memory_usage_peak_vnf,
    v_disk_usage_mean_vnf, v_disk_usage_peak_vnf,
    byte_incoming_vnf_ext_cp, byte_outgoing_vnf_ext_cp,
    packet_incoming_vnf_ext_cp, packet_outgoing_vnf_ext_cp

    Identifies the performance metric, according to ETSI GS NFV-IFA 027.

    collection_period

    scalar-unit.time

    0..1

    - greater_than: 0 s

    Describes the recommended periodicity at which to collect the performance information.






    VnfProfile Data Model

    tosca.datatypes.nfv.VnfProfile:
    derived_from: tosca.datatypes.Root
    description: describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF.

    IdTypeCardinalityConstraintsDescription

    instantiation_level

    String

    0..1


    Identifier of the instantiation level of the VNF DF to be used for instantiation. If not present, the default instantiation level as declared in the VNFD shall be used

    min_number_of_instances

    Integer

    1

    - greater_or_equal: 0

    Minimum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile.

    max_number_of_instances

    Integer

    1

    - greater_or_equal: 0

    Maximum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile.






    SwImageData Data Model

      tosca.datatypes.nfv.SwImageData:

       derived_from: tosca.datatypes.Root

       description: describes information  related to a software image artifact 

    IdTypeCardinalityConstraintsDescription

    name

    String

    1


    Name of this software image

    version

    String

    1


    Version of this software image

    provider

    String

    1


    Provider of this software image

    checksum

    tosca.datatypes.nfv.ChecksumData

    1

    Checksum of the software image file

    container_format

    String1

    - valid_values: [ aki, ami, ari, bare, docker, ova, ovf ]

    The container format describes the container file format in which software image is provided

    disk_format

    String1

    - valid_values: [ aki, ami, ari, iso, qcow2, raw, vdi, vhd, vhdx, vmdk ]

    The disk format of a software image is the format of the underlying disk image

    min_disk

    scalar-unit.size # Number

    1

    - greater_or_equal: 0 B

    The minimal disk size requirement for this software image 

    min_ram

    scalar-unit.size # Number

    0..1

    - greater_or_equal: 0 B

    The minimal RAM requirement for this software image 

    size

    scalar-unit.size # Number

    1

    The size of this software image 

    operating_system

    String0..1

    Identifies the operating system used in the software image

    supported_virtualisation_environments

    list of String0..n

    Identifies the virtualisation environments (e.g. hypervisor) compatible with this software image

    BootData Data Model

    tosca.datatypes.nfv.BootData:

        derived_from: tosca.datatypes.Root

        description: describes the information used to customize a virtualised or containerized compute resource at boot time.

    IdTypeCardinalityConstraintsDescription

    vim_specific_properties

    tosca.datatypes.nfv.BootDataVimSpecificProperties

    0..1


    Properties used for selecting VIM or CISM specific capabilities when setting the boot data.

    kvp_data

    tosca.datatypes.nfv.KvpData

    0..1


    A set of key-value pairs for configuring a virtual or container compute resource.

    content_or_file_data

    tosca.datatypes.nfv.ContentOrFileData

    0..1


    A string content or a file for configuring a virtual or container compute resource. 

    BootDataVimSpecificProperties Data Model

      tosca.datatypes.nfv.BootDataVimSpecificProperties:

        derived_from: tosca.datatypes.Root

        description: describes the VIM specific information used for selecting VIM specific capabilities when setting the boot data.

    IdTypeCardinalityConstraintsDescription

    vim_type

    String

    1


    Discriminator for the different types of the VIM or CISM information.

    properties

    map of String

    0..n


    Properties used for selecting VIM or CISM specific capabilities when setting the boot data

    KvpData Data Model

      tosca.datatypes.nfv.KvpData:

        derived_from: tosca.datatypes.Root

        description: describes a set of key-value pairs information used to customize a virtualised or containerized compute resource at boot time by using only key-value pairs data.

    IdTypeCardinalityConstraintsDescription

    data

    map of String

    0..n


    A map of strings that contains a set of key-value pairs that describes the information for configuring the virtualised or containerized compute resource.

    ContentOrFileData Data Model

      tosca.datatypes.nfv.ContentOrFileData:

        derived_from: tosca.datatypes.Root

        description: describes a string content or a file information used to customize a virtualised or containerized compute resource at boot time by using string content or file.

    IdTypeCardinalityConstraintsDescription

    data

    map of String

    0..n


    A map of strings that contains a set of key-value pairs that carries the dynamic deployment values which used to replace the corresponding variable parts in the file as identify by a URL as described in source_path. Shall be present if "source_path" is present and shall be absent otherwise..

    content

    String0..1

    The string information used to customize a virtualised or containerized compute resource at boot time.

    source_path

    String0..1

    The URL to a file contained in the VNF package used to customize a virtualised or containerized compute resource. The content shall comply with IETF RFC 3986 [8].

    destination_path

    String0..1

    The URL address when inject a file into the virtualised or containerized compute resource. The content shall comply with IETF RFC 3986 [8].


    VNFD Information element

    The following depicts the VNFD information element.



    Image Added

    Image Added

    VL Composition
    • SDC supports NSVLDs that are defined in the ETSI IFA 014, as part of NS design.
    • SDC UI should be able to handle the following VLD attributes.

    Image Removed

    VNFD Composition

    The NSD references the VNFD of a constituent VNFs.

    • Drag and drops onboarded VNFs

    The following depicts the VNFD information element.

    Image Removed

    Image Removed

    SapD Composition

    SapD fulfills the following information element.

    Image RemovedImage Added



    Distribution

    ETSI packages will be distributed from SDC to the ETSI Catalog Manager for other ONAP runtime components such as SO (SOL003/SOL005 Adapter) and VF-C.

    • The original vendor package format could be one of the following.
      • Vendor package including certificate and signature (Zip format)
      • Vendor package without certificate and signature (CSAR format)

    ETSI Catalog Manager Enhancements

    ETSI Catalog Manager will interface with the SDC directly, without a help from ONAP SO.

    Image RemovedImage Added

    Package Distribution Components Interactions

    The following diagram depicts the ETSI package distribution. 

    Gliffy Diagram
    nameONAP ETSI Package Management for Honolulu
    pagePin1



     

    ETSI Package Distribution Flows


    PlantUML Macro
    typedot
    @startuml
    participant OSS_BSS
    participant SDC
    participant ONAP_ETSI_Catalog_Mgr
    participant SO_NFVO
    participant SOL003_Adapter
    participant SOL005_Adapter
    participant VNFM
    participant VFC
    participant Ext_NFVO
    autonumber 
    
    OSS_BSS -> SDC : Vendor SOL004/SOL007 package onboarding,\nincluding SOL001
    SDC --> SDC : onboard SOL004/SOL007 package and put the vendor package\ninto the ONBOARD_PACKAGE directory
    ONAP_ETSI_Catalog_Mgr -> SDC : register for SDC notification 
    SDC -> ONAP_ETSI_Catalog_Mgr : send a notification for SDC CSAR with the original vendor CSAR/Zip
    ONAP_ETSI_Catalog_Mgr -> SDC : query the SDC CSAR with the SDC CSAR id
    ONAP_ETSI_Catalog_Mgr --> ONAP_ETSI_Catalog_Mgr : extract SOL004/Sol007 package CSAR/Zip from the SDC CSAR \nand store it
    
    group NS PACKAGE TO SO_NFVO
    	ONAP_ETSI_Catalog_Mgr -> SO_NFVO : send a notification to SO_NFVO
    	SO_NFVO -> ONAP_ETSI_Catalog_Mgr : query for a NS package
    end
    
    group VNF PACKAGE TO SVNFM
    	ONAP_ETSI_Catalog_Mgr -> SOL003_Adapter : send a notification to SOL003_Adapter
    	SOL003_Adapter -> VNFM : send a notification
    	VNFM -> SOL003_Adapter : query for a VNF package
    	SOL003_Adapter -> ONAP_ETSI_Catalog_Mgr : query for a VNF package
    	ONAP_ETSI_Catalog_Mgr -> SOL003_Adapter : send a VNF package 
    	SOL003_Adapter -> VNFM : sends a VNF package
    end
    
    group NS/VNF/PNF PACKAGE TO Ext NFVO
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a notification to SOL005_Adapter
    	SOL005_Adapter -> Ext_NFVO : send a notification
    	Ext_NFVO -> SOL005_Adapter : query for a VNF/PNF/NS package
    	SOL005_Adapter -> ONAP_ETSI_Catalog_Mgr : query for a VNF/PNF/NS package
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a VNF/PNF/NS package 
    	SOL005_Adapter -> Ext_NFVO : sends a VNF/PNF/NS package
    end
    
    group NS/VNF/PNF PACKAGE TO VFC 
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a notification to SOL005_Adapter
    	SOL005_Adapter -> VFC : send a notification
    	VFC -> SOL005_Adapter : query for a VNF/PNF/NS package
    	SOL005_Adapter -> ONAP_ETSI_Catalog_Mgr : query for a VNF/PNF/NS package
    	ONAP_ETSI_Catalog_Mgr -> SOL005_Adapter : send a VNF/PNF/NS package 
    	SOL005_Adapter -> VFC : sends a VNF/PNF/NS package
    end	
    	
    @enduml


    SDC SOL004/SOL007 VNF Package Security

    Among the SOL004/SOL007 VNF package security options, the SDC supports the option2 as depicted below. In the option 2, there are two ways to zip the VNF packages, and SDC supports both.

    ...

    • Vendor SOL004/SOL007 VNF Package with certificate and signature is onboarded into SDC
      • ZIP-format VNF package includes CSAR, Signature and Certificate
    • SDC validates VNF package based on the certificate and signature
    • SDC generates SDC internal model plus the vendor SOL004/SOL007 package CSAR and ZIP (with certificate and signature) – the supported format is TBD based on the security requirement

    Image RemovedImage Added


    Package Security

    A VNF package uses the signature and certificate to ensure package integrity and validity. A CSAR file is digitally signed with the VNF provider private key. During the VNF package onboarding to SDC, SDC validates the package and then does the following:

    • Transform SOL001-based VNFD into SDC internal models
    • Store the original Vendor package into the ETSI_PACKAGE directory
      • If the original vendor package is a zip file with signature and certificate, the ETSI_PACKAGE directory will contain the zip file. 
    • VNFM and VF-C will receive the zip-format file.
    • For Frankfurt, the SVNFM and external NFVO will receive a zip-format package with signature and certificate if the original vendor package contains signature and certificate.
      • SVNFM and NFVO will unzip the incoming zip package files and extract CSAR files from the zip package files without validation.
      • After the Frankfurt release, it is assumed that SVNFM and NFVO validate the incoming packages based on signature and certificate.


    SOL001 Mapping to SDC AID DM

    The following diagram depicts SOL001 Mapping to SDC AID DM.

    Gliffy Diagram
    nameSOL001 Mapping to SDC AID DM - Honolulu
    pagePin1


    Current Mapping Support (as of Frankfurt)


    Image RemovedImage Added

    Note: AAI impacts are under discussion.

    Presentation Slide (as a summary)

    The following is a presentation slide that summarizes the Mapping.

    ...

    View file
    nameSDCEnhancementMapping-2020-9-4.pptx
    height250

    SOL007 Design and SOL004 Onboarding

    • SDC takes the vendor provided package and adds some files or changes files and meta data according to SDC procedure.
    • SDC NS/VNF/PNF Onboarding Procedure and Original Vendor VNF/PNF Package Handling
      • SDC onboarding enhancement was made to the SDC Dublin to support SOL004 PNF/VNF onboarding with .zip and .csar file extensions. We continue to support the current onboarding mechanism with some enhancements.
      • SOL007 NS onboarding (stretch goal for Guilin) will follow the same procedure; i.e., storing the vendor SOL007 NS package into the “ETSI_PACKAGE” directory.
      • SOL007 NS design will allow users to build SOL007 NS package including SOL001 NSD from scratch
      • SDC VSP and Resource csar files have the “ETSI_PACKAGE” directory, which will contain the original vendor VNF/NS/PNF package.
        • The “ONBOARDED_PACKAGE” directory name will be changed to “ETSI_PACKAGE” as a common ETSI directory name. This change is necessary to support design of SOL007 package
        • ONAP-ETSI Catalog Manager will be extracted the ETSI packages from the “ETSI_PACKAGE” directory.
        • The VNFM and external NFVO use the original vendor VNF/NS/PNF packages through ETSI Catalog Manager.
    • SDC provides mapping from ETSI SOL001 NSD/VNFD/PNFD (PNF in the future) to SDC AID DM
      • See the subsequent slides for mapping.
    • Note: ETSI 3.3.1 handling will be discussed separately.


    SDC CSAR for NS structure

    ONAP Service CSAR
      |-- Artifacts
            |-- ETSI_PACKAGE
                  |-- etsi nsd csar
            |-- <VF 1>
                  |-- Deployment
                        |-- ETSI_PACKAGE
                              |-- etsi vnf package
                ...
            |-- <VF n>
                  |-- Deployment
                        |-- ETSI_PACKAGE
                              |-- etsi vnf package

    Mapping of ETSI Information NS-related Elements with TOSCA types

    • For E2E (OSS Service) modeling, use org.openecomp.resource.abstract.nodes.service
      • E2E (OSS Service-Level) is outside of ETSI scope, and it could be ONAP-specific that is orchestrated by ONAP SO
      • The E2E (OSS Service-Level) model references/includes associated NSs
      • For the E2E service level, the org.openecop.resource.abstract.nodes.service type is still used as the base type of the service. SDC will use the ETSI SOL001 NS type and attach the NSs to the E2E (OSS Service).
    • For NS modeling, use tosca.nodes.nfv.NS
      • ONAP SO-NFVO, VFC and external NFVO manage the NS models and packages

    ONAP ETSI-Alignment Modeling Hierarchy

    • The following diagram depicts ONAP ETSI-Alignment Modeling hierarchy.
    • Note: the ONAP VFC model represents the design time VFC, not runtime VFC instance(s).
    • Note: VNF, VFC and PNF node types continue to be discussed for the Honolulu release. 

    ...

    Gliffy Diagram
    nameONAP ETSI-Alignment Models - Honolulu
    pagePin1



    Mapping between SOL001 Data Model and SDC AID DM

    The following summarizes the mapping between two models:

    SOL001 Data ModelSDC AID DMCommentsRelease
    N/Aorg.openecomp.resource.abstracts.nodes.servicerepresents OSS Service models
    tosca.nodes.nfv.NStosca.nodes.nfv.NSNS; use of SOL001 as SDC AID DM NSGuilin
    tosca.nodes.nfv.NsVirtualLinktosca.nodes.nfv.NsVirtualLinkNS VirtualLink; use of SOL001 as SDC AID DM VLGuilin
    tosca.nodes.nfv.Vnforg.openecomp.resource.abstract.nodes.ETSI.VNFVNFPlan for Honolulu
    tosca.nodes.nfv.vduorg.openecomp.resource.abstract.nodes.ETSI.VFCVDU and SDC VFCPlan for Honolulu
    tosca.nodes.nfv.VirtualLinkorg.openecomp.resources.vlVNF VLPlan for Honolulu
    tosca.nodes.nfv.VduCporg.openecomp.resources.cpVDU CPPlan for Honolulu
    N/Aorg.openecomp.resource.allottedResourceallotted resource; could not find any from SOL001
    tosca.nodes.nfv.Pnforg.openecomp.resource.abstract.nodes.ETSI.PNFPNFPlan for Honolulu (PNF support is under discussion for Honolulu


    Current SDC Resource Models

    SDC: nfv-types
    SDC: heat-types
    ETSI NFV IESDC Descriptor / SOL001TOSCA TypeDerived fromSDC DescriptorTOSCA TypeDerived from
    NSDnodes.yml / SOL001tosca.nodes.nfv.NStosca.nodes.RootGeneric_Service.yml(question)

    org.openecomp.resource.abstract.nodes.service

    (use it for both E2E (OSS Service) and NS)

    tosca.nodes.Root
    NSD.ymlorg.openecomp.resource.vfc.NSDtosca.nodes.RootN/A

    SapDSOL001tosca.nodes.nfv.Saptosca.nodes.Root


    NsVirtualLinkDescSOL001

    tosca.nodes.nfv.NsVirtualLink

    (there is tosca.nodes.nfv.VnfVirtualLink)

    tosca.nodes.Rootvl.ymlorg.openecomp.resource.vl.VLtosca.nodes.network.Network



    extVl.ymlorg.openecomp.resource.vl.extVLtosca.nodes.Root



    internalVl.ymlorg.openecomp.resource.vl.internalVLtosca.nodes.network.Network
    extZteVL.ymltosca.nodes.nfv.ext.zte.VLtosca.nodes.Root


    Pnfd
    tosca.nodes.nfv.PNFtosca.nodes.RootGeneric_PNF.ymlorg.openecomp.resource.abstract.nodes.PNFtosca.nodes.Root
    VnfdVNF.ymltosca.nodes.nfv.VNFtosca.nodes.RootGeneric_VF.ymlorg.openecomp.resource.abstract.nodes.VFtosca.nodes.Root
    Vnffgd
    tosca.groups.nfv.VNFFGtosca.groups.RootforwardingPath.yml(?)org.openecomp.nodes.ForwardingPathtosca.nodes.Root







    NSD Mapping to SDC AID DM

    Initial Input

    NSD Mapping to SDC AID DM

    A benefit of mapping an onboarded ETSI NS to the internal representation of an ONAP Service is that the ETSI NS can access the standard ONAP runtime functionality implemented or planned for support of ONAP Services.

    SOL001 NSD mapping to/from NS SDC AID DM

    • ONAP previous analysis
      • The SDC NSD node type, org.openecom.resource.vfc.NSD, is modeled as a component of a VF to represent an allotted resource. But, it is not derived from the org.openecomp.resource.vfc.AllottedResource, either. 
      • The SDC NSD might be designed for Volte use case support, and used by the VFC.
      • It is recommended to deprecate the current SDC NSD node type, and to replace with SOL001 tosca.nodes.nfv.NS node type.
    • Solutions
      • SDC generates SOL001 tosca.nodes.nfv.NS node type
      • SDC takes SOL001 NSD with tosca.nodes.nfv.NS node type as is, without mapping; i.e., no mapping is necessary
      • ONAP SO NFVO uses the SOL001 NSD
      • VFC needs to use the SOL001 NSD
      • There could be some impact on VID and ONAP SO Catalog DB for the SOL001 NSD - to be analyzed.
    • Guilin Decisions
      • SDC generates SOL001 tosca.nodes.nfv.NSD node type, and uses it as SDC AID DM.
    SOL001 NS


    SOL001 NS (tosca.nodes.nfv.NS) - Chosen


    SDC NSD

    org.openecomp.resource.vfc.NSD

    namerequiredtype
    namerequiredtype
    descriptor_idyesstring
    nsd_idtruestring
    designeryesstring
    nsd_designertruestring
    versionyesstring
    nsd_versiontruestring
    nameyesstring
    nsd_nametruestring
    invariant_idyesstring
    providing_service_uuidtruestring
    flavor_idyesstring
    providing_service_invariant_uuidtruestring
    ns_profilenotosca.datatypes.nfv.NsProfile
    providing_service_nametruestring

    <tosca.datatypes.nfv.NsProfile>

    Image RemovedImage Added

    SDC TOSCA Repository

    https://gerrit.onap.org/r/gitweb?p=sdc.git;a=tree;f=catalog-be/src/main/resources/import/tosca;h=70fecc1c6de587cd003c38f3e43547a10785e723;hb=refs/heads/master

    Image RemovedImage Added


    SDC nfv-types

    Image RemovedImage Added


    SDC nfv-types/NSD

    SDC TOSCA repository: /catalog-be/src/main/resources/import/tosca/nfv-types/NSD/

    ...

            type: tosca.capabilities.network.Linkable

    VNFD Mapping to SDC AID DM

    SOL001 VNF mapping to/from VNF SDC AID DM

    • ONAP previous analysis
      • There is no 1:1 mapping between the SOL001 tosca.nodes.nfv.VNF and org.openecomp.resource.abstract.nodes.VF.
        • SDC VF node types has very few properties.
        • a lot of common properties are added to each node type created by SDC
        • new common properties are mainly about networking and ONAP specific properties
      • There is no clear mapping logic between the current node types
        • SDC creates new data type as ONAP deployment configuration.
      • In ETSI, the descriptor_id is used to reference to the VNF, but in ONAP, the UUID is used to reference to the VNF.
    • Solutions
      • map between SOL001 VNF and SDC AID DM VNF selectively.
        • data in the SOL001 that would be considered Cloud Provider automation data could be remained unmapped
        • Examples of Service Provider data that would need to be mapped in order to drive ONAP automation would include:
          • HPA requirements needed by OOF to determine cloud feasibility
          • Input parameters passed to the Cloud provider
        • ONAP wants to distinguish between the mode/data required to drive ONAP functionality from a Service Provider perspective from any ancillary mode/data required to drive Cloud Provider automation.
      • UUID and invariantUUID must not be modeled as metadata type, per TOSCA YAML because the data provided within metadata, maybe ignored by TOSCA orchestrator and should not affect runtime behavior. 
      • Identify Cloud Provider automation-related data and remove it from the mapping
      • Identify Service Provider data and map it to SDC AID DM
      • ONAP SO NFVO uses SOL001 VNF; other ONAP runtime components could use the new mapped org.openecomp.resource.abstract.nodes.ETSI.VNF

    Current VNF Modeling in ETSI and SDC

    SOL001 VNF (tosca.nodes.nfv.VNF)
    • from SOL001 v3.3.1

    SDC AID DM VNF (org.openecomp.resource.abstract.nodes.VF)
    • from SDC Generic_VF.yml

    org.openecomp.resource.vf.vcpeInfrastructureGwDemoApp (derived from org.openecomp.resource.abstract.nodes.VF)
    namerequiredtype
    namerequiredtype
    namerequiredtype
    descriptor_idyesstring
    nf_function
    string
    nf_function
    string
    descriptor_versionyesstring
    nf_role
    string
    nf_role
    string
    provideryesstring
    nf_type
    string
    nf_type
    string
    product_nameyesstring
    nf_naming_code
    string
    nf_name_code
    string
    software_versionyesstring
    nf_naming
    org.openecomp.datatyhpes.Naming
    nf_naming
    org.openecomp.datatyhpes.Naming
    product_info_nameno string
    availability_zone_max_count
    integer
    availablity_zone_max_count
    integer
    vnfm_infoyeslist of string
    min_instances
    integer
    min_instances
    integer
    localization_languagesnolist of string
    max_instances
    integer
    max_instances
    integer
    default_localization_languageno string
    multi_stage_design
    boolean
    multi_stage_design
    boolean
    configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties
    sdnc_model_name
    string
    vf_module_idno
    modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes
    sdnc_artifact_name
    string
    vcpe_image_nameno
    lcm_operations_configuraionnotosca.datatypes.nfv.VnfLcmOperationsConfiguration
    skip_post_instantiation_configuration

    boolean (default true)

    • constraints : true, false

    public_net_idno
    monitoring_parametersnolist of tosca.dataypes.nfv.VnfMonitoringParameter
    controller_actor

    string (default: SO-REF-DATA)

    • constraints: SO-REF-DATA, CDS, SDNC, APPC

    vgw_name_0no
    flavour_idyesstring




    nexus_artifact_repono
    flavour_descriptionyesstring




    mux_ip_addrno
    vnf_profilenotosca.datatyhpes.nfv.VnfProfile




    vnf_idno








    cpe_public_net_cidrno








    vg_vgmux_tunnel_vnino








    nf_namingno








    multi_stage_designno
    <tosca.datatypes.nfv.VnfProfile>






    nf_naming_codeno
    instantiation_levelnostring




    vgw_private_ip_0no
    min_number_of_instancesyesinteger




    vgw_private_ip_1no
    max_number_of_instancesyesinteger




    vgw_private_ip_2no








    pub_keyno








    install_script_versionno








    onap_private_net_cidrno








    cpe_public_net_idno








    mux_gw_private_net_idno








    dcae_collector_ipno








    dcae_collector_portno








    onap_private_net_idno








    cloud_envno

    Solutions:

    There are two options. For now, we chose the option A. The option B is under discussion.

    Option A (chosen):

    Define a new data type based on the org.openecomp.resource.abstract.nodes.VF with ETSI SOL001 VNF data type attributes.

    ...

    SOL001 VNF (tosca.nodes.nfv.VNF)

    Mapping

    New SDC AID DM VNF (org.openecomp.resource.abstract.nodes.ETSI.VNF)

    derived from org.openecomp.resource.abstract.nodes.VF

    namerequiredtype
    namerequiredtype
    <SOL001 tosca.nodes.nfv.VNF attributes >


    <SOL001 tosca.nodes.nfv.VNF attributes >

    descriptor_idyesstring<-->descriptor_idyesstring
    descriptor_versionyesstring<-->descriptor_versionyesstring
    provideryesstring<-->provideryesstring
    product_nameyesstring<-->product_nameyesstring
    software_versionyesstring<-->software_versionyesstring
    product_info_nameno string<-->product_info_nameno string
    vnfm_infoyeslist of string<-->vnfm_infoyeslist of string
    localization_languagesnolist of string<-->localization_languagesnolist of string
    default_localization_languageno string<-->default_localization_languageno string
    configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties<-->configurable_propertiesnotosca.datatypes.nfv.VnfconfigurableProperties
    modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes<-->modifiable_attributesnotosca.datatypes.nfv.VnfInfoModifiableAttributes
    lcm_operations_configurationnotosca.datatypes.nfv.VnfLcmOperationsConfiguration<-->lcm_operations_configurationnotosca.datatypes.nfv.VnfLcmOperationsConfiguration
    monitoring_parametersnolist of tosca.datatypes.nfv.VnfMonitoringParameter<-->monitoring_parametersnolist of tosca.datatypes.nfv.VnfMonitoringParameter
    flavour_idyesstring<-->flavour_idyesstring
    flavour_descriptionyesstring<-->flavour_descriptionyesstring
    vnf_profilenotosca.datatypes.nfv.VnfProfile<-->vnf_profilenotosca.datatypes.nfv.VnfProfile




    <SDC AID DM VF attributes that are inherited from org.openecomp.resource.abstract.nodes.VF>

    <the followings are being considered>


    nf_functionnostring
    requirementsYes

    nf_rolenostring
    interfacesyestosca.interfaces.nfv.VnfLcm
    nf_typenostring




    nf_naming_codenostring




    nf_namingnoorg.openecomp.datatypes.Naming




    availability_zone_max_countnointeger




    min_instancesnointeger




    max_instancesnointeger




    multi_stage_designnoboolean




    sdnc_model_namenostring




    sdnc_artifact_namenostring




    skip_post_instantiation_configurationno

    boolean (default true)

    • constraints: true, false




    controller_actorno

    string (default: SO-REF-DATA)

    • constraints: SO-REF-DATA, CDS, SDNC, APPC








    Option B:

    Define a new data type based on the tosca.nodes.nfv.VNF with SDC AID DM VNF data type attributes.

    ...

    SOL001 VDU mapping to/from VNF SDC AID DM VFC

    Current SOL001 VDU vs. SDC AID DM VFC

    • no 1:1 mapping
    • note: the SDC AID DM VFC represents design-time VFC (like VDU), not VFC instances in runtime
    SOL001 VDU

    SDC AID DM VFC (org.openecomp.resource.abstract.nodes.VFC)

    NameRequiredTypeNameRequiredType
    nameyesstringnfc_function
    string
    descriptionyesstringhigh_availabilitynostring
    boot_ordernobooleanvm_image_name
    string
    nfvi_constraintsnomap of stringvm_flavor_nameyesstring
    monitoring_parametersnolist of tosca.datatypes.nfv.VnfcMonitoringParameternfc_naming_codenostring
    configurable_propertiesnomap of tosca.datatypes.nfv.VnfcConfigurablePropertiesvm_type_tagnostring
    boot_datanotosca.datatypes.nfv.BootDatanfc_naming

    org.openecomp.datatypes.Naming

    • ONAP_generated_naming: yes: boolean
    • naming_policy: no: string
    • instance_name: no: string
    vdu_profileyestosca.datatypes.nfv.VduProfilemin_instancesnointeger
    sw_image_datanotosca.datatypes.nfv.SwImageData








    Solutions for VDU and VFC mapping

    • Make the org.openecomp.resource.abstract.nodes.ETSI.VFC a superset of both tosca.nodes.nfv.Vdu and org.openecomp.resource.abstract.nodes.VFC
    • Note: the org.openecomp.resource.abstract.nodes.VFC represents design-time VFC, not VFC instances
    • During VNF onboarding, SDC copies SOL001 VDU attribute contents to the corresponding attributes in the org.openecomp.resource.abstract.nodes.ETSI.VFC
      • In Guilin, SO NFVO, VFC and SVNFM get those SOL001 VDU attributes from the descriptor, not from AAI. So, AAI schema changes are not expected in Guilin.
    • SOL001 VDU attributes in SDC AID DM VNF will be visible to SDC UI, so SDC UI can change the attributes.
      • But the onboarded vendor ETSI package will note be changed by the SDC UI users in Guilin.
      • Since SO NFVO, VFC and SVNFM use only the original ETSI package, those changes will not be used in Guilin;
      • For the Honolulu release, it is under consideration
        • to sync up between those modified SOL001 VDU attributes and the vendor ETSI Package attributes 
        • to reflect those modified SOL001 VDU / VFC attributes in the orchestration

    New SDC AID DM VFC type (org.openecomp.resource.abstract.nodes.ETSI.VFC)

    SOL001 VDU

    Mapping

    org.openecomp.resource.abstract.nodes.ETSI.VFC

    (derived from org.openecomp.resource.abstract.nodes.VFC)



    NameRequiredType<-->NameRequiredType
    nameyesstring<-->nameyesstring
    descriptionyesstring<-->descriptionyesstring
    boot_ordernoboolean<-->boot_ordernoboolean
    nfvi_constraintsnomap of string<-->nfvi_constraintsnomap of string
    monitoring_parametersnolist of tosca.datatypes.nfv.VnfcMonitoringParameter<-->monitoring_parametersnolist of tosca.datatypes.nfv.VnfcMonitoringParameter
    configurable_propertiesnomap of tosca.datatypes.nfv.VnfcConfigurableProperties<-->configurable_propertiesnomap of tosca.datatypes.nfv.VnfcConfigurableProperties
    boot_datanotosca.datatypes.nfv.BootData<-->boot_datanotosca.datatypes.nfv.BootData
    vdu_profileyestosca.datatypes.nfv.VduProfile<-->vdu_profileyestosca.datatypes.nfv.VduProfile
    sw_image_datanotosca.datatypes.nfv.SwImageData<-->sw_image_datanotosca.datatypes.nfv.SwImageData




    <SDC AID DM VFC attributes that are inherited from the org.openecomp.resource.abstract.nodes.VFC>





    nfc_functionnostring




    high_availabilitynostring




    vm_image_namenostring




    vm_flavor_namenostring




    nfc_naming_codenostring




    vm_type_tagnostring




    nfc_namingno

    org.openecomp.datatypes.Naming

    • ONAP_generated_naming: yes: boolean
    • naming_policy: no: string
    • instance_name: no: string




    min_instancesnointeger

    SOL001 3.3.1 VNFD Mapping from/to SDC AID DM VNFD

    SOL001 3.3.1 VNFD Template

    tosca_definitions_version: tosca_simple_yaml_1_3

    ...

        capabilities:

        requirements:

    SDC VFD Template

    tosca_definitions_version: tosca_simple_profile_for_ecomp_1_0

    ...

        capabilities:

        requirements:


    Image RemovedImage Added

    SOL001 VNFD mapping to/from SDC AID DM VFD


    SOL001 VNFD
    SDC AID DM VFD
    NameGrammar
    NameGrammar
    tosca_definitions_version

    string

    (tosca_simple_yaml_1_3)


    tosca_definitions_version

    string

    (tosca_simple_yaml_1_3)

    descriptionstring
    descriptionstring
    metadatamap of <string>
    metadatamap of <string>
    imports

    Single-line grammar

    • <URI_1>
    • <URI_2>

    Multi-line grammar

    • file: <file_URI>
    • repository: <repository name>
    • namespace_uri: <definition_namespace_uri> # deprecated
    • namespace_prefix: <definition_namespace_prefix>

    importsIdentifies the lower level models (VFC, CP, VL, heat)
    data_types

    <data_type_name>:

    derived_from: <existing_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <datatype_description>

    constraints:

    - <type_constraints>

    properties:

    <property_definitions>


    data_types

    <data_type_name>:

    derived_from: <existing_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <datatype_description>

    constraints:

    - <type_constraints>

    properties:

    <property_definitions>

    node_types

    <node_type_name>:

    derived_from: <parent_node_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <node_type_description>

    attributes:

    <attribute_definitions>

    properties:

    <property_definitions>

    requirements:

    - <requirement_definitions>

    capabilities:

    <capability_definitions>

    interfaces:

    <interface_definitions>

    artifacts:

    <artifact_definitions>


    node_types

    <node_type_name>:

    derived_from: <parent_node_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <node_type_description>

    attributes:

    <attribute_definitions>

    properties:

    <property_definitions>

    requirements:

    - <requirement_definitions>

    capabilities:

    <capability_definitions>

    interfaces:

    <interface_definitions>

    artifacts:

    <artifact_definitions>

    topology_template

    topology_template:

    description: <template_description>

    inputs: <input_parameter_list>

    outputs: <output_parameter_list>

    node_templates: <node_template_list>

    relationship_templates: <relationship_template_list>

    groups: <group_definition_list>

    policies:

    - <policy_definition_list>

    workflows: <workflow_list>

    # Optional declaration that exports the Topology Template

    # as an implementation of a Node Type.

    substitution_mappings:

    <substitution_mappings>


    topology_template

    similar, but the following are different

    • node_templates contents
    • groups
    • workflows
    • description
    string
    • description
    string
    • inputs


    • inputs

    <parameter name>:

    type: <parameter_type>

    description: <parameter_description>

    required: <parameter_required>

    default: <parameter_default_value>

    constraints:

    - <parameter_constraints>

    • node_templates

    vnf: tosca.nodes.nfv.Vnf

    vdu: tosca.nodes.nfv.Vdu

    vl: tosca.nodes.nfv.VnfVirtualLink

    vduCp: tosca.nodes.nfv.VduCp

    vduCompute: tosca.nodes.nfv.Vdu.Compute


    • node_templates

    vfc:

        type: org.openecomp.resources.vfc.<>

    vl:

        type: org.openecomp.resources.vl.<>

    cp: 

        type: org.openecomp.resources.cp.<>

    allotted_resource:

        type: org.openecomp.resource.allottedResource.<>





    • workflows
    <workflow name>

    policies

    • scaling aspect

    tosca.datatypes.nfv.ScalingAspect

    • description
    • properties
      • name:
      • description
      • max_scale_level:
      • step_deltas:

    • groups

    list of VF Modules

    VFModule_Base:

        type: org.openecomp.groups.VfModule

    VFModule_Expansion:

        type: org.openecomp.groups.VfModule




    • policies
    optional list of policies
    substitution_mappings

    substitution_mappings
    • node_type


    • node_type

    • capabilities

    <capability_type_name>:

    derived_from: <parent_capability_type_name>

    version: <version_number>

    description: <capability_description>

    properties:

    <property_definitions>

    attributes:

    <attribute_definitions>

    valid_source_types: [ <node type_names> ]


    capabilities

    <capability_type_name>:

    derived_from: <parent_capability_type_name>

    version: <version_number>

    description: <capability_description>

    properties:

    <property_definitions>

    attributes:

    <attribute_definitions>

    valid_source_types: [ <node type_names> ]

    • requirements


    • requirements

    groupnot defined
    group

    <group_type_name>:

    derived_from: <parent_group_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <group_description>

    properties:

    <property_definitions>

    members: [ <list_of_valid_member_types> ]

    requirements:

    - <requirement_definitions>

    capabilities:

    policy

    only the Abstract.SecurityGroupRule policy type is defined

    • not sure if we can map this into SDC AID DM

    policy

    <policy_type_name>:

    derived_from: <parent_policy_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <policy_description>

    properties:

    <property_definitions>

    targets: [ <list_of_valid_target_types> ]

    triggers:

    <list_of_trigger_definitions>

    relationship

    tosca.relationships.nfv.VirtualBindsTo

    tosca.relationships.nfv.AttachesTo


    relationship

    <relationship_type_name>:

    derived_from: <parent_relationship_type_name>

    version: <version_number>

    metadata:

    <map of string>

    description: <relationship_description>

    properties:

    <property_definitions>

    attributes:

    <attribute_definitions>

    interfaces:

    <interface_definitions>

    valid_target_types: [ <capability_type_names> ]




    annotation_type

    <annotation_type_name>:

    version: <version_number>

    description: <annotation_type_description>

    properties:

    <property_definitions>




    annotation

    <annotation_name>:

    type: <annotation_type>

    properties:

    <property_assignments>






    VF-Module Initial Input 

    The following is a summary of initial input from Gil Bullard (AT&T).

    • Mapping Scope Challenges and Suggestions 

      • ONAP wants to distinguish between the mode/data required to drive ONAP functionality from a Service Provider perspective from any ancillary mode/data required to drive Cloud Provider automation.

        • See the ONAP MultiVim Proposal on the separation of concerns.
      • SDC AID  was created before a separation of concerns was envisioned, thus there are data structures in the SDC AID that would be considered Cloud Provider automation data and that we would likely take out of the SDC AID.
        • Examples of Service Provider data that would need to be mapped in order to drive ONAP automation would include:
          • HPA requirements needed by OOF to determine cloud feasibility
          • Input parameters passed to the Cloud provider
        • There is probably some data in the SOL001 that would be considered Cloud Provider automation data. Any such data could remain unmapped
        • SOL001 content needed to drive ONAP automation (SO, OOF, SDNC, AAI, DCAE, etc.) would need to be mapped
      • The VNFM should not be aware of the VF Module structure, though the current SO-SDNC interactions to get assignment are by VF Module, and the VF Module entity plays prominent in AAI. That means there needs to be two adaptation points as we have discussed:
        • An SDC function to extract VF Module information from the SOL001 VNFD prior to distribution to runtime
        • A VNFM Adapter function to flatten the VF Module structure prior to handoff to the VNFM
    • VF-Module Deduction from SOL001

      • There is an assumption that SDC transforms the vendor provided VNF package into ONAP-compliant one; i.e., deducing VF Modules based on VNFD ScalingAspects and Delta.
      • If SDC supports the transformation in Dublin time-frame, the transformed CSAR will be imported to SO, and SO VNF- and VF-Module-level workflows will manage VNF and VF Module topology towards SDNC with the following changes - Input from Gil Bullard (AT&T)
        • Today the VNF-level workflow has an embedded per-VF Module loop that a) retrieves the SDNC assignments for that VF Module, and then b) sends those VF Module-level assignments down to the VIM (e.g., OpenStack); the loop then moves to repeat "a" with the next VF Module. 
        • The new VNF-level flow will have the following sequences:
          1. an embedded per-VF Module loop that only retrieves the SDNC assignments for each VF Module; because the VIM is hidden from SO's sight, beneath the VNFM Adapter/VNFM.
          2. After finishing the loop, the SO workflows will send a structure  to the VNFM Adapter that includes the aggregate assignments at the VNF level.
          3. The VNFM Adapter aggregates all the VF-Module level assignments and transforms the assignment data into SOL003 API parameters before sending them to SVNFM
            1. The VNFM Adapter would need to be able to parse the VNF-level assignments structure received from SO to obtain the per-VDUconnection point assignments information and any per-VDU parameter information (e.g., hostnames)
            2. In doing so, the VNFM Adapter would need to know to ignore the VF Module groupings of these assignments
            3. Further know how to map the ONAP data structure and parameter names into the ETSI (e.g., VM=VDU, VNFC=VNFC, vNIC=vNIC, etc.). Note that the above assumes that in ONAP, as in ETSI, there will be a one-to-one correspondence between VM/VDU and VNFC.

      • Assumptions for deducing VF-Module from SOL001 (Gil Bullard's input)

        • SOL001 concept of Aspect+ScalingDelta combination is one to one with the ONAP concept of VF Module.
        • SOL001 concept of VDU is one to one with the ONAP concept of A&AI vServer
        • SOL001 concept of a connection point associated with a VDU corresponds to the ONAP concept of the same name, as does the understanding of the meaning of “internal” versus “external” connection point.
        • ONAP-compliant SOL001 VNF Vendors will be obliged to name their HEAT files using a naming convention that encodes the SOL001 Aspect+ScalingDelta names
        • ONAP-compliant SOL001 VNF Vendors will be obliged to name their SOL001 Aspect+ScalingDelta parameters using a naming convention that readily maps to the corresponding HEAT properties.  
        • In addition, if AT&T has already deployed such a vendor’s VNF into its network, the HEAT naming will remain invariant, and (at least) the (AT&T version of that) SOL001 be written to match it.
      • What to do
        • ONAP will be extended to incorporate the constructs of Aspect and Scaling Level.  This includes SDC’s, SOs, and A&AI’s modeling of these constructs and A&AI's ability to capture and SO’s ability to set/update the "current scaling level" of a VNF for a given Aspect. 
        • If ETSI in their SOL001 VNFD had defined a "ScalingDelta" in a straightforward manner, i.e., in terms of the VNFCs that comprise it, then it would be very easy to extract VF Module information from the VNFD.  (I would like to see ETSI define "ScalingDelta" in this manner, as opposed to the current way they do so. )  However, given that they did not, ONAP SDC would need to be extended to derive the VF Module “structure” from the SOL001 document through the algorithm below.  “Structure” in this case includes the VDU topology, connection points and associated parameters.  This algorithm will:
        • Determine the set of Aspects and corresponding VDUs and associated ScalingDeltas (step_deltas) from the SOL001.
        • Determine the set of ScalingLevels associated with each Aspect and the ScalingDeltas associated with each.
        • Translate the VDU-centric representation of ScalingDeltas (step_deltas) as per SOL001 to come up with a ScalingDelta-centric representation that captures the number and type of VDUs associated with that ScalingDelta across the various VDU types.
        • Create a VF Module object that corresponds to each ScalingDelta-centric representation of a ScalingDelta calculated above.
        • Fill in the details of the VF Module object based on the SOL001 data to represent the VDU connection points, associated Networks (internal or external), and associated Parameters.
        • Determine if there is an artifact in the SOL004 package that is a HOT YAML whose file name corresponds (through a VNF vendor obligatory naming convention) to the Aspect+ScalingDelta from which this VF Module object was derived.  If so, associate that HOT file with the VF Module.
        • Name the VF Module based on a naming convention to capture the Aspect+ScalingDelta names
        • Determine and capture the mapping from each Aspect + ScalingLevel model for the VNF to the corresponding VF Module.
        • Given a desired state Aspect+ScalingLevel, will be able to calculate (from the SDC distributed mapping of Aspect+ScalingLevel to VF Module along with the current Scaling Level for this Aspect as per A&AI) the (ordered set of) VF Module(s) needed to take that VNF from the “current scaling level” to the desired level for that Aspect.
        • Note:  As an aside, SDC enhancements are being discussed. It is not clear if the SDC changes will be available in the Dublin time frame. some “stubbing off” SDC with a simulator could be suggested to at least prove in the run-time aspects of the solution.

    Solution:

    • SDC deduces the VF-Module from the SOL001 VNFD Policies>scaling_aspects>properties>aspects
    • Additional VF-Module attributes are deduced as the following table
    • SOL003 Adapter may need to transform the VF-Module back to the SOL001 VNFD policies for the scaling and healing requests from VNFM(s) – not part of Guilin

    ...

    Gliffy Diagram
    nameONAP ETSI-Alignment VF-Module Mapping - Honolulu
    pagePin1

    org.openecomp.group.VfModule Attribute and SOL001 VNF Policies deduction

    NameRequiredTypeSOL001 VNFD Policies
    vf_module_typeyes

    string

    valid values: Base, Expansion

    Base

    default: Base

    vf_module_labelyesstringaspects: <A>
    min_vf_module_instancesyesinteger

    initial_delta: 0

    max_vf_module_instancesnointegermax_scale_level
    initial_countyesinteger

    initial_data:

      number_of_instances

    vf_module_descriptionnostring

    aspects: 

      description

    volume_groupyesBooleandefault to false
    group_namingnoorg.openecomp.datatypes.Namingoptional field, leave it empty

    VirtualLink Mapping to SDC AID DM

    SOL001 VL mapping to/from VL SDC AID DM

    • ONAP previous analysis
      • Each vendor/operator defined their own VL node types (e.g., tosca.nodes.nfv.ext.zte.VL)
      • The vendor/operator-specific node types have no direct 1:1 mapping to tosca.nodes.nfv.NsVirtualLink
    • Solutions
      • Deprecate vendor/operator-specific VLs
      • Use SOL001 tosca.nodes.nfv.NsVirtualLink
      • ONAP SO NFVO uses the SOL001 tosca.nodes.nfv.NsVirtualLink
      • VFC needs to adapt SOL001 tosca.nodes.nfv.NsVirtualLink
    SOL001 VL

    <tosca.nodes.nfv.NsVirtualLink>

    Image RemovedImage Added

    Image RemovedImage Added

    <tosca.datatypes.nfv.NsVlProfile>

    Image RemovedImage Added

    <tosca.datatypes.nfv.ConnectivityType>

    Image RemovedImage Added

    <tosca.datatypes.nfv.LinkBitrateRequirements>

    Image RemovedImage Added

    <tosca.datatypes.nfv.NsVirtualLinkQos>

    Image RemovedImage Added

    <tosca.datatypes.nfv.ServiceAvailability>

    Image RemovedImage Added


    Current SDC VL

    <tosca.nodes.nfv.ext.zte.VL>

    ...

            valid_source_types: [

              ]


    PNF Mapping to SDC AID DM

    SOL001 PNF mapping to/from VL SDC AID DM


    Image RemovedImage Added


    Image RemovedImage Added

    Image RemovedImage Added