Jeff Houston explica qué le pasa al popular proveedor de Internet satelital.
El servicio de Internet satelital Starlink de la empresa SpaceX representa un "entorno extremadamente desfavorable" para el protocolo TCP ampliamente utilizado. Esa es la evaluación dada por Jeff Houston, investigador principal del Centro de Redes de Información de Asia y el Pacífico, quien publicó un análisis del rendimiento de Starlink en su blog.
TCP (Protocolo de Control de Transmisión) es uno de los principales protocolos de red que proporciona una transmisión confiable de datos en Internet y otras redes TCP/IP. Garantiza que los paquetes de datos se entreguen en el orden correcto y sin pérdidas, controlando la velocidad de transmisión, determinando la ruta y solicitando el reenvío de paquetes perdidos. La mayoría de las populares aplicaciones y servicios de Internet confían en TCP para el intercambio de información.
Houston explica que los satélites en órbita terrestre baja vuelan tan rápido sobre la superficie de nuestro planeta que pueden cruzar el cielo de horizonte a horizonte en menos de cinco minutos. Para mantener la conexión, las antenas terrestres deben cambiar periódicamente a otra nave en la red.
Utilizando el comando PING, el científico descubrió que el retraso mínimo cambia cada 15 segundos. Esto le permitió suponer que las terminales del usuario se están cambiando continuamente a nuevos satélites. Según las estimaciones de Houston, el equipo Starlink realiza un seguimiento de cada satélite durante un intervalo de 15 segundos, lo que corresponde a un ángulo de observación de 11 grados.
Durante los cambios entre satélites, Houston registró pérdida de paquetes y variaciones significativas en la latencia. En el peor de los casos, la latencia aumentó de 30 a 80 milisegundos. Además, dentro de cada intervalo de seguimiento de 15 segundos, la variación de latencia fue relativamente alta, con un jitter promedio entre intervalos RTT consecutivos de 6.7 ms. Los picos de latencia durante los cambios alcanzaron los 30-50 ms. Esto significa que el sistema Starlink utiliza grandes búferes para suavizar los problemas temporales que ocurren cuando se transfiere una conexión de un satélite a otro. La presencia de tales búferes ayuda a superar las interrupciones temporales causadas por el frecuente cambio de satélites durante una sesión de comunicación.
En general, según Houston, Starlink se caracteriza por "niveles muy altos de jitter, una tasa de pérdida de paquetes del 1-2% no relacionada con la congestión de la red, y una latencia que cambia regularmente cada 15 segundos".
Tales condiciones crean un "entorno extremadamente desfavorable para la transmisión de datos" a través del protocolo TCP. Esto significa que las versiones más antiguas, como Reno TCP, que responden rápidamente a la pérdida de paquetes y se recuperan lentamente, funcionarán mal al usar la red Starlink.
Sin embargo, el investigador cree que este problema se puede resolver optimizando ligeramente el protocolo para funcionar con Starlink. Sugiere tres posibles candidatos capaces de manejar esta tarea...
Una posible solución es el protocolo BBR (Ancho de banda de cuello de botella y tiempo de propagación de ida y vuelta), un algoritmo de control de congestión TCP desarrollado en Google. BBR intenta predecir los retrasos en la ruta de red y ajusta las estrategias de envío de datos en consecuencia.
El algoritmo de control de congestión CUBIC TCP junto con confirmaciones selectivas (SACK - RFC 2883) también podría manejar bien la situación.
Houston cree que la Notificación Explícita de Congestión también podría ayudar, ya que puede manejar situaciones con picos de latencia causados por los cambios entre satélites.
A pesar de las dificultades con TCP, las pruebas de velocidad realizadas por Houston cada 4 horas desde agosto de 2023 hasta marzo de 2024 mostraron que, en general, Starlink proporciona un buen ancho de banda. El valor mediano fue de alrededor de 120 Mbps para descargas, con picos de hasta 370 Mbps y mínimos de 10 Mbps, y 15 Mbps para subidas, variando de 5 a 50 Mbps.