Was ist RDMA?

Wie wir alle wissen, hat das explosionsartige Wachstum von Internetdaten die Verarbeitungskapazität von Rechenzentren vor große Herausforderungen gestellt.

Computing, Speicherung und Netzwerk sind die drei treibenden Kräfte, die die Entwicklung von Rechenzentren vorantreiben.

Mit der Entwicklung von CPU, GPU und FPGA wurde die Rechenleistung stark verbessert. Speicher Mit der Einführung von Solid State Drive (SSD) wurde die Datenzugriffslatenz stark reduziert.

Die Entwicklung des Netzwerks hinkt jedoch offensichtlich hinterher, die Übertragungsverzögerung ist hoch und wird allmählich zum Engpass der Rechenzentrumsleistung.

Die Rechenleistung wurde stark verbessert

In einem Rechenzentrum sind 70 % des Verkehrs Ost-West-Verkehr (Verkehr zwischen Servern). Dieser Datenverkehr verarbeitet im Allgemeinen den Datenfluss während des verteilten parallelen Hochleistungsrechnens in Rechenzentren und wird über TCP/IP-Netzwerke übertragen.

Steigt die TCP/IP-Übertragungsrate zwischen Servern, steigt auch die Leistung des Rechenzentrums.

70 % des Verkehrs sind Ost-West-Verkehre

TCP/IP-Übertragung zwischen Servern

Der Prozess für Server A zum Senden von Daten an Server B im Rechenzentrum ist wie folgt:

TCP/IP-Übertragung zwischen Servern

  1. Die CPU-Steuerdaten werden aus dem APP-Puffer von A in den Betriebssystempuffer kopiert.
  2. CPU-Steuerdaten Hinzufügen von TCP- und IP-Headern zum Puffer des Betriebssystems (OS).
  3. Fügen Sie TCP- und IP-Paket-Header hinzu, um die Daten an die NIC zu senden, und fügen Sie Ethernet-Paket-Header hinzu.
  4. Das Paket wird vom Netzwerkadapter gesendet und über das Ethernet-Netzwerk an den Netzwerkadapter von Server B übertragen.
  5. Der Netzwerkadapter von Server B entlädt den Ethernet-Header des Pakets und überträgt ihn an den Puffer des Betriebssystems.
  6. Die CPU entlädt TCP- und IP-Paket-Header in den Puffer des Betriebssystems.
  7. Die CPU steuert die Übertragung von nicht installierten Daten an den APP-Puffer.

Wie aus dem Datenübertragungsprozess ersichtlich ist, werden Daten mehrfach in den Buffer des Servers kopiert und TCP- und IP-Header müssen im Betriebssystem hinzugefügt oder deinstalliert werden. Diese Operationen erhöhen nicht nur die Datenübertragungsverzögerung, sondern verbrauchen auch viele CPU-Ressourcen, die die Anforderungen von Hochleistungsrechnen nicht erfüllen können.

Wie baut man also ein leistungsstarkes Rechenzentrumsnetzwerk mit hohem Durchsatz, extrem niedriger Latenz und geringem CPU-Overhead?

RDMA-Technologie kann das tun.

Was ist RDMA

Remote Direct Memory Access (RDMA) ist eine neue Speicherzugriffstechnologie, die es Servern ermöglicht, Speicherdaten von anderen Servern mit hoher Geschwindigkeit ohne zeitaufwändige Verarbeitung durch das Betriebssystem/die CPU zu lesen und zu schreiben.

RDMA ist keine neue Technologie und wurde im High Performance Computing (HPC) weit verbreitet. Mit der Entwicklungsnachfrage nach hoher Bandbreite und geringer Verzögerung in Rechenzentren wurde RDMA schrittweise in einigen Szenarien angewendet, in denen Rechenzentren eine hohe Leistung erfordern.

Im Jahr 2021 erreichte beispielsweise das Transaktionsvolumen eines großen Online-Einkaufszentrums für Einkaufsfestivals einen neuen Rekord von mehr als 500 Milliarden Yuan, was einer Steigerung von fast 10 % gegenüber 2020 entspricht. Hinter einem so enormen Transaktionsvolumen steht eine massive Datenverarbeitung. Das Online-Einkaufszentrum verwendet RDMA-Technologie, um ein Hochleistungsnetzwerk zu unterstützen und ein reibungsloses Einkaufsfestival zu gewährleisten.

Werfen wir einen Blick auf einige der Tricks von RDMA für niedrige Latenzzeiten.

RDMA überträgt die Serveranwendungsdaten direkt vom Speicher zur intelligenten Netzwerkkarte (INIC) (verfestigtes RDMA-Protokoll), und die INIC-Hardware vervollständigt die Kapselung des RDMA-Übertragungspakets, wodurch das Betriebssystem und die CPU entlastet werden.

