简介
FCoE(以太网光纤通道)是由美国国家标准委员会定义的一种融合网络技术。
FCoE是将FC的帧封装到以太网帧中,实现在以太网基础设施上传输光纤通道信号的功能。
产生背景
通常情况下业务前端用的是以太网络提供服务,后端有可能是IP SAN或者是FC SAN。由于前后端的接口有可能不一致,例如以太网的NIC和光纤通道的HBA。数据中心服务器需要为每种专门的网络专门配置一块或多块HBA卡,每种网络需要部署专用的交换机、线缆等其他设备。从维护角度来说并不容易。此外,前后端分离这种方案难以充分利用以太网的扩展性的同时保留光纤通道的高可靠性传输。同时相隔甚远的两个局域网内的存储网络也难以通讯。
组网对比

上图中LAN网中的主机如果现在需要连接FC SAN网络,所需要的步骤是先关机,加FC HBA卡,部署FC交换机。同时还要购买光纤,复杂成本还高。

结果不用多说,显而易见的简单。
LAN和SAN分开部署需要以下材料
以太网卡、以太网线缆、以太网交换机、FC HBA卡、FC线缆、FC交换机
FCoE部署需要
FCoE卡、FCoE交换机、以太网 线缆
高扩展性带来的便利

可以看到FCoE交换机可以为LAN主机提供以太网流量,在存储内部可以提供FC流量,为后端主机还可以提供FCoE流量,简直全能。
扩展性
FCoE技术将FC帧封装到了以太网帧中,这就达到一个目的,有IP的网络,我的存储网络便可达。
可靠性
FC协议不允许丢包,但是以太网是允许的。如果FC协议借用一般的以太网来传输那么肯定会造成丢包的现象。于是乎融合增强型以太网(CEE)就作为了FCoE网络传输的架构。最终实现无丢包
CEE不丢包的秘诀
基于优先级的流量控制(PFC)
我们把CEE传输看作是一个大管道,最外层是以太网数据帧。里面可以存在多个小的管道(虚拟链路)。PFC可以在一条以太网物理链路中创建多个独立的虚拟链路,并且允许暂停和重启其中任何一条虚拟链路。通过对单个虚拟链路上创建无丢包类别的服务以供FCoE使用。
增强传输选择
通过对不同的管道(业务流)设定优先级,保证了热点业务的带宽。同时,也允许低优先级业务使用高优先级业务的闲置带宽,避免资源浪费。
拥塞通告
当网络中某个管道发起拥塞,拥塞点会向数据源发送指示来限制引起拥塞的流量。当拥塞消失时,同样也会给一个信号让数据源取消限制。
FCoE协议栈

以太网帧头包含:源/目的MAC、以太网帧类型和FCoE的VLAN信息
FCoE帧头包含:FCoE版本号、控制信息
FC帧头包含:FC帧源/目的地址,FC的帧内容即是SCSI指令、数据和状态信息单元
通常情况下一个普通以太网帧是1500字节,但是一个典型的FC帧最大约为2112字节。如果这样发送就需要切片发送,到对端在重组,这不仅消耗资源,切片重组有可能造成数据不一致等问题。于是乎FCoE巨型以太网帧诞生。它允许以太网帧最大9KB。不过相对的,如果使用此FCoE帧,要求所有以太网交换机和终端设备都要支持该类型帧的格式。

