正文 基於SPICE協議的USB設備重定向設計與實現(1 / 2)

基於SPICE協議的USB設備重定向設計與實現

學術研究

作者:楊飛 朱誌祥 梁小江

摘 要:基於SPICE協議的虛擬桌麵無法自動完成USB重定向功能,提出了一種USB設備的自動重定向實現方法。該方法首先對遠程服務器資源進行虛擬化,以提高服務器的資源利用率,然後設計和實現基於SPICE協議的虛擬桌麵客戶端,使用戶可以通過客戶端訪問遠程虛擬資源池,在虛擬桌麵的客戶端插入USB設備,然後自動重定向到遠程虛擬服務器,實現對遠程服務器資源的管理和操作。經過實驗測試證明,本設計方法能夠實現虛擬桌麵的USB設備自動重定向功能。

關鍵詞:SPICE協議;虛擬桌麵;USB重定向;遠程虛擬服務器

中圖分類號:TP302.1 文獻標識碼:A 文章編號:2095-1302(2015)09-00-02

0 引 言

隨著雲計算和虛擬化技術的發展,虛擬桌麵也不斷應用到各行各業中。桌麵虛擬化技術通過虛擬化技術和雲計算技術相結合,將用戶桌麵環境和計算環境分離,不僅可為用戶提供便捷的桌麵辦公環境和較好的用戶體驗,還能將用戶的虛擬資源進行集中化管理,提高遠程服務器虛擬資源的利用率[1]。

基於SPICE協議的虛擬桌麵不支持USB設備的自動重定向,限製了用戶在客戶端對遠程服務器資源的操作,包括數據的拷貝、上傳等功能。

本文基於OpenStack平台設計和實現的遠程虛擬資源服務器,然後設計和部署了基於SPICE協議的虛擬桌麵客戶端,用戶通過客戶端靈活訪問遠程服務器的虛擬資源集群[2]。用戶在客戶端插入USB設備,就可以對遠程服務器資源池進行訪問和控製。通過大量對比測試,本設計方案可以實現基於SPICE協議的虛擬桌麵的USB設備自動重定向功能。

1 虛擬桌麵設計框架

基於SPICE協議的虛擬桌麵是基於KVM虛擬機實現的,在SPICE框架中,VDI後端在QEMU中實現,提供對虛擬設備的模擬,VDI前端在服務端中實現,通過VDI接口與虛擬設備進行交互[3]。

虛擬化技術能夠在一台計算機上運行多個操作係統[4],在每個操作係統上運行自己獨立的應用軟件,可以對這些係統進行有效隔離,對資源進行按需分配,從而保證每一個操作係統的安全性和性能。對服務器進行擴展,實現服務器的虛擬化[5]。

在OpenStack雲平台上構建雲桌麵係統的服務端,采用OpenStack作為虛擬桌麵的基礎服務,在OpenStack中采用KVM虛擬化技術,實現本地用戶對物理服務器的遠程訪問,使用戶能夠共享相同的物理服務設備[6]。

來自客戶端、台式機、筆記本的用戶發出連接請求,通過對應的SPICE服務連接雲實驗室的客戶端,客戶端首先向服務端建立一個主要接口的連接請求,創建工作線程並等待遠程服務端的消息,雲實驗室服務端完成初始化後,客戶端繼續進行後麵的初始化工作[7]。

在虛擬桌麵的服務端,能夠滿足用戶的多種資源申請需求,管理員能夠統一管理和分配虛擬資源。管理員根據用戶的請求分配虛擬機資源,在分配過程中附帶虛擬資源的地址和端口,方便客戶端用戶直接使用地址和端口登錄虛擬桌麵[8]。

用戶在虛擬桌麵的登陸界麵中輸入在遠程服務器中分配的地址和端口,即可進入到遠程服務器進行虛擬桌麵的操作和管理。認證成功的用戶能訪問遠程服務器的虛擬資源,保證整個虛擬桌麵的安全。用戶通過虛擬桌麵客戶端的用戶操作界麵實現對遠程服務器集群資源的訪問和操作[9]。