Validando ancho de banda desde consola

Estimados, vuelvo con un post mas, ya que hacia algo de tiempo que no escribía.

Como mi trabajo es mucho de servidores, normalmente no instalamos la parte gráfica de la misma, en varias ocasiones necesitamos saber cual es el ancho de banda con el que cuenta el servidor. Esto ya que mi trabajo mayormente es con telefonía IP.

Bien, por algún tiempo me había preguntando si existía alguna herramienta, aplicación o lo que fuera para hacer un test de velocidad del ancho de banda que usan los servidores. Pues bien, encontré un script que me gustaría compartir.

Nota: lo siguiente es una traducción de la pagina original, así que si les gusta la lengua anglosajona, les paso el link: How to check Internet speed from the command line on Linux

Introducción


Cuando experimentas el acceso a Internet lento, normalmente haces un test de velocidad sobre tu ISP. Para eso, speedtest.net es la web de prueba de mayor uso en Internet.

Internamente, speedtest carga código javascript  en tu navegador, con el cual automáticamente detecta el host mas cercano a tu conexion, y mide la velocidad de descarga/subida enviando solicitudes HTTP POST y/o GET hacia el servidor.

Sin embargo, si tratas de revisar la velocidad de Internet en un servidor, VPS u otro equipo sin escritorio (KDE, Gnome, Windows, etc), la plataforma Flash de Speedtest no funcionaria. Para ello existe un interfaz de linea de comando (CLI) de Speedtest, conocida como speedtest-cli. Vamos a demostrar como usar speedtest-cli para revisar la velocidad de Internet desde la linea de comando.

Instalando speedtest-cli en Linux


speedtest-cli es un cliente escritor en Python para la medición bidireccional de ancho de banda utilizando la infraestructura de Speedtest.com. Este trabaja con python 2.4-3.4. Para instalar solo basta con descargar el script.


$ wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
$ chmod u+x speedtest_cli.py
$ sudo mv speedtest_cli.py /usr/local/bin/speedtest-cli
$ sudo chown root:root /usr/local/bin/speedtest-cli


Probando la conexión


Es muy sencillo realizar la medición de velocidad de Internet speedtest-cli, solo hay que ejecutarlo sin parámetros


$ speedtest-cli


En automático, buscara el servidor mas optimo (en términos de distancia geografía) para hacer la medición y posterior reportara el resultado


Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Uninet S.A. de C.V. (189.186.37.251)...
Selecting best server based on ping...
Hosted by Triara (Los Mochis) [195.81 km]: 15.02 ms
Testing download speed........................................
Download: 3.02 Mbits/s
Testing upload speed..................................................
Upload: 0.31 Mbits/s


Si deseas conocer los servidores que tiene Speedtest, puedes ejecutar el script con el parametro "--list", el cual mostrara la lista justo a un numero asociado, para posteriormente ejecutar el script con el parametro "--server" y el numero del servidor


$ ./speedtest_cli.py --list
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
3371) Triara (Culiacan, Mexico) [0.65 km]
3372) Triara (Los Mochis, Mexico) [195.81 km]
3817) Click Intelvid (Los Mochis, Mexico) [195.81 km]
3354) Triara (Mazatlan, Mexico) [201.84 km]
3407) Triara (Durango, Mexico) [300.73 km]
3349) Triara (Obregon, Mexico) [393.05 km]
3361) Triara (Torreon, Mexico) [403.49 km]
3547) Megacable (Torreon, Mexico) [403.49 km]
1981) Cablemas (Delicias, Mexico) [422.91 km]
3341) Triara (Chihuahua, Mexico) [445.85 km]
1955) Cablemas (Chihuahua, Mexico) [445.85 km]
3348) Triara (Tepic, Mexico) [447.51 km]
3370) Triara (Zacatecas, Mexico) [504.72 km]
2858) Telecable (Puerto Vallarta, Mexico) [516.34 km]
3335) Triara (Puerto Vallarta, Mexico) [516.34 km]
...


Por ejemplo, para probar uno de Chihuahua de Cablemas (1955) seria:


$ ./speedtest_cli.py --server 1955
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Uninet S.A. de C.V. (189.186.37.251)...
Hosted by Cablemas (Chihuahua) [445.85 km]: 20.027 ms
Testing download speed........................................
Download: 3.00 Mbits/s
Testing upload speed..................................................
Upload: 0.27 Mbits/s


Y si deseas compartir tu resultado puedes ejecutar el script con el parametro "--share"


$ ./speedtest_cli.py --share
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Uninet S.A. de C.V. (189.186.37.251)...
Selecting best server based on ping...
Hosted by Triara (Durango) [300.73 km]: 15.338 ms
Testing download speed........................................
Download: 2.94 Mbits/s
Testing upload speed..................................................
Upload: 0.31 Mbits/s
Share results: http://www.speedtest.net/result/3551179518.png

Y al final te dara una URL donde podras ver el resultado.




Espero les haya agradado el manual. Se vale comentar

Saludos



Entradas populares de este blog

Desactivando NetworkManager

Configurando interfaces de red virtuales en Linux

Como montar particiones LVM en Linux