亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于分布式虛擬機管理器的分布式cache系統(tǒng)及其工作方法

文檔序號:6484058閱讀:173來源:國知局
專利名稱:基于分布式虛擬機管理器的分布式cache系統(tǒng)及其工作方法
技術(shù)領(lǐng)域
本發(fā)明涉及分布式虛擬機管理器,尤其涉及基于分布式虛擬機管理器的 分布式cache (高速緩沖存儲器)系統(tǒng)及其工作方法。
背景技術(shù)
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,單個機器上的內(nèi)存己經(jīng)越來越不能夠滿足請求的 內(nèi)存需求,特別是對cache而言,內(nèi)存空間嚴重不足。在這種情況下,基于 分布式哈希表(DHT)的cache策略成為了 cache的主流,這樣,更多的用 戶都可以訪問存儲于地理分布的站點上的大量信息。
DHT是從對等網(wǎng)絡(luò)(Peer-to-Peer,簡稱P2P)的研究中引入的。P2P技術(shù) 把網(wǎng)絡(luò)中不同的計算機連接在一起,并可以充分利用互聯(lián)網(wǎng)和Web站點中任 何地方的資源。P2P系統(tǒng)具有自治性、分布性和動態(tài)性,具有自組織、容錯 性好、可擴展性強等優(yōu)點,但其存在的問題是如何在沒有集中管理機制的 情況下實現(xiàn)系統(tǒng)的自組織和自管理?
在結(jié)構(gòu)化P2P系統(tǒng)解決了這個問題,每個節(jié)點只存儲特定的信息或特定 信息的索引。當(dāng)用戶需要在P2P系統(tǒng)中獲取信息時,他們必須知道這些信息 (或索引)可能存在于哪些節(jié)點中。由于用戶預(yù)先知道應(yīng)該搜索哪些節(jié)點,避 免了非結(jié)構(gòu)化P2P系統(tǒng)中使用的泛洪式查找,因此提高了信息搜索的效率。
但是,結(jié)構(gòu)化P2P也引入了新的問題
1、 既然信息是分布存儲的,那么如何將信息分布存儲在重疊網(wǎng)中的節(jié)點
上?
2、 由于節(jié)點動態(tài)的加入和離開重疊網(wǎng),如何將拓撲的變更信息通知其它 節(jié)點?
分布式哈希表(DHT)的引入基本解決了上述問題,因此自從DHT協(xié) 議出現(xiàn)以后,結(jié)構(gòu)化P2P的應(yīng)用得到了快速的發(fā)展。目前已經(jīng)有很多較為成 熟的DHT協(xié)議被提出并且得到了應(yīng)用。DHT使用分布式哈希算法來解決結(jié)構(gòu)化的分布式存儲問題。其主要思想 是首先,每條文件索引被表示成一個(K, V)對,K稱為關(guān)鍵字,可以是文 件名(或文件的其他描述信息)的哈希值,V是實際存儲文件的節(jié)點的IP地 址(或節(jié)點的其他描述信息)。所有的文件索引條目(即所有的(K, V)對) 組成一張大的文件索引哈希表,只要輸入目標(biāo)文件的K值,就可以從這張表 中査出所有存儲該文件的節(jié)點地址。然后,再將上面的大文件哈希表分割成 很多局部小塊,按照特定的規(guī)則把這些小塊的局部哈希表分布到系統(tǒng)中的所 有參與節(jié)點上,使得每個節(jié)點負責(zé)維護其中的一塊。這樣,節(jié)點査詢文件時, 只要把查詢報文路由到相應(yīng)的節(jié)點即可(該節(jié)點維護的哈希表分塊中含有要 査找的(K, V)對)。這里面有個很重要的問題,就是節(jié)點要按照一定的規(guī)則 來分割整體的哈希表,進而也就決定了節(jié)點要維護特定的鄰居節(jié)點,以便路 由能順利進行。這個規(guī)則因具體系統(tǒng)的不同而不同,CAN, Chord, Pastry和 Tapestry都有自己的規(guī)則,也就呈現(xiàn)出不同的特性,有査找可確定性、簡單 性和分布性等優(yōu)點,正成為國際上結(jié)構(gòu)化P2P網(wǎng)絡(luò)研究和應(yīng)用的熱點。
DHT的應(yīng)用非常簡潔——API簡單到只有一項輸入和一項輸出應(yīng)用層 將數(shù)據(jù)對象(文件、數(shù)據(jù)塊或索引)通過哈希算法獲得鍵值,將該鍵值提交給 DHT后,返回結(jié)果就是鍵值所在節(jié)點的IP地址。
DHT的特征使得它被廣泛地運用到了 cache系統(tǒng)中,即將cache文件的 標(biāo)識(如文件路徑等)通過哈希算法映射到對應(yīng)的IP地址中,即構(gòu)建從文件 標(biāo)識到IP地址的cache索弓l 。
當(dāng)新的cache文件查詢請求進入系統(tǒng)時,其文件査找步驟如下
A、 通過哈希算法獲得鍵值;
B、 將該鍵值提交給DHT,從中得到鍵值所在節(jié)點的IP地址。如果文件 在本地,則直接從本地讀取文件;如果文件不在本地,則轉(zhuǎn)入步驟C;
C、 根據(jù)獲得的IP地址,請求所在機器與文件所在機器通信,取回請求 所需的文件至本地;
D、 將文件返回給請求。
這樣,采用DHT的cache系統(tǒng)在節(jié)點失效、遭受攻擊和突發(fā)性高負載面 前都能表現(xiàn)出很好的健壯性;它具有良好的可擴展性,能以較低系統(tǒng)開銷獲 得較大的系統(tǒng)規(guī)模。但是,其中也存在一些問題1、 應(yīng)用層需要到別的節(jié)點上去獲取文件信息,這就需要按照分布式哈希 表來與別的節(jié)點進行通信(很可能不止一跳),這就需要應(yīng)用層維護復(fù)雜的網(wǎng)
絡(luò)協(xié)議,并帶來大量的網(wǎng)絡(luò)開銷;
2、 不同的節(jié)點可能分布在不同的網(wǎng)絡(luò)中,因此在信息傳輸過程中容易加 速病毒的傳播。

