張敏 涂曉東
電子科技大學(xué)通信學(xué)院 四川 611731
現(xiàn)在比較好的存儲管理方式是網(wǎng)絡(luò)存儲,企業(yè)將數(shù)據(jù)外包給外部的存儲服務(wù)提供商(Storage Service Provider,SSP)進(jìn)行存儲和管理,這種模式更像是Email或者Web主機服務(wù)。在這個模型下,將他們的數(shù)據(jù)存儲在由SSP管理的遠(yuǎn)方站點,并通過高速網(wǎng)絡(luò)(公網(wǎng)或私網(wǎng))接入。這就是外包存儲。
外包存儲可以通過多種方式作為一種服務(wù)存在,每種模型都有各自的優(yōu)點和缺點。模型的設(shè)計點包括:數(shù)據(jù)和元數(shù)據(jù)的I/O路徑,集中還是分布式的訪問方式以及密鑰管理的復(fù)雜性等。
區(qū)分這兩種模型很重要。圖1和圖2分別為ASP模型和SSP模型的架構(gòu)。在SSP模型中,企業(yè)將數(shù)據(jù)外包給存儲服務(wù)提供商,如Amazon,Nirvanix等企業(yè)都提供這種存儲服務(wù),這就像一個網(wǎng)絡(luò)硬盤。而在ASP模型中,企業(yè)不僅將數(shù)據(jù)外包存儲,也將特定的應(yīng)用外包給服務(wù)提供者。企業(yè)用戶能夠通過網(wǎng)絡(luò)訪問這些應(yīng)用。像IBM, HP, Salesforce.com等企業(yè)都提供這種應(yīng)用托管服務(wù)。
ASP模型雖然能幫助企業(yè)卸下部署和管理數(shù)據(jù)業(yè)務(wù)中心的負(fù)擔(dān),然而,它有兩個主要的缺點:
(1)安全性
因為把應(yīng)用托管在服務(wù)提供者那里,數(shù)據(jù)就需要以明文存儲。這對許多旨在保護(hù)自身知識產(chǎn)權(quán)和內(nèi)部機密的企業(yè)來說是不可接受的。相反,SSP模型可以在SSP上存儲加密后的數(shù)據(jù),這樣就保證了數(shù)據(jù)的機密性。
(2)靈活性
通過將應(yīng)用外包給服務(wù)提供商,任何新定制的應(yīng)用服務(wù)都需要得到服務(wù)提供商的認(rèn)同才可以實施,協(xié)同合作限制了企業(yè)的靈活性。相反,在SSP模型中,應(yīng)用服務(wù)還是由企業(yè)自身站點來提供,從應(yīng)用角度看,SSP提供的外部環(huán)境同本地存儲環(huán)境是十分類似的。
這種服務(wù)模型采用一個單一的接入點——企業(yè)所有用戶通過一個代理服務(wù)器同SSP交互——將數(shù)據(jù)存儲到SSP或?qū)?shù)據(jù)從SSP取回。如圖3所示。為了實現(xiàn)數(shù)據(jù)的機密性,企業(yè)對將要存儲在 SSP的數(shù)據(jù)通過加密文件系統(tǒng)進(jìn)行加密/解密,而對企業(yè)內(nèi)部其他辦公地點的用戶的數(shù)據(jù)請求,則使用代理網(wǎng)關(guān)文件服務(wù)器處理。
企業(yè)要將自己在本地創(chuàng)建的存儲數(shù)據(jù)中心轉(zhuǎn)變成這種模型是非常容易的,只需要建立一個加密文件系統(tǒng),由此系統(tǒng)實現(xiàn)將數(shù)據(jù)存儲到SSP之前的所有數(shù)據(jù)的加密工作,相應(yīng)地,從SSP讀取數(shù)據(jù)時進(jìn)行解密。用戶與直接連通的網(wǎng)關(guān)文件服務(wù)器之間通過常用的協(xié)議如NFS或者CIFS交互。在這個模型中,保護(hù)數(shù)據(jù)的機密性是很容易的,密鑰管理也相當(dāng)簡單(實際上,所有的數(shù)據(jù)可以被一個單一密鑰加密,而這個惟一的密鑰只有企業(yè)加密文件系統(tǒng)才可以獲得)。同時,可由代理服務(wù)器執(zhí)行用戶的訪問控制工作。但是,這個模型卻有下面幾個不理想的性能:
(1)過于集中化:代理服務(wù)器模型采用了一個中央網(wǎng)關(guān),這個網(wǎng)關(guān)負(fù)責(zé)所有數(shù)據(jù)和元數(shù)據(jù)的I/O。這會引起I/O瓶頸,因而不適合大負(fù)荷的網(wǎng)絡(luò)環(huán)境(企業(yè))。如果這個代理服務(wù)器無法工作,則也就斷送了SSP的服務(wù)。
(2)額外的網(wǎng)絡(luò) hop:因為只有企業(yè)文件系統(tǒng)能直接訪問SSP的數(shù)據(jù),因此該企業(yè)其他辦公地點的其他用戶對文件的存取需要額外增加一個hop。這會反過來影響 I/O性能,盡管可以通過數(shù)據(jù)緩存技術(shù)減輕一些這樣的負(fù)擔(dān)。
(3)兩次密鑰操作:對于每一次的數(shù)據(jù)訪問,這個模型都需要兩次密鑰操作。例如,用戶要執(zhí)行一次讀操作,企業(yè)文件系統(tǒng)需先解密從 SSP取回的數(shù)據(jù)(因為只有企業(yè)文件系統(tǒng)知道密鑰),然后再將數(shù)據(jù)加密并通過網(wǎng)絡(luò)傳送給外地的用戶,到用戶那里后將會再進(jìn)行解密。如果允許用戶直接訪問SSP,后面額外的加密開銷將被避免。
(4)網(wǎng)關(guān)管理:這個模型中,企業(yè)對網(wǎng)關(guān)文件服務(wù)器的管理負(fù)責(zé),這同樣帶來管理上的花銷。
總之,這個模型更適用于企業(yè)數(shù)據(jù)的存取全發(fā)生在一個地點的企業(yè)。這樣,集中性和加密解密帶來的開銷將消除。
根據(jù)第一種模型的一些不理想特性,第二種外包模型分離了元數(shù)據(jù)和數(shù)據(jù)的I/O路徑,這樣可以減少第一種模型因為數(shù)據(jù)I/O過于集中而帶來的性能沖擊。這個模型中,如圖4,企業(yè)網(wǎng)關(guān)作為一個元數(shù)據(jù)服務(wù)器存在,只存儲并提供有關(guān)數(shù)據(jù)的信息而不存儲數(shù)據(jù)本身,像數(shù)據(jù)塊的地址和所取文件的加密密鑰等。而數(shù)據(jù)則直接從SSP處獲取。如今,類似的帶外文件系統(tǒng)正被使用,適用于客戶端的并行 NFS(pNFS)標(biāo)準(zhǔn)也已被開發(fā)。
這個模型的好處是消除了企業(yè)代理服務(wù)器模型引起的數(shù)據(jù)瓶頸問題。比較適合較大文件的存取訪問,原因是元數(shù)據(jù)I/O仍然采用集中化的方式實現(xiàn),尤其當(dāng)存取小文件時,需要對元數(shù)據(jù)進(jìn)行頻繁的讀取,這樣會影響元數(shù)據(jù)代理服務(wù)器的性能。第二,加密策略與先前的模型不同。因為客戶端直接從SSP處存取數(shù)據(jù),如果像第一個模型中那樣,所有文件采用同一密鑰,可是我們不能保證SSP可以替代企業(yè)執(zhí)行用戶訪問控制的工作,則用戶可以訪問自身權(quán)限以外的文件。因此,必須對每個文件用不同的密鑰加密,并且只有有權(quán)限訪問該文件的用戶才能從元數(shù)據(jù)服務(wù)器上獲取密鑰。這樣,將會有大量的密鑰去管理,而客戶端也必須完成加密/解密操作。除此之外,網(wǎng)關(guān)元數(shù)據(jù)服務(wù)器的管理仍然由企業(yè)來負(fù)責(zé)。
這個模型考慮客戶——企業(yè)和用戶從SSP直接存取數(shù)據(jù)的情況,如圖5。這排除了任何數(shù)據(jù)或元數(shù)據(jù)I/O瓶頸問題,對利用SSP進(jìn)行內(nèi)容分發(fā)服務(wù)來說是最合適不過了。當(dāng)然,這里不存在網(wǎng)關(guān)服務(wù)器管理問題。
類似于元數(shù)據(jù)代理服務(wù)器模型,因為用戶同SSP直接交互,而同時無法確保SSP一定會進(jìn)行訪問控制,因此每個文件需要用不同的密鑰加密。但是密鑰到用戶的分發(fā)不再采用集中的方式(從元數(shù)據(jù)服務(wù)器獲得)而是分布的方式。當(dāng)然也就省去了網(wǎng)關(guān)管理的麻煩。密鑰管理問題的方案可以使用公鑰加密方案,但性能較差。均衡加密方式相對而言是一種較好的方式。
這部分,我們總結(jié)各種不同的外包存儲模型。表1給出了三種不同模型的各個方面的不同點。
表1 各種模型性能比較
通過以上分析,我們發(fā)現(xiàn),如果一個企業(yè)通過服務(wù)器代理的方式集中化數(shù)據(jù)和元數(shù)據(jù)的 I/O,則性能和服務(wù)器管理的開銷仍然很大。而元數(shù)據(jù)代理模型降低了數(shù)據(jù)集中程度,但是元數(shù)據(jù)的請求仍然過于集中,這仍會對性能帶來一定的影響。而且,這兩種模型,都需要客戶端所在的企業(yè)對代理網(wǎng)關(guān)進(jìn)行管理,這將會成為單點故障。相比之下采用分布式服務(wù)模型,能更好地實現(xiàn)性能的優(yōu)化。另外,如果輔以有效的帶內(nèi)密鑰分發(fā)技術(shù),就可以同時減輕由此帶來的密鑰管理復(fù)雜性。雖然在I/O性能上第三種模型有非常明顯的優(yōu)越性,但是每種模型仍然有自己的適用范圍。如第一種模型適合用來將檔案資料等信息外包的企業(yè)。這類外包存儲的特點是用戶同交互不多,且基本是企業(yè)與SSP來交互。第二種模型更適用于現(xiàn)有的網(wǎng)絡(luò)環(huán)境,以Amazon S3為例,因為元數(shù)據(jù)中包含數(shù)據(jù)的各種信息,取數(shù)據(jù)之前必須從SSP上獲取相應(yīng)的元數(shù)據(jù),這反而帶來了更多的網(wǎng)絡(luò)開銷,從而直接影響了性能,因此將元數(shù)據(jù)存儲在企業(yè)內(nèi)部服務(wù)器上,通過企業(yè)內(nèi)部網(wǎng)絡(luò)更高效地訪問是一種比較好的選擇。分布式模型在未來具有更普遍的意義,但必須以高速的網(wǎng)絡(luò)環(huán)境和完善的密鑰管理為基礎(chǔ)。
隨著數(shù)據(jù)價值不斷提升以及存儲網(wǎng)絡(luò)化、網(wǎng)絡(luò)存儲外包服務(wù)化的不斷發(fā)展,企業(yè)必將選擇更適合自己的外包服務(wù)模型,在綜合考慮存儲系統(tǒng)的可實現(xiàn)性、性能和存儲安全性和開銷等方面后,保證數(shù)據(jù)能夠真正得到安全有效的外部存儲。在現(xiàn)有模型的框架下,除了基本的數(shù)據(jù)加密和密鑰管理之外,加入更可靠的完整性等安全方面的驗證,可滿足不同企業(yè)對性能、安全級別、價格等多種因素的不同需求,使現(xiàn)有的模型更加完善。
[1] Parallel NFS standardization.the IETF.2008.
[2] Eu-Jin Goh,Hovav Shacham,Nagendra Modadugu,Dan Boneh.Stanford Universitya.SiRiUS--Securing remote untrusted storage.NDSS.2003.
[3] Aameek Singh,Ling Liu,San Jose,Altanta,SHAROES:A Data Sharing Platform for Outsourced Enterprise Storage Environments.IEEE Int'l Conference on Data Engineering(ICDE).2008.
[4] https://s3.amazonaws.com/.
[5] John Chirillo,Scott Blaul.Storage Security Protecting SANs.NAS,and DAS.2004.