Skip to main content
Version: v6.0.0 [Falcon]

Blueprints with 7.2 Split and Benetel RU

These blueprints run an OAI gNB over the O-RAN 7.2 fronthaul split with a Benetel RU, and the Open5GS 5GC.

Check the RU​

Before installing a blueprint, confirm that the RU discovery service reports the Benetel RU with brc extract infra. You should observe output like the following:

user@ctrl:~$ brc extract infra
╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ Trirematics cluster information │
├────────────────────────────────────────────┬────────────────────────────────────────────────────────────┬─────────────────────────────────┬────────────────────────────────────┤
│ CLUSTER │ SYSTEM │ COMPUTE │ RADIO │
├─────────┬────────────┬──────┬──────────────┼─────────┬────────────────────┬────────┬────────────────────┼─────────┬────────┬─────┬────────┼─────────────────┬───────────┬──────┤
│ REGION │ ROLE │ NAME │ IP │ CHANNEL │ OS │ KERNEL │ RUNTIME │ ARCH │ VENDOR │ CPU │ MEM │ DEVICES │ TERMINALS │ SYNC │
├─────────┼────────────┼──────┼──────────────┼─────────┼────────────────────┼────────┼────────────────────┼─────────┼────────┼─────┼────────┼─────────────────┼───────────┼──────┤
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ │ worker │ wrk3 │ 192.168.1.13 │ stable │ Ubuntu 22.04.5 LTS │ 6.8.0 │ containerd://2.2.1 │ amd64 │ AMD │ 31 │ 60 GiB │ UHD-B200: 1 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ UHD-N300: 2 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
├─────────┼────────────┼──────┼──────────────┼─────────┼────────────────────┼────────┼────────────────────┼─────────┼────────┼─────┼────────┼─────────────────┼───────────┼──────┤
│ │ control-pl │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ │ ane │ ctrl │ 192.168.1.10 │ stable │ Ubuntu 22.04.5 LTS │ 6.8.0 │ containerd://2.2.1 │ amd64 │ AMD │ 31 │ 60 GiB │ UHD-N300: 2 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
├─────────┼────────────┼──────┼──────────────┼─────────┼────────────────────┼────────┼────────────────────┼─────────┼────────┼─────┼────────┼─────────────────┼───────────┼──────┤
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ AMR-SDR50: 1 │ │ │
│ │ worker │ wrk1 │ 192.168.1.11 │ stable │ Ubuntu 22.04.5 LTS │ 5.15.0 │ containerd://2.2.1 │ amd64 │ AMD │ 15 │ 40 GiB │ UHD-N300: 2 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ - BENETEL RU: 1 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ - LITEON RU: 1 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
├─────────┼────────────┼──────┼──────────────┼─────────┼────────────────────┼────────┼────────────────────┼─────────┼────────┼─────┼────────┼─────────────────┼───────────┼──────┤
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ AMR-SDR50: 2 │ │ │
│ │ worker │ wrk2 │ 192.168.1.12 │ stable │ Ubuntu 22.04.5 LTS │ 5.15.0 │ containerd://2.2.3 │ amd64 │ AMD │ 15 │ 36 GiB │ UHD-N300: 2 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ - BENETEL RU: 1 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ - LITEON RU: 1 │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
╰─────────┴────────────┴──────┴──────────────┴─────────┴────────────────────┴────────┴────────────────────┴─────────┴────────┴─────┴────────┴─────────────────┴───────────┴──────╯
╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ Trirematics cluster energy information │
├──────────────────────────────┬───────────────────────────────────────────────────────────────────────────────┤
│ NODE │ CPU │
├──────┬────────┬──────────────┼─────────────┬──────────┬──────────────┬───────────┬────────────┬──────┬───────┤
│ NAME │ STATUS │ ACTIVITY │ ALLOCATABLE │ CAPACITY │ USAGE (CORE) │ USAGE (%) │ PSTATE │ MODE │ TURBO │
├──────┼────────┼──────────────┼─────────────┼──────────┼──────────────┼───────────┼────────────┼──────┼───────┤
│ wrk3 │ True │ Low Activity │ 31 │ 32 │ 5.447169 │ 17.571512 │ No support │ N/A │ N/A │
├──────┼────────┼──────────────┼─────────────┼──────────┼──────────────┼───────────┼────────────┼──────┼───────┤
│ ctrl │ True │ Low Activity │ 31 │ 32 │ 0.5034173 │ 1.6239269 │ No support │ N/A │ N/A │
├──────┼────────┼──────────────┼─────────────┼──────────┼──────────────┼───────────┼────────────┼──────┼───────┤
│ wrk1 │ True │ Low Activity │ 15 │ 16 │ 0.18456681 │ 1.2304454 │ No support │ N/A │ N/A │
├──────┼────────┼──────────────┼─────────────┼──────────┼──────────────┼───────────┼────────────┼──────┼───────┤
│ wrk2 │ True │ Low Activity │ 15 │ 16 │ 0.077129684 │ 0.5141979 │ No support │ N/A │ N/A │
╰──────┴────────┴──────────────┴─────────────┴──────────┴──────────────┴───────────┴────────────┴──────┴───────╯
tip