發(fā)明內(nèi)容
為了解決上述的技術(shù)問題,提供了基于分布式虛擬機管理器的分布式 cache系統(tǒng)及其工作方法,其目的在于,解決現(xiàn)有基于DHT的分布式cache 系統(tǒng)中應(yīng)用層需維護復(fù)雜網(wǎng)絡(luò)協(xié)議,以及通信過程中的病毒傳播問題。
本發(fā)明提供了一種基于分布式虛擬機管理器的分布式cache系統(tǒng),包括 用于依據(jù)cache請求進行査詢的虛擬機,分布式虛擬機管理器,本地的內(nèi)存 塊,以及遠程機器上的內(nèi)存塊;
所述虛擬機,用于根據(jù)cache請求中的信息査詢相應(yīng)的內(nèi)存塊;如果該 內(nèi)存塊是本地的內(nèi)存塊,所述虛擬機直接取出內(nèi)存塊的內(nèi)容并返回給該cache 請求;
分布式虛擬機管理器,用于在所述相應(yīng)的內(nèi)存塊是遠程機器上的內(nèi)存塊 時,將該遠程機器上的內(nèi)存塊調(diào)回本地,并將該內(nèi)存塊的內(nèi)容返回給該cache 請求。
所述虛擬機保存一個全局的cache請求索引,根據(jù)cache請求索引與虛 擬地址空間之間的映射關(guān)系以及cache請求中的信息查詢相應(yīng)的虛擬地址空 間,并根據(jù)虛擬地址空間與內(nèi)存塊之間的映射關(guān)系以及查詢到的虛擬地址空 間査詢相應(yīng)的內(nèi)存塊。
所述cache請求中的信息為URL。
cache請求中的信息與虛擬地址之間的映射關(guān)系保存在虛擬機上的元數(shù) 據(jù)表中;虛擬地址空間與內(nèi)存塊之間的映射關(guān)系保存在分布式虛擬機管理器 上的元數(shù)據(jù)表中。
分布式虛擬機管理器,還用于在將遠程機器上的內(nèi)存塊調(diào)回本地時,將 符合預(yù)設(shè)條件的本地的內(nèi)存塊替換到遠程主機,并改變虛擬地址空間與內(nèi)存 塊之間的映射關(guān)系。本發(fā)明提供了一種基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作 方法,包括
步驟1,虛擬機根據(jù)cache請求中的信息査詢相應(yīng)的內(nèi)存塊; 步驟2,如果該內(nèi)存塊是本地的內(nèi)存塊,所述虛擬機直接取出內(nèi)存塊的 內(nèi)容并返回給該cache請求;如果該內(nèi)存塊是遠程機器上的內(nèi)存塊,分布式 虛擬機管理器將該遠程機器上的內(nèi)存塊調(diào)回本地,并將該遠程機器上的內(nèi)存 塊的內(nèi)容返回給該cache請求。 步驟1包括
步驟101,所述虛擬機保存一個全局的cache請求索引;
步驟102,根據(jù)cache請求索引與虛擬地址空間之間的映射關(guān)系以及 cache請求中的信息査詢相應(yīng)的虛擬地址空間;
步驟103,根據(jù)虛擬地址空間與內(nèi)存塊之間的映射關(guān)系以及査詢到的虛 擬地址空間查詢相應(yīng)的內(nèi)存塊。
所述cache請求中的信息為URL。
步驟102中,cache請求中的信息與虛擬地址之間的映射關(guān)系保存在虛 擬機上的元數(shù)據(jù)表中;虛擬地址空間與內(nèi)存塊之間的映射關(guān)系保存在分布式 虛擬機管理器上的元數(shù)據(jù)表中。
步驟2中,在將遠程機器上的內(nèi)存塊調(diào)回本地時,分布式虛擬機管理器 將符合預(yù)設(shè)條件的本地的內(nèi)存塊替換到遠程主機,并改變虛擬地址空間與內(nèi) 存塊之間的映射關(guān)系。
本發(fā)明提供的基于分布式虛擬機管理器的分布式cache系統(tǒng)及方法,由 于遠程內(nèi)存塊的取回和調(diào)出完全由DVMM控制,且與應(yīng)用層的數(shù)據(jù)通路不 同,這個過程對應(yīng)用層來說是完全透明的;無論所請求的內(nèi)存塊在本地還是 遠程,在應(yīng)用層看來都是在本地進行的;因此應(yīng)用層不用再維護復(fù)雜的網(wǎng)絡(luò) 協(xié)議,不用耗費大量的通信開銷,不用再去考慮不同網(wǎng)絡(luò)間的病毒傳播問題, 因而應(yīng)用層會更加安全和可靠。進一步地,本發(fā)明還采用元數(shù)據(jù)表,由DVMM 構(gòu)造了一個統(tǒng)一的全局地址空間,負責(zé)對全局的內(nèi)存資源進行流動,用于 cache的存儲、査找和替換,從而進一步簡化應(yīng)用層的維護工作。


