MiguelNdeCarvalho/speedtest-exporter

Speedtest results are inaccurate - CLOSED / No Issue

Closed this issue · 3 comments

EDIT - Seems that Ookla app is working properly and that my internet is faster than I realized. Seems speedtest-cli is written in Python and can't get as high of a speed as the Ookla app.

Download speeds are being reported artificially high due to Ookla client 1.0.0.2 on Raspberry PI OS with Pi 4.

My internet circuit is 300Mbps download, yet the Speedtest-exporter using Ookla client 1.0.0.2 is consistently showing 600-700Mbps.
This is happening both inside the container, as well as when using Speedtest 1.0.0.2 directly from the main OS.
I discovered this after setting up https://github.com/geerlingguy/internet-pi which is using MiguelNdeCarvalho/speedtest-exporter.

It seems the latest Speedtest CLI program is significantly different (input parameters and output JSON), so I can't simply update the Dockerfile with the latest version of the Speedtest CLI.

  • Is this happening to anyone else?
  • Are there any plans to update the container to use a newer version of the CLI?

Using a new Raspberry Pi 4 with 4GB of RAM and Raspberry Pi OS 11 (bullseye). Latest as of 2021-12-28.

pi@raspberrypi:/tmp $ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)"
NAME="Raspbian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"


------------------------------------------------------------------------------------
pi@raspberrypi:/tmp $ ./speedtest --version
Speedtest by Ookla 1.0.0.2 (5ae238b) Linux/arm-linux-musleabi 5.10.63-v7l+ arm/armv7l

The official command line client for testing the speed and performance
of your internet connection.

pi@raspberrypi:/tmp $ ./speedtest

   Speedtest by Ookla

     Server: Whitesky Communications LLC - Chicago, IL (id = 23097)
        ISP: Comcast Cable
    Latency:    10.71 ms   (2.99 ms jitter)
   Download:   700.53 Mbps (data used: 1.2 GB)                               
     Upload:    20.16 Mbps (data used: 11.8 MB)                               
Packet Loss:     0.0%
 Result URL: https://www.speedtest.net/result/c/528fdaec-cb46-44cd-a268-f74547da166f

=======================================================================================

pi@raspberrypi:/tmp $ speedtest --version
speedtest-cli 2.1.3
Python 3.9.2 (default, Mar 12 2021, 04:06:34) [GCC 10.2.1 20210110]

pi@raspberrypi:/tmp $ speedtest
Retrieving speedtest.net configuration...
Testing from Comcast Cable (73.22.57.XXX)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Hivelocity (Chicago, IL) [54.34 km]: 15.817 ms
Testing download speed................................................................................
Download: 258.32 Mbit/s
Testing upload speed......................................................................................................
Upload: 18.31 Mbit/s

I've done some additional testing and find that even the latest version of the Ookla is giving me inaccurate results.
It seems that my earlier comment wasn't simply using a newer version of Ookla, but a completely different CLI tool.

Ookla version 1.1.1.28 is also giving me inaccurate results (indicating I have 2X the internet bandwidth I really do).

pi@raspberrypi:~/Downloads $ ./speedtest --version
Speedtest by Ookla 1.1.1.28 (c732eb82cf) Linux/arm-linux-musleabi 5.10.63-v7l+ arm/armv7l

The official command line client for testing the speed and performance
of your internet connection.
pi@raspberrypi:~/Downloads $ ./speedtest 

   Speedtest by Ookla

[error] Error: [0] Timeout occurred in connect.
     Server: Windstream - Chicago, IL (id = 17384)
        ISP: Comcast Cable
    Latency:    10.95 ms   (5.62 ms jitter)
   Download:   564.75 Mbps (data used: 879.7 MB )                               
     Upload:    23.38 Mbps (data used: 12.6 MB )                               
Packet Loss:     0.0%
 Result URL: https://www.speedtest.net/result/c/096cef69-d359-426e-aa86-cf32d26a1b41


pi@raspberrypi:~/Downloads $ speedtest
Retrieving speedtest.net configuration...
Testing from Comcast Cable (73.22.57.221)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Volo Broadband (Urbana, IL) [240.11 km]: 23.668 ms
Testing download speed................................................................................
Download: 333.88 Mbit/s
Testing upload speed......................................................................................................
Upload: 22.19 Mbit/s
pi@raspberrypi:~/Downloads $ speedtest --version
speedtest-cli 2.1.3
Python 3.9.2 (default, Mar 12 2021, 04:06:34) [GCC 10.2.1 20210110]

I've done some additional testing with a different OS on my Raspberry Pi and also with a Mac running Catalina.
In every case, when using GigE, the Ookla CLI test is showing 600-700Mbps. I verified that the GigE is actually receiving 600-700Mbps.

When running speedtest-cli, which is available via brew and other package managers, as well as when using the speedtest.net HTML based testing tool, I consistently get around 300Mbps which is my internet speed.

So, the Ookla speedtest is somehow able to get 700Mbps on Comcast/Xfinity cable in the Chicago area whereas every other test I can find is showing the true 300Mbps.

So, it would be great if you're able to update this project to use speedtest-cli or another tool instead of the Ookla tool.

Thanks!

After doing additional testing and reading some information about Xfinity/Comcast, it seems they are allowing certain download (and speed tests) to burst to higher bandwidth. So, I think the Ookla app is more efficient and is able to run at a higher speed compared to the speedtest-cli which is written in Python and doesn't seem to be able to get higher than 300Mbps across multiple computers at my house.

When using GigE on my Mac, I was able to get 600-700Mbps using the speedtest.net website and an Xfinity testing website. I normally use WiFi on my Mac and have always seen 300Mbps as the peak and didn't know that Xfinity allowed for bursting.

So, long story short, it seems that Ookla is a better testing tool after all and that my internet is faster than I realized (at least for bursting).