iSCSI Initiator 可用軟件方式實(shí)現(xiàn),同樣的iSCSI Target 也行,不過(guò)優(yōu)劣特點(diǎn)也相近,即是偏成本取向且不易達(dá)到專屬硬件的效能。且要更注意的是,iSCSI Initiator 軟件確實(shí)多半采隨附的放送策略,而iSCSI Target 軟件則不同,多數(shù)的iSCSI Target 都要收費(fèi),僅少數(shù)免費(fèi),如UNH-iSCSI 項(xiàng)目中除了iSCSI Initiator軟件開(kāi)發(fā)也有iSCSI Target 軟件開(kāi)發(fā),雖免費(fèi)但也多半用于測(cè)試驗(yàn)證之用,少用于實(shí)際的商務(wù)運(yùn)作。此外,有一個(gè)iSCSI Enterprise Target 開(kāi)放項(xiàng)目能提供iSCSI Target 軟件,但目前僅在0.4.x 版,連1.0 正式版都還有段距離。

現(xiàn)階段真正成熟運(yùn)用的iSCSI Target 多半由商業(yè)軟件業(yè)者提供,如DataCore Software 的SANmelody/SANmelody Lite,或FalconStor Software 的iSCSI Server for Windows,或String Bean Software 的WinTarget 等,頗為玩味的,三者都是只能安裝在Windows 伺服操作系統(tǒng)上,這似乎與節(jié)費(fèi)有些違背(純就操作系統(tǒng)的軟件授權(quán)費(fèi),Windows 向來(lái)高于Linux、UNIX)。

或許在意效能,或許在意花費(fèi)(反正軟法、硬法都要錢),多數(shù)用戶仍傾向使用硬件方式來(lái)實(shí)現(xiàn)iSCSI Target,事實(shí)上過(guò)去也有業(yè)者推出能讓泛用服務(wù)器轉(zhuǎn)變成SAN 或NAS 儲(chǔ)存設(shè)備的軟件,但與實(shí)際的SAN、NAS 儲(chǔ)存硬件出貨數(shù)相較實(shí)不成比例,同樣的情形也反應(yīng)在iSCSI Target 軟件上,軟件式RAID 也類似,RAID 軟件的真實(shí)運(yùn)用量遠(yuǎn)低于RAID 硬件。簡(jiǎn)而言之用戶對(duì)iSCSI Initiator 軟件的接受度大于iSCSI Target 軟件。

另外,iSCSI Target 有許多種類型,撇開(kāi)iSCSI Router/Gateway/Bridge 等非儲(chǔ)存角色不談,儲(chǔ)存上常見(jiàn)的有iSCSI Disk Array 與iSCSI Tape Library,對(duì)國(guó)內(nèi)設(shè)計(jì)者而言只有iSCSI Disk Array 具有意義,因?yàn)閲?guó)內(nèi)幾乎沒(méi)有業(yè)者在發(fā)展以磁帶機(jī)為主的相關(guān)應(yīng)用。信息硬件產(chǎn)品中只要牽涉到高度機(jī)械性的部分國(guó)內(nèi)業(yè)者就會(huì)全面束手,小至軟盤機(jī)、中至光驅(qū)、大至磁帶機(jī)皆是。

上述的軟件實(shí)現(xiàn)法,都屬于資管、網(wǎng)管人員自身就可完成的方式,只要找一部泛用型服務(wù)器并對(duì)應(yīng)安裝軟件即可。然而也有些軟件方案并非供信息人員所用,而是供網(wǎng)儲(chǔ)系統(tǒng)設(shè)計(jì)者所用,此即是嵌入式的伺服軟件方案,過(guò)去Microsoft就有WSS(Windows Storage Server),WSS 包含嵌入式的Windows 操作系統(tǒng)以及NAS 伺服應(yīng)用程序,設(shè)計(jì)者運(yùn)用此套軟件便可快速實(shí)現(xiàn)一臺(tái)NAS,不過(guò)!硬件業(yè)者若要量產(chǎn)使用WSS 的NAS 儲(chǔ)存硬設(shè)備,Microsoft 將逐臺(tái)收取授權(quán)費(fèi)。而依據(jù)Microsoft 的展望規(guī)劃,日后將比照現(xiàn)有NAS 作法,推出專供實(shí)現(xiàn)iSCSI儲(chǔ)存設(shè)備的新版WSS。

當(dāng)然!除Microsoft 外,其它iSCSI Target 軟件業(yè)者也多半歡迎儲(chǔ)存硬件業(yè)者的接觸以促成嵌入式合作,例如2005 年10 月三星電子(Samsung Electronics)推出的ZSS-100 iSCSI 儲(chǔ)存設(shè)備,即是以DataCore 的SANmelody 內(nèi)嵌而實(shí)現(xiàn),且ZSS-100 的硬件組件相當(dāng)平凡常見(jiàn),如3.6GHz 的Pentium 4、SATA 硬盤(多顆合計(jì)的原生總?cè)萘窟_(dá)1TB)等,并無(wú)特別過(guò)人之處。

