王麗媛
【摘 要】 由著名歐洲研究實驗室所研發的虛擬網絡計算是個強大的遠程桌面共享工具,能夠進行遠程操作并讓許多客戶端查看服務器端實時桌面狀況通過互聯網。本文對VNC系統的數據傳輸技術在星形直連體系結構的基礎上采用了共享轉發控制服務器進行改進。方案中,由共享轉發控制服務器轉發共享服務器端的共享數據到各個共享客戶端,并且在數據傳輸過程中允許丟失一定的共享數據,同時提供了一種用來保證共享數據在客戶端的解析和顯示的數據傳輸保證機制。經應用驗證,數據在改進后的系統中能夠實時、可靠的傳輸,基于VNC的應用程序共享在低帶寬網絡中的應用成為現實。
【關鍵詞】 虛擬網絡計算 控制服務器 共享客戶端
1 相關技術簡介
1.1 虛擬網絡計算的系統結構
以VNC系統為基礎,應用程序共享系統通過擴展和改進的主要分為三個部分:共享服務器、共享客戶端和轉發控制服務器。共享服務器和共享客戶端都是視頻會議系統客戶端其中的一部分。
共享的程序在共享服務器上運行。共享轉發數據和服務管理網絡兩大功能由轉發控制服務器承擔,通過轉發控制服務器可以大大減少共享服務器性能和網絡帶寬的流量,同時可以負責整個應用程序共享的統一管理。接收從轉發控制服務器轉發的桌面實時數據就是共享客戶端,桌面實時數據通過共享客戶端的解壓縮和解碼后在客戶端桌面上顯示。
1.2 虛擬網絡計算的工作方式
傳統的VNC體系結構為星型直連的模式[1],作為共享客戶端的每一臺電腦都與共享服務器直接相連,向每一個共享客戶端發送共享更新數據由共享服務器完成。如果有足夠的帶寬,那么應用程序共享能夠直接流暢的運行。
1.3 虛擬網絡計算的工作原理
VNC協議是基于遠端幀緩沖器,協議之上的應用層協議,該協議需要拷貝位圖和底層設備命令來捕捉和顯示信息,這種方式可用于任何操作系統平臺所以并不依賴于某種特定的操作系統。
2 國內外研究現狀及分析
2.1 國內的研究現狀
VNC由兩部分組成:一部分被稱作服務器端應用程序(VNCServer),另外一部分被稱作客戶端應用程序(VNCViewer)。每一臺安裝了客戶端應用程序的計算機都可以和安裝了服務器端應用程序的計算機相連,多個VNC客戶端可以通過TCP連接同時連接在一個VNC服務器上。
可以直接將VNC系統整合在視頻會議系統中進行應用程序共享的應用,如果網絡帶寬足夠的話。因此在國外,如果要實現數據會議功能,可以直接采用VNC系統。目前國內由于網絡資源不足,帶寬接入的水平都比較低,如果應用程序共享直接采用VNC系統進行,數據會議的質量將會不高,不能滿足一般意義上數據共享的需求。當共享服務器端網絡出口為10M時,共享客戶端連接達到15人以上時,網絡發送與接收壓力將呈線性增長,造成嚴重網絡阻塞,這時應用程序共享的實時性將大為降低。所以必須采用合適的數據傳輸技術,如果要在低網絡帶寬的條件下保證采用VNC機制的數據會議系統能夠流暢運行。
2.2 國外研究現狀
國外比較早的對應用程序共享進行了研究。從早期的NetMeeting和一些遠程操控軟件到現在廣泛應用Microsoft Live Messager、Skype等即時通訊軟件中都包含了一些應用程序共享的功能[2],并且應用程序共享功能在越來越多的視頻會議系統中也被運用。
在應用程序共享等遠程協助類應用中虛擬網絡計算機技術起著重要作用,虛擬網絡計算技術的發展同樣推動著瘦客戶計算技術在實際應用中的前進步伐。
由AT&T試驗室開發的VNC是一款優秀的桌面遠程共享系統,后來以GPL授權的形式開源。經過許多年的發展,現在的VNC已經是一類軟件的統稱而不在單純的指某一個軟件。
雖然VNC是一個強大的桌面遠程共享工具,但由于VNC的用戶容量小、VNC服務器必須具有公網IP地址、安全性差、網絡傳輸方式不合理、系統兼容性差等原因,使得在實際的視頻會議應用場景中不適合VNC的使用[3]。
3 研究的主要內容
在對VNC系統進行改進并采用共享轉發控制服務器的過程中需要對以下幾方面進行研究:
(1)VNC體系結構:傳統的VNC體系結構默認采用星形直連的方式進行通訊。(2)VNC協議及編碼方法:VNC提供了一個基于Frame Buffer 層次上的簡單圖形界面傳輸協議來進行遠程圖形界面控制。(3)VNC屏幕數據傳輸策略:對于每一次屏幕更新都將發送數據,傳統的VNC系統發送數據時采用小包發送模式,在低帶寬的網絡條件下極易造成阻塞,不適用于實際場景。對屏幕數據傳輸策略進行研究和改進,才能實現高效、實時的應用程序共享。(4)數據傳輸保證機制:由于采用了共享轉發控制服務器的新方案,在新方案中對于數據傳輸模式的改變會影響應用程序共享的實時性、可靠性。
4 結語
應用程序共享作為實現數據會議的重要手段,已經得到了越來越多的關注。虛擬網絡計算(VNC)由于具有平臺適用性、強大的遠程控制能力以及高效、實用的性能,在應用程序共享領域有著廣闊的發展前景。在研究過程中,主要工作如下:
通過對VNC交互機制和通訊機制進行分析,改進了系統的體系結構。設計了采用共享轉發控制服務器對共享數據進行轉發的數據傳輸模式,提高了網絡資源利用率在減輕共享服務器數據傳輸壓力的同時。
通過對VNC協議支持的數據編碼方式進行研究,選擇高效率的數據壓縮方式,減輕了網絡壓力在數據傳輸過程中。
對于數據傳輸方式改進后帶來的新問題,提供了一種數據傳輸保證機制。避免了垃圾信息對共享客戶端數據解析時的干擾,保證了數據共享的穩定進行通過特征碼定位技術。
由于時間有限,在數據的編碼機制選擇上,只是在VNC支持的編碼方式中找出最佳方案,為了進一步提高系統編碼、解碼性能,可以考慮將其他高效的數據壓縮方式引入VNC系統。另外,本文并沒有對改進后的系統安全機制進行研究,數據會議的安全性和保密性依賴于視頻會議,在以后的研究中,可以為其建立獨立的安全機制,加強數據共享的保密性。
參考文獻:
[1]張鵬.計算機支持協同工作中混合式應用程序共享模型分析[J].西安交通大學學報,2002.36(6):596-599.
[2]王學義.計算機協同編輯系統中若干關鍵技術的研究[D].浙江大學碩士論文,2002:3-5.
[3]張惠,王軼文,舒華忠.基于虛擬網絡計算(VNC)協議的遠程醫療繪制[J].山東生物醫學工程,2002.21(3):437-443.endprint