5G NR Throughput UDP vs TCP issue

Hello Experts.

I am getting Good Throughput ~1.2 Gbps with NR cell with UDP.
But with TCP very less tput is observed ~ 400 Mbps only.

Can someone tell what can be the reason?

Did you get a chance to check TCP window size?

Where is it defined?

On Application layer, check Wireshark logs.

Ok. But if we want to change it, will be at gNB?

I meant this issue can be at UE Application layer side, as diff is between UDP & TCP with same gNB.

1 Like

Are you using iPerf or some other app to push Data?

I’m using iPerf.

Then there’s parameters for it on window size (suggestion to Google it).

But do calculate window size first according to your data.
I think mostly 1460 bytes works.

Check Handshake Messages.
TCP Handshake.
Also check Bytes in Flight.

For further trouble shooting do check TCP Sequence and Trace Graphs.

What about RF?

Did you check PRB utilisation, DL MCS etc.?

What RLC mode is used - AM or UM?

RF same in both cond.
PRB util. will naturally be less in TCP than UDP.
RLC AM.

There is a feature called TCP service differentiation.
It may lead poor TCP throughput if parameter settings as reverse baising.
May lead poor throughput.
For TCP packet.

Ok will check.
If you know exact Nokia parameter, please tell.

What is the latency observed?

Multiple reasons can be there:

  1. Check TCP setting(TCP window and all).
  2. BLER
  3. Channel condition
  4. Check fluctuations

TCP data having high fluctuations usually due to this also there is low avg TUP.
Check peak throughput and avg throughput.

Facing same daily in Lab environment. :ok_man:

We are getting udp throughput good but getting issue in TCP throughput.

What parameters we need to check?

Might be related to latency, try multi thread tcp test.

TCP is an end-to-end protocol. Window size is set at end nodes, not at any intermediate device like gNB.

You must check the BLER. If high it will have a minor impact on UDP but will severely degrade TCP performance due to a drop in window size.

Hi, Before I answer, may I know who is server and client…in both scenarios respectively?