相同的類例,HP 的ProLiant DL100 Storage Server 與DL100 G2(第二代)是使用WSS 所形成的NAS,然也提供選用功能,可追加iSCSI 功能于其上,等于一部?jī)?chǔ)存設(shè)備兼具NAS 與iSCSI 功效,其中iSCSI 功效是將FalconStor iSCSI Server for Windows 進(jìn)行內(nèi)嵌而達(dá)成。

附注:還有兩種特別的商業(yè)版iSCSI Target 軟件,如Wasabi Systems 的Storage Builder 1500i,此是將iSCSI Target 軟件搭配嵌入式操作系統(tǒng)(推測(cè)為BSD),一并存于IDE 接口的Compact Flash 記憶卡內(nèi),只要將此卡插置于一般x86 硬件,即可讓該硬件轉(zhuǎn)變成iSCSI Target。另一則是RocketDivision 的StarWind 與StarPort,前者為iSCSI Target 軟件,后者為iSCSI Initiator 軟件,使用于Windows 操作系統(tǒng)上,但作用不在仿真硬盤,而在仿真光盤。


QLogic 的ISP3010 芯片僅為TOE 而不具iSOE,可當(dāng)一般GbE NIC 之用,亦可加速存取NAS,而ISP4010 芯片則為iSOE,可加速對(duì)iSCSI Target 的存取。

如何實(shí)現(xiàn)一個(gè)iSCSI Target(硬件法)

接著是硬件實(shí)現(xiàn)法,我們完全鎖定在如何實(shí)現(xiàn)一個(gè)iSCSI Disk Array 上,但即便如此,實(shí)現(xiàn)方式也依然是形形色色、百家爭(zhēng)鳴。

首先是從頭設(shè)計(jì)到尾,前述用于iSCSI HBA 中的芯片在iSCSI Target 中也都適用,也統(tǒng)統(tǒng)要用,包括GbE NIC(TCP/IP)芯片、iSCSI 芯片、IPSec 芯片等,而且用量也比iSCSI HBA 多,iSCSI HBA 可能用1∼2 顆GbE 芯片或iSCSI 芯片,但iSCSI Target 會(huì)用到2∼4 顆,理由是一部iSCSI Target/Disk Array 要服務(wù)多個(gè)iSCSI Initiator/iSCSI HBA,傳輸量較大,所以要多個(gè)相同并行組態(tài)以增進(jìn)效能,另外也可充當(dāng)備援組件,增加運(yùn)作的堅(jiān)穩(wěn)可用性。

當(dāng)然!上述這些芯片也可以部分舍棄不用,但道理一樣:請(qǐng)改采軟件方式來(lái)彌補(bǔ),且代價(jià)是消耗部分的CPU 運(yùn)算力。在這些之外,iSCSI Disk Array 的重點(diǎn)當(dāng)然是RAID 控制芯片(RAID Controller),透過(guò)RAID 芯片及其支持接口以連接各式硬盤。

要提醒的是,雖然設(shè)計(jì)目標(biāo)為iSCSI,但不表示我們只能用SCSI 硬盤或SAS硬盤,其實(shí)也可使用ATA 硬盤、SATA 硬盤,或FC 硬盤等,這并不相抵觸,重點(diǎn)只在于RAID 芯片支持何種硬盤接口,RAID 芯片與CPU 連接,CPU 與iSCSI芯片連接,過(guò)程中CPU 會(huì)進(jìn)行運(yùn)作中所需的各種數(shù)據(jù)轉(zhuǎn)換,這也是iSCSI Target的設(shè)計(jì)實(shí)現(xiàn)不必限定非使用SCSI/SAS 硬盤的緣故。

如果認(rèn)為各環(huán)節(jié)都自主設(shè)計(jì)太久太累,那可以考慮以半成品為基礎(chǔ)再行往上發(fā)展,例如iStor Networks 所提供的GigaStorATX 系統(tǒng)板,該板用上iStor 所自研的特用芯片:iSNP8008(iSNP=IP Storage Network Access Processor)、8 個(gè)1GbE 網(wǎng)埠(iSCSI 傳輸,另有支持10GbE 的系統(tǒng)板)、16 個(gè)SATA 埠(可接16 顆SATA 硬盤)、4GB 高速緩存,并已具備RAID 0,1,10,5 等數(shù)組組態(tài),只要再搭配硬盤與些許設(shè)計(jì),便可快速實(shí)現(xiàn)一部iSCSI Disk Array。


Stor 的GigaATX 系統(tǒng)板是專為加速iSCSI Target 設(shè)計(jì)所提出,該系統(tǒng)板上使用iStor 自研的iSNP8008 處理器。

另一種半成品作法是用LSI Logic 的iMegaRAID iSCSI 套件,這套件包含軟硬兩部分,硬件方面是一張LSI Logic 的MegaRAID SATA 300-8X 或300-8XLP的磁盤陣列控制卡,用來(lái)形成SATA 磁盤陣列,軟件部分則是LSI Logic 的iMegaRAID RAS Software,將控制卡裝入一部使用Linux 操作系統(tǒng)的計(jì)算機(jī),且該計(jì)算機(jī)已具備GbE NIC 功能,再安裝上iMeagaRAID 軟件,即可完成一部iSCSI Disk Array。

嚴(yán)格來(lái)說(shuō),LSI Logic 提供的方式不太能算是硬件作法,應(yīng)是軟件作法,只是該軟件相依于該公司自有的磁盤陣列控制卡上,非配裝該卡才能發(fā)揮,其余部分都是以純軟件方式實(shí)現(xiàn),例如iSCSI 運(yùn)算、TCP/IP 運(yùn)算等,只要iMegaRAID 軟件舍棄與自家控制卡的相依性,而能適用于任何數(shù)組控制卡,就是一個(gè)地道的軟件iSCSI 方案。說(shuō)穿了,此法只是讓LSI Logic 用來(lái)增加既有RAID 控制卡的價(jià)值與運(yùn)用范疇。

不過(guò),使用現(xiàn)成的iSCSI HBA 卡、現(xiàn)成的RAID 卡,甚至使用泛用的主機(jī)板等,確實(shí)是較快便的實(shí)現(xiàn)法,進(jìn)而將研發(fā)心力更專注在韌體、驅(qū)動(dòng)程序、嵌入式操作系統(tǒng)等層面,但相對(duì)的也必須犧牲硬件層面的最佳化設(shè)計(jì)。


用一部x86 計(jì)算機(jī),安裝Linux 操作系統(tǒng)及一張GbE NIC,再安裝上LSI Logic 的磁盤陣列控制卡:MegaRAID SATA 300-8x,以及LSI Logic 的iSCSI Target 軟件:iMegaRAID RAS,即可讓x86 計(jì)算機(jī)搖身變成iSCSI Disk Array。

如果認(rèn)為以半成品來(lái)進(jìn)行設(shè)計(jì)還是過(guò)于麻煩,也還有更輕松行事的方式,甚至完全只要手工就能完成,無(wú)須任何電子工程設(shè)計(jì),如ATTO Technology 的iPBridge 系列的iSCSI 橋接器,提供iSCSI-to-SCSI 與iSCSI-to-FC 的橋接,可讓過(guò)去采直接附連(Direct Attached,如SCSI、FC 接口)的磁盤陣列柜(Disk Array,JBOS、DAS)或磁帶設(shè)備(Autoloader、Tape Library)轉(zhuǎn)變成iSCSI Target。

又如SANRAD 的V-Switch 系列(iSCSI Gateway,也稱iSCSI Bridge)也是直接取用既有DAS、JBOD 等直接附連式儲(chǔ)存設(shè)備,重新轉(zhuǎn)化成iSCSI,以保障企業(yè)用戶在既有儲(chǔ)存設(shè)備上的投資。也因?yàn)橹灰謩?dòng)轉(zhuǎn)接與相關(guān)調(diào)設(shè),所以資管、網(wǎng)管者可自行完成轉(zhuǎn)化程序。

iSCSI 外的更精進(jìn)路線:10GbE、iWARP

要不是GbE 的技術(shù)及價(jià)格成熟,否則iSCSI 也不會(huì)到臨,因?yàn)橐?00Mbps的Ethernet 來(lái)執(zhí)行iSCSI 在效率上可說(shuō)是完全不可行。

有了GbE 后,雖然1Gbps 的iSCSI 依舊遜于1Gbps FC(理由是TCP/IP 協(xié)定的頻寬占量多過(guò)FC 的FCP 協(xié)議,且Ethernet 協(xié)議有較大的傳輸延遲),但也逐漸逼近,迫使FC 將入門級(jí)從1Gbps 調(diào)升為2Gbps,好與1Gbps iSCSI 有所區(qū)隔,并往上追加4Gbps FC,以維持其效能領(lǐng)先地位。

