新四季網

虛擬光碟庫系統及虛擬光碟數據流網絡傳輸方法

2023-10-05 14:38:19

專利名稱:虛擬光碟庫系統及虛擬光碟數據流網絡傳輸方法
技術領域:
本發明涉及一種虛擬光碟庫系統,以及實現虛擬光碟庫光碟數據流網絡傳輸的傳輸方法。
背景技術:
光碟作為一種存儲介質,具有存儲量大,攜帶方便,交換性強,成本低等諸多優點,因此成為一種深受用戶歡迎且廣泛使用的存儲體。為了提高光碟的使用效率並解決光碟信息的共享問題,產生了光碟鏡像伺服器技術且與推出了相關的產品。如在申請號為02117665.5的中國專利申請中,披露了一種直接聯網虛擬鏡像伺服器的實現方法,光碟鏡像伺服器通過光碟鏡像的方式把光碟的數據保存到硬碟上,使用戶能夠以訪問硬碟的速度訪問光碟,但是,由於光碟鏡像伺服器只注重伺服器端的技術和性能,較少考慮網絡和客戶端的技術,因此,在使用的過程中有許多不便,具體體現在以下幾個方面1、該實現方法是給每一張存儲在光碟鏡像伺服器內的虛擬鏡像光碟加載虛擬設備驅動程序,這種方式佔用了伺服器的大量存儲空間,而且直接在伺服器上虛擬驅動光碟,也大量佔用了CPU的資源,加重CPU的運行負擔,導致系統運行速度下降,用戶響應時間長,訪問速度慢。
2、由於網絡傳輸是建立在通用的網絡傳輸協議CIFS/SMB上,CIF/SMB網絡協議雖然功能強大,但其複雜的功能會導致效率的降低,用戶響應時間長,另外對光碟共享而言,絕大多數功能沒有必要;該協議的防病毒採用網上鄰居方式,容易受到病毒攻擊;該協議只能在區域網內實現光碟數據的共享,無法實現基於TCP/IP的網際網路上共享,限制了光碟資源的使用。
3、在鏡像光碟的使用過程中,由於是通過映射網絡驅動器,採用文件級的共享使用方式,同樣導致數據傳輸效率低,同時光碟的一些物理特性丟失,導致使用上很不方便,而且一些單機版的光碟不能使用。

發明內容
為克服現有技術的不足,提供一種既可以在網際網路上共享光碟資源、對客戶端而言又完全等同於物理光碟機的虛擬光碟數據流的網絡傳輸方法;為此本發明提出了以下技術方案一種虛擬光碟庫系統,由客戶端和伺服器組成,伺服器包括光碟流伺服器模塊,用於對客戶端的光碟數據支持,客戶端包括光碟流客戶端模塊,用於在客戶端虛擬一個或多個光碟驅動器,直接處理客戶端的大部分光碟機執行命令,對不能執行的命令則傳輸到所述虛擬光碟庫伺服器模塊進行處理。
上述客戶端還包括管理客戶端模塊,伺服器包括管理伺服器模塊;伺服器還包括虛擬光碟庫伺服器模塊,用於對客戶端的光碟數據支持,管理客戶端模塊用於提供客戶端的管理界面,接收管理命令和數據,並將命令和數據通過TCP/IP協議發送給所述管理伺服器模塊,管理伺服器根據接收到的不同命令執行不同的處理程序,並將結果返回管理客戶端模塊顯示。
上述伺服器端還包括光碟鏡像模塊和磁碟管理模塊;光碟鏡像模塊用於監測伺服器的光碟驅動器,對新光碟按照不同的光碟類型和配置策略,進行不同的鏡像處理;磁碟管理模塊用於在伺服器啟動時自動檢測物理磁碟的信息,對新的物理磁碟進行分區和格式化操作,並加載檢測到的已經分區和格式化的物理磁碟。
本發明同時提出了一種虛擬光碟數據流的網絡傳輸方法直接在客戶端虛擬光碟驅動器,由虛擬光碟機直接處理接收到的大部分SCSI命令,對虛擬光碟機不能處理的SCSI命令才傳輸到伺服器端進行處理。
其數據傳輸過程包括以下步驟(1)用戶程序通過Windows API接口向作業系統發送請求;(2)作業系統將接收到的命令轉換為SCSI命令發給虛擬光碟驅動;(3)虛擬光碟驅動器對收到的命令進行判斷,能夠處理的直接虛擬一個結果,然後將其返回作業系統;不能夠虛擬處理的命令轉發給網絡TCP層;(4)網絡TCP層再將客戶端虛擬光碟機不能處理的SCSI命令發給光碟流伺服器;(5)光碟流伺服器處理前述SCSI命令,並將結果返回給客戶端的網絡TCP層;(6)網絡TCP層再將結果返回虛擬光碟驅動;(7)虛擬光碟驅動再將結果返回作業系統;(8)作業系統再將結果返回給用戶程序。
上述光碟流伺服器還建立有Cache及Cache管理模塊、訪問控制模塊;當客戶端需要請求伺服器上的光碟數據時,它通過網絡向伺服器發送請求;伺服器上的網絡TCP層接收到客戶端的請求後,將請求轉發給訪問控制模塊;訪問控制模塊接收到客戶端的請求後,進行合法性驗證,如果通過就將請求發給Cache管理模塊;Cache管理模塊接收到請求後,首先查詢Cache,如果Cache不命中,就從磁碟將光碟文件數據讀入Cache中,將請求的數據發給網絡TCP層;如果Cache命中,將請求的數據發給網絡TCP層;網絡TCP層再將請求的數據發送給客戶端。
由於本發明的虛擬光碟數據流的網絡傳輸方法,在客戶端虛擬光碟驅動器,能夠在客戶端計算機上虛擬一系列光碟機,這些光碟機可以完全等同物理光碟機,且能夠實時地將遠程虛擬光碟庫上的光碟鏡像文件映射到虛擬光碟機上;這樣,用戶使用虛擬光碟庫上的光碟就如同使用本地光碟一樣,有一些特殊的光碟,它們只能夠在本地物理光碟驅動器上使用,導致在以前的光碟鏡像伺服器不能夠使用,通過採用虛擬化技術,能夠完全支持這些光碟。
其網絡傳輸協議是基於TCP/IP網絡協議,能夠有效地阻止病毒的攻擊;避免了以前使用SMB協議訪問伺服器響應時間長的問題;只要光碟流伺服器上的虛擬光碟庫連接到Internet上,任何Internet上的計算機都能夠訪問伺服器,完全沒有地域限制,實現真正的光碟資源共享。
由於本發明提供了管理客戶端模塊和管理伺服器模塊,可以方便地實現系統的各項管理功能,如用戶管理、計費服務等;採用光碟鏡像模塊實現了完全自動鏡像功能,而磁碟管理模塊允許自動監測存儲空間的擴展,大大減少了人為幹預,提高效率。


圖1虛擬光碟庫系統模塊劃分圖;圖2IoMeter測試小於128位元組的包百分比柱形圖;圖3光碟流協議小於128位元組的包百分比柱形圖;圖4客戶端同伺服器連接建立與斷開過程圖;
圖5光碟流協議用戶請求處理過程圖;圖6客戶端請求在伺服器上的處理過程流程圖;具體實施方式
為進一步說明本發明的傳輸方法,以下結合附圖進行詳細描述。
如圖1所示的虛擬光碟庫系統,按照功能可以劃分為六個模塊光碟流客戶端模塊,光碟流伺服器模塊,管理客戶端模塊,管理伺服器模塊,光碟鏡像模塊,磁碟管理模塊。
光碟流客戶端模塊主要功能是在用戶的客戶端計算機上虛擬一個或多個光碟驅動器,用戶訪問此光碟驅動器上的光碟時,作業系統就光碟流客戶端提供的服務接口,此接口接收到作業系統的請求後,就將此請求轉發給光碟流伺服器程序,並將光碟流伺服器程序返回的光碟數據返回給作業系統,作業系統就將此光碟數據返回給用戶程序,從而完成虛擬光碟驅動的工作。
光碟流伺服器模塊負責對光碟流客戶端的光碟數據支持,它採用多線程的方式支持多用戶同時訪問,對每一個用戶連接,都創建一個對應的處理線程,來處理此用戶的請求,同時它還提供對用戶的按照訪問時間計費,而且支持對用戶進行流量限制,同時支持對用戶IP的限制。並採用Cache技術來提高整體性能。
管理客戶端模塊負責給管理員提供一個客戶端的管理界面,它接收管理員的命令和數據,並將命令和數據通過TCP協議發送給管理伺服器,並負責顯示管理伺服器返回的結果。
管理伺服器模塊負責接收管理客戶端的命令和數據,根據不同命令執行不同的處理程序,並將執行的結果返回管理客戶端。
光碟鏡像模塊負責監測伺服器的光碟驅動器,如果發現一張新光碟,就按照不同的光碟類型和管理員不同的配置策略,進行不同的鏡像處理。
磁碟管理模塊在伺服器啟動時自動執行,檢測物理磁碟的信息,如果發現新的磁碟,或者根據管理員的設置能夠對物理磁碟進行自動分區和格式化操作,此功能方便管理員在伺服器上添加新的磁碟。
原來的SMB用戶響應時間長,我們針對自己的特點自定義一種網絡傳輸協議,用來實現客戶端虛擬光碟啟動程序到光碟伺服器之間的數據通信。同時自己開發的數據流伺服器程序能夠實現更加靈活的管理,實現用戶的靈活權限共享,能夠實現用戶流量限制和用戶訪問計費等功能。
目前用於IP存儲的協議主要有iSCSI、SEP(SCSI封裝協議)、FCIP。iSCSI可以看作是SCSI協議的擴展,它的出現大大拓寬了SCSI協議的應用範圍。SCSI協議是一種的廣泛應用的工業標準,但是傳統的SCSI協議有以下缺點使之不適合構建存儲網絡1、SCSI是點對點的、直接相連的計算機到存儲器的設備接口,不適用於主機到存儲器的存儲網絡通訊;2、SCSI總線的長度被限制在25米以內,對於Ultra SCSI長度限制為12米,不適於構造各種網絡拓撲結構;3、SCSI總線上設備數限制為15,不適用於多伺服器對多存儲設備的網絡結構。
iSCSI協議的出現很好的解決了上述問題。iSCSI協議定義的是SCSI到TCP/IP的映射,即將主機的SCSI命令封裝成IP數據包,在IP網絡上傳輸,到達目的節點後,再恢復成封裝前的SCSI命令,從而實現SCSI命令在IP網絡上的直接、透明傳輸。由於TCP/IP協議的飛速發展,iSCSI協議已經成為構建IP-SAN的重要協議。
iSCSI協議實質是在一個IP隧道上跑SCSI命令,它要求Target端是一個SCSI設備,是一種SCSI遠程過程調用模型,對所有的Initiator端的SCSI命令不進行任何處理。這樣,因為SCSI命令中有很多控制命令,這些命令的包都很小,另一方面,在網絡上傳輸小包比較浪費網絡物理帶寬,圖2是採用IoMeter測試工具對iSCSI協議測試得到的IP包長度分布的情況,每種長度的測試時間為10分鐘,讀70%寫30%。通過圖2可以看出將近一半的網絡包小於127位元組,而乙太網數據包最大長度為1518位元組,在這個範圍內,大包同小包的傳輸時間基本上沒有很大差別。
針對光碟流伺服器的特定應用,為了提高網絡傳輸的性能,採用簡化iSCSI協議的方法,設計了一個高性能的光碟流協議,主要方法是通過採用虛擬技術,在客戶端虛擬SCSI光碟驅動器,並將接收到的大部分能夠處理的SCSI命令在客戶端直接處理,只有讀光碟數據等少數幾個客戶端不能夠處理的命令才傳輸到伺服器端。這樣,能夠大大減少網絡傳輸過程中的小的數據包,從而減少傳輸時間。圖3是對光碟流協議測試得到的IP包長度分布的情況。
客戶端同伺服器連接建立與斷開過程如圖4。首先,在客戶端虛擬光碟機程序啟動時創建一個工作線程,同樣,伺服器程序啟動時創建一個網絡監聽主線程。當虛擬光碟機工作線程啟動後,它主動連接伺服器指定的埠,伺服器主線程同時在此埠接收客戶端的連接,並為此連接創建一個對應的處理線程,下面的對應此連接的處理工作就由此處理線程完成,這樣雙方就能夠創建一個連接,如步驟(1);當連接成功後,客戶端就向伺服器發送登錄命令,如步驟(2);伺服器端接收到登錄命令後,進行用戶驗證,驗證通過就向客戶端發登錄的確認信息,如步驟(3);到此,客戶端同伺服器連接建立過程就完成。然後,客戶端就可以循環向伺服器發送命令,並得到伺服器的返回結果,如步驟(4);當客戶端需要斷開連接時,它首先向伺服器發送退出命令,如步驟(5);伺服器接收到退出命令後,釋放此連接所佔用的資源,並向客戶端發送確認信息,如步驟(6),伺服器此連接的處理線程就主動退出,同時,客戶端接收到退出的確認信息後,虛擬光碟機工作線程也主動退出,到此,整個連接的斷開過程就完成。
請求數據流傳輸的處理過程如圖5,用戶程序通過Windows API接口向作業系統發送請求,如步驟(1);作業系統將接收到的命令轉換為SCSI命令發給虛擬光碟驅動,如步驟(2);虛擬光碟驅動採用虛擬技術將收到的命令能夠處理的直接虛擬一個結果,然後將其返回作業系統,如步驟(7);只有READ_CD、READ_TOC、READ_CAPACITY等少數幾個不能夠虛擬處理的命令轉發給網絡TCP層,如步驟(3);網絡TCP層再將READ_CD等SCSI命令發給光碟流伺服器,如步驟(4);光碟流伺服器處理READ_CD等SCSI命令,並將結果返回給客戶端的網絡TCP層,如步驟(5);網絡TCP層再將結果返回虛擬光碟驅動,如步驟(6);虛擬光碟驅動再將將結果返回作業系統,如步驟(7);最後,作業系統再將結果返回給用戶程序,如步驟(8),至此,用戶的一個請求過程完成。
伺服器處理客戶端請求的過程如圖6,當客戶端需要請求伺服器上的光碟數據時,它通過網絡向伺服器發送請求,如步驟(1);伺服器上的網絡TCP層接收到客戶端的請求後,將請求轉發給訪問控制模塊,如步驟(2);訪問控制模塊接收到客戶端的請求後,進行合法性驗證,如果通過就將請求發給Cache管理模塊,如步驟(3);Cache管理模塊接收到請求後,首先查詢Cache,如果Cache不命中,就從磁碟將光碟文件數據讀入Cache中,如步驟(4);然後,將請求的數據發給網絡TCP層,如步驟(5),如果Cache命中,就直接執行步驟(5);網絡TCP層再將請求的數據發送給客戶端,如步驟(6),客戶端收到請求的數據,完成一次請求過程。
權利要求
1.一種虛擬光碟庫系統,由客戶端和伺服器組成,所述伺服器包括光碟流伺服器模塊,用於對客戶端的光碟數據支持,其特徵在於所述客戶端包括光碟流客戶端模塊,用於在客戶端虛擬一個或多個光碟驅動器,直接處理客戶端的大部分光碟機執行命令,對不能執行的命令則傳輸到所述光碟流伺服器模塊進行處理。
2.根據權利要求1所述的虛擬光碟庫系統,其特徵在於所述客戶端還包括管理客戶端模塊,所述伺服器還包括管理伺服器模塊;所述管理客戶端模塊用於提供客戶端的管理介面,接收管理命令和數據,並將命令和數據通過TCP/IP協議發送給所述管理伺服器模塊,所述管理伺服器根據接收到的不同命令執行不同的處理程序,並將結果返回所述管理客戶端模塊顯示。
3.根據權利要求2所述的虛擬光碟庫系統,其特徵在於所述伺服器端還包括光碟鏡像模塊,所述光碟鏡像模塊用於監測伺服器的光碟驅動器,對新光碟按照不同的光碟類型和配置策略,進行不同的鏡像處理。
4.根據權利要求2或3所述的虛擬光碟庫系統,其特徵在於所述伺服器端還包括磁碟管理模塊,所述磁碟管理模塊用於在伺服器啟動時自動檢測物理磁碟的信息,對新的物理磁碟進行分區和格式化操作,並加載檢測到的已經分區和格式化的物理磁碟。
5.根據權利要求1-3中任一項所述的虛擬光碟庫系統,其特徵在於所述光碟流伺服器包括Cache、Cache管理模塊、訪問控制模塊;伺服器上的網絡TCP層接收到客戶端的請求後,將請求轉發給訪問控制模塊;訪問控制模塊接收到客戶端的請求後,進行合法性驗證,如果通過就將請求發給Cache管理模塊;Cache管理模塊接收到請求後,首先查詢Cache,如果Cache不命中,就從磁碟將光碟文件數據讀入Cache中,將請求的數據發給網絡TCP層;如果Cache命中,將請求的數據發給網絡TCP層;網絡TCP層再將請求的數據發送給客戶端。
6.一種虛擬光碟數據流的網絡傳輸方法,其特徵在於直接在客戶端虛擬光碟驅動器,直接處理接收到的大部分SCSI命令,對虛擬光碟機不能處理的SCSI命令才傳輸到伺服器端進行處理。
7.根據權利要求6所述的一種虛擬光碟數據流的網絡傳輸方法,其特徵在於,傳輸過程包括以下步驟(1)用戶程序通過Windows API接口向作業系統發送請求;(2)作業系統將接收到的命令轉換為SCSI命令發給虛擬光碟驅動;(3)虛擬光碟驅動對收到的命令進行判斷,能夠處理的直接虛擬一個結果,然後將其返回作業系統;不能夠虛擬處理的命令轉發給網絡TCP層;(4)網絡TCP層再將客戶端虛擬光碟驅動不能處理的SCSI命令發給光碟流伺服器;(5)光碟流伺服器處理前述SCSI命令,並將結果返回給客戶端的網絡TCP層;(6)網絡TCP層再將結果返回虛擬光碟驅動;(7)虛擬光碟驅動再將結果返回作業系統;(8)作業系統再將結果返回給用戶程序。
8.根據權利要求7所述的一種虛擬光碟數據流的網絡傳輸方法,其特徵在於所述光碟伺服器還建立有Cache及Cache管理模塊、訪問控制模塊;當客戶端需要請求伺服器上的光碟數據時,它通過網絡向伺服器發送請求;伺服器上的網絡TCP層接收到客戶端的請求後,將請求轉發給訪問控制模塊;訪問控制模塊接收到客戶端的請求後,進行合法性驗證,如果通過就將請求發給Cache管理模塊;Cache管理模塊接收到請求後,首先查詢Cache,如果Cache不命中,就從磁碟將光碟文件數據讀入Cache中,將請求的數據發給網絡TCP層;如果Cache命中,將請求的數據發給網絡TCP層;網絡TCP層再將請求的數據發送給客戶端。
全文摘要
本發明公開了一種虛擬光碟庫系統及虛擬光碟數據流的網絡傳輸方法,系統由客戶端和伺服器組成,客戶端包括光碟流客戶端模塊,用於在客戶端虛擬一個或多個光碟驅動器,直接處理客戶端的大部分光碟機執行命令,對不能執行的命令則傳輸到光碟流伺服器模塊,在客戶端計算機上的虛擬一系列光碟機可以完全等同物理光碟機,且能夠實時地將遠程虛擬光碟庫上的光碟鏡像文件映射到虛擬光碟機上;這樣,用戶使用光碟流伺服器虛擬光碟庫上的光碟就如同使用本地光碟一樣方便、快捷;網絡傳輸協議是基於TCP/IP網絡協議,任何Internet上的計算機都能夠訪問伺服器,完全沒有地域限制,實現真正的光碟資源共享。
文檔編號G06F12/08GK1545037SQ20031011094
公開日2004年11月10日 申請日期2003年11月10日 優先權日2003年11月10日
發明者譚志虎, 萬繼光, 劉瑞芳, 謝長勇, 謝長生, 楊慶, 寧劍 申請人:深圳市東湖存儲技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