NVMe over Fabrics: FC-NVMe, NVMe/TCP, NVMe/RoCE en hun optische modules · Opslagsystemen · Technologieën · Documentatie · CodingBox
CodingBox Documentatie

NVMe over Fabrics: FC-NVMe, NVMe/TCP, NVMe/RoCE en hun optische modules

NVMe verving SCSI in de server omdat flash snel genoeg is om de protocoloverhead zichtbaar te maken. NVMe over Fabrics (NVMe-oF) vervoert dezelfde commandoset via een netwerk, zodat gedeelde storage kan bijblijven. Het draait op drie transporten die op drie soorten netwerken zijn toegewezen — en dus op drie soorten optica en drie reeksen regels voor de physical layer. Deze pagina vergelijkt ze en beschrijft wat elk van de links vraagt.

Waarom NVMe-oF

AspectSCSI-tijdperk (FCP, iSCSI)NVMe-oF
Commandowachtrijenéén wachtrij, ~32–256 commando'stot 64k wachtrijen × 64k commando's; parallel van ontwerp
Protocoloverhead per I/Otientallen µs CPU-tijdenkele µs; RDMA-transporten omzeilen de CPU
Door de fabric toegevoegde latentie100–200 µs typisch10–30 µs (RDMA/FC), 30–80 µs (TCP)
Beste voorHDD- en vroege flash-arraysall-flash, gedesaggregeerde storage, GPU-datapijplijnen

De transporten

TransportNetwerkVerliesloos?LatentieOpmerkingen
FC-NVMe (FC-NVMe-2)Fibre Channel 16/32/64GFCja, via creditszeer laagdraait naast SCSI FCP op dezelfde fabric en SFP's; zonering en nameserver ongewijzigd (Basisprincipes van het FC-protocol)
NVMe/RoCE v2Ethernet 25/100/200/400G met RDMA-NIC'svereist PFC/ECN (DCQCN)zeer laagRDMA verbs boven op UDP/IP; vereist end-to-end verliesloze configuratie (Verliesloos Ethernet)
NVMe/TCPelk Ethernet/IPnee — TCP behandelt verlieslaag–gemiddeldgeen speciale NIC's of switchfuncties; routeerbaar; de volumekeuze voor enterprises
NVMe/IBInfiniBandja, via creditszeer laagHPC/AI-storage (InfiniBand)

Alle vier delen de NVMe-oF-architectuur: een discovery controller vertelt hosts welke subsystems bestaan; hosts verbinden wachtrijen met I/O-controllers; ANA (asymmetric namespace access) verzorgt multipath.

Wat elk van de physical layer vraagt

TransportLinkeisOptica
FC-NVMeschone FC-links — CRC/ITW bijna nul, credits niet uitgeputFC-SFP's 16/32/64GFC, gevalideerd door fabrikant (FC-optica)
NVMe/RoCEnul verlies: FEC aan, PFC op de RoCE-klasse, geen CRC-fouten (elk verloren frame blokkeert de RDMA-wachtrij met go-back-N-hertransmissie)25G SFP28 / 100G QSFP28 / 400G; DAC in rack, SR/AOC in rij, LR/DR tussen ruimtes; FEC per PMD
NVMe/TCPgewoon; verlies kost latentie, geen correctheidelke Ethernetoptica
NVMe/IBzoals InfiniBand-fabricsIB-kabels en -optica (IB-bekabeling)

RoCE is het gevoelige transport: een link met marginaal Rx-vermogen of een vuile connector produceert CRC-fouten die TCP stilzwijgend zou opvangen, maar die RDMA-wachtrijen zichtbaar blokkeren. Storage-latentiepieken die een poorts fouttellers volgen, zijn het teken (Rx-vermogen & linkbudget, VDM- & FEC-metrieken).

Kiezen

SituatieLogisch transport
Bestaand FC-SAN, all-flash-arraysFC-NVMe — dezelfde fabric, dezelfde optica, per target inschakelen
Nieuwe Ethernetstorage, gemengde fabrikanten, routing tussen locatiesNVMe/TCP
Latentiekritisch, Ethernet van één fabrikant, verliesloze expertise in eigen huisNVMe/RoCE
HPC/AI-cluster met een IB-fabricNVMe/IB of parallelle bestandssystemen boven op IB
GPU-clusters met Ethernet scale-outNVMe/RoCE of NVMe/TCP op een apart storagenetwerk (GPU-fabrics)

Operationele notities

  • Aparte netwerken voor storage en compute waar mogelijk — of ten minste aparte verkeersklassen; RoCE heeft een eigen verliesloze klasse nodig.
  • MTU: 9000 op Ethernettransporten; consistent end-to-end.
  • Multipath: twee fabrics of twee VLAN's/leaves; ANA-bewuste initiators.
  • Monitoring: CRC/FEC- en pause-tellers per poort, plus DDM-trends — een verslechterende optic toont zich als tail latency lang voordat deze faalt (Monitoring).
  • Firmware: compatibiliteitsmatrices voor NIC/HBA- en arrayfirmware zijn even belangrijk als optische compatibiliteit (Optica in het SAN).

In CodingBox

De optica van een NVMe-oF-fabric bestaat uit gewone FC-, Ethernet- of IB-modules; het verschil is hoe weinig fout het transport verdraagt. Identiteit en baseline-DDM vóór installatie op de werkbank uitlezen (Check transceiver, DDM) en identiteiten coderen die de array- en switchfabrikanten accepteren (Fabrikantvergrendeling) zijn de delen van het werk die de programmer raken.

De adapters waarop deze fabrics draaien — 100G/200G-NIC's, hun cages, PCIe-limieten en modulebeleid: NIC's met optische poorten.


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