Version 7 (modified by 5 years ago) ( diff ) | ,
---|
Getting Started with InterDigital 5G NR Performance System
Table of Contents
Description
In this tutorial we'll demonstrate how to use InterDigital 5G-NR Performance platform. The setup for the experiment is shown in Figure 1.
TODDO Setup Description:
- gNodeB and UE
- Two nodes for controling them
- Three subnets as shown
- routing
Prerequisites
In order to access the test bed, create a reservation and have it approved by the reservation service. Access to the resources are granted only after the reservation is confirmed. Please follow the process shown on the COSMOS work flow page to get started.
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
- Prepare 5G-NR status page access: either prepare ssh tunnel thought console to gNodeB server node, port 3005 (i.e. map localhost:8080 to srv3-lg1.sb1.cosmos-lab.org:3005) or follow the instructions to establish a VPN tunnel to the COSMOS sandbox 1. This will be used by the browser to connect to a web server running on the server nodes.
- Login into sandbox 1 console (console.sb1.cosmos-lab.org) with two SSH sessions. The first session will be used for access to gNodeB while the second will be dedicated to handling UE.
- Load the images on the computing nodes: in each of the two session, start the omf image loading commands:
SSH session 1 for gNodeB | SSH Session 2 for UE |
omf load -t srv3-lg1 -i ID-5G-gNB.ndz -r 50 | omf load -t srv4-lg1 -i ID-5G-UE.ndz -r 50
|
- Turn the server nodes and NR platform devices on:
omf tell -a on -t srv3-lg1,srv4-lg1,rfdev2-1,rfdev2-2
Experiment Execution
Configure Routing on the two compute nodes
- Execute NR gNB setup script on srv3-lg1
userid@console:~$ ssh root@srv3-lg1 root@srv3-lg1:~$ ./setup_gNodeB.sh --------------- Make sure to start the gNodeB modem on the MPU by logging in with: sshpass -p root ssh -o StrictHostKeyChecking=no root@192.168.1.2 and running: root@NR-SW-MPU-gNB:~# ./start_all.sh ---------------- net.ipv4.ip_no_pmtu_disc = 1 root@srv3-lg1:~#
- Execute NR UE setup script on srv4-lg1.
userid@console:~$ ssh root@srv4-lg1 root@srv4-lg1:~$ ./setup_UE.sh
The two scripts setup routing to push the test traffic from the server that is attached to UE through the 5G-NR link.
Routing Scripts
The two scripts are shown in the table below:
setup_gNodeB.sh |
#!/bin/bash echo "---------------" echo "Make sure to start the gNodeB modem on the MPU by logging in with:" echo "sshpass -p "root" ssh -o StrictHostKeyChecking=no root@192.168.1.2" echo "and running:" echo "root@NR-SW-MPU-gNB:~# ./start_all.sh" echo "----------------" # Turn on routing echo 1 > /proc/sys/net/ipv4/ip_forward sysctl -w net.ipv4.ip_no_pmtu_disc=1 # Add rotuing for the two subnets "behind" the gNodeB ip route add 192.168.2.0/24 via 192.168.1.2 ip route add 192.168.3.0/24 via 192.168.1.2 # and configure NAT for them iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE iptables -A FORWARD -i eth1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT |
setup_UE.sh |
#!/bin/bash # Start the UE on the MPU sshpass -p "root" ssh -o StrictHostKeyChecking=no root@192.168.2.1 "sh /home/root/start_all.sh &" # Turn on routing echo 1 > /proc/sys/net/ipv4/ip_forward sysctl -w net.ipv4.ip_no_pmtu_disc=1 # Route all internal 5G traffic through MPU ip route add 192.168.1.0/24 via 192.168.2.1 dev eth0 # Except for the testbed bound traffic ip r add 10/8 dev eth1 # Everything else goes over 5G ink ip r add default via 192.168.1.1 |
Start services on the two MPUs
- ssh into gNodeB MPU at 192.168.1.2 with username "root" and password "root" and execute the setup script "start_all.sh":
root@srv3-lg1:~# ssh root@192.168.1.2 root@192.168.1.2's password: root@NR-SW-MPU-gNB:~# ./start_all.sh root@NR-SW-MPU-gNB:~# metal: info: metal_uio_dev_open: No IRQ for device 3ed80000.shm. root@NR-SW-MPU-gNB:~# exit logout Connection to 192.168.1.2 closed. root@srv3-lg1:~#
- ssh into UE MPU at 192.168.2.1 with username "root" and password "root: and execute the setup script "start_all.sh":
root@srv4-lg1:~# ssh 192.168.2.1 root@192.168.2.1's password: root@NR-SW-MPU-UE:~# ./start_all.sh root@NR-SW-MPU-UE:~# metal: info: metal_uio_dev_open: No IRQ for device 3ed80000.shm. root@NR-SW-MPU-UE:~# exit logout Connection to 192.168.2.1 closed. root@srv4-lg1:~#
The two scripts will start the appropriate firmware on both NR Platform devices. The NR Platform will automatically “connect” a link between the gNB and UR. This can be verified via the NR GUI
GUI Setup & Instructions
Note that the GUI web server has already been started during Linux startup. Open the browser and point it at http://localhost:8080 (if using ssh tunneling) or at http://srv3-lg1.sb1.cosmos-lab.org:3005 if using VPN.
Sending iperf data between the gNB and UE
The following commands are provided as an example of how to send Downlink iperf data traffic on the NR 28GHz mmW OTA link via the compute machines that are attached to the gNB and UE platforms
- In the UE console session start the iperf server
root@srv4.lg1:~$ iperf3 -s -i 1
- In the gNodeB session strat the iperf client
root@srv3-lg1:~# iperf3 -c 192.168.2.1 -i 1 -u -b 86M -l 1472 -t 3600
Analyze the NR link performance via the NR GUI
Shutting Down Resources
Turn off the server nodes and NR platform devices:
omf tell -a offh -t srv3-lg1,srv4-lg1,rfdev2-1,rfdev2-2
Attachments (4)
- Select-Debug.png (286.4 KB ) - added by 5 years ago.
- Status-Buttons.png (257.0 KB ) - added by 5 years ago.
-
InterDigital-5G-NR-Tut.png
(160.8 KB
) - added by 15 months ago.
Inter Digital 5G NR routing
-
NR-gui.png
(149.7 KB
) - added by 15 months ago.
NR GUI
Download all attachments as: .zip