So misst und protokollierst du mit Hilfe eines Raspberry Pi laufend die Internet Geschwindigkeit.

20:15 — es ist Primetime und das Bild auf meinem Fernseher friert für ein paar Sekunden ein. Meine Nasenflügel fangen an zu beben. “Nicht schon wieder!”, denke ich mir. Tags darauf, fast zur gleichen Zeit das selbe Spiel. Netflix’s und Amazon Prime’s Ladesymbole grinsen mich hämisch an.

Ein paar Minuten später die Gewissheit. Der Speedtest (via speedtest.net) spuckt 8 MB/s Download aus, und das bei 75 MB/s (brutto) für die ich Monat für Monat bezahle. Für eine weitere Analyse setzte ich auf den RTR-Netztest der österreichischen Rundfunk & Telekom Regulierungs-GmbH. Dieser zeigt neben dem ausführlichen Ergebnis eine Kartendarstellung sowie Statistiken der bisherigen Tests dar. Bis zu diesem Zeitpunkt wusste ich von diesem Test nichts. Ausprobieren lohnt sich auf jeden Fall.

Nach ein paar Tagen frage ich mich: “Ist das wohl öfters so?” Ich nehme mir vor das zu messen. Jeden Morgen und Abend um etwa die gleiche Zeit mache ich den Test. Morgens habe ich in etwa die 75 MB/s, Abends mehr oder weniger +/- 15-8 Mb/s. Das Problem, diese manuellen Messungen “skalieren” nicht. Das kann ich nicht jeden Abend machen.

Beim wöchentlichen Skype-Call von digitaldaheim.at mit Julian, gab er mir den passenden Hinweis. Eine ISP-Kundin ließ ein Script ständig auf dem Raspberry Pi laufen. Mit Hilfe der Messungen wandte sie sich später an den Anbieter. Ich war neugierig geworden.

Note: Ich weiß, ich mecker hier auf hohem Niveau (#FirstWorldProblem), nichtsdestotrotz will ich die Daten vorliegen haben. Vielleicht helfen sie mir mich für einen neuen Anbieter zu entscheiden.

Das Speedtest-Cronjob Script

Ein paar Google-Suchen später, fand ich das passende Script. Mit Speedtest-Cron von J0s3f lag mir ein Script vor, welches in einem gewissen Rhythmus einen Speedtest macht und die Ergebnisse in einem log-File speichert. Ein weiteres Script des Entwicklers fasst alle log-Dateien in einer csv-Datei zusammen. Siehe da, ich habe meine Daten mit denen ich rum spielen kann.

Ein paar Handgriffe später sah ich zum ersten Mal die Grafik vor mir. Meistens sinkt meine Internet Geschwindigkeit zwischen 13:00–15:00 Uhr, bis sie abends gegen 20:00–21:00 Uhr auf bis zu 6.5 MB/s fällt. Ich messe die Internet Geschwindigkeit nun alle 10 Minuten und behalte die weitere Entwicklung im Auge. Ich bin gespannt.

DIY — So machst du es mir nach

Download und Installation des Scripts

Mein aktuelles Setup besteht aus einem Raspberry Pi 3 Model B-Set und Raspbian Jessie mit Pixel. Nach der Installation und dem ersten Start des Pi’s öffne das Terminal. Los geht’s.

Falls git noch nicht installiert ist, installiere es mit folgendem Befehl:

sudo apt-get install git

Im Anschluss klone J0s3f’s oder mein Repository mit:

git clone git@github.com:natterstefan/speedtest-cron.git

Gehe in den eben erstellten Ordner und installiere das Submodul. Dieses brauchen wir um den Speed-Test im Terminal starten zu können.

git submodule update — init

Jetzt kannst du deinen ersten Speed-Test ausführen mit:

./speedtest_cron

Wie das Ganze alle x-Minuten ausgeführt wird und wie du IFTTT nutzen kannst, steht in meinem ReadMe auf Github.

Speedtest-Cron Code auf Github

Frage an meine LeserInnen

Misst du deine Down- und Upload-Geschwindigkeit auch regelmässig?