If you don't see any RU listed under DEVICES, refer to the troubleshooting guide.

In this example the Benetel RU is detected on two worker nodes. Athena assigns a discovered RU to each access section, so the blueprints do not name the node.

Deploy a blueprint from the control-plane node with brc install network <file>.yaml. It should finish without errors and print the Kubernetes resources it created. Follow the deployment with brc observe and wait until every Element other than the UE is in the 1/1 Y state.

warning

These blueprints contain only the Network. Add a UE with the UE blueprints, using the preferred-access and target-cores given in the last line of each file.

Monolithic gNB​

A monolithic OAI gNB on one Benetel RU over the O-RAN 7.2 fronthaul, with the Open5GS 5GC.

Source: networks/oai/benetel/01-monolithic.yaml

01-monolithic.yaml
01-monolithic.yaml
apiVersion: athena.trirematics.io/v1
kind: Network
metadata:
name: oai-benetel
namespace: trirematics
spec:
slices:
- plmn: "00101"
dnn: internet
network-mode: IPv4
service-type: 1
differentiator: 0x000000
ipv4-range: 12.1.1.0/24
ipv6-range: 2001:db8:1::/64
access:
- name: gnb
stack: 5g-sa
model: oai-ran/monolithic-gnb-ru
identity:
an-id: 30
tracking-area: 1
radio:
device: oran-7.2
antenna:
formation: 4x4
annotations:
extras.t9s.io/ru-vendor: 'benetel'
cells:
- band: n77
arfcn: 650016 # Center Freq. at 3750MHz
bandwidth: 100MHz
subcarrier-spacing: 30kHz
tdd-config:
period: 5000
dl-slots: 7
dl-symbols: 6
ul-slots: 2
ul-symbols: 4
core-networks:
- core.oai-benetel
core:
- name: core
stack: 5g-sa
model: open5gs/5gc
profiles:
- debug
identity:
region: 128
cn-group: 4
cn-id: 5
dns:
ipv4:
default: 8.8.8.8
secondary: 8.8.4.4

#--- Add a UE with terminals/quectel.yaml or terminals/external.yaml: preferred-access gnb.oai-benetel, target-cores core.oai-benetel ---#

CU-DU split​

A OAI CU and DU in one access section, the DU on the Benetel RU.

Source: networks/oai/benetel/02-cu-du.yaml

02-cu-du.yaml
02-cu-du.yaml
apiVersion: athena.trirematics.io/v1
kind: Network
metadata:
name: oai-benetel
namespace: trirematics
spec:
slices:
- plmn: "00101"
dnn: internet
network-mode: IPv4
service-type: 1
differentiator: 0x000000
ipv4-range: 12.1.1.0/24
ipv6-range: 2001:db8:1::/64
access:
- name: cu-du
stack: 5g-sa
model: oai-ran/cu-du-ru
identity:
an-id: 30
tracking-area: 1
radio:
device: oran-7.2
antenna:
formation: 4x4
annotations:
extras.t9s.io/ru-vendor: 'benetel'
cells:
- band: n77
arfcn: 650016 # Center Freq. at 3750MHz
bandwidth: 100MHz
subcarrier-spacing: 30kHz
tdd-config:
period: 5000
dl-slots: 7
dl-symbols: 6
ul-slots: 2
ul-symbols: 4
core-networks:
- core.oai-benetel
core:
- name: core
stack: 5g-sa
model: open5gs/5gc
#model: oai-cn/minimal
profiles:
- debug
identity:
region: 0
cn-group: 4
cn-id: 5
dns:
ipv4:
default: 8.8.8.8
secondary: 8.8.4.4

