Version 7 (modified by 10 days ago) ( diff ) | ,
---|
Site Navigation
ORAN Split 7.2 E2E
Description
This tutorial contains instructions for setting up 5G ORAN Split 7.2 network using OAI/srsRAN + various O-RUs(Lite On, Jabil, Benetel) in COSMOS SB1.
Prerequisites
In order to access the test bed, create a reservation and have it approved by the reservation service. Access to the resources is granted after the reservation is confirmed. Please follow the process shown on the COSMOS getting started page to get started.
Resources required
1 server in COSMOS SB1 domain and sdr1-in3(with SIMCom SIM8200EA-M2 USB modem)
Tutorial Setup
Follow the steps below to gain access to the sandbox 1 console and set up nodes with appropriate images.
- If you don't have one already, sign up for a COSMOS account
- Create a resource reservation on sandbox 1
- Login into sandbox 1 console (console.sb1.cosmos-lab.org) with two SSH sessions.
- Make sure all the resources in the domain are turned off:
omf tell -a offh -t system:topo:allres
- Load images
omf load -i sb1_oai_liteon_11_8_2024.ndz -t srv1-lg1
- To access the UE, Waveshare SIM8200 USB modem connected to sdr1-in3, load the image waveshare-sim8200.ndz on sdr1-in3. This image has the SIMCOM network drivers installed to control the modem.
omf load -i waveshare-sim8200.ndz -t sdr1-in3
- Turn all the required resources on and check the status
omf tell -a on -t srv1-lg1,sdr1-in3
omf stat -t system:topo:allres
- ssh to the servers, use option -Y for using GUI.
ssh root@srv1-lg1
Tutorial Execution
Initialize DPDK
root@srv1-lg1:~# ./init_dpdk.sh --- Disable CPU sleep state --- WARNING: cpupower not found for kernel 5.15.0-1071 You may need to install the following packages for this specific kernel: linux-tools-5.15.0-1071-realtime linux-cloud-tools-5.15.0-1071-realtime You may also want to install one of the following packages to keep up to date: linux-tools-realtime linux-cloud-tools-realtime --- Set interface enp134s0f0 ring buffer size to 4096 --- ----- Set RX buffer size ----- ----- Set TX buffer size ----- --- Set interface enp134s0f0 MTU to 9000 --- --- Create VFs (enp134s0f0, MTU: 9000, VLAN: 4) --- ----- Creating VF 1 ----- ----- Creating VF 2 ----- --- Unbind/rebind DPDK devices (86:01.0 86:01.1) --- ----- Unbinding VF 0 ----- ----- Unbinding VF 1 ----- ----- Binding VF 0 ----- ----- Binding VF 1 ----- --- Final VF setup --- 3: enp134s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 50:7c:6f:6c:76:9c brd ff:ff:ff:ff:ff:ff vf 0 link/ether 00:11:22:33:44:66 brd ff:ff:ff:ff:ff:ff, vlan 4, spoof checking off, link-state auto, trust off vf 1 link/ether 00:11:22:33:44:67 brd ff:ff:ff:ff:ff:ff, vlan 4, spoof checking off, link-state auto, trust off
Run the 5G Core
root@srv1-lg1:/opt/amarisoft/ltemme-linux-2024-09-13# ./lte_init.sh Select enp134s0f0 enp94s0f0np0 default interface Configure NAT for enp134s0f0 Configure NAT for enp94s0f0np0 net.ipv4.tcp_congestion_control = bbr net.core.rmem_max = 62500000 net.core.wmem_max = 62500000 root@srv1-lg1:/opt/amarisoft/ltemme-linux-2024-09-13# ./ltemme config/mme.cfg Core Network version 2024-09-13, Copyright (C) 2012-2024 Amarisoft This software is licensed to Rutgers University (The State University of New Jersey). License server: license.orbit-lab.org (0b-b4-46-dc-2f-83-58-cb) Support and software update available until 2025-08-18. (mme)
Run OAI CU+DU
root@srv1-lg1:~# ./run_oai_liteon.sh CMDLINE: "./openairinterface5g/cmake_targets/ran_build/build/nr-softmodem" "-O" "/root/liteon/band78.2x2.40M.timing.conf" "—sa" "—thread-pool" "0,2,4,6,8,10,12,14" [LIBCONFIG] Path for include directive set to: /root/liteon [CONFIG] function config_libconfig_init returned 0 [CONFIG] config module libconfig loaded [CONFIG] debug flags: 0x00000000 log init done Reading in command-line options [ENB_APP] nfapi (0) running mode: MONOLITHIC
Check Liteon Status
ssh user@liteon-oru-mgmt.instrument.orbit-lab.org user@liteon-oru-mgmt.instrument.orbit-lab.org's password: Welcome to Liteon ORU Wed Nov 13 17:51:48 UTC 2024 Please enter help > enable Enter Password: Auto exit privileged commands in 300 Seconds # show oru-status Sync State : SYNCHRONIZED RF State : Ready DPD : Ready DuConnected : Ready # show pm-data 1,POWER,2024-11-13T17:59:55Z,2024-11-13T18:00:12Z,o-ran-hardware:O-RU-FPGA,10.6144,11.7710,11.1235,iana-hardware:cpu,10.6144,11.7710,11.1235 2,TEMPERATURE,2024-11-13T17:59:55Z,2024-11-13T18:00:12Z,o-ran-hardware:O-RU-FPGA,57.9699,59.9283,58.6268,iana-hardware:cpu,56.8352,58.9491,57.6974 13,VOLTAGE,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,0,0.0000,2024-11-13T17:59:56Z,2.0142,2024-11-13T18:00:19Z,0.0000,2024-11-13T17:59:56Z,0.0000,2024-11-13T18:00:29Z,3499680000 1,POWER,2024-11-13T18:00:12Z,2024-11-13T18:00:29Z,o-ran-hardware:O-RU-FPGA,10.6720,12.2464,11.1989,iana-hardware:cpu,10.6720,12.2464,11.1989 2,TEMPERATURE,2024-11-13T18:00:12Z,2024-11-13T18:00:29Z,o-ran-hardware:O-RU-FPGA,57.9854,59.7729,58.8154,iana-hardware:cpu,56.5866,59.6641,57.9875 1,RX_ON_TIME,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,1537482 2,RX_EARLY,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,0 3,RX_LATE,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,0 6,RX_TOTAL,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,1604032 7,RX_ON_TIME_C,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,64192 8,RX_EARLY_C,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,0 9,RX_LATE_C,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,0 1,TX_TOTAL,2024-11-13T17:59:55Z,2024-11-13T18:00:29Z,ru1,192841
SIMCOM SIM8200EA-M2 UE
root@sdr1-in3:~# minicom -D /dev/ttyUSB2 Welcome to minicom 2.7.1 OPTIONS: I18n Compiled on Aug 13 2017, 15:25:34. Port /dev/ttyUSB2, 17:45:12 Press CTRL-A Z for help on special keys at OK at+cops=? +COPS: (1,"Amarisoft Network","Amarisof","310014",12),(1,"Verizon","Verizon","311480",7),(3,"T-Mobile","T-Mobile","310260",7),(3,"AT&T","AT&T","310410",7),(3,"313 100","313 100","313100",7),(3,"T-Mobile","T-Mobile","310260",12),(1,"311 490","311 490","311490",12),(3,"313 340","313 340) OK
- The at+cops=? command takes a few minutes to return. You can see that it finds the Amarisoft network. This AT command prompts the modem to scan and attach to the base station.
- Run the following application on sdr1-in3
root@sdr1-in3:~/SIM8200_code/Goonline# ./simcom-cm [11-13_18:27:19:600] Build Version: 2020-07-14 10:20:15 [11-13_18:27:19:600] SIMCOM_CM START... [11-13_18:27:19:600] ./simcom-cm profile[1] = (null)/(null)/(null)/0, pincode = (null) [11-13_18:27:19:600] Find /sys/bus/usb/devices/2-4.4 idVendor=1e0e idProduct=9001 [11-13_18:27:19:600] Find /sys/bus/usb/devices/2-4.4:1.5/net/wwp0s20f0u4u4i5 [11-13_18:27:19:600] Find usbnet_adapter = wwp0s20f0u4u4i5 [11-13_18:27:19:600] Find /sys/bus/usb/devices/2-4.4:1.5/usbmisc/cdc-wdm0 [11-13_18:27:19:600] Find qmichannel = /dev/cdc-wdm0 [11-13_18:27:19:601] netcard driver = qmi_wwan_simcom [11-13_18:27:19:604] cdc_wdm_fd = 7 [11-13_18:27:19:676] Get clientWDS = 15 [11-13_18:27:19:708] Get clientDMS = 1 [11-13_18:27:19:740] Get clientNAS = 2 [11-13_18:27:19:772] Get clientUIM = 1 [11-13_18:27:19:804] Get clientWDA = 1 [11-13_18:27:19:836] requestBaseBandVersion MPSS.HI.2.0.c3-00246-SDX55_CPEALL_PACK-1 1 [Oct 26 2020 16:00:00] [11-13_18:27:19:900] requestGetSIMStatus SIMStatus: SIM_READY [11-13_18:27:19:932] requestGetProfile[1] cosmos-5G///0 [11-13_18:27:19:964] requestRegistrationState2 MCC: 310, MNC: 14, PS: Attached, DataCap: NR5G [11-13_18:27:19:996] requestQueryDataCall IPv4ConnectionStatus: DISCONNECTED [11-13_18:27:20:060] requestRegistrationState2 MCC: 310, MNC: 14, PS: Attached, DataCap: NR5G [11-13_18:27:20:124] requestSetupDataCall WdsConnectionIPv4Handle: 0x734209c0 [11-13_18:27:20:188] requestQueryDataCall IPv4ConnectionStatus: CONNECTED [11-13_18:27:20:220] ifconfig wwp0s20f0u4u4i5 up [11-13_18:27:20:252] Fail to access /usr/share/udhcpc/default.script, errno: 2 (No such file or directory) [11-13_18:27:20:252] busybox udhcpc -f -n -q -t 5 -s /usr/share/udhcpc/default.script -i wwp0s20f0u4u4i5 udhcpc: started, v1.27.2 udhcpc: sending discover udhcpc: sending select for 192.168.2.2 udhcpc: lease of 192.168.2.2 obtained, lease time 7200
- Set the IP address of the wwan interface to the one allocated by the MME (192.168.2.2 in this case)
root@sdr1-in3:~# ifconfig wwp0s20f0u4u4i5 192.168.2.2 netmask 255.255.255.0
- You can now communicate with the base station over the air(5G). The data connection can be tested with ping or iperf as below.
root@sdr1-in3:~# ping 192.168.2.1 PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data. 64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=21.8 ms 64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=19.2 ms 64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=18.2 ms 64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=16.8 ms ^C --- 192.168.2.1 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 16.800/19.043/21.802/1.828 ms
Iperf test
root@sdr1-in3:~# iperf3 -s -B 192.168.2.2 ----------------------------------------------------------- Server listening on 5201 -----------------------------------------------------------
root@srv1-lg1:~# iperf3 -c 192.168.2.2 -i 1 -b 0 -t 10 Connecting to host 192.168.2.2, port 5201 [ 5] local 192.168.2.1 port 45344 connected to 192.168.2.2 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-1.00 sec 7.99 MBytes 67.0 Mbits/sec 100 35.4 KBytes [ 5] 1.00-2.00 sec 3.75 MBytes 31.5 Mbits/sec 52 583 KBytes [ 5] 2.00-3.00 sec 6.25 MBytes 52.4 Mbits/sec 91 250 KBytes [ 5] 3.00-4.00 sec 6.25 MBytes 52.4 Mbits/sec 88 1.03 MBytes [ 5] 4.00-5.00 sec 7.50 MBytes 62.9 Mbits/sec 99 631 KBytes [ 5] 5.00-6.00 sec 5.00 MBytes 41.9 Mbits/sec 107 578 KBytes [ 5] 6.00-7.00 sec 6.25 MBytes 52.4 Mbits/sec 24 806 KBytes [ 5] 7.00-8.00 sec 8.75 MBytes 73.4 Mbits/sec 38 1.06 MBytes [ 5] 8.00-9.00 sec 6.25 MBytes 52.4 Mbits/sec 100 653 KBytes [ 5] 9.00-10.00 sec 7.50 MBytes 62.9 Mbits/sec 15 585 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 65.5 MBytes 54.9 Mbits/sec 714 sender [ 5] 0.00-10.00 sec 62.1 MBytes 52.1 Mbits/sec receiver