Tutorials
Step-by-step guides from your first gNB to advanced multi-component deployments. Each tutorial has a single goal: follow it in order and you will have a working system by the end.
The groups below run roughly from least to most infrastructure. Pick the group that matches what you want to do.
- Load testing: validate your build, no radio hardware needed.
- Using srsUE: add a software UE over ZeroMQ.
- Connecting a COTS UE: move to a real device with a USRP.
See the Migration Guide for instructions on porting your existing srsRAN Project modifications to OCUDU.
How the tutorials fit together
Start with a first network, then branch into whichever direction fits your goal.
First network
No RF hardware required. Validate your build, then bring up a complete software network over ZeroMQ.
Load testing
Verify your OCUDU installation and explore the configuration without radio hardware or a physical UE.
Using srsUE
Build a complete open-source split 8 5G network using srsUE as the UE and Open5GS as the core.
Using the OAI UE
Build an end-to-end open-source 5G TDD network using the OpenAirInterface UE over ZeroMQ, with an OCUDU gNB and Open5GS core.
UEs and radios
Connect a real device, a UE simulator, or an O-RAN radio unit. Requires a USRP RF front-end (or an O-RAN RU for the radio-unit tutorial).
Connecting a COTS UE
Connect a commercial 5G device to OCUDU using a test SIM and a USRP RF front-end.
Connecting an Amarisoft UE
Connect an Amarisoft UE simulator to OCUDU for multi-UE testing scenarios.
Connecting an O-RAN RU
Connect an O-RAN-compliant radio unit to OCUDU over the split 7.2 fronthaul interface.
O-RAN
Split the stack across O-RAN interfaces and integrate a Near-RT RIC. The CU/DU split runs on any supported RF or test setup; the RIC tutorial requires a Near-RT RIC.
Splitting CU and DU
Deploy OCUDU with the CU and DU running as separate processes, connected over the F1 interface.
Integrating a Near-RT RIC
Use the E2 interface to integrate OCUDU with a Near-RT RIC and deploy an xApp.
Features
Enable and test specific gNB features. Handover needs a COTS UE and a USRP; NTN needs an Amarisoft UE.
Testing handover
Configure and test intra-gNB handover between two OCUDU cells with a COTS UE.
Enabling NTN
Enable NTN mode in OCUDU for satellite deployments, covering GEO and LEO scenarios with SIB19 ephemeris and timing support.
Performance
Tune throughput and latency with kernel-bypass I/O, hardware offload, and host tuning. Some tutorials need specific hardware: a DPDK-capable NIC, a USRP, or an Intel accelerator.
Configuring DPDK
Configure DPDK kernel-bypass packet I/O for high-throughput Open Fronthaul connectivity with OCUDU.
Configuring DPDK with USRP
Configure DPDK kernel-bypass packet I/O for use with a USRP RF front-end and OCUDU.
Accelerating with BBDEV
Offload LDPC encoding and decoding to an Intel ACC100 or vRAN Boost (ACC200/VRB1) accelerator via DPDK BBDEV.
Tuning performance
Tune CPU isolation, IRQ affinity, and kernel settings on a Linux host for real-time OCUDU performance.
Deployment and tools
Containerised deployment and supporting tooling. The Kubernetes tutorial needs a cluster.
Running on Kubernetes
Deploy OCUDU as Kubernetes pods in a split 7.2 configuration, with containerised CU, DU, and fronthaul components.
Integrating MATLAB
Integrate MATLAB with OCUDU for signal processing, analysis, and algorithm prototyping.