Fibre Channel over Ethernet
# Fibre Channel over Ethernet

FCoE (Fibre Channel over Ethernet) est un protocole qui encapsule les trames Fibre Channel, provenant d'un réseau de stockage SAN, sur un réseau Ethernet. La norme FCoE a été publiée en juin 2009.

Les deux intérêts essentiels sont la simplification de l'architecture, et la réduction des coûts (une seule infrastructure d'interconnexion au lieu des deux existantes). Cependant, l'adoption de FCoE nécessite de remplacer des équipements (switches FC et/ou cartes d'accès HBA qui deviennent des CNA (Converged Network Adapter) gérant plusieurs trafics), ou d'ajouter des équipements intermédiaires réalisant la conversion entre l'existant SAN/FC et FCoE. Au même titre que les serveurs, les baies disques sont à considérer également : elles peuvent tout à fait rester en mode SAN, ou se voir ajouter des cartes CNA.

## Principe

Historiquement, le raccordement de serveurs aux baies de stockage mutualisées se faisait soit en Fibre Channel, solution performante mais coûteuse car elle nécessite des switchs et un réseau dédié, soit en iSCSI bien adapté aux petits SANs, mais posant parfois des problèmes de performance. Ce constat a abouti à l'idée de concevoir une nouvelle classe de service Ethernet sans perte de paquets et avec une encapsulation directe pour optimiser le débit.

La définition de FCoE remplace les couches FC-0 et FC-1 de fibre channel (couches physique et encodage/décodage) pour encapsuler la couche FC-2 et suivante dans des trames Ethernet repérées par un EtherType spécifique. Cela permet de transporter sur le même support des trames du protocole IP et des trames FCoE. Conservant tous les autres concepts de FC cette norme veut permettre une intégration facile des concepts et outils existants.

Contrairement à iSCSI qui s'appuie sur TCP/IP, FCoE est défini au niveau de la couche liaison de Ethernet (donc par exemple le protocole FCoE ne peut pas traverser un routeur IP).

Ethernet ne dispose d'aucun mécanisme de contrôle de flux aussi la norme FCoE étend ce premier pour éviter la perte de trames en cas de congestion. L'IEEE travaille sur une évolution plus générale : le projet Data center bridging (en).

Le protocole FC a été modifié sur trois aspects :

* encapsulation des trames FC dans des trames Ethernet ;
* contrôle de flux sur Ethernet pour ne pas perdre de trames en cas de congestion ;
* mécanisme de conversion des adresses WWN de fibre channel en adresse MAC Ethernet.

## Adaptateur réseau

La mise en œuvre de FCoE suppose l'utilisation de nouveaux types d'adaptateurs côté serveur, appelés CNA (Converged Network Adapter), par lesquels transitent à la fois les trames réseau vers le LAN et les données vers le SAN. Ces cartes peuvent laisser le pilote se charger de la construction des trames FCoE ou inclure un processeur qui décharge l'unité centrale de ce travail (comme c'est déjà le cas avec TCP (en)).

## Format de la trame

La trame FC est encapsulée dans une trame Ethernet de façon classique en employant un EtherType spécifique : 0x8906. Les champs SOF (Start Of Frame) et EOF (End Of Frame) sont décrits par le RFC 3643.

