This is a memo of environment information when briefly confirming the operation of some functions of each open source. Please note that it may not work depending on the environment. Also, please note that there may be cases where I have not been able to confirm operation due to my settings being incorrect.
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| C-Plane | 2.7.6+ | 782a97efe9e3acb1251e318bd3738ced4044dac82025.12.06 |
Ubuntu 24.04 |
1 | 2GB | 20GB |
| UPF | 2.7.6+ | 782a97efe9e3acb1251e318bd3738ced4044dac82025.12.06 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| C-Plane | 4.0.1 | 228ac5f7b8b0c3d160bccb3470901b3e87e756c92025.04.21 (Latest nightly build on 2025.04.27) |
Ubuntu 24.04 |
1 | 2GB | 20GB |
| UPF | 1.2.6 | 07801dcf3cfd0516610aae3fa08809cfd0b2497f2025.03.03 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
| gtp5g (UPF) |
0.9.14 | 3b9166f29812b9613447225d10beb28ef087cf4c2025.04.21 |
-- | -- | -- | -- |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| UPF | 1.13.0 | dfdf64000566d35955d7c180720ff66086bd35722024.03.25 |
Ubuntu 22.04 |
2 | 8GB | 20GB |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| UPF | 0.7.1+ | a8d774a0533ad71ddd59899be26f4aee8a31b5d22025.06.16 |
Ubuntu 24.04 |
1 | 2GB | 10GB |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| RAN & UE | 3.2.7+ | b4157fa9413a083a3b996c694067a011751fae822025.10.25 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| RAN | 24.10+ | 122a1377e33f0071e2aa88028cf29740106654f52025.05.07 |
Ubuntu 24.04 |
4 | 4GB | 10GB |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| RAN & UE | 23.11+ | ec29b0c1ff79cebcbe66caa6d6b90778261c42b82024.02.01 |
Ubuntu 24.04 |
1 | 2GB | 10GB |
| Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
|---|---|---|---|---|---|---|
| RAN & UE | 20250225+ | 2b2657337f48a2586d1a7f604ac3674085503b212025.04.02 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
| gtp5g (RAN) |
0.9.14 | 3b9166f29812b9613447225d10beb28ef087cf4c2025.04.21 |
-- | -- | -- | -- |
Below are the results of confirming the operation of ping and iperf3 in my environment.
| UE | RAN | C-Plane | UPF | N3/N4/N6 | Ping | iPerf3 |
|---|---|---|---|---|---|---|
| UERANSIM [4] | UERANSIM | Open5GS | Open5GS | Separate | OK | OK |
| Same | OK | OK | ||||
| UPG-VPP | Separate | OK [2] | OK [2] | |||
| eUPF | Separate | OK | OK | |||
| free5GC | free5GC | Separate | OK | OK | ||
| Same | OK | OK | ||||
| UPG-VPP | Separate | OK [3] | OK [3] | |||
| eUPF | Separate | OK | OK | |||
| srsRAN_4G [5] | srsRAN_Project | Open5GS | Open5GS | Separate | OK | OK |
| Same | OK | OK | ||||
| UPG-VPP | Separate | OK [1][2] | OK [1][2] | |||
| eUPF | Separate | OK | OK | |||
| free5GC | free5GC | Separate | OK | OK | ||
| Same | OK | OK | ||||
| UPG-VPP | Separate | OK [1][3] | OK [1][3] | |||
| eUPF | Separate | OK | OK | |||
| PacketRusher [6] | PacketRusher | Open5GS | Open5GS | Separate | OK | OK |
| Same | OK | OK | ||||
| UPG-VPP | Separate | OK [2] | OK [2] | |||
| eUPF | Separate | OK | OK | |||
| free5GC | free5GC | Separate | OK | OK | ||
| Same | OK | OK | ||||
| UPG-VPP | Separate | OK [3] | OK [3] | |||
| eUPF | Separate | OK | OK |
| UE | RAN | C-Plane | SGW-U | PGW-U (UPF) | S5u/Sxb/SGi | Ping | iPerf3 |
|---|---|---|---|---|---|---|---|
| srsRAN_4G [7] | srsRAN_4G | Open5GS | Open5GS | Open5GS | Separate | OK | OK |
| Same | OK | OK | |||||
| UPG-VPP | Separate | OK [2] | OK [2] | ||||
| eUPF | Separate | OK | OK |
-
UPG-VPP v1.13.0 does not support
PDU Session container. Therefore, some gNodeBs such as srsRAN_Project, may not accept GTP traffic from UPG-VPP. In that case, please refer to this note. In these results, I applied this temporary patch and confirmed that it worked with the gNodeB of srsRAN_Project. -
To connect Open5GS SMF to UPG-VPP, add the following parameter
use_upg_vpp: trueinsmf.yaml. See here for the reason.smf.yamlglobal: parameter: use_upg_vpp: true -
To connect free5GC SMF to UPG-VPP, add the following parameter
nwInstFqdnEncoding: trueinsmfcfg.yaml. See here for the reason.smfcfg.yamlconfiguration: nwInstFqdnEncoding: true -
The MTU of the tunnel interface of UERANSIM is fixed at 1400 bytes.
-
The MTU of the tunnel interface of srsRAN_4G NR-UE is 1500 bytes by default. With this value, uplink packets are fragmented at srsRAN_Project gNodeB. So for avoiding IP fragmentation, reduce the MTU of the tunnel interface of srsRAN_4G NR-UE to 1456 bytes. This 1456 bytes is 1500 bytes minus 44 bytes. The 44 bytes is the size of the headers added when srsRAN_Project gNodeB encapsulates the uplink packets into GTP-U, and consists of IP Header (20 bytes), UDP Header (8 bytes) and GTP-U Header (12 bytes + 4 bytes) including one GTP-U Extension Header for QFI. See
3GPP TS 29.281 - 5 GTP-U header. For example, if the tunnel interface of srsRAN_4G NR-UE istun_srsue, set it as follows.# ip link set tun_srsue mtu 1456 -
The MTU of the tunnel interface of PacketRusher NR-UE is 1464 bytes by default. With this value, uplink packets are fragmented at the gNodeB equivalent function in PacketRusher. So for avoiding IP fragmentation, reduce the MTU of the tunnel interface of PacketRusher NR-UE to 1456 bytes. This 1456 bytes is the same meaning as the value explained in [5]. For example, if the interface assigned to VRF of PacketRusher is
val0000001000, set it as follows.# ip link set val0000001000 mtu 1456 -
The MTU of the tunnel interface of srsRAN_4G UE is 1500 bytes by default. With this value, uplink packets are fragmented at srsRAN_4G eNodeB. So for avoiding IP fragmentation, reduce the MTU of the tunnel interface of srsRAN_4G UE to 1464 bytes. This 1464 bytes is 1500 bytes minus 36 bytes. The 36 bytes is the size of the headers added when srsRAN_4G eNodeB encapsulates the uplink packets into GTP-U, and consists of IP Header (20 bytes), UDP Header (8 bytes) and GTP-U Header (8 bytes, No Sequence Number and No GTP-U Extension Header). See
3GPP TS 29.281 - 5 GTP-U header. For example, if the tunnel interface of srsRAN_4G UE istun_srsue, set it as follows.# ip link set tun_srsue mtu 1464