I conducted Iperf3 test on my network. I received in server side that sender transfer bandwidth is zero but Client side showed a bandwidth of 125 Mbps.

What went wrong?

The command I wrote was Iperf3 -c - t

Server Output

  • .. since you're looking at the server side here (iperf3 -s), this side has been operating as a receiver (see below answer for more details), and reports received traffic. It has not been acting as a sender, therefore there is nothing to report as sender. Try the same test, but add -R from the client to force the server into the sender role. Nov 22, 2023 at 16:06

1 Answer 1


With iPerf3 [1], looking at, respectively working from the responder or "server" side (running iperf3 -s) is of lesser interest.

You can gain as much, or even more information from the initiator or "client" side (where iperf3 -c server.hostname.or.ip ... is used.).

Be aware that the "client" is always the initiator, and the "server" is always the responder. So if there are firewalls along the path from "client" to "server", they'll only have to permit traffic in the the initiator -> responder direction.

However, by default, the client will send ("upload"), unless you set -R for reverse mode, wich will cause the server to send ("download").

If, operating from the client side, you want to see the server side results, add --get-server-output as command line option on the client side.

This is especially useful when testing with UDP, as only the receiver side can dectect packet loss and measure jitter and report on them.

[1] This is different from iperf2.x and 1.7x, where working interactively from both sides at the same time was indeed needed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.