How to measure broadband performance

Soldato
Joined
18 Oct 2002
Posts
2,995
Hi,
So, I've just signed up for Vodafone Gigafast, 900Mb broadband (no horror stories please :D ).

Before it's activated, I'd quite like to build up a bit of a history of how my current broadband performs, just so I've got some facts if anything get's worse.

So, my simple view of it is I just got to speedtest.net a few times a day and take a measurement.
Is there anything a bit more scientific anyone could suggest, or is that good enough?

My PC (gigabit LAN adapter) is connected to the router via LAN cable (cat6e) , and I've also got a laptop (100Mb LAN adapter) connected via LAN cable (cat5e) , so I've got two different machines cabled into the same router. And obviously a load of Wifi devices as per most households nowadays.

Cheers
 
If you use Speedtest.net make find a server that provides consistent results and stick to it. Comparing between different endpoints is pointless. Finding an endpoint fast enough will narrow down the available options.

Hopefully, that cat6e is a type for Cat6a or Cat5e. There is some junk cable out there sold as Cat6e.

There's obviously no point trying to test a 900Mbps connection using a laptop with 100Mbps Ethernet.
 
Cool. I've found a "vodafone" server on Speedtest.net, so I'll start using that.

Hopefully, that cat6e is a type for Cat6a or Cat5e. There is some junk cable out there sold as Cat6e.
Ah, yes, the website I bought it from actually said "CAT.6". I added the "e" by mistake.

There's obviously no point trying to test a 900Mbps connection using a laptop with 100Mbps Ethernet.
Good point :) I could measure upload on it though I guess.
 
Ah, that's pretty cool - you set it up and it does all the hard work for you!

Just waiting for the graph to populate:



I'll use that, coupled with some speedtests from the same site.

Edit: I think the packet loss scale is the wrong way around.....dropped packets went from 0% dropped (and no latency data), to 100% (and latency data appeared), after I enabled "WAN Pings" on my router. You'd normally put 0% at the bottom and 100% at the top of your scale.
 
Last edited:
For measuring performace I'd grab iperf3 use a public iperf server.

To test the upstream:
Code:
iperf3.exe -c bouygues.iperf.fr -P 20 -t 60 -i 60


For the downstream:
Code:
iperf3.exe -c bouygues.iperf.fr -P 20 -t 60 -i 60 -R


The command switches I used were:

-c = Tell iperf which server to connect to
-P 20 = Run 20 parallel streams. A single stream isn't accurate with a high bandwidth connection. I'd suggest using 10 as a minimum.
-t 60 = Run the test for 60 seconds (default is 10).
-i 60 = Report the results every 60 seconds (default is 10).
-R = Run the test in reverse. Default is that data is uploaded from your local client to the server. Adding -R does it the other way which makes it a test of your download.

The result will show something along these lines, you only need to look at the figures at the bottom of the output as it'll give you the figures for each stream. It's the sum that's interesting.

Code:
[SUM]   0.00-60.00  sec   774 MBytes   108 Mbits/sec                  sender
[SUM]   0.00-60.00  sec   773 MBytes   108 Mbits/sec                  receiver


That was from the first test (so without -R in the command) which shows my upstream bandwidth to be 108Mbps.
 
Edit: I think the packet loss scale is the wrong way around.....dropped packets went from 0% dropped (and no latency data), to 100% (and latency data appeared), after I enabled "WAN Pings" on my router. You'd normally put 0% at the bottom and 100% at the top of your scale.

They've done it that way so that the packet loss and latency aren't being plotted one on top of the other.
 
iperf seems a little bit hit and miss.
Sometimes it works alright, sometimes I think the remote server must be too busy or overloaded.

Code:
pi@raspberrypi:~ $ iperf3 -c bouygues.iperf.fr -P 20 -t 60 -i 10 -R
iperf3: error - the server is busy running a test. try again later
pi@raspberrypi:~ $ iperf3 -c bouygues.iperf.fr -P 20 -t 60 -i 10 -R
iperf3: error - the server is busy running a test. try again later
pi@raspberrypi:~ $ iperf3 -c bouygues.iperf.fr -P 20 -t 60 -i 10 -R
iperf3: error - the server is busy running a test. try again later
pi@raspberrypi:~ $ iperf3 -c bouygues.iperf.fr -P 20 -t 60 -i 10 -R
iperf3: error - unable to receive control message: Connection reset by peer
pi@raspberrypi:~ $ iperf3 -c bouygues.iperf.fr -P 20 -t 60 -i 10 -R
Connecting to host bouygues.iperf.fr, port 5201
Reverse mode, remote host bouygues.iperf.fr is sending
[  5] local 192.168.1.91 port 54074 connected to 89.84.1.222 port 5201
[  7] local 192.168.1.91 port 54076 connected to 89.84.1.222 port 5201
[  9] local 192.168.1.91 port 54078 connected to 89.84.1.222 port 5201
[ 11] local 192.168.1.91 port 54080 connected to 89.84.1.222 port 5201
[ 13] local 192.168.1.91 port 54082 connected to 89.84.1.222 port 5201
[ 15] local 192.168.1.91 port 54084 connected to 89.84.1.222 port 5201
[ 17] local 192.168.1.91 port 54086 connected to 89.84.1.222 port 5201
[ 19] local 192.168.1.91 port 54088 connected to 89.84.1.222 port 5201
[ 21] local 192.168.1.91 port 54090 connected to 89.84.1.222 port 5201
[ 23] local 192.168.1.91 port 54092 connected to 89.84.1.222 port 5201
[ 25] local 192.168.1.91 port 54094 connected to 89.84.1.222 port 5201
[ 27] local 192.168.1.91 port 54096 connected to 89.84.1.222 port 5201
[ 29] local 192.168.1.91 port 54098 connected to 89.84.1.222 port 5201
[ 31] local 192.168.1.91 port 54100 connected to 89.84.1.222 port 5201
[ 33] local 192.168.1.91 port 54102 connected to 89.84.1.222 port 5201
[ 35] local 192.168.1.91 port 54104 connected to 89.84.1.222 port 5201
[ 37] local 192.168.1.91 port 54106 connected to 89.84.1.222 port 5201
[ 39] local 192.168.1.91 port 54108 connected to 89.84.1.222 port 5201
[ 41] local 192.168.1.91 port 54110 connected to 89.84.1.222 port 5201
[ 43] local 192.168.1.91 port 54112 connected to 89.84.1.222 port 5201
iperf3: error - control socket has closed unexpectedly
 
Code:
iperf3: error - the server is busy running a test. try again later

Most of the public servers can only run 1 test at a time.

The other error seems specific to that server, I haven't seen it on any others but it seems to happen right after a previous test has ended.

What model of Raspberry Pi are you running the test on? They don't have the best network interfaces known to man, at lower bandwidths they're OK but I wouldn't use one for a test when you've got your Vodafone FTTP connection even if the Pi may have a 1Gbps NIC.
 
Back
Top Bottom