I am using iperf to test my bandwidth. But I am not getting whether it is showing my upload or download speed. Say, I have two PCs A and B. If I want to test how fast I can download a file to A from B, where should I run the server i.e "iperf -s" ? on A or B ? Thanks in advance.
4 Answers
With the iperf3 you can use the -R
option to send the traffic from Server to client.
-R, Reverse test mode – Server sends, client receives

- 241
- 2
- 3
Traffic way is from client to server.
From manpage:
To perform an iperf test the user must establish both a server (to discard traffic) and a client (to generate traffic)

- 176
- 3
-
There's a great gui to Iperf that can be found at http://code.google.com/p/xjperf/ – Florent Courtay Feb 10 '11 at 15:11
With iperf 2 on can use --reverse or -R (for non-windows) to reverse the traffic and get through a NAT firewall. Iperf 2 also supports --full-duplex for same socket full duplex traffic. The options of -d or --dualtest will provide two sockets (but won't pierce a NAT firewall so one has to either remove it or configure port forwarding.) The - r or --tradeoff will serialize the upstream then the downstream.
One can use --bounceback for latency testing and --bounceback-congest for latency testing while there is a "working load." This hasn't been released yet so one has to compile the master branch from source.

- 101
- 1
It's from to.
So if you run the listen daemon on B, and connect via A thats testing the TX performance from A to B, simply do it the other way around to test the connection back.

- 21
- 1