The O-RAN Software Community (SC) Documentation.

Welcome to O-RAN SC F Release Documentation Home

O-RAN Alliance (https://www.o-ran.org/) members and contributors have committed to evolving Radio Access Networks (RAN) around the world. Future RANs will be built on a foundation of virtualized network elements, white-box hardware and standardized interfaces that fully embrace O-RAN’s core principles of intelligence and openness. An ecosystem of innovative new products is already emerging that will form the underpinnings of the multi-vendor, interoperable, autonomous RAN, envisioned by many in the past, but only now enabled by the global industry-wide vision, commitment and leadership of O-RAN Alliance members and contributors.

O-RAN SC is partnering with the O-RAN Alliance and Linux Foundation to support the software development for an open RAN solution that is available to everyone. The community will align with the architecture and specifications that are created in the O-RAN Alliance working groups to create a working software solution to enable an open and intelligent 5G RAN.

New featuresin H release:

Near-Real-time RIC X-APPs (RICAPP)

RICAPP H Release Feature Scope:

  1. New HW-Rust xApp to support RUST framework.

  2. New ad-cell xApp to detect cell level anomaly.

  3. RC xApp - GRPC interface support on RC xApp

  4. Bouncer xApp - RIC Benchmarking new features addition.

  5. KPIMON-GO xApp – New Version

Near-Real-time RAN Intelligent Controller Platform (E2 Interface) (RICPLT)

RICPLT H Release Feature Scope:

  1. E2 reset (from E2 node to RIC), E2 subscription delete required, A1 policy status notifications

  2. Preparation of feature for I release, e.g., include xApps in subscription delete required decision

For the H release of the near-RT RIC we do only limited integration testing: only the use cases: deploy RIC, deploy xApp, make E2 connection, get list of A1 policies has been tested.

Non-Real-time RIC (A1 Interface) (NONRTRIC)

NONRTRIC H Release Functions:

  1. Consolidated & Improved RAN PM data exposure in new repo for RAN PM functions

    Adds 4 new services for RAN PM processing Lots of work on deployment scripts/charts, testing, CI, and documentation

  2. (R1) Service Exposure & Management (SME)

    CAPIF Aligned Service Registry & Discovery Continued work of Service execution platform extensions (K8s, Istio, Keycloak, OPA, Gateway) to enable and enforce service isolation & exposure Controlled access & exposure of service to/from rApps

  3. (R1) Data Management & Exposure (DME)

    Small updates to Information Coordination Service – studying alignment with R1 proposals File-based PM data → Kafka/InfluxDB/Minio Including parsing, filtering & delivery ref. PM Data exposure above

  4. rApp Management

    Started work on a new rApp Manager functions – more in next release LCM for rApps: Building on ONAP “Automation Composition” model & platform to implement rApp use cases “KServe Participant” and “A1 Policy Participant” Overlap with Service Exposure work to examine role of an rApp Manager to support controlled access to and exposure of Services Overlap with Data Exposure work to examine role of an rApp Manager to support controlled access to and exposure of Data types

  5. Continued A1-Policy & A1-Enrichment-Information evolution (& R1-A1)

    A1-Policy work in ONAP (continues in ONAP London) - candidate for R1-A1(P) A1-EI management as part of DME - candidate for how to include A1-EI in R1-DME ref. DME work above

  6. Demonstrated ASD-based CNF LCM

    ONAP SO CNFM in standalone mode

  7. Sample use cases (rApps)

    Requirements Drivers for rApp/R1 development

  8. Testing, Maintenance & Housekeeping

    3PP update – esp. Springboot 3 & JDK 17 Function Test & Integration Test environment, lots of new test cases, and new ONAP L & OSC H test profiles Continue integration, deployment & configuration of SMO/Non-RT-RIC related functions & usecases in OSC Integration environment. Project coordination, Documentation, Delivery, Reporting, Cross-project alignment, Community demos, O-RAN Standardization support, etc.

OAM (O1 Interface)

OAM H Release Feature Scope:

  1. Updates according to O-RAN Operations and Maintenance Interface Specification 8.0 (O-RAN.WG10.O1-Interface.0-v08.00) October 2022

    Please see H-Release for further details

  2. Hardening the solution by introducing a “SMO-gateway”.

  3. Add a FlowManagement Component.

O-RAN Central Unit (OCU)

OCU H Release Feature Scope:

  1. Radisys Commercial CU is being used as a test fixture for E2E testing

  2. This is containerized CU image with following

    Release version 2.5.3 NG interface with SOCKET mode and veth type F1 interface with SOCKET mode and veth type E2 interface support Software Crypto

O-DU High

O-DU High H Release Feature Scope:

  1. Odu High interfaces alignment to the latest specification & New design with multi-scheduler algorithm support

    Status: Completed Epic: https://jira.o-ran-sc.org/browse/ODUHIGH-488

  2. Integration of ODU-High with intel L1

    Status: Spread over multiple releases, to be continued in the next release Epic: https://jira.o-ran-sc.org/browse/ODUHIGH-475

  3. Inter CU Handover

    Status: Completed Epic: https://jira.o-ran-sc.org/browse/ODUHIGH-463

  4. E2 interface enhancement

    Status: Completed Epic: https://jira.o-ran-sc.org/browse/ODUHIGH-510

O-DU Low

O-DU Low H Release Feature Scope:

The O-DU Low H release is the same as the F Release and G Release that added support for Massive MIMO, URLLC and it is based on the commercial FlexRan 21.11 release.

The O-DU Low H, G and F Release code is an Intel contribution in collaboration with Tieto Poland for the source code releases in the O-RAN gerrit and for the binary blobs contributed via GitHub.

For the documentation preparation of the H, F and G release Intel worked with collaboration from Fransiscus Bimo and Professor Ray-Guang Cheng from National Taiwan University of Science and Technology (NTUST).

The H, G and F release are being used for end to end testing and it is based on the E maintenance release that was used for the 2021 November US O-RAN Plugfest and tested in conjuction with 2 stack partners and 2 different Test equipment vendors. The Front Haul Interface was also tested for compliance using Keysight’s Front Haul Test equipment.

Container images and deployment instructions are to be provided later

Simulators (SIM)

SIM H Release Feature Scope:

  1. Updated simulated O-RU YANG models according to latest release (March 2023) OpenFronthaul Management Plane specification

  2. Implement the Monitoring NETCONF connectivity feature for the O-RUs, according to chapter 6.7 (Monitoring NETCONF connectivity) in O-RAN.WG4.MP.0-R003-v11.00

  3. Created a mechanism to locally build simulated O-DU with 3GPP YANG models

  4. No new contributions for the E2 Simulator

Infrastructure (INF)

INF H Release Feature Scope:

  1. Enable the 2 AIO severs with additional worker nodes deployment scenario

  2. Major components upgrade

  3. Implement the O2 interface as the MVP

Integration and Test (INT)

INT H Release Feature Scope:

  1. Convert existing RICPLT/RICAPP Robot test cases in it/test repo to be executed with XTesting, which should automate the deployment of RIC platform, onboarding an xApp, and execute test cases all together.

  2. Wind River may contribute XTesting test cases on the o2 repo

  3. Specific to the Asia Pacific Open Lab:

    Completing E2 setup procedure between OSC Near-RT RIC and OAI gNb. Incorporate E2AP v2 in OAI CU for connection between OAI CU and OSC Near-RT RIC. Verify data exchange between netconf and ves between OAI CU and OSC SMO. Testing C-plane in F1 interface connection between OAI CU and OSC DU.

Service Management and Orchestration (SMO)

SMO H Release Feature Scope:

  1. Automated API Conformance testing

  2. Alignment with O-RAN O2 DMS ETSI NFV Profile.

  3. Refresh SDNR image to the latest on SMO O1 project.

AI/ML Framework

AI/ML Framework H Feature Scope:

  1. Diversify training data source for Training host

    Obtaining training data from DME in Non-RT RIC Creating Feature groups with data source and feature information

  2. Kserve adapter

    Deploy and manage AI models in Near-RT RIC/Non-RT RIC Integrate Inference host with O-Cloud( RICDMS ) and Management Functions of RIC.

  3. Training pipeline Enhancement

    Provide sample pipelines by default

  4. AIMLFW feature enhancements

    Options for edit, retrain and delete training jobs

Please find some guidance here on the content of O-RAN SC documentation.

O-RAN Architecture Overview

O-RAN SC architecture follows O-RAN Alliance defined architecture.

_images/o-ran-architecture.png

Figure 1: O-RAN architecture overview

In the O-RAN architecture, the radio side includes Near-RT RIC, O-CU-CP, O-CU-UP, O-DU, and O-RU. The management side includes Service Management and Orchestration Framework that contains a Non-RT-RIC function.

Components Definition

For the purposes of the present document, the terms and definitions given in 3GPP TR 21.905 [1] and the following apply. A term defined in the present document takes precedence over the definition of the same term, if any, in 3GPP TR 21.905 [1].

near-RT RIC: O-RAN near-real-time RAN Intelligent Controller: a logical function that enables near-real-time control and optimization of O-RAN elements and resources via fine-grained data collection and actions over E2 interface.

non-RT RIC: O-RAN non-real-time RAN Intelligent Controller: a logical function that enables non-real-time control and optimization of RAN elements and resources, AI/ML workflow including model training and updates, and policy-based guidance of applications/features in near-RT RIC.

NMS: A Network Management System

O-CU: O-RAN Central Unit: a logical node hosting RRC, SDAP and PDCP protocols

O-CU-CP: O-RAN Central Unit – Control Plane: a logical node hosting the RRC and the control plane part of the PDCP protocol

O-CU-UP: O-RAN Central Unit – User Plane: a logical node hosting the user plane part of the PDCP protocol and the SDAP protocol

O-DU: O-RAN Distributed Unit: a logical node hosting RLC/MAC/High-PHY layers based on a lower layer functional split.

O-RU: O-RAN Radio Unit: a logical node hosting Low-PHY layer and RF processing based on a lower layer functional split. This is similar to 3GPP’s “TRP” or “RRH” but more specific in including the Low-PHY layer (FFT/iFFT, PRACH extraction).

O1: Interface between management entities in Service Management and Orchestration Framework and O-RAN managed elements, for operation and management, by which FCAPS management, Software management, File management shall be achieved.

O1*: Interface between Service Management and Orchestration Framework and Infrastructure Management Framework supporting O-RAN virtual network functions.

xAPP: Independent software plug-in to the Near-RT RIC platform to provide functional extensibility to the RAN by third parties.

O-RAN SC license

The O-RAN Software initiatives are focused on aligning a software reference implementation with the O-RAN Alliance’s open architecture and specifications. The aim is to achieve a solution that can be utilised to unify and accelerate the evolution and deployment in the RAN. The community has been setup to promote open source but also to address wireless technology support for essential patents. more infomation can be found at https://www.o-ran.org/software.

Apache 2.0 License

The O-RAN Software Community is a Linux Foundation project supported and funded by O-RAN to lead the implementation of the O-RAN specifications in Open Source. The project leverages the Apache Version 2 License.

O-RAN Software License

The O-RAN Specification Code Project is an O-RAN Alliance project. Its objective is to allow contributions that will acknowledge essential patents. The project leverages the O-RAN Software License.

Creative Commons Attribution 4.0 International License

All documentation in O-RAN SC will be received and made available by the Specification,Code Project under the Creative Commons Attribution 4.0 International License.

Release-Notes

This document provides the release notes for O-RAN SC.

Version history

Date

Ver.

Author

Comment

2019-11-31

Amber

CMCC

Amber Release

2020-06-21

Bronze

CMCC

Bronze Release

2020-12-21

Cherry

CMCC

Cherry Release

2021-07-15

D

CMCC

D Release

2021-12-15

E

CMCC

E Release

2022-7-06

F

CMCC

F Release

2022-12-16

G

CMCC

G Release

2023-7-04

H

CMCC

H Release

Release Summary

RAN Intelligent Controller Applications (RICAPP) features

GS-lite, which is an open-source, real-time, low-latency, high-throughput stream processing engine. It is a fork of cask/tigon (https://github.com/cdapio/tigon) maintained to serve the needs of RIC applications (currently MC xApp).

The HelloWorld(HW) xAPP repository contains open-source code for a prototype xAPP for near real-time RAN Intelligent Controller.

The KPI Mon xAPP, which supports full closed loop control for CuCpResourceStatusReport from multiple gNBs and stores the metrics in Redis DB.

QoE Predictor (QP) is an Xapp in the Traffic Steering O-RAN use case.

The Acumos xAPP adapter, which contains the code needed to use an existing Acumos microservice as an O-RAN xAPP, by providing “glue” that listens and speaks RMR protocol and translates these into calls to the Acumos microservice, which is co-deployed in the same pod as the adapter.

The MC xAPP, which supports calculation of a number of metrics and KPIs based on X2 messages received from UEEC.

Anomaly Detection (AD) is an xApp in the Traffic Steering O-RAN use case.

This repository contains open-source code for a prototype HW-go xAPP for near real-time RAN Intelligent Controller which makes use of go Xapp Framework.

Near Realtime RAN Intelligent Controller (RIC) features

The RAN Intelligent Controller (RIC) Platform’s A1 Mediator component listens for policy type and policy instance requests sent via HTTP (the “northbound” interface), and publishes those requests to running xApps via RMR messages (the “southbound” interface).

Asn1-documents, which contains a description of the E2 used in the near-RT RIC implementation under O-RAN-SC.

DBAAS, which is the needed elements to deploy database as a service (Dbaas) to kubernetes. Dbaas service is realized with a single container running Redis database. The database is configured to be non-persistent and non-redundant.

Golang, which is an implementation of a structured logging library with Mapped Diagnostics Context (MDC) support.

Jaegeradapter, which contains jaeger configuration files. This first version only supports configuration for a jaeger-all-in-one deployment.

LOG, which is a thread-safe logging C API library with Mapped Diagnostics Context (MDC) support.

PYLOG, which implements a structured logging library with Mapped Diagnostic Context (MDC).

Shared Data Layer, which provides a lightweight, high-speed interface for accessing shared data storage. The purpose is to enable utilizing clients to become stateless, conforming with, e.g., the requirements of the fifth generation mobile networks.

Shared Data Layer, which provides a lightweight, high-speed interface for accessing shared data storage. The purpose is to enable utilizing clients to become stateless, conforming with, e.g., the requirements of the fifth generation mobile networks.

Streaming Protobufs, which provides a Protobuf schema for selected set of X2 Application Protocol messages.

Tracelibcpp library, which implements a function for creating a configured tracer instance. It hides the underlaying tracer implementation from the application. The library currently supports only Jaeger (https://www.jaegertracing.io/) C++ client (https://github.com/jaegertracing/jaeger-client-cpp) tracer implementation.

Tracelibgo library, which implements a function for creating a configured tracer instance. It hides the underlaying tracer implementation from the application. The trace library currently supports only Jaeger (https://www.jaegertracing.io/) golang client (https://github.com/jaegertracing/jaeger-client-go) tracer implementation.

The VESPA manager ,which uses the VES Agent (https://github.com/nokia/ONAP-VESPA) to adapt near-RT RIC internal statistics’ collection using Prometheus (xApps and platform containers) to ONAP’s VES (VNF event streaming).

xapp-frame is a simple framework for rapid development of RIC xapps, and supports various services essential for RIC xapps such as RESTful APIs, RMR (RIC Message Routing), database backend services and watching and populating config-map changes in K8S environment

Non-RealTime RAN Intelligent Controller (NONRTRIC) features

In Bronze release, Non-RT RIC containes Policy Agent, Control Panel and A1 Simulator.

Operations and Maintenance (OAM) features

OAM which provides reference implementation according to the O-RAN OAM (WG1) documents.

The O-RAN SC RIC Dashboard provides administrative and operator functions for a radio access network (RAN) controller. The web app is built as a single-page app using an Angular (version 8) front end and a Java (version 11) Spring-Boot (version 2.1) back end.

O-RAN Central Unit (OCU) features

5G NR which is a RAN Software Reference Design for a 5G protocol stack

O-RAN Distributed Unit High Layers (ODUHIGH) features

O-DU Layer 2, which is O-DU layer intilaizations and exchange of F1 Setup Request, F1 Setup Response, GNB DU Config Update and GNB DU Config Update ACK between the ODU and CU STUB.

O-RAN Distributed Unit Low Layers (ODULOW) features

O-DU Layer 1, which is the O-RAN FHI Lib built on top of DPDK to perform U-plane and C-plane functions according to the ORAN Fronthaul Interface specification between O-DU and O-RU. S-Plane support requires PTP for Linux version 2.0 or later The management plane is outside of the scope of this library implementation.

Infrastructure (INF) features

RTP O2 repository implements a reference O2 IMS and DMS service to expose O2 interface to SMO.

Realtime Platform, which implements a real time platform to deploy the O-CU and O-DU components.

Integration and Testing (INT) features

IT-DEP hosts deployment and integration artifacts such as scripts, Helm charts, and other files used for deploying O-RAN SC software.

IT-DEV which integrates artifacts for developing Near Realtime RAN Intelligent Controller applications (xApps).

IT-TEST, which contains: Test automation scripts written using the robot frameworkDeployment scripts for a dev-test 1-node Kubernetes cluster. A functional simulator for the E2 protocol that acts as gNB used to test the RIC. A workload generator that is used to benchmark the RIC

IT-DEV includes the initial commit of the OTF platform code. Applications include otf-frontend, otf-service-api, otf-camunda, and several virtual test head microservices (ping, ssh, robot, ric). In addition setup documentation and installation guides are included to build docker containers and helm charts for deployment.

Service Management and Orchestration (SMO) features

SMO O1 repository is for the implementation, installation, and use of the O1 interface of SMO. It uses the Software Defined Netowrk (SDN) Controller for Radio (SDNR) to implement the O1 interface. The software comes in the form of Docker containers that are setup using docker-compose.

The O1/VES interface supports the monitoring side of SMO. The diagram below shows how the Network Elements interact with the O1/VES interface in the SMO.

SMO-O2 repository is for the implementation, installation, and use of the O2 interface of SMO. It uses the OpenStack Tacker to implement the O2 interface.

O-RAN SC Projects

RAN Intelligent Controller Applications (RICAPP)

RICAPP includes open source sample xAPPs and platform applications that can we used for integration, testing, and demonstrations.

More detailed function documentation can be found as follow:

Near Realtime RAN Intelligent Controller (RIC)

This project a initial RIC Platform to support xAPPs with limited support for O1, A1, and E2 interfaces.

More detailed function documentation can be found as follow:

Non-RealTime RAN Intelligent Controller (NONRTRIC)

Non-RT RIC focus on feature functionality of A1-interface (consumer and provider), and closed-loop use cases. The Non-RT RIC project will also work together with the OAM project to align activities on a case-by-case base for O1 interfaces. Project should focus on use cases supported in ONAP. The work should be sponsored in O-RAN and initial code contributions in O-RAN SC. Interoperability with ONAP should be aligned between the standards and will follow initial contributions in this project.

More detailed function documentation can be found as follow:

Operations and Maintenance (OAM)

The O-RAN-SC-OAM project provides reference implementation according to the O-RAN OAM (WG1) documents. In addition we provide a common MnS-Consumer for development and module test purposes. The assumption is that the projects for the ManagedElements can concentrate on the more important user-plane.

More detailed function documentation can be found as follow:

O-RAN Central Unit (OCU)

The OCU is target an initial software deliverable with limited functionality. Focus on a basic E2 interface to enable initial integration testing between RIC and OCU.

More detailed function documentation can be found as follow:

O-RAN Distributed Unit High Layers (ODUHIGH)

Focus on initial L2 functional blocks based on seed code contributions.

More detailed function documentation can be found as follow:

O-RAN Distributed Unit Low Layers (ODULOW)

Focus on initial L1 functional blocks based on seed code contributions.

More detailed function documentation can be found as follow:

Infrastructure (INF)

Initial building blocks for infrastructure to run O-RAN NF components.

More detailed function documentation can be found as follow:

Simulations(SIM)

Initial simulators used for testing O-RAN NF interfaces.

More detailed function documentation can be found as follow:

Integration and Testing (INT)

The integration and test effort will focus on testing the requirements documented in each release. This will focus on end to end test and use case testing.

INF Testing shall primarily be done on the Akraino-REC (Radio Edge Cloud) blueprint. While Non-RT RIC and O1 interface testing will primarily use ONAP components.

More detailed function documentation can be found as follow:

Service Managerment and Orgestration(SMO)

The SMO project implements the O1 and the O1/VES interface. The former is used for configuration and management of RAN Network Functions (NF) while the latter collects all the events that are reported by different RAN NFs.

More detailed function documentation can be found as follow:

AI/ML Framework

the AI/ML Framework is stand alone installation (separated from existing platform deployment) and initial AIML workflow modules.

More detailed function documentation can be found as follow:

O-RAN Software Community API Document

This is API Document of O-RAN Software Community, pleaes find more details in the following section.