I. Was ist ein InfiniBand-Netzwerk?
InfiniBand, oft mit „IB“ abgekürzt, ist ein Netzwerkkommunikationsstandard und eines der Protokolle, die die RDMA-Technologie (Remote Direct Memory Access) implementieren. Es nutzt eine Hochgeschwindigkeits-Differenzsignaltechnik sowie mehrkanalige parallele Übertragungsmechanismen. Seine Hauptziele sind „hohe Leistung, geringe Latenz und hohe Zuverlässigkeit“.
InfiniBand ist eine Verbindungstechnologie, die speziell für Hochleistungsrechner (HPC) im Serverbereich entwickelt wurde. Sie zeichnet sich durch einen extrem hohen Durchsatz und eine außergewöhnlich geringe Latenz aus und wird für die Datenverbindung zwischen Computern (z. B. Replikation, verteilte Workloads) genutzt. InfiniBand wird auch als direkte oder vermittelte Verbindung zwischen Servern und Speichersystemen (wie SANs und direkt angeschlossenen Speichern) sowie zwischen Speichersystemen untereinander eingesetzt. Darüber hinaus erleichtert es die Kommunikation zwischen Servern und Netzwerken (wie LANs, WANs und dem Internet). Es ist in Rechenzentren und im HPC-/Speicherbereich weit verbreitet. Mit dem Aufkommen der künstlichen Intelligenz hat es sich in der Folge zur bevorzugten Netzwerkverbindungstechnologie für die Anbindung von GPU-Servern entwickelt.
II. Die Entwicklungsgeschichte von InfiniBand
Anfang der 1990er Jahre leistete Intel Pionierarbeit bei der Einführung des PCI-Bus-Designs in die Standard-PC-Architektur, um die wachsende Zahl externer Geräte zu unterstützen. Da sich CPUs, Speicher, Festplatten und andere Komponenten jedoch rasch weiterentwickelten, wurde die langsamere Weiterentwicklung des PCI-Busses zu einem Engpass für das gesamte System. Um dieses Problem zu lösen, gründeten IT-Branchenriesen wie Compaq, Dell, HP, IBM, Intel, Microsoft und Sun zusammen mit über 180 weiteren Unternehmen gemeinsam die **IBTA (InfiniBand Trade Association)**.
Das Ziel der IBTA bestand darin, neue alternative Technologien zu erforschen, um PCI zu ersetzen und dessen Übertragungsengpässe zu beheben. Infolgedessen wurde im Jahr 2000 die **InfiniBand Architecture Specification Version 1.0** offiziell veröffentlicht. Sie führte das RDMA-Protokoll ein, das geringere Latenzzeiten, größere Bandbreite und höhere Zuverlässigkeit bot sowie eine deutlich leistungsfähigere E/A-Performance ermöglichte, wodurch es sich als neuer Standard für die Systemverbindungstechnologie etablierte.
Wenn man von InfiniBand spricht, kommt man unweigerlich auf ein israelisches Unternehmen zu sprechen – **Mellanox** (chinesischer Name: , leicht zu merken als „Schrauben verkaufen“). Mellanox wurde im Mai 1999 in Israel von mehreren ehemaligen Mitarbeitern von Intel und Galileo Technology gegründet und schloss sich kurz nach seiner Gründung der InfiniBand-Industrieallianz an. Im Jahr 2001 brachte das Unternehmen sein erstes InfiniBand-Produkt auf den Markt.
Im Jahr 2002 stand das InfiniBand-Lager vor einem großen Umbruch. Intel „sprang ab“ und beschloss, seinen Entwicklungsschwerpunkt auf **PCI Express (PCIe)** zu verlagern, das 2004 auf den Markt kam. Ein weiterer Gigant, Microsoft, zog sich ebenfalls aus der InfiniBand-Entwicklung zurück. Obwohl Unternehmen wie Sun und Hitachi weiterhin engagiert blieben, war die Zukunft von InfiniBand getrübt.
Ab 2003 verlagerte sich der Schwerpunkt von InfiniBand auf einen neuen Anwendungsbereich: die „Verbindung von Computerclustern“. Im Jahr 2005 fand es eine weitere neue Anwendung: „Anbindung von Speichergeräten“. Nach 2012 erlebte die InfiniBand-Technologie, angetrieben durch den kontinuierlichen Anstieg der Anforderungen im Bereich High-Performance Computing (HPC), einen Aufschwung und baute ihren Marktanteil stetig aus.
Als sich die InfiniBand-Technologie nach und nach durchsetzte, wuchs auch Mellanox und entwickelte sich zum "Marktführer" im Bereich InfiniBand. Im Jahr 2010 fusionierte Mellanox mit Voltaire, wodurch Mellanox (2019 von NVIDIA übernommen) und QLogic (2012 von Intel übernommen) als die wichtigsten InfiniBand-Anbieter übrig blieben.
Im Jahr 2013 übernahm Mellanox das auf Siliziumphotonik spezialisierte Unternehmen Kotura sowie den Hersteller von Chips für parallele optische Verbindungen, IPtronics, und baute damit sein Branchenportfolio weiter aus.
Im Jahr 2015 betrug der Marktanteil der InfiniBand-Technologie im "TOP500" Die Supercomputer-Liste überschritt erstmals die 50-Prozent-Marke. Damit überholte InfiniBand erstmals die Ethernet-Technologie und wurde zum "bevorzugte Cluster-Verbindungstechnologie für Supercomputer".
Bis 2015 hatte Mellanox einen "Anteil von 80 %" des globalen InfiniBand-Marktes. Ihr Geschäftsfeld hatte sich von Chips auf das gesamte Spektrum ausgeweitet: Netzwerkadapter, Switches/Gateways, Fernkommunikationssysteme sowie Kabel und Module, wodurch sie sich als Netzwerkausrüster von Weltklasse etablierten.
Im Jahr 2019 unternahm NVIDIA einen bedeutenden Schritt und übernahm Mellanox für "6,9 Milliarden Dollar". Jensen Huang, CEO von NVIDIA, erklärte: „Dies ist der Zusammenschluss zweier weltweit führender Unternehmen im Bereich Hochleistungsrechnen. NVIDIA konzentriert sich auf beschleunigtes Rechnen, während Mellanox den Schwerpunkt auf Netzwerkverbindungen und Speicher legt.“ Im Nachhinein betrachtet bewies NVIDIA bemerkenswerte Weitsicht: Das Training großer Modelle ist in hohem Maße auf Hochleistungs-Computing-Cluster angewiesen, und InfiniBand-Netzwerke sind die "idealer Partner" für solche Cluster.
III. So funktioniert InfiniBand
Die Funktionsweise von InfiniBand mag für Laien außerhalb des Netzwerkbereichs komplex erscheinen. Anfänger können sich die Grundlagen aneignen oder diesen Abschnitt überspringen. Das InfiniBand-Protokoll nutzt zudem ein "Schichtarchitektur", wobei jede Schicht eigenständig ist und Dienste für die darüberliegende Schicht bereitstellt.
Physikalische Schicht: Legt fest, wie Bitsignale auf der physikalischen Verbindung zu Symbolen, anschließend zu Rahmen, Datensymbolen und Datenfüllern zwischen Paketen zusammengefügt werden. Sie beschreibt Signalisierungsprotokolle für die Erstellung gültiger Pakete usw.
Verbindungsschicht: Legt das Format von Datenpaketen sowie die Protokolle für den Paketverkehr fest, wie z. B. Flusssteuerung, Routing, Kodierung, Dekodierung usw.
Netzwerkschicht: Führt das Routing durch, indem dem Paket ein 40 Byte großer Global Route Header (GRH) hinzugefügt wird. Bei der Weiterleitung führen Router lediglich eine variable CRC-Prüfung durch, um sicherzustellen, dass "End-to-End-Datenintegrität".
Transportschicht: Liefert Pakete an ein bestimmtes Queue-Paar (QP) und weist das QP an, wie das Paket zu verarbeiten ist. Der InfiniBand-Netzwerktransport nutzt die Credit-Based Flow Control (CBFC)-Technologie, um die Zuverlässigkeit und Effizienz der Datenübertragung sicherzustellen. Dieser Mechanismus verwaltet das Kreditvolumen (das die Datenmenge darstellt, die der Empfänger annehmen kann) zwischen Sender und Empfänger, um Paketverluste und Überlastungen zu verhindern.

