- Martes, 28 Marzo 2017
Una página web hoy es a menudo la suma de muchos componentes diferentes. La página de inicio de un usuario en un sitio de redes sociales, por ejemplo, puede mostrar las últimas publicaciones de los amigos de los usuarios, las imágenes asociadas, enlaces y comentarios, notificaciones de mensajes pendientes y comentarios sobre las publicaciones del usuario, una lista de eventos; una lista de temas que actualmente conducen a conversaciones en línea; una lista de juegos, algunos de los cuales están marcados para indicar que es el turno del usuario; y por supuesto los anuncios más importantes, de los que depende la web para sus ingresos.
Con cada vez mayor frecuencia, cada uno de esos componentes es manejado por un programa diferente que se ejecuta en un servidor diferente en el centro de datos del sitio web. Esto reduce el tiempo de procesamiento, pero acentúa otro problema: la asignación equitativa del ancho de banda de la red entre los programas.
Muchos sitios web agregan todos los componentes de una página antes de enviarlos al usuario. Así que si sólo un programa se ha asignado un ancho de banda demasiado pequeño en la red del centro de datos, el resto de la página, y el usuario, podría quedarse esperando su componente.
En el Simposio de Usenix sobre Diseño e Implementación de Sistemas en Red, investigadores del Laboratorio de Informática e Inteligencia Artificial del MIT (CSAIL) están presentando un nuevo sistema para asignar ancho de banda en redes de centros de datos. En las pruebas, el sistema mantuvo la misma velocidad de transmisión de datos global, o "rendimiento" de la red, que los actualmente en uso, pero asignó un ancho de banda mucho más justo, completando la descarga de todos los componentes de una página hasta cuatro veces más rápido.
"Hay maneras fáciles de maximizar el rendimiento de una forma que divide el recurso de manera muy desigual", afirma Hari Balakrishnan, el profesor de Fujitsu en Ingeniería Eléctrica y Ciencias de la Computación y uno de los dos autores principales en el documento que describe el nuevo sistema. "Lo que hemos mostrado es una manera de converger muy rápidamente hacia una buena asignación".
La mayoría de las redes regulan el tráfico de datos usando alguna versión del protocolo de control de transmisión, o TCP. Cuando el tráfico se vuelve demasiado pesado, algunos paquetes de datos no llegan a sus destinos. Con TCP, cuando un remitente se da cuenta de que sus paquetes no se están recibiendo, reduce la velocidad de transmisión, y lentamente lo vuelve a subir. Con el suficiente tiempo, este procedimiento alcanzará un punto de equilibrio en el que el ancho de banda de la red se asigna óptimamente entre los remitentes.
Pero en el centro de datos de un gran sitio web, a menudo no hay tiempo suficiente. "Las cosas cambian en la red tan rápidamente que esto no es adecuado", comenta Perry. "Con frecuencia necesita tanto tiempo que [las tasas de transmisión] nunca convergen, y es una causa perdida".
El TCP da toda la responsabilidad de la regulación de tráfico a los usuarios finales porque fue diseñado para el Internet público, que enlaza millares de redes más pequeñas, operadas independientemente. Centralizar el control de una red tan extensa parecía imposible, tanto desde el punto de vista político como técnico.
Pero en un centro de datos, que es controlado por un solo operador, y con los aumentos en la velocidad de las conexiones de datos y procesadores informáticos en la última década, la regulación centralizada se ha vuelto práctica. El sistema de investigadores de CSAIL es un sistema centralizado.
El sistema, llamado Flowtune, adopta esencialmente una solución basada en el mercado para la asignación de ancho de banda. Los operadores asignan valores diferentes a los incrementos en las tasas de transmisión de los datos enviados por diferentes programas. Por ejemplo, duplicar la tasa de transmisión de la imagen en el centro de una página web podría valer 50 puntos, mientras que duplicar la tasa de transmisión de los datos analíticos que se revisan sólo una o dos veces al día podría valer sólo 5 puntos.
Oferta y demanda
Como en cualquier buen mercado, cada enlace en la red establece un "precio" de acuerdo con la "demanda", es decir, según la cantidad de datos que los remitentes quieren enviar colectivamente. Para cada par de ordenadores emisores y receptores, Flowtune calcula la velocidad de transmisión que maximiza el "beneficio total", o la diferencia entre el valor de las tasas de transmisión aumentadas, los 50 puntos para la imagen versus los 5 para los datos analíticos, y el precio del ancho de banda requerido a través de todos los enlaces intermedios.
La maximización del beneficio, sin embargo, cambia la demanda a través de los enlaces, por lo que Flowtune recalcula continuamente los precios y sobre esa base recalcula los máximos beneficios, asignando las tasas de transmisión resultantes a los servidores que envían datos a través de la red.
El documento también describe un nuevo procedimiento que los investigadores desarrollaron para asignar los cálculos de Flowtune a través de los núcleos en un ordenador multinúcleo, para aumentar la eficiencia. En los experimentos, los investigadores compararon Flowtune con una variación ampliamente utilizada en TCP, usando datos de centros de datos reales.
Dependiendo del conjunto de datos, Flowtune completó el 1 por ciento más lento de solicitudes de datos, de nueve a once veces más rápido que el sistema existente.
Por Larry Hardesty, MIT News Office