Was ist RoCE?

RoCE ist als RDMA over Converged Ethernet bekannt. Daher ist es wichtig, RDMA als Technologie zu erkennen, bevor man RoCE versteht.

Was ist RDMA?

RDMA (Remote Direct Memory Access) kann Daten von einem Server zu einem anderen oder von Speicher zu Server übertragen, und das bei minimaler CPU-Belegung. Um Daten zu senden, müssen herkömmliche Anwendungen das Betriebssystem durchlaufen, um TCP/IP zu packen, dann den Hauptcache, den NIC-Cache, durchlaufen und schließlich gesendet werden. Dies führt zu zwei Einschränkungen.

Einschränkung 1: Die TCP/IP-Stack-Verarbeitung führt zu einer Latenz von mehreren zehn Mikrosekunden. Wenn der TCP-Protokollstapel Nachrichten empfängt und sendet, muss der Kernel mehrere Kontextwechsel durchführen, die jeweils 5–10 Mikrosekunden dauern. Außerdem hängen mindestens drei Datenkopien und Protokollarbeiten von der CPU ab. Dies bedeutet, dass allein die Protokollverarbeitung eine feste Verzögerung von mehreren zehn Mikrosekunden mit sich bringt. Die Verzögerung des Protokollstapels wird zum offensichtlichsten Engpass.

Einschränkung 2: Die Verarbeitung mit dem TCP-Protokollstack führt zu einer hohen Belastung der Server-CPU. Zusätzlich zum Problem einer längeren festen Verzögerung erfordert das TCP/IP-Netzwerk, dass die Host-CPU mehrmals an der Speicherkopie des Protokolls teilnimmt. Je größer das Netzwerk und je höher die Netzwerkbandbreite, desto größer ist die Planungslast für die CPU beim Senden und Empfangen von Daten, was zu einer kontinuierlich hohen CPU-Last führt.

Wenn in Rechenzentren herkömmliches TCP/IP für die Netzwerkverbindung zwischen sehr großen verteilten Rechenspeicherressourcen verwendet wird, verbraucht es einen großen Teil der Rechenressourcen des Systems, was zu E/A-Engpässen führt und die Anforderungen des höheren Netzwerks nicht erfüllt Durchsatz und geringere Latenz.

Vom traditionellen Modus zum RDMA-Modus

RDMA ist eine Netzwerkverbindungstechnologie, die offBietet hohe Bandbreite, geringe Latenz und geringen CPU-Verbrauch. Diese Technologie überwindet viele der Hindernisse, die üblicherweise mit herkömmlichen TCP/IP-Netzwerken verbunden sind.

Remote: Bezieht sich auf die Datenübertragung zwischen zwei Knoten in einem Netzwerk.

Direkt: Es ist keine Kernel-Beteiligung erforderlich. Die gesamte Übertragungsverarbeitung erfolgt offauf die NIC-Hardware (Network Interface Card) geladen.

Memory: Die Daten werden direkt zwischen dem virtuellen Speicher der Anwendungen auf beiden Knoten übertragen, ohne dass zusätzliches Kopieren und Zwischenspeichern erforderlich ist.

Access: Die Zugriffsvorgänge umfassen Senden/Empfangen, Lesen/Schreiben usw.

Im Vergleich zu TCP/IP, RDMA reduziert den Verbrauch von Rechenressourcen und erhöht die Datenübertragungsgeschwindigkeit.

Der Kernel-Bypass-Mechanismus von RDMA ermöglicht das direkte Lesen/Schreiben von Daten zwischen der Anwendung und der Netzwerkkarte und reduziert so die Datenübertragungslatenz innerhalb des Servers auf nahezu 1 Mikrosekunde. Darüber hinaus ermöglicht der Zero-Copy-Mechanismus von RDMA dem Empfänger, Daten direkt aus dem Speicher des Senders zu lesen, wodurch die Belastung der CPU erheblich reduziert und die CPU-Auslastung verbessert wird.

