Skip to content

Releases: usnistgov/O-RAN-Testbed-Automation

v1.4.1

22 May 17:12
8bafe16
Compare
Choose a tag to compare

Changelog for v1.4.1

  • Fixed handling of invalid KPI metrics (e.g., RSRP and RSSI are now logged as empty cells in KPI_Metrics.csv when NaN).
  • Changed FlexRIC KPM monitor xApp sample-filtering based on invalid RSRP measurements toggleable (default: disabled).
  • Fixed Near/Non-RT RICs from accessing ric-dep if either is already running upon installation.
  • Improved robustness of O-RAN SC Near-RT RIC's E2 simulator installation and run scripts.
  • Updated documentation of both Near-RT RICs to include notes about the supported metrics.
  • Improved logging when interacting with testbed components (e.g., UE IDs are identified when echoing status).
  • Updated all software dependency commit hashes to the latest versions.
  • Updated srsRAN_Project configurations to align with the latest software version.
  • Updated FlexRIC KPM monitoring xApp patches to the latest FlexRIC version's syntax and formatting.
  • Cleaned up unused patch files in OpenAirInterface_Testbed.
  • Adjusted NIST software disclaimers for consistency and correctness.
  • Additional minor improvements to documentation, diagrams, and source code.

Full Changelog: v1.4.0...v1.4.1

v1.4.0

01 May 15:23
0c6eca7
Compare
Choose a tag to compare

Changelog for v1.4.0

OpenAirInterface-based Components

  • Scalability improvements: Grafana dashboard panels now request only their own data via optional URI parameters.
    • from=<start_epoch>: The starting epoch timestamp (ms) of the data being requested.
    • to=<end_epoch>: The ending epoch timestamp (ms) of the data being requested.
    • filter=<metric1,metric2,…>: List of columns (metric names) to include in the output response.
  • Added units to the CSV column headers in KPM Monitor-to-CSV xApp.
  • Added KPM Monitor-to-InfluxDB xApp that writes to InfluxDB v2 rather than to CSV.
  • Fixed OpenAirInterface calculation of RSRP, N_RSRP_MEAS (set in OAI based on RSRP reset), RSSI, and RSRQ.
  • Added new radio-layer metrics:
    • Block error rates (BLER) uplink/downlink.
    • Modulation and coding scheme indexes (MCS) uplink/downlink.
    • MAC SDU error rates uplink/downlink (calculated with OAI patch).
    • MAC SDU retransmission rates uplink/downlink (calculated with OAI patch).
  • Updated Grafana dashboard layout and design to reflect the changes listed above.
  • Patched type printing across all Mosaic5G FlexRIC C xApps.
  • Added ability to simulate UE traffic with input args: UE identifier, bandwidth, and flood duration.

O-RAN SC-based Components

  • Extended supplemental features from Near-RT RIC to Non-RT RIC (e.g., Cilium, Hubble UI, and Wireshark logging functionalities).
  • Added script to install just A1 simulators to simulate Near-RT RIC behavior across six RICs of varying A1 versions.
  • Fixed bug where Non-RT RIC tests would fail after uninstalling and reinstalling the Non-RT RIC.
  • Improved robustness of RIC installers and updated their documentation.
  • Removed the control panel's dependence on the Non-RT RIC for installation modularity.
  • Corrected dependencies for backward compatibility with O-RAN SC J-Release.

Additional Changes

  • Fixed Open5GS WebUI script so that Grafana and WebUI ports do not collide and can run simultaneously.
  • Fixed the permissions of files across the automation tool (755 → 644).
  • Updated commit hashes, screenshots, diagrams, and documentation.

Full Changelog: v1.3.0...v1.4.0

v1.3.2

09 Apr 22:46
b194916
Compare
Choose a tag to compare

Changelog for v1.3.2

  • Near-RT RIC: Added scripts to migrate cluster from Flannel to Cilium, and added Cilium Hubble logging/visualization.
  • Upgraded RIC dependencies: Kubernetes to 1.32.X, Kubernetes CNI to 1.5.X, Helm to 3.17.X, and Docker to 28.0.X.
  • Open5GS: Added unregister_all_subscribers.sh to simplify clearing the subscriber database.
  • Open5GS: Added new parameters to options.yaml:
    • Customizing the UE-to-UPF tunnel subnet IPs.
    • Support for 6-digit PLMNs instead of just 5-digit values.
    • Exposing the AMF over hostname instead of 127.0.0.5.
    • Toggling Security Edge Protection Proxies (SEPP1 & SEPP2).
  • Fixed User Equipment stop script logic when specifying individual UE IDs.
  • Added "Documentation" section to the main directory that lists the link to each README.md file.
  • Added diagram of supported/not supported component connectivity to main README.md.
  • Cleaned up documentation, installation scripts, and configuration generation.
  • Fixed issue #1: Inaccessible database to Kubernetes nodes when hostname contains capital letters. Also made InfluxDB installation optional.

