光纤通道网络FC vs 以太网光纤通道FCoE

作        者:  @NGDCN

原文链接:光纤通道网络FC vs 以太网光纤通道FCoE - NGDCN

版        权: 本文由 @NGDCN 于2022-11-11原创发布在 NGDCN,未经许可,禁止转载。

FC/光纤通道网络

FC,Fiber Channel,是一套完整的协议栈,有着自己的物理层规范FC-0和FC-1。向上的FC-2P负责帧封装,并通过Buffer-to-Buffer Credit这种可靠传输机制来实现链路层面上的无丢包,功能上类似于TCP滑动窗口。存储节点通过HBA网卡支持FC,其中的FC端口被称为VN_port,每个VN_port都有一个24位的FC-3层地址FCID。FC中不需要进行链路层寻址,通信节点将以FCID作为源/目的地址,FC Switch间交互FSPF(Fibre Channel Shortest Path First,光纤通道最短路径优先)形成转发表,根据目的FCID进行寻址,所以说FC Switch在本质上是一台路由设备。FC-2M夹在FC-2P和FC-3两层之间,负责多个FCID地址的复用。

每个FC结点都有64位的WWN(Wold Wide Name),结点上的每个端口都有64位的WWPN(World Wide Port Name),对FC网络中的元素进行全球唯一的标识,相当于以太网中的MAC地址,只不过FC Switch并不用它来进行寻址。FC结点使用周知的FCID地址FFFFFE向Login Sever发送 FLOGI(Fabric Login,交换网登录)消息以自动获取FCID,这一过程类似于IP中的DHCP。FC获得FCID后要向地址为FFFFFC的Name Server发送PLOGI(Port Login,端口登录)消息,Name Server记录下WWN/WWPN和FCID的映射关系后回复确认消息。此时通信还不能直接开始,类似于TCP握手,源FC还需要通过PLOGI消息与对端进行FC-4层的协商,协商过后应用层才能开始进行通信。FC中也有类似于IP中DNS的名字解析机制,结点/端口命名可以使用基于字符串的Symbolic Port Name,Name Server中会记录Symbolic Port Name与FCID的映射关系,其他端口可以向Name Server查询已登录的端口信息。上述交互过程如下图所示。

可见,FC的通信过程与IP还是有着很多类似的机制的,最主要的区别是FC只使用FCID进行寻址,结点/端口标识WWN/WWPN并不出现在通信的数据帧中,这里的原因也很简单——64位的WWN/WWPN太长了,会影响FC的转发效率。

FCoE/以太网光纤通道

数据中心服务器既要通过LAN网络提供IP业务的服务,又要通过SAN网络实现存储设备的访问。传统的网络架构中,服务器分别安装独立的以太网卡和FC网卡,以太网卡通过以太网交换机接入IP网络,FC网卡通过FC交换机接入存储网络。由于分别搭建两个网络,使用两套接入网卡,以及相应的线缆,设备投资及维护管理成本非常高。

这里,FC报文通过承载SCSI协议实现存储流量的转发及控制, FC报文中包含源FCID、目的FCID字段, FC交换机负责分配该地址(类似DHCP)并根据此字段进行路由转发(类似以太的源IP、目的IP字段及三层转发)。而FCoE技术的目标是整合以太网和FC存储网络,减少数据中心的网卡,交换设备以及线缆的使用数量,降低成本。

图:FCoE实现I/O整合示意图

FCoE,Fibre Channel over Ethernet的缩写。FCoE是一个由思科公司开发的技术,采用增强型以太网作为物理网络传输架构,能够提供标准的光纤通道有效内容载荷。简单来讲,FCoE是将FC报文封装为以太格式进行传输和处理的方法, 达到FC网络和以太网络融合的目的。以太网光纤通道 (FCoE) 将光纤通道存储数据压缩到以太网 LAN,消除了数据中心中单独存储网络的管理和成本负担。

FC组网需要服务器和存储上有HBA网卡(该网卡实现FC协议栈), 交换机上有FC端口;

FCoE组网需要服务器和存储上有CNA网卡(该网卡有两个协议栈,分别是以太和FC), 交换机上有支持FCoE功能的以太端口。

将FC整合到以太网中,做法是使用Ethernet的帧头去代替FC-2,保留上层的FC-3和FC-4,FCoE

数据封装如下所示。这里提一句,FCoE将服务器的FC结点称为ENode,FCoE交换机称为FCF。

FCF发送报文时,封装报文源MAC地址为本交换机FCF MAC,目的MAC地址为ENode FPMA地址或对端FCF MAC;ENode发送报文时,封装报文源MAC地址为自己的FPMA地址,目的MAC地址为对端FCF MAC。Priority为FCoE报文优先级,默认为3,可配置。VLAN ID标识当前承载FCoE流量的VLAN

