Deutsch

RoCE: RDMA over Converged Ethernet für hocheffiziente Netzwerkleistung

Aktualisierung: 08. Jul 2022 by
4.7k

Rechenzentrum-Switches

Im Zeitalter der Datenübertragung sind die Anforderungen an ein schnelleres, effizienteres und skalierbares Netzwerk nie gesunken. Da die herkömmlichen TCP/IP-Ethernet-Verbindungen CPU-intensiv sind und eine zusätzliche Verarbeitung und Vervielfältigung der Daten erfordern, können sie den aktuellen Netzwerkanforderungen nicht mehr gerecht werden. In diesem Zusammenhang kommt RDMA over Converged Ethernet (RoCE) ins Spiel. Zunächst sollten wir einen Blick auf RDMA werfen, um herauszufinden, was RoCE ist und ob es sich lohnt.

RDMA (Remote Direct Memory Access) ermöglicht die direkte Datenübertragung zwischen Geräten in einem Netzwerk. Hier ist RoCE (RDMA over Converged Ethernet) eine führende Implementierung dieser Technologie. RoCE verbessert die Datenübertragung mit hoher Geschwindigkeit und geringer Latenz und ist damit ideal für Hochleistungsrechner und Cloud-Umgebungen. Dieser Artikel befasst sich mit den Grundlagen von RDMA und wie RoCE die Datenübertragung über Ethernet-Netzwerke verbessern kann.

Was ist RDMA?

Remote Direct Memory Access (RDMA) ist eine Technologie, die den direkten Speicherzugriff vom Speicher eines Hosts oder Servers auf den Speicher eines anderen Hosts oder Servers ermöglicht, ohne dass die CPU beteiligt ist. Dadurch werden die CPUs entlastet, damit sie ihre eigentliche Arbeit verrichten können, z. B. die Ausführung von Anwendungen und die Verarbeitung großer Datenmengen. Auf diese Weise kann die Netzwerk- und Hostleistung mit geringerer Latenz, geringerer CPU-Belastung und höherer Bandbreite kosteneffizient erreicht werden.RDMA-Technologie

Abbildung 1: RDMA-Technologie

 

Was ist RoCE?

Als eine Art von RDMA ist RoCE ein im Standard der InfiniBand Trade Association (IBTA) definiertes Netzwerkprotokoll, das RDMA über ein konvergiertes Ethernet-Netzwerk ermöglicht. Kurz gesagt, kann es als Anwendung der RDMA-Technologie in hyperkonvergenten Rechenzentren, Cloud-, Speicher- und virtualisierten Umgebungen betrachtet werden. Sie bietet alle Vorteile der RDMA-Technologie und die Vertrautheit von Ethernet. Um die Unterschiede zwischen RoCE und Infiniband zu verstehen, lesen Sie diesen Artikel RoCE vs Infiniband vs TCP/IPUnd die Verkapselung von IB und RoCE wird wie folgt verglichen:

标签

Figure 2: InfiniBand Vs. RoCEv2

 

Typen von RoCE

Im Allgemeinen gibt es zwei RoCE-Versionen: RoCE v1 und RoCE v2, je nach verwendetem Netzwerkadapter oder -karte.

  • RoCE v1: Das RoCE v1-Protokoll ist ein Ethernet-Link-Layer-Protokoll, das es zwei Hosts in derselben Ethernet-Broadcast-Domäne (VLAN) ermöglicht, miteinander zu kommunizieren. Es verwendet den Ethertype 0x8915, der die Rahmenlänge auf 1500 Byte für einen Standard-Ethernet-Rahmen und 9000 Byte für einen Ethernet-Jumbo-Rahmen begrenzt.

  • RoCE v2: Das RoCE v2-Protokoll überwindet die Beschränkung der Version 1, die auf eine einzige Broadcast-Domäne (VLAN) begrenzt ist. Durch die Änderung der Paketkapselung, die IP- und UDP-Header enthält, kann RoCE v2 nun sowohl in L2- als auch in L3-Netzwerken eingesetzt werden. Dies ermöglicht Layer-3-Routing, wodurch RDMA in Netzwerken mit mehreren Subnetzen eingesetzt werden kann und eine hohe Skalierbarkeit gewährleistet. Daher wird RoCE v2 auch als Routable RoCE (RRoCE) bezeichnet. Dank der Einführung von RoCE v2 ist nun auch IP-Multicast möglich.

    RoCE: RDMA over Converged Ethernet für hocheffiziente Netzwerkleistung

