CI testcases with OCUDU
Added two testcases with OCUDU split8 gnb
This commit is contained in:
@@ -0,0 +1,109 @@
|
|||||||
|
<!-- SPDX-License-Identifier: LicenseRef-CSSL-1.0 -->
|
||||||
|
|
||||||
|
<testCaseList>
|
||||||
|
<htmlTabRef>ocudu-5gnr-tdd-1x1</htmlTabRef>
|
||||||
|
<htmlTabName>OCUDU gnb split8 with OAI UE</htmlTabName>
|
||||||
|
<htmlTabIcon>wrench</htmlTabIcon>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Pull_Local_Registry</class>
|
||||||
|
<desc>Pull Images from Local Registry</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<images>oai-gnb-asan oai-nr-ue-asan</images>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Create_Workspace</class>
|
||||||
|
<desc>Create new Workspace</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Deploy_Object</class>
|
||||||
|
<desc>Deploy OAI 5G CoreNetwork</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<yaml_path>ci-scripts/yaml_files/5g_zmq_radio_1x1_ocudu</yaml_path>
|
||||||
|
<services>mysql oai-amf oai-smf oai-upf oai-ext-dn</services>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Deploy_Object</class>
|
||||||
|
<desc>Deploy OCUDU Split 8 gNB + OAI UE</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<yaml_path>ci-scripts/yaml_files/5g_zmq_radio_1x1_ocudu</yaml_path>
|
||||||
|
<services>ocudu-gnb oai-nr-ue</services>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Attach_UE</class>
|
||||||
|
<desc>Attach OAI UE (Wait for IP)</desc>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Ping</class>
|
||||||
|
<desc>Ping ext-dn from NR-UE</desc>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ext_dn</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<ping_args>-c 20 -i 0.25</ping_args>
|
||||||
|
<ping_packetloss_threshold>5</ping_packetloss_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Ping</class>
|
||||||
|
<desc>Ping NR-UE from ext-dn</desc>
|
||||||
|
<id>rfsim5g_ext_dn</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ue</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<ping_args>-c 20 -i 0.25</ping_args>
|
||||||
|
<ping_packetloss_threshold>5</ping_packetloss_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Iperf</class>
|
||||||
|
<desc>Iperf (DL/3Mbps/UDP)(20 sec)</desc>
|
||||||
|
<iperf_args>-u -b 3M -t 20 -R</iperf_args>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ext_dn</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<iperf_packetloss_threshold>5</iperf_packetloss_threshold>
|
||||||
|
<iperf_bitrate_threshold>90</iperf_bitrate_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Iperf</class>
|
||||||
|
<desc>Iperf (UL/3Mbps/UDP)(20 sec)</desc>
|
||||||
|
<iperf_args>-u -b 3M -t 20</iperf_args>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ext_dn</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<iperf_packetloss_threshold>5</iperf_packetloss_threshold>
|
||||||
|
<iperf_bitrate_threshold>90</iperf_bitrate_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Undeploy_Object</class>
|
||||||
|
<always_exec>true</always_exec>
|
||||||
|
<desc>Undeploy all OAI 5G stack</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<yaml_path>ci-scripts/yaml_files/5g_zmq_radio_1x1_ocudu</yaml_path>
|
||||||
|
<analysis>
|
||||||
|
<services>oai-nr-ue</services>
|
||||||
|
</analysis>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Clean_Test_Server_Images</class>
|
||||||
|
<always_exec>true</always_exec>
|
||||||
|
<desc>Clean Test Images on Test Server</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<images>oai-gnb-asan oai-nr-ue-asan</images>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
</testCaseList>
|
||||||
@@ -0,0 +1,109 @@
|
|||||||
|
<!-- SPDX-License-Identifier: LicenseRef-CSSL-1.0 -->
|
||||||
|
|
||||||
|
<testCaseList>
|
||||||
|
<htmlTabRef>ocudu-5gnr-tdd-2x2</htmlTabRef>
|
||||||
|
<htmlTabName>OCUDU gnb split8 with OAI UE</htmlTabName>
|
||||||
|
<htmlTabIcon>wrench</htmlTabIcon>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Pull_Local_Registry</class>
|
||||||
|
<desc>Pull Images from Local Registry</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<images>oai-gnb-asan oai-nr-ue-asan</images>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Create_Workspace</class>
|
||||||
|
<desc>Create new Workspace</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Deploy_Object</class>
|
||||||
|
<desc>Deploy OAI 5G CoreNetwork</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<yaml_path>ci-scripts/yaml_files/5g_zmq_radio_2x2_ocudu</yaml_path>
|
||||||
|
<services>mysql oai-amf oai-smf oai-upf oai-ext-dn</services>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Deploy_Object</class>
|
||||||
|
<desc>Deploy OCUDU Split 8 gNB + OAI UE</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<yaml_path>ci-scripts/yaml_files/5g_zmq_radio_2x2_ocudu</yaml_path>
|
||||||
|
<services>ocudu-gnb oai-nr-ue</services>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Attach_UE</class>
|
||||||
|
<desc>Attach OAI UE (Wait for IP)</desc>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Ping</class>
|
||||||
|
<desc>Ping ext-dn from NR-UE</desc>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ext_dn</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<ping_args>-c 20 -i 0.25</ping_args>
|
||||||
|
<ping_packetloss_threshold>5</ping_packetloss_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Ping</class>
|
||||||
|
<desc>Ping NR-UE from ext-dn</desc>
|
||||||
|
<id>rfsim5g_ext_dn</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ue</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<ping_args>-c 20 -i 0.25</ping_args>
|
||||||
|
<ping_packetloss_threshold>5</ping_packetloss_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Iperf</class>
|
||||||
|
<desc>Iperf (DL/10Mbps/UDP)(20 sec)</desc>
|
||||||
|
<iperf_args>-u -b 1M -t 20 -R</iperf_args>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ext_dn</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<iperf_packetloss_threshold>5</iperf_packetloss_threshold>
|
||||||
|
<iperf_bitrate_threshold>90</iperf_bitrate_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Iperf</class>
|
||||||
|
<desc>Iperf (UL/3Mbps/UDP)(20 sec)</desc>
|
||||||
|
<iperf_args>-u -b 1M -t 20</iperf_args>
|
||||||
|
<id>rfsim5g_ue</id>
|
||||||
|
<node>localhost</node>
|
||||||
|
<svr_id>rfsim5g_ext_dn</svr_id>
|
||||||
|
<svr_node>localhost</svr_node>
|
||||||
|
<iperf_packetloss_threshold>5</iperf_packetloss_threshold>
|
||||||
|
<iperf_bitrate_threshold>90</iperf_bitrate_threshold>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Undeploy_Object</class>
|
||||||
|
<always_exec>true</always_exec>
|
||||||
|
<desc>Undeploy all OAI 5G stack</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<yaml_path>ci-scripts/yaml_files/5g_zmq_radio_2x2_ocudu</yaml_path>
|
||||||
|
<analysis>
|
||||||
|
<services>oai-nr-ue</services>
|
||||||
|
</analysis>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
<testCase>
|
||||||
|
<class>Clean_Test_Server_Images</class>
|
||||||
|
<always_exec>true</always_exec>
|
||||||
|
<desc>Clean Test Images on Test Server</desc>
|
||||||
|
<node>localhost</node>
|
||||||
|
<images>oai-gnb-asan oai-nr-ue-asan</images>
|
||||||
|
</testCase>
|
||||||
|
|
||||||
|
</testCaseList>
|
||||||
@@ -0,0 +1,162 @@
|
|||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
services:
|
||||||
|
mysql:
|
||||||
|
container_name: "rfsim5g-mysql"
|
||||||
|
image: mysql:8.0
|
||||||
|
init: true
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/oai_db.sql:/docker-entrypoint-initdb.d/oai_db.sql
|
||||||
|
- ../5g_rfsimulator/mysql-healthcheck.sh:/tmp/mysql-healthcheck.sh
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Paris
|
||||||
|
- MYSQL_DATABASE=oai_db
|
||||||
|
- MYSQL_USER=test
|
||||||
|
- MYSQL_PASSWORD=test
|
||||||
|
- MYSQL_ROOT_PASSWORD=linux
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "/tmp/mysql-healthcheck.sh"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 30
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.131
|
||||||
|
oai-amf:
|
||||||
|
container_name: "rfsim5g-oai-amf"
|
||||||
|
image: oaisoftwarealliance/oai-amf:v2.1.10
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/paris
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-amf/etc/config.yaml
|
||||||
|
depends_on:
|
||||||
|
- mysql
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.132
|
||||||
|
oai-smf:
|
||||||
|
container_name: "rfsim5g-oai-smf"
|
||||||
|
image: oaisoftwarealliance/oai-smf:v2.1.10
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Paris
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-smf/etc/config.yaml
|
||||||
|
depends_on:
|
||||||
|
- oai-amf
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.133
|
||||||
|
oai-upf:
|
||||||
|
container_name: "rfsim5g-oai-upf"
|
||||||
|
image: oaisoftwarealliance/oai-upf:v2.1.10
|
||||||
|
init: true
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Paris
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-upf/etc/config.yaml
|
||||||
|
depends_on:
|
||||||
|
- oai-smf
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
- SYS_ADMIN
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
privileged: true
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.134
|
||||||
|
interface_name: eth0
|
||||||
|
traffic_net:
|
||||||
|
ipv4_address: 192.168.72.134
|
||||||
|
interface_name: eth1
|
||||||
|
oai-ext-dn:
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim5g-oai-ext-dn
|
||||||
|
image: oaisoftwarealliance/trf-gen-cn5g:focal
|
||||||
|
init: true
|
||||||
|
entrypoint: /bin/bash -c \
|
||||||
|
"iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;"\
|
||||||
|
"ip route add 12.1.1.0/24 via 192.168.72.134 dev eth0; sleep infinity"
|
||||||
|
depends_on:
|
||||||
|
- oai-upf
|
||||||
|
networks:
|
||||||
|
traffic_net:
|
||||||
|
ipv4_address: 192.168.72.135
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "ping -c 2 192.168.72.134"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
ocudu-gnb:
|
||||||
|
image: ghcr.io/bpodrygajlo/ocudu/ocudu-avx2:7cecca5
|
||||||
|
container_name: ocudu-gnb
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- SYS_NICE
|
||||||
|
depends_on:
|
||||||
|
- oai-ext-dn
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.140
|
||||||
|
volumes:
|
||||||
|
- ./ocudu.yml:/ocudu.yml
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep gnb_split_8"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
command: ./usr/local/bin/gnb_split_8 -c /ocudu.yml
|
||||||
|
|
||||||
|
oai-nr-ue:
|
||||||
|
image: ${REGISTRY-oaisoftwarealliance/}${NRUE_IMG:-oai-nr-ue}:${TAG:-develop}
|
||||||
|
container_name: rfsim5g-oai-nr-ue
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN # for interface bringup
|
||||||
|
- NET_RAW # for ping
|
||||||
|
- SYS_NICE
|
||||||
|
environment:
|
||||||
|
USE_ADDITIONAL_OPTIONS: -r 51 --numerology 1 --band 78 -C 3489420000 --ssb 0 -E --uicc0.imsi 208990100001100 --uecap_file /opt/oai-nr-ue/etc/uecap.xml --log_config.global_log_options level,nocolor,time --device.name oai_zmqdevif --zmq.[0].tx_channels tcp://0.0.0.0:4556 --zmq.[0].rx_channels tcp://192.168.71.140:4558
|
||||||
|
depends_on:
|
||||||
|
- ocudu-gnb
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.150
|
||||||
|
devices:
|
||||||
|
- /dev/net/tun:/dev/net/tun
|
||||||
|
volumes:
|
||||||
|
- ../../../targets/PROJECTS/GENERIC-NR-5GC/CONF/uecap_ports1.xml:/opt/oai-nr-ue/etc/uecap.xml
|
||||||
|
- ../../conf_files/nrue.uicc.conf:/opt/oai-nr-ue/etc/nr-ue.conf
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep nr-uesoftmodem"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
driver: bridge
|
||||||
|
name: rfsim5g-oai-public-net
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 192.168.71.128/26
|
||||||
|
driver_opts:
|
||||||
|
com.docker.network.bridge.name: "rfsim5g-public"
|
||||||
|
traffic_net:
|
||||||
|
driver: bridge
|
||||||
|
name: rfsim5g-oai-traffic-net
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 192.168.72.128/26
|
||||||
|
driver_opts:
|
||||||
|
com.docker.network.bridge.name: "rfsim5g-traffic"
|
||||||
@@ -0,0 +1,52 @@
|
|||||||
|
# SPDX-FileCopyrightText: Copyright (C) 2021-2026 Software Radio Systems Limited
|
||||||
|
# SPDX-License-Identifier: BSD-3-Clause-Open-MPI
|
||||||
|
# Refer to https://gitlab.com/ocudu/ocudu/-/raw/dev/LICENSE?ref_type=heads
|
||||||
|
|
||||||
|
cu_cp:
|
||||||
|
amf:
|
||||||
|
addrs: 192.168.71.132
|
||||||
|
port: 38412
|
||||||
|
bind_addrs: 192.168.71.140
|
||||||
|
supported_tracking_areas:
|
||||||
|
- tac: 1
|
||||||
|
plmn_list:
|
||||||
|
- plmn: "20899"
|
||||||
|
tai_slice_support_list:
|
||||||
|
- sst: 1
|
||||||
|
|
||||||
|
ru_sdr:
|
||||||
|
device_driver: zmq
|
||||||
|
device_args: tx_port=tcp://0.0.0.0:4558,rx_port=tcp://192.168.71.150:4556
|
||||||
|
srate: 23.04
|
||||||
|
tx_gain: 25
|
||||||
|
rx_gain: 25
|
||||||
|
|
||||||
|
cell_cfg:
|
||||||
|
dl_arfcn: 632628
|
||||||
|
band: 78
|
||||||
|
channel_bandwidth_MHz: 20
|
||||||
|
common_scs: 30
|
||||||
|
plmn: "20899"
|
||||||
|
tac: 1
|
||||||
|
pci: 1
|
||||||
|
tdd_ul_dl_cfg:
|
||||||
|
dl_ul_tx_period: 5
|
||||||
|
nof_dl_slots: 3
|
||||||
|
nof_dl_symbols: 10
|
||||||
|
nof_ul_slots: 1
|
||||||
|
nof_ul_symbols: 2
|
||||||
|
csi:
|
||||||
|
csi_rs_enabled: false
|
||||||
|
pucch:
|
||||||
|
formats: f0_and_f2
|
||||||
|
nof_cell_csi_res: 0
|
||||||
|
|
||||||
|
log:
|
||||||
|
filename: gnb.log
|
||||||
|
all_level: debug
|
||||||
|
|
||||||
|
pcap:
|
||||||
|
mac_enable: false
|
||||||
|
mac_filename: /tmp/gnb_mac.pcap
|
||||||
|
ngap_enable: false
|
||||||
|
ngap_filename: /tmp/gnb_ngap.pcap
|
||||||
@@ -0,0 +1,162 @@
|
|||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
services:
|
||||||
|
mysql:
|
||||||
|
container_name: "rfsim5g-mysql"
|
||||||
|
image: mysql:8.0
|
||||||
|
init: true
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/oai_db.sql:/docker-entrypoint-initdb.d/oai_db.sql
|
||||||
|
- ../5g_rfsimulator/mysql-healthcheck.sh:/tmp/mysql-healthcheck.sh
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Paris
|
||||||
|
- MYSQL_DATABASE=oai_db
|
||||||
|
- MYSQL_USER=test
|
||||||
|
- MYSQL_PASSWORD=test
|
||||||
|
- MYSQL_ROOT_PASSWORD=linux
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "/tmp/mysql-healthcheck.sh"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 30
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.131
|
||||||
|
oai-amf:
|
||||||
|
container_name: "rfsim5g-oai-amf"
|
||||||
|
image: oaisoftwarealliance/oai-amf:v2.1.10
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/paris
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-amf/etc/config.yaml
|
||||||
|
depends_on:
|
||||||
|
- mysql
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.132
|
||||||
|
oai-smf:
|
||||||
|
container_name: "rfsim5g-oai-smf"
|
||||||
|
image: oaisoftwarealliance/oai-smf:v2.1.10
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Paris
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-smf/etc/config.yaml
|
||||||
|
depends_on:
|
||||||
|
- oai-amf
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.133
|
||||||
|
oai-upf:
|
||||||
|
container_name: "rfsim5g-oai-upf"
|
||||||
|
image: oaisoftwarealliance/oai-upf:v2.1.10
|
||||||
|
init: true
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Paris
|
||||||
|
volumes:
|
||||||
|
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-upf/etc/config.yaml
|
||||||
|
depends_on:
|
||||||
|
- oai-smf
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
- SYS_ADMIN
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
privileged: true
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.134
|
||||||
|
interface_name: eth0
|
||||||
|
traffic_net:
|
||||||
|
ipv4_address: 192.168.72.134
|
||||||
|
interface_name: eth1
|
||||||
|
oai-ext-dn:
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim5g-oai-ext-dn
|
||||||
|
image: oaisoftwarealliance/trf-gen-cn5g:focal
|
||||||
|
init: true
|
||||||
|
entrypoint: /bin/bash -c \
|
||||||
|
"iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;"\
|
||||||
|
"ip route add 12.1.1.0/24 via 192.168.72.134 dev eth0; sleep infinity"
|
||||||
|
depends_on:
|
||||||
|
- oai-upf
|
||||||
|
networks:
|
||||||
|
traffic_net:
|
||||||
|
ipv4_address: 192.168.72.135
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "ping -c 2 192.168.72.134"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
ocudu-gnb:
|
||||||
|
image: ghcr.io/bpodrygajlo/ocudu/ocudu-avx2:7cecca5
|
||||||
|
container_name: ocudu-gnb
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- SYS_NICE
|
||||||
|
depends_on:
|
||||||
|
- oai-ext-dn
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.140
|
||||||
|
volumes:
|
||||||
|
- ./ocudu.yml:/ocudu.yml
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep gnb_split_8"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
command: ./usr/local/bin/gnb_split_8 -c /ocudu.yml
|
||||||
|
|
||||||
|
oai-nr-ue:
|
||||||
|
image: ${REGISTRY-oaisoftwarealliance/}${NRUE_IMG:-oai-nr-ue}:${TAG:-develop}
|
||||||
|
container_name: rfsim5g-oai-nr-ue
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN # for interface bringup
|
||||||
|
- NET_RAW # for ping
|
||||||
|
- SYS_NICE
|
||||||
|
environment:
|
||||||
|
USE_ADDITIONAL_OPTIONS: -r 106 --numerology 1 --band 78 -C 3489420000 --ssb 42 --ue-nb-ant-tx 2 --uicc0.imsi 208990100001100 --ue-nb-ant-rx 2 --uecap_file /opt/oai-nr-ue/etc/uecap.xml --log_config.global_log_options level,nocolor,time --device.name oai_zmqdevif --zmq.[0].tx_channels tcp://0.0.0.0:4556,tcp://0.0.0.0:4557 --zmq.[0].rx_channels tcp://192.168.71.140:4558,tcp://192.168.71.140:4559
|
||||||
|
depends_on:
|
||||||
|
- ocudu-gnb
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.71.150
|
||||||
|
devices:
|
||||||
|
- /dev/net/tun:/dev/net/tun
|
||||||
|
volumes:
|
||||||
|
- ../../../targets/PROJECTS/GENERIC-NR-5GC/CONF/uecap_ports2.xml:/opt/oai-nr-ue/etc/uecap.xml
|
||||||
|
- ../../conf_files/nrue.uicc.conf:/opt/oai-nr-ue/etc/nr-ue.conf
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep nr-uesoftmodem"
|
||||||
|
start_period: 10s
|
||||||
|
start_interval: 500ms
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
driver: bridge
|
||||||
|
name: rfsim5g-oai-public-net
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 192.168.71.128/26
|
||||||
|
driver_opts:
|
||||||
|
com.docker.network.bridge.name: "rfsim5g-public"
|
||||||
|
traffic_net:
|
||||||
|
driver: bridge
|
||||||
|
name: rfsim5g-oai-traffic-net
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 192.168.72.128/26
|
||||||
|
driver_opts:
|
||||||
|
com.docker.network.bridge.name: "rfsim5g-traffic"
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
# SPDX-FileCopyrightText: Copyright (C) 2021-2026 Software Radio Systems Limited
|
||||||
|
# SPDX-License-Identifier: BSD-3-Clause-Open-MPI
|
||||||
|
# Refer to https://gitlab.com/ocudu/ocudu/-/raw/dev/LICENSE?ref_type=heads
|
||||||
|
|
||||||
|
cu_cp:
|
||||||
|
amf:
|
||||||
|
addrs: 192.168.71.132
|
||||||
|
port: 38412
|
||||||
|
bind_addrs: 192.168.71.140
|
||||||
|
supported_tracking_areas:
|
||||||
|
- tac: 1
|
||||||
|
plmn_list:
|
||||||
|
- plmn: "20899"
|
||||||
|
tai_slice_support_list:
|
||||||
|
- sst: 1
|
||||||
|
|
||||||
|
ru_sdr:
|
||||||
|
device_driver: zmq
|
||||||
|
device_args: tx_port=tcp://0.0.0.0:4558,tx_port=tcp://0.0.0.0:4559,rx_port=tcp://192.168.71.150:4556,rx_port=tcp://192.168.71.150:4557
|
||||||
|
srate: 61.44
|
||||||
|
tx_gain: 25
|
||||||
|
rx_gain: 25
|
||||||
|
|
||||||
|
cell_cfg:
|
||||||
|
dl_arfcn: 632628
|
||||||
|
band: 78
|
||||||
|
channel_bandwidth_MHz: 40
|
||||||
|
common_scs: 30
|
||||||
|
plmn: "20899"
|
||||||
|
tac: 1
|
||||||
|
pci: 1
|
||||||
|
nof_antennas_ul: 2
|
||||||
|
nof_antennas_dl: 2
|
||||||
|
tdd_ul_dl_cfg:
|
||||||
|
dl_ul_tx_period: 5
|
||||||
|
nof_dl_slots: 3
|
||||||
|
nof_dl_symbols: 10
|
||||||
|
nof_ul_slots: 1
|
||||||
|
nof_ul_symbols: 2
|
||||||
|
csi:
|
||||||
|
csi_rs_enabled: false
|
||||||
|
pucch:
|
||||||
|
formats: f0_and_f2
|
||||||
|
nof_cell_csi_res: 0
|
||||||
|
|
||||||
|
log:
|
||||||
|
filename: gnb.log
|
||||||
|
all_level: debug
|
||||||
|
|
||||||
|
pcap:
|
||||||
|
mac_enable: false
|
||||||
|
mac_filename: /tmp/gnb_mac.pcap
|
||||||
|
ngap_enable: false
|
||||||
|
ngap_filename: /tmp/gnb_ngap.pcap
|
||||||
Reference in New Issue
Block a user