Mi cliente se queja de bajas velocidades de internet. Cuando se mide con Speedtest.net, las velocidades son aceptables. Las descargas medidas periódicas son del 10% al 30% de la velocidad nominal. No puedo explicar eso.
Algunos antecedentes. La conexión problemática se encuentra en una de esas soleadas islas del Caribe donde Internet rápido no es el mayor activo. Últimamente las velocidades de internet se volvieron decentes, hasta 200 Mbps. Pero el viaje de ida y vuelta a (por ejemplo) Amsterdam es de aproximadamente 180 ms.
El cliente tiene una conexión de fibra de 100 Mbps. Al realizar una prueba de velocidad en una máquina Windows (speedtest.net) al ISP CO obtenemos 95 Mbps. Cuando usamos la misma prueba de velocidad en Amsterdam, alcanzamos 60-70 Mbs. Totalmente aceptable
Hace algún tiempo instalé un RasPi que periódicamente actualiza un archivo de uno de mis servidores en Amsterdam. En un centro de datos, que está directamente conectado a AMS-IX. Usando este comando:
wget -O /dev/null --report-speed=bits http://aserv.example.net/~myuser/links/M77232917.txt
El archivo .txt tiene 23 MByte de números. (En realidad, es el primer pero más grande Mersenne Prime, 23e6 dígitos)
Cuando descargo ese archivo en la red problemática, wget informa esto:
dev/null 100%[====================================================================>] 22.81M 11.6Mb/s in 17s
2019-02-08 14:27:55 (11.2 Mb/s) - ‘/dev/null’ saved [23923322/23923322]
Es decir, al mismo tiempo, speedtest.net reporta 60-70 Mbps.
Sé que el Raspi tiene sus limitaciones. Pero esta velocidad varía enormemente. Una vez, el RasPi reporta estos 11 Mbps, la próxima vez 22 Mbps. Pero a veces tan bajo como 1.5 Mbps.
Cuando hago esta prueba con una computadora portátil realmente potente, las velocidades máximas son algo más altas (hasta 30 Mbps), pero también muestran los mismos mínimos. Por lo tanto, indica una limitación de RasPi en el lado alto, pero no los 10 Mbps en el lado bajo.
Emití exactamente el mismo comando desde un servidor en München, Alemania, en un centro de datos. Velocidad 96 Mbps.
Luego, desde una conexión de fibra de consumo de 100 Mbps en los Países Bajos: 65 Mbps.
Luego, en mi casa que tiene ADSL nominal de 10 Mbps. Speedtest muestra 10Mbps. Wget da 8.5 Mbps. Lo cual es igual en mi libro.
Esto excluye cualquier limitación en el servidor que actúa como host para la descarga del archivo.
No espero que nadie pueda señalar la causa de la lentitud de la conexión en las instalaciones del cliente. Pero, ¿alguien puede explicar la discrepancia entre speedtest.net y wget?
¿Hay algo que la velocidad más rápida ignora, o mide solo los picos? ¿O está wget seriamente influenciado por largos tiempos de ping?
Siento que la prueba de wget proporciona la velocidad real y efectiva, mientras que speedtest es principalmente para mostrar la velocidad anunciada.
fuente
ssh personal-server cat /dev/zero | pv > /dev/null
, en un servidor personal que usted sabe que no está limitado a una velocidad menor que la velocidad que espera.Respuestas:
Además de las otras razones publicadas, las conexiones TCP no funcionan bien con archivos grandes cuando el producto de retraso de ancho de banda se vuelve grande.
Como en una conexión de otra manera rápida a una isla.
Vea la entrada de Wikipedia sobre la sintonización TCP .
Entonces Speedtest puede volcar un archivo pequeño a través de la conexión a 95 mb / seg, pero
wget
solo puede obtener 10 mb / seg en un archivo de 20 MB.fuente
Los ISP a menudo priorizan el tráfico a speedtest.net para que puedan presumir de lo rápido que son sus conexiones, mientras que en realidad no proporcionan tanto ancho de banda. Son perfectamente conscientes de que la mayoría de los usuarios solo verificarán ese sitio para confirmarlo.
También debe tener en cuenta que la velocidad de transferencia depende tanto del cliente como del servidor. En el mundo actual, la mayoría de los servidores funcionan de una forma u otra.
Finalmente, no tiene sentido esperar un ancho de banda estable para conexiones en el extranjero. Simplemente no hay tal cosa. Tiene que pasar por un número infinito de interruptores, fibras, centros de datos para llegar a la ubicación final. Y todo lo que se necesita es solo una parte móvil para reducir la velocidad.
fuente
wget
dar una buena medida práctica de la velocidad. Las pruebas de Speedtest probablemente incluyen algún tipo de paralelismo que puede explicar números más altos.Para una buena prueba de velocidad promedio, creo que el tiempo de descarga debe ser de al menos 90-120 segundos (para obtener un buen promedio)
fuente
wget
y sumando la velocidadUna razón podría ser que a menudo no se puede alcanzar la velocidad máxima con una sola conexión TCP.
Speedtest.net introdujo recientemente un modo de conexión único. Pruebe esto y vea si hace la diferencia.
Luego, para la descarga, use, por ejemplo, aria2 con parámetros para usar múltiples conexiones y comparar. p.ej
aria2c -d /dev -o null --allow-overwrite=true --file-allocation=none --max-connection-per-server=8 --min-split-size=1M http://aserv.example.net/~myuser/links/M77232917.txt
fuente
Use la prueba de velocidad de Internet Fast.com , esta es una prueba de velocidad basada en Netflix, lo que significa que los ISP no pueden diferenciarla de Netflix.
Esta es una prueba más precisa que cualquier otra prueba en general. La gente no se preocupará por la rapidez con que se carga una página web, sino por la rapidez con que se almacenan los videos debido al mayor ancho de banda necesario para mostrar un video.
Los ISP a menudo aumentan las velocidades en función del dominio al que alguien se está conectando si es una prueba de velocidad o usa el puerto 8080. Mientras que Netflix usa el puerto 80, un puerto más lento cuando se le da prioridad.
fuente
¿Soy yo o nadie se dio cuenta de que dijo Mbps y la lista de comandos wget "MB / s".
60mbp / sy obtener 11.2Mb es normal.
Mbps y MB / s son dos velocidades diferentes.
"un Megabit es 1/8 tan grande como un Megabyte, lo que significa que para descargar un archivo de 1 MB en 1 segundo necesitaría una conexión de 8 Mbps". Entonces 11mbx8 = 88mbps ... 11.2Mb es realmente bueno para un informe de conexión 60-70mbps.
¿Las personas que tienen memoria pierden esto? Nunca obtendrá 70mb / s con una velocidad máxima de 70Mbps
fuente
wget
es Mb / s que se traduce en Megabits / s . MB / s se traduciría a MegaBytes / s . Simplemente ejecute su propiowget
comando y verifique el resultado.wget
comando incluye--report-speed=bits
qué resultados enMb/s
cuál esMbit/s
. Correr sin--report-speed=bits
da loMB/s
que se traduce enMByte/s
. Tenga en cuenta lab
yB
.