详细解析FCoE协议
扫描二维码
随时随地手机看文章
FCoE发展过程中所遇到的第一个挑战是将通过本地光纤通道的Buffer-to-buffer CredITs特性所实现的流控制机制得以延续。虽然以太网交换机没有相对应的缓冲到缓冲机制,但以太网标准可以通过支持MAC控制帧来调节流入的信息量。IEEE 802.3x 流量控制标准是基于暂停帧流量控制技术的。这个技术会使得发送者后面的传输内容延迟一段特定的时间再发送,如果接收设备在这段时间过去之前清除缓冲,那么它会重新发送暂停帧,同时将终止时间归零。这使发送者可以重新传送直至接收到另一个暂停帧。
因为FCoE机制必须支持存储数据的读写,所以所有网络存储路径下的终端设备和以太网交换机必须支持双向IEEE 802.3x流控制。尽管这样的效果可能不如Buffer-to-buffer CredITs机制那么理想,但是IEEE 802.3x暂停帧可以提供对应的功能性,来调节存储流量并防止阻塞和缓冲区溢出引起的丢帧。
IEEE中的IEEE 802.3ar阻塞管理研究小组和IEEE 802.1au阻塞通知研究小组负责以太网阻塞问题的研究工作。特别是对于存储事务来说,这有助于增强流控机制的服务层级质量,使得最关键的任务的数据流在可能发生阻塞的情况下获得最高优先权。
冗余路径和故障切换
光纤通道高可用性的特点主要是得益于其可提供的主机与目标设备之间冗余路径的Flat或CORE/EDGE的拓扑网络。从主路径到辅路径的主机总线适配卡、链路、交换机端口、交换机或存储端口,其中任何一点发生故障就会引发整个网络的故障。在某些情况下,这两条路径都是动态的并且兼备高性能和可用性。光纤通道架构中的光纤最短路径优先协议用来决定光纤交换机间传输的最佳路径,其判断基于交换机的链路带宽与流量负荷。
以太网基础体系必须为FCoE提供相应的耐障碍性来保证存储访问的畅通无阻。当多以太网交换机通过交换机内链路(例如以完全网路拓扑)连接时,IEEE 802.1D快速生成树协议在网络上建立主路径,避免帧的发送形成无止境的环形回路。交换机之间的动态桥接端口处于推进状态,非动态失效切换桥接端口处于阻塞状态。
但由于阻塞的连接不能用于数据的传输,所以网路中的阻塞连接都表示未利用和闲置的资源。快速生成树通过网桥协议数据单元来监控所有桥接端口的情况,如果连接、桥接端口或交换失效的话,快速生成树协议启动必要的失效切换桥接端口,在网络上建立选择路径。
此外,IEEE 802.1s 多生成树协议(Multiple Spanning Tree Protocol,MSTP)和IEEE 802.1Q-2003虚拟LAN(VLAN)技术定义了另外的增强以太网路径切换的机制。与光纤通道的硬分区技术相类似,VLAN 标记可实现多达4096个群集节点组共存于一个公共的以太网基础体系内。
在多业务传输平台上对生成树的增强可以使每个VLAN组中有一个单独的生成树。因此,一个虚拟局域网阻塞模式下的桥接端口可以调节成另一个虚拟局域网的转发模式,并且实现对所有网络互连性更充分的利用。
即使有多业务传输设备的增强,已使用的网络连接仍不可避免地导致了快速生成树协议对转发和阻塞状态的依赖。越来越多复杂的第三层路由协议,例如开放最短路径优先协议(Open Shortest Path First,OSPF),在跳跃计数、带宽、延迟时间和其他测量标准的基础上选择末端节点之间的最佳路径,并且实现多路径上的负载均衡。即时串流传输协议(RSTP)作为第二层协议无法支持这样的附加功能性而保持向后兼容。需要设法找到将负载均衡、多点接入(例如一个节点有接入同一以太网网段的两条动态链路)、多播技术和广播技术引入第二层以太网的方法。
从光纤通道到以太网的映射
FCoE也必须解决以太网和光纤通道各自所传输的帧之间的差异。通常一个以太网的帧最大为1518字节。而一个典型的光纤通道帧最大为大约2112字节。因此在以太网上打包光纤帧时需要进行分段发送,然后在接收方进行重组。这会导致更多的处理开销,阻碍FCoE端到端传输的流畅性。
因此需要一个更大的以太网帧来平衡光纤通道和以太网帧大小上的差异。有一个称为"巨型帧"的实质标准,尽管不是正式的IEEE标准,但它允许以太网帧在长度上达到9k字节。在使用"巨型帧"时需要注意,所有以太网交换机和终端设备必须支持一个公共的"巨型帧"格式。
最大的巨型帧(9K字节)可以实现在一个以太网帧下封装四个光纤通道帧。但是这会使光纤通道连接层恢复以及应用802.3x暂停指令的缓冲流量控制变得更加复杂。如图2所示,FCoE向一个巨型以太网帧内封装一个完整的光纤帧(不使用循环冗余校验)。因为以太网已经提供了帧检验序列(FCS)来检验传输数据的完整性,所以不需要光纤帧的循环冗余校验(CRC)。这进一步降低了传输层所需的处理开销,同时提高通道的性能。由于光纤帧可能包括拓展的、可选择的信头或虚拟光纤标记信息,所以以太网"巨型帧"的大小就不合适,并且会随着封装光纤帧的需要而发生变化。
FCoE帧是使用六字节MAC硬件目的地址和源地址的本地第二层以太网帧。但MAC地址是存储透明的,并且只能用于从源到目的地帧的交换。以FCoE帧中保留了存储事务中需要的光纤通道寻址,所以需要从FCID(Fibre Channel ID)到以太网MAC地址映射的方法。可以选择一个与地址解析协议(ARP)相类似的协议来实现FCID到MAC的地址映射。
例如,在第三层IP环境下,地址解析协议用于从上层IP网络地址到第二层硬件MAC地址映射。此外,光纤通道使用一些较为熟知的地址来获得存储服务(例如通过SNS发现设备机制)。FCoE要求有相应的功能性来完成从熟知的地址到对应MAC地址的映射。
在传统光纤通道中,HBA或存储端口在连接到以太网交换机时会接收FCID。FCoE设备无法确保通用以太网交换机提供专门的存储服务,所以必须依靠可用于FCoE交换机内部的域控制器和存储服务引擎来提供光纤通道登陆、寻址和其它高级服务。未来的数据中心导向器将会在一个高可靠性、多协议平台上将以太网、光纤通道和FCoE存储服务融合为一体。
FCoE、iSCSI和FCIP
FCoE、iSCSI和FCIP都是可以在以太网上进行块数据传输的存储协议。然而每一个当初都是以不同的目标和设计标准发展起来。由于FCoE是由专门的数据中心存储协议发展而来,其中包含有FC和数据中心以太网协议。iSCSI是设计用来在包括局域网和广域网在内的任何基于IP的系统上可靠地传输存储数据。如图3所示,iSCSI借助位于第三层的整个TCP/IP协议栈来实现路由和数据包恢复,所以iSCSI可以用于可能存在潜在的网络带宽损耗。相比之下,FCIP被设计为用于远程连接FC SAN的隧道协议。象iSCSI一样,FCIP亦承担TCP/IP的处理开销,因此它的设计不适合本地高性能数据中心应用。
iSCSI主要作用在于其经济性,发挥空闲的驱动器、以太网卡、以太网交换机和IP路由器,在服务器和存储之间传输SCSI数据块。尽管服务器接入和网络基础系统成本较低,但是iSCSI存储目标成本会随着是否使用廉价磁盘驱动和是否配置基于硬盘或基于软盘的控制器而改变。因为没有专门的本地iSCSI磁盘驱动,iSCSI目标必须依靠某种形式的协议桥接(从iSCSI 到SAS/SATA或从iSCSI到FC)控制器来存储和检索数据块。所以iSCSI并不等同于那些有时用于部门级FC SAN中的JBOD。
在1Gb以太网中,iSCSI不需花费很多就可实现通过网关将低性能的二级服务器整合到现有的数据中心的FC SAN中,或为部门使用提供共享存储。但是在10G以太网中,iSCSI就渐渐失去了广泛宣扬的成本优势。在服务器上使用10G以太网意味着主程序要求高性能和可靠性。尽管标准NIC卡可在10G下使用,但10G的iSCSI服务器通过例如TCP可卸载适配器等辅助设备来增强性能,并通过iSER logic来避免从接口到应用存储器的SCSI数据的多存储副本。设计精密的10GB iSCSI适配器增加了成本,但使iSCSI 可以在主机上将CPU开支减到最低,来更充分地利用更大的带宽。
总结
介于庞大的安装基础,早已成熟的光纤通道技术已经具备了众多的存储特性和管理工具,这大大利于对数据中心内的共享存储系统进行各种配置。聚合增强以太网(CEE)技术使用户可以在公共以太网基础体系数据中心将存储、信息传送、网络电话、视频和其它数据结合在一起。FCoE是实现以太网高效率块存储的组件技术。FCoE不是光纤通道的替代物而是光纤通道的拓展,并且将与光纤通道SAN共存。
因为FCoE是对以太网的进一步增强,所以它的发展需要光纤通道和以太网的技术专家和标准组织之间的相互协调。尽管流控制和以太网生成树协议等连接层问题是一个重大的挑战,但是还需要提出更多的解决方案来继续保留用户正有效配置的光纤通道高级服务。即使是在10G网络传输速率下,仍需要对今天的以太网技术进行深入研究以适合数据中心存储的应用。作为光纤通道架构技术的先驱,博科公司在保留数据中心性能、可靠性和高级存储服务所提供的优势的同时,也向FCoE引入了专业技术以降低其他解决方案的复杂性。