FCoE网络中,服务器通过一块CNA网卡同时支撑IP和FC-3两套协议,相当于HBA和Ethernet NIC的合体。FCoE的以太网类型是0x8906,其外层MAC地址的写法比较讲究,后续通过具体的通信流程进行介绍。

外层的VLAN对于FCoE来说同样非常关键,其原因主要有二:

◼ 首先,FCoE流量必须在无损无丢包的以太网链路上进行传输,这完全依赖于PFC和ETS机制,而这两种机制都需要根据VLAN标签来对流量进行分类,因此FCoE流量必须承载在特定的VLAN中;

◼ 其次,FCF要实现存储网络内部的虚拟化,需要使用不同的VLAN来承载不同VSAN(Virtual Storage Area Network)的流量。那么外层以太网封装时具体该使用哪个VLAN呢?这就要看FCoE的控制平面了。

FCoE使用FIP(FCoE Initialization Protocol)作为控制平面协议,其以太网类型为0x8914。FIP主要负责以下三个工作:

◼ VLAN发现。FIP在Native VLAN中通过VLAN发现报文与邻居协商后续FIP信令和FCoE流量所使用的VLAN,其缺省值为1002。

◼ FCF发现。FCF在所有FCoE VLAN内定期组播发现通告报文,使得当前VLAN内的所有的ENode发现自己。

◼ FLOGI/PLOGI。与FC中相应过程一样,FCF作为Login Server为ENode分配FCID,同时作为Name Server记录ENode的登录信息。

经过上述三个阶段后,FCoE网络的初始化工作就完成了,FCoE流量得以无损地在以太网中传输。下面来看一个多跳FCoE网络中典型的报文转发流程。

支持FC和FCoE协议的交换机,称为FCF(FCoE Forwarder,FCoE交换机)。

由于FCF本质上是一台路由设备,因此FCoE报文经过FCF转发时FCID不变,而外层的MAC地址会逐跳地改写。我们知道IP和MAC是通过ARP协议联系在一起的,那么FCID和MAC该如何映射呢?FCoE为ENode规定了如下的映射方法:使用FC-MAP填充MAC地址的高24位,低24位填充为FCID,得到FPMA作为自己的以太网地址,而弃用CAN网卡出厂时的MAC地址。其中FC-MAP为FIP的FCF发现阶段中,FCF告诉ENode的信息,每个VSAN内部的ENode都使用相同的FC-MAP,不同的VSAN使用不同的FC-MAP。而对于FCF来说,不进行这种转换,直接使用本机MAC地址FCF-MAC进行外层以太网封装。同一个VSAN内的报文都在同一个VLAN内传输,FCF进行per VLAN的MAC地址学习,保证了VSAN间的隔离,不同VLAN的优先级不同,通过PFC和ETS进行差异化的传输控制。

使用 FCoE 后的好处

1、 每个服务器只需要一个专用适配器(网卡),一套布线(以太网)系统(以前需要多个网卡,多套布线(以太网和光纤)系统);

2、 机房不再要支持更多设备:空间、耗电、制冷,更加节能绿色

3、 只有一套网络,统一管理维护简单(原来是多套网络无法统一管理,不同的维护人员维护困难)

4、 部署/配置/管理/运维简单 .

FCoE的局限性

虽然FCoE能够提供高速光纤通道流量和统一的I/O架构,但FCoE的采用比预计的要缓慢。

FCoE确实可以通过调整现有的FC系统降低成本,但它也具有FC的局限性:需使用专门的设备和技术,管理起来更加复杂。FCoE不使用IP报文头,从而减少了协议处理开销,但协议分析结果却表明,启用巨帧时,FCoE和iSCSI之间效率是非常接近的。其在部署上还要求对数据中心桥接(Data Center Bridging,简称DCB)以太网进行改进。

业界分析,技术仍不成熟、厂商特性或功能的不一致导致互操作性问题、标准仍不明确、8Gb和16Gb光纤通道与千兆以太网和万兆以太网相比,已不再具备明显的性能优势、成本优势仅在特定环境通过减少重复建设体现出来等原因,导致FCoE的采用没有实现当初的预期。

参考资料

1、服务器和存储如何互联 iSCSI和FCoE - 知乎

2、新三网融合——计算存储与网络 | SDNLAB | 专注网络创新技术

3、FCoE的基本原理和优势 - KingsLanding - 博客园

4、FCoE与FC有的区别- 华为
5、FCoE技术白皮书-新华三集团-H3C

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值