My Projects, Projects

Broadband Speed testing on Raspberry Pi’s

Desde que obtuve la banda ancha por cable, he estado interesado en probar la velocidad que estoy obteniendo. Con los años, esto se ha vuelto más fácil con herramientas como speedtest.net. El único problema con Speedtest.net fue que fue diseñado para su uso en un navegador.

Sin embargo, la comunidad vino el rescate y un repositorio github apareció con «Speedtest-CLI» una interfaz de línea de comandos (CLI) de código abierto sin licencia que usaba scripts para permitirle ejecutar la prueba de velocidad desde la línea de comandos en máquinas Linux.

Esta herramienta funciona fantásticamente y es buena para llevar. Con un contenedor de Python, incluso puede codificar una prueba de velocidad en sus aplicaciones. De hecho, lo hice con mis primeras herramientas de Netapp. Sin embargo, desde que obtuve mi primera placa Raspberry Pi 4, encontré esta versión que falta y no daría buenos resultados. Estoy en el paquete de 350 MB/s de Virgin Media y mis máquinas con cable muestran que obtengo 350 MB/s.

Mientras buscaba una solución, descubrí que Ookla (la compañía detrás de Speedtest.net) había sacado una versión oficial de CLI de sus herramientas.

Puede encontrar información sobre esta herramienta en su sitio web de Speedtest.net:

Instalar su herramienta es un poco más complejo que instalar la versión no oficial, ya que han optado por ejecutar su propio gestor de paquetes. Sin embargo, no es demasiado complicado. Simplemente copie las líneas de abajo una a la vez y ejecútelas en la línea de comandos en su Ubuntu Based Raspberry Pi.

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

exportar 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 update

# Otros binarios no oficiales entrarán en conflicto con Speedtest CLI

# Ejemplo de cómo eliminar usando apt-get

# sudo apt-get remove speedtest-cli

sudo apt-get install speedtest

Una vez que se ejecuta la última línea, lo siguiente que debe hacer es ejecutarla una vez para aceptar los términos y condiciones de uso de Ookla.

prueba de velocidad

Correr por primera vez le pedirá que acepte los términos y condiciones.

Simplemente escriba «YES» y pulse Return/enter y se ejecutará la primera prueba de velocidad.

Un ejemplo de la CLI de Ookla Speedtest que se ejecuta por primera vez

Cuando acepta el acuerdo, la herramienta crea un archivo json bajo su directorio de inicio en «~/.config/ookla/» llamado «speedtest-cli.json».

Si elimina este archivo o directorio, deberá aceptar los términos y condiciones y la licencia nuevamente.

Ejecución en Python 3

Una cosa que falta de la CLI oficial es una envoltura de python, por lo que si desea ejecutar una prueba de velocidad en su código Python, deberá escribir su propio.

He escrito una versión muy básica para que juegues con:

subproceso de importación

importar json

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

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

resultados = json.loads (stdoutdata)

para obtener resultados clave:

descarga = resultados ["descarga"] ["ancho de banda"]

upload = resultados ["upload"] ["bandwidth"]

isp = resultados ["isp"]

abajo = str (ronda (descarga/125000, 2))

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

print («Download: «+ down + «Mbps»)

print («Subir:" + arriba + «Mbps»)

print («Proveedor de Internet:" + isp)

Espero que encuentres todo esto útil!

¡Encuéntrame en Twitter y Facebook si quieres discutirlo!

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.