Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

Primary Goals:  Expand the community on open source xApps for O-RAN SC. 

 Update and maintain the existing xApps to latest releases (currently I Release).

Enhance the set of open source xApps in support of the RSAC use cases (traffic steering, network slicing) and add new xApps.

New RUST framework based xApp hw-rust will be added in I release. 

New xApp to support E2SM CCC will be added in this release

I release plan: 

  • New HW-Rust xApp to support RUST framework.
  • New ad-cell xApp to detect cell level anomaly.
  • New ccc xApp to support E2SM CCC.

Jira: Count of Epics, User Stories, Tasks, and Issues:  Total (10)

Completed Epics & Story:

RICAPP-232 - hw-rust xApp for i-release

RICAPP-230 - QP xApp (I-Release)

RICAPP-229 - Anomaly Detection xApp (I-Release)

RICAPP-224 - F1AP gnbDuConfigurationUpdate parser

RICAPP-223 - Creating UE/CELL metrics hashmap based upon the KPIS supported by each E2 node

RICAPP-222 - ASN decoders for kpm ran function description and asn encoders for action definition format1 and format3

Completed Tasks

RICAPP-231 - Fix issue of mismatch data type when AD writes data to InfluxDB

RICAPP-228 - Update RMR version and xapp frame to latest version

RICAPP-227 - dynamically adding fields to influxdb and changed the UE KPI parse logic as per indications coming from VIAVI RIC-Test

RICAPP-226 - Update KPM model to latest one

I release highlights/accomplishments:

  • HW-Rust xApp is added to support the new xApp framework
  • AD xApp is upgraded with the python version 3.11 and RMR version 4.9.0 
  • QP xApp is also upgraded with the python version 3.11 and RMR version 4.9.0 
  • KPIMON-Go functionality upgrade. (F1AP gnbDuConfigurationUpdate parser, E2SM KPM RAN function description parser, Automatic creation of action definition format1 & format3 array,  UE KPI parse logic as per indications from RIC-Test tool)
  • KPIMON-Go upgraded to latest RMR version and xApp framework.

I release source code, container images and deployment instructions

The list of container images for the  release (link).

Code Coverage Reports : Latest reports can be found at the following Link: Projects - O-RAN Software Community (sonarcloud.io).


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

Original primary goals based on contributions from Nokia, Samsung, Capgemini, Alexandre Huff (UTFPR), GS Lab and Abhijit G:

Contributions related to E2 interfaces

  1. RIC-993 (CG): Near-RT RIC conflict management

  2. RIC-933 (CG) : Adding support for CU/DU in E2T/E2M/RNIB

  3. RIC-967 (CG) xApp-facing interface for subscription delete required (added on 2023-08-23)
  4. RIC-994 (S): Support for E2APv3.0

  5. RIC-995 (S): Support for RIC Query

  6. RIC-996 (S) Support for Subscription modifications (dhiraj interested as reviewer)

  7. RIC-387 = ~RIC-383 (S): Support for E2 reset from RIC to RAN (completes also RIC-383) (prio1) (Dhiraj interested as reviewer, but we had earlier discussion on this) -

  8. RIC-997 (N): Handling of RIC Error indication _during_ E2 setup

  9. RIC-963 (GS) modify src code to be more lenient in ordering of IEs in ASN.1

Other contributions

  1. RIC-998 (S): K8S operators for deploying/undeploying xApps

  2. RIC-999=~RIC-972 (S): A1 alignment with A1AP (still under investigation. Minimum is using correct URL)

  3. RIC-954 (S): DMS Rest API support for deleting/undeploy xApps (DMS REST is 2nd ifc addressing same space as dmscli)

  4. Already late in H: RIC-985 (UTFPR) IPv6 support for RMR 

  5. RIC-705 (H) update xappframework for c++ to change in xApp registration
  6. RIC-1000 (R): Support for only-IPv6 in RIC-internal interfaces

  7. RIC-1004 (AG): Xapp Rust Framework enhancement after initial basic Xapp Framework Support
  8. RIC-1027 (S) K8S operators for deploying/undeploying Near-RT RIC
  9. RIC-950 implement test cases for xapp-frame-cpp
  10. RIC-853 Implement subscription delete in Bouncer and E2Sim
  11. RIC-1018 A single helm chart for RIC platform deployment

Support for Integration project's pairwise-testing goals

  1. ODU-high with near-RT RIC: moving from RIC stub to E2 messages with actual RIC
  2. RIC xApp and near-RT RIC: using KPIMon/bouncer xApp or maybe CCC xApp. Maybe xApps can also be used to demonstrate conflict detection
  3. non-RT RIC and near-RT RIC: providing standalone A1 mediator for CI testing of non-RT RIC.

Link to planned Jira work items: link

Achieved I release highlights = high-level release notes (2023-06-20) below (note that the release image list is here: link)

  • E2 Support for disaggregated RAN, i.e., CU-UP, CU-CP, and DU as identified with gNB ID in E2Setup. E2 nodes identified in RNIB, e.g., like this: gnbd_999_999_AAAAAAAA_BBBBBBBBB (longest case)
  • E2 subscription manager supports config parameter to ignore ordering of certain IEs if peer E2 node does not comply with spec.
  • In addition to supporting deployment of RIC platform with existing "install <recipe>" script we now also support (un)deployment via (1) umbrella helm chart and (2) via Kubernetes operator.
  • Kubernetes operator for deploying xApps as alternative to dms_cli
  • Enhancements in xApp framework for RUST to get closer to feature parity with xApp frameworks for other languages.

The I release fixes the following two security issues: RIC-991: "CVE-2023-40997 RMR: Crashes caused by improperly formatted packets", and RIC-989: "CVE-2023-40998 RMR: Negative Packet Size Causes Crash". Additionally we fixed 9 bugs (link) and did 3 small implementation tasks  (link)

Filled in end-of-release checklist: Release criteria checklist - Release I

Status 2023-12-05: From the 20 epics planned (link) we implemented 7 (link). 13 items have been moved out of the I release, e.g, because of implementation delays (link). Incomplete items: 0 (link). Additionally we fixed 9 bugs (link) and did 3 small implementation tasks  (link)


I release source code, container images and deployment instructions

The list of container images for the  release (link). A demo video for the I release deployment is available at the top of the demo page and shows

  • how to deploy the near-RT RIC platform,
  • compile connect the E2 (e2 node) simulator from the OSC simulator project and
  • compile the hw-go xapp from the xapp project and use the dms_cli to deploy it and check the E2 subscriptions the xApp created.

Code coverage: Code coverage reports (current coverage and a list of components that still needs to be set up Jenkins job for auto-generation of the reports as part of CI)

Mapping of new features to O-RAN Spec

Compliance with the O-RAN specification is described in the section "External interfaces" in Introduction and guides. This release advanced specification compliance in A1 (RIC-999 URL change, but still bug for maintenance release: RIC-1031. We now also support RIC-933 disaggregated RAN (CU-CP/CU-UP/DU) in E2 connections.

...