My Projects, Projects

Broadband Speed testing on Raspberry Pi’s

Depuis que j'ai obtenu le haut débit par câble, je me suis intéressé à tester la vitesse que j'obtiens. Au fil des ans, cela s'est facilité avec des outils comme speedtest.net. Le seul problème avec Speedtest.net était qu'il a été conçu pour une utilisation dans un navigateur.

Cependant - la communauté est venue le secours et un dépôt github est apparu avec « SpeedTest-CLI » une interface de ligne de commande open source (CLI) qui a utilisé des scripts pour vous permettre d'exécuter le speedtest à partir de la ligne de commande sur les machines Linux.

Cet outil fonctionne de façon fantastique et est bon à partir. Avec un wrapper Python, vous pouvez même coder un test de vitesse dans vos applications. En effet, je l'ai fait avec mes premiers outils Netapp. Cependant, depuis que j'ai obtenu ma première carte Raspberry Pi 4, j'ai trouvé cette version manquante et cela ne donnerait pas de bons résultats. Je suis sur le paquet 350Mo/s de Virgin Media et mes machines filaires montrent que je reçois 350Mo/s.

En cherchant une solution, j'ai trouvé qu'Ookla (la société derrière Speedtest.net) avait sorti une version CLI officielle de leurs outils.

Vous pouvez trouver des informations sur cet outil sur leur site Web Speedtest.net :

L'installation de leur outil est un peu plus complexe que l'installation de la version non officielle car ils ont choisi d'exécuter leur propre gestionnaire de paquets. Cependant, ce n'est pas trop compliqué. Il suffit de copier les lignes ci-dessous une à la fois et de les exécuter sur la ligne de commande sur votre Raspberry Pi Ubuntu Based.

sudo apt-get install gnupg1 apt-transport-https dirmngr

export INSTALL_KEY=379CE192D401AB61

export DEB_DISTRO=$ (lsb_release -sc)

sudo apt-key adv —keyserver keyserver.ubuntu.com —recv-keys $install_keyecho « deb $ {DEB_DISTRO} main » | sudo tee /etc/apt/sources.list.d/speedtest.list

sudo apt-get mise à jour

# D'autres binaires non officiels entreront en conflit avec Speedtest CLI

# Exemple comment supprimer en utilisant apt-get

# sudo apt-get remove speedtest-cli

sudo apt-get install speedtest

Une fois que la dernière ligne est exécutée, la prochaine chose à faire est de l'exécuter une fois pour accepter les termes et conditions d'utilisation d'Ookla.

le plus rapide

Courir pour la première fois vous demandera d'accepter les termes et conditions.

Tapez simplement « OUI » et appuyez sur retour/entrée et le premier test de vitesse s'exécutera.

Un exemple de l'interface de ligne de commande Ookla Speedtest en cours d'exécution pour la première fois

Lorsque vous acceptez l'accord, l'outil crée un fichier json sous votre répertoire personnel dans « ~/.config/ookla/ » appelé « speedtest-cli.json ».

Si vous supprimez ce fichier ou répertoire, vous devrez accepter à nouveau les termes et conditions et la licence.

Exécution en Python 3

Une chose manquante dans la CLI officielle est un wrapper python, donc si vous voulez exécuter un speedtest dans votre code Python, vous devrez vous écrire vous-même.

J'ai écrit une version très basique pour vous de jouer avec :

sous-processus d'importation

importer json

stdoutdata = subprocess.getoutput (« speedtest -f json »)

#print (stdoutdata.split () [0])

résultats = json.loads (stdoutdata)

pour les résultats clés :

download = résultats ["download"] ["bande passante"]

upload = résultats ["upload"] ["bande passante"]

isp = résultats ["isp"]

down = str (rond (télécharger/125000, 2))

up = str (rond (upload/125000, 2))

print (« Télécharger : « + vers le bas + « Mbps »)

print (« Upload :" + + « Mbps »)

print (« Fournisseur Internet :" + FAI)

J'espère que vous trouverez tout cela utile !

Retrouvez-moi sur Twitter et Facebook si vous voulez en discuter !

en flag
fr flag
de flag
es flag
Play with Alexa
Voiced by Amazon Polly

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.