sini
Lieutenant
- Registriert
- Dez. 2012
- Beiträge
- 862
Hallo zusammen,
ich möchte euch hier ein praktisches Tool vorstellen, mit dem an Breitbandmessungen automatisieren kann.
1. Einleitung:
wer Probleme mit seinem Internet-Provider in Bezug auf die Geschwindigkeit hat, wird häufig zu Ohren bekommen, dass man mehrere Speedtests über einen gewissen Zeitraum machen soll. Nur wer hat Lust für 48 Stunden alle 30 Minuten einen Speedtest zu starten? Vermutlich keiner. Zwar stellt die Bundesnetzagentur ein Tool (https://breitbandmessung.de/) bereit, welches die einzelnen Tests in eine Mess-Reihe zusammenfasst, aber auch hier ist hoher manueller Aufwand notwendig.
Aber was wäre, wenn man das komplett automatisieren könnte? 😏
2. Das Tool
So ziemlich jeder kennt wohl die Seite https://speedtest.net von Ookla®. Aber wusstet ihr, dass sich hier ein Command-Line-Tool namens "SPEEDTEST® CLI" versteckt? Dieses kann man schlicht per Skript auf Windows, Linux oder Mac einrichten und die Tests automatisieren 😁
3.0 Vorgehensweise
Ich beschreibe nun die Vorgehensweise auf Basis eines Windows Systems. Als Verzeichnis wird D:\Speedtest verwendet. Dies kann natürlich nach beleiben angepasst werden
3.1 Vorbereitung
Bei Speedtest.net stehen mehrere Server zur Verfügung. Bei schnellen Leitungen können diverse Server an ihr Leistungslimit stoßen oder ausgelastet sein. Hierzu sollte man ein paar Probemessungen durchführen und diese mit dem Speedtest des jeweiligen Internetproviders abgleichen.
Hierzu benötigen wir erstmal die Liste der nächstgelegenen Server. Diese können per Befehl abgefragt werden
Einfach die CMD öffnen und zu D:\Speedtest navigieren
Das Ranking der Liste sagt aber nichts über die tatsächlichen Möglichkeiten der Server aus. Also testen wir ...
3.3. Speedtest automatisieren
So nun geht es ans eingemachte! Zunächst müssen wir wieder ein Skript schreiben.
Falls nicht, gibt es irgendwo einen Fehler den es zu beseitigen gilt.
4. Auswertung
Die Auswertung kann sehr komfortabel in Excel vollzogen werden.
5. Bewertung
Bei meinem Verlauf sieht man ganz klar die Lastspitzen am Abend zwischen 17:00 bis 00:00 Uhr. Während Nachts die volle Bandbreite zur Verfügung steht. Die Leitung "erholt" sich von alleine. Somit liegt das Problem nicht an meinem Router oder Endgerät, sondern schlicht und einfach an der Anbindung des Verteilers oder der Kopfstelle beim Provider.
Enjoy 😄
p.s. für die Bequemlichkeit habt ihr hier alle Daten die ihr benötigt (inkl. Excel-Auswertung):
Update 2023:
Nach ein wenig ausprobieren und Gefummel und etwas Hilfe von @Enurian, habe ich nun eine Version mit "Zeitpunkten" gebaut. Der Code sieht nun wie folgt aus:
Hierbei wird vor das Ergebnis von Speedtest.exe ein Zeitpunkt mit dem Format "TT.DD.JJJJ hh:ss" eingefügt und mit einem "," von den anderen Werte getrennt.
Die Datenverbindung zur Excel-Datei, die Zellen-Zuordnung und das Diagramm, müssen natürlich auch angepasst werden.
Der Bequemlichkeit halber, finden sich ein angepasster Satz an Daten in der hier angehängten "Speedtest_2023.7z". 😎
Enjoy!
ich möchte euch hier ein praktisches Tool vorstellen, mit dem an Breitbandmessungen automatisieren kann.
1. Einleitung:
wer Probleme mit seinem Internet-Provider in Bezug auf die Geschwindigkeit hat, wird häufig zu Ohren bekommen, dass man mehrere Speedtests über einen gewissen Zeitraum machen soll. Nur wer hat Lust für 48 Stunden alle 30 Minuten einen Speedtest zu starten? Vermutlich keiner. Zwar stellt die Bundesnetzagentur ein Tool (https://breitbandmessung.de/) bereit, welches die einzelnen Tests in eine Mess-Reihe zusammenfasst, aber auch hier ist hoher manueller Aufwand notwendig.
Aber was wäre, wenn man das komplett automatisieren könnte? 😏
2. Das Tool
So ziemlich jeder kennt wohl die Seite https://speedtest.net von Ookla®. Aber wusstet ihr, dass sich hier ein Command-Line-Tool namens "SPEEDTEST® CLI" versteckt? Dieses kann man schlicht per Skript auf Windows, Linux oder Mac einrichten und die Tests automatisieren 😁
3.0 Vorgehensweise
Ich beschreibe nun die Vorgehensweise auf Basis eines Windows Systems. Als Verzeichnis wird D:\Speedtest verwendet. Dies kann natürlich nach beleiben angepasst werden
3.1 Vorbereitung
- Den Ordner D:\Speedtest erstellen
- Speedtest CLI von https://www.speedtest.net/apps/cli herunterladen und im Ordner D:\Speedtest speichern
Bei Speedtest.net stehen mehrere Server zur Verfügung. Bei schnellen Leitungen können diverse Server an ihr Leistungslimit stoßen oder ausgelastet sein. Hierzu sollte man ein paar Probemessungen durchführen und diese mit dem Speedtest des jeweiligen Internetproviders abgleichen.
Hierzu benötigen wir erstmal die Liste der nächstgelegenen Server. Diese können per Befehl abgefragt werden
Einfach die CMD öffnen und zu D:\Speedtest navigieren
- cmd öffnen
- "D:\" eingeben und Enter drücken
- "cd speedtest" eingeben und Enter drücken
- "speedtest.exe -L" eingeben und Enter drücken (das "L" muss groß sein!)
Das Ranking der Liste sagt aber nichts über die tatsächlichen Möglichkeiten der Server aus. Also testen wir ...
- Eine neue Textdatei Namens "Test.txt" in D:\Speedtest erstellen
- In die "Test.txt" folgenden Befehl schreiben "speedtest.exe -s ID"
- ID ersetzt man durch die zuvor ermittelten IDs der Server. Das sieht dann z.B. so aus:
Code:
speedtest.exe -s 17392
speedtest.exe -s 21467
speedtest.exe -s 28624
speedtest.exe -s 28716
speedtest.exe -s 28676
speedtest.exe -s 30060
speedtest.exe -s 15431
speedtest.exe -s 6601
speedtest.exe -s 6670
speedtest.exe -s 8997
pause
- das "pause" am Ende ist wichtig, sonst schließt sich das cmd-Fenster direkt nach den Tests
- "Test.txt" in "Test.cmd" umbenennen
- Zum Starten des Tests, einfach die Skript-Datei doppelt anklicken und warten bis diese durchgelaufen ist
- Nun findet sich für jeden angegebenen Server ein Speedtest im Fenster
- Einen Speedtest beim jeweiligen Anbieter durchführen
- Telekom: https://breitbandmessung.de/
- Unitymedia: https://speedtest.unitymedia.de/
- Deutsche Glasfaser: https://www.deutsche-glasfaser.de/internet/speedtest/
- usw.
- Die Server merken, die am besten die Werte beim Anbieter wiederspiegeln
- Dies mehrfach über den Tag wiederholen (morgens, mittags, abends, nachts)
3.3. Speedtest automatisieren
So nun geht es ans eingemachte! Zunächst müssen wir wieder ein Skript schreiben.
- Eine neue Textdatei mit dem Namen "Speedtest.txt" erstellen
- Folgenden Code (ID entsprechend anpassen) einfügen und abspeichern:
Code:
D:
cd Speedtest
speedtest.exe -s ID -f csv>>Speedtest.log
- "Speedtest.txt" in "Speedtest.cmd" umbenennen
- Skript einmal per Doppelklick starten, warten bis sich das cmd-Fenster schließt
- Wenn nun die Datei "Speedtest.log" existiert und sich in dieser Werte befinden, ist alles korrekt
- Aufgabenplanung von Windows starten (einfach im Startmenü eintippen)
- "Aufgabe Erstellen" anklicken
- Folgende Werte einfügen und die Aufgabe anlegen
- Als Tag bitte den nächsten Tag angeben. Wenn heute der 25.01. ist, dann den 26.01. 00:00 Uhr als Startdatum wählen
Falls nicht, gibt es irgendwo einen Fehler den es zu beseitigen gilt.
4. Auswertung
Die Auswertung kann sehr komfortabel in Excel vollzogen werden.
- Der Header für die "Speedtest.log" lautet wie folgt und kann in die erste Zeile der Datei eingefügt werden:
"server name","server id","latency","jitter","packet loss","download","upload","download bytes","upload bytes","share url" - Die "Speedtest.log" nun als Datenquelle in Excel hinzufügen
- Die Daten sind nun als Tabelle in Excel verfügbar
- Die Werte "Download" und "Upload" müssen für einen Wert in MBit/s mit 0,000008 multipliziert werden
- Einfach jeweils eine weitere Spalte hinzufügen und diese berechnen lassen
- Diagramm (Linien) anhand dieser Tabelle erstellen und die Daten-Bereiche, Achsen, usw. entsprechend anpassen
5. Bewertung
Bei meinem Verlauf sieht man ganz klar die Lastspitzen am Abend zwischen 17:00 bis 00:00 Uhr. Während Nachts die volle Bandbreite zur Verfügung steht. Die Leitung "erholt" sich von alleine. Somit liegt das Problem nicht an meinem Router oder Endgerät, sondern schlicht und einfach an der Anbindung des Verteilers oder der Kopfstelle beim Provider.
Enjoy 😄
p.s. für die Bequemlichkeit habt ihr hier alle Daten die ihr benötigt (inkl. Excel-Auswertung):
Update 2023:
Nach ein wenig ausprobieren und Gefummel und etwas Hilfe von @Enurian, habe ich nun eine Version mit "Zeitpunkten" gebaut. Der Code sieht nun wie folgt aus:
Code:
d:
cd Speedtest
echo | set /p= ""%date:~0,10% %time:~0,5%"," >>Speedtest.log
speedtest.exe --accept-gdpr -s 30906 -f csv>>Speedtest.log
Hierbei wird vor das Ergebnis von Speedtest.exe ein Zeitpunkt mit dem Format "TT.DD.JJJJ hh:ss" eingefügt und mit einem "," von den anderen Werte getrennt.
Die Datenverbindung zur Excel-Datei, die Zellen-Zuordnung und das Diagramm, müssen natürlich auch angepasst werden.
Der Bequemlichkeit halber, finden sich ein angepasster Satz an Daten in der hier angehängten "Speedtest_2023.7z". 😎
Enjoy!
Anhänge
Zuletzt bearbeitet: