Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Page Status: Copied from Guilin-R7 - Aug-24-2020

...

Drawio
bordertrue
diagramNameoof_r7
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth12251269
revision15

2. API definitions

OOF provides the following interfaces:

Interface NameInterface Definition Interface CapabilitiesAPI Spec (Swagger)
OOFE-1
  • Homing
  • Traffic Distribution

It enables placement based on a wide variety of policy constraints including capacity, location, platform capabilities, and other service specific constraints. 

https://docs.onap.org/projects/onap-optf-osdf/en/latest/sections/offeredapis.html
OOFE-2PCI/ANR OptimizationEnables PCI/ANR optimization API for SON.https://docs.onap.org/projects/onap-optf-osdf/en/latest/sections/offeredapis.html
OOFE-3Schedule Optimizationa policy driven workflow schedule optimizer for change management planning. This interface schedule workflows in time to maximize parallel change management activities, while respecting dependency between the workflows.https://docs.onap.org/projects/onap-optf-cmso/en/latest/sections/offeredapis.html
OOFE-4Route Optimization

Provides an interface for Router Optimization and inter-domain route optimization.

https://docs.onap.org/projects/onap-optf-osdf/en/latest/sections/offeredapis.htmlInter-domain swagger Reference (This review will show the added new API. This can also be found under the docs above)

OOFE-5OOF Model AdministratorThis is for the OOF Model Administrator API.  This API is a way to dynamically change the optimization models that will be used to find solutions for various optimization problems.  This API will be used to Create, Update, or Delete Models.
OOFE-6

Network Slicing

This interface enables slice selection recommendations (NST, NSI, NSSI, Slice Profiles), as well as slice termination recommendations (NSI, NSSI). 

Feature enhancements in Slice selection features.

https://docs.onap.org/projects/onap-optf-osdf/en/latest/sections/offeredapis.htmlSlicing swagger reference (This review will show the changes done to the API. This can also be found under the docs above) 

Note:   xxxI interface is a Component internal interface.  xxxxE interface is a component external interface

...

OOF consumes the following Interfaces:

Interface NamePurpose Reason For UseAPI Spec (Swagger)
CPS-1

For fetching RAN configuration related info (starting with coverageArea → TA List mapping in H-release)

There will be a generic CPS plugin, which could be used as a data source for optimization, since CPS will be persisting the config info of the xNFs in the network, which might be useful for the optimization

CPS-TBDMT Service

https://github.com/onap/cps/blob/master/cps-rest/docs/api/swagger/openapi.yml

SDNCE-1For PCI/ANR optimization, OOF Retrieves the Cellsite inventory details from the configdb API, which is hosted as part of the SDNC/R componenthttps://github.com/onap-oof-pci-poc/sdnc/blob/master/ConfigDB/swagger-json/swagger.json
AAIE-1OOF interfaces with AAI to retrieve the inventory

OOF consumes a wide variety of inventories from AAI. It can be found under the API section of AAI

https://docs.onap.org/projects/onap-aai-aai-common/en/latest/platform/offeredapis.html

MCE-5

OOF queries Multicloud for real-time available capacity information

https://docs.onap.org/projects/onap-multicloud-framework/en/latest/MultiCloud-APIv0-Specification.html
MUSICI-1OOF interfaces with MUSIC to persist service state.https://docs.onap.org/en/elalto/submodules/music/distributed-kv-store.git/docs/offeredapis.html
SDCE-1OOF interfaces with SDC to retrieve slice template informationhttps://docs.onap.org/projects/onap-sdc/en/latest/offeredapis.html
DESE-1OOF interfaces with DES to retrieve the PM/KPI data of the cells for ML-based decision making.DES Swagger reference
CONSULE-1OOF interfaces with consul for configuration managementhttps://www.consul.io/api-docs/kv


3. Component Description:

ONAP Optimization Framework (OOF) is an Umbrella project, with the primary goal of addressing the optimization needs of ONAP. OOF is a framework that supports creating and running a suite of Optimizing applications including: 

  • Change Management Scheduling optimizer
  • Homing/Placement optimizer
  • PCI optimizer
  • Route optimizer
  • Slice selection

OOF is targeted to be an optimization platform with the following goals: 

  • Declarative, policy-driven approach to solving optimization problems
  • Reusable components: data and policy adapters/libraries, execution environment
  • Support General-Purpose as well as Custom optimizers
  • Extensible to multiple optimization problems

Internally, OOF has the following components: 

  • OSDF: Optimization Service Design Framework, which is a collection of APIs and libraries, along with a generic runtime optimizer
    • Status: Part of ONAP since Beijing Release.
  • HAS: Homing and Allocation Service, which provides a policy based constraint driven selection optimizer
    • Status: Part of ONAP since Beijing Release.
  • CMSO: Change Management Schedule Optimizer, providing schedule optimization
    • Status: Seed code up-streamed in R3
  • FGPS: Fine Grained Placement Service
    • Status: Seed code up-streamed, POC in Frankfurt

4. Known system limitations

...

OOF doesn't directly create models, but indirectly consumes them via AAI, Policy and Multi Cloud. 

  • Service and Resource Info, from: AAI
  • Network Topology for CM: AAI
  • HPA Flavors/Capabilities/CapacityInfo, from : AAI
  • Policy Models (homing, PCI) from: Policy
  • Infrastructure Metrics Info (capacity), from: MultiCloud
  • Cloud agnostic Intent Info, from: MultiCloud
  • AZ level capacity Info, from: MultiCloud (for F-GPS)
  • PCI configuration data (not yet part of SDNC model)
  • Slice/Subnet Profile and Slice/Subnet Instance models, from AAI

6. System Deployment Architecture

...

  • Updates to E2E Network Slicing (refer OOFE-6)
  • Support for inter-domain route optimization (refer OOFE-4)
  • Introduction of offline trained ML model for the SON use case (refer OOFE-2 which has not changed, as well as DESE, CPS-1)
  • Configuration management using consul kv (CONSULE-1)
  • Integrate Generic Optimization Engine into OOF Helm charts (refer OOFE-5)
  • Docker image optimizations

8. References

...