Zu den Vorteilen der Verwendung von RDMA gehören:

  • Zero Copy: RDMA-Anwendungen können den Kernel-Netzwerkstapel umgehen und Daten direkt übertragen, wodurch die Notwendigkeit entfällt, Daten aus dem Benutzerspeicher der Anwendung in den Kernel-Netzwerkstapelspeicher zu kopieren.
  • Kernel-Bypass: RDMA-Anwendungen können die Datenübertragung direkt aus dem Benutzermodus initiieren, sodass kein Kontextwechsel zwischen Kernel-Modus und Benutzermodus erforderlich ist.
  • CPU offLaden: RDMA kann direkt auf den Speicher eines Remote-Hosts zugreifen, ohne CPU-Ressourcen auf dem Remote-Host zu verbrauchen. Die CPU des Remote-Hosts kann sich dann auf ihre Vorrechte konzentrieren, Cache-Störungen vermeiden und einen großen Datenüberlauf beim Speicherzugriff verhindern.

Was ist RoCE?

Ab 2010 erregte RDMA immer mehr Aufmerksamkeit, als die IBTA die erste Spezifikation für die Ausführung von RDMA über Converged Ethernet (RoCE) veröffentlichte. Allerdings beschränkte die ursprüngliche Spezifikation die Bereitstellung von RoCE auf eine einzelne Layer-2-Domäne, da RoCE-gekapselte Frames über keine Routing-Funktionen verfügten. Im Jahr 2014 veröffentlichte die IBTA RoCEv2, mit dem die ursprüngliche RoCE-Spezifikation aktualisiert wurde, um Routing über Layer-3-Netzwerke zu unterstützen, wodurch sie besser für große Rechenzentrumsnetzwerke und Unternehmensrechenzentren geeignet ist.

RoCE

Zu den RDMA-Protokollen gehören Infiniband (IB), Internet Wide Area RDMA Protocol (iWARP) und RDMA over Converged Ethernet (RoCE):

  • InfiniBand: Bei der Entwicklung im Hinblick auf RDMA wurden die physische Verbindungsschicht, die Netzwerkschicht und die Transportschicht neu gestaltet, um eine zuverlässige Übertragung auf Hardwareebene sicherzustellen und eine höhere Bandbreite und geringere Latenz bereitzustellen. Es ist jedoch teuer und erfordert IB-Netzwerkkarten und -Switches.
  • iWARP: Auf TCP basierendes RDMA-Netzwerk, das TCP verwendet, um eine zuverlässige Übertragung zu erreichen. Im Vergleich zu RoCE verbraucht die große Anzahl von TCP-Verbindungen von iWARP bei groß angelegten Netzwerken viele Speicherressourcen und erfordert höhere Systemspezifikationen. Es können normale Ethernet-Switches verwendet werden, es sind jedoch Netzwerkkarten erforderlich, die iWARP unterstützen.
  • RoCE: RDMA basiert auf Ethernet, die RoCEv1-Version basiert auf der Netzwerkverbindungsschicht, kann Netzwerksegmente nicht überqueren und hat grundsätzlich keine Anwendung. RoCEv2 basiert auf UDP, kann Netzwerksegmente überqueren, ist gut skalierbar und kann eine gute Durchsatz- und Latenzleistung erzielen, sodass es sich um eine Lösung handelt, die in großem Maßstab eingesetzt wird. RoCE verbraucht weniger Ressourcen als iWARP und unterstützt mehr Funktionen als iWARP. Es können normale Ethernet-Switches verwendet werden, es sind jedoch Netzwerkkarten erforderlich, die RoCE unterstützen.
RDMA-Anwendung

Warum ist RoCE das Mainstream-RDMA-Protokoll?

Lassen Sie uns zunächst über iWARP sprechen. Der iWARP-Protokollstapel ist komplexer als die beiden anderen und kann aufgrund der Einschränkungen von TCP nur eine zuverlässige Übertragung unterstützen. Daher ist die Entwicklung von iWARP nicht so gut wie die von RoCE und Infiniband.

