Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand.

Método para descongestionar el tráfico de datos en redes de interconexión en árbol grueso basadas en tecnología lnfiniBand

, donde cada paquete de datos transmitido a través de la red lleva asociado unos identificadores SLID y DLID, donde cada puerto de entrada de cada conmutador de red comprende al menos un buffer dividido en tantos canales virtuales como determine un administrador de la red, donde los paquetes de datos llevan asociado un determinado nivel de servicio, SL, que indica en qué canal virtual de cada buffer ha de ser almacenado transitoriamente dicho paquete de datos, caracterizado porque comprende: dividir los SLID y los DLID en grupos, donde se establecen tantos grupos como canales virtuales se hayan configurado para cada buffer, y; asignar a cada paquete de datos un determinado nivel de servicio, de acuerdo con el grupo al que pertenecen el SLID y DLID que lleva asociados.

Tipo: Patente de Invención. Resumen de patente/invención. Número de Solicitud: P201331916.

Solicitante: UNIVERSIDAD DE CASTILLA-LA MANCHA.

Nacionalidad solicitante: España.

Inventor/es: DUATO MARÍN,JOSÉ FRANCISCO, GARCÍA GARCÍA,Pedro Javier, QUILES FLOR,Francisco José, ESCUDERO SAHUQUILLO,Jesús.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Redes de datos de conmutación (interconexión o... > H04L12/861 (Buffering de paquetes o acuerdos de cola; Planificación de colas)
google+ twitter facebookPin it
Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand.

Fragmento de la descripción:

Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand.

Objeto de la invención

La presente invención se refiere a un método para la descongestión del tráfico de datos en redes de interconexión basadas en tecnología InfiniBand.

En concreto, el presente método se centra en la reducción de los efectos negativos de la congestión, como el bloqueo de cabeza de línea (más conocido como Bloqueo HoL) y el acaparamiento del buffer, en redes de interconexión con topología en árbol grueso (más conocido por su nombre en inglés, fat-tree) basadas en el estándar InfiniBand.

Tiene aplicación en la industria dedicada al diseño, fabricación y explotación de redes de interconexión de altas prestaciones presentes en los sistemas de supercomputación de altas prestaciones formados por millones de nodos de procesamiento conectados en paralelo. Igualmente, la invención es de aplicación en los dispositivos hardware fabricados según las normas del estándar InfiniBand, promovido por el consorcio "InfiniBand Trade Association".

Problema técnico a resolver y Antecedentes de la invención

Las necesidades de comunicación de la sociedad contemporánea han hecho que las redes de interconexión de altas prestaciones que conectan miles de nodos de procesamiento de datos hayan crecido enormemente en las últimas décadas, no sólo en tamaño, sino también en complejidad.

En los últimos años, la tendencia en el desarrollo de las aplicaciones "software" se centra en explotar al máximo el nivel de paralelismo, mediante la computación en paralelo de miles de tareas con el objetivo de conseguir un resultado final en un menor tiempo posible. Ese número elevado de tareas de las aplicaciones dependen unas de otras y, por tanto, los nodos de procesamiento que las ejecutan deben estar conectados mediante una red de interconexión de altas prestaciones. Por tanto, la necesidad de ejecutar miles de tareas en paralelo lo más rápidamente posible requiere interconectar miles de nodos de procesamiento en supercomputadores de gran potencia, para facilitar el intercambio de una cantidad de datos cada vez mayor. Esta tendencia "incremental" en las necesidades de cómputo de los supercomputadores, mantiene constante el reto de diseñar nuevas topologías y nuevas tecnologías de redes de interconexión que permiten gestionar de una manera más eficiente la transmisión de grandes cantidades de flujos de datos. El objetivo primordial de las redes de interconexión de altas prestaciones es ofrecer una alta productividad y una baja latencia en la transmisión de datos.

En las actuales redes de interconexión, la información se transmite por lotes de información denominados mensajes, y cada mensaje a su vez se subdivide en unidades básicas denominadas "paquetes" de datos. Un paquete de datos es la cantidad mínima de información que puede transmitir la red de interconexión. Cada paquete de datos se compone de una serie de bits, y se divide en tres partes: cabecera, información y cola. La cabecera contiene información de control complementaria que usarán los nodos y conmutadores de la red, tal como el tamaño del paquete de datos o el nodo de origen y el nodo de destino del paquete de datos; los bits de información se contienen la parte del mensaje que le corresponde a cada paquete; y la cola del paquete son un puñado de bits que se usan para delimitar dicho paquete en su viaje por la red.

Los nodos de procesamiento de la red de interconexión comprenden al menos un puerto a través del cual reciben o inyectan paquetes de datos en la red. Estos puertos de los nodos de procesamiento de la red reciben comúnmente el nombre de "puertos HCA" (del inglés, Host-Channel-Adapter ports) .

Además, de los puertos HCA, la red de interconexión también está formada por los conmutadores, que son los encargados de enrutar y transmitir la información desde un nodo origen a otro nodo destino.

A este respecto cabe indicar que, la especificación InfiniBand define lo que se conoce como "identificador local de red", LID (del inglés, Local Identifier) , que identifica un puerto HCA de un nodo de procesamiento concreto. Por tanto, cada puerto HCA de la red de interconexión tendrá un LID distinto, de manera que podrá ser referenciado de forma unívoca desde cualquier punto de la red. En este sentido, dentro la información de control que se incluye en un paquete se incluye el llamado identificador local de origen, SLID (del inglés, Source LID) , o un identificador local de destino, DLID (del inglés, Destination LID) .

En cuanto a la topología de las redes de interconexión, un tipo muy común es la denominada comúnmente "red en árbol grueso" (más conocida como fat-tree, por su nombre en inglés) que conecta un número determinado de nodos de procesamiento mediante un conjunto de conmutadores que están dispuestos en etapas. La ventaja de esta topología es que mantiene el ancho de banda constante (en inglés Constant Bisection Bandwidth, CBB) entre las etapas. El ancho de banda se define como la cantidad de información que un enlace es capaz de transmitir por unidad de tiempo.

Básicamente, un fat-tree establece enlaces entre los nodos de procesamiento (conectados a los puertos HCA) y los conmutadores de la primera etapa, y entre estos últimos y los conmutadores de las siguientes etapas. Y, sucesivamente, los conmutadores que pertenecen a una cada etapa del fat-tree se conectan, igualmente, por medio de enlaces con los conmutadores de las etapas posterior y precedente. El ancho de banda total de los enlaces de cada etapa es el mismo que la suma del ancho de banda de todos los puertos HCA (ancho de banda de inyección) y, como se ha descrito, el ancho de banda entre los conmutadores de una etapa es igual, en las etapas posterior y precedente, al ancho de banda de inyección, que se mantiene constante entre etapas.

Entre cada etapa de conmutadores, los flujos de paquetes de datos se encaminan mediante un "algoritmo de encaminamiento", que establece la ruta que debe seguir cada paquete de datos, desde un SLID hasta un DLID, a través de distintas etapas del fat-tree. Los paquetes de datos realizan un recorrido "hacia delante" a través de las diferentes etapas (y los enlaces que las interconectan) , llegando hasta una última etapa de conmutadores, donde no hay enlaces hacia una nueva etapa. A partir de esta última etapa, los paquetes de datos continúan su recorrido "hacia atrás" por los enlaces y etapas de conmutadores hasta que, finalmente, dichos paquetes de datos alcanzan su nodo de procesamiento de destino de la red de interconexión.

De esta manera, los paquetes de datos realizan un determinado recorrido desde sus nodos de origen, a través de los enlaces y los conmutadores de las etapas ascendentes, hasta la etapa correspondiente, donde giran para orientarse hacia sus nodos de destino. Las redes de interconexión con topología fat-tree o de árbol grueso, son un tipo de redes de interconexión denominado indirecto, ya que los paquetes de datos se dirigen de manera indirecta (a través de conmutadores) desde su nodo de origen hacia su nodo de destino.

Existen fundamentalmente dos tipos de algoritmos de encaminamiento que permiten tratar la información que se transmite por una red. Un tipo de algoritmo es el llamado determinista, que asigna a cada paquete de datos a transmitir un determinado camino de la red, dependiendo de su nodo inicial y su nodo de destino. El otro tipo de algoritmo es el llamado adaptativo, que asigna en tiempo real el camino que debe seguir cada paquete de datos para alcanzar su nodo de destino desde su nodo inicial.

Como características de los algoritmos de encaminamiento de tipo determinista, cabe citar su simplicidad, su...

 


Reivindicaciones:

1. Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand, que comprenden una topología en árbol grueso, con una pluralidad de nodos (1) de procesamiento conectados entre sí mediante una pluralidad de etapas de conmutadores (2) , donde los nodos (1) de procesamiento y los conmutadores (2) están unidos mediante enlaces (6) , donde cada nodo (1) de procesamiento comprende al menos un puerto HCA (9) y cada conmutador (2) comprende al menos un puerto de entrada (7) y un puerto de salida (8) de flujos de paquetes de datos (5) que se transmiten entre dos puertos HCA (9) por los enlaces (6) y conmutadores (2) de la red de interconexión, donde cada paquete de datos (5) lleva asociado un identificador local denominado SLID, que indica el puerto HCA (9) desde el que ha sido inyectado en la red de interconexión, y un identificador local denominado DLID, que indica el puerto HCA (9) al cual se dirige, donde cada puerto de entrada (7) de cada conmutador (2) comprende al menos un buffer (3) cuyo espacio de memoria se divide en tantos canales virtuales (4) como determine un administrador de la red de interconexión, donde los paquetes de datos (5) llevan asociado un determinado nivel de servicio, SL, que indica en qué canal virtual (4) de cada buffer (3) de cada puerto de entrada (7) de cada conmutador (2) ha de ser almacenado transitoriamente dicho paquete de datos (5) hasta su salida de dicho conmutador (2) , caracterizado por que comprende las siguientes fases:

a. dividir los SLID en grupos, donde se establecen tantos grupos de SLID como canales virtuales (4) se hayan configurado para cada buffer (3) , de manera que a cada SLID le corresponde un determinado grupo;

b. dividir los DLID en grupos, donde se establecen tantos grupos de DLID como canales virtuales (4) se hayan configurado para cada buffer (3) , de manera que a cada DLID le corresponde un determinado grupo;

c. asignar a cada paquete de datos (5) que se transmite por la red de interconexión, un determinado nivel de servicio, SL, de acuerdo con el grupo al que pertenece el SLID que lleva asociado y con el grupo al que pertenece el DLID que lleva asociado.

2. Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand según la reivindicación 1, caracterizado por que los grupos de SLID se establecen de acuerdo a la siguiente fórmula:

** (Ver fórmula) **

y los grupos de DLID se establecen de acuerdo a la siguiente fórmula:

** (Ver fórmula) **

donde por "#HCA_ports" se entiende el número de puertos HCA (9) configurados 5 activos en la red de interconexión, y por "#VL" se entiende el número de canales virtuales (4) configurados activos en cada buffer (3) de cada puerto de entrada (7) de cada conmutador (2) de la red de interconexión.

3. Método para descongestionar el tráfico de datos en redes de interconexión basadas en tecnología InfiniBand según la reivindicación 1, caracterizado por 10 que la asignación de un determinado nivel de servicio, SL, a cada paquete de

** (Ver fórmula) **

donde por "MOD" se entiende un operador que obtiene el resto de la división entre los términos situados a la izquierda y a la derecha de dicho operador.