ISP congestion monitoring with Raspberry Pi

The ISP I use at home is suffering from pretty bad congestion and the service has become barely usable during peak times. Despite multiple reports from other customers, they won’t admit that there is a problem, so it’s time to show them some data!

Screen Shot 2015-04-16 at 10.46.50 pm

I put together a really quick and hacky shell script that grabs a large-ish file from their own speedtest server (within their network) and logs the max download speed to a CSV file.

I was going to build some sort of charting functionality into this, to spit out a rendered graph image or serves a webpage that has a web chart, but if you google ‘graphing library linux’ you immediately find RRDtool, and then if you keep going, you find Smokepin. So now the same Raspberry Pi also runs Smokeping.

This can chart not only ICMP, but also FTP (though due to limitations in RRDtool, the unit of ‘ms’ is hardcoded).

Here’s what it looks like when an ISP fixes their congestion issues:

smokeping-rtt

Selecting the FTP chart will bring up something like the following:

Screen Shot 2015-04-17 at 12.18.44 pm

Smokeping is a great tool. Stable, light, and set-and-forget.
Here’s my Probes config:

And my Targets file looks like this:

Previous Post

Rancilio Silvia mods - PID temperature control, repaint, and open bottom portafilter

I installed a cheap chinese PID controller inside my Rancilio Silvia V2 espresso machine. Modifying the machine with PID control is not an entirely new concept, however my decision to mount it inside ... Read more

Next Post

Reading SNMP values from Mikrotik RouterOS into Mango Automation

If you use Mikrotik routerboard devices in your networking environment or for remote telemetry applications, you may be interested in retrieving some datapoints from the Routerboard using Mango's SNMP datasource module. In ... Read more

Leave a Comment