《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > NFS還是iSCSI:難以做出的抉擇
NFS還是iSCSI:難以做出的抉擇
網(wǎng)界網(wǎng)
作者:美Infoworld專欄作家 Matt Prigge
摘要: 這兩種協(xié)議根據(jù)應(yīng)用場合的不同,各自都存在優(yōu)缺點(diǎn)。但是存儲的未來發(fā)展將會成為做出最終選擇的重要依據(jù)。
關(guān)鍵詞: 存儲 NFS IP存儲 iSCSI
Abstract:
Key words :

在過去的數(shù)周內(nèi),我花功夫鉆研了與構(gòu)建IP存儲網(wǎng)絡(luò)有關(guān)的一些已被遺忘的部分,以及如何最好地利用它與NFSiSCSI——虛擬化所使用的兩大IP存儲協(xié)議——相配套的問題。這段時(shí)間我也收到了大量的讀者來信,這些來信全都和這樣一個(gè)問題有關(guān):NFS或iSCSI,哪個(gè)更好?

與很多引起熱烈爭論的IT話題一樣,要在任何兩種流行的競爭技術(shù)之間進(jìn)行選擇,關(guān)注其整體更優(yōu)的人并不多,更多的人關(guān)注的是它們能否最好地解決面前的挑戰(zhàn)。這兩種協(xié)議根據(jù)應(yīng)用場合的不同,各自都存在優(yōu)缺點(diǎn)。但是存儲的未來發(fā)展將會成為做出最終選擇的重要依據(jù)。
文件 vs 塊
我之前曾經(jīng)說過,NFS和iSCSI兩者無論就實(shí)施狀況還是歷史發(fā)展來看,都不存在很大的差異。NFS是由Sun公司在上世紀(jì)80年代初開發(fā)的,當(dāng)時(shí)是作為通用的文件共享協(xié)議,允許網(wǎng)絡(luò)用戶到網(wǎng)絡(luò)上的一臺文件服務(wù)器上去讀寫文件。iSCSI出現(xiàn)的較晚,最初是在2000年初,作為光纖通道(FC)的一種IP替代方案出現(xiàn)的,它和FC類似,都是將塊級SCSI命令進(jìn)行封裝,然后在網(wǎng)絡(luò)上發(fā)送。
兩者間的主要差別在于文件系統(tǒng)的實(shí)施和管理上。NFS使用文件級別的實(shí)施,服務(wù)器或存儲陣列托管整個(gè)文件系統(tǒng),客戶到文件系統(tǒng)上讀寫文件。而iSCSI和FC則使用數(shù)據(jù)塊,存儲陣列向客戶提供數(shù)據(jù)塊集合,賦予原始存儲數(shù)據(jù)一定的格式化,而不去管文件系統(tǒng)究竟如何使用。
雖然這種差異產(chǎn)生了諸多的后果,但最重要的后果可能在于,在諸如iSCSI和FC的塊級協(xié)議中,存儲陣列一般不會去管它存儲的內(nèi)容是什么。它只知道分配塊集合給需要訪問的客戶。相反地,在諸如NFS的文件級協(xié)議中,存儲陣列對存儲在其中的應(yīng)用數(shù)據(jù)具有充分的可視性。
從實(shí)用角度來看,對存儲在NFS系統(tǒng)上數(shù)據(jù)的這種陣列端感知能力可以讓存儲陣列更容易跟蹤實(shí)際的存儲使用情況——例如在精簡配置場合,它可以拍攝快照,或者對單個(gè)虛擬機(jī)做備份,甚至可以在陣列端對主存儲數(shù)據(jù)進(jìn)行重復(fù)數(shù)據(jù)刪除。
不過最近在VMware的VAAI(vSphere API for Array Integration)中實(shí)現(xiàn)的SCSI T10增強(qiáng)功能為塊存儲也增加了類似的感知功能,通過支持UNMAP SCSI原始,可對空閑塊增加虛擬化堆棧能力(因而允許陣列回收這些塊)和陣列端副本卸載能力,可以加速虛擬機(jī)克隆等任務(wù)。從某種意義上說,一些智能化的hypervisor與陣列的集成也使得使用NFS的文件級系統(tǒng)可以移植到采用SCSI協(xié)議的塊級系統(tǒng)中去。
但我不能因此而肯定文件與塊的競爭是否已經(jīng)結(jié)束。盡管增加了這些SCSI原始可允許基于SCSI存儲協(xié)議的系統(tǒng)執(zhí)行某些類似NFS的功能,但在其他情形下,文件級協(xié)議依然擁有某些領(lǐng)先之處——延伸集群就是一個(gè)很好的例子。在此類可同步復(fù)制、地理分布不同的存儲系統(tǒng)中,存儲層具備將每個(gè)虛擬機(jī)視作單獨(dú)存儲資源的能力——可以單獨(dú)對其進(jìn)行刪除和故障處理——這一點(diǎn)極其重要,也是使用塊存儲協(xié)議的系統(tǒng)所無法實(shí)現(xiàn)的。
在網(wǎng)絡(luò)上
從網(wǎng)絡(luò)角度看,NFS和iSCSI也存在明顯的差異。采用NFS,額外所需的吞吐量和冗余主要是通過網(wǎng)絡(luò)鏈路匯聚來獲得,還需小心注意去平衡陣列端多個(gè)IP地址別名上的存儲連接,以確保負(fù)載均衡能夠生效。而另一方面,iSCSI內(nèi)置了多路徑能力,可提供更多的高級負(fù)載均衡算法,在多條服務(wù)器和陣列端存儲路徑上智能化地平衡存儲流量。
在這兩種情形下,10G以太網(wǎng)的使用可以減輕為提高存儲性能而采用多路徑的必要性,理由是絕大多數(shù)組織的吞吐量要接近1Gbps都是不可想象的(至少今天還是如此)。不過在這方面,iSCSI要略勝NFS一籌,尤其當(dāng)匯聚多個(gè)1Gbps以太網(wǎng)鏈路時(shí)。
從網(wǎng)絡(luò)安全的角度看,iSCSI也有一定優(yōu)勢。除了NFS和iSCSI都支持的源IP安全限制以外,iSCSI還內(nèi)置了對雙向挑戰(zhàn)握手認(rèn)證協(xié)議(CHAP)的支持,該協(xié)議可防止未經(jīng)認(rèn)證的服務(wù)器連接存儲資源,允許服務(wù)器去驗(yàn)證他們準(zhǔn)備連接的存儲陣列是否經(jīng)過了認(rèn)證。
關(guān)于現(xiàn)代NFS實(shí)施的一個(gè)常見誤區(qū)是,認(rèn)為其實(shí)施是基于UDP/IP的。這一誤解通常來自NFS v2完全基于UDP這一事實(shí)。盡管UDP是一個(gè)相對低延遲的IP傳輸協(xié)議,但它缺少安全和交付機(jī)制,在跟蹤目前的TCP/IP網(wǎng)絡(luò)時(shí)難以保障狀態(tài)連接所帶來的好處。而從NFS v3開始,TCP成了它所支持的一個(gè)傳輸協(xié)議。這也是目前大多數(shù)NFS存儲陣列和hypervisor,如VMware vSphere所采用的辦法,把NFS放在了和基于TCP/IP的iSCSI同等的位置上。
未來前景
今天來看,iSCSI似乎更具贏家風(fēng)范,至少從網(wǎng)絡(luò)角度看是這樣,因?yàn)樗商峁└玫亩嗦窂街С?,更高程度的端到端安全。不過NFS仍然保有相當(dāng)?shù)膬?yōu)勢,尤其是在陣列端的適當(dāng)使用,因?yàn)樗茏岅嚵袚碛袑μ摂M化堆棧的可視性,可智能化地參與加速、快照和重復(fù)刪除等存儲流程。正是這些陣列端的智能優(yōu)勢,再結(jié)合上多路徑與安全提升,有可能在NFS 4.1發(fā)布時(shí)有望實(shí)現(xiàn)NFS客戶端,最終刺激對NFS需求的長期規(guī)模增長。
不要讓自己輕易相信哪一種協(xié)議會徹底擊敗另一種。事實(shí)上兩者間存在差異是一件好事,因?yàn)楫?dāng)你在尋找一種可以滿足特定需求的IP解決方案時(shí)就有了兩次機(jī)會。請務(wù)必記?。哼@些協(xié)議發(fā)展史的最后一章尚未寫完。(波波編譯)
 
本文轉(zhuǎn)載自企業(yè)級IT信息服務(wù)平臺-網(wǎng)界網(wǎng)-CNW.com.cn
原文地址:http://www.cnw.com.cn/news-international/htm2012/20120531_247931_2.shtml
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。