
I am passionate about data, which is something I was brought up with as a scientist. I love being able to collect data to better understand how something is working (or potentially not working) and my internet connection is no exception.
In Australia, the quality of our internet can often be fairly poor. I won't re-hash the design of our infrastructure but essentially poor choices were made with respect to the national broadband network and as a result the experience people often have leaves something to be desired.
Internet is also (relatively) expensive, to give you an idea I am on a 100 mbit download, 40 mbit upload plan (unlimited data) which retails for around $90 a month (give or take), so given the cost many people want to make sure they are actually getting the speeds they are paying for.
Given I have monitoring infrastructure within my home network, which monitors a range of network parameters (including DNS performance, usage and so on), I thought it would be interesting to collect additional metrics to understand the speed of my internet connection at any given point in time.
To achieve this monitoring, I run a ROCK64 (single board computer) which runs CollectD / Telegraf, and also has the speedtest.net binary installed. This device runs a speedtest on a regular basis, and then takes the results and stores these into an Influx time series database where I can examine the results.
In this graph (below), I charted the upload and download speeds (Mbps) from the influx database through the Grafana visualization package, showing results for approximately the last 6 months.

As you can see, the results are fairly consistent. The average download speed is 102 Mbps, and the average upload speed is 36 Mbps, with some dips but for the most part it has been fairly consistent. I am lucky because the internet connection to my house is fibre-to-the-premises which means it is less affected by weather, quality of copper and a range of other parameters all of which can affect the speed.
It also appears that the provider I am using (Exetel) appear to be provisioning good speed.
For those that are interested in monitoring speeds (using something like a Raspberry Pi, Debian Server or similar) there is a great github writeup here.
Comments are closed.
PO Box 113, Beaconsfield Upper, Victoria, Australia, 3809.