Das Infiniband-Protokoll selbst definiert einen neuen Satz hierarchischer Architektur, von der Verbindungsschicht bis zur Transportschicht, die mit vorhandenen Ethernet-Geräten nicht kompatibel ist. Wenn beispielsweise ein Rechenzentrum von Ethernet auf umsteigen möchte Unendlich Aufgrund von Leistungsengpässen muss ein vollständiger Satz Infiniband-Geräte, einschließlich Netzwerkkarten, Kabel, Switches, Router usw., erworben werden, was zu kostspielig ist.

Der Vorteil des RoCE-Protokolls liegt hier ganz klar auf der Hand. Benutzer müssen lediglich Netzwerkkarten kaufen, die RoCE unterstützen, um von Ethernet zu RoCE zu wechseln, und andere Netzwerkgeräte sind kompatibel. Der Hauptvorteil von RoCE gegenüber Infiniband sind daher die geringeren Kosten.

Der Vorteil des RoCE-Protokolls

RoCEv1

Im April 2010 veröffentlichte IBTA RoCE, das als Ergänzung zur Infiniband-Architekturspezifikation veröffentlicht wurde und daher auch IBoE (InfiniBand over Ethernet) genannt wird. Zu diesem Zeitpunkt verwendete der RoCE-Standard die IB-Netzwerkschicht anstelle der TCP/IP-Netzwerkschicht über der Ethernet-Verbindungsschicht und unterstützte daher die IP-Routing-Funktion nicht. Das RoCE V1-Protokoll hat auf der Ethernet-Ebene die Typ-ID 0x8915.

In RoCE wird der Header des Infiniband-Link-Layer-Protokolls entfernt und die GUID zur Angabe der Adresse wird in Ethernet-MAC konvertiert. Infiniband basiert auf einer verlustfreien physischen Übertragung, und RoCE basiert auch auf einer verlustfreien Ethernet-Übertragung, was Kosten und Verwaltungsaufwand für die Bereitstellung von Ethernet mit sich bringt.

Die verlustfreie Übertragung von Ethernet muss auf L2-QoS-Unterstützung wie PFC (Priority Flow Control) angewiesen sein. Wenn der Pufferpool den Schwellenwert überschreitet, sendet der Empfänger einen Pausenrahmen an den Sender. Nach dem Empfang des Pause-Frames reduziert die MAC-Schicht des Absenders automatisch die Übertragungsrate. Diese Anforderung bedeutet, dass alle Knoten auf der gesamten Übertragungsstrecke, einschließlich Ende, Switch und Router, L2-QoS unterstützen müssen, da sonst die PFC auf der Strecke an beiden Enden keine wirksame Rolle spielen kann.

RoCEv2

Da der Datenrahmen von RoCEv1 keinen IP-Header hat, kann er nur innerhalb des L2-Subnetzes kommunizieren. Um dieses Problem zu lösen, schlug IBTA 2 RoCE V2014 vor, das RoCEv1 erweiterte und den GRH (Global Routing Header) durch UDP-Header + IP-Header ersetzte. Die erweiterte Rahmenstruktur ist in der folgenden Abbildung dargestellt. Für RoCE v1 und RoCE v2 sind die folgenden zwei Punkte erwähnenswert:

  • RoCE v1 (Schicht 2) arbeitet auf der Ethernet-Verbindungsschicht (Schicht 2), also Ethertyp 0x8915, daher beträgt die normale Frame-Größe 1500 Bytes und der Jumbo-Frame 9000 Bytes.
  • RoCE v2 (Layer 3) arbeitet auf UDP/IPv4 oder UDP/IPv6 (Layer 3) und nutzt UDP-Port 4791 für die Übertragung. Da das RoCE v2-Paket auf Layer 3 geroutet werden kann, wird es manchmal als Routing RoCE oder einfach RRoCE bezeichnet.
RoCE v1 (Layer 2) arbeitet auf dem Ethernet Link Layer (Layer 2)