不過(guò),Ethernet 并非只及1Gbps,10Gbps 也已經(jīng)實(shí)現(xiàn),40Gbps 也已經(jīng)列入規(guī)劃進(jìn)程,所以也有業(yè)者提出讓iSCSI 使用10Gbps 而非拘限在1Gbps,一舉超越現(xiàn)有2Gbps、4Gbps 的FC,例如iVivity 的iDiSX 2000 芯片(iDiSX 2000 是I-Disks2000 的諧音),即是以單純的10GbE 芯片,并搭配iSCSI 軟件來(lái)實(shí)現(xiàn)iSCSI,

屬于高階高效性iSCSI 方案。

另外,只將高速Ethernet 用于「儲(chǔ)存網(wǎng)絡(luò)化」也過(guò)于可惜,所以也有眾多業(yè)者發(fā)起iWARP,不僅可實(shí)現(xiàn)儲(chǔ)存的網(wǎng)絡(luò)化,也能實(shí)現(xiàn)I/O 的網(wǎng)絡(luò)化,這在過(guò)去多半要倚賴IB(InfiniBand)才能達(dá)成,但iWARP 就是希望用更共通的Ethernet標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn),進(jìn)而取代。從許多跡象可看出iWARP 取代IB 的意圖,例如兩者都具有RDMA(Remote Direct Memory Access)機(jī)制,簡(jiǎn)化網(wǎng)絡(luò)兩端的內(nèi)存數(shù)據(jù)交換程序,從而加速。

同時(shí),RDMA 也可搭配iSER(iSCSI Extension to RDMA)協(xié)議,達(dá)到與iSCSI一模一樣的儲(chǔ)存網(wǎng)化功效,等于是iSCSI 的超集,既能將「儲(chǔ)存資源及運(yùn)作」網(wǎng)絡(luò)化,也能將「I/O 資源及運(yùn)作」網(wǎng)絡(luò)化。目前NetEffect 的NE01 系列芯片即是針對(duì)iWARP 運(yùn)用所開(kāi)發(fā),并提出所謂的ECA(Ethernet Channel Adapter),從名稱上即可知有與IB 較量的意味,因?yàn)镮B 卡稱為HCA(Host Channel Adapter)或TCA(Target Channel Adapter),嚴(yán)格而論具iWARP 硬件加速及分擔(dān)卸載功效的10GbE 網(wǎng)卡,當(dāng)稱為RNIC(RDMA NIC)。


Voltaire 為InfiniBand 的交換、路由設(shè)備大廠,但也支持RDMA 及iSER 協(xié)議,此也等于支持iWARP/iSCSI,圖為iSCSI 與iSER 的協(xié)議架構(gòu)。

此外Broadcom 提出所謂的C-NIC(Converged NIC)聚合型網(wǎng)卡理念,即是在一顆NetXtreme II 系列的GbE 控制芯片內(nèi)同時(shí)具備以太網(wǎng)絡(luò)、儲(chǔ)存網(wǎng)化、I/O網(wǎng)化等功效,傳統(tǒng)以太網(wǎng)部分具有TOE 運(yùn)算,儲(chǔ)存網(wǎng)化則具備iSCSI 運(yùn)算、I/O網(wǎng)化則具備RDMA 運(yùn)算,大幅卸除CPU 的輔助運(yùn)算,使CPU 占用率降至20%以下。

關(guān)于C-NIC 理念,Broadcom 目前的代表性芯片為BCM5706(PCI/PCI-X 接口)與BCM5708S(PCIe 接口),其中BCM5706 為第一代,BCM5708S 為第二代,第二代還將傳輸率從1Gbps 提升至2.5Gbps,雖是專屬超規(guī)作法,但卻更貼近與符合C-NIC 的需要,畢竟一個(gè)網(wǎng)埠具備三種功效,若沒(méi)有更高的頻寬作為支持,反會(huì)造成三種網(wǎng)化功效互遷就或互干擾的影響。而且Broadcom 也于2005年7 月收并Siliquent Technologies,該公司專注于10GbE 芯片的技術(shù),預(yù)計(jì)此一收并將有助于Broadcom 的C-NIC 方案從2.5Gbps 提升至10Gbps。

不過(guò),現(xiàn)在10GbE 的相關(guān)芯片仍偏貴,也必須使用光纖,銅線規(guī)格僅初步定案,仍待更完整,且據(jù)知銅線無(wú)法如過(guò)往GbE 般保持在100m,距離可能會(huì)縮短。所以,前言10GbE幾乎必用光纖,如此將與FC愈來(lái)愈像,且目前FC芯片比10GbE芯片低廉,加上FC 未來(lái)也計(jì)劃邁向10Gbps,所以10Gbps 的Ethernet 與FC 還有番價(jià)格效能比的爭(zhēng)斗,甚至也要與10Gbps 的IB 爭(zhēng)斗。

本文版權(quán)歸DoSTOR及作者本人所有,未經(jīng)許可,不得轉(zhuǎn)載。

分享到

多易

相關(guān)推薦