圖1是基于分布式虛擬機管理器的分布式cache系統(tǒng)結(jié)構(gòu)圖2是基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作方法。
具體實施例方式
下面結(jié)合附圖,對本發(fā)明做進一步的詳細描述。
DVMM (分布式虛擬機管理器Distributed Virtual Machine Manager)是
新型網(wǎng)絡(luò)服務(wù)器的基礎(chǔ),提供分布資源如CPU、內(nèi)存、磁盤、網(wǎng)卡等部件的 虛擬化,建立統(tǒng)一的資源空間,創(chuàng)建和管理虛擬機,為服務(wù)器提供虛擬的服 務(wù)節(jié)點——DVM (分布式虛擬機Distributed Virtual Machine)。從而實現(xiàn)計 算資源在部件級的虛擬化,進而實現(xiàn)資源和能力在虛擬機間的流動、在服務(wù) 器內(nèi)的流動。對于基于DVMM的cache系統(tǒng)而言,DVMM位于操作系統(tǒng)之 下,硬件之上,提供統(tǒng)一的全局地址空間,負責(zé)對全局的內(nèi)存資源進行流動, 用于cache的存儲、査找和替換。
在一個系統(tǒng)中,有一個虛擬機專門負責(zé)cache的査詢。盡管內(nèi)存還分布 在系統(tǒng)中其它機器上,但是對該虛擬機的應(yīng)用層而言,它看到的是本地的一 個連續(xù)的大的內(nèi)存塊,這個內(nèi)存塊中包括了所有機器上內(nèi)存的內(nèi)容。
這個虛擬機上有一個元數(shù)據(jù)表(metadata),元數(shù)據(jù)表中存在一個映射 是一個全局cache索引,將請求的信息(如URL,即統(tǒng)一資源定位符)映射 到一個虛擬地址空間。DVMM中也存在一個元數(shù)據(jù)表,元數(shù)據(jù)表中也存在一 個映射是從虛擬地址空間到本地或者遠程內(nèi)存塊的映射。
若該內(nèi)存塊在本地,則直接取出內(nèi)存塊的內(nèi)容并返回給請求;若該內(nèi)存 塊在遠程,則由DVMM負責(zé)將所請求的遠程內(nèi)存塊調(diào)回本地,并將本地使 用頻率低的內(nèi)存塊替換到遠程,改變虛擬地址空間與內(nèi)存塊的映射,并將所 請求的內(nèi)存塊內(nèi)容返回給請求。需要強調(diào)的是,DVMM替換本地和遠程內(nèi)存 塊的數(shù)據(jù)通路,和應(yīng)用層的數(shù)據(jù)通路是不同的。
對應(yīng)用層而言,由于獲得遠程內(nèi)存塊的過程完全由DVMM完成,且數(shù) 據(jù)通路不同,因此,這個過程對應(yīng)用層來說是完全透明的。無論所請求的內(nèi) 存塊在本地還是遠程,在應(yīng)用層看來都是在本地進行的。
圖1為基于分布式虛擬機管理器的分布式cache系統(tǒng)結(jié)構(gòu)圖。如圖1所示,圖中有一個專門負責(zé)cache查詢的虛擬機,該機器上有兩 個映射 一是一個全局cache索引,將請求的信息(如文件路徑)映射到一 個虛擬地址空間,二是從虛擬地址空間到本地或者遠程內(nèi)存塊的映射。
DVMM位于OS之下,硬件之上。其作用是當(dāng)應(yīng)用層讀取Cache時, 若對應(yīng)的內(nèi)存塊在遠程,則DVMM負責(zé)將遠程文件調(diào)度到本地,將本地的 使用頻率較低的內(nèi)存塊替換到遠程,隨后重新建立從虛擬地址空間到內(nèi)存塊 的映射。對于應(yīng)用層來說,這個過程是完全透明的,不管是本地還是遠程, 就像是只有一級Cache,且都在本地一樣。
圖中其它的遠程機器上不能進行cache査詢,它們只提供內(nèi)存資源。
當(dāng)負責(zé)cache査詢的機器收到一個cache請求時,如圖2所示,其具體 實施方式如下
步驟ll,根據(jù)請求信息(如文件路徑)査詢cache索引,映射到虛擬地 址空間;
步驟12,查找虛擬地址空間到內(nèi)存塊的映射,找到對應(yīng)的內(nèi)存塊;
步驟13,判斷所查找的內(nèi)存塊是否在本地,如果是則執(zhí)行步驟14,否則
執(zhí)行步驟15;
步驟14,將所請求的內(nèi)容返回給請求;
步驟15, DVMM到遠程取回內(nèi)存塊到本地,同時選出本地使用頻率不 高的內(nèi)存塊,將其替換到取出內(nèi)存塊的遠程機器;
步驟16,改變以上內(nèi)存塊對應(yīng)的從虛擬地址空間到內(nèi)存塊的映射; 步驟17,將請求所査找的內(nèi)容返回給請求。
其中,DVMM取回和替換出文件的數(shù)據(jù)通路,與應(yīng)用層的數(shù)據(jù)通路不同。 這樣,對于應(yīng)用層的cache查找請求而言,不論所査找的文件是在本地還是 在遠程,都像是在文件在本地一樣,可以直接獲得文件。也就是說,DVMM 從遠程取回文件的過程,對于應(yīng)用層來說是完全透明的。
本領(lǐng)域的技術(shù)人員在不脫離權(quán)利要求書確定的本發(fā)明的精神和范圍的條 件下,還可以對以上內(nèi)容進行各種各樣的修改。因此本發(fā)明的范圍并不僅限 于以上的說明,而是由權(quán)利要求書的范圍來確定的。
權(quán)利要求
1. 一種基于分布式虛擬機管理器的分布式cache系統(tǒng),其特征在于,包括用于依據(jù)cache請求進行查詢的虛擬機,分布式虛擬機管理器,本地的內(nèi)存塊,以及遠程機器上的內(nèi)存塊;所述虛擬機,用于根據(jù)cache請求中的信息查詢相應(yīng)的內(nèi)存塊;如果該內(nèi)存塊是本地的內(nèi)存塊,所述虛擬機直接取出內(nèi)存塊的內(nèi)容并返回給該cache請求;分布式虛擬機管理器,用于在所述相應(yīng)的內(nèi)存塊是遠程機器上的內(nèi)存塊時,將該遠程機器上的內(nèi)存塊調(diào)回本地,并將該內(nèi)存塊的內(nèi)容返回給該cache請求。
2.如權(quán)利要求1所述的基于分布式虛擬機管理器的分布式cache系統(tǒng),其特征在于,所述虛擬機保存一個全局的cache請求索引,根據(jù)cache請求索引與虛擬地址空間之間的映射關(guān)系以及cache請求中的信息査詢相應(yīng)的虛擬地址空間,并根據(jù)虛擬地址空間與內(nèi)存塊之間的映射關(guān)系以及查詢到的虛擬地址空間査詢相應(yīng)的內(nèi)存塊。
3. 如權(quán)利要求1所述的基于分布式虛擬機管理器的分布式cache系統(tǒng),其特征在于,所述cache請求中的信息為URL。
4. 如權(quán)利要求2所述的基于分布式虛擬機管理器的分布式cache系統(tǒng),其特征在于,cache請求中的信息與虛擬地址之間的映射關(guān)系保存在虛擬機上的元數(shù)據(jù)表中;虛擬地址空間與內(nèi)存塊之間的映射關(guān)系保存在分布式虛擬機管理器上的元數(shù)據(jù)表中。
5. 如權(quán)利要求2所述的基于分布式虛擬機管理器的分布式cache系統(tǒng),其特征在于,分布式虛擬機管理器,還用于在將遠程機器上的內(nèi)存塊調(diào)回本地時,將符合預(yù)設(shè)條件的本地的內(nèi)存塊替換到遠程主機,并改變虛擬地址空間與內(nèi)存塊之間的映射關(guān)系。
6. —種基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作方法,其特征在于,包括步驟1,虛擬機根據(jù)cache請求中的信息査詢相應(yīng)的內(nèi)存塊;步驟2,如果該內(nèi)存塊是本地的內(nèi)存塊,所述虛擬機直接取出內(nèi)存塊的內(nèi)容并返回給該cache請求;如果該內(nèi)存塊是遠程機器上的內(nèi)存塊,分布式虛擬機管理器將該遠程機器上的內(nèi)存塊調(diào)回本地,并將該遠程機器上的內(nèi)存塊的內(nèi)容返回給該cache請求。
7. 如權(quán)利要求6所述的基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作方法,其特征在于,步驟1包括步驟101,所述虛擬機保存一個全局的cache請求索引;步驟102,根據(jù)cache請求索引與虛擬地址空間之間的映射關(guān)系以及cache請求中的信息查詢相應(yīng)的虛擬地址空間;步驟103,根據(jù)虛擬地址空間與內(nèi)存塊之間的映射關(guān)系以及査詢到的虛擬地址空間查詢相應(yīng)的內(nèi)存塊。
8. 如權(quán)利要求6所述的基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作方法,其特征在于,所述cache請求中的信息為URL。
9. 如權(quán)利要求7所述的基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作方法,其特征在于,步驟102中,cache請求中的信息與虛擬地址之間的映射關(guān)系保存在虛擬機上的元數(shù)據(jù)表中;虛擬地址空間與內(nèi)存塊之間的映射關(guān)系保存在分布式虛擬機管理器上的元數(shù)據(jù)表中。
10. 如權(quán)利要求7所述的基于分布式虛擬機管理器的分布式cache系統(tǒng)的工作方法,其特征在于,步驟2中,在將遠程機器上的內(nèi)存塊調(diào)回本地時,分布式虛擬機管理器將符合預(yù)設(shè)條件的本地的內(nèi)存塊替換到遠程主機,并改變虛擬地址空間與內(nèi)存塊之間的映射關(guān)系。
全文摘要
本發(fā)明涉及基于分布式虛擬機管理器的分布式cache系統(tǒng)及其工作方法。該系統(tǒng)包括用于依據(jù)cache請求進行查詢的虛擬機,分布式虛擬機管理器,本地的內(nèi)存塊,以及遠程機器上的內(nèi)存塊;所述虛擬機,用于根據(jù)cache請求中的信息查詢相應(yīng)的內(nèi)存塊;如果該內(nèi)存塊是本地的內(nèi)存塊,所述虛擬機直接取出內(nèi)存塊的內(nèi)容并返回給該cache請求;分布式虛擬機管理器,用于在所述相應(yīng)的內(nèi)存塊是遠程機器上的內(nèi)存塊時,將該遠程機器上的內(nèi)存塊調(diào)回本地,并將該內(nèi)存塊的內(nèi)容返回給該cache請求。本發(fā)明和以前DHT應(yīng)用相比,應(yīng)用層不用再維護復(fù)雜的網(wǎng)絡(luò)協(xié)議,不用耗費大量的通信開銷,不用再去考慮不同網(wǎng)絡(luò)間的病毒傳播問題,因而應(yīng)用層會更加安全和可靠。
文檔編號G06F17/30GK101510144SQ20091008018
公開日2009年8月19日 申請日期2009年3月24日 優(yōu)先權(quán)日2009年3月24日
發(fā)明者孫毓忠, 張玉放, 李亞瓊, 王若倪 申請人:中國科學(xué)院計算技術(shù)研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1