InfiniBand ( IB ) es un estándar de comunicaciones de redes informáticas utilizado en informática de alto rendimiento que presenta un alto rendimiento y una latencia muy baja . Se utiliza para la interconexión de datos tanto entre computadoras como dentro de ellas. InfiniBand también se utiliza como una interconexión directa o conmutada entre servidores y sistemas de almacenamiento, así como una interconexión entre sistemas de almacenamiento. Está diseñado para ser escalable y utiliza una topología de red de estructura conmutada . Entre 2014 y junio de 2016, [1] fue la interconexión más utilizada en la lista TOP500 de supercomputadoras.
Mellanox (adquirida por Nvidia ) fabrica adaptadores de bus host InfiniBand y conmutadores de red , que son utilizados por grandes proveedores de sistemas informáticos y bases de datos en sus líneas de productos. [2]
Como interconexión de clústeres informáticos, IB compite con Ethernet , Fibre Channel e Intel Omni-Path . La tecnología es promovida por la InfiniBand Trade Association .
InfiniBand se originó en 1999 a partir de la fusión de dos diseños en competencia: Future I/O y Next Generation I/O (NGIO). NGIO fue liderado por Intel , con una especificación lanzada en 1998, [3] y se unieron Sun Microsystems y Dell . Future I/O fue respaldado por Compaq , IBM y Hewlett-Packard . [4] Esto llevó a la formación de la InfiniBand Trade Association (IBTA), que incluía ambos conjuntos de proveedores de hardware, así como proveedores de software como Microsoft . En ese momento se pensó que algunas de las computadoras más potentes se estaban acercando al cuello de botella de interconexión del bus PCI , a pesar de las actualizaciones como PCI-X . [5] La versión 1.0 de la Especificación de arquitectura InfiniBand se lanzó en 2000. Inicialmente, la visión de IBTA para IB era simultáneamente un reemplazo para PCI en E/S, Ethernet en la sala de máquinas , interconexión de clúster y Fibre Channel . IBTA también previó la descomposición del hardware del servidor en una estructura IB .
Mellanox se fundó en 1999 para desarrollar la tecnología NGIO, pero en 2001 lanzó una línea de productos InfiniBand llamada InfiniBridge a velocidades de 10 Gbit/segundo. [6] Tras el estallido de la burbuja puntocom, hubo dudas en la industria sobre invertir en un salto tecnológico de tal alcance. [7] En 2002, Intel anunció que en lugar de lanzar circuitos integrados IB ("chips"), se centraría en el desarrollo de PCI Express , y Microsoft interrumpió el desarrollo de IB a favor de la extensión de Ethernet. Sun Microsystems y Hitachi continuaron apoyando a IB. [8]
En 2003, el superordenador System X construido en Virginia Tech utilizó InfiniBand en lo que se estimó que era el tercer ordenador más grande del mundo en ese momento. [9] La OpenIB Alliance (posteriormente rebautizada como OpenFabrics Alliance) se fundó en 2004 para desarrollar un conjunto abierto de software para el núcleo Linux . En febrero de 2005, el soporte fue aceptado en el núcleo Linux 2.6.11. [10] [11] En noviembre de 2005, finalmente se lanzaron dispositivos de almacenamiento que utilizaban InfiniBand de proveedores como Engenio. [12] Cisco, que deseaba mantener la tecnología superior a Ethernet fuera del mercado, adoptó una estrategia de "comprar para matar". Cisco mató con éxito a las empresas de conmutación InfiniBand como Topspin mediante adquisiciones. [13] [ cita requerida ]
De las 500 supercomputadoras más importantes en 2009, Gigabit Ethernet fue la tecnología de interconexión interna en 259 instalaciones, en comparación con 181 que usaban InfiniBand. [14] En 2010, los líderes del mercado Mellanox y Voltaire se fusionaron, dejando solo otro proveedor de IB, QLogic , principalmente un proveedor de canal de fibra . [15] En la Conferencia Internacional de Supercomputación de 2011 , se anunciaron y demostraron enlaces que funcionaban a aproximadamente 56 gigabits por segundo (conocidos como FDR, ver más abajo), conectando stands en la feria comercial. [16] En 2012, Intel adquirió la tecnología InfiniBand de QLogic, dejando solo un proveedor independiente. [17]
En 2014, InfiniBand era la tecnología de conexión interna más popular para supercomputadoras, aunque dos años después, Ethernet de 10 Gigabits comenzó a desplazarla. [1]
En 2016, se informó que Oracle Corporation (un inversor en Mellanox) podría diseñar su propio hardware InfiniBand. [2]
En 2019, Nvidia adquirió Mellanox, el último proveedor independiente de productos InfiniBand. [18]
Las especificaciones son publicadas por la asociación comercial InfiniBand.
Los nombres originales para las velocidades eran velocidad de datos única (SDR), velocidad de datos doble (DDR) y velocidad de datos cuádruple (QDR), como se indica a continuación. [12] Posteriormente, se agregaron otras siglas de tres letras para velocidades de datos aún más altas. [19]
Cada enlace es dúplex. Los enlaces se pueden agregar: la mayoría de los sistemas utilizan un conector de 4 enlaces/carriles (QSFP). HDR a menudo utiliza enlaces 2x (también conocido como HDR100, enlace de 100 Gb que utiliza 2 carriles de HDR, mientras sigue utilizando un conector QSFP). Se requieren 8x con puertos de conmutador NDR que utilicen conectores OSFP (factor de forma pequeño octal conectable) "Definiciones de cables y conectores".
InfiniBand proporciona capacidades de acceso directo a memoria remota (RDMA) para una baja sobrecarga de CPU.
InfiniBand utiliza una topología de red conmutada , a diferencia de la Ethernet de medio compartido de los primeros tiempos . Todas las transmisiones comienzan o terminan en un adaptador de canal. Cada procesador contiene un adaptador de canal de host (HCA) y cada periférico tiene un adaptador de canal de destino (TCA). Estos adaptadores también pueden intercambiar información para fines de seguridad o calidad de servicio (QoS).
InfiniBand transmite datos en paquetes de hasta 4 KB que se unen para formar un mensaje. Un mensaje puede ser:
Además de una conexión con factor de forma de placa, puede utilizar tanto cable de cobre activo como pasivo (hasta 10 metros) y cable de fibra óptica (hasta 10 km). [31] Se utilizan conectores QSFP .
La Asociación InfiniBand también especificó el sistema de conector CXP para velocidades de hasta 120 Gbit/s sobre cobre, cables ópticos activos y transceptores ópticos que utilizan cables de fibra multimodo paralelos con conectores MPO de 24 fibras. [ cita requerida ]
El soporte del sistema operativo Mellanox está disponible para Solaris , FreeBSD , [32] [33] Red Hat Enterprise Linux , SUSE Linux Enterprise Server (SLES), Windows , HP-UX , VMware ESX , [34] y AIX . [35]
InfiniBand no tiene una interfaz de programación de aplicaciones (API) estándar específica . El estándar solo enumera un conjunto de verbos como ibv_open_device
o ibv_post_send
, que son representaciones abstractas de funciones o métodos que deben existir. La sintaxis de estas funciones se deja a los proveedores. A veces, como referencia, esto se llama API de verbos . El software estándar de facto es desarrollado por OpenFabrics Alliance y se llama Open Fabrics Enterprise Distribution (OFED). Se publica bajo dos licencias GPL2 o BSD para Linux y FreeBSD, y como Mellanox OFED para Windows (nombres de producto: WinOF / WinOF-2; atribuido como controlador de host para que coincida con dispositivos ConnectX 3 a 5 específicos) [36] bajo una opción de licencia BSD para Windows. Ha sido adoptado por la mayoría de los proveedores de InfiniBand, para Linux , FreeBSD y Microsoft Windows . IBM hace referencia a una biblioteca de software llamada libibverbs
, para su sistema operativo AIX , así como "verbos AIX InfiniBand". [37]
El soporte del kernel de Linux se integró en 2005 en la versión 2.6.11 del kernel. [38]
Ethernet over InfiniBand, abreviado como EoIB, es una implementación de Ethernet sobre el protocolo InfiniBand y la tecnología de conectores. EoIB permite múltiples anchos de banda de Ethernet que varían según la versión de InfiniBand (IB). [39] La implementación de Ethernet del conjunto de protocolos de Internet , generalmente denominado TCP/IP, es diferente en algunos detalles en comparación con el protocolo InfiniBand directo en IP over IB (IPoIB).
La tecnología InfiniBand ahora se encuentra en 205 sistemas, en comparación con los 235 sistemas anteriores, y ahora es la segunda tecnología de interconexión de sistemas internos más utilizada. Gigabit Ethernet ha aumentado de 182 sistemas a 218 sistemas, en gran parte gracias a que ahora 176 sistemas utilizan interfaces 10G.
FDR10 es una velocidad de datos InfiniBand no estándar, donde cada carril de un puerto 4X ejecuta una velocidad de bits de 10,3125 Gbit/s con una codificación 64b/66b, lo que da como resultado un ancho de banda efectivo de 40 Gbit/s. FDR10 admite un 20 % más de ancho de banda que QDR debido a una mejor velocidad de codificación.
Descripción general de InfiniBand FDR y FDR10 [...] FDR, velocidad de datos InfiniBand estándar, donde cada carril de un puerto 4X ejecuta una velocidad de bits de 14,0625 Gbit/s con una codificación 64b/66b, lo que da como resultado un ancho de banda efectivo de 54,54 Gbit/s. La capa física FDR es una capa física especificada por IBTA que utiliza diferentes tipos de bloques, mecanismos de corrección de errores y reglas de trama. El conmutador SX6518 también admite FDR10, una velocidad de datos InfiniBand no estándar, donde cada carril de un puerto 4X ejecuta una velocidad de bits de 10,3125 Gbit/s con una codificación 64b/66b, lo que da como resultado un ancho de banda efectivo de 40 Gbit/s.