關(guān)于這張圖,最有意思的就是IEFT(國際互聯(lián)網(wǎng)工程任務(wù)組)準(zhǔn)備支持T10 OSD協(xié)議(T10:SCSI存儲接口技術(shù)委員會,OSD:基于對象存儲設(shè)備),并將其作為NFSv4.1的一部分。這也就意味著,通過NFSv4.1,你可以從NFS服務(wù)器中按照塊、T10 OSD對象或文件來移動數(shù)據(jù)。很重要的一點就是,隨著NFSv4.1開始啟動,由于大部分廠商在還僅僅只是將這些方法中的一個方法作為實施的開始,因此就有一些問題。
同樣重要的是,作為傳輸機(jī)制的一部分,數(shù)據(jù)和元數(shù)據(jù)是分開的。因此對于基于塊的存儲來說,一般情況下,索引節(jié)點以及任何非直接的擴(kuò)展都被聚集在一起,而塊地址則是通過使用DMA(直接內(nèi)存存?。﹣韽木W(wǎng)絡(luò)上直接獲得。和NFSv4以及更早版本的NFS在網(wǎng)絡(luò)上讀取文件的方式比起來,這種方式的性能將是一日千里。當(dāng)然,如果是在10Mb/s以太網(wǎng),或者1Gb以太網(wǎng)上讀取文件,不同方式的差別不會很大,但是你也會感覺到采用新方法所帶來的改善。現(xiàn)在,如果你擁有10Gb以太網(wǎng),或者說DDR(雙數(shù)據(jù)率)IB(InfiniBand),或者說未來更快的網(wǎng)絡(luò),那么現(xiàn)有的NFS協(xié)議可以讓這些高速網(wǎng)絡(luò)的運行得簡直就像在1Gb以太網(wǎng)上一樣。
1991年左右,我被一個站點叫去做技術(shù)支持。他們有兩臺Cray超級計算機(jī),通過HiPPI連接(高性能并行接口,800MB),而且他們還由一個FDDI(光纖式分布數(shù)據(jù)接口,100Mb)。你可能會疑惑,為什么HiPPI的速度不是FDDI的八倍,而是只高出10%呢。他們問,為什么他們花了這么多錢來部署HiPPI,結(jié)果卻只得到10%的性能提升。我不能給出很好的答案。當(dāng)然,HiPPI上ftp和rcp的運行要更快。這趟訪問的唯一一個好處就是我去了德國,因為我不能給客戶以滿意的答復(fù)。在當(dāng)時,NFS甚至在高速網(wǎng)絡(luò)上也運行不快。NFS做了一些細(xì)微的調(diào)整,使得它在1Gb以太網(wǎng)上也能夠被接受,但是它還是不能達(dá)到網(wǎng)絡(luò)的速度。轉(zhuǎn)眼過去15年,我們馬上就要進(jìn)入商品高速網(wǎng)絡(luò)時代,如10GB以太網(wǎng),但是目前版本的NFS還是不能勝任。下面是對NFS問題的描述:
"客戶對存儲I/O帶寬的要求的增長遠(yuǎn)遠(yuǎn)快于網(wǎng)絡(luò)文件服務(wù)器所能提供的能力。當(dāng)我們在NFS協(xié)議上進(jìn)行安裝時,就會越來越多的遇到這種問題。這個問題可以通過提高服務(wù)器帶寬的方式來解決。這個草案建議對NFS文件服務(wù)進(jìn)行改進(jìn),讓NFS文件服務(wù)能夠隨客戶群擴(kuò)展而擴(kuò)展。建議的方法就是通過并行化文件服務(wù),將所有可能的帶寬都集中到一個單一的文件系統(tǒng)上,這樣的結(jié)果就是多個網(wǎng)絡(luò)連接到多個要求數(shù)據(jù)傳輸?shù)姆?wù)器終端。我們要在NFS架構(gòu)內(nèi)部實現(xiàn)這種方式,比如通過一個NFSv4協(xié)議的次版本"。
顯然,IETF的這個聲明顯示它理解NFS目前的局限,并正努力解決它們。幾乎所有的主要廠商都介入到了NFSv4.1(pNFS)的制訂,包括但不限于,EMC、IBM、NetApp、Sun,當(dāng)然還有Linux社團(tuán)。甚至還有一些網(wǎng)路傳言說,微軟正準(zhǔn)備在未來的Windows版本中考慮NFSv4.1。我對此持懷疑態(tài)度。
NFSv4.1的局限
和有些人想的相反,NFS是一個協(xié)議,而不是文件系統(tǒng)。NFS允許通用的外部接口進(jìn)入文件系統(tǒng)。即使它的名字是這樣,它也不是一個文件系統(tǒng)。這也就是說你要受到底層文件系統(tǒng)性能的約束。例如,如果微軟將NFSv4.1納入未來某個版本的Windows系統(tǒng),而你的攝像頭連接是在10Gb以太網(wǎng)上,但是這并不是說你可以通過FAT32文件系統(tǒng)在你舊的計算機(jī)上以1GB/秒的速度導(dǎo)出數(shù)據(jù)。這里有很多限制。
事實是,在這里,我們的媒介不能以1Gb/s的速率傳輸數(shù)據(jù),更重要的是,你受制于文件系統(tǒng)的性能。即時你擁有能夠以1Gb/s速率傳輸數(shù)據(jù)的媒介,鑒于目前的數(shù)據(jù)格式,F(xiàn)AT32文件系統(tǒng)也不可能支持這種數(shù)據(jù)速率。
我相信NFSv4.1會使很多文件系統(tǒng)相形見絀。現(xiàn)在,這些NFS文件系統(tǒng)可以借口說它們被目前的NFS性能局限所限制,這可能是實情,但是未來就不是如此了。我一直在嘗試的一件事情就是在一臺本地NFS文件服務(wù)器設(shè)備上運行性能測試,以測試我的讀寫速度究竟能有多快。然后我會觀察底層硬件,并判斷性能瓶頸是出在文件系統(tǒng)還是硬件上。在這些時間里,我發(fā)現(xiàn),更經(jīng)常的是,性能瓶頸是在文件系統(tǒng)上而不是硬件上。由于目前的NFS協(xié)議有局限,而10Gb以太網(wǎng)則沒有,因此,在NFS上連接到服務(wù)器的文件系統(tǒng)可以將性能問題歸咎于協(xié)議,但是這種日子將很快過去。
作為一名悲觀論者,我的看法是一些廠商將選擇不支持NFSv4.1和10Gb以太網(wǎng),直到它們能夠讓它們的文件系統(tǒng)能夠和NFSv4.1及10Gb以太網(wǎng)完美配合,使數(shù)據(jù)傳輸達(dá)到網(wǎng)絡(luò)的速度。沒有一個廠商會希望讓自己看起來很糟糕得。擁有高性能文件系統(tǒng)的那些廠商(我們都知道他們它們是誰)可能是最先支持NFSv4.1的廠商。因為你總是被數(shù)據(jù)通道中最慢的組件所約束,因此那些文件系統(tǒng)不支持高性能數(shù)據(jù)傳輸?shù)膹S商也可能不支持NFSv4.1。在未來幾年中觀察NFS4.1的進(jìn)展是一件非常有意思的事情,特別是如果你理解廠商之所以這么做的原因的話。