OpenAirInterface Testbed Changelog

  • FlexRIC: Added Grafana dashboard user interface to visualize xApp KPI metrics, and updated documentation with instructions.
    • Created another KPI monitor xApp that directs metrics to logs/KPI_Metrics.csv rather than printing to the console.
    • Patched KPI monitor to run indefinitely rather than stopping after 10 seconds.
    • Added some testing KPI metrics to OAI, FlexRIC, and the dashboard.
  • Added support for multiple UEs connecting to gNB simultaneously sending data and metrics over E2.
    • Each UE is given its own network namespace similar to how SRS software supports multiple UEs.
  • Added User Equipment additional scripts to open a UE shell and simulate UE traffic using iperf.
  • To stop all testbed components gracefully, added an on-exit listener to run.sh script.
  • Included documentation to enable AVX2 instruction set for OpenAirInterface installation.
    • Adds full support for Ubuntu 20.04 as well as Linux Mint 20, 21, and 22.
  • Added toggleable CLEAN_INSTALL options at the beginning of install scripts.
  • Updated documentation with the changes listed above.

Full Changelog: v1.3.1...v1.3.2

v1.3.1

22 Mar 16:52
d11aaf3
Compare
Choose a tag to compare

Changelog for v1.3.1

  • Fixed configuration files of Open5GS, srsRAN gNodeB, and OpenAirInterface components.
  • Added enforcement to use GCC 13 for Open5GS, srsRAN_Project, and srsRAN_4G.
    • Enabled Ubuntu 20.04 machines to use the latest srsRAN_Project updates.
  • Added full_uninstall.sh scripts to each testbed software component.
  • Patched OpenAirInterface and FlexRIC to support RSRP for KPI monitor xApp.
  • Cleaned up code, configs, and minimized usage of sudo.
  • Revised presentation/documentation.
    • Added overview of supported testbed open-source components.
    • Improved descriptions of OpenAirInterface with FlexRIC deployment scenario.
    • Diagrams and images now inherit dark/light mode of the host system.

Full Changelog: v1.3.0...v1.3.1

v1.3.0

14 Mar 21:31
630c2f2
Compare
Choose a tag to compare

Changelog for v1.3.0

  • Added support for OpenAirInterface Testbed with FlexRIC (see subsection).
  • Fixed all xApps that read from InfluxDB and fixed KPI monitor's writing to InfluxDB.
    • Patched Anomaly Detection and Quality of Experience Predictor xApps to use InfluxDB version 2.X syntax instead of InfluxDB 1.X syntax.
  • Patched KPI monitor to fix crashing when connecting to srsRAN DU, srsRAN CU-CP, and O-RAN SC E2 simulator.
  • Improved InfluxDB client shell script usage and robustness when querying KPI metrics.
  • Updated xApp installers to use docker image registry 127.0.0.1:80 instead of example.com:80.
  • Added xApp uninstallation script: additional_scripts/uninstall_an_xapp.sh.
  • Added O-RAN SC Near-RT RIC uninstallation script: additional_scripts/full_uninstall.sh.
  • Updated srsRAN_Project config to use the correct number of threads when $(nproc) ≤ 3.
  • Updated commit hashes, and updated documentation to reflect the changes listed above.

Added support for OpenAirInterface Testbed with FlexRIC

  • Added additional testbed installation under the OpenAirInterface_Testbed directory. Includes the following components:
    • Install scripts for OpenAirInterface gNodeB and OpenAirInterface 5G User Equipment.
    • Install scripts for Mosaic5G's Near-RT RIC (FlexRIC) and its respective xApps.
    • Symbolic link to pre-existing 5G_Core_Network directory.
  • Operation of this testbed is the same as the NIST TN 2311 blueprint, e.g., same interfaces: full_install.sh, generate_configurations.sh, run.sh, is_running.sh, stop.sh. For more information see the OpenAirInterface_Testbed directory.

Full Changelog: v1.2.0...v1.3.0

v1.2.4

28 Feb 22:33
f7eb238
Compare
Choose a tag to compare

Changelog for v1.2.4

  • Fixed race condition by waiting for the AMF to register NFs in run.sh to ensure UE: RRC NR reconfiguration successful.
  • Added patches to e2sim improving its reliability and enabling support for KPI metrics to be sent to the KPI monitor.
  • Mounted kpm_sim logs/e2sim_output.txt to oransim Docker container to dynamically update logs even when a shell isn't linked to it.
  • Added InfluxDB token generation, stored in influxdb_auth_token.json.
  • Added graceful stopping of all components (rather than just the UE) upon exiting run.sh.
  • Added dynamic clearing of 5G core logs before starting new instance of each core component.
  • Fixed RAN Function ID synchronization in the Near-RT RIC for KPI monitoring.
  • Decreased InfluxDB size from 50Gi to 2Gi.
  • Fixed permissions of shell script files for consistency.

Full Changelog: v1.2.3...v1.2.4

v1.2.3

20 Feb 23:04
0e16106
Compare
Choose a tag to compare

Changelog for v1.2.3

  • Upgraded Near-RT RIC to the K-Release. To continue using the J-Release, rename commit_hashes_j_release.json to commit_hashes.json.
  • Added optional installation scripts for 8 additional Near-RT RIC xApps in directory additional_scripts:
    • xApp Key Performance Indicator (KPI) monitoring (kpimon) installation script (install_xapp_kpi_monitor.sh).
    • xApp Anamoly Detection (ad) installation script (install_xapp_anomaly_detection.sh).
    • xApp 5G Cell Anamoly Detection (ad-cell) installation script (install_xapp_5g_cell_anomaly_detection.sh).
    • xApp Quality of Experience (QoE) Predictor (qp) installation script (install_xapp_qoe_predictor.sh).
    • xApp RIC Control (rc) installation script (install_xapp_ric_control.sh).
    • xApp Traffic Steering (trafficxapp) installation script (install_xapp_traffic_steering.sh).
    • xApp Hello World Python (hw-python) installation script (install_xapp_hw-python.sh).
    • xApp Hello World Rust (hw-rust) installation script (install_xapp_hw-rust.sh).
  • Improvements to E2 Simulator and additional controller scripts for testing xApps over E2.
  • Added InfluxDB pod used by KPI Monitor to write metrics to the influxdb/ directory.
  • Added Kubernetes Redis database client script to interact with the database.
  • Added Kong database bootstrapping to Non-RT RIC pod wait script.
  • Updated software dependency commit hashes, migrating srsRAN_Project configs to latest format.
  • Cleaned up code, updated documentation, and improved consistency across scripts.

Full Changelog: v1.2.2...v1.2.3

v1.2.2

03 Feb 23:04
938c4fc
Compare
Choose a tag to compare

Changelog for v1.2.2

  • Improved support for SELinux environments by using dynamic DNS addresses from /run/systemd/resolve/resolv.conf instead of 8.8.8.8.
  • Migrated from docker.io to docker.ce for compatibility (docker.io can be re-enabled with USE_DOCKER_CE=0 in install_k8s_and_helm.sh).
  • Restored download_dependency_repositories.bat and added Windows batch file generator for the script.
  • Improved Open5GS configuration robustness, and tweaked configuration files of UE and gNodeB.
  • Added suppression of interactive prompts when installing testbed on Vagrant and VMware.
  • Fixed commit hash update script and updated software hashes.
  • Cleaned up optional unused components.
  • Improved documentation clarity, and consistency across scripts.

Full Changelog: v1.2.1...v1.2.2

v1.2.1

22 Jan 21:44
1796a0e
Compare
Choose a tag to compare

Changelog for v1.2.1

  • Non-RT RIC uses Release K. Added configuration to all sample rApps syncing their URIs with Policy Management Service (PMS) and Information Coordination Service (ICS) Producer/Consumer API addresses.
  • Enabled Kong and Service Manager deployment with added Kong storage class initialization of schema/configs.
  • Added configuration of Control Panel to enable A1-Policy and A1-EI management functionality.
  • Added flags -y, --yes, -n, and --no to all user prompts for simpler script automation.
  • Updated repository commit hashes to use the latest software versions.
  • Improved documentation clarity, and consistency across scripts.

Full Changelog: v1.2.0...v1.2.1

v1.2.0

14 Jan 20:45
8a50825
Compare
Choose a tag to compare

Changelog for v1.2.0

  • Dependencies are now pinned in commit_hashes.json so that all git clone commands only depend on stable and tested commits.
  • Script download_dependency_repositories.sh now also uses git_clone.sh for pinned dependencies.
  • 5G_Core configuration file generators refactored, now using yq for YAML modifications.
  • Updated srsRAN_Project and srsRAN_4G configurations to support the latest releases.
  • Added sample rApp CSAR generation script in Non-RT RIC installation.
  • Improved documentation clarity, and consistency across scripts.

Full Changelog: v1.1.0...v1.2.0