Basisprincipes van het FC-protocol: lagen, poorten, logins, zonering
Fibre Channel lijkt bij de SFP op Ethernet — dezelfde cages, vergelijkbare optiek — maar gedraagt zich daarboven totaal anders. Het is een verliesloos, verbindingsgericht transport voor opslag: elk frame moet op volgorde aankomen en de fabric kent elk apparaat aan een ingebakken naam. Deze pagina behandelt de protocollagen, poorttypen, adressering, loginvolgorde en zonering: de woordenschat die u nodig hebt om een SAN-switch te lezen en te begrijpen waarom de optiek zo strikt wordt gecontroleerd.
Lagen
| Laag | Naam | Inhoud | Relevantie voor optiek |
|---|---|---|---|
| FC-0 | fysiek | media, connectoren, zenders, ontvangers, snelheden | de SFP: FC-optiek, snelheden |
| FC-1 | transmissie | 8B/10B-codering tot 8GFC, 64B/66B vanaf 16GFC; ordered sets; FEC bij 16GFC (optioneel) en 32GFC+ (verplicht) | coderingsbyte, FEC-tellers |
| FC-2 | framing en flowcontrol | frames (payload tot 2112 byte), sequences, exchanges, serviceklassen, buffer-to-buffer credits | credits bepalen afstand — SAN-ontwerp |
| FC-3 | gemeenschappelijke diensten | multicast, hunt groups (zelden gebruikt) | — |
| FC-4 | protocolkoppeling | SCSI (FCP), NVMe (FC-NVMe), FICON, IP over FC | NVMe over fabrics |
Poorttypen
| Poort | Rol |
|---|---|
| N_Port | nodeport — een HBA of poort van een storage-array |
| F_Port | fabricpoort op een switch, verbonden met een N_Port |
| E_Port | expansionpoort — inter-switchlink (ISL) tussen switches |
| NL_Port / FL_Port | varianten voor arbitrated loop (verouderd) |
| G_Port / U_Port | generic/universal — een switchpoort die F of E wordt wanneer zij leert wat is aangesloten |
| TE_Port / EX_Port | trunking E_Port (Cisco VSAN-trunk) / routerpoort tussen fabrics |
| D_Port | diagnostische poort — voert optische en elektrische loopbacktests uit op een link (Brocade) |
Namen en adressen
| Id | Grootte | Betekenis |
|---|---|---|
| WWNN — World Wide Node Name | 64-bit | het apparaat (HBA, arraycontroller) |
| WWPN — World Wide Port Name | 64-bit | elke poort; de identiteit voor zonering en masking |
| FCID (N_Port ID) | 24-bit | door fabric toegewezen adres: Domain (switch) / Area / Port; verandert wanneer het apparaat verhuist |
| Well-known-adressen | FFFFFC nameserver, FFFFFD fabriccontroller, FFFFFE fabric-loginserver, FFFFFA managementserver | fabricdiensten |
WWN’s zijn ingebakken in HBA’s en arraypoorten. Zij veranderen niet wanneer de bekabeling verandert; daarom overleeft zonering op WWPN herbekabeling en zonering op poort niet.
Loginvolgorde
- Linkinitialisatie — snelheidsnegotiatie (elke zijde probeert zijn snelheden van hoog naar laag; een mismatch of een marginale optische module is hier zichtbaar), daarna primitive sequences tot beide uiteinden synchroon zijn.
- FLOGI (fabric login) — de N_Port vraagt de switch om een FCID en onderhandelt over buffercredits, serviceklasse en framegrootte.
- PLOGI (port login) — N_Port naar N_Port (of naar de nameserver) om een sessie op te zetten.
- PRLI (process login) — onderhandelt over het FC-4-protocol (SCSI of NVMe) en de bijbehorende parameters.
- Registratie en query bij de nameserver — het apparaat registreert zijn WWPN/FCID en leert welke gezoneerde targets bestaan; RSCN-meldingen kondigen latere wijzigingen aan.
Een poort die vóór FLOGI blijft hangen, heeft een probleem in de fysieke laag (optiek, kabel, snelheid). Blijft zij na FLOGI hangen, dan is het een fabric-/zoneringsprobleem (Poortdiagnostiek).
Serviceklassen en flowcontrol
| Klasse | Gedrag | Gebruik |
|---|---|---|
| Klasse 1 | specifieke verbinding | verouderd |
| Klasse 2 | bevestigd, verbindingsloos | zeldzaam |
| Klasse 3 | verbindingsloos, onbevestigd datagram — maar door credits nooit door de fabric gedropt | vrijwel al het opslagverkeer |
| Klasse F | switch-naar-switchcontrol | fabricdiensten |
Buffer-to-buffer credits (BB_Credit): de ontvanger verstrekt een aantal framebuffers; de zender mag slechts zoveel frames versturen voordat R_RDY-bevestigingen binnenkomen. Er valt niets weg; wanneer credits op zijn wacht de zender. Dit is het mechanisme achter verliesloos gedrag, afstandslimieten en slow-drain-congestie (SAN-ontwerp).
Zonering en masking
- Zonering op de switch beperkt welke WWPN’s elkaar mogen zien; single-initiator-zonering (één HBA-poort met zijn targets) is de norm. Zoneer op WWPN, niet op poort.
- LUN-masking op de array beperkt welke WWPN’s toegang tot welke volumes hebben.
- VSAN’s (Cisco) / Virtual Fabrics (Brocade) verdelen een switch in onafhankelijke fabrics; NPIV laat één N_Port meerdere WWPN’s presenteren (virtuele machines, bladebehuizingen).
- Zoneringproblemen zien eruit als ‘geen apparaten’ na een geslaagde login. Controleer de nameserver en de actieve zoneset voordat u de optiek aanraakt.
Snelheidsnegotiatie en optiek
FC-poorten onderhandelen automatisch de hoogste gemeenschappelijke snelheid (bijv. 32/16/8GFC). De SFP moet de onderhandelde snelheid ondersteunen: een 16G SFP in een 32G-poort beperkt de poort tot 16G; een poort met vaste snelheid en optiek van een andere generatie maakt helemaal geen link. FC-SFP’s zijn gecodeerd met FC-snelheids- en mediabits in plaats van Ethernet-codes (Conformiteitscodes), en SAN-switches handhaven fabrikantbranding strikt (FC-optiek).
In CodingBox
Voor een FC SFP decodeert het scherm Check transceiver de bits voor FC-snelheid, medium en afstand (bytes 7–10, 62). Zo ziet u welke generaties een module claimt voordat deze in een fabric gaat die daarover onderhandelt.