... | ... | @@ -24,6 +24,10 @@ |
|
|
6. [Bring Up a second loopback interface](#6-bring-up-a-second-loopback-interface)
|
|
|
7. [Build the eNB](#7-build-the-enb)
|
|
|
8. [Build the UE](#8-build-the-ue)
|
|
|
9. [Initialize the NAS UE Layer](#9-initialize-the-nas-ue-layer)
|
|
|
10. [Start the eNB](#10-start-the-enb)
|
|
|
11. [Start the UE](#11-start-the-ue)
|
|
|
12. [Limitations](#12-limitations)
|
|
|
|
|
|
# 1. Environment #
|
|
|
|
... | ... | @@ -49,7 +53,7 @@ If you are using OAI-EPC ([see on GitHub](https://github.com/OPENAIRINTERFACE/op |
|
|
The eNB and the UE executables will compiled into 2 separate folders on the same machine `B`.
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ git clone https://gitlab.eurecom.fr/oai/openairinterface5g/ enb_folder
|
|
|
$ cd enb_folder
|
|
|
$ git checkout -f v1.0.0
|
... | ... | @@ -60,7 +64,7 @@ $ cp -Rf enb_folder ue_folder |
|
|
# 4. Setup of the USIM information in UE folder #
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd ue_folder
|
|
|
# Edit openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf with your preferred editor
|
|
|
```
|
... | ... | @@ -120,7 +124,7 @@ You can repeat the operation for as many users you want to test with. |
|
|
## 5.1. The eNB Configuration file ##
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd enb_folder
|
|
|
# Edit ci-scripts/conf_files/rcc.band7.tm1.nfapi.conf with your preferred editor
|
|
|
```
|
... | ... | @@ -189,7 +193,7 @@ Last, the S1 interface shall be properly set. |
|
|
## 5.2. The UE Configuration file ##
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd ue_folder
|
|
|
# Edit ci-scripts/conf_files/ue.nfapi.conf with your preferred editor
|
|
|
```
|
... | ... | @@ -217,7 +221,7 @@ L1s = ( |
|
|
A second loopback interface is used to connect the eNB and the UEs.
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ sudo ifconfig lo: 127.0.0.2 netmask 255.0.0.0 up
|
|
|
```
|
|
|
|
... | ... | @@ -231,9 +235,9 @@ $ cd enb_folder |
|
|
$ source oaienv
|
|
|
$ cd cmake_targets
|
|
|
# If you test less than 16 UEs, type below command.
|
|
|
$ sudo -E ./build_oai --eNB -t ETHERNET -c
|
|
|
$ ./build_oai --eNB -t ETHERNET -c
|
|
|
# If you test more than 16 UEs, type below command and this command also can be used in case of less than 16 UEs.
|
|
|
$ sudo -E ./build_oai --eNB -t ETHERNET -c --mu
|
|
|
$ ./build_oai --eNB -t ETHERNET -c --mu
|
|
|
```
|
|
|
|
|
|
# 8. Build the UE #
|
... | ... | @@ -241,20 +245,20 @@ $ sudo -E ./build_oai --eNB -t ETHERNET -c --mu |
|
|
Open a second terminal:
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd ue_folder
|
|
|
$ source oaienv
|
|
|
$ cd cmake_targets
|
|
|
# If you test less than 16 UEs, type below command.
|
|
|
$ sudo -E ./build_oai --UE -t ETHERNET -c
|
|
|
$ ./build_oai --UE -t ETHERNET -c
|
|
|
# If you test more than 16 UEs, type below command and this command also can be used in case of less than 16 UEs.
|
|
|
$ sudo -E ./build_oai --UE -x -t ETHERNET -c --musim
|
|
|
$ ./build_oai --UE -x -t ETHERNET -c --musim
|
|
|
```
|
|
|
|
|
|
After finishing building UE(s), some files are generated in ue_folder/targets/bin/ and these files are necessary in cmake_targets.
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd ue_folder/targets/bin/
|
|
|
$ cp .u* ../../cmake_targets/
|
|
|
$ cp usim ../../cmake_targets/
|
... | ... | @@ -266,8 +270,62 @@ $ cp nvram ../../cmake_targets/ |
|
|
In the 2nd terminal:
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd ue_folder/cmake_targets/tools
|
|
|
$ source init_nas_s1 UE
|
|
|
```
|
|
|
|
|
|
And start the EPC on machine `A`.
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
# Start the EPC
|
|
|
```
|
|
|
|
|
|
# 10. Start the eNB #
|
|
|
|
|
|
In the first terminal (the one you used to build the eNB):
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd enb_folder/cmake_targets
|
|
|
$ sudo -E ./lte_build_oai/build/lte-softmodem -O ../ci-scripts/conf_files/rcc.band7.tm1.nfapi.conf > enb.log 2>&1
|
|
|
```
|
|
|
|
|
|
If you don't use redirection, you can test but many logs are printed on the console and this may affect performance of the L2-nFAPI simulator.
|
|
|
|
|
|
We do recommend the redirection in steady mode once your setup is correct.
|
|
|
|
|
|
# 11. Start the UE #
|
|
|
|
|
|
In the second terminal (the one you used to build the UE):
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineB
|
|
|
$ cd ue_folder/cmake_targets
|
|
|
# Test 64 UEs, 64 threads in FDD mode
|
|
|
$ sudo -E ./lte_build_oai/build/lte-uesoftmodem -O ../ci-scripts/conf_files/ue.nfapi.conf --L2-emul 3 --num-ues 64 --nums-ue-thread 64 > ue.log 2>&1
|
|
|
# Test 64 UEs, 64 threads in TDD mode
|
|
|
$ sudo -E ./lte_build_oai/build/lte-uesoftmodem -O ../ci-scripts/conf_files/ue.nfapi.conf --L2-emul 3 --num-ues 64 --nums-ue-thread 64 -T 1 > ue.log 2>&1
|
|
|
# The "-T 1" option means TDD config
|
|
|
```
|
|
|
|
|
|
- The number of UEs can set by using `--num-ues` option and the maximum UE number is 255 (with the `--mu*` options, otherwise 16).
|
|
|
- The umber of threads can set with the `--nums-ue-thread`. This number **SHALL NOT** be greater than the number of UEs.
|
|
|
- How many UE that can be tested depends on hardware (server , PC, etc) performance in your environment.
|
|
|
|
|
|
# 12. Test with ping #
|
|
|
|
|
|
In a third terminal, after around 10 seconds, the UE(s) shall be connected to the eNB:
|
|
|
|
|
|
```bash
|
|
|
$ ssh sudousername@machineA
|
|
|
# Ping UE0 IP address based on the EPC pool used: in this example:
|
|
|
$ ping -c 20 192.168.200.2
|
|
|
# Ping UE1 IP address based on the EPC pool used: in this example:
|
|
|
$ ping -c 20 192.168.200.4
|
|
|
```
|
|
|
|
|
|
# 13. Limitations #
|
|
|
|
|
|
Testing on the CI process is currently limited at time of writing. Improvements will be made soon. |