Bases du protocole FC : couches, ports, logins, zoning
Fibre Channel ressemble à Ethernet au niveau du SFP — mêmes cages, optiques similaires — et ne lui ressemble en rien au-dessus. C’est un transport sans perte, orienté connexion, conçu pour le stockage : chaque trame est censée arriver, dans l’ordre, et la fabric connaît chaque équipement par un nom gravé en usine. Cette page couvre les couches du protocole, les types de ports, l’adressage, la séquence de login et le zoning — le vocabulaire nécessaire pour lire un commutateur SAN et comprendre pourquoi ses optiques sont contrôlées si strictement.
Couches
| Couche | Nom | Contenu | Pertinence pour les optiques |
|---|---|---|---|
| FC-0 | physique | supports, connecteurs, émetteurs, récepteurs, débits | le SFP : Optiques FC, débits |
| FC-1 | transmission | encodage 8B/10B jusqu’à 8GFC, 64B/66B à partir de 16GFC ; ensembles ordonnés ; FEC à 16GFC (optionnel) et 32GFC+ (obligatoire) | octet d’encodage, compteurs FEC |
| FC-2 | trames et contrôle de flux | trames (charge utile jusqu’à 2112 octets), séquences, échanges, classes de service, crédits buffer-to-buffer | les crédits déterminent la distance — Conception de SAN |
| FC-3 | services communs | multicast, hunt groups (rarement utilisés) | — |
| FC-4 | mappage de protocole | SCSI (FCP), NVMe (FC-NVMe), FICON, IP over FC | NVMe over fabrics |
Types de ports
| Port | Rôle |
|---|---|
| N_Port | port de nœud — un HBA ou un port de baie de stockage |
| F_Port | port fabric sur un commutateur, connecté à un N_Port |
| E_Port | port d’extension — liaison inter-commutateurs (ISL) entre commutateurs |
| NL_Port / FL_Port | variantes en boucle arbitrée (historique) |
| G_Port / U_Port | générique/universel — un port de commutateur qui devient F ou E quand il apprend ce qui y est connecté |
| TE_Port / EX_Port | E_Port en trunking (trunk VSAN Cisco) / port de routeur entre fabrics |
| D_Port | port de diagnostic — exécute des tests de bouclage optique et électrique sur une liaison (Brocade) |
Noms et adresses
| Identifiant | Taille | Signification |
|---|---|---|
| WWNN — World Wide Node Name | 64 bits | l’équipement (HBA, contrôleur de baie) |
| WWPN — World Wide Port Name | 64 bits | chaque port ; l’identité utilisée pour le zoning et le masking |
| FCID (N_Port ID) | 24 bits | adresse assignée par la fabric : Domain (commutateur) / Area / Port ; change si l’équipement se déplace |
| Adresses bien connues | FFFFFC name server, FFFFFD fabric controller, FFFFFE fabric login server, FFFFFA management server | services de fabric |
Les WWN sont gravés dans les HBA et les ports de baie ; ils ne changent pas avec le câblage — c’est pourquoi le zoning par WWPN survit à un recâblage, contrairement au zoning par port.
Séquence de login
- Initialisation de la liaison — négociation du débit (chaque côté essaie ses débits du plus élevé au plus bas ; une incompatibilité ou une optique marginale se voit ici), puis des séquences primitives jusqu’à ce que les deux extrémités soient synchronisées.
- FLOGI (login fabric) — le N_Port demande un FCID au commutateur et négocie les crédits de tampon, la classe de service et la taille des trames.
- PLOGI (login de port) — N_Port à N_Port (ou vers le name server) pour établir une session.
- PRLI (login de processus) — négocie le protocole FC-4 (SCSI ou NVMe) et ses paramètres.
- Enregistrement et interrogation du name server — l’équipement enregistre son WWPN/FCID et découvre quelles cibles zonées existent ; les notifications RSCN annoncent les changements ultérieurs.
Un port bloqué avant FLOGI indique un problème de couche physique (optique, câble, débit) ; bloqué après FLOGI, c’est un problème de fabric/zoning (Diagnostic des ports).
Classes de service et contrôle de flux
| Classe | Comportement | Usage |
|---|---|---|
| Classe 1 | connexion dédiée | obsolète |
| Classe 2 | acquittée, sans connexion | rare |
| Classe 3 | datagramme sans connexion, non acquitté — mais jamais abandonné par la fabric grâce aux crédits | pratiquement tout le trafic de stockage |
| Classe F | contrôle commutateur à commutateur | services de fabric |
Crédits buffer-to-buffer (BB_Credit) : le récepteur accorde un nombre de tampons de trame ; l’émetteur ne peut transmettre que ce nombre de trames avant de recevoir des accusés R_RDY. Rien n’est abandonné ; quand les crédits s’épuisent, l’émetteur attend — le mécanisme derrière le comportement sans perte, les limites de distance et la congestion slow-drain (Conception de SAN).
Zoning et masking
- Le zoning sur le commutateur limite quels WWPN peuvent se voir entre eux ; le zoning à initiateur unique (un port HBA avec ses cibles) est la norme. Zonez par WWPN, pas par port.
- Le LUN masking sur la baie limite quels WWPN peuvent accéder à quels volumes.
- Les VSAN (Cisco) / Virtual Fabrics (Brocade) partitionnent un commutateur en fabrics indépendantes ; NPIV permet à un seul N_Port de présenter plusieurs WWPN (machines virtuelles, châssis lames).
- Un problème de zoning ressemble à « aucun équipement » après un bon login — vérifiez le name server et le zone set actif avant de toucher aux optiques.
Négociation de débit et optiques
Les ports FC négocient automatiquement le plus haut débit commun (par exemple 32/16/8GFC). Le SFP doit prendre en charge le débit négocié : un SFP 16G dans un port 32G limite le port à 16G ; un port à débit fixe avec une optique d’une autre génération ne s’établit pas du tout. Les SFP FC sont codés avec des bits de débit et de média FC plutôt que des codes Ethernet (Codes de conformité), et les commutateurs SAN appliquent strictement le contrôle de marque constructeur (Optiques FC).
Dans CodingBox
Pour un SFP FC, l’écran Check transceiver décode les bits de débit, de média et de distance FC (octets 7–10, 62) afin que vous puissiez voir quelles générations un module revendique avant qu’il n’entre dans une fabric qui les négociera.