¿Cómo verificar la velocidad de Internet a través de Terminal?

355

En lugar de ir a sitios como speedtest.net , quiero verificar mi velocidad de Internet actual desde la terminal en Ubuntu. ¿Cómo puedo hacerlo?

    
pregunta kernel_panic 16.02.2012 - 15:24

11 respuestas

560

Recomiendo la herramienta speedtest-cli para esto. Creé una publicación de blog ( Mida la velocidad de conexión a Internet desde el Línea de comandos de Linux ) que incluye detalles sobre la descarga, instalación y uso de la misma.

La versión corta es la siguiente: (no se requiere una raíz)

curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -

Salida:

Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Comcast Cable (x.x.x.x)...
Selecting best server based on ping...
Hosted by FiberCloud, Inc (Seattle, WA) [12.03 km]: 44.028 ms
Testing download speed........................................
Download: 32.29 Mbit/s
Testing upload speed..................................................
Upload: 5.18 Mbit/s

Actualización en 2016:

speedtest-cli está en repositorios de Ubuntu ahora. Para Ubuntu 16.04 (Xenial) y uso posterior:

sudo apt install speedtest-cli
speedtest-cli
    
respondido por el mweisel 19.03.2013 - 09:11
78

prueba esto en la línea de comando

wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip

prueba esto también

sourceforge.net/projects/tespeed/

lo obtuve del enlace de arriba

    
respondido por el Tachyons 16.02.2012 - 15:57
46

Si no puede molestarse en instalar iperf, puede preceder cualquier comando que cambie una cantidad conocida de datos con el comando time y haga una suma.

iperf es simple y fácil de usar.

Requiere un cliente y servidor.

(en el servidor)

 [email protected]$ iperf -s

