Page Status: Copied from Guilin-R7 - Aug-24-2020
...
Drawio | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
2. API definitions
OOF provides the following interfaces:
Interface Name | Interface Definition | Interface Capabilities | API Spec (Swagger) |
---|---|---|---|
OOFE-1 |
| 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-2 | PCI/ANR Optimization | Enables PCI/ANR optimization API for SON. | https://docs.onap.org/projects/onap-optf-osdf/en/latest/sections/offeredapis.html |
OOFE-3 | Schedule Optimization | a 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-4 | Route 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-5 | OOF Model Administrator | This 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 | This interface enables slice selection recommendations (NST, NSI, NSSI, Slice Profiles), as well as slice termination recommendations (NSI, NSSI). | 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 Name | Purpose Reason For Use | API Spec (Swagger) |
---|---|---|
SDNCE-1 | For PCI/ANR optimization, OOF Retrieves the Cellsite inventory details from the configdb API, which is hosted as part of the SDNC/R component | https://github.com/onap-oof-pci-poc/sdnc/blob/master/ConfigDB/swagger-json/swagger.json |
AAIE-1 | OOF 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-1 | OOF interfaces with MUSIC to persist service state. | |
SDCE-1 | OOF interfaces with SDC to retrieve slice template information | https://docs.onap.org/projects/onap-sdc/en/latest/offeredapis.html |
DESE-1 | OOF interfaces with DES to retrieve the PM/KPI data of the cells for ML-based decision making. | DES Swagger reference |
CONSULE-1 | OOF interfaces with consul for configuration management | https://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
- 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 a 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-Configuration management using consul kv (CONSULE-1)
- Integrate Generic Optimization Engine into OOF Helm charts (refer OOFE-5)
8. References
...