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.5+ | 4c2f40d2c2375acf3fca4ccfd7e98d30d971d75d 2025.04.25 |
Ubuntu 24.04 |
1 | 2GB | 20GB |
UPF | 2.7.5+ | 4c2f40d2c2375acf3fca4ccfd7e98d30d971d75d 2025.04.25 |
Ubuntu 24.04 |
1 | 1GB | 20GB |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
C-Plane | 4.0.1 | 228ac5f7b8b0c3d160bccb3470901b3e87e756c9 2025.04.21 (Latest nightly build on 2025.04.27) |
Ubuntu 24.04 |
1 | 2GB | 20GB |
UPF | 1.2.6 | 07801dcf3cfd0516610aae3fa08809cfd0b2497f 2025.03.03 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
gtp5g (UPF) |
0.9.14 | 3b9166f29812b9613447225d10beb28ef087cf4c 2025.04.21 |
-- | -- | -- | -- |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
UPF | 1.13.0 | dfdf64000566d35955d7c180720ff66086bd3572 2024.03.25 |
Ubuntu 22.04 |
2 | 8GB | 20GB |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
UPF | 0.7.1+ | 8c2097ea87413f8497076a4b20f0f91d4531ac8d 2025.04.16 |
Ubuntu 24.04 |
1 | 2GB | 20GB |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
RAN & UE | 3.2.7+ | 27b496ce3d8ff91404a25b2a116eff6ccfecae52 2025.04.28 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
RAN | 24.10+ | 122a1377e33f0071e2aa88028cf29740106654f5 2025.05.07 |
Ubuntu 24.04 |
4 | 4GB | 10GB |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
RAN & UE | 23.11+ | ec29b0c1ff79cebcbe66caa6d6b90778261c42b8 2024.02.01 |
Ubuntu 24.04 |
1 | 2GB | 10GB |
Role | Version | Commit & Date | OS | CPU (Min) |
Mem (Min) |
HDD (Min) |
---|---|---|---|---|---|---|
RAN & UE | 20250225+ | 2b2657337f48a2586d1a7f604ac3674085503b21 2025.04.02 |
Ubuntu 24.04 |
1 | 1GB | 10GB |
gtp5g (RAN) |
0.9.14 | 3b9166f29812b9613447225d10beb28ef087cf4c 2025.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: true
insmf.yaml
. See here for the reason.smf.yaml
global: parameter: use_upg_vpp: true
-
To connect free5GC SMF to UPG-VPP, add the following parameter
nwInstFqdnEncoding: true
insmfcfg.yaml
. See here for the reason.smfcfg.yaml
configuration: 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