#--- Add a UE with terminals/quectel.yaml or terminals/external.yaml: preferred-access cu-du.oai-benetel, target-cores core.oai-benetel ---#

CU-DU split with FlexRIC​

The CU-DU network with FlexRIC as the Near-RT RIC.

Source: networks/oai/benetel/03-cu-du-oran.yaml

03-cu-du-oran.yaml
03-cu-du-oran.yaml
apiVersion: athena.trirematics.io/v1
kind: Network
metadata:
name: oai-benetel
namespace: trirematics
spec:
slices:
- plmn: "00101"
dnn: internet
network-mode: IPv4
service-type: 1
differentiator: 0x000000
ipv4-range: 12.1.1.0/24
ipv6-range: 2001:db8:1::/64
access:
- name: cu-du
stack: 5g-sa
model: oai-ran/cu-du-ru
identity:
an-id: 30
tracking-area: 1
radio:
device: oran-7.2
antenna:
formation: 4x4
annotations:
extras.t9s.io/ru-vendor: 'benetel'
cells:
- band: n77
arfcn: 650016 # Center Freq. at 3750MHz
bandwidth: 100MHz
subcarrier-spacing: 30kHz
tdd-config:
period: 5000
dl-slots: 7
dl-symbols: 6
ul-slots: 2
ul-symbols: 4
core-networks:
- core.oai-benetel
controller: flexric.oai-benetel
core:
- name: core
stack: 5g-sa
model: open5gs/5gc
#model: oai-cn/minimal
profiles:
- debug
identity:
region: 0
cn-group: 4
cn-id: 5
edge:
- name: flexric
stack: 5g-sa
model: mosaic5g/flexric
dns:
ipv4:
default: 8.8.8.8
secondary: 8.8.4.4

#--- Add a UE with terminals/quectel.yaml or terminals/external.yaml: preferred-access cu-du.oai-benetel, target-cores core.oai-benetel ---#

Monolithic gNB with FlexRIC and a monitoring xApp​

A monolithic gNB with FlexRIC and the C monitoring xApp.

Source: networks/oai/benetel/04-monolithic-oran-xapp.yaml

04-monolithic-oran-xapp.yaml
04-monolithic-oran-xapp.yaml
apiVersion: athena.trirematics.io/v1
kind: Network
metadata:
name: oai-benetel
namespace: trirematics
spec:
slices:
- plmn: "00101"
dnn: internet
network-mode: IPv4
service-type: 1
differentiator: 0x000000
ipv4-range: 12.1.1.0/24
ipv6-range: 2001:db8:1::/64
access:
- name: gnb
stack: 5g-sa
model: oai-ran/monolithic-gnb-ru
identity:
an-id: 30
tracking-area: 1
radio:
device: oran-7.2
antenna:
formation: 4x4
annotations:
extras.t9s.io/ru-vendor: 'benetel'
cells:
- band: n77
arfcn: 650016 # Center Freq. at 3750MHz
bandwidth: 100MHz
subcarrier-spacing: 30kHz
tdd-config:
period: 5000
dl-slots: 7
dl-symbols: 6
ul-slots: 2
ul-symbols: 4
core-networks:
- core.oai-benetel
controller: flexric.oai-benetel
core:
- name: core
stack: 5g-sa
model: open5gs/5gc
profiles:
- debug
identity:
region: 0
cn-group: 4
cn-id: 5
edge:
- name: flexric
stack: 5g-sa
model: mosaic5g/flexric
- name: monitoring
stack: 5g-sa
model: mosaic5g/monitoring-c
profiles:
- rlc-sm
- pdcp-sm
- mac-sm
- gtp-sm
- kpm-sm
- database
annotations:
extras.t9s.io/scenario: 'benetel-monolithic'

dns:
ipv4:
default: 8.8.8.8
secondary: 8.8.4.4

#--- Add a UE with terminals/quectel.yaml or terminals/external.yaml: preferred-access gnb.oai-benetel, target-cores core.oai-benetel ---#