Da RDMA ein paketverlustfreies Netzwerk erfordert, um drastische Leistungseinbußen zu vermeiden, muss die RoCE-Technologie das herkömmliche Ethernet-Netzwerk mithilfe der PFC-, ECN- und DCQCN-Technologien in ein verlustfreies Ethernet-Netzwerk umwandeln, um sicherzustellen, dass kein Paketverlust auftritt.

Das verlustfreie Netzwerk für roce

PFC: Prioritätsbasierte Flusskontrolle. PFC bietet eine prioritätsbasierte Flusskontrolle pro Hop für verschiedene Arten von Datenverkehr.

Beim Weiterleiten von Paketen weist das Gerät Pakete zur Planung und Weiterleitung Warteschlangen zu, indem es die Priorität der Pakete in der Prioritätszuordnungstabelle nachschlägt. Wenn die Senderate von 802.1p-Prioritätspaketen die Empfangsrate überschreitet und der Datenpufferplatz beim Empfänger nicht ausreicht, sendet der Empfänger einen PFC-Pause-Frame an den Sender. Wenn der Absender den PFC-Pause-Frame empfängt, stoppt der Absender das Senden von Paketen mit der angegebenen 802.1p-Priorität, bis der Absender einen PFC-XON-Frame empfängt oder der Alterungstimer abläuft. Bei der Konfiguration von PFC hat die Überlastung eines bestimmten Pakettyps keinen Einfluss auf die normale Weiterleitung anderer Pakettypen.

ECN: Explizite Überlastungsbenachrichtigung. ECN definiert einen Mechanismus zur Verkehrskontrolle und End-to-End-Überlastungsbenachrichtigung basierend auf der IP-Schicht und der Transportschicht. Wenn das Gerät überlastet ist, markiert ECN das ECN-Feld im IP-Header des Pakets. Der Empfänger sendet ein Congestion Notification Packet (CNP), um den Absender zu benachrichtigen, die Sendegeschwindigkeit zu verlangsamen. ECN implementiert ein durchgängiges Überlastungsmanagement und reduziert so die Ausbreitung und Verschlimmerung von Überlastungen.

PFC ECN

DCQCN (Data Center Quantized Congestion Notification): Derzeit der am weitesten verbreitete Algorithmus zur Überlastungskontrolle in RoCEv2-Netzwerken. Es vereint QCN- und DCTCP-Algorithmen und erfordert Rechenzentrums-Switches zur Unterstützung von WRED und ECN. DCQCN kann eine bessere Fairness bieten, eine hohe Bandbreitennutzungsrate erreichen, eine niedrige Warteschlangenpufferbelegungsrate und weniger Warteschlangenpuffer-Jitter sicherstellen.

Derzeit verfügen viele Hersteller über eigene verlustfreie Netzwerklösungen.

Huawei

Die intelligente verlustfreie Algorithmuslösung iLossless von Huawei ist ein KI-Algorithmus, der künstliche Intelligenz nutzt, um eine Netzwerküberlastungsplanung und Netzwerkselbstoptimierung zu erreichen. Der Schwerpunkt liegt auf automatischem ECN und führt Deep Reinforcement Learning (DRL) in Ultrahochgeschwindigkeits-Rechenzentrums-Switches ein. Basierend auf dem intelligenten verlustfreien Algorithmus iLossless hat Huawei die superkonvergente Netzwerklösung für Rechenzentren CloudFabric 3.0 veröffentlicht und damit das intelligente verlustfreie Zeitalter in 1.0 überführt.

Im Jahr 2022 schlug das hyperkonvergente Rechenzentrumsnetzwerk von Huawei eine intelligente, verlustfreie Webberechnungsintegrationstechnologie und eine innovative Direktverbindungstopologiearchitektur vor, mit der ein 270 großes Rechenzentrumsnetzwerk realisiert werden kann. Basierend auf Intelligent Lossless 25 kann die Verzögerung um weitere 1.0 % reduziert werden.