(en el cliente)

 [email protected]$ iperf -c server.domain
 ------------------------------------------------------------
 Client connecting to 192.168.1.1, TCP port 5001
 TCP window size: 16.0 KByte (default)
 ------------------------------------------------------------
 [  3] local 192.168.1.3 port 52143 connected with 192.168.1.1 port 5001
 [ ID] Interval       Transfer     Bandwidth
 [  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec

Más detalles

    
respondido por el One Zero 16.02.2012 - 16:21
31

Bueno, yo uso wget para eso. Esa pequeña herramienta me dice muy bien qué velocidad tengo.

Para usarlo, simplemente apunta a un archivo en Internet que es relativamente más grande para que puedas obtener una mejor estimación de él.

Por ejemplo

tipeando: wget http://hostve.com/neobuntu/pics/Ubu1.avi comenzaría a descargar el archivo Ubu1.avi y mostrar a qué velocidad se está descargando.

Por supuesto, hay varias recomendaciones:

  1. Prueba de velocidad con buenos servidores. En el caso de mi enlace, la velocidad es inferior a 200 KB, así que si tienes una velocidad más alta, el servidor será el cuello de botella para ti, no tu velocidad real.

  2. La velocidad más alta que verá es la velocidad máxima que su conexión y la conexión del servidor pueden ofrecer. Si su conexión es de 512 KB y el lugar donde está descargando es de 400 KB, su conexión máxima será de 400 KB porque es la máxima para el servidor desde el que está descargando.

  3. Debe realizar la prueba al menos 5 veces para tener una verificación de velocidad confiable o al menos hacerlo durante uno o dos minutos. Esto te ayudará a tener un control más preciso.

  4. Necesita tener al menos 4 o 5 fuentes de prueba diferentes para tener una velocidad más precisa. Nunca realice pruebas solo desde el mismo sitio, ya que esto puede verse afectado por su distancia, cualquier problema en el servidor y las conexiones a él, etc. Siempre realice pruebas desde diferentes servidores.

ARIA2

Esta es una alternativa al wget . La desventaja de wget es la falta de conexiones paralelas. Para usar aria2 necesitamos descargarlo:

   sudo apt-get install aria2

Usarlo es simple:

En la imagen, -x 4 es la cantidad de conexiones paralelas que deseamos utilizar. El parámetro CN en la línea siguiente muestra cuántas conexiones paralelas activas se permitieron descargar desde ese sitio. En este caso, CN es 4. Pero si tratamos de tener más conexiones obtendríamos algo como esto:

Establecimos 8 conexiones paralelas pero el sitio solo permitió un máximo de 5 como se muestra en CN: 5. Esto podría resolverse con la opción -j que le dice a aria2c las conexiones simultáneas máximas que queremos (que por defecto es 5) pero si el servidor lo ha limitado, -j no funcionará.

    
respondido por el Luis Alvarado 16.02.2012 - 16:12
18

Ya que speedtest-cli es una aplicación de Python, es mucho más fácil de instalar haciendo:

pip install speedtest-cli

o:

easy_install speedtest-cli

Dependiendo de cómo esté instalado Python en su sistema, es posible que necesite ser root para hacer lo anterior.

    
respondido por el BobC 02.12.2013 - 16:06
5

Me gusta el speedometer Ubuntu cli.

speedometer -r eth0

Para ver un gráfico en vivo de las velocidades de datos entrantes.

    
respondido por el 6ft Dan 02.09.2016 - 23:22
3

Ejecuta varias instancias del comando wget with timeout en archivos grandes:

#!/bin/bash

timeout 5 wget -q url_1/100MB.zip &
timeout 5 wget -q url_2/file.zip &
timeout 5 wget -q url_3/sample.mov &
timeout 5 wget -q url_4/speech.mp4 &

Y luego, escriba una secuencia de comandos para calcular el total de bytes descargados y divida 5 segundos, obtendrá una cifra de bytes / seg. Debe ser bastante preciso y puede agregar más instancias para maximizar su ancho de banda.

Todavía tengo que probar el script completo, pero el comando de una sola línea "timeout 5 wget url" funciona y se obtiene como resultado un archivo parcialmente descargado (si 5 segundos no es suficiente para completar la descarga).

    
respondido por el rexis 20.09.2013 - 04:29
3

puedes usar tespeed . es una prueba de velocidad de red Terminal que usa servidores de Speedtest.net . Utiliza el servidor de prueba más cercano, pero también puede usar uno especificado manualmente por el usuario.

 git clone git://github.com/Janhouse/tespeed.git
 cd tespeed
 git submodule init
 git submodule update
 ./tespeed.py 

para obtener más información:

 ./tespeed.py  -h

proporcionará más opciones para la prueba de velocidad.

    
respondido por el pl_rock 12.09.2015 - 08:08
2

Script bash simple basado en @rexis answer. Puede poner sus propios enlaces para probar en links array o leerlos desde el archivo

#!/bin/bash
export LC_ALL=C  #make output in English eg for later use with "du | grep"

TMP_PATH=/tmp/speedtest_data/
TEST_TIME=5

rm -rf $TMP_PATH && mkdir $TMP_PATH

links=("http://client.cdn.gamigo.com/bp/eu/com/110a/BPClientSetup-2b.bin" "http://client.cdn.gamigo.com/bp/eu/com/110a/BPClientSetup-1b.bin" "http://client.cdn.gamigo.com/bp/eu/com/110a/BPClientSetup-1c.bin" "http://ftp.ntua.gr/pub/linux/ubuntu-releases-dvd/quantal/release/ubuntu-12.10-server-armhf+omap.img" "http://ftp.funet.fi/pub/Linux/INSTALL/Ubuntu/dvd-releases/releases/12.10/release/ubuntu-12.10-server-armhf+omap.img" "http://ftp.icm.edu.pl/pub/Linux/opensuse/distribution/13.2/iso/openSUSE-13.2-DVD-x86_64.iso")

echo "Testing download"

for link in ${links[*]}
do
    timeout $TEST_TIME wget -q -P $TMP_PATH $link &
done

wait

total_bytes=$(du -c $TMP_PATH | grep total | awk '{print }')

echo "Cleaning up"
rm -rf $TMP_PATH

speed=$(expr $total_bytes / $TEST_TIME)

echo "Speed is $speed Kb/s"

exit 0
    
respondido por el Darkside 24.03.2015 - 13:28
0

También puedes probar enlace

Usan Curl (que es una utilidad de línea de comandos muy conocida) para ejecutar una prueba de velocidad.

En resumen

wget enlace & amp; & amp; chmod u + x speedtest.sh & amp; amp; bash speedtest.sh

    
respondido por el user385795 07.03.2015 - 19:17
0

un sencillo delineador que prueba cuánto tiempo lleva descargar 100MB (también funciona en /bin/sh ):

t=$(date +"%s"); wget http://speedtest.tele2.net/100MB.zip -O ->/dev/null ; echo -n "MBit/s: "; expr 8 \* 100 / $(($(date +"%s")-$t))

explicación:

  1. almacena la marca de tiempo en $ t
  2. descarga 100mb pero no almacena nada
  3. calcular 8 * 100mb / $t
respondido por el rubo77 29.08.2015 - 09:29

Lea otras preguntas en las etiquetas