Octet

Compare Fibre Channel, iSCSI and FCoE. What should a network engineer know about storage networking?

Show the answer

Say this first

All three carry SCSI block storage. Fibre Channel is a separate lossless fabric with its own switches, addressing (WWNs and FCIDs), zoning, and buffer-to-buffer credits for flow control. iSCSI runs SCSI over TCP port 3260 on normal Ethernet and IP and relies on TCP for loss recovery. FCoE puts FC frames directly into Ethernet (Ethertype 0x8906) and needs lossless Ethernet through DCB. Newer arrays add NVMe over Fabrics: NVMe/TCP, NVMe over RoCEv2 and NVMe/FC.

Go deeper

Block and file

A SAN gives hosts raw block devices (FC, iSCSI, FCoE, NVMe-oF). A NAS shares files (NFS, SMB).

Fibre Channel essentials

  • WWNN and WWPN identify nodes and ports, like burned-in MACs. The switch assigns a 24-bit FCID at fabric login.
  • Zoning on the switches decides which initiators may talk to which targets. LUN masking on the array decides which volumes a host sees.
  • Credits. A port only transmits when the receiver has advertised buffer space, so FC does not drop for congestion. A slow-drain device instead backs up the fabric.
  • Two fabrics. Fabric A and fabric B are physically separate and never joined. Hosts use multipathing across them. Cisco MDS adds VSANs to split one physical fabric into logical ones.

iSCSI essentials

  • Initiator (host) and target (array), named by IQNs such as iqn.2024-01.com.example:array1.
  • TCP 3260, CHAP for authentication, no encryption by default.
  • Multipathing across two subnets rather than link aggregation.

FCoE and DCB

FCoE needs PFC (802.1Qbb) for a no-drop class, ETS (802.1Qaz) for bandwidth shares and DCBX to negotiate them. FIP (Ethertype 0x8914) handles discovery and login. It saw use at the server edge and has faded.

NVMe over Fabrics

NVMe/TCP (port 4420) runs on ordinary networks. NVMe over RoCEv2 (UDP 4791) needs a lossless class.

Traps

  • Saying iSCSI needs a lossless network. It runs on TCP; it likes low loss but does not need DCB.
How did you do?