Table of Contents
Summary
Primary Goals for Non-RealTime RAN Intelligent Controller (Non-RT-RIC) |
|
Overall objective for the E Release |
In the E Release we focus mainly on studying and providing some building blocks to support the emerging Non-RT-RIC Apps ("rApps") and R1 interface concepts from O-RAN. |
E Release Priorities
|
E Release Feature Scope |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Architecture for Release E
...
NONRTRIC components
...
Non-RT-RIC Control Panel
- Non-RT-RIC (Spring Cloud) Service Gateway
- Non-RT-RIC (Kong) Service Exposure Prototyping
- A1 Policy Management Service
- Enrichment Information Coordinator Service
- DMaaP/Kafka Information Producer Adapters
- Initial Non-RT-RIC App Catalogue
- SDNC A1 Policy Controller / Adapter
- Near-RT RIC A1 Simulator
- Initial K8S Helm Chart LCM Manager
- Test Framework
- "Helloworld" O-RU Fronthaul Recovery use case
- "Helloworld" O-DU Slice Assurance use case
The code base for "DE" Release is in the NONRTRIC, NONRTRIC-ControlPanel, and A1-Simulator, source repositories (Gerrit) - E Branch: 'e-release' branch)
Non-RT-RIC Control Panel
Graphical user interface to interact with the NONNon-RT-RIC services.
- View and Manage A1 policies in the RAN (near-RT-RICs)
- Graphical A1 policy creation/editing is model-driven, based on policy type’s JSON schema
- View and manage producers and jobs for the Enrichment coordinator serviceInformation Coordination Service
- Configure A1 Policy Management Service (add/remove near-rt-rics)
- Interacts with the A1-PolicyManagementService & A1-EI-Coordinator Policy Management Service & Information Coordination Service (REST NBIs) via Service Exposure gateway
- Implementation:
- Frontend: Angular framework
- Repo: portal/nonrtric-controlpanel/web-frontend
Please refer this developer guide to set up in your local environment. More information about Non-RT-RIC control panel can be found here.
Non-RT-RIC (Spring Cloud) Service Gateway
...
Spring cloud Gateway provides the library to build the API Gateway for Micro-service architecture. In Non-RT-RIC we build the basic API gateway using spring cloud gateway which then exposes two Non-RT-RIC functions; Policy Management Service & Enrichment Coordinator Service. You can add predicates through code or yaml and in Non-RT-RIC we prefer to use yaml.
NONRTRIC gateway code can be found at:
- https://gerrit.o-ran-sc.org/r/gitweb?p=portal/nonrtric-controlpanel.git;a=tree;f=nonrtric-gateway;hb=refs/heads/dawn
More information on the Spring Cloud Gateway can be found in the documentation here.
Non-RT-RIC (Kong) Service Exposure Prototyping
Support Apps to use NONRTRIC, SMO and other App interfaces
A building block for coming releases as the R1 Interface concept matures
...
Kong is a cloud-native, high performance, scalable & Open source API Gateway. Kong comes in 2 flavoursflavors
- Without Database
- With Database like PostgreSQL or Cassandra
...
Kong installation done by nonrtric script is 'Without Database'.
A1 Policy Management Service (from ONAP CCSDK –
...
Istanbul)
A1 Controller Service above A1 Adaptor Adapter that provides:
- Unified REST & DMaaP APIs for managing A1 Policies in all near-RT-RICs
- Operations:
- Query A1 Policy Types in near-RT-RICs
- Create/Query/Update/Delete A1 Policy Instances in near-RT-RICs
- Query Status for A1 Policy Instances
- Maintains (persistent) cache of RAN’s A1 Policy information
- Support RAN-wide view of A1 Policy information
- Streamline A1 traffic
- Enable (optional) re-synchronization after inconsistencies / near-RT-RIC restarts
- Added support for multiple near-RT-RICs (& multi-version support)
- Unified REST & DMaaP NBI
- Converged ONAP & O-RAN-SC A1 Adapter/Controller functions in ONAP SDNC/CCSDK
- (Optionally deploy without A1 Adaptor Adapter to connect direct to near-RT-RICs)
- Support for different Southbound connectors per near-RT-RIC - e.g. different A1 versions, different near-RT-RIC version, different A1 adapter/controllers supports different or proprietary A1 controllers/EMSs
Documentation about the service can be found at:
...
- /en/e-release/
- https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/
- A1 Policy Management Service in ONAP
Information Coordinator Service
Coordinate/Register Information Types, Producers, Consumers, and Jobs.
Coordinate/Register A1-EI Types, Producers, Consumers, and Jobs (A1 Enrichment Information Job Coordination).
- Maintains a registry of:
- A1-EI Data Information Types / schemasA1-EI
- Information Producers
- A1-EI Information ConsumersA1-EI
- Information Jobs
- A1-EI Information Query API (e.g. per producer, per consumer, per types)
- Query status of A1-EI jobsMonitors all near-RT-RICs and recovers from inconsistenciesInformation jobs
- After EIInformation-type/Producer/Consumer/Job is successfully registered delivery/flow can happen directly between Information Producers and Information Consumers
- The Information Coordinator Service natively supports the O-RAN A1 Enrichment Information (A1-EI Producers (in SMO/NONRTRIC domain) and ) interface, supporting coordination A1-EI consumers (Jobs where information (A1-EI)flow from the SMO/Non-RT-RIC/rApps to near-RT-RICs in RAN domain)Being extended to coordinate non-A1 Enrichment Information exchange between NONRTRIC Appsover the A1 interface.
Documentation about the service can be found at:
- https://docs.o-ran-sc.org/projects/o-ran-sc-nonrtric/en/dawn/nonrtric/en/e-release/
DMaaP/Kafka Information Producer Adapters
Configurable mediators to take information from DMaaP (& Kafka) and present it as a coordinated Information Producer
Two alternative implementations to allow Information Consumers to consume DMaaP or Kafka events as coordinated Information Jobs.
These configurable adapters/mediators act producers of Information Coordinator Service (ICS) jobs by polling topics in DMaaP Message Router (MR) or Kafka and pushing the messages to a consumer.
- A version implemented in Java (Spring) - Supporting DMaaP and Kafka mediation:
- A version implemented in Go - Supporting DMaaP mediation:
(Initial) Non-RT-RIC APP catalog
Register for NONRTRIC APPs
- APPs can be registered / queried
- Limited functionality/integration for now
- A building block for coming releases as the R-APP concept matures
- https://docs.o-ran-sc.org/projects/o-ran-sc-nonrtric/en/
...
A1
...
Policy Controller /
...
Adapter (from ONAP CCSDK –
...
Istanbul)
...
Mediation point for A1 interface termination in SMO/NONRTRIC
- Implemented as CCSDK OSGI Feature/Bundles
- A1 REST southbound
- RESTCONF Northbound
- NETCONF YANG > RESTCONF adapter
- Mapping logic / Provider
- Can be included in an any controller based on ONAP CCSDK
- OSC Dawn will continue to support both a dedicated A1-controller persona (NONRTRIC) and an SDNC/SDNR persona (IT/DEP, OAM/SMO)
Documentation about the adaptor adapter / controller can be found at:
Documentation about the service can be found at:
- https://docs.o-ran-sc.org/projects/o-ran-sc-nonrnonrtric/en/e-release/
- https://docs.onap.org/projects/onap-ccsdk-orantric/en/dawn/latest/
- CCSDK A1 Adapter for A1 Policies in ONAP
Near-RT-RIC Simulator
...
Stateful A1 test stub
- Used to create multiple stateful A1 providers (simulated near-rt-rics)
- Supports A1-Policy (A1-P) and A1-Enrichment Information (A1-EnrichmentInformationEI)
- Implemented as a Python application
- Swagger-based northbound interface, so easy to change the A1 profile exposed (e.g. A1 version, A1 Policy Types, A1-E1 EI consumers, etc)
- All A1-AP versions supported
Documentation about the simulator can be found at:
Initial K8S Helm Chart LCM Manager
...
A building block for coming releases as the R-APP rApp concept matures
- Interfaces that accepts Non-RT-RIC App µServices Helm Charts
- Support basic LCM operations
- Onboard, Start, Stop, Modify, Monitor
- Initial version co-developed with v. similar functions in ONAP
- Limited functionality/integration for now
...
Use Cases
"Helloworld" O-RU Fronthaul Recovery use case
A very simplified closed-loop rApp use case to re-establish front-haul connections between O-DUs and O-RUs if they fail. Not intended to to be 'real-world'
Information about the use case can be found at:
- Release DE: Simple script for O-RU & O-DU use caseFronthaul Recovery usecase
Code for the use case can be found at:
"Helloworld" O-DU Slice Assurance use case
A very simplified closed-loop rApp use case to re-prioritize a RAN slice's radio resource allocation priority if sufficient throughput cannot be maintained. Not intended to to be 'real-world'
Information about the use case can be found at:
Code for the use case can be found at:
- https://gerrit.o-ran-sc.org/r/gitweb?p=nonrtric.git;a=tree;f=test/usecases/oruclosedlooprecoveryodusliceassurance;hb=refs/heads/dawne-release