Lossless Ethernet für Storage: DCB, PFC, ECN · Speichersysteme · Technologien · Dokumentation · CodingBox
CodingBox Dokumentation

Lossless Ethernet für Storage: DCB, PFC, ECN

Ethernet verwirft Frames bei Überlast; Storage-Protokolle, die für Fibre Channel oder RDMA gebaut sind, gehen davon aus, dass nie etwas verworfen wird. Data Center Bridging (DCB) schließt diese Lücke mit Flusskontrolle pro Priorität und Bandbreitenzuteilung, und RoCE setzt Überlastsignalisierung oben drauf. Das Ergebnis ist nur so verlustfrei wie sein schwächster Link: Eine grenzwertige Optik, die einen von einer Million Frames verwirft, ist ein Storage-Vorfall. Diese Seite erklärt die Mechanismen und übersetzt sie in Anforderungen an die physikalische Schicht.

Der DCB-Werkzeugkasten

StandardNameWas es tut
IEEE 802.1QbbPFC — prioritätsbasierte FlusskontrollePause-Frames je Verkehrsklasse (0–7): Ein überlasteter Empfänger stoppt eine Klasse, ohne den Port zu stoppen
IEEE 802.1QazETS — erweiterte Übertragungsauswahlgarantierte Bandbreitenanteile je Klasse (z. B. 50 % Storage, 50 % LAN)
IEEE 802.1QazDCBX — DCB-AustauschLLDP-basierte Aushandlung der PFC-/ETS-Einstellungen zwischen Switch und NIC
IEEE 802.1QauCN — Überlastmeldungselten im Einsatz
RFC 3168 + DCQCNECN-Markierung + Ratensteuerungder Switch markiert Pakete, wenn sich Warteschlangen aufbauen; RoCE-NICs drosseln den Fluss, bevor PFC nötig wird

Wie RoCE verlustfrei bleibt

  1. Storage-/RDMA-Verkehr wird über DSCP oder 802.1p mit einer eigenen Priorität markiert (häufig 3 oder 4).
  2. PFC ist nur für diese Priorität aktiviert, auf jedem Port entlang des Pfads, mit Puffer-Headroom, der für Link-Geschwindigkeit und Kabellänge bemessen ist (Bytes, die gerade unterwegs sind).
  3. ECN-Schwellwerte markieren Pakete frühzeitig; NICs führen DCQCN aus, um ihre Rate zu senken, sodass PFC nur als letztes Mittel greift.
  4. ETS garantiert der Storage-Klasse ihre Bandbreite auch unter LAN-Last.
  5. DCBX hält NIC- und Switch-Einstellungen konsistent; Fehlanpassungen brechen die Verlustfreiheit lautlos.

FC und InfiniBand erreichen dasselbe standardmäßig mit Credits auf jedem Link; bei Ethernet muss es konfiguriert, überprüft und überwacht werden (FC-Protokollgrundlagen, InfiniBand-Transport).

Was schiefgehen kann

ProblemAuswirkungErkennung
PFC an einem Hop nicht aktiviert / falsche PrioritätDrops unter Last; RDMA überträgt neu; LatenzspitzenPause-Zähler bei null, wo sie es nicht sein sollten; Drops auf der Klasse
PFC-Stormein blockierter Empfänger pausiert Upstream unbegrenzt; die Überlast breitet sich fabricweit ausFlut von Pause-Frames; Watchdog-Zähler
PFC-Deadlockzyklische Pufferabhängigkeit in Clos-Fabrics; aller Verkehr auf der Klasse steht stillerfordert Deadlock-Erkennung/Watchdog zum Auflösen
Headroom zu klein für lange Kabel/OptikDrops trotz PFCDrops bei aktiven Pause-Zählern
ECN-Schwellwerte falsch gesetztzu früh: Durchsatzverlust; zu spät: PFC flutetECN-Markierungszähler, CNP-Zähler auf NICs
Physikalische Fehler auf einem Link (CRC, unkorrigierbare FEC)Frames gehen verloren, die keine Flusskontrolle zurückholen kannPort-Fehlerzähler, FEC-Zähler — VDM- und FEC-Metriken

iSCSI ohne DCB

iSCSI läuft über TCP und übersteht Verluste, zahlt aber mit Latenz und Neuübertragungen dafür. Best Practice unabhängig von DCB:

  • eigene VLANs/Subnetze je Fabric, zwei Fabrics, MPIO auf den Hosts;
  • Jumbo-Frames (MTU 9000) Ende-zu-Ende;
  • keine Überbuchung zwischen Initiatoren und Targets; 25G-/100G-Uplinks passend zum Array dimensioniert;
  • FEC auf jedem 25G+-Link aktiv; CRC-Zähler bei null;
  • optional PFC auf der iSCSI-Klasse, um Mikro-Bursts zu glätten (viele Arrays empfehlen das).

Anforderungen an die physikalische Schicht

AnforderungWarumPraxis
FEC aktiviert und passend auf jedem 25G+-LinkRoCE verträgt die rohe BER ungeschützter 25G-/50G-Lanes nichtFEC & Link-Training
CRC und unkorrigierbare FEC = 0jeder verlorene Frame blockiert eine Warteschlangebei jedem Anstieg alarmieren
Rx-Leistung mit Reserve innerhalb des Fenstersgrenzwertige Optik erzeugt bei Temperaturschwankungen FehlerburstsRx-Leistung & Leistungsbudget
Konsistente Geschwindigkeit/Duplex/ANDAC braucht AN + Link-Training an beiden EndenKupfer & DAC
Kabellänge innerhalb der Headroom-AnnahmenHeadroom wird aus den unterwegs befindlichen Bytes berechnetim Rack DAC bevorzugen, in der Reihe SR/AOC, zwischen Räumen DR/LR
Identität, die NIC und Switch akzeptierenabgelehnte Optik fällt auf keinen Link oder reduzierte Geschwindigkeit zurückHerstellersperre

Checkliste für das Monitoring

  • Je Port: gesendete/empfangene Pause-Frames je Priorität, ECN-Markierungen, Drops je Klasse, CRC, korrigierte/unkorrigierbare FEC, Link-Flaps.
  • Je NIC: gesendete/empfangene CNPs, Neuübertragungen, Out-of-Sequence, Timeouts.
  • Je Optik: Trends von Rx-/Tx-Leistung und Temperatur (Monitoring).
  • Storage-Tail-Latenzspitzen mit dem Obigen korrelieren — die physikalische Schicht ist häufiger schuld als das Array.

In CodingBox

Eine verlustfreie Fabric besteht aus gewöhnlicher Optik, die lediglich an einem höheren Maßstab gemessen wird. Die Eingangsprüfung auf der Werkbank — Identität, Prüfsummen, Live-DDM gegen typische Werte, gespeicherte Baseline — hält grenzwertige Module aus einer Fabric heraus, in der ein schlechter Link eine Anwendung ihre Latenz-SLA kostet (Check transceiver, DDM).

Wo PFC und ECN unter den übrigen Forwarding-Mechanismen stehen und wie sich Fehler der physikalischen Schicht in ihnen zeigen: Forwarding-Grundlagen.


Wenn Sie in diesem Artikel eine Ungenauigkeit oder einen Fehler finden, markieren Sie die betreffende Stelle und drücken Sie Ctrl+Enter, um .