NFS還是iSCSI:難以做出的抉擇
網(wǎng)界網(wǎng)
作者:美Infoworld專欄作家 Matt Prigge
摘要: 這兩種協(xié)議根據(jù)應(yīng)用場合的不同,各自都存在優(yōu)缺點(diǎn)。但是存儲的未來發(fā)展將會成為做出最終選擇的重要依據(jù),。
Abstract:
Key words :
在過去的數(shù)周內(nèi),,我花功夫鉆研了與構(gòu)建IP存儲網(wǎng)絡(luò)有關(guān)的一些已被遺忘的部分,,以及如何最好地利用它與NFS和iSCSI——虛擬化所使用的兩大IP存儲協(xié)議——相配套的問題。這段時間我也收到了大量的讀者來信,,這些來信全都和這樣一個問題有關(guān):NFS或iSCSI,,哪個更好?
與很多引起熱烈爭論的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)時是作為通用的文件共享協(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ù)器或存儲陣列托管整個文件系統(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í)際的存儲使用情況——例如在精簡配置場合,,它可以拍攝快照,或者對單個虛擬機(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)先之處——延伸集群就是一個很好的例子。在此類可同步復(fù)制,、地理分布不同的存儲系統(tǒng)中,,存儲層具備將每個虛擬機(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ò)鏈路匯聚來獲得,,還需小心注意去平衡陣列端多個IP地址別名上的存儲連接,以確保負(fù)載均衡能夠生效,。而另一方面,,iSCSI內(nèi)置了多路徑能力,可提供更多的高級負(fù)載均衡算法,,在多條服務(wù)器和陣列端存儲路徑上智能化地平衡存儲流量,。
在這兩種情形下,10G以太網(wǎng)的使用可以減輕為提高存儲性能而采用多路徑的必要性,,理由是絕大多數(shù)組織的吞吐量要接近1Gbps都是不可想象的(至少今天還是如此),。不過在這方面,iSCSI要略勝NFS一籌,,尤其當(dāng)匯聚多個1Gbps以太網(wǎng)鏈路時,。
從網(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í)施的一個常見誤區(qū)是,認(rèn)為其實(shí)施是基于UDP/IP的,。這一誤解通常來自NFS v2完全基于UDP這一事實(shí),。盡管UDP是一個相對低延遲的IP傳輸協(xié)議,但它缺少安全和交付機(jī)制,,在跟蹤目前的TCP/IP網(wǎng)絡(luò)時難以保障狀態(tài)連接所帶來的好處,。而從NFS v3開始,TCP成了它所支持的一個傳輸協(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í)現(xiàn)NFS客戶端,,最終刺激對NFS需求的長期規(guī)模增長。
不要讓自己輕易相信哪一種協(xié)議會徹底擊敗另一種,。事實(shí)上兩者間存在差異是一件好事,,因?yàn)楫?dāng)你在尋找一種可以滿足特定需求的IP解決方案時就有了兩次機(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
原文地址: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)載,。