Das QP (Queue Pair) ist die grundlegende Kommunikationseinheit der RDMA-Technologie. Es besteht aus einem Paar von Warteschlangen: der SQ (Send Queue) und der RQ (Receive Queue). Wenn Anwender APIs aufrufen, um Daten zu senden oder zu empfangen, legen sie die Daten im Wesentlichen in das QP. Die Anfragen im QP werden dann nacheinander im Polling-Verfahren verarbeitet.
Die Vorteile von "CBFC" Die Technologie lässt sich in drei Hauptpunkte zusammenfassen:
1. Vermeidung von Überlastungen: Durch dynamische Kreditanpassung und verlustfreie Übertragung verhindert CBFC wirksam Netzwerküberlastungen und Paketverluste.
2. Verbessert die Effizienz: Der Absender kann kontinuierlich Daten übertragen, ohne auf Bestätigungen warten zu müssen, bis das Guthaben aufgebraucht ist, wodurch die Effizienz der Datenübertragung gesteigert wird.
3. Automatische Konfiguration: Der Flusssteuerungsmechanismus wird bei der physischen Installation von InfiniBand-Geräten automatisch aktiviert, sodass keine manuelle Konfiguration durch den Benutzer erforderlich ist.
Wie ersichtlich definiert InfiniBand eigene Formate für die Schichten 1 bis 4 (Physikalische Schicht, Verbindungsschicht, Netzwerkschicht, Transportschicht), die zusammen ein vollständiges Netzwerkprotokoll bilden. Die durchgängige Flusssteuerung bildet die Grundlage für das Senden und Empfangen von InfiniBand-Netzwerkpaketen und ermöglicht so die Realisierung eines hocheffizienten, verlustfreien Netzwerks.
Natürlich beruht die hohe Geschwindigkeit und die Verlustfreiheit des InfiniBand-Netzwerks auch auf Technologien und Funktionen wie Socket Direct, Adaptive Routing, dem Subnet Manager (SM) für die Subnetzverwaltung, der Netzwerkpartitionierung und der SHARP-Engine (Scalable Hierarchical Aggregation and Reduction Protocol) zur Netzwerkoptimierung. Zusammen sorgen diese Komponenten für die charakteristische hohe Leistung, geringe Latenz und einfache Skalierbarkeit.