Testing Local Network Performance with iPerf
In my last iPerf post, I showed how you can use iPerf to test internet speed using a server that I host in Azure. This is really handy when you want to get a good starting point to diagnose network issues for things like staff working from home. What about when someone complains that it is taking forever to open a file from the file server running on the same network? Once again, iPerf to the rescue.
Whereas last time we looked as iPerf running in client mode, let's look at the iPerf server mode. iPerf packages both the server and client in the same binary, so if you've already got the package downloaded, it's just a matter of using --server
instead of --client
:
> iperf3.exe --port 5200 --server
You'll probably get a firewall warning confirming that you want to let iPerf listen on port 5200, but that's it. Now your computer is waiting for client connections to come in. Just like last time, you can use the client to test your speed across the network:
> iperf3.exe --client 192.168.1.20 --port 5200
Connecting to host 192.168.1.20, port 5200
[ 4] local 192.168.1.21 port 31416 connected to 192.168.1.20 port 5200
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 328 MBytes 2.75 Gbits/sec
[ 4] 1.00-2.01 sec 256 MBytes 2.12 Gbits/sec
[ 4] 2.01-3.01 sec 356 MBytes 3.00 Gbits/sec
[ 4] 3.01-4.01 sec 542 MBytes 4.53 Gbits/sec
[ 4] 4.01-5.01 sec 401 MBytes 3.37 Gbits/sec
[ 4] 5.01-6.01 sec 271 MBytes 2.28 Gbits/sec
[ 4] 6.01-7.01 sec 443 MBytes 3.68 Gbits/sec
[ 4] 7.01-8.01 sec 298 MBytes 2.50 Gbits/sec
[ 4] 8.01-9.00 sec 310 MBytes 2.64 Gbits/sec
[ 4] 9.00-10.00 sec 284 MBytes 2.39 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 3.41 GBytes 2.93 Gbits/sec sender
[ 4] 0.00-10.00 sec 3.41 GBytes 2.93 Gbits/sec receiver
So TCP packets are crossing the network at ~3Gbps, so... it's probably not the network causing those slow file opens.