Versions Compared

Key

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

Project Name:

  • Proposed name for the project: ONAP Optimization Framework (ONAP-OF)
  • Proposed name for the repository: optf

...

optf/osdf                    -- optimization service design framework

Project description:

ONAP needs core platform optimization services such as VNF placement and resource allocation (homing), and change management scheduling to function in any multi-site, multi-VIM, and multi-service environment. It could also benefit from a framework which promotes the reuse of software tools and algorithms to allow users to construct new optimization services and to extend/enhance existing platform optimization services.

...

b) CMSO (Change management scheduling optimizer): a policy driven workflow schedule optimizer for change management planning. The CMSO helps schedule workflows in time to maximize parallel change management activities, while respecting dependency between the workflows.

This will be delivered as three modules. One for HAS, one for CMSO, and one for the service design framework. The HAS and CMSO can execute both as services on DCAE and independent processes.

The set of platform optimization services will grow over time as the ONAP platform needs arise, and the optimization framework is envisioned to handle this as effectively as possible, with minimal or little new code development for creating new services. The optimization service design framework (OSDF), which can be used to build new optimization applications for users of ONAP, as well as to build new platform optimization services or extend the existing platform services through plugins. To demonstrate its capabilities, OSDF has been used to entirely build the change management scheduling optimizer (CMSO) as well as to build VNF license optimization and connectivity optimization plugins for the homing and allocation service (HAS). The OSDF is intended to allow future applications such as energy optimization in networks, optimal route selection, and radio access network (RAN) runtime performance optimization.

...

  • OOM may need to invoke HAS to get a placement decision when deploying ONAP components e.g., to get a DCAE micro-service to be placed in proximity to the VNF it is monitoring.
  • Policy will may need to support HAS by storing placement policies and associating them with service models

...

CMSO: VNF change management scheduling optimizer: Change Management (CM) application is responsible for managing and enforcing changes (e.g. device upgrade, configuration change, etc.) in the cloud and network infrastructure. Currently, a major part of CM scheduling is performed manually, which is time consuming, inefficient, and prone to service impacting errors. CMSO provides recommended schedules of changes for upgrading of VNFs under given constraints and current state of schedules and relationships of network elements. The primary challenge is when to schedule changes such that service disruption is minimized. OF offers the CMSO service to the CM application, which can be invoked prior to any change are scheduled. A service designer designs a change request in SDC and configures the schedule requirements through policies. Prior to scheduling changes via Service Orchestrator (SO), the designer makes a call to CMSO from SDC. CMSO collects the existing scheduling information from available ticketing system and vertical dependency information from AAI and calculates a solution to the scheduling application. Finally, the recommended schedule is returned to SDC, which is verified by the designer before committing the schedules to SO.

Architecture alignment:

  • AAI (e.g. network topology, cloud sites, service instances, scheduling/ticketing data)
  • DCAE (e.g. cloud-level resource utilization)
  • SDC (e.g. available VNF license artifacts)
  • Policy Service (e.g. rules/constraints

Optimization Service Design Framework. It a set of design time optimization libraries,  tools and tools (as an optimization Software Development Kit (SDK)) microservices (MS) to facilitate and simplify the creation of new specific runtime optimization functionalities. The goal of this SDK framework is to avoid siloed optimization tools and associated duplicated efforts and overheads. Indeed, the current platform services PAS and services HAS  and CMSO use the SDK the framework extensively in their own development. Other potential optimization services that can be built using the SDK this framework include energy optimization in networks, optimal route selection for various network services, and radio access network (RAN) performance optimization.  The figure below illustrates the concept.

 



Architecture alignment:

• How does this SDK this framework fit into the rest of the ONAP Architecture?

...

  • Offers a set of MS which provide reusable optimization functionality which can optionally be used by other ONAP components if required by a use case
  • Provides a framework for building optimization services as a part of the ONAP ecosystem
  • Provides adapters to other ONAP systems (e.g. policy, AAI, SDC, etc.) for optimization application developers
  • Uses REST and Data Bus interfaces in a service agnostic manner
  • Models and artifacts are specified in SDC format, while rules/constraints are specified in Policy Service

...

  • Open source optimization solvers (e.g. GLPK/CBC, OR-Tools, optaplanner – these are pluggable)
  • Python eco-system (modules for schema validation, database adapters, etc.)
  • While the code is primarily written in Python, we anticipate it to be a mixture of Java and Python

Resources:

  • Primary Contact Person
    • Sarat Puthenpura - AT&T
  • Names, gerrit IDs, and company affiliations of the committers
  • Names and affiliations of any other contributor
    • Ankit Patel - AT&T
    Matti Hiltunen
    • Avteet Chayal - AT&T
    Shankar Naraynan
    • Matti Hiltunen - AT&T
    • Joe D'Andrea - AT&T
    Maopeng Zhang - ZTE
  • Mark Volovic - Amdocs
  • Yoram Zini -  Cisco

  • Rúben Borralho - Celfinet

  • Names and affiliations of any other contributors
    • Rakesh Sinha - AT&T
    • Max Zhang - AT&T
    • Carlos De Andrade - AT&T
    • Kevin Smokowski - AT&T
    • Ramki Krishnan - VMware
    • Gil Hellmann - Wind River
    • Ikram Ikramullah - AT&T
    • Dileep Ranganathan - Intel
    • Gueyoung Jung - AT&T
  • Project Roles (include RACI chart, if applicable)

Other Information:

  • link to seed code (if applicable)
  • Vendor Neutral
    • if the proposal is coming from an existing proprietary codebase, have you ensured that all proprietary trademarks, logos, product names, etc., have been removed?
  • Meets Board policy (including IPR)

Use the above information to create a key project facts section on your project page

Key Project Facts

Project Name:

Repo name: optf
Lifecycle State:
Primary Contact: Sarat Puthenpura (sarat@research.att.com)
Project Lead: Sarat Puthenpura
mailing list tag [Should match Jira Project Prefix]: 

Committers:

Sastry Isukapalli sastry@research.att.com AT&T
Ankitkumar Patel ankit@researchSarat Puthenpura sarat@research.att.com AT&T
Matti Hiltunen hiltunen@researchSastry Isukapalli sastry@research.att.com AT AT&T
Shankar Narayanan snarayanan@research.att.com AT&T
Joe D'Andrea jdandrea@researchShankaranarayanan Puzhavakath Narayanan - snarayanan@research.att.com AT&T
Maopeng Zhang zhang.maopeng1@zte.com.cn ZTE
Alexander Vul alex.vul@intel.com Intel
Yoram Zini (yzini) yzini@cisco.com Cisco

...

Vladimir Yanover mailto:vyanover@cisco.com Cisco


*Link to TSC approval: 
Link to approval of additional submitters: 

...