mirror of
https://gitlab.eurecom.fr/oai/openairinterface5g.git
synced 2026-07-20 16:10:29 +00:00
Compare commits
6 Commits
ru-comment
...
feat-ch-em
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c48a6ba35e | ||
|
|
3137a6e684 | ||
|
|
cb7179111a | ||
|
|
889108e505 | ||
|
|
5926e5db5d | ||
|
|
bf849f2f73 |
156
CHANNELEMULATOR.md
Normal file
156
CHANNELEMULATOR.md
Normal file
@@ -0,0 +1,156 @@
|
||||
<script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.2/es5/tex-mml-chtml.min.js">
|
||||
</script>
|
||||
<script type="text/x-mathjax-config">
|
||||
MathJax.Hub.Config({
|
||||
tex2jax: {
|
||||
inlineMath: [['$', '$'] ],
|
||||
displayMath: [ ['$$','$$'], ["\\[","\\]"] ]
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
# Overview
|
||||
This document serves as a guide to loading a pre-generated dataset of Channel Impulse Responses (CIRs)—for example, computed using Sionna RT—and performing real-time 5G emulation using OpenAirInterface (OAI).
|
||||
|
||||
For full system architecture details, please refer to: [https://arxiv.org/abs/2503.12177v2](https://arxiv.org/abs/2503.12177v2)
|
||||
|
||||
As a sample scenario, this repository includes the Shibuya Scramble Crossing CIR dataset used in the paper, placed under `oai_cir/cir/output/binary/`.
|
||||
|
||||
# Supported Environment
|
||||
|
||||
|||
|
||||
|-|-|
|
||||
|CPU | AMD Ryzen 9 7900X 12-core processor (x24) |
|
||||
|RAM | 32 GB |
|
||||
|Operating System | Ubuntu 22.04.4 LTS |
|
||||
|Linux kernel version | 6.8.1-060801-generic |
|
||||
|SDR | USRP B200 |
|
||||
|COTS UE | Quectel RM500Q-GL |
|
||||
|||
|
||||
|
||||
# Prerequisites (after setting up base OAI environment)
|
||||
|
||||
## 1. Install AOCL-BLAS
|
||||
|
||||
```bash
|
||||
# Install dependencies
|
||||
sudo apt install build-essential make g++ gfortran cmake
|
||||
|
||||
# Build and install BLIS
|
||||
git clone https://github.com/amd/blis.git
|
||||
cd blis
|
||||
./configure --enable-cblas -t openmp auto
|
||||
make
|
||||
make check
|
||||
sudo make install
|
||||
sudo ldconfig
|
||||
```
|
||||
|
||||
## 2. Configure pkg-config
|
||||
|
||||
```bash
|
||||
# Copy the pkg-config file
|
||||
sudo cp /usr/local/share/pkgconfig/blis-mt.pc /usr/local/share/pkgconfig/cblis.pc
|
||||
```
|
||||
|
||||
## 3. Configure AOCL-BLAS multithreading
|
||||
|
||||
```bash
|
||||
echo "export BLIS_NUM_THREADS=6" >> ~/.bashrc
|
||||
source ~/.bashrc
|
||||
```
|
||||
|
||||
For more details, see:
|
||||
[https://github.com/amd/blis/blob/master/docs/Multithreading.md](https://github.com/amd/blis/blob/master/docs/Multithreading.md)
|
||||
|
||||
---
|
||||
|
||||
## Configuration: `oai_cir/cir_conf.txt`
|
||||
|
||||
The 2nd through 5th rows of the parameters in the `oai_cir/cir_conf.txt` as shown in below can be set freely (the 1st row is read-only).
|
||||
|
||||
1. **Max path gain \[dB]** in the CIR dataset (read-only).
|
||||
2. **Offset \[dB]** added to compensate signal attenuation (typically around (–2)× the first-line value + 5), to fit within the gNB/UE receiver's dynamic range.
|
||||
3. **Noise level \[dB]**.
|
||||
4. **Number of delay taps** $N$ to apply in the convolution.
|
||||
5. **Number of CIR data files** to vary over time based on the mobility scenario.
|
||||
|
||||
Notes:
|
||||
|
||||
* Line 2: To maintain a continuous connection between the gNB and UE throughout the sample scenario, this **Offset** parameter must be finely tuned. If the Offset is set too low, the UE either fails to attach to the gNB or detaches almost immediately. If it is set too high, a COTS UE’s automatic-gain control will engage, complicating the link-budget calculation; with an OAI UE or RF-simulation-based nrUE, the signal will exceed the dynamic range and the UE will likewise fail to attach. In the test environment, a value of roughly **(Max path gain × –2) + 5 dB** seemed to be appropriate.
|
||||
|
||||
* Line 4: After bandwidth filtering, delay taps are sorted by descending amplitude, and only the top $N$ taps are used.
|
||||
With the sample CIR dataset, you can specify any value from 1 to 146.
|
||||
In the test environment, real-time communication between gNB (USRP B200) and COTS UE (Quectel RM500Q-GL) was possible up to $N = 29$; for larger values the real-time processing could not keep up.
|
||||
|
||||
* Line 5: Specifies how many files (maximum = number of files in `oai_cir/cir/output/binary/`, default 230; minimum = 1) to load in sequence.
|
||||
Each file's CIR data is convolved with the baseband signal for 100 ms, then the emulator switches to the next file.
|
||||
Once the last file finishes, the cycle restarts at `delay{amp/index}list0000.b`.
|
||||
|
||||
### Binary file formats
|
||||
|
||||
#### `delayamplist****.b`
|
||||
$h^{\rm re}_{\rm sort,1}, h^{\rm im}_{\rm sort,1}, h^{\rm re}_{\rm sort,2}, h^{\rm im}_{\rm sort,2}, \cdots$
|
||||
|
||||
Each $h^{\rm re/im}_{{\rm sort},n}$ is the real/imaginary part (float32) of the $n$-th highest-amplitude complex tap from the sorted CIR.
|
||||
|
||||
#### `delayindexlist****.b`
|
||||
$i_{\rm sort,1}, i_{\rm sort,2}, i_{\rm sort,3}, \cdots$
|
||||
|
||||
Each $i_{{\rm sort},n}$ is the original delay index (int32) before sorting.
|
||||
|
||||
---
|
||||
|
||||
# Build and Run Emulator
|
||||
|
||||
## Option 1: gNB with USRP
|
||||
Build gNB with USRP mode.
|
||||
```bash
|
||||
cd ~/oai_cir/cmake_targets/
|
||||
sudo ./build_oai -w USRP --gNB
|
||||
```
|
||||
|
||||
Run gNB with USRP mode.
|
||||
```bash
|
||||
cd ~/oai_cir/cmake_targets/ran_build/build
|
||||
./nr-softmodem \
|
||||
-O ../../../targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band77.fr1.106PRB.usrpb210.chemu.yaml \
|
||||
--sa --non-stop -E
|
||||
```
|
||||
|
||||
## Option 2: RF Simulator with gNB and nrUE
|
||||
Build gNB and nrUE with RF simulation mode.
|
||||
```bash
|
||||
cd ~/oai_cir/cmake_targets/
|
||||
sudo ./build_oai -w SIMU --gNB --nrUE
|
||||
```
|
||||
|
||||
Run gNB with RF simulation mode.
|
||||
```bash
|
||||
cd ~/oai_cir/cmake_targets/ran_build/build
|
||||
sudo ./nr-softmodem \
|
||||
-O ../../../targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band77.fr1.106PRB.usrpb210.chemu.yaml \
|
||||
--sa --non-stop --rfsim --rfsimulator.serveraddr server
|
||||
```
|
||||
|
||||
Run nrUE with RF simulation mode.
|
||||
```bash
|
||||
cd ~/oai_cir/cmake_targets/ran_build/build
|
||||
sudo ./nr-uesoftmodem \
|
||||
-C 4019160000 -r 106 --numerology 1 --ssb 144 \
|
||||
--rfsim --non-stop --band 77 --rfsimulator.serveraddr 127.0.0.1
|
||||
```
|
||||
|
||||
# Citation
|
||||
If you use this implementation, please cite it as:
|
||||
```bibtex
|
||||
@misc{OWDT,
|
||||
title = {Open Wireless Digital Twin: End-to-End 5G Mobility Emulation in O-RAN Framework},
|
||||
author = {Tetsuya Iye and Masaya Sakamoto and Shohei Takaya and Eisaku Sato and Yuki Susukida and Yu Nagaoka and Kazuki Maruta and Jin Nakazato},
|
||||
year = {2025},
|
||||
eprint={2503.12177},
|
||||
archivePrefix={arXiv},
|
||||
primaryClass={cs.NI},
|
||||
url={https://arxiv.org/abs/2503.12177v2},
|
||||
}
|
||||
```
|
||||
@@ -300,15 +300,14 @@ add_definitions(-DHAVE_NETINET_IN_H)
|
||||
set(E2_AGENT "OFF" CACHE STRING "O-RAN-compliant E2 Agent")
|
||||
set_property(CACHE E2_AGENT PROPERTY STRINGS "ON" "OFF")
|
||||
|
||||
if (E2_AGENT)
|
||||
set(E2AP_VERSION "E2AP_V2" CACHE STRING "E2AP version")
|
||||
set_property(CACHE E2AP_VERSION PROPERTY STRINGS "E2AP_V1" "E2AP_V2" "E2AP_V3")
|
||||
message(STATUS "Selected E2AP version: ${E2AP_VERSION}")
|
||||
set(E2AP_VERSION "E2AP_V2" CACHE STRING "E2AP version")
|
||||
set_property(CACHE E2AP_VERSION PROPERTY STRINGS "E2AP_V1" "E2AP_V2" "E2AP_V3")
|
||||
message(STATUS "Selected E2AP_VERSION: ${E2AP_VERSION}")
|
||||
|
||||
set(KPM_VERSION "KPM_V2_03" CACHE STRING "The KPM SM version to use")
|
||||
set_property(CACHE KPM_VERSION PROPERTY STRINGS "KPM_V2_03" "KPM_V3_00")
|
||||
message(STATUS "Selected KPM Version: ${KPM_VERSION}")
|
||||
|
||||
set(KPM_VERSION "KPM_V2_03" CACHE STRING "The KPM SM version to use")
|
||||
set_property(CACHE KPM_VERSION PROPERTY STRINGS "KPM_V2_03" "KPM_V3_00")
|
||||
message(STATUS "Selected KPM version: ${KPM_VERSION}")
|
||||
endif()
|
||||
|
||||
add_boolean_option(ENABLE_IMSCOPE OFF "Enable phy scope based on imgui" OFF)
|
||||
add_boolean_option(ENABLE_IMSCOPE_RECORD OFF "Enable recording IQ data for imscope" OFF)
|
||||
@@ -1032,16 +1031,23 @@ add_dependencies(PHY_COMMON dfts)
|
||||
add_library(PHY ${PHY_SRC})
|
||||
target_link_libraries(PHY PRIVATE asn1_lte_rrc_hdrs asn1_nr_rrc_hdrs)
|
||||
|
||||
pkg_check_modules(blas REQUIRED blas)
|
||||
# pkg_check_modules(blas REQUIRED blas)
|
||||
pkg_check_modules(blis REQUIRED blis)
|
||||
pkg_check_modules(lapacke REQUIRED lapacke)
|
||||
|
||||
add_library(PHY_UE ${PHY_SRC_UE})
|
||||
target_link_libraries(PHY_UE PRIVATE asn1_lte_rrc_hdrs asn1_nr_rrc_hdrs UTIL)
|
||||
# RHEL needs also cblas, but Ubuntu does not have it. So `cblas_LIBRARIES` will
|
||||
# be empty for Ubuntu, a no-op
|
||||
pkg_check_modules(cblas cblas)
|
||||
target_link_libraries(PHY_UE PRIVATE ${blas_LIBRARIES} ${cblas_LIBRARIES} ${lapacke_LIBRARIES})
|
||||
target_include_directories(PHY_UE PRIVATE ${blas_INCLUDE_DIRS} ${lapacke_INCLUDE_DIRS})
|
||||
# pkg_check_modules(cblas cblas)
|
||||
# target_link_libraries(PHY_UE PRIVATE ${blas_LIBRARIES} ${cblas_LIBRARIES} ${lapacke_LIBRARIES})
|
||||
# target_include_directories(PHY_UE PRIVATE ${blas_INCLUDE_DIRS} ${lapacke_INCLUDE_DIRS})
|
||||
|
||||
# RHEL needs also cblis, but Ubuntu does not have it. So `cblis_LIBRARIES` will
|
||||
# be empty for Ubuntu, a no-op
|
||||
pkg_check_modules(cblis cblis)
|
||||
target_link_libraries(PHY_UE PRIVATE ${blis_LIBRARIES} ${cblis_LIBRARIES} ${lapacke_LIBRARIES})
|
||||
target_include_directories(PHY_UE PRIVATE ${blis_INCLUDE_DIRS} ${lapacke_INCLUDE_DIRS})
|
||||
|
||||
add_library(PHY_NR_COMMON ${PHY_NR_SRC_COMMON})
|
||||
target_link_libraries(PHY_NR_COMMON PUBLIC UTIL)
|
||||
@@ -1745,7 +1751,8 @@ target_link_libraries(lte-softmodem PRIVATE
|
||||
target_link_libraries(lte-softmodem PRIVATE pthread m CONFIG_LIB rt sctp)
|
||||
target_link_libraries(lte-softmodem PRIVATE ${T_LIB})
|
||||
target_link_libraries(lte-softmodem PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
|
||||
target_link_libraries(lte-softmodem PRIVATE ${blas_LIBRARIES} ${cblas_LIBRARIES} ${lapacke_LIBRARIES} ${lapack_LIBRARIES})
|
||||
# target_link_libraries(lte-softmodem PRIVATE ${blas_LIBRARIES} ${cblas_LIBRARIES} ${lapacke_LIBRARIES} ${lapack_LIBRARIES})
|
||||
target_link_libraries(lte-softmodem PRIVATE ${blis_LIBRARIES} ${cblis_LIBRARIES} ${lapacke_LIBRARIES} ${lapack_LIBRARIES})
|
||||
|
||||
if(E2_AGENT)
|
||||
target_compile_definitions(lte-softmodem PRIVATE ${E2AP_VERSION} ${KPM_VERSION} E2_AGENT)
|
||||
@@ -1801,7 +1808,8 @@ target_link_libraries(lte-uesoftmodem PRIVATE
|
||||
target_link_libraries(lte-uesoftmodem PRIVATE pthread m CONFIG_LIB rt sctp)
|
||||
target_link_libraries(lte-uesoftmodem PRIVATE ${T_LIB})
|
||||
target_link_libraries(lte-uesoftmodem PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
|
||||
target_link_libraries(lte-uesoftmodem PRIVATE ${blas_LIBRARIES} ${cblas_LIBRARIES} ${lapacke_LIBRARIES} ${lapack_LIBRARIES})
|
||||
# target_link_libraries(lte-uesoftmodem PRIVATE ${blas_LIBRARIES} ${cblas_LIBRARIES} ${lapacke_LIBRARIES} ${lapack_LIBRARIES})
|
||||
target_link_libraries(lte-uesoftmodem PRIVATE ${blis_LIBRARIES} ${cblis_LIBRARIES} ${lapacke_LIBRARIES} ${lapack_LIBRARIES})
|
||||
|
||||
# force the generation of ASN.1 so that we don't need to wait during the build
|
||||
target_link_libraries(lte-uesoftmodem PRIVATE
|
||||
@@ -1839,6 +1847,7 @@ target_link_libraries(nr-softmodem PRIVATE pthread m CONFIG_LIB rt sctp)
|
||||
target_link_libraries(nr-softmodem PRIVATE ${T_LIB})
|
||||
target_link_libraries(nr-softmodem PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
|
||||
target_link_libraries(nr-softmodem PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
|
||||
target_link_libraries(nr-softmodem PRIVATE ${blis_LIBRARIES} ${cblis_LIBRARIES} ${lapacke_LIBRARIES})
|
||||
add_boolean_option(OAI_AERIAL OFF "Activate OAI's AERIAL driver" OFF)
|
||||
if (OAI_AERIAL)
|
||||
target_compile_definitions(nr-softmodem PUBLIC ENABLE_AERIAL)
|
||||
|
||||
@@ -46,6 +46,7 @@ Please see [NOTICE](NOTICE.md) file for third party software that is included in
|
||||
* [System Requirements for Using OAI Stack](./doc/system_requirements.md)
|
||||
* [How to build](./doc/BUILD.md)
|
||||
* [How to run the modems](./doc/RUNMODEM.md)
|
||||
* [How to test channel emulation mode](CHANNELEMULATOR.md)
|
||||
|
||||
Not all information is available in a central place, and information for
|
||||
specific sub-systems might be available in the corresponding sub-directories.
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
#define DL_ARFCN 631296
|
||||
#define TDD 1
|
||||
|
||||
log_options: "all.level=debug,all.max_size=0,nas.level=debug,nas.max_size=1,rrc.level=debug,rrc.max_size=1",
|
||||
log_options: "all.level=warn,all.max_size=0,nas.level=debug,nas.max_size=1,rrc.level=debug,rrc.max_size=1",
|
||||
log_filename: "/tmp/ue.log",
|
||||
|
||||
/* Enable remote API and Web interface */
|
||||
com_addr: "0.0.0.0:9002",
|
||||
|
||||
include "rf_driver/config.cfg",
|
||||
include "rf_driver_20/1chan.cfg",
|
||||
|
||||
/* If true, allow the simulation of several UEs at the same time and
|
||||
allow dynamic UE creation from remote API */
|
||||
@@ -22,6 +22,7 @@ allow dynamic UE creation from remote API */
|
||||
cell_groups: [{
|
||||
group_type: "nr",
|
||||
multi_ue: true,
|
||||
ldpc_max_its:8,
|
||||
cells: [{
|
||||
rf_port: 0,
|
||||
bandwidth: 20,
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
/* Parameters for SDR device version 2023-06-10
|
||||
* Copyright (C) 2015-2023 Amarisoft
|
||||
*/
|
||||
|
||||
#if !defined(N_CELL)
|
||||
#define N_CELL 1
|
||||
#endif
|
||||
|
||||
#if N_ANTENNA_DL <= 2
|
||||
#define N_CHAN N_CELL
|
||||
#else
|
||||
#define N_CHAN 2*N_CELL
|
||||
#endif
|
||||
|
||||
rf_driver: {
|
||||
name: "sdr",
|
||||
|
||||
/* list of devices. 'dev0' is always the master. */
|
||||
#if N_CHAN == 1
|
||||
args: "dev0=/dev/sdr0",
|
||||
#elif N_CHAN == 2
|
||||
args: "dev0=/dev/sdr0,dev1=/dev/sdr1",
|
||||
#elif N_CHAN == 3
|
||||
args: "dev0=/dev/sdr0,dev1=/dev/sdr1,dev2=/dev/sdr2",
|
||||
#elif N_CHAN == 4
|
||||
args: "dev0=/dev/sdr0,dev1=/dev/sdr1,dev2=/dev/sdr2,dev3=/dev/sdr3",
|
||||
#elif N_CHAN == 6
|
||||
args: "dev0=/dev/sdr0,dev1=/dev/sdr1,dev2=/dev/sdr2,dev3=/dev/sdr3,dev4=/dev/sdr4,dev5=/dev/sdr5",
|
||||
#else
|
||||
args: "",
|
||||
#endif
|
||||
|
||||
/* synchronisation source: internal, gps, external (default = internal) */
|
||||
// sync: "gps",
|
||||
//rx_antenna:"rx", // force to use the RX connector in TDD as RX antenna
|
||||
|
||||
/* PCIe jitter. decrease it to reduce latency */
|
||||
fifo_tx_time: 50,
|
||||
//rx_latency: 30,
|
||||
},
|
||||
|
||||
#if 0
|
||||
tx_pad_duration:300,
|
||||
#endif
|
||||
|
||||
tx_gain: 75.0, /* TX gain (in dB) */
|
||||
rx_gain: 55.0, /* RX gain (in dB) */
|
||||
@@ -147,127 +147,125 @@ ltebox-nepes:
|
||||
|
||||
amarisoft_ue:
|
||||
Host: amariue
|
||||
InitScript: /root/lteue-linux-2025-03-15/lteue /root/oaicicd/ran_sa_aw2s_asue/aw2s-multi-00102-20.cfg &
|
||||
TermScript: /root/lteue-linux-2025-03-15/ws.js -t 10 127.0.0.1:9002 '{"message":"quit"}' || killall -KILL lteue-avx2
|
||||
NetworkScript: ip netns exec ue1 ip a show dev pdn0
|
||||
InitScript: /root/lteue-linux-2023-10-27/ue/lteue /root/oaicicd/ran_sa_aw2s_asue/aw2s-multi-00102-20.cfg &
|
||||
TermScript: /root/2023-10-27/libs/ws.js -t 10 127.0.0.1:9002 '{"message":"quit"}' || killall -KILL lteue-avx2
|
||||
amarisoft_ue_2x2:
|
||||
Host: amariue
|
||||
InitScript: /root/lteue-linux-2025-03-15/lteue /root/oaicicd/ran_sa_aw2s_asue_2x2/aw2s-multi-00102-2x2-v2.cfg &
|
||||
TermScript: /root/lteue-linux-2025-03-15/ws.js -t 10 127.0.0.1:9002 '{"message":"quit"}' || killall -KILL lteue-avx2
|
||||
NetworkScript: ip netns exec ue1 ip a show dev pdn0
|
||||
InitScript: /root/lteue-linux-2023-10-27/ue/lteue /root/oaicicd/ran_sa_aw2s_asue_2x2/aw2s-multi-00102-2x2-v2.cfg &
|
||||
TermScript: /root/2023-10-27/libs/ws.js -t 10 127.0.0.1:9002 '{"message":"quit"}' || killall -KILL lteue-avx2
|
||||
amarisoft_ue_fhi72:
|
||||
Host: amariue
|
||||
InitScript: /root/lteue-linux-2025-03-15/lteue /root/oaicicd/ran_sa_fhi72_asue_2x2_benetel550/fhi72-multi-20897-2x2.cfg &
|
||||
TermScript: /root/lteue-linux-2025-03-15/ws.js -t 10 127.0.0.1:9002 '{"message":"quit"}' || killall -KILL lteue-avx2
|
||||
InitScript: /root/lteue-linux-2023-10-27/ue/lteue /root/oaicicd/ran_sa_fhi72_asue_2x2_benetel550/fhi72-multi-20897-2x2.cfg &
|
||||
TermScript: /root/2023-10-27/libs/ws.js -t 10 127.0.0.1:9002 '{"message":"quit"}' || killall -KILL lteue-avx2
|
||||
amarisoft_ue_1:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":1}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":1}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":1}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":1}'
|
||||
NetworkScript: ip netns exec ue1 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue1
|
||||
MTU: 1500
|
||||
amarisoft_ue_2:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":2}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":2}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":2}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":2}'
|
||||
NetworkScript: ip netns exec ue2 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue2
|
||||
MTU: 1500
|
||||
amarisoft_ue_3:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":3}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":3}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":3}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":3}'
|
||||
NetworkScript: ip netns exec ue3 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue3
|
||||
MTU: 1500
|
||||
amarisoft_ue_4:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":4}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":4}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":4}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":4}'
|
||||
NetworkScript: ip netns exec ue4 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue4
|
||||
MTU: 1500
|
||||
amarisoft_ue_5:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":5}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":5}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":5}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":5}'
|
||||
NetworkScript: ip netns exec ue5 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue5
|
||||
MTU: 1500
|
||||
amarisoft_ue_6:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":6}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":6}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":6}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":6}'
|
||||
NetworkScript: ip netns exec ue6 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue6
|
||||
MTU: 1500
|
||||
amarisoft_ue_7:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":7}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":7}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":7}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":7}'
|
||||
NetworkScript: ip netns exec ue7 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue7
|
||||
MTU: 1500
|
||||
amarisoft_ue_8:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":8}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":8}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":8}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":8}'
|
||||
NetworkScript: ip netns exec ue8 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue8
|
||||
MTU: 1500
|
||||
amarisoft_ue_9:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":9}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":9}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":9}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":9}'
|
||||
NetworkScript: ip netns exec ue9 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue9
|
||||
MTU: 1500
|
||||
amarisoft_ue_10:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":10}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":10}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":10}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":10}'
|
||||
NetworkScript: ip netns exec ue10 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue10
|
||||
MTU: 1500
|
||||
amarisoft_ue_11:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":11}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":11}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":11}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":11}'
|
||||
NetworkScript: ip netns exec ue11 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue11
|
||||
MTU: 1500
|
||||
amarisoft_ue_12:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":12}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":12}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":12}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":12}'
|
||||
NetworkScript: ip netns exec ue12 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue12
|
||||
MTU: 1500
|
||||
amarisoft_ue_13:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":13}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":13}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":13}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":13}'
|
||||
NetworkScript: ip netns exec ue13 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue13
|
||||
MTU: 1500
|
||||
amarisoft_ue_14:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":14}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":14}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":14}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":14}'
|
||||
NetworkScript: ip netns exec ue14 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue14
|
||||
MTU: 1500
|
||||
amarisoft_ue_15:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":15}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":15}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":15}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":15}'
|
||||
NetworkScript: ip netns exec ue15 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue15
|
||||
MTU: 1500
|
||||
amarisoft_ue_16:
|
||||
Host: amariue
|
||||
AttachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":16}'
|
||||
DetachScript: /root/lteue-linux-2025-03-15/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":16}'
|
||||
AttachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_on","ue_id":16}'
|
||||
DetachScript: /root/2023-10-27/libs/ws.js 127.0.0.1:9002 '{"message":"power_off","ue_id":16}'
|
||||
NetworkScript: ip netns exec ue16 ip a show dev pdn0
|
||||
CmdPrefix: ip netns exec ue16
|
||||
MTU: 1500
|
||||
|
||||
@@ -224,6 +224,7 @@ class HTMLManagement():
|
||||
self.htmlFile.write(' </table>\n')
|
||||
self.htmlFile.write(' </div>\n')
|
||||
self.htmlFile.close()
|
||||
time.sleep(1)
|
||||
if passStatus:
|
||||
cmd = "sed -i -e 's/__STATE_" + self.htmlTabNames[0] + "__//' test_results.html"
|
||||
subprocess.run(cmd, shell=True)
|
||||
|
||||
@@ -213,7 +213,7 @@ def Iperf_analyzeV2UDP(server_filename, iperf_bitrate_threshold, iperf_packetlos
|
||||
pal_msg += f' (too high! >{iperf_packetloss_threshold}%)'
|
||||
return (result, f'{req_msg}\n{bir_msg}\n{brl_msg}\n{jit_msg}\n{pal_msg}')
|
||||
|
||||
def Custom_Command(HTML, node, command):
|
||||
def Custom_Command(HTML, node, command, command_fail):
|
||||
logging.info(f"Executing custom command on {node}")
|
||||
cmd = cls_cmd.getConnection(node)
|
||||
ret = cmd.run(command)
|
||||
@@ -221,20 +221,26 @@ def Custom_Command(HTML, node, command):
|
||||
logging.debug(f"Custom_Command: {command} on node: {node} - {'OK, command succeeded' if ret.returncode == 0 else f'Error, return code: {ret.returncode}'}")
|
||||
status = 'OK'
|
||||
message = []
|
||||
if ret.returncode != 0:
|
||||
if ret.returncode != 0 and not command_fail:
|
||||
message = [ret.stdout]
|
||||
logging.warning(f'Custom_Command output: {message}')
|
||||
status = 'Warning'
|
||||
if ret.returncode != 0 and command_fail:
|
||||
message = [ret.stdout]
|
||||
logging.error(f'Custom_Command failed: output: {message}')
|
||||
status = 'KO'
|
||||
HTML.CreateHtmlTestRowQueue(command, status, message)
|
||||
return status == 'OK' or status == 'Warning'
|
||||
|
||||
def Custom_Script(HTML, node, script):
|
||||
def Custom_Script(HTML, node, script, command_fail):
|
||||
logging.info(f"Executing custom script on {node}")
|
||||
ret = cls_cmd.runScript(node, script, 90)
|
||||
logging.debug(f"Custom_Script: {script} on node: {node} - return code {ret.returncode}, output:\n{ret.stdout}")
|
||||
status = 'OK'
|
||||
message = [ret.stdout]
|
||||
if ret.returncode != 0:
|
||||
if ret.returncode != 0 and not command_fail:
|
||||
status = 'Warning'
|
||||
if ret.returncode != 0 and command_fail:
|
||||
status = 'KO'
|
||||
HTML.CreateHtmlTestRowQueue(script, status, message)
|
||||
return status == 'OK' or status == 'Warning'
|
||||
|
||||
@@ -58,14 +58,6 @@ gNBs =
|
||||
}
|
||||
);
|
||||
|
||||
pdcp = {
|
||||
drb = {
|
||||
sn_size = "len18bits"
|
||||
t_reordering = "ms100"
|
||||
discard_timer = "infinity"
|
||||
}
|
||||
}
|
||||
|
||||
security = {
|
||||
# preferred ciphering algorithms
|
||||
# the first one of the list that an UE supports in chosen
|
||||
|
||||
@@ -163,31 +163,6 @@ gNBs =
|
||||
}
|
||||
);
|
||||
|
||||
rlc = {
|
||||
srb = {
|
||||
t_poll_retransmit = "ms45"
|
||||
t_reassembly = "ms25"
|
||||
t_status_prohibit = "ms0"
|
||||
poll_pdu = "infinity"
|
||||
poll_byte = "infinity"
|
||||
max_retx_threshold = "t8"
|
||||
sn_field_length = "size12"
|
||||
}
|
||||
drb_am = {
|
||||
t_poll_retransmit = "ms45"
|
||||
t_reassembly = "ms15"
|
||||
t_status_prohibit = "ms15"
|
||||
poll_pdu = "p64"
|
||||
poll_byte = "kB500"
|
||||
max_retx_threshold = "t32"
|
||||
sn_field_length = "size18"
|
||||
}
|
||||
drb_um = {
|
||||
t_reassembly = "ms15"
|
||||
sn_field_length = "size12"
|
||||
}
|
||||
}
|
||||
|
||||
MACRLCs = (
|
||||
{
|
||||
num_cc = 1;
|
||||
|
||||
@@ -149,8 +149,6 @@ gNBs =
|
||||
|
||||
#ext2
|
||||
#ntn_Config_r17
|
||||
# This can be of values {s5, s10, s15, s20, s25, s30, s35, s40, s45, s50, s55, s60, s120, s180, s240, s900}
|
||||
ntn-UlSyncValidityDuration-r17 = 240;
|
||||
cellSpecificKoffset_r17 = 478;
|
||||
ta-Common-r17 = 58629666; # 238.74 ms
|
||||
positionX-r17 = 0;
|
||||
|
||||
@@ -21,6 +21,7 @@ gNBs =
|
||||
|
||||
sib1_tda = 15;
|
||||
min_rxtxtime = 6;
|
||||
beam_weights = [0]; // single SSB -> one analog beam
|
||||
|
||||
servingCellConfigCommon = (
|
||||
{
|
||||
@@ -178,7 +179,6 @@ MACRLCs = ({
|
||||
set_analog_beamforming = 1;
|
||||
beam_duration = 1;
|
||||
beams_per_period = 1;
|
||||
beam_weights = [0]; // single SSB -> one analog beam
|
||||
});
|
||||
|
||||
L1s = (
|
||||
|
||||
@@ -376,12 +376,14 @@ def ExecuteActionWithParam(action):
|
||||
# Change all execution targets to localhost
|
||||
node = 'localhost'
|
||||
command = test.findtext('command')
|
||||
success = cls_oaicitest.Custom_Command(HTML, node, command)
|
||||
command_fail = test.findtext('command_fail') in ['True', 'true', 'Yes', 'yes']
|
||||
success = cls_oaicitest.Custom_Command(HTML, node, command, command_fail)
|
||||
|
||||
elif action == 'Custom_Script':
|
||||
node = test.findtext('node')
|
||||
script = test.findtext('script')
|
||||
success = cls_oaicitest.Custom_Script(HTML, node, script)
|
||||
command_fail = test.findtext('command_fail') in ['True', 'true', 'Yes', 'yes']
|
||||
success = cls_oaicitest.Custom_Script(HTML, node, script, command_fail)
|
||||
|
||||
elif action == 'Pull_Cluster_Image':
|
||||
tag_prefix = test.findtext('tag_prefix') or ""
|
||||
@@ -624,7 +626,6 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re
|
||||
HTML.testCase_id=CiTestObj.testCase_id
|
||||
CiTestObj.desc = test.findtext('desc')
|
||||
always_exec = test.findtext('always_exec') in ['True', 'true', 'Yes', 'yes']
|
||||
may_fail = test.findtext('may_fail') in ['True', 'true', 'Yes', 'yes']
|
||||
HTML.desc=CiTestObj.desc
|
||||
action = test.findtext('class')
|
||||
if (CheckClassValidity(xml_class_list, action, id) == False):
|
||||
@@ -638,9 +639,7 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re
|
||||
break
|
||||
try:
|
||||
test_succeeded = ExecuteActionWithParam(action)
|
||||
if not test_succeeded and may_fail:
|
||||
logging.warning(f"test ID {test_case_id} action {action} may or may not fail, proceeding despite error")
|
||||
elif not test_succeeded:
|
||||
if not test_succeeded:
|
||||
logging.error(f"test ID {test_case_id} action {action} failed ({test_succeeded}), skipping next tests")
|
||||
task_set_succeeded = False
|
||||
except Exception as e:
|
||||
|
||||
@@ -95,6 +95,7 @@ class RANManagement():
|
||||
self.cmd_prefix = '' # prefix before {lte,nr}-softmodem
|
||||
self.node = ''
|
||||
self.command = ''
|
||||
self.command_fail = False
|
||||
|
||||
|
||||
#-----------------------------------------------------------
|
||||
|
||||
@@ -27,8 +27,6 @@
|
||||
<htmlTabIcon>wrench</htmlTabIcon>
|
||||
<TestCaseRequestedList>
|
||||
000001
|
||||
000011
|
||||
000012
|
||||
000002
|
||||
000003
|
||||
000004
|
||||
@@ -40,21 +38,7 @@
|
||||
<desc>This should succeed</desc>
|
||||
<node>localhost</node>
|
||||
<command>true</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="000011">
|
||||
<class>Custom_Command</class>
|
||||
<desc>This may fail</desc>
|
||||
<may_fail>true</may_fail>
|
||||
<node>localhost</node>
|
||||
<command>false</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="000012">
|
||||
<class>Custom_Command</class>
|
||||
<desc>This is still executed</desc>
|
||||
<node>localhost</node>
|
||||
<command>true</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="000002">
|
||||
@@ -62,6 +46,7 @@
|
||||
<desc>This should fail</desc>
|
||||
<node>localhost</node>
|
||||
<command>false</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="000003">
|
||||
@@ -69,6 +54,7 @@
|
||||
<desc>This should be skipped</desc>
|
||||
<node>localhost</node>
|
||||
<command>true</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="000004">
|
||||
@@ -77,5 +63,6 @@
|
||||
<always_exec>true</always_exec>
|
||||
<node>localhost</node>
|
||||
<command>true</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
</testCaseList>
|
||||
|
||||
@@ -134,6 +134,7 @@
|
||||
<desc>Simulate a DL radio channel with noise (3 dB)</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo channelmod modify 0 noise_power_dB 3 | nc --send-only 192.168.71.181 8091</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="030021">
|
||||
@@ -165,6 +166,7 @@
|
||||
<desc>Trigger Reestablishment</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ci force_reestab | nc 192.168.71.171 9090 | grep -E 'Reset RLC counters of UE RNTI [0-9a-f]{4} to trigger reestablishment'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="020022">
|
||||
@@ -183,6 +185,7 @@
|
||||
<desc>Verify Reestablishment</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ci get_reestab_count | nc 192.168.71.150 9090 | grep -E 'UE RNTI [0-9a-f]{4} reestab 1'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040021">
|
||||
@@ -190,6 +193,7 @@
|
||||
<desc>Simulate a disruption of DL radio channel (ploss 55)</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo channelmod modify 0 ploss 55 | nc 192.168.71.181 8091</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040022">
|
||||
@@ -197,6 +201,7 @@
|
||||
<desc>Get UE sync state (UE ID 0)</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ciUE sync_state 0 | nc 192.168.71.181 8091 | grep -E UE_NOT_SYNC</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040023">
|
||||
@@ -204,6 +209,7 @@
|
||||
<desc>Restoration of the original DL channel conditions (ploss 20)</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo channelmod modify 0 ploss 20 | nc 192.168.71.181 8091</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040024">
|
||||
@@ -211,6 +217,7 @@
|
||||
<desc>Get UE sync state (UE ID 0)</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ciUE sync_state 0 | nc 192.168.71.181 8091 | grep -E UE_CONNECTED</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040025">
|
||||
@@ -218,6 +225,7 @@
|
||||
<desc>Trigger Handover</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ci trigger_f1_ho | nc 192.168.71.150 9090</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040026">
|
||||
@@ -225,6 +233,7 @@
|
||||
<desc>UE (1) connected to DU-PCI 0?</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ci fetch_du_by_ue_id 1 | nc 192.168.71.150 9090 | grep "3584"</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040027">
|
||||
@@ -232,6 +241,7 @@
|
||||
<desc>UE (1) connected to DU-PCI 1?</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ci fetch_du_by_ue_id 1 | nc 192.168.71.150 9090 | grep "3585"</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="100021">
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
000001
|
||||
000002
|
||||
000003
|
||||
002001
|
||||
010000
|
||||
000004
|
||||
333333
|
||||
@@ -39,6 +40,7 @@
|
||||
010002
|
||||
010003
|
||||
020005
|
||||
010013
|
||||
002006
|
||||
444444
|
||||
100002
|
||||
@@ -48,6 +50,12 @@
|
||||
</TestCaseRequestedList>
|
||||
<TestCaseExclusionList></TestCaseExclusionList>
|
||||
|
||||
<testCase id="002001">
|
||||
<class>IdleSleep</class>
|
||||
<desc>Sleep</desc>
|
||||
<idle_sleep_time_in_sec>10</idle_sleep_time_in_sec>
|
||||
</testCase>
|
||||
|
||||
<testCase id="111110">
|
||||
<class>Pull_Local_Registry</class>
|
||||
<desc>Pull Images from Local Registry</desc>
|
||||
@@ -165,39 +173,43 @@
|
||||
</testCase>
|
||||
|
||||
<testCase id="010000">
|
||||
<class>Deploy_Object</class>
|
||||
<class>Custom_Command</class>
|
||||
<desc>RC monitoring</desc>
|
||||
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
|
||||
<services>xapp-rc-moni</services>
|
||||
<eNB_instance>0</eNB_instance>
|
||||
<eNB_serverId>0</eNB_serverId>
|
||||
<node>localhost</node>
|
||||
<command_fail>yes</command_fail>
|
||||
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_rc_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/rc-moni-010000.log</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="010001">
|
||||
<class>Deploy_Object</class>
|
||||
<class>Custom_Command</class>
|
||||
<desc>KPM monitoring</desc>
|
||||
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
|
||||
<services>xapp-kpm-moni</services>
|
||||
<eNB_instance>0</eNB_instance>
|
||||
<eNB_serverId>0</eNB_serverId>
|
||||
<node>localhost</node>
|
||||
<command_fail>yes</command_fail>
|
||||
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_kpm_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/kpm-moni-010001.log</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="010002">
|
||||
<class>Deploy_Object</class>
|
||||
<class>Custom_Command</class>
|
||||
<desc>KPM monitoring and RC control</desc>
|
||||
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
|
||||
<services>xapp-kpm-rc</services>
|
||||
<eNB_instance>0</eNB_instance>
|
||||
<eNB_serverId>0</eNB_serverId>
|
||||
<node>localhost</node>
|
||||
<command_fail>yes</command_fail>
|
||||
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/kpm_rc/xapp_kpm_rc" > ../cmake_targets/log/5g_rfsimulator_flexric/kpm_rc-010002.log</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="010003">
|
||||
<class>Deploy_Object</class>
|
||||
<class>Custom_Command</class>
|
||||
<desc>Custom SMs monitoring</desc>
|
||||
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
|
||||
<services>xapp-gtp-mac-rlc-pdcp-moni</services>
|
||||
<eNB_instance>0</eNB_instance>
|
||||
<eNB_serverId>0</eNB_serverId>
|
||||
<node>localhost</node>
|
||||
<command_fail>yes</command_fail>
|
||||
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_gtp_mac_rlc_pdcp_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/sms-moni-010003.log</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="010013">
|
||||
<class>Custom_Command</class>
|
||||
<desc>Custom SMs monitoring</desc>
|
||||
<node>localhost</node>
|
||||
<command_fail>yes</command_fail>
|
||||
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_gtp_mac_rlc_pdcp_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/sms-moni-010013.log</command>
|
||||
</testCase>
|
||||
|
||||
</testCaseList>
|
||||
|
||||
@@ -242,7 +242,7 @@
|
||||
|
||||
<testCase id="444445">
|
||||
<class>Detach_UE</class>
|
||||
<desc>Detach OAI UE 3 to 10</desc>
|
||||
<desc>Detach OAI UE 2 to 10</desc>
|
||||
<id>rfsim5g_ue3 rfsim5g_ue4 rfsim5g_ue5 rfsim5g_ue6 rfsim5g_ue7 rfsim5g_ue8 rfsim5g_ue9 rfsim5g_ue10</id>
|
||||
<nodes>cacofonix cacofonix cacofonix cacofonix cacofonix cacofonix cacofonix cacofonix</nodes>
|
||||
</testCase>
|
||||
|
||||
@@ -151,6 +151,7 @@
|
||||
<desc>Force Msg3 C-RNTI RA</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ciUE force_crnti_ra | nc 192.168.71.150 8091</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="040002">
|
||||
@@ -158,6 +159,7 @@
|
||||
<desc>Force RRC_IDLE (UE ID 0)</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>echo ciUE force_RRC_IDLE | nc 192.168.71.150 8091</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="100001">
|
||||
|
||||
@@ -79,6 +79,7 @@
|
||||
<desc>Check that UE synched</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>docker logs rfsim5g-oai-nr-ue-2 | grep -m 1 "PSBCH RX:OK"</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="100001">
|
||||
|
||||
@@ -108,6 +108,14 @@
|
||||
<eNB_serverId>0</eNB_serverId>
|
||||
</testCase>
|
||||
|
||||
<testCase id="004000">
|
||||
<class>Custom_Command</class>
|
||||
<always_exec>true</always_exec>
|
||||
<desc>Clean-Up any residual volume</desc>
|
||||
<node>cacofonix</node>
|
||||
<command>docker volume rm 5g_rfsimulator_tdd_dora_rrc.config</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="222222">
|
||||
<class>Clean_Test_Server_Images</class>
|
||||
<always_exec>true</always_exec>
|
||||
|
||||
@@ -70,9 +70,9 @@
|
||||
|
||||
<testCase id = "100000">
|
||||
<class>Custom_Command</class>
|
||||
<desc>Reset USRP on nepes</desc>
|
||||
<desc>Reset USRP</desc>
|
||||
<node>nepes</node>
|
||||
<command>sudo -S /usr/local/lib/uhd/utils/b2xx_fx3_utils --reset-device</command>
|
||||
<command>sudo -S /usr/lib/uhd/utils/b2xx_fx3_utils --reset-device</command>
|
||||
</testCase>
|
||||
|
||||
<testCase id="200000">
|
||||
|
||||
@@ -182,7 +182,7 @@
|
||||
|
||||
<testCase id="100010">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/3Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (DL/3Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 45M -t 30 -R</iperf_args>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
<iperf_packetloss_threshold>25</iperf_packetloss_threshold>
|
||||
@@ -193,7 +193,7 @@
|
||||
|
||||
<testCase id="100030">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (DL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30 -R</iperf_args>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
<iperf_tcp_rate_target>2</iperf_tcp_rate_target>
|
||||
@@ -202,7 +202,7 @@
|
||||
|
||||
<testCase id="100020">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/1Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (UL/1Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 15M -t 30</iperf_args>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
<iperf_packetloss_threshold>25</iperf_packetloss_threshold>
|
||||
@@ -213,7 +213,7 @@
|
||||
|
||||
<testCase id="100040">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (UL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30</iperf_args>
|
||||
<svr_id>oc-cn5g</svr_id>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
|
||||
<testCase id="000010">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/4Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (DL/4Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 60M -t 30 -R</iperf_args>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
<iperf_packetloss_threshold>25</iperf_packetloss_threshold>
|
||||
@@ -190,7 +190,7 @@
|
||||
|
||||
<testCase id="000030">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (DL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30 -R</iperf_args>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
<iperf_tcp_rate_target>3.9</iperf_tcp_rate_target>
|
||||
@@ -199,7 +199,7 @@
|
||||
|
||||
<testCase id="000020">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/1.5Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (UL/1.5Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 22.5M -t 30</iperf_args>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
<iperf_packetloss_threshold>25</iperf_packetloss_threshold>
|
||||
@@ -210,7 +210,7 @@
|
||||
|
||||
<testCase id="000040">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (UL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30</iperf_args>
|
||||
<svr_id>oc-cn5g</svr_id>
|
||||
<id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15</id>
|
||||
|
||||
@@ -200,12 +200,14 @@
|
||||
<desc>Trigger Reestablishment</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci force_reestab | nc -N 127.0.0.1 9090 | grep -E 'Reset RLC counters of UE RNTI [0-9a-f]{4} to trigger reestablishment'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
<testCase id="060002">
|
||||
<class>Custom_Command</class>
|
||||
<desc>Verify Reestablishment</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci get_reestab_count | nc -N 127.0.0.1 9090 | grep -E 'UE RNTI [0-9a-f]{4} reestab 1'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="030201">
|
||||
|
||||
@@ -188,12 +188,14 @@
|
||||
<desc>Trigger Reestablishment (on DU)</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci force_reestab | nc -N 127.0.0.1 9091 | grep -E 'Reset RLC counters of UE RNTI [0-9a-f]{4} to trigger reestablishment'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
<testCase id="360002">
|
||||
<class>Custom_Command</class>
|
||||
<desc>Verify Reestablishment (on CU)</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci get_reestab_count | nc -N 127.0.0.1 9090 | grep -E 'UE RNTI [0-9a-f]{4} reestab 1'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="100002">
|
||||
|
||||
@@ -233,12 +233,14 @@
|
||||
<desc>Trigger Reestablishment (on DU)</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci force_reestab | nc -N 127.0.0.1 9091 | grep -E 'Reset RLC counters of UE RNTI [0-9a-f]{4} to trigger reestablishment'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
<testCase id="160002">
|
||||
<class>Custom_Command</class>
|
||||
<desc>Verify Reestablishment (on CU)</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci get_reestab_count | nc -N 127.0.0.1 9090 | grep -E 'UE RNTI [0-9a-f]{4} reestab 1'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="130201">
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
<desc>Setup sriov and network interfaces Metanoia</desc>
|
||||
<node>cacofonix</node>
|
||||
<script>yaml_files/sa_fhi_7.2_metanoia_2x2_gnb/setup_sriov_metanoia.sh</script>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="110000">
|
||||
@@ -91,7 +92,7 @@
|
||||
|
||||
<testCase id="100010">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/570Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (DL/570Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 570M -t 30 -R</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_packetloss_threshold>20</iperf_packetloss_threshold>
|
||||
@@ -102,7 +103,7 @@
|
||||
|
||||
<testCase id="100030">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (DL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30 -R</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_tcp_rate_target>80</iperf_tcp_rate_target>
|
||||
@@ -111,7 +112,7 @@
|
||||
|
||||
<testCase id="100020">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/100Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (UL/100Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 100M -t 30</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_packetloss_threshold>20</iperf_packetloss_threshold>
|
||||
@@ -122,7 +123,7 @@
|
||||
|
||||
<testCase id="100040">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (UL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_tcp_rate_target>80</iperf_tcp_rate_target>
|
||||
@@ -165,6 +166,7 @@
|
||||
<desc>Set CPU to idle state, set kernel parameters to default values</desc>
|
||||
<node>cacofonix</node>
|
||||
<script>yaml_files/sa_fhi_7.2_metanoia_2x2_gnb/setup_cleanup.sh</script>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
</testCaseList>
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
100020
|
||||
100030
|
||||
100040
|
||||
100011
|
||||
103000
|
||||
100002
|
||||
130000
|
||||
@@ -50,6 +49,7 @@
|
||||
<desc>Setup sriov and network interfaces VVDN</desc>
|
||||
<node>cacofonix</node>
|
||||
<script>yaml_files/sa_fhi_7.2_vvdn_gnb/setup_sriov_vvdn.sh</script>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="110000">
|
||||
@@ -90,7 +90,7 @@
|
||||
|
||||
<testCase id="100010">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/600Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (DL/600Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 600M -t 30 -R</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_packetloss_threshold>20</iperf_packetloss_threshold>
|
||||
@@ -99,20 +99,9 @@
|
||||
<svr_id>oc-cn5g-20897</svr_id>
|
||||
</testCase>
|
||||
|
||||
<testCase id="100011">
|
||||
<class>Iperf</class>
|
||||
<desc>Optional iperf (DL/700Mbps/UDP)(30 sec)</desc>
|
||||
<may_fail>true</may_fail>
|
||||
<iperf_args>-u -b 700M -t 30 -R</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_packetloss_threshold>10</iperf_packetloss_threshold>
|
||||
<iperf_bitrate_threshold>95</iperf_bitrate_threshold>
|
||||
<svr_id>oc-cn5g-20897</svr_id>
|
||||
</testCase>
|
||||
|
||||
<testCase id="100030">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (DL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (DL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30 -R</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_tcp_rate_target>40</iperf_tcp_rate_target>
|
||||
@@ -121,7 +110,7 @@
|
||||
|
||||
<testCase id="100020">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/80Mbps/UDP)(30 sec)</desc>
|
||||
<desc>iperf (UL/80Mbps/UDP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-u -b 80M -t 30</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_packetloss_threshold>20</iperf_packetloss_threshold>
|
||||
@@ -132,7 +121,7 @@
|
||||
|
||||
<testCase id="100040">
|
||||
<class>Iperf</class>
|
||||
<desc>iperf (UL/TCP)(30 sec)</desc>
|
||||
<desc>iperf (UL/TCP)(30 sec)(multi-ue profile)</desc>
|
||||
<iperf_args>-t 30</iperf_args>
|
||||
<id>up2-fhi72</id>
|
||||
<iperf_tcp_rate_target>10</iperf_tcp_rate_target>
|
||||
@@ -175,6 +164,7 @@
|
||||
<desc>Set CPU to idle state, set kernel parameters to default values</desc>
|
||||
<node>cacofonix</node>
|
||||
<script>yaml_files/sa_fhi_7.2_vvdn_gnb/setup_cleanup.sh</script>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
|
||||
|
||||
@@ -194,12 +194,14 @@
|
||||
<desc>Trigger Reestablishment</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci force_reestab | nc -N 127.0.0.1 9090 | grep -E 'Reset RLC counters of UE RNTI [0-9a-f]{4} to trigger reestablishment'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
<testCase id="260002">
|
||||
<class>Custom_Command</class>
|
||||
<desc>Verify Reestablishment</desc>
|
||||
<node>ofqot</node>
|
||||
<command>echo ci get_reestab_count | nc -N 127.0.0.1 9090 | grep -E 'UE RNTI [0-9a-f]{4} reestab 1'</command>
|
||||
<command_fail>yes</command_fail>
|
||||
</testCase>
|
||||
|
||||
<testCase id="230201">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[NEAR-RIC]
|
||||
NEAR_RIC_IP = 192.168.70.150
|
||||
|
||||
[XAPP]
|
||||
DB_DIR = /tmp/
|
||||
DB_PATH = /flexric/db/
|
||||
DB_NAME = xapp_rnis_db
|
||||
|
||||
@@ -7,79 +7,12 @@ services:
|
||||
ipv4_address: 192.168.70.150
|
||||
volumes:
|
||||
- ./conf/flexric.conf:/usr/local/etc/flexric/flexric.conf
|
||||
- sharedXappLibs:/usr/local/lib/flexric/
|
||||
healthcheck:
|
||||
test: /bin/bash -c "pgrep nearRT-RIC"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
|
||||
xapp-rc-moni:
|
||||
image: ${REGISTRY:-oaisoftwarealliance}/oai-flexric:${FLEXRIC_TAG:-develop}
|
||||
command: "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_rc_moni"
|
||||
container_name: xapp-rc-moni
|
||||
depends_on:
|
||||
- oai-flexric
|
||||
- oai-gnb
|
||||
networks:
|
||||
public_net:
|
||||
ipv4_address: 192.168.70.154
|
||||
volumes:
|
||||
- ./conf/flexric.conf:/usr/local/etc/flexric/flexric.conf
|
||||
healthcheck:
|
||||
test: /bin/bash -c "pgrep xapp_rc_moni"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
|
||||
xapp-kpm-moni:
|
||||
image: ${REGISTRY:-oaisoftwarealliance}/oai-flexric:${FLEXRIC_TAG:-develop}
|
||||
command: "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_kpm_moni"
|
||||
container_name: xapp-kpm-moni
|
||||
depends_on:
|
||||
- oai-flexric
|
||||
- oai-gnb
|
||||
networks:
|
||||
public_net:
|
||||
ipv4_address: 192.168.70.155
|
||||
volumes:
|
||||
- ./conf/flexric.conf:/usr/local/etc/flexric/flexric.conf
|
||||
healthcheck:
|
||||
test: /bin/bash -c "pgrep xapp_kpm_moni"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
|
||||
xapp-kpm-rc:
|
||||
image: ${REGISTRY:-oaisoftwarealliance}/oai-flexric:${FLEXRIC_TAG:-develop}
|
||||
command: "stdbuf -o0 /usr/local/flexric/xApp/c/kpm_rc/xapp_kpm_rc"
|
||||
container_name: xapp-kpm-rc
|
||||
depends_on:
|
||||
- oai-flexric
|
||||
- oai-gnb
|
||||
networks:
|
||||
public_net:
|
||||
ipv4_address: 192.168.70.156
|
||||
volumes:
|
||||
- ./conf/flexric.conf:/usr/local/etc/flexric/flexric.conf
|
||||
healthcheck:
|
||||
test: /bin/bash -c "pgrep xapp_kpm_rc"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
|
||||
xapp-gtp-mac-rlc-pdcp-moni:
|
||||
image: ${REGISTRY:-oaisoftwarealliance}/oai-flexric:${FLEXRIC_TAG:-develop}
|
||||
command: "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_gtp_mac_rlc_pdcp_moni"
|
||||
container_name: xapp-gtp-mac-rlc-pdcp-moni
|
||||
depends_on:
|
||||
- oai-flexric
|
||||
- oai-gnb
|
||||
networks:
|
||||
public_net:
|
||||
ipv4_address: 192.168.70.157
|
||||
volumes:
|
||||
- ./conf/flexric.conf:/usr/local/etc/flexric/flexric.conf
|
||||
healthcheck:
|
||||
test: /bin/bash -c "pgrep -f xapp_gtp_mac_rlc_pdcp_moni"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
|
||||
oai-gnb:
|
||||
image: ${REGISTRY:-oaisoftwarealliance}/${GNB_IMG:-oai-gnb}:${TAG:-develop}
|
||||
privileged: true
|
||||
@@ -94,6 +27,7 @@ services:
|
||||
ipv4_address: 192.168.70.151
|
||||
volumes:
|
||||
- ../../conf_files/gnb.sa.band78.106prb.rfsim.flexric.conf:/opt/oai-gnb/etc/gnb.conf
|
||||
- sharedXappLibs:/usr/local/lib/flexric/
|
||||
healthcheck:
|
||||
test: /bin/bash -c "pgrep nr-softmodem"
|
||||
interval: 10s
|
||||
@@ -138,6 +72,9 @@ services:
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
volumes:
|
||||
sharedXappLibs:
|
||||
|
||||
networks:
|
||||
public_net:
|
||||
name: oai-cn5g-public-net
|
||||
|
||||
BIN
cir/output/binary/delayamplist0000.b
Normal file
BIN
cir/output/binary/delayamplist0000.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0001.b
Normal file
BIN
cir/output/binary/delayamplist0001.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0002.b
Normal file
BIN
cir/output/binary/delayamplist0002.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0003.b
Normal file
BIN
cir/output/binary/delayamplist0003.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0004.b
Normal file
BIN
cir/output/binary/delayamplist0004.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0005.b
Normal file
BIN
cir/output/binary/delayamplist0005.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0006.b
Normal file
BIN
cir/output/binary/delayamplist0006.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0007.b
Normal file
BIN
cir/output/binary/delayamplist0007.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0008.b
Normal file
BIN
cir/output/binary/delayamplist0008.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0009.b
Normal file
BIN
cir/output/binary/delayamplist0009.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0010.b
Normal file
BIN
cir/output/binary/delayamplist0010.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0011.b
Normal file
BIN
cir/output/binary/delayamplist0011.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0012.b
Normal file
BIN
cir/output/binary/delayamplist0012.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0013.b
Normal file
BIN
cir/output/binary/delayamplist0013.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0014.b
Normal file
BIN
cir/output/binary/delayamplist0014.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0015.b
Normal file
BIN
cir/output/binary/delayamplist0015.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0016.b
Normal file
BIN
cir/output/binary/delayamplist0016.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0017.b
Normal file
BIN
cir/output/binary/delayamplist0017.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0018.b
Normal file
BIN
cir/output/binary/delayamplist0018.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0019.b
Normal file
BIN
cir/output/binary/delayamplist0019.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0020.b
Normal file
BIN
cir/output/binary/delayamplist0020.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0021.b
Normal file
BIN
cir/output/binary/delayamplist0021.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0022.b
Normal file
BIN
cir/output/binary/delayamplist0022.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0023.b
Normal file
BIN
cir/output/binary/delayamplist0023.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0024.b
Normal file
BIN
cir/output/binary/delayamplist0024.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0025.b
Normal file
BIN
cir/output/binary/delayamplist0025.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0026.b
Normal file
BIN
cir/output/binary/delayamplist0026.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0027.b
Normal file
BIN
cir/output/binary/delayamplist0027.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0028.b
Normal file
BIN
cir/output/binary/delayamplist0028.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0029.b
Normal file
BIN
cir/output/binary/delayamplist0029.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0030.b
Normal file
BIN
cir/output/binary/delayamplist0030.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0031.b
Normal file
BIN
cir/output/binary/delayamplist0031.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0032.b
Normal file
BIN
cir/output/binary/delayamplist0032.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0033.b
Normal file
BIN
cir/output/binary/delayamplist0033.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0034.b
Normal file
BIN
cir/output/binary/delayamplist0034.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0035.b
Normal file
BIN
cir/output/binary/delayamplist0035.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0036.b
Normal file
BIN
cir/output/binary/delayamplist0036.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0037.b
Normal file
BIN
cir/output/binary/delayamplist0037.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0038.b
Normal file
BIN
cir/output/binary/delayamplist0038.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0039.b
Normal file
BIN
cir/output/binary/delayamplist0039.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0040.b
Normal file
BIN
cir/output/binary/delayamplist0040.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0041.b
Normal file
BIN
cir/output/binary/delayamplist0041.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0042.b
Normal file
BIN
cir/output/binary/delayamplist0042.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0043.b
Normal file
BIN
cir/output/binary/delayamplist0043.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0044.b
Normal file
BIN
cir/output/binary/delayamplist0044.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0045.b
Normal file
BIN
cir/output/binary/delayamplist0045.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0046.b
Normal file
BIN
cir/output/binary/delayamplist0046.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0047.b
Normal file
BIN
cir/output/binary/delayamplist0047.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0048.b
Normal file
BIN
cir/output/binary/delayamplist0048.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0049.b
Normal file
BIN
cir/output/binary/delayamplist0049.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0050.b
Normal file
BIN
cir/output/binary/delayamplist0050.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0051.b
Normal file
BIN
cir/output/binary/delayamplist0051.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0052.b
Normal file
BIN
cir/output/binary/delayamplist0052.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0053.b
Normal file
BIN
cir/output/binary/delayamplist0053.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0054.b
Normal file
BIN
cir/output/binary/delayamplist0054.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0055.b
Normal file
BIN
cir/output/binary/delayamplist0055.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0056.b
Normal file
BIN
cir/output/binary/delayamplist0056.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0057.b
Normal file
BIN
cir/output/binary/delayamplist0057.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0058.b
Normal file
BIN
cir/output/binary/delayamplist0058.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0059.b
Normal file
BIN
cir/output/binary/delayamplist0059.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0060.b
Normal file
BIN
cir/output/binary/delayamplist0060.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0061.b
Normal file
BIN
cir/output/binary/delayamplist0061.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0062.b
Normal file
BIN
cir/output/binary/delayamplist0062.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0063.b
Normal file
BIN
cir/output/binary/delayamplist0063.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0064.b
Normal file
BIN
cir/output/binary/delayamplist0064.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0065.b
Normal file
BIN
cir/output/binary/delayamplist0065.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0066.b
Normal file
BIN
cir/output/binary/delayamplist0066.b
Normal file
Binary file not shown.
BIN
cir/output/binary/delayamplist0067.b
Normal file
BIN
cir/output/binary/delayamplist0067.b
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user