Die INIC-Hardware vervollständigt die RDMA-Übertragungspaketkapselung und befreit das Betriebssystem und die CPU

Dies bietet RDMA zwei große Vorteile:

  • Nullkopie: Ein Prozess, der das Kopieren von Daten in den Kernel des Betriebssystems und das Verarbeiten der Paket-Header überflüssig macht, was zu einer deutlich reduzierten Übertragungslatenz führt.
  • Kernel-Umgehung und Protokoll OffBelastung: Der Betriebssystemkern ist nicht beteiligt und es gibt keine komplizierte Header-Logik im Datenpfad. Dies reduziert die Latenz und spart erheblich CPU-Ressourcen.

RDMA hat zwei große Vorteile

Drei große RDMA-Netzwerke

Derzeit gibt es drei Arten von RDMA-Netzwerken, nämlich InfiniBand, RoCE (RDMA über Converged Ethernet) und iWARP (RDMA über TCP).

RDMA war ursprünglich exklusiv für die Infiniband-Netzwerkarchitektur, um einen zuverlässigen Transport auf Hardwareebene zu gewährleisten, während RoCE und iWARP Ethernet-basierte RDMA-Technologien sind.

InfiniBand

  • InfiniBand ist ein Netzwerk, das speziell für RDMA entwickelt wurde.
  • Der Cut-Through-Weiterleitungsmodus wird übernommen, um die Weiterleitungsverzögerung zu reduzieren.
  • Kreditbasierter Flusskontrollmechanismus stellt sicher, dass kein Paketverlust auftritt.
  • Es erfordert dedizierte Netzwerkadapter, Switches und Router von InfiniBand, das die höchsten Kosten für den Netzwerkaufbau hat.

RoCE

  • Die Transportschicht ist das InfiniBand-Protokoll.
  • RoCE gibt es in zwei Versionen: RoCEv1 ist auf der Ethernet-Verbindungsschicht implementiert und kann nur auf Schicht L2 übertragen werden; RoCEv2 hostet RDMA auf Basis von UDP und kann in Layer-3-Netzwerken bereitgestellt werden.
  • Unterstützung für RDMA-dedizierten intelligenten Netzwerkadapter, keine Notwendigkeit für dedizierten Switch und Router (unterstützt ECN/PFC-Technologie, reduziert die Paketverlustrate), die niedrigsten Kosten für den Netzwerkaufbau.

iWARP

  • Die Transportschicht ist das iWARP-Protokoll.
  • iWARP ist auf der TCP-Schicht des Ethernet-TCP/IP-Protokolls implementiert und unterstützt die Übertragung auf der L2/L3-Schicht. TCP-Verbindungen in großen Netzwerken verbrauchen viel CPU und werden daher selten verwendet.
  • iWARP erfordert nur Netzwerkadapter zur Unterstützung von RDMA, ohne private Switches und Router, und Kosten zwischen InfiniBand und RoCE.

Mit fortschrittlicher Technologie, aber einem hohen Preis, ist Infiniband auf HPC-Hochleistungs-Computing beschränkt. Mit dem Aufkommen von RoCE und iWARPC werden die RDMA-Kosten reduziert und die RDMA-Technologie wird populär.

Die Verwendung dieser drei Arten von RDMA-Netzwerken in Hochleistungsspeicher- und Rechenzentren kann die Datenübertragungslatenz erheblich reduzieren und eine höhere CPU-Ressourcenverfügbarkeit für Anwendungen bereitstellen.

Das InfiniBand-Netzwerk bietet Rechenzentren extreme Leistung mit einer Übertragungslatenz von nur 100 Nanosekunden, eine Größenordnung niedriger als die von Ethernet-Geräten.

RoCE- und iWARP-Netzwerke bringen kostenintensive Leistung in Rechenzentren und hosten RDMA über Ethernet, wobei sie die Vorteile der hohen Leistung und der geringen CPU-Auslastung von RDMA voll ausnutzen, während der Aufbau nicht viel kostet.

Das UDP-basierte RoCE bietet eine bessere Leistung als das TCP-basierte iWARP und löst in Kombination mit der verlustfreien Ethernet-Flusssteuerungstechnologie das Problem der Paketverlustempfindlichkeit. Das RoCE-Netzwerk ist in Hochleistungsrechenzentren in verschiedenen Branchen weit verbreitet.

Zusammenfassung

Mit der Entwicklung von 5G, künstlicher Intelligenz, industriellem Internet und anderen neuen Bereichen wird die Anwendung der RDMA-Technologie immer beliebter und RDMA wird einen großen Beitrag zur Leistung von Rechenzentren leisten.

Hinterlasse einen Kommentar

Nach oben scrollen