Glossar · Netzwerk und Multi-Node
Wissensstufe: FortgeschrittenRoCE
RoCE (RDMA over Converged Ethernet) ist ein Netzwerkprotokoll, mit dem Rechner über Ethernet direkt auf den Arbeitsspeicher anderer Rechner zugreifen.
Auch: RDMA over Converged Ethernet
Einfach erklärt
Normaler Netzwerkverkehr gleicht einem Brief, der in jeder Poststelle ausgepackt, geprüft und neu verpackt wird. Mit RoCE fährt der Kurier dagegen direkt bis an das Regal des Empfängers und stellt die Ware dort ab, ohne dass am Ziel jemand die Tür öffnen muss.
Was technisch passiert
RoCE ist eine Umsetzung von RDMA, also direktem Speicherzugriff über das Netz. NVIDIA beschreibt RDMA in seiner Netzwerkdokumentation als Datenbewegung direkt zwischen den Anwendungsspeichern zweier Server, ohne Beteiligung der CPU. RoCE kapselt dafür den Transport aus der InfiniBand-Welt in Ethernet-Pakete. Damit lassen sich Ethernet-Switches und -Verkabelung für Anwendungen nutzen, die bisher eine Spezialvernetzung voraussetzten.
Es gibt zwei Fassungen. RoCE v1 arbeitet direkt auf der Ethernet-Ebene mit einem eigenen EtherType und ist nicht über IP routbar. RoCE v2 verpackt die Daten zusätzlich in UDP-Pakete auf Port 4791 und kann damit auch IP-geroutete Netze durchqueren.
Entscheidend ist die Arbeitsteilung: Eine RDMA-fähige Netzwerkkarte übernimmt den Transport selbst. Die Anwendungen geben vorab Speicherbereiche frei, danach schreibt oder liest die Karte direkt dort, ohne dass die Ziel-CPU an der Datenbewegung beteiligt ist.
Diese Arbeitsweise stellt Anforderungen an das Netz. Die NVIDIA-Dokumentation nennt eine Flusssteuerung als Voraussetzung für zuverlässigen Betrieb und empfiehlt Priority Flow Control, aktiviert auf allen Endpunkten und Switches im Pfad. Ein gewöhnliches Büro-Ethernet ohne diese Konfiguration ist deshalb nicht automatisch ein RoCE-Netz.
In der Praxis
Im Vier-Spark-Aufbau von AI SolutionX ist RoCE das Bindeglied zwischen den vier DGX Spark: 200-Gbit-Verbindungen je Pfad laufen auf einen 400-Gbit-Switch. Über dieses Netz tauschen die vier GB10 bei Tensor Parallelism ihre Zwischenergebnisse aus, Token für Token. Unter dem Projektnamen RoCEnante fasst AI SolutionX diese Architektur zusammen. Das Verhalten bei Paketverlust und beim Ausfall eines Knotens steht auf der Projektseite ausdrücklich unter den Punkten, die noch nachgewiesen werden müssen.
Wann ist das sinnvoll?
- Wenn mehrere Rechner gemeinsam an einer Aufgabe arbeiten und sehr oft kleine Datenmengen austauschen müssen.
- Wenn bereits Ethernet-Infrastruktur vorhanden ist oder ein separates InfiniBand-Netz unverhältnismäßig wäre.
- Wenn Netzwerkkarten und Switches RDMA und die nötige Flusssteuerung tatsächlich unterstützen.
- Kein Gewinn entsteht, wenn ein Modell auf einem einzelnen System läuft: dann findet kein Austausch zwischen Knoten statt.
Nicht verwechseln mit
- InfiniBand
- InfiniBand ist eine eigene Netzwerktechnik mit eigenen Switches und eigener Verbindungsschicht. RoCE übernimmt den InfiniBand-Transport, verpackt ihn aber in Ethernet-Pakete.
- TCP/IP
- Bei TCP/IP verarbeitet das Betriebssystem die Pakete und kopiert Daten zwischen Puffern. RoCE umgeht diesen Weg: die Netzwerkkarte bewegt die Daten direkt zwischen den Anwendungsspeichern.
Quellen
- NVIDIA MLNX_OFED-Dokumentation: RDMA over Converged Ethernet (RoCE) · abgerufen am
- AI SolutionX: Vier DGX Sparks. Ein Modell. (Projektseite) · abgerufen am
Fachlich geprüft am · Alle Begriffe im Glossar