Add a paragraph about the application here...
- python3-dev;
- libsctp-dev;
- librdkafka-dev;
- ninja-build;
- swig v4.1 or newer;
To use the xApp, it is necessary to utilize the near RT RIC. In this work's context, we use Flexric. Therefore, before compiling and running the xApp, we first need to deploy Flexric.
- Cmake (at least v3.22);
- SWIG ((at least v4.1);
- GCC (gcc-10, gcc-12, or gcc-13) - no support for gcc-11;
git clone https://github.com/swig/swig.git
cd swig
git checkout release-4.1
./autogen.sh
./configure --prefix=/usr/
make -j8
make installThe required dependencies can be installed using the following command:
sudo apt install libsctp-dev python3.8 cmake-curses-gui libpcre2-dev python3-devAfter installing all prerequisites, clone the Flexric repository using the following command:
git clone https://gitlab.eurecom.fr/mosaic5g/flexric.git
# Recommended to use the dev branch
git checkout <here put the release tag>Then, build the near RT RIC using the following commands:
mkdir -p build && cd build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DE2AP_VERSION=E2AP_V3 -DKPM_VERSION=KPM_V3_00 ..
ninja install NOTE: We use version 3 of KPM and E2AP, which are compatible with our xApp.
cd ~/flexric/build/examples/ric/
./nearRT-RICIn addition to Flexric, we will need the E2 Node agents. The gNB can be deployed as a monolithic instance or using the CU/DU split:
- gNB-mono
cd ~/flexric/build/examples/emulator/agent
./emu_agent_gnb- gNB-split
cd ~/flexric/build/examples/emulator/agent
./emu_agent_gnb_cu
./emu_agent_gnb_duOnce the deployment is successful, the xApp can be used.
NOTE: This tutorial is based on the official Flexric documentation.
docker container run -itd --name iqos-xapp -e NEAR_RIC_IP="<NEAR_RIC_IP>" muriloavlis/iqos-xapp:latestClone the xApp repository with the following command.
git clone --recurse-submodules -j8 git@github.com:gercom-ufpa/iqos-xapp.gitBuild the xApp.
mkdir -p build && cd build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DE2AP_VERSION=E2AP_V3 -DKPM_VERSION=KPM_V3_00 ..
ninja xapp_iqosAfter building, the xApp can be run with the following command.
./xapp_iqos -c ../configs/xApp.conf NOTE: In the xApp.conf file we can set the Flexric IP.