Release E
- 1 Summary
- 2 Architecture for Release E
- 3 NONRTRIC components
- 3.1 Non-RT-RIC Control Panel
- 3.2 Non-RT-RIC (Spring Cloud) Service Gateway
- 3.3 Non-RT-RIC (Kong) Service Exposure Prototyping
- 3.4 A1 Policy Management Service (from ONAP CCSDK – Istanbul)
- 3.5 Information Coordinator Service
- 3.6 DMaaP/Kafka Information Producer Adapters
- 3.7 (Initial) Non-RT-RIC APP catalog
- 3.8 A1 Policy Controller / Adapter (from ONAP CCSDK – Istanbul)
- 3.9 Near-RT-RIC Simulator
- 3.10 Initial K8S Helm Chart LCM Manager
- 3.11 NONRTRIC Test Platform
- 4 Use Cases
Summary
Primary Goals for Non-RealTime RAN Intelligent Controller (Non-RT-RIC)
|
Overall objective for the E ReleaseIn 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
Information Coordinator Service
DMaaP/Kafka Information Producer Adapters
Initial Non-RT-RIC App Catalogue
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 "E" Release is in the NONRTRIC, NONRTRIC-ControlPanel, and A1-Simulator, source repositories (Gerrit: 'e-release' branch)
Non-RT-RIC Control Panel
Graphical user interface to interact with the Non-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 Information Coordination Service
Configure A1 Policy Management Service (add/remove near-rt-rics)
Interacts with the A1-Policy Management Service & Information Coordination Service (REST NBIs) via Service Exposure gateway
Implementation:
Frontend: Angular framework
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
Support Apps to use A1 Services (May be replaced by Service Exposure function in later releases)
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:
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
Support dynamic registration and exposure of service interfaces to Non-RT-RIC applications (& NONRTRIC Control panel)
Extends a static gateway function specifically for NONRTRIC Control panel
Initial version based on Kong gateway function
Initial exposure candidates include A1 (NONRTRIC) services & O1 (OAM/SMO) services
Kong is a cloud-native, high performance, scalable & Open source API Gateway. Kong comes in 2 flavors
Without Database
With Database like PostgreSQL or Cassandra
The NONRTRIC Kubernetes deployment will deploy Kong if the installKong flag is set to true. During uninstallation of nonrtric components it will also remove Kong if it's deployed by nonrtric script.
If the ingress enabled flag is set to true then it will create the ingress objects for A1 Policy & Enrichment Service so the Kong gateway (acts as ingress controller) will expose these functions.
NONRTRIC Kubernetes deployment can be found at:
More information on Kong API Gateway can be found a,
https://docs.konghq.com/gateway-oss/
https://github.com/Kong/charts/blob/main/charts/kong/README.md
NOTE:
Kong installation done by nonrtric script is 'Without Database'.
A1 Policy Management Service (from ONAP CCSDK – Istanbul)
A1 Controller Service above A1 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 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:
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:
Information Types / schemas
Information Producers
Information Consumers
Information Jobs
Information Query API (e.g. per producer, per consumer, per types)
Query status of Information jobs
After Information-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) interface, supporting coordination A1-EI Jobs where information (A1-EI)flow from the SMO/Non-RT-RIC/rApps to near-RT-RICs over the A1 interface.
Documentation about the service can be found at:
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/e-release/
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
Documentation about the adapter / controller can be found at:
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-EI)
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-EI consumers, etc)
All A1-AP versions supported
Documentation about the simulator can be found at:
Initial K8S Helm Chart LCM Manager
Onboard, start, stop, and modify Non-RT-RIC App µServices as Helm Charts
A building block for coming releases as the 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
NONRTRIC Test Platform
Information about the test platform can be found at:
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:
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: