How many number of ue's does an free5gc support?

I tried to attach multiple ues but it is attaching only 22 ues ,after that UPF is giving an warning , error and segmentation fault.

This might be the same issue. We’ll check the bug.

Can you please attach multi UE with a short waiting time and observe whether the issue will be similar?


yes,I already tried with out any delaying it is giving the same issue.

We mean is, try waiting for 1 or 2 seconds on each UE attach.

I have previously tested by delaying it and in some cases it indeed works, but the buffers still fill up after some time.

In UPF, we use transaction to maintain some CP information. The transaction will free by timeout mechanism. So if the CP msg comes together at the same time, the only way is to larger the buffer. The problem may be cause by this (or may not).

The other problem is that we used too much buffer to maintain one information. This may be fix but not fix it yet.

I also tried to increase the buffer in the UPF, and that way I could increase the number of UEs connected to around 60, but after that the error would appear again.
I guess as long as there are free resources, you could increase the buffers but that is not a scalable solution.

1 Like

How to increase an buffer ?

You may try to change buffer size on /lib/utlt/src/utlt_buff.c

Hi Sanihitha,

May I ask are you adding UE emulation or commercial UE to the system? We have tried to added Samsung A90 to the system through a gNB/eNB. But we kept on getting errors of unknown UE type. I am wondering whether you can give us some suggestions.

Best Regards,

Samsung A90 seems to be an NSA’s UE. We’re not sure if it will be able to send 5G SA message.

Thank you for the reply. We don’t have a commercial SA UE, we are using stage 1 free5GC for NSA. So far, we are able to connect Samsung A90 and Samsung S20 to Free5GC stage 1. Does stage3 support NSA UE?

No, stage 3 does not support NSA UE. It just support SA architecture.

Got it, thank you very much. I will keep them separate on testing NSA and SA.

Did you use the sw simulator or real UEs to make capacity test?
I once did the multiUE test with simulator (120 UEs) and made the ping on userplane to a local server.
of course ,I changed the buffer size,otherwise,it will failed less than 100 UEs.
Below is my setting .
(i also attach my pcap data for checking).
#define MAX_NUM_OF_BUFBLK_POOL 256*32

#define MAX_NUM_OF_BUFBLK_POOL_64 128 * 32
#define MAX_NUM_OF_BUFBLK_POOL_128 128 * 16
#define MAX_NUM_OF_BUFBLK_POOL_256 128 * 8
#define MAX_NUM_OF_BUFBLK_POOL_512 64 * 8
#define MAX_NUM_OF_BUFBLK_POOL_1024 64 * 4
br,thornton.Batch120.pcap (366.5 KB)

Hi bro,
I checked the topics by search your username but didn’t find the topo and configuration files. Could you pls upload them again or share them with a github repo. So I can star or fork to trace your progress, which I think can be very helpful for me and others who try to do the performance tests. Thanks a lot.

Hi @thornton

I have expanded the buffer the same as you but I only get 10 UEs until core says pool empty. Any suggestions?

You can check in this topic " [How the simulated UE provided by free5GC can ping]"
I answered the question,and attached the instruction.(pdf)

Hi bro,
What is a sw simulator? I want to get a throughput between the ran and upf as well as smf and upf. I changed source code in test part and send a batch of GTP packets than get a captured file. Analyzing it in wireshark and it shows 312K pps and 25M bytes per second in two directions and half in one direction. I use two 10Gb network cards and my mate told me those numbers were not good enough. And I want to captured some traffic of PFCP protocol, so I need some simulated UEs. How do you simulate them? Use a simulator or by modifying the source code? (Thanks for you instruction pdf file, it do help me understand the setup and configuration :smiley:)

Iperf,one attached to UE(by hotpoint), one running in server behind of sig . then you can test the up/down by setting the iperf.