Lossless Ethernet voor opslag: DCB, PFC, ECN · Opslagsystemen · Technologieën · Documentatie · CodingBox
CodingBox Documentatie

Lossless Ethernet voor opslag: DCB, PFC, ECN

Ethernet verwerpt frames bij congestie; storageprotocollen die voor Fibre Channel of RDMA zijn gebouwd, gaan ervan uit dat er nooit iets verloren gaat. Data Center Bridging (DCB) overbrugt die kloof met flowcontrol per prioriteit en bandbreedtetoewijzing, en RoCE voegt daar congestiesignalering aan toe. Het resultaat is slechts zo verliesloos als de slechtste link: een marginale optic die één frame per miljoen verliest, is een storage-incident. Deze pagina legt de mechanismen uit en vertaalt ze naar eisen voor de physical layer.

De DCB-toolkit

StandaardNaamWat het doet
IEEE 802.1QbbPFC — priority-based flow controlpause frames per verkeersklasse (0–7): een congestie-ontvanger stopt één klasse zonder de poort te stoppen
IEEE 802.1QazETS — enhanced transmission selectiongegarandeerde bandbreedteaandelen per klasse (bijv. 50 % storage, 50 % LAN)
IEEE 802.1QazDCBX — DCB exchangeop LLDP gebaseerde onderhandeling van PFC/ETS-instellingen tussen switch en NIC
IEEE 802.1QauCN — congestion notificationzelden ingezet
RFC 3168 + DCQCNECN-markering + ratecontrolde switch markeert pakketten wanneer wachtrijen oplopen; RoCE-NIC's verlagen de snelheid voordat PFC nodig is

Hoe RoCE verliesloos blijft

  1. Storage/RDMA-verkeer krijgt via DSCP of 802.1p een aparte prioriteit (vaak 3 of 4).
  2. PFC wordt alleen voor die prioriteit ingeschakeld op elke poort langs het pad, met headroom voor de linksnelheid en kabellengte (bytes onderweg).
  3. ECN-drempels markeren pakketten vroeg; NIC's voeren DCQCN uit om hun snelheid te verlagen, zodat PFC alleen als laatste redmiddel optreedt.
  4. ETS garandeert de storageklasse haar bandbreedte onder LAN-belasting.
  5. DCBX houdt NIC- en switchinstellingen consistent; mismatches doorbreken de verliesloosheid stilzwijgend.

FC en InfiniBand bereiken standaard hetzelfde met credits op elke link. Bij Ethernet moet dit worden geconfigureerd, geverifieerd en gemonitord (Basisprincipes van het FC-protocol, InfiniBand-transport).

Wat kan misgaan

ProbleemEffectDetectie
PFC niet ingeschakeld op één hop / verkeerde prioriteitverlies onder belasting; RDMA-hertransmissies; latentiepiekenpause-tellers nul waar dat niet hoort; verliezen in de klasse
PFC-stormeen vastgelopen ontvanger pauzeert upstream onbeperkt; congestie verspreidt zich door de hele fabricoverstroming met pause frames; watchdogtellers
PFC-deadlockcyclische bufferafhankelijkheid in Clos-fabrics; al het verkeer in de klasse stoptdeadlockdetectie / watchdog vereist om te doorbreken
Headroom te klein voor lange kabels/opticaverlies ondanks PFCverlies terwijl pause-tellers actief zijn
ECN-drempels onjuistte vroeg: doorvoerverlies; te laat: PFC-overstromingenECN-markeringstellers, CNP-tellers op NIC's
Fysieke fouten op een link (CRC, FEC uncorrectable)frames verloren die geen flowcontrol kan herstellenpoortfouttellers, FEC-tellers — VDM- & FEC-metrieken

iSCSI zonder DCB

iSCSI draait boven op TCP en overleeft verlies, maar betaalt daarvoor met latentie en hertransmissie. Best practice, ongeacht DCB:

  • aparte VLAN's/subnets per fabric, twee fabrics, MPIO op hosts;
  • jumbo frames (MTU 9000) end-to-end;
  • geen oversubscription tussen initiators en targets; 25G/100G-uplinks gedimensioneerd op de array;
  • FEC ingeschakeld voor elke 25G+-link; CRC-tellers op nul;
  • eventueel PFC op de iSCSI-klasse om microbursts af te vlakken (veel arrays bevelen dit aan).

Eisen voor de physical layer

EisWaaromPraktijk
FEC ingeschakeld en overeenkomend op elke 25G+-linkRoCE verdraagt de ruwe BER van onbeschermde 25G/50G-lanes nietFEC & linktraining
CRC en uncorrectable FEC = 0elk verloren frame blokkeert een wachtrijalarm bij elke toename
Rx-vermogen binnen het venster met margemarginale optica produceert foutenbursts bij temperatuurRx-vermogen & linkbudget
Consistente snelheid/duplex/ANDAC vereist AN + linktraining aan beide uiteindenKoper & DAC
Kabellengte binnen headroomaannamesheadroom wordt berekend uit bytes onderweggebruik bij voorkeur DAC in rack, SR/AOC in rij, DR/LR tussen ruimtes
Identiteit geaccepteerd door NIC en switchafgewezen optica valt terug naar geen link of lagere snelheidFabrikantvergrendeling

Checklist voor monitoring

  • Per poort: verzonden/ontvangen pause frames per prioriteit, ECN-markeringen, verlies per klasse, CRC, FEC corrected/uncorrectable, link flaps.
  • Per NIC: verzonden/ontvangen CNP's, hertransmissies, out-of-sequence, timeouts.
  • Per optic: trends in Rx/Tx-vermogen en temperatuur (Monitoring).
  • Correleer pieken in storage-tail-latency met het bovenstaande: de physical layer is vaker schuldig dan de array.

In CodingBox

Een verliesloze fabric wordt opgebouwd uit gewone optica die simpelweg aan een hogere norm wordt gehouden. Inkomende inspectie op de werkbank — identiteit, checksums, live-DDM tegen typische waarden, baseline opgeslagen — houdt marginale modules uit een fabric waar één slechte link een applicatie zijn latentie-SLA kost (Check transceiver, DDM).

Waar PFC en ECN tussen de andere forwardingmechanismen vallen en hoe fouten in de physical layer daarin zichtbaar worden: Basisprincipes van forwarding.


Vindt u een onjuistheid of fout in dit materiaal? Selecteer het betreffende fragment en druk op Ctrl+Enter om .