I'm trying to doing some bandwidth test by run iperf on my device,
My Network Max Bandwith is 100 Mbps
(test by speed test CLI – https://github.com/sivel/speedtest-cli)
And I ran the iperf UDP bandwidth test
(like this $(iperf3 -c $server_ip -u -b 500M ))
And then I get the result
(almost 500Mbps in client side message)
Is the result right ?
All the possibilities now I think is that the client side iperf is just calculate the sender bandwidth (because of UDP)
Best Answer
When using UDP, you really should check the output on the server side. UDP has no congestion control, so yes, the client just creates a constant bitrate stream. However, iperf on the server side will display the received bitrate, as well as jitter and packet loss.
What's the reason for using UDP? It's mostly useful for specialized cases, like checking jitter with various packet sizes. TCP is much more useful with iperf for cases like this (you may have to adjust the window size if you have a large delay between the client and the server).
Here's a sample output in UDP mode on the server side: