Uploaded image for project: 'VNF Requirements'
  1. VNF Requirements
  2. VNFRQTS-28

Collection of VNF requirements impacting the VNF Package definition for use by VNF SDK, SDC, VNF Validation and Modeling Projects

XMLWordPrintable

      VNF Requirements and Guidelines impacting the VNF package are described below.
      A table collecting the VNF Package Requirements coordinated with the VNF SDK, SDC, Validation and Modeling project.

      Step 1 identify from the list of Amsterdam requirements, those that are testable by VNF Package inspection https://wiki.onap.org/display/DW/VNF+Requirements+Testability

      Step 2 from that list identify the requirements where information elements have been identified https://wiki.onap.org/pages/viewpage.action?pageId=16004636 ONAP R2+ Resource IM Clean version

      step 3 from that list identify the requirements where the information elements have some range limits or naming conventions identified. - SOL001, SOL004

      • Manifest file format
      • Manifest file entries
      • Tests, License directory, Change Log

       

      The following VNF package requirements guide:

      • VNF SDK project developing a tool allowing a VNF provider to create a VNF package compliant with ONAP VNF package model - see attached ppt.
      • SDC project developing an entity for VNF package parsing, validation and on-boarding.

      The VNF package requirements are arranged and numbered as in [https://wiki.onap.org/display/DW/VNF+Requirements+Testability] and mapped to the R2 Info Model and CASR where applicable.

       

       Requirement # Description
       
      R2 Resource IM Info Element and
      TOSCA/YAML VNF Package artifacts
      Beijing
      Release
       R-01478 The VNF Package MUST include documentation describing all parameters that are available to monitor the VNF after instantiation (includes all counters, OIDs, PM data, KPIs, etc.) that must be collected for reporting purposes Monitoring Info Element (TBD) - SOL001  Yes
       R-01556 The VNF Package MUST include documentation describing the fault, performance, capacity events/alarms and other event records that are made available by the VNF Monitoring Info Element (TBD) - SOL001  Yes
       R-02454: The VNF MUST support the existence of multiple major/minor versions of the VNF software and/or sub-components and interfaces that support both forward and backward compatibility to be transparent to the Service Provider usage VNFD.vnfSoftwareVersion
      SwImageDesc.Version - SOL001
      Yes
       R-03070: The VNF MUST, by ONAP Policy, provide the ONAP addresses as data destinations for each VNF, and may be changed by Policy while the VNF is in operation. We expect the VNF to be capable of redirecting traffic to changed destinations with no loss of data, for example from one REST URL to another, or from one TCP host and port to another A list of vnfExtCpd's with virtualNetworkInterfaceRequirements - SOL001 Yes
       R-04298: The VNF provider MUST provide their testing scripts to support testing. CSAR including Tests directory as in SOL004 with testing scripts  
       R-07879: The VNF Package MUST include all relevant playbooks to ONAP to be loaded on the Ansible Server. CSAR including TBD directory with Ansible playbooks  
       R-09467: The VNF MUST utilize only NCSP standard compute flavors VirtualComputeDesc - SOL001 Yes
       R-13390: The VNF provider MUST provide cookbooks to be loaded on the appropriate Chef Server CSAR including TBD directory with Chef cookbooks  
       R-16065: The VNF provider MUST provide configurable parameters (if unable to conform to YANG model) including VNF attributes/parameters and valid values, dynamic attributes and cross parameter dependencies (e.g., customer provisioning data). VDUDesc.configurable Properties - SOL001 Yes
       R-16560: The VNF MUST conduct a resiliency impact assessment for all inter/intra-connectivity points in the VNF to provide an overall resiliency rating for the VNF to be incorporated into the software design and development of the VNF TBD  
       R-16777: The VNF provider MUST provide a JSON file for each supported action for the VNF. The JSON file must contain key value pairs with all relevant values populated with sample data that illustrates its usage. The fields and their description are defined in Appendix B CSAR including the TBD directory with JSON files for each action on VNF  
       R-18525: The VNF provider MUST provide a JSON file for each supported action for the VNF. The JSON file must contain key value pairs with all relevant values populated with sample data that illustrates its usage. The fields and their description are defined in Appendix A What is a difference from the above?  
       R-22888: The VNF provider MUST provide documentation for the VNF Policy Description to manage the VNF runtime lifecycle. The document must include a description of how the policies (conditions and actions) are implemented in the VNF TBD Policy scripts and TBD Policy constructs for LCM  
       R-23823: The VNF Package MUST include appropriate credentials so that ONAP can interact with the Chef Server. CSAR including credentials for Chef server in TBD directory and encrypted using TBD mechanism  
       R-25238: The VNF PACKAGE MUST include validated YANG code using the open source pyang program CSAR TBD directory for YANG code  
       R-26567: The VNF Package MUST include a run list of roles/cookbooks/recipes, for each supported VNF action, that will perform the desired VNF action in its entirety as specified by ONAP (see Section 8.c, ONAP Controller APIs and Behavior, for list of VNF actions and requirements), when triggered by a chef-client run list in JSON file CSAR TBD directories with scripts   
       R-26881: The VNF provider MUST provide the binaries and images needed to instantiate the VNF (VNF and VNFC images). CSAR includes TBD directory for SW images referred in SwImageDesc- SOL001 Yes?
       R-27310: The VNF Package MUST include all relevant Chef artifacts (roles/cookbooks/recipes) required to execute VNF actions requested by ONAP for loading on appropriate Chef Server. CSAR TBD directories including all relevant Chef artifacts  
       R-27711: The VNF provider MUST provide an XML file that contains a list of VNF error codes, descriptions of the error, and possible causes/corrective action TBD  
      R-30278: The VNF provider MUST provide a Resource/Device YANG model as a foundation for creating the YANG model for configuration. This will include VNF attributes/parameters and valid values/attributes configurable by policy  CSAR TBD directory for YANG device model  
       R-30654: The VNF Package MUST have appropriate cookbooks that are designed to automatically ‘rollback’ to the original state in case of any errors for actions that change state of the VNF (e.g., configure). VNFD.lifeCycleManagementScript that includes a list of events and corresponding management scripts performed for the VNF - SOL001 Yes
       R-33280:  The VNF MUST NOT use any instance specific parameters in a playbook  How this can be tested  
       R-35851: The VNF Package MUST include VNF topology that describes basic network and application connectivity internal and external to the VNF including Link type, KPIs, Bandwidth, latency, jitter, QoS (if applicable) for each interface.  VLink, CPD, VduCpd, VnfExtCpd, VnfVirtualLinkDesc, TBD Monitoring info element - SOL001 Yes
       R-36280: The VNF provider MUST provide documentation describing VNF Functional Capabilities that are utilized to operationalize the VNF and compose complex services  CSAR TBD directory for functuonal tests - SOL004  
       R-37028: The VNF MUST be composed of one “base” module.  What is it in terms of VNFD: basic Deployment Flavor? -
      SOL001
      Yes?
       R-37692: The VNFC MUST provide API versioning to allow for independent upgrades of VNFC VDU with VduCpd's info elements and TBD reference to API's - SOL001  
      R-40293: The VNF MUST make available (or load on VNF Ansible Server) playbooks that conform to the ONAP requirement. See above about Ansible scripts  
      R-40827: The VNF provider MUST enumerate all of the open source licenses their VNF(s) incorporate. CSAR License directory - SOL004 Yes?
      R-41215: The VNF MAY have zero to many “incremental” modules VnfDf/VDU Profile - SOL001 Yes
      R-43958: The VNF Package MUST include documentation describing the tests that were conducted by the VNF provider and the test results. ? + CSAR includes .../Tests directory with all testing -
      SOL004
       
      R-46567: The VNF Package MUST include configuration scripts for boot sequence and configuration. CSAR includes configuration scripts in TBD directory that are also referred by VDU.injectFiles Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process.  
      R-48596: The VNF Package MUST include documentation describing the characteristics for the VNF reliability and high availability. TBD  
      R-56815: The VNF Package MUST include documentation describing supported VNF scaling capabilities and capacity limits (e.g., number of users, bandwidth, throughput, concurrent calls). relates to VNFD.configurableProperties describing the configurable properties of the VNF (e.g. related to auto scaling and auto healing). - SOL001  
      R-58775: The VNF provider MUST provide software components that can be packaged with/near the VNF, if needed, to simulate any functions or systems that connect to the VNF system under test. This component is necessary only if the existing testing environment does not have the necessary simulators CSAR includes Test directory with all SW packages for testing - SOL004  
      R-66070: The VNF Package MUST include VNF Identification Data to uniquely identify the resource for a given VNF provider. The identification data must include: an identifier for the VNF, the name of the VNF as was given by the VNF provider, VNF description, VNF provider, and version. Both CSAR Manifest file and VNFD should include this meta-data - SOL01, SOL004 Yes
       R-AAAA1 VNF History Log Change Log - SOL004  
       R-69565: The VNF Package MUST include documentation describing VNF Management APIs. The document must include information and tools for: TBD  
       R-72184: The VNF MUST have routable FQDNs for all the endpoints (VMs) of a VNF that contain chef-clients which are used to register with the Chef Server. As part of invoking VNF actions, ONAP will trigger push jobs against FQDNs of endpoints for a VNF, if required. TBD  
       R-73364: The VNF MUST support at least two major versions of the VNF software and/or sub-components to co-exist within production environments at any time so that upgrades can be applied across multiple systems in a staggered manner.  CSAR includes at least two SW versions per VNFD/VDU
      SOL001 & SOL004
       
       R-74763: The VNF provider MUST provide an artifact per VNF that contains all of the VNF Event Records supported. The artifact should include reference to the specific release of the VNF Event Stream Common Event Data Model document it is based on. (e.g., VES Event Listener) TBD Monitoring Info element + Event scripts in CSAR  
       R-77707: The VNF provider MUST include a Manifest File that contains a list of all the components in the VNF package. CSAR Manifest file - SOL004 Yes
       R-77786: The VNF Package MUST include all relevant cookbooks to be loaded on the ONAP Chef Server. Overlap with above  
      R-78010: The VNF MUST use the NCSP’s IDAM API for Identification, authentication and access control of customer or VNF application users. CSAR includes API for controlled access (RBAC) to VNF  
      R-81777: The VNF MUST be configured with initial address(es) to use at deployment time. After that the address(es) may be changed through ONAP-defined policies delivered from ONAP to the VNF using PUTs to a RESTful API, in the same way that other controls over data reporting will be controlled by policy. CSAR includes Configuration scripts  
      R-84366: The VNF Package MUST include documentation describing VNF Functional APIs that are utilized to build network and application services. This document describes the externally exposed functional inputs and outputs for the VNF, including interface format and protocols supported.  TBD  
       R-86758: The VNF SHOULD provide an automated test suite to validate every new version of the software on the target environment(s). The tests should be of sufficient granularity to independently test various representative VNF use cases throughout its lifecycle. Operations might choose to invoke these tests either on a scheduled basis or on demand to support various operations functions including test, turn-up and troubleshooting. CSAR includes .../Tests directory for tests scripts- SOL004  
       R-96634: The VNF provider MUST describe scaling capabilities to manage scaling characteristics of the VNF. VNFD.configurableProperties describing scaling characteristics. VNFD.autoscale defines the rules for scaling based on specific VNF indications - not in SOL001 Yes?
      R-97102: The VNF Package MUST include VM requirements via a Heat template that provides the necessary data VDUDesc. VirtualComputeDesc - virtual container - SOL001 Yes
       R-98617:  The VNF provider MUST provide information regarding any dependency (e.g., affinity, anti-affinity) with other VNFs and resources.
      • VDUProfile.localAffinityOrAntiAffinityRule includes local affinity/antyaffinity between VDU's - SOL001
      • Affinity with external VNF's specification is TBD
      Yes?
       R-99771: The VNF MUST provide all code/configuration files in a “Locked down” or hardened state or with documented recommendations for such hardening. All unnecessary services will be disabled. VNF provider default credentials, community strings and other such artifacts will be removed or disclosed so that they can be modified or removed during provisioning  TBD  
      R-XXXX1 The VNF MUST have a corresponding environment file for a Cinder Volume Module.  TBD  
       R-XXXY1 VNF Policy scripts - External (to VNF-D) Policy enforcement Policy scripts  
             
             

            andreikojukhov andreikojukhov
            wombat123 wombat123
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: