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

光盤鏡像服務器/客戶機的兩級Cache系統(tǒng)的制作方法

文檔序號:6359997閱讀:357來源:國知局
專利名稱:光盤鏡像服務器/客戶機的兩級Cache系統(tǒng)的制作方法
技術領域
本發(fā)明涉及網(wǎng)絡存儲領域,具體是指光盤鏡像服務器/客戶機的兩級Cache系統(tǒng)。
2、在進行網(wǎng)絡傳輸時,客戶端發(fā)出網(wǎng)絡請求后,操作系統(tǒng)一般采用查詢的方式,檢查請求是否返回,如果請求返回慢,勢必會影響數(shù)據(jù)傳輸率。
3、如果客戶端的訪問大量增加,在服務器端取數(shù)據(jù)時也會形成瓶頸,從而影響數(shù)據(jù)的傳輸。
本發(fā)明的光盤鏡像服務器/客戶機的兩級Cache系統(tǒng),其特征在于,該系統(tǒng)采用兩級Cache結構;在客戶端設置一個自適應的Cache和預取線程模塊,該模塊通過客戶端請求接口接收來自操作系統(tǒng)的請求,并進行如下處理(1)接收操作系統(tǒng)的請求;(2)在Cache中查詢該請求是否命中;如果命中則返回請求數(shù)據(jù)給操作系統(tǒng),進入(1);如果未命中則轉(3);(3)向網(wǎng)絡發(fā)送預取數(shù)據(jù)請求,預取數(shù)據(jù)塊的大小根據(jù)前面的請求的命中情況確定如果前面的請求連續(xù)命中,假設連續(xù)命中n次,則預取數(shù)據(jù)塊的大小為B*(n+1),如果預取占用的Cache超過A時,預取的數(shù)據(jù)塊大小為A;如果未命中,則預取數(shù)據(jù)塊的大小為B*2;其中B為操作系統(tǒng)請求的大小,A為客戶端的Cache的大??;(4)返回請求數(shù)據(jù)給操作系統(tǒng),進入(1);在服務器端設置一個以大塊數(shù)據(jù)為單位進行組織的Cache,及相應的光盤流服務模塊,該服務模塊接收客戶端的請求并進行以下處理(1)服務器端從網(wǎng)絡中接收請求;(2)在Cache中查詢該請求是否命中;如果命中,通過網(wǎng)絡返回請求數(shù)據(jù);否則,從磁盤中取包含預取數(shù)據(jù)在內的相應請求的數(shù)據(jù),然后通過網(wǎng)絡返回請求數(shù)據(jù)。
光盤作為一種存儲介質,它具有下述不同于磁盤的特性,本發(fā)明正是根據(jù)光盤的這些特性提出來的。
第一,一張光盤可以看成一個獨立的存儲單位,它的容量比較大,而且它所存放的文件都是順序的,不存在磁盤碎片現(xiàn)象。
第二,把一張光盤作為一個文件鏡像在磁盤上時,它在物理上的存放一般也是連續(xù)的,因為作為鏡像服務器的磁盤肯定不是碎片很多的磁盤。
第三,用戶在使用光盤時,一般都是讀取連續(xù)的數(shù)據(jù)。
通過對采用兩級Cache的光盤鏡像服務器系統(tǒng)進行測試,在請求數(shù)據(jù)連續(xù)的情況下,整個系統(tǒng)的性能有很大的提高。我們在100M的局域網(wǎng)內測試了使用不同請求塊大小的順序請求的數(shù)據(jù)傳輸率,結果證明采用兩級Cache系統(tǒng)的數(shù)據(jù)傳輸率與請求塊的大小基本上沒有關系,即在任何請求塊大小的情況下,數(shù)據(jù)傳輸率都很高。同時,我們還測試了網(wǎng)上鄰居的順序讀請求的數(shù)據(jù)傳輸率,結果顯示,采用本發(fā)明的系統(tǒng)數(shù)據(jù)傳輸率要大大高于網(wǎng)上鄰居的數(shù)據(jù)傳輸率。上述結果如圖4所示。


圖1所示,本發(fā)明采用兩級Cache結構由主Cache(服務器端Cache)1和客戶端Cache2組成。主Cache1對所有的客戶端有效,是一個大的Cache,可提高服務器的數(shù)據(jù)讀取速度。客戶端Cache2只對本客戶端有效??蛻舳丝梢栽谌魏蔚胤剑ㄟ^Internet訪問服務器端。它是一個自適應的Cache,通過預取機制增大一次網(wǎng)絡請求的大小,以提高網(wǎng)絡數(shù)據(jù)傳輸效率,其中預取由專用的線程來完成,不需要操作系統(tǒng)來觸發(fā)。
客戶端Cache2主要是為了提高網(wǎng)絡數(shù)據(jù)傳輸率以及對操作系統(tǒng)請求的響應速率。在客戶端對光盤鏡像服務器的請求一般是大塊且連續(xù)的,客戶端Cache根據(jù)這一特點,采用了一種自適應的預取算法,即根據(jù)開始的請求和以后的命中率確定預取塊的大小。因為客戶端Cache只為一個用戶服務,所以客戶端的Cache不需要很大(一般設為2M),循環(huán)使用??蛻舳送ㄟ^客戶端程序接口接收來自操作系統(tǒng)的請求,然后再通過一個預取線程從服務器端讀取數(shù)據(jù),其具體步驟如下(其中操作系統(tǒng)請求的大小一般設為32K)(1)接收操作系統(tǒng)的請求(2)在Cache中查詢該請求是否命中;如果命中則返回請求數(shù)據(jù)給操作系統(tǒng),進入(1);如果未命中則轉(3)(3)向網(wǎng)絡發(fā)預取數(shù)據(jù)請求,預取數(shù)據(jù)塊的大小根據(jù)前面的請求的命中情況確定。如果前面的請求連續(xù)命中,假設連續(xù)命中n次,則預取數(shù)據(jù)塊的大小為32*(n+1)K,如果預取占用的Cache超過2M時,預取的數(shù)據(jù)塊大小為2M;如果未命中則預取數(shù)據(jù)塊的大小為64K。
(4)返回請求數(shù)據(jù)給操作系統(tǒng),進入(1)。
服務器端Cache容量較大,以大塊數(shù)據(jù)為單位進行組織,通過每次從磁盤上讀取大塊數(shù)據(jù)加快讀數(shù)據(jù)的速度;同時,請求在Cache中命中又可以加快請求響應的速度。服務器端Cache的容量根據(jù)服務器的配置和所服務的客戶端的數(shù)量確定,容量越大,其效果越好;服務器端Cache的數(shù)據(jù)單位是Cache從磁盤中取數(shù)據(jù)的基本單位,根據(jù)鏡像光盤的類型確定,一般取30K字節(jié)。服務器端通過光盤鏡像服務器端的光盤流服務模塊,接收客戶端的請求并進行處理,其請求的具體處理過程如下(1)服務器端從網(wǎng)絡中接收請求;(2)在Cache中查詢該請求是否命中;如果命中,通過網(wǎng)絡返回請求數(shù)據(jù);否則,從磁盤中取相應請求的數(shù)據(jù)(含預取數(shù)據(jù))然后通過網(wǎng)絡返回請求數(shù)據(jù)。
由于本發(fā)明充分利用了光盤鏡像及網(wǎng)絡傳輸?shù)奶攸c以及Cache的局部性原理,在實際應用中能夠大大提高系統(tǒng)效率。
如圖2所示,客戶端的用戶需要讀取光盤鏡像文件,首先是通過操作系統(tǒng)向客戶端請求接口發(fā)讀數(shù)據(jù)請求,這時啟動客戶端的預取線程。預取線程根據(jù)上面提到的四個步驟開始通過網(wǎng)絡發(fā)送請求到服務器端。服務器端的光盤流服務模塊接收客戶端發(fā)送來的請求,然后進行處理。
圖3中,Cache中當前命中的部分和它后面的預取部分是有效的數(shù)據(jù);前面的請求命中的部分和還未使用的內存部分都視為空白區(qū),可以存放后面預取的數(shù)據(jù)。當Cache占用達到Cache內存區(qū)的尾端時,又轉到其始端。
我們在100M的局域網(wǎng)內進行了以下三個方面的數(shù)據(jù)測試(1)Windows所提供的網(wǎng)上鄰居的順序讀的數(shù)據(jù)傳輸率;(2)本系統(tǒng)順序讀的數(shù)據(jù)傳輸率;(3)本系統(tǒng)去掉客戶端Cache后順序讀的數(shù)據(jù)傳輸率。測試分別采用不同的數(shù)據(jù)塊大小進行。其結果如圖4所示。
權利要求
1.光盤鏡像服務器/客戶機的兩級Cache系統(tǒng),其特征在于,該系統(tǒng)采用兩級Cache結構;在客戶端設置一個自適應的Cache和預取線程模塊,該模塊通過客戶端請求接口接收來自操作系統(tǒng)的請求,并進行如下處理(1)接收操作系統(tǒng)的請求;(2)在Cache中查詢該請求是否命中;如果命中則返回請求數(shù)據(jù)給操作系統(tǒng),進入(1);如果未命中則轉(3);(3)向網(wǎng)絡發(fā)送預取數(shù)據(jù)請求,預取數(shù)據(jù)塊的大小根據(jù)前面的請求的命中情況確定如果前面的請求連續(xù)命中,假設連續(xù)命中n次,則預取數(shù)據(jù)塊的大小為B*(n+1),如果預取占用的Cache超過A時,預取的數(shù)據(jù)塊大小為A;如果未命中,則預取數(shù)據(jù)塊的大小為B*2;其中B為操作系統(tǒng)請求的大小,A為客戶端的Cache的大小;(4)返回請求數(shù)據(jù)給操作系統(tǒng),進入(1);在服務器端設置一個以大塊數(shù)據(jù)為單位進行組織的Cache,及相應的光盤流服務模塊,該服務模塊接收客戶端的請求并進行以下處理(1)服務器端從網(wǎng)絡中接收請求;(2)在Cache中查詢該請求是否命中;如果命中,通過網(wǎng)絡返回請求數(shù)據(jù);否則,從磁盤中取包含預取數(shù)據(jù)在內的相應請求的數(shù)據(jù),然后通過網(wǎng)絡返回請求數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種光盤鏡像服務器/客戶機的兩級Cache系統(tǒng),該系統(tǒng)采用兩級Cache結構;在客戶端設置一個自適應的Cache和預取線程模塊,該模塊通過客戶端請求接口接收來自操作系統(tǒng)的請求,并進行相應處理;在服務器端設置一個以大塊數(shù)據(jù)為單位進行組織的Cache,及相應的光盤流服務模塊,該服務模塊接收客戶端的請求并以下處理(1)服務器端從網(wǎng)絡中接收請求;(2)在Cache中查詢該請求是否命中;如果命中,通過網(wǎng)絡返回請求數(shù)據(jù);否則,從磁盤中取相應請求的數(shù)據(jù),再通過網(wǎng)絡返回請求數(shù)據(jù)。測試表明這種兩級Cache系統(tǒng)的數(shù)據(jù)傳輸率與請求塊的大小基本上沒有關系,即在任何請求塊大小的情況下,數(shù)據(jù)傳輸率都很高;并且采用本系統(tǒng)的數(shù)據(jù)傳輸率要大大高于網(wǎng)上鄰居的數(shù)據(jù)傳輸率。
文檔編號G06F12/08GK1453710SQ0312802
公開日2003年11月5日 申請日期2003年5月23日 優(yōu)先權日2003年5月23日
發(fā)明者謝長生, 譚志虎, 易法令, 萬繼光, 魯修卓, 任勁 申請人:華中科技大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1