FCoE發(fā)展過程中所遇到的第一個挑戰(zhàn)是將通過本地光纖通道的Buffer-to-buffer CredITs特性所實現(xiàn)的流控制機制得以延續(xù)。雖然以太網(wǎng)交換機沒有相對應(yīng)的緩沖到緩沖機制,但以太網(wǎng)標(biāo)準(zhǔn)可以通過支持MAC控制幀來調(diào)節(jié)流入的信息量。IEEE 802.3x 流量控制標(biāo)準(zhǔn)是基于暫停幀流量控制技術(shù)的。這個技術(shù)會使得發(fā)送者后面的傳輸內(nèi)容延遲一段特定的時間再發(fā)送,如果接收設(shè)備在這段時間過去之前清除緩沖,那么它會重新發(fā)送暫停幀,同時將終止時間歸零。這使發(fā)送者可以重新傳送直至接收到另一個暫停幀。
因為FCoE機制必須支持存儲數(shù)據(jù)的讀寫,所以所有網(wǎng)絡(luò)存儲路徑下的終端設(shè)備和以太網(wǎng)交換機必須支持雙向IEEE 802.3x流控制。盡管這樣的效果可能不如Buffer-to-buffer CredITs機制那么理想,但是IEEE 802.3x暫停幀可以提供對應(yīng)的功能性,來調(diào)節(jié)存儲流量并防止阻塞和緩沖區(qū)溢出引起的丟幀。
IEEE中的IEEE 802.3ar阻塞管理研究小組和IEEE 802.1au阻塞通知研究小組負責(zé)以太網(wǎng)阻塞問題的研究工作。特別是對于存儲事務(wù)來說,這有助于增強流控機制的服務(wù)層級質(zhì)量,使得最關(guān)鍵的任務(wù)的數(shù)據(jù)流在可能發(fā)生阻塞的情況下獲得最高優(yōu)先權(quán)。
冗余路徑和故障切換
光纖通道高可用性的特點主要是得益于其可提供的主機與目標(biāo)設(shè)備之間冗余路徑的Flat或CORE/EDGE的拓撲網(wǎng)絡(luò)。從主路徑到輔路徑的主機總線適配卡、鏈路、交換機端口、交換機或存儲端口,其中任何一點發(fā)生故障就會引發(fā)整個網(wǎng)絡(luò)的故障。在某些情況下,這兩條路徑都是動態(tài)的并且兼?zhèn)涓咝阅芎涂捎眯?。光纖通道架構(gòu)中的光纖最短路徑優(yōu)先協(xié)議用來決定光纖交換機間傳輸?shù)淖罴崖窂剑渑袛嗷诮粨Q機的鏈路帶寬與流量負荷。
以太網(wǎng)基礎(chǔ)體系必須為FCoE提供相應(yīng)的耐障礙性來保證存儲訪問的暢通無阻。當(dāng)多以太網(wǎng)交換機通過交換機內(nèi)鏈路(例如以完全網(wǎng)路拓撲)連接時,IEEE 802.1D快速生成樹協(xié)議在網(wǎng)絡(luò)上建立主路徑,避免幀的發(fā)送形成無止境的環(huán)形回路。交換機之間的動態(tài)橋接端口處于推進狀態(tài),非動態(tài)失效切換橋接端口處于阻塞狀態(tài)。
但由于阻塞的連接不能用于數(shù)據(jù)的傳輸,所以網(wǎng)路中的阻塞連接都表示未利用和閑置的資源??焖偕蓸渫ㄟ^網(wǎng)橋協(xié)議數(shù)據(jù)單元來監(jiān)控所有橋接端口的情況,如果連接、橋接端口或交換失效的話,快速生成樹協(xié)議啟動必要的失效切換橋接端口,在網(wǎng)絡(luò)上建立選擇路徑。
此外,IEEE 802.1s 多生成樹協(xié)議(Multiple Spanning Tree Protocol,MSTP)和IEEE 802.1Q-2003虛擬LAN(VLAN)技術(shù)定義了另外的增強以太網(wǎng)路徑切換的機制。與光纖通道的硬分區(qū)技術(shù)相類似,VLAN 標(biāo)記可實現(xiàn)多達4096個群集節(jié)點組共存于一個公共的以太網(wǎng)基礎(chǔ)體系內(nèi)。
在多業(yè)務(wù)傳輸平臺上對生成樹的增強可以使每個VLAN組中有一個單獨的生成樹。因此,一個虛擬局域網(wǎng)阻塞模式下的橋接端口可以調(diào)節(jié)成另一個虛擬局域網(wǎng)的轉(zhuǎn)發(fā)模式,并且實現(xiàn)對所有網(wǎng)絡(luò)互連性更充分的利用。
即使有多業(yè)務(wù)傳輸設(shè)備的增強,已使用的網(wǎng)絡(luò)連接仍不可避免地導(dǎo)致了快速生成樹協(xié)議對轉(zhuǎn)發(fā)和阻塞狀態(tài)的依賴。越來越多復(fù)雜的第三層路由協(xié)議,例如開放最短路徑優(yōu)先協(xié)議(Open Shortest Path First,OSPF),在跳躍計數(shù)、帶寬、延遲時間和其他測量標(biāo)準(zhǔn)的基礎(chǔ)上選擇末端節(jié)點之間的最佳路徑,并且實現(xiàn)多路徑上的負載均衡。即時串流傳輸協(xié)議(RSTP)作為第二層協(xié)議無法支持這樣的附加功能性而保持向后兼容。需要設(shè)法找到將負載均衡、多點接入(例如一個節(jié)點有接入同一以太網(wǎng)網(wǎng)段的兩條動態(tài)鏈路)、多播技術(shù)和廣播技術(shù)引入第二層以太網(wǎng)的方法。
從光纖通道到以太網(wǎng)的映射
FCoE也必須解決以太網(wǎng)和光纖通道各自所傳輸?shù)膸g的差異。通常一個以太網(wǎng)的幀最大為1518字節(jié)。而一個典型的光纖通道幀最大為大約2112字節(jié)。因此在以太網(wǎng)上打包光纖幀時需要進行分段發(fā)送,然后在接收方進行重組。這會導(dǎo)致更多的處理開銷,阻礙FCoE端到端傳輸?shù)牧鲿承浴?/p>
因此需要一個更大的以太網(wǎng)幀來平衡光纖通道和以太網(wǎng)幀大小上的差異。有一個稱為"巨型幀"的實質(zhì)標(biāo)準(zhǔn),盡管不是正式的IEEE標(biāo)準(zhǔn),但它允許以太網(wǎng)幀在長度上達到9k字節(jié)。在使用"巨型幀"時需要注意,所有以太網(wǎng)交換機和終端設(shè)備必須支持一個公共的"巨型幀"格式。
最大的巨型幀(9K字節(jié))可以實現(xiàn)在一個以太網(wǎng)幀下封裝四個光纖通道幀。但是這會使光纖通道連接層恢復(fù)以及應(yīng)用802.3x暫停指令的緩沖流量控制變得更加復(fù)雜。如圖2所示,F(xiàn)CoE向一個巨型以太網(wǎng)幀內(nèi)封裝一個完整的光纖幀(不使用循環(huán)冗余校驗)。因為以太網(wǎng)已經(jīng)提供了幀檢驗序列(FCS)來檢驗傳輸數(shù)據(jù)的完整性,所以不需要光纖幀的循環(huán)冗余校驗(CRC)。這進一步降低了傳輸層所需的處理開銷,同時提高通道的性能。由于光纖幀可能包括拓展的、可選擇的信頭或虛擬光纖標(biāo)記信息,所以以太網(wǎng)"巨型幀"的大小就不合適,并且會隨著封裝光纖幀的需要而發(fā)生變化。
FCoE幀是使用六字節(jié)MAC硬件目的地址和源地址的本地第二層以太網(wǎng)幀。但MAC地址是存儲透明的,并且只能用于從源到目的地幀的交換。以FCoE幀中保留了存儲事務(wù)中需要的光纖通道尋址,所以需要從FCID(Fibre Channel ID)到以太網(wǎng)MAC地址映射的方法??梢赃x擇一個與地址解析協(xié)議(ARP)相類似的協(xié)議來實現(xiàn)FCID到MAC的地址映射。
例如,在第三層IP環(huán)境下,地址解析協(xié)議用于從上層IP網(wǎng)絡(luò)地址到第二層硬件MAC地址映射。此外,光纖通道使用一些較為熟知的地址來獲得存儲服務(wù)(例如通過SNS發(fā)現(xiàn)設(shè)備機制)。FCoE要求有相應(yīng)的功能性來完成從熟知的地址到對應(yīng)MAC地址的映射。
在傳統(tǒng)光纖通道中,HBA或存儲端口在連接到以太網(wǎng)交換機時會接收FCID。FCoE設(shè)備無法確保通用以太網(wǎng)交換機提供專門的存儲服務(wù),所以必須依靠可用于FCoE交換機內(nèi)部的域控制器和存儲服務(wù)引擎來提供光纖通道登陸、尋址和其它高級服務(wù)。未來的數(shù)據(jù)中心導(dǎo)向器將會在一個高可靠性、多協(xié)議平臺上將以太網(wǎng)、光纖通道和FCoE存儲服務(wù)融合為一體。
FCoE、iSCSI和FCIP
FCoE、iSCSI和FCIP都是可以在以太網(wǎng)上進行塊數(shù)據(jù)傳輸?shù)拇鎯f(xié)議。然而每一個當(dāng)初都是以不同的目標(biāo)和設(shè)計標(biāo)準(zhǔn)發(fā)展起來。由于FCoE是由專門的數(shù)據(jù)中心存儲協(xié)議發(fā)展而來,其中包含有FC和數(shù)據(jù)中心以太網(wǎng)協(xié)議。iSCSI是設(shè)計用來在包括局域網(wǎng)和廣域網(wǎng)在內(nèi)的任何基于IP的系統(tǒng)上可靠地傳輸存儲數(shù)據(jù)。如圖3所示,iSCSI借助位于第三層的整個TCP/IP協(xié)議棧來實現(xiàn)路由和數(shù)據(jù)包恢復(fù),所以iSCSI可以用于可能存在潛在的網(wǎng)絡(luò)帶寬損耗。相比之下,F(xiàn)CIP被設(shè)計為用于遠程連接FC SAN的隧道協(xié)議。象iSCSI一樣,F(xiàn)CIP亦承擔(dān)TCP/IP的處理開銷,因此它的設(shè)計不適合本地高性能數(shù)據(jù)中心應(yīng)用。
iSCSI主要作用在于其經(jīng)濟性,發(fā)揮空閑的驅(qū)動器、以太網(wǎng)卡、以太網(wǎng)交換機和IP路由器,在服務(wù)器和存儲之間傳輸SCSI數(shù)據(jù)塊。盡管服務(wù)器接入和網(wǎng)絡(luò)基礎(chǔ)系統(tǒng)成本較低,但是iSCSI存儲目標(biāo)成本會隨著是否使用廉價磁盤驅(qū)動和是否配置基于硬盤或基于軟盤的控制器而改變。因為沒有專門的本地iSCSI磁盤驅(qū)動,iSCSI目標(biāo)必須依靠某種形式的協(xié)議橋接(從iSCSI 到SAS/SATA或從iSCSI到FC)控制器來存儲和檢索數(shù)據(jù)塊。所以iSCSI并不等同于那些有時用于部門級FC SAN中的JBOD。
在1Gb以太網(wǎng)中,iSCSI不需花費很多就可實現(xiàn)通過網(wǎng)關(guān)將低性能的二級服務(wù)器整合到現(xiàn)有的數(shù)據(jù)中心的FC SAN中,或為部門使用提供共享存儲。但是在10G以太網(wǎng)中,iSCSI就漸漸失去了廣泛宣揚的成本優(yōu)勢。在服務(wù)器上使用10G以太網(wǎng)意味著主程序要求高性能和可靠性。盡管標(biāo)準(zhǔn)NIC卡可在10G下使用,但10G的iSCSI服務(wù)器通過例如TCP可卸載適配器等輔助設(shè)備來增強性能,并通過iSER logic來避免從接口到應(yīng)用存儲器的SCSI數(shù)據(jù)的多存儲副本。設(shè)計精密的10GB iSCSI適配器增加了成本,但使iSCSI 可以在主機上將CPU開支減到最低,來更充分地利用更大的帶寬。
總結(jié)
介于龐大的安裝基礎(chǔ),早已成熟的光纖通道技術(shù)已經(jīng)具備了眾多的存儲特性和管理工具,這大大利于對數(shù)據(jù)中心內(nèi)的共享存儲系統(tǒng)進行各種配置。聚合增強以太網(wǎng)(CEE)技術(shù)使用戶可以在公共以太網(wǎng)基礎(chǔ)體系數(shù)據(jù)中心將存儲、信息傳送、網(wǎng)絡(luò)電話、視頻和其它數(shù)據(jù)結(jié)合在一起。FCoE是實現(xiàn)以太網(wǎng)高效率塊存儲的組件技術(shù)。FCoE不是光纖通道的替代物而是光纖通道的拓展,并且將與光纖通道SAN共存。
因為FCoE是對以太網(wǎng)的進一步增強,所以它的發(fā)展需要光纖通道和以太網(wǎng)的技術(shù)專家和標(biāo)準(zhǔn)組織之間的相互協(xié)調(diào)。盡管流控制和以太網(wǎng)生成樹協(xié)議等連接層問題是一個重大的挑戰(zhàn),但是還需要提出更多的解決方案來繼續(xù)保留用戶正有效配置的光纖通道高級服務(wù)。即使是在10G網(wǎng)絡(luò)傳輸速率下,仍需要對今天的以太網(wǎng)技術(shù)進行深入研究以適合數(shù)據(jù)中心存儲的應(yīng)用。作為光纖通道架構(gòu)技術(shù)的先驅(qū),博科公司在保留數(shù)據(jù)中心性能、可靠性和高級存儲服務(wù)所提供的優(yōu)勢的同時,也向FCoE引入了專業(yè)技術(shù)以降低其他解決方案的復(fù)雜性。