Abbildung 2: RoCE v1 vs. RoCE v2 Paket-Format

Vorteile von RoCE

Da RDMA over Converged Ethernet über die Netzwerkschnittstelle und nicht über den Kernel direkt auf die Speicherdaten zugreift, kann es eine Übertragung mit geringer Latenz und hoher Leistung ermöglichen.

  • Geringe CPU-Belastung: Zugriff auf den Speicher des entfernten Switches oder Servers, ohne CPU-Zyklen auf dem entfernten Server zu verbrauchen, was die volle Nutzung der verfügbaren Bandbreite und eine höhere Skalierbarkeit ermöglicht.

  • Null-Kopie: Senden und Empfangen von Daten zu und von entfernten Puffern.

  • Hochproduktiv: Die, durch RoCE verbesserte, Latenzzeit und der verbesserte Durchsatz sorgen für eine stärkere Netzwerkleistung.

  • Kostensparend: Mit RoCE ist es nicht erforderlich, neue Geräte zu kaufen oder die Ethernet-Infrastruktur zu ersetzen, um die enormen Datenmengen zu bewältigen, was den Unternehmen erhebliche Investitionseinsparungen ermöglicht.

Grenzen von RoCE

Aufgrund der Leistungsengpässe herkömmlicher Ethernet-Netzwerke leiden allgemeine RoCE-Anwendungen in Hochleistungsunternehmen immer noch unter Leistungseinbußen wie Überlastung, Paketverlusten und Latenz-Jitter.

  • Überlastung: In Multicast-Szenarien können Warteschlangen überlastet werden, wobei die Latenz der Warteschlange nicht zu vernachlässigen ist.

  • Paketverluste: Im Vergleich zu FC ist das herkömmliche Ethernet anfällig für Überlastung und Paketverluste, wobei das erneute Senden verlorener Pakete leicht zu Datenstörungen führt.

  • Latenz-Jitter: Das Ethernet-Netz unterliegt einem starken Jitter und sein Store-and-Forward-Modus führt zu komplexen Suchvorgängen und einer hohen Weiterleitungslatenz.

Vor vs. Nach RoCE

Abbildung 3: Vor vs. Nach RoCE

Wie kann RoCE realisiert werden?

Um RDMA über konvergiertes Ethernet für ein Rechenzentrum zu realisieren, können Sie Netzwerkadapter oder -kartentreiber installieren, die RoCE unterstützen. Alle Ethernet-NICs erfordern RoCE-Netzwerkadapterkarten. RoCE-Treiber sind in Red Hat, Linux, Microsoft Windows und anderen gängigen Betriebssystemen verfügbar. RDMA über konvergiertes Ethernet ist auf zwei Arten verfügbar. Bei Netzwerk-Switches können Sie den Switch mit einem Betriebssystem verwenden, das PFC (Priority Flow Control) unterstützt. Für einen Rack-Server oder Host müssen Sie eine Netzwerkadapterkarte wie ConnectX-3 pro und ConnectX-4 und höher verwenden.

RoCE

FAQs über RoCE

Hier finden Sie eine Liste mit häufig gestellten FAQ zu RoCE, damit Sie es besser verstehen.

1. Welche FS-Switches oder Netzwerkkarten/-adapter unterstützen RoCE?

Bisher unterstützen die Switches der FS N-Serie mit Cumulus OS und die S58/80-Serie RoCE v1 und v2. Kunden müssen ihre PFC-Funktion nach dem Kauf eines RDMA-Switches aktivieren. Was die Adapter und Karten betrifft, so ist RoCE bei FS noch nicht verfügbar.

