Un futuro para una Internet más rápida
- Los ingenieros buscan cómo mejorar la velocidad y eficiencia de la red
- El protocolo TCP que sirve de base a la Red es antiguo y mejorable
- Un nuevo software permite crear soluciones a medida en caso de congestión
Algunos detalles de la grandeza de Internet son casi tan viejos como la red misma. Uno de ellos es el protocolo TCP (Transmission Control Protocol) que controla las transmisiones de información entre las diversas máquinas de la red. Desde el momento en que se creó fue mejorando poco a poco, pero al ser un componente tan básico no es tarea fácil. ¿Puede evolucionar convenientemente para el futuro?
Gracias al TCP dos equipos informáticos, normalmente un ordenador personal y un servidor situado en algún centro de datos, pueden enviar y recibir grandes bloques de información convenientemente recortada en pequeños 'paquetes', en el orden correcto y con todos los posibles errores corregidos.
Evolución del protocolo TCP
Sin embargo, el TCP tiene ya 40 años. Vint Cerf y Robert Kahn lo plantearon allá por 1973 y desde entonces se ha venido usando en diferentes versiones con gran éxito como es evidente, pero en los tiempos modernos también tiene amplias posibilidades de mejora. El problema es que es algo tan profundo, fundamental y básico para Internet que sería prácticamente imposible cambiarlo de forma radical por algo mejor; de modo que se sigue usando aunque se incorporen pequeñas mejoras de otras formas.
En el siglo XXI las comunicaciones son un tanto distintas a como lo eran en los años 70. La primera gran diferencia es principalmente el volumen de la información transmitida, que ha crecido exponencialmente. También hay un sinfín más de posibles rutas, tipos de dispositivos y potenciales problemas, especialmente atascos y congestiones en las transmisiones.
Ahora unos investigadores del Instituto de Tecnología de Massachusetts (MIT) han planteado una nueva idea que consiste en la utilización de diferentes algoritmos en el TCP para gestionar los atascos y conflictos en el tráfico que circula por la red. Un algoritmo es simplemente una forma metódica de resolver un problema: si Internet fuera como una ciudad congestionada una posible solución podría ser dar prioridad a cierto tipo de vehículos, otra cambiar los tiempos de duración de los semáforos u otra habilitar más vehículos de transporte público.
El sistema Remy
El sistema creado por estos ingenieros se llama Remy [el documento técnico está en su web: TCP ex Machina: Computer-Generated Congestion Control, PDF] y su funcionamiento es realmente curioso. Para empezar, no es un único algoritmo mejor que los demás. Es más bien un sistema en el que se introducen algunos supuestos sobre la red, los objetivos que se quieren conseguir y algunos modelos sobre cómo se comportará el tráfico. Remy crea entonces diversos algoritmos que aplica al software TCP y los va probando hasta dar con uno que maximiza el resultado.
Parte del problema está en las diferentes formas en que distintos sistemas operativos y máquinas utilizan el TCP. En un mundo ideal todo funcionaría bien, pero la realidad es que de vez en cuando se producen atascos y muchas situaciones son siempre mejorables. Los ingenieros humanos son capaces de crear soluciones para la mayor parte de los problemas de hoy en día. Pero según el equipo del MIT Remy es mucho más eficiente, consiguiendo mejoras incluso del triple de rendimiento en algunas de las situaciones, superando los diseños humanos.
Cómo funciona el sistema creado por el MIT
La forma en que trabaja Remy es algo diferente a la de las personas. Una situación típica es que un ingeniero puede visualizar fácilmente el problema de lo que sucede al enviar un archivo gigantesco dividido en varias partes a un servidor según ha de pasar por ciertas rutas. Pero Remy es capaz de analizar muchas más combinaciones y posibilidades simulando a toda velocidad lo que sucedería si se usaran ciertos parámetros en las comunicaciones, hasta dar con la mejor de ellas, aunque resulte 'rara' o poco intuitiva.
La forma en que funciona Remy es mediante aprendizaje automático; esto quiere decir que además de examinar muchas más posibilidades también va aprendiendo dinámicamente a partir de lo que va sucediendo en la red y los cambios que se realizan.
Por ejemplo, es capaz de encontrar soluciones dependiendo de si el ancho de banda total de una comunicación es estable o fluctúa, si se utiliza solo para acceder a un tipo de contenidos o para una combinación de ellos (páginas web, vídeo, etc.) o cómo varía en el tiempo el número de usuarios que accede a ciertos recursos. En total gestiona más de 150 reglas distintas, que combinadas pueden producir millones de combinaciones y soluciones posibles.
Los ingenieros del MIT han probado Remy en simuladores con los que evalúan este tipo de nuevos sistemas, con resultados que varían entre el 20 y el 30 por ciento en velocidad y hasta el 40 por ciento de mejora en los retrasos producidos en momentos de congestión.
La forma en que Remy trabaja con el aprendizaje automático y la búsqueda de algoritmos es tan innovadora como interesante. Tendría cierto toque poético que la solución para mejorar el funcionamiento de los programas que están en el corazón de Internet la encontraran otros programas, pero es que en la gran red a veces suceden este tipo de maravillas.