Al igual que todas las redes de datos, las redes que conectan servidores en granjas de servidores gigantes, o servidores y estaciones de trabajo en grandes organizaciones, son propensas a la congestión. Cuando el tráfico de red es pesado, los paquetes de datos pueden ser respaldados en los enrutadores de red o descartados por completo.
También, como todas las redes de datos, las grandes redes privadas tienen algoritmos de control para administrar el tráfico de red durante los períodos de congestión. Pero debido a que los enrutadores que dirigen el tráfico en una granja de servidores deben ser muy rápidos, los algoritmos de control están conectados a los circuitos de los enrutadores.Eso significa que si alguien desarrolla un mejor algoritmo, los operadores de red tienen que esperar una nueva generación de hardware antes de poder aprovecharlo.
Investigadores del Laboratorio de Ciencias de la Computación e Inteligencia Artificial CSAIL del MIT y otras cinco organizaciones esperan cambiar eso, con enrutadores que sean programables pero que puedan seguir el ritmo de las velocidades de las redes de datos modernas. Los investigadores describen su sistema en un parde documentos presentados en la conferencia anual del Grupo de Interés Especial de la Asociación de Maquinaria de Computación sobre Comunicación de Datos.
"Este trabajo muestra que puede lograr muchos objetivos flexibles para administrar el tráfico, al tiempo que conserva el alto rendimiento de los enrutadores tradicionales", dice Hari Balakrishnan, profesor de Fujitsu en Ingeniería Eléctrica y Ciencias de la Computación en el MIT. "Anteriormente, la programabilidad era alcanzable,pero nadie lo usaría en la producción, porque era un factor de 10 o incluso 100 más lento "
"Debe tener la capacidad para que los investigadores e ingenieros prueben miles de ideas", agrega. "Con esta plataforma, no se ve limitado por el hardware o las limitaciones tecnológicas, sino por su creatividad. Puede innovar mucho más rápidamente"
El primer autor en ambos documentos es Anirudh Sivaraman, un estudiante graduado del MIT en ingeniería eléctrica y ciencias de la computación, asesorado por Balakrishnan y Mohammad Alizadeh, el Profesor Asistente de Desarrollo Profesional de TIBCO en Ingeniería Eléctrica y Ciencias de la Computación en el MIT, que son coautores deambos documentos. A ellos se unen colegas del MIT, la Universidad de Washington, Barefoot Networks, Microsoft Research, la Universidad de Stanford y Cisco Systems.
diferentes trazos
La gestión del tráfico puede ser complicada debido a los diferentes tipos de datos que viajan a través de una red y los diferentes tipos de garantías de rendimiento que ofrecen los diferentes servicios. Con las llamadas telefónicas por Internet, por ejemplo, los retrasos son una molestia, pero el paquete ocasional se cae -- que podría traducirse en una palabra faltante en una oración - podría ser tolerable. Con un archivo de datos grande, por otro lado, un ligero retraso podría ser tolerable, pero los datos faltantes no lo son.
Del mismo modo, una red puede garantizar una distribución de ancho de banda igual entre sus usuarios. Cada enrutador en una red de datos tiene su propio banco de memoria, llamado búfer, donde puede poner en cola los paquetes. Si un usuario ha llenado el búfer de un enrutador con paquetes de unsolo video de alta definición, y otro está tratando de descargar un documento de texto comparativamente pequeño, la red podría querer agregar algunos de los paquetes de video a favor del texto, para ayudar a garantizar a ambos usuarios una tasa de datos mínima.
Un enrutador también puede querer modificar un paquete para transmitir información sobre las condiciones de la red, como si el paquete encontró congestión, dónde y por cuánto tiempo; incluso podría sugerir nuevas velocidades de transmisión para los remitentes.
Los informáticos han propuesto cientos de esquemas de gestión de tráfico que involucran reglas complejas para determinar qué paquetes admitir en un enrutador y cuáles descartar, en qué orden poner en cola los paquetes y qué información adicional agregarles, todo bajo una variedadde diferentes circunstancias. Y aunque en simulaciones muchos de estos esquemas prometen un mejor rendimiento de la red, pocos de ellos se han implementado alguna vez, debido a restricciones de hardware en los enrutadores.
Los investigadores del MIT y sus colegas se propusieron el objetivo de encontrar un conjunto de elementos informáticos simples que pudieran organizarse para implementar diversos esquemas de gestión del tráfico, sin comprometer las velocidades de funcionamiento de los mejores enrutadores de la actualidad y sin ocupar demasiado espacio en el chip.
Para probar sus diseños, crearon un compilador, un programa que convierte las instrucciones del programa de alto nivel en instrucciones de hardware de bajo nivel, que utilizaron para compilar siete algoritmos experimentales de gestión del tráfico en sus elementos de circuito propuestos. Si es un algoritmono compilaría, o si requiriera una cantidad de circuitos imprácticamente grande, agregarían elementos de circuito nuevos y más sofisticados a su paleta.
Evaluaciones
En uno de los dos nuevos documentos, los investigadores proporcionan especificaciones para siete tipos de circuitos, cada uno de los cuales es un poco más complejo que el anterior. Algunos algoritmos simples de administración de tráfico requieren solo el tipo de circuito más simple, mientras que otros requieren tipos más complejos. Peroincluso un banco de los circuitos más complejos ocuparía solo el 4 por ciento del área de un chip enrutador; un banco de los tipos menos complejos ocuparía solo el 0.16 por ciento.
Más allá de los siete algoritmos que usaron para diseñar sus elementos de circuito, los investigadores ejecutaron varios otros algoritmos a través de su compilador y descubrieron que compilaron alguna combinación de sus elementos de circuito simples.
"Creemos que se generalizarán a muchos más", dice Sivaraman. "Por ejemplo, uno de los circuitos permite a un programador rastrear una suma acumulada, algo que es empleado por muchos algoritmos".
En el segundo artículo, describen el diseño de su planificador, el elemento del circuito que ordena los paquetes en la cola del enrutador y los extrae para reenviarlos. Además de poner en cola los paquetes según la prioridad, el planificador también puede sellarlos con tiempos de transmisión particularesy reenviarlos en consecuencia. A veces, por ejemplo, podría ser útil que un enrutador reduzca su velocidad de transmisión, para evitar cuellos de botella en otras partes de la red o para ayudar a garantizar una distribución equitativa del ancho de banda.
Finalmente, los investigadores elaboraron especificaciones para sus circuitos en Verilog, el lenguaje que los ingenieros eléctricos suelen usar para diseñar chips comerciales. Las herramientas analíticas integradas de Verilog verificaron que un enrutador que utilizara los circuitos de los investigadores sería lo suficientemente rápido como para soportar las tasas de paquetescomún en las redes de alta velocidad de hoy en día, reenviando un paquete de datos cada nanosegundo.
Fuente de la historia :
Materiales proporcionado por Instituto de Tecnología de Massachusetts . Original escrito por Larry Hardesty. Nota: El contenido puede ser editado por estilo y longitud.
Cite esta página :