Huawei Intelligent Lossless 2.0 basiert auf netzwerkinternem Computing und topologiebewusstem Computing, um Netzwerk- und Computing-Synergien zu erzielen. Das Netzwerk beteiligt sich an der Sammlung und Synchronisierung von Computerinformationen und reduziert so die Häufigkeit der Synchronisierung von Computerinformationen. Gleichzeitig wird die Erledigung von Rechenaufgaben in der Nähe der Rechenknoten durch Planung, Reduzierung von Kommunikationssprüngen und weitere Reduzierung der Anwendungslatenz sichergestellt.

H3C

Der intelligente verlustfreie AI-ECN-Algorithmus von H3C, der sich auf das Netzwerkverkehrsmodell (Incast-Werte, maximale Warteschlangentiefe, Anteil großer und kleiner Datenströme sowie andere Verkehrsmerkmale im N-zu-1-Modell) stützt, nutzt Reinforcement-Learning-Algorithmen zum Trainieren KI mit dem Verkehrsmodell. Die KI kann Netzwerkverkehrstrends in Echtzeit erkennen und vorhersagen und automatisch den optimalen ECN-Schwellenwert für eine präzise Warteschlangenplanung anpassen. Dadurch wird die Übertragung latenzempfindlicher kleiner Datenströme und durchsatzempfindlicher größerer Datenströme ausgeglichen, um eine optimale Netzwerkleistung sicherzustellen und gleichzeitig die Auslösung einer Netzwerk-PFC-Überlastungskontrolle zu vermeiden.

Die verlustfreie Netzwerklösung AD-DC SeerFabric von H3C basiert auf einer Edge-Cloud-KI-Kollaborationsarchitektur. Durch die Innovation und Optimierung des AI-ECN-Tuning-Algorithmus der Branche und die Kombination der lokalen AI-Inside-Fähigkeit des Rechenzentrums-Switches von H3C steigert diese Lösung den Durchsatz, verringert die Latenz und sorgt gleichzeitig dafür, dass kein Paketverlust auftritt. Es gewährleistet eine präzise Netzwerkdienstqualität und -weiterleitung. Darüber hinaus visualisiert es durch feinkörnige intelligente Betriebs- und Wartungsfunktionen das Serviceerlebnis von RoCE-Netzwerken.

Inspur

Im April 2022 brachte Inspur Networks seine typische verlustfreie Ethernet-Lösung auf den Markt, die sich auf Ethernet-Switches für Rechenzentren konzentriert, die die RoCE-Technologie unterstützen. Die Lösung offbietet folgende Vorteile:

1. Nahtlose Integration von Computer, Speicher, Netzwerk und AIStation. Es unterstützt Überlastungsmanagementtechnologien wie PFC und ECN und ermöglicht so den Aufbau durchgängiger, verlustfreier RDMA-Netzwerke mit geringer Latenz. Der hervorragende Puffervorteil des Switches kann Burst-Verkehr reibungslos absorbieren und TCP in Cast-Szenarien effektiv bewältigen.

2. Proaktive Fehlererkennung und automatisches Failover. RoCE-SAN-Netzwerke können zur schnellen Fehlererkennung mit Speicherbetrieben zusammenarbeiten. Der Switch kann Fehlerzustände schnell erkennen und Server benachrichtigen, die Benachrichtigungsnachrichten innerhalb der relevanten Geschäftsdomäne abonnieren, was einen schnellen Wechsel zu redundanten Pfaden ermöglicht und geschäftliche Auswirkungen reduziert. Für große, verlustfreie Ethernet-Umgebungen mit PFC-Deadlock-Problemen bietet die Lösung einen PFC-Deadlock-Verhinderungsmechanismus auf Chipebene zur automatischen Deadlock-Erkennung und -Behebung.

3. Plug-and-Play-Speicher. RoCE-SAN-Netzwerke können die Einbindung von Geräteservern und Speichergeräten automatisch erkennen und die Server benachrichtigen, automatisch Verbindungen mit den Speichergeräten herzustellen.

Hinterlasse einen Kommentar

Nach oben scrollen