Summary

Release I - Highlights

  • Released first version of rApp manager service
  • Started work on Service Manager service
  • Improvements in RAN PM functions for DME
  • Numerous improvements in Function Test environments
  • Improvements in stability, 3PP vulnerability, test coverage & quality
  • A1 Policy Functions now build using OpenAPI-first approach (ONAP CCSDK)
  • Continued engagement with O-RAN Alliance working groups for standardization alignment

Release I - Tasks

Count of Epics (20 issues), User Stories, Tasks, and Issues:  (455 issues)
Relevant Epics:

Gerrit / Source Code

Sonar / Test Coverage Reports

Docs

Testing

Release I - Studies


Release I - Demos


  • I-Release: Demonstration: OSC "NONRTRIC RAN PM Function - Docker compose & Scripts"
    See Video (HD), and summary for more information

  • I-Release: Demonstration: "OSC NONRTRIC rApp Manager"
    See Video (HD), Slides and summary for more information

Release I - Container images

Release I - Deployment Instructions

Latest Architecture (Release I)

NONRTRIC Components (Release I)

NONRTRIC Control Panel (Release I)

Graphical user interface to interact with the Non-RT-RIC services.

With the OSC NONRTRIC Control Panel you can: 

 Implementation & Documentation:

NONRTRIC (Spring Cloud) Service Gateway (Release I)

Enable Apps and the Control Panel to use A1 Services

Implementation & Documentation:

NONRTRIC (Kong) Service API Gateway (Release I)

Support Apps to use NONRTRIC, SMO and other App interfaces through a gateway

A1 Policy Management Service (from ONAP CCSDK – Montreal)

A1 Policy Controller Service above A1 Adapter that provides:

Repository and documentation about the service can be found at:

rApp Manager (Release I)

A service to support onboarding, instantiation and life-cycle management of composite rApps.

Repository and documentation about the service can be found at:

Information Coordinator Service (ICS) (Release I)

A service that coordinates Information Jobs, producers and consumers. Also acts as an A1 Enrichment Information Controller.

ICS is a data subscription service which decouples data producers from data consumers. A data consumer can create a data subscription (Information Job) without any knowledge of its data producers (one subscription may involve several data producers). A data producer has the ability to produce one or several types of data (Information Type). One type of data can be produced by zero to many producers.


A data consumer can be an R-App using R1 APIs, or a near-RT RIC using the A1-EI API (where the subscribed data is more specifically called "Enrichment Information").
A data consumer can have several active data subscriptions (Information Job). One Information Job consists of the type of data to produce and additional parameters, which may be different for different data types. These parameters is not defined or limited by this service and may for instance include:

Repository and documentation about the service can be found at:

DMaaP/Kafka Information Producer Adapters (Release I)

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.

Note: DMaaP is now deprecated in ONAP, but this function is intended a generic data job/stream → DME producer adapter function.

A version implemented in Java (Spring) - Supporting filtered DMaaP and Kafka mediation:

A version implemented in Go - Supporting DMaaP mediation:

CAPIF Service Registry (Release I)

Implementing a CAPIF service for Service registration, discovery, administration (SME)

Repository and documentation about the service can be found at:

NONRTRIC rApp catalog (Release I)

Register for NONRTRIC APPs (rApps)

Repository and documentation about the service can be found at:

A1 Policy Controller / Adapter (from ONAP CCSDK – Montreal)

Optional mediation point for A1 Policy interface termination in SMO/NONRTRIC

Documentation about the adapter / controller can be found at:

A1 Interface Simulator (Release I)

Stateful extensible A1 test stub

Repository and documentation about the service can be found at:

RAN Performance Monitoring Functions (File-based PM) (Release I)

Functions to collect/parse/filter/store/forward file-based & event-based RAN PM data

Repository and documentation about the service can be found at:

RAN PM: PM Data File Collector

RAN PM: PM File Converter 

RAN PM: PM Producer

RAN PM: InfluxDB PM Logger

Authentication Support (JWT Token Fetch) (Release I)

A side-car utility service to takes care of authentication token fetching from Keycloak

Repository and documentation about the service can be found at:

Initial K8S Helm Chart LCM Manager (Release I)

Onboard, start, stop, and modify Non-RT-RIC App µServices as Helm Charts

A building block for coming releases as the rApp concept matures

Repository and documentation about the service can be found at:

NONRTRIC Test Platform (Release I)

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:

Repository and documentation about the service 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:

Repository and documentation about the service can be found at:

"Healthcheck" use case

A very simplified rApp use case to check if A1 Policy connection to a near-rt-ric exists & is healthy. Not intended to to be 'real-world'