Towards efficient and feasible congestion management techniques for high-performance interconnection networks using distributed routing

Las redes de interconexion son un elemento crucial en los actuales sistemas de computacion paralela, clusters o estaciones de centros de trabajo, entre otros. Ofrecer una baja latencia y una alta velocidad, son requisitos basicos para una red de interconexion de altas prestaciones. Y es que es indispensable que estas redes ofrezcan unas prestaciones que no limiten el rendimiento global del sistema. En otras palabras, la red de interconexion no debe ser el cuello de botella el sistema del que forma parte. En este sentido, numerosas lineas de investigacion se centran en mejorar las prestaciones de la red de interconexion. Una de ellas es el control de la congestion. La congestion es un antiguo problema que puede afectar gravemente a las prestaciones de las redes de interconexion. En concreto, la congestion se produce cuando el acceso a ciertos recursos de la red (enlaces, puertos de salida) es solicitado de forma simultanea y persistente por varios flujos de paquetes, siendo imposible atender a la vez todas las peticiones. En estas situaciones, y en redes sin descarte de paquetes, las colas donde se almacenan los paquetes implicados se llenaran por completo, y la congestion se expandira por la red, debido al control de flujo, en forma de arboles de congestion, que pueden aparecer, propagarse y desaparecer de muy diversas formas. En estas condiciones, las prestaciones de la red se degradaran drasticamente, principalmente debido al efecto del bloqueo de cabeza de linea o Head-of-Line (HoL) blocking, que se produce cuando los paquetes bloqueados en cabeza de una cola impiden el avance de paquetes almacenados en la misma cola, incluso si estos ultimos solicitan recursos que estan disponibles. Hasta la fecha, una de las tecnicas mas ventajosas y satisfactorias para el control de la congestion ha sido RECN Regional Explicit Congestion Notification); una propuesta que consigue eliminar por completo HoL-blocking, dejando sin efecto la congestion que no afectara al rendimiento global de la red. Otras propuestas para el control de la congestion se centran en la eliminacion de los arboles de congestion, sin tener en cuenta el HoL-blocking, lo que ocasiona que dichas tecnicas no logren unos resultados idoneos. De hecho, hay otras tecnicas que tambien han intentado eliminar el HoL-blocking, pero sin llegar a conseguir resultados aceptables. Por otro lado, los enfoques basados en RECN plantean el inconveniente de que requieren un numero reducido de recursos adicionales de control, que se usan para guardar informacion de la congestion en cada punto de la red hacia donde esta se propaga. Este es el precio que hay que pagar para RECN obtenga unos resultados muy aceptables. Otro inconveniente de RECN es que ha sido planteado para redes de interconexion con encaminamiento fuente, mientras que las redes con encaminamiento distribuido son muy comunes. Por ejemplo, la especificacion InfiniBand usa encaminamiento distribuido. Esta tesis se centra en proponer nuevos mecanismos de control de congestion para redes de interconexion con encaminamiento distribuido que sean eficientes y sin un coste y complejidad excesivos, de cara a su posible implementacion en sistemas reales. En general, se ha intentado con este trabajo llenar una serie de huecos que, en nuestra opinion, estaban sin cubrir dentro del ambito del control de congestion. En concreto, esta tesis consta de tres partes. En la primera, se proponen dos tecnicas de control de congestion muy sencillas que no necesitan recursos adicionales, y que consiguen unas prestaciones bastante aceptables con una complejidad y coste minimos. Si bien dichas tecnicas no consiguen una eliminacion completa del HoL-blocking. En la segunda parte, se proponen otras dos tecnicas de control de congestion que maximizan las prestaciones de la red en situaciones de congestion. La idea principal en la que se basan estas propuestas es en el aislamiento de los flujos congestionados en una serie de recursos especialmente habilitados a tal efecto. Puede pensarse que el uso de recursos adicionales supone demasiado coste adicional pero, en nuestra opinion, esto es tambien una garantia a la hora de eliminar los problemas de la congestion. Ademas, se ha tratado de optimizar al maximo el uso de estos recursos adicionales. La eleccion de simplicidad o eficiencia con un coste adicional queda, pues, en manos del disenador de la red de interconexion. Finalmente, en la tercera parte de la tesis se propone una nueva estrategia de control de congestion basada en la combinacion de las propuestas de la segunda parte de la tesis y las tecnicas clasicas de control de congestion basadas en limitacion de inyeccion. De esta combinacion surge una nueva propuesta que ofrece muy buenas prestaciones, e incluso reduce la necesidad de recursos adicionales de las tecnicas propuestas anteriormente.