2. Können RoCE-Adapter mit anderen Adaptertypen, wie iWARP, kommunizieren?

RoCE-Adapter können nur mit anderen RDMA over Converged Ethernet-Adaptern kommunizieren. Bei Versuchen Konfigurationen zu mischen, z. B. RoCE-Adapter in Kombination mit iWARP-Adaptern, müsste wahrscheinlich auf traditionelle TCP/IP-Verbindungen zurückgeriffen werden.

3. Was ist der Unterschied zwischen RoCE und iWARP?

Wie das RoCE-Netzwerkprotokoll unterstützt auch iWARP (Internet wide area RDMA protocol) die RDMA-Funktion mit geringerer Latenz, aber es gibt einige Unterschiede.

Einerseits ist RoCE die einzige Ethernet-basierte RDMA-Lösung nach Industriestandard mit einem Ökosystem aus mehreren Anbietern, die Netzwerkadapter bereitstellen und über standardmäßige Layer-2- und Layer-3-Ethernet-Switches arbeiten. iWARP hat nur minimale Unterstützung erfahren.

Andererseits verwendet iWARP eine komplexe Mischung von Schichten, einschließlich DDP (Direct Data Placement), eine als MPA (Marker PDU Aligned framing) bekannte Optimierung und ein separates RDMA-Protokoll (RDMAP), um RDMA-Dienste über TCP/IP bereitzustellen. Bei einer derart komplexen Architektur wird es für das iWARP-Protokoll schwierig sein, RDMA auf die bestehenden Software-Transport-Frameworks anzuwenden. Nach einem solchen Kompromiss werden der Durchsatz, die Latenz und die CPU-Auslastung für iWARP gedämpft.

Abbildung 4: Komplexe Netzwerkschichten von iWARP vs. einfacheres Modell von RoCE

 

Fazit

Durch den Einsatz von RDMA in Rechenzentren können Datenbewegungen ausgelagert und eine höhere Verfügbarkeit von CPU-Ressourcen für die Anwendung erreicht werden. Wer RoCE einsetzt, kann von den RDMA-Funktionen profitieren, ohne seine Netzwerkinfrastruktur zu ändern. Durch die Verringerung der Ethernet-Netzwerklatenz und die Auslagerung des CPU-Overheads steigert RoCE die Leistung von Such-, Speicher-, Datenbank- und Finanzanwendungen sowie von Anwendungen mit hoher Transaktionsrate.Durch die Erhöhung der CPU-Effizienz und die Verbesserung der Anwendungsleistung kann RoCE die Anzahl der benötigten Server reduzieren, was zu Energieeinsparungen führt und den Platzbedarf von Ethernet-basierten Rechenzentren verringert.

Das könnte Sie auch interessieren

Kenntnisse
Kenntnisse
See profile for Jason.
Jason
Die Vorteile und Nachteile der Glasfaserkabel
07. Aug 2020
87.3k
Kenntnisse
Kenntnisse
See profile for Sheldon.
Sheldon
TCPIP vs. OSI: Was ist der Unterschied?
06. Jul 2022
75.2k
Kenntnisse
See profile for Sheldon.
Sheldon
Das ABC von PON: OLT, ONU, ONT und ODN
19. Aug 2020
28.1k
Kenntnisse
Kenntnisse
See profile for Sheldon.
Sheldon
Grundlagen von optischen Verteilern (ODF)
02. Apr 2019
4.3k
Kenntnisse
See profile for Sheldon.
Sheldon
LACP vs. PAGP: Was ist der Unterschied?
06. Jun 2022
6.8k
Kenntnisse
See profile for Vincent.
Vincent
Einführung zu BiDi-Transceivern
26. Jun 2020
10.1k
Kenntnisse
See profile for Moris.
Moris
Simplex- vs. Duplex-Glasfaserkabel
10. Jun 2021
40.5k