# <center>O-RAN Open-Source Implementations</center> # OAIC (In-Use) https://openaicellular.github.io/oaic/index.html https://www.openaicellular.org/ Publications: https://www.openaicellular.org/publications Events: https://events.vtsociety.org/vtc2023-spring/tutorials-available/t6-open-ai-cellular-oaic-an-open-source-platform-for-prototyping-and-testing-ai-enhanced-o-ran-enabling-6g-wireless-research/ # SD-RAN (Recommend to try) SD-RAN is ONF’s new exemplar platform for 3GPP compliant software-defined RAN that is consistent with the O-RAN architecture. https://docs.sd-ran.org/sdran-1.0/introduction.html Installation Guide: https://docs.sd-ran.org/master/riab_install_index.html - Repositories https://github.com/onosproject https://github.com/onosproject/sdran-in-a-box https://github.com/sdran/ran-simulator ## My Deployment ### On local VM (Failed) ```bash NOTES: This is the instruction to configure your eNodeB to work with ONF M-CORD. You can find architecture illustration in assets/mcord-architecture.png. 1. Configure eNodeB with the correct MME information. export MMEIP=[node IP] export MMEPORT="36412" You can change MMEPORT by overriding "Values.config.mme.s1ap.sctp_port_external". 2. Make sure UE's SIM card information is configured in hss.yaml. 3. Attach UE to OMEC. pod/cassandra-0 condition met pod/hss-0 condition met pod/pcrf-0 condition met pod/spgwc-0 condition met error: timed out waiting for the condition on pods/mme-0 mk/epc.mk:11: recipe for target '/home/cz/sdran-in-a-box//workspace/milestones/omec' failed make: *** [/home/cz/sdran-in-a-box//workspace/milestones/omec] Error 1 ``` ### On Azure VM (test-rsm-dataplane Failed) ```bash ... NOTES: This is the instruction to configure your eNodeB to work with ONF M-CORD. You can find architecture illustration in assets/mcord-architecture.png. 1. Configure eNodeB with the correct MME information. export MMEIP=[node IP] export MMEPORT="36412" You can change MMEPORT by overriding "Values.config.mme.s1ap.sctp_port_external". 2. Make sure UE's SIM card information is configured in hss.yaml. 3. Attach UE to OMEC. pod/cassandra-0 condition met pod/hss-0 condition met pod/mme-0 condition met pod/pcrf-0 condition met pod/spgwc-0 condition met ... ``` Problem: (Same as this link, unsolved) https://groups.google.com/a/opennetworking.org/g/sdran-dev/c/P1jbzkXqlSw # FlexRIC https://gitlab.eurecom.fr/mosaic5g/flexric This repository contains O-RAN Alliance compliant E2 node Agent emulators, a NearRT-RIC, xApps written in C/C++ and Python, as well as patches to 5G/4G OpenAirInterface and 4G srsRAN. It implements various service models (NG/GTP, PDCP, RLC, MAC, KPM v2, SLICE, TC) and a built-in emulation. Depending on the service model, different encoding schemes have been developed (ASN.1, flatbuffer, plain). The indication data received in the xApp uses as persistence mechanism an sqlite3 database for enabling offline processing applications (e.g., ML/AI). https://docs.srsran.com/projects/project/en/latest/tutorials/source/flexric/source/index.html This application note shows how to use the E2 interface exposed by the srsRAN Project gNodeB. For this purpose, we use third-party [O-RAN Alliance](https://www.o-ran.org/) compliant NearRT-RIC and xApp provided in [FlexRIC](https://gitlab.eurecom.fr/mosaic5g/flexric) framework. ![](https://hackmd.io/_uploads/BykjtLdA3.png) # O-RAN SC Project https://wiki.o-ran-sc.org/display/ORAN Latest release including software, documentation, and help: https://wiki.o-ran-sc.org/display/REL/H+Release - Non-RT RIC: https://gerrit.o-ran-sc.org/r/admin/repos/nonrtric,general - Near-RT RIC: https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=78217449 - OAM: - [OAM master](https://gerrit.o-ran-sc.org/r/admin/repos/oam) - [OAM Controller features master](https://gerrit.onap.org/r/admin/repos/ccsdk/features) - [ONAP VES Collector master](https://gerrit.onap.org/r/admin/repos/dcaegen2/collectors/ves) Demo: https://wiki.o-ran-sc.org/display/RICP/2022-05-24+Release+F - Slide: Demo near-RT RIC – release ”F” • Ubuntu 20.04 • Prepare kubernetes, helm and base chart • Deploy near-RT RIC • https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=1179659 -> Introduction and guides -> Generally the latest instructions • Compile and connect O-RAN E2 (e2-node) simulator from O-RAN SC simulator project • https://gerrit.o-ran-sc.org/r/admin/repos/sim/e2-interface • https://wiki.o-ran-sc.org/display/SIM/E2+Simulator#E2SimulatorBuildingdockerimageandrunningsimulatorinstance • Connect Nokia E2 (e2-node) simulator • Deploy dms_cli (for deploying xApps) • Compile, onboard and install hw-go xapp from O-RAN SC xApp project • https://gerrit.o-ran-sc.org/r/admin/repos/ric-app/hw-go • Demo, this slide and commands used available here: • https://wiki.o-ran-sc.org/display/RICP/2022-05-24+Release+F # srsRAN Project https://github.com/srsran/srsRAN_Project an ORAN-native CU/DU developed by [SRS](http://www.srs.io/) # Colosseum Near-Real-Time RIC https://github.com/wineslab/colosseum-near-rt-ric This is a part of the [OpenRAN Gym](https://openrangym.com/) project. It is minimal version of the O-RAN Software Community near-real-time RIC (Bronze release) adapted and extended to work on the [Colosseum](https://www.colosseum.net/) wireless network emulator.