999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

P2P技術提升桌面虛擬化中鏡像下載速度研究

2018-05-15 08:31:14程良胡丹婷
軟件導刊 2018年4期

程良 胡丹婷

摘 要:在大規模桌面虛擬化集群部署過程中,虛擬機鏡像創建時,大量鏡像數據在鏡像服務器和計算節點服務器之間傳輸,下載速度直接影響著虛擬桌面的創建和更新速度。為了提高虛擬機鏡像模板部署和系統的整體性能,從網絡傳輸角度,提出一種基于BitTorrent的P2P技術提升鏡像下載速度的方法。該方法在計算節點數量較多的情況下,能大幅提高鏡像下載速度,從而保證鏡像模板的快速分發,提升用戶對桌面虛擬化系統的使用體驗。

關鍵詞:P2P;BitTorrent;桌面虛擬化;鏡像下載

DOI:10.11907/rjdk.172620

中圖分類號:TP319

文獻標識碼:A 文章編號:1672-7800(2018)004-0151-04

Abstract:In the process of mass desktop virtualization cluster deployment, when the image of virtual machines is being created, massive image data are transmitted between image storage servers and computing node servers, whose download speed directly influences the speed of creating and of updating the virtual desktop. In terms of network transmission, the paper proposes the technique of P2P based on BitTorrent to accelerate image download and to improve the deployment of virtual machine image templates and the performance of the whole system. The approach is able to considerably accelerate the image download when there are a comparatively large number of computing nodes, so as to ensure the rapid distribution of image templates and to refine the user experience in the desktop virtualization system.

Key Words:P2P; BitTorrent; desktop virtualization; image download

0 引言

隨著我國教育信息化改革的不斷深入,教學方式也在不斷創新,很多高校的機房基礎設施建設都采用了桌面虛擬化技術[1](VDI技術),以期為教學提供高效靈活的實驗環境。研究表明,桌面虛擬化技術的應用,能顯著提高系統的資源利用率,并大幅降低能源消耗[2],因此被越來越多的高校作為機房系統建設目標。目前在桌面虛擬化系統中,虛擬機鏡像的創建流程和方法如下:所有鏡像都存放在鏡像服務器上,由鏡像服務進行管理,計算節點需要從鏡像創建第一個虛擬機時,通過HTTP從鏡像服務器下載鏡像。在計算節點較少時,這種HTTP下載方式基本能滿足鏡像的下載需求,不會影響下載效率,但在計算節點數量相對較多的情況下,并發從鏡像服務器下載鏡像,所有節點同時向服務器提出請求,鏡像服務器必將成為一個瓶頸,從而降低鏡像下載速度,以及桌面創建、更新速度,影響系統的整體性能和用戶使用體驗。

假定鏡像服務器的網絡帶寬為N,計算節點數量為M,需同時下載的鏡像大小為P,計算出在理想情況下需要花費的時間T為:T=P/(N/M)。

根據公式,結合實際使用環境得出以下數據,如表1所示。

從表1數據可以看出:①當集群規模較大時,下載數據耗時非常長;②將鏡像服務器網絡帶寬擴充到萬兆,能有效減少下載耗時,但隨著集群規模增加,仍會存在明顯瓶頸。

針對上述問題,文獻[3]從鏡像管理的角度提出鏡像按需分發框架,根據虛擬機啟動和運行過程中只對有限數據塊訪問的特性,僅傳輸虛擬機啟動和運行所需的數據塊,避免了存儲節點和網絡瓶頸問題,并采用差異化的數據塊劃分方法,提高了鏡像分發速度;文獻[4]從虛擬機鏡像存儲系統方面,設計了一種系統層的虛擬機鏡像數據協作式緩存機制,通過充分利用各節點緩存的服務能力,使其暫存的虛擬機鏡像數據能夠為其它節點提供讀取服務。協作式緩存實現了物理節點間類P2P模式的數據傳輸,可有效減少虛擬機讀取數據的傳輸開銷,提升虛擬機存儲系統性能;文獻[5]設計了一種桌面虛擬化鏡像分布式存儲系統,通過把頻繁訪問的只讀根鏡像數據塊緩存在本地,采用輕量級元數據服務器架構,結合中心化設計和去中心化設計的優點,進一步提升了虛擬機鏡像的讀寫性能;文獻[6]發明了一種將虛擬機鏡像文件中的系統文件按預定規則劃分成邏輯塊的方法,通過判斷邏輯塊對應的數據,去除鏡像文件中的冗余數據,進而有效降低桌面云系統虛擬機鏡像在數據存儲時的存儲量。

綜上所述,目前在桌面虛擬化場景中,現有大部分方法都是通過改進虛擬機鏡像文件存儲及降低鏡像文件體積,以提升鏡像文件的傳輸性能。然而,本文提出一種更為簡單、直接、易于實施的方法,該方法從網絡傳輸的角度,在桌面虛擬化中基于P2P技術[7]提升鏡像下載速度,使計算節點采用P2P方式進行鏡像下載。在多個計算節點同時下載同一鏡像的過程中,不同計算節點會直接連接并交換數據,使鏡像服務器不會成為瓶頸。在大規模部署桌面云的環境中,系統效能提升尤為明顯。

1 BitTorrent技術原理

BitTorrent[8]是一個基于P2P(Peer to Peer)的文件分發協議,其用途是多用戶的文件上傳和下載,僅占用文件發布者極少的帶寬資源,具有很高的效率[9]。基于BitTorrent協議的下載方式被稱為BitTorrent下載,簡稱“BT下載”。傳統的HTTP、FTP下載方式需要在網絡中存在一個文件服務器,所有文件下載客戶端均需連接到該服務器進行下載,從而增加了文件服務器及其所載網絡的負荷,降低網絡使用效率,甚至造成網絡癱瘓[10]。BT協議與其不同,特點是下載的人越多,下載速度越快,原因在于每個下載者可將已下載的數據提供給其他下載者下載,充分利用了用戶的上載帶寬。同時,通過一定策略保證上傳速度越快,下載速度也越快。

普通的HTTP/FTP下載使用TCP/IP協議,BitTorrent協議是架構于TCP/IP協議之上的一個P2P文件傳輸協議,處于TCP/IP結構的應用層。BitTorrent協議本身也包含了很多具體的內容協議和擴展協議,并在不斷擴充中。

根據BitTorrent協議,文件發布者根據要發布的文件生成一個.torrent文件,即種子文件,簡稱為“種子”。.torrent文件本質上是文本文件,包含Tracker信息和文件信息兩部分[11]。Tracker信息主要是BT下載中需要用到的Tracker服務器地址和針對Tracker服務器的設置;文件信息是根據對目標文件的計算生成的,計算結果根據BitTorrent協議內的B編碼規則進行編碼。其主要原理是把提供下載的文件虛擬分成大小相等的塊,大小一般為2k的n次方(實際硬盤上不會生成每個塊文件),并把每個塊的索引信息和Hash校驗碼寫入種子文件(.torrent)中。所以,種子文件(.torrent)是被下載文件的“索引”[12]。

在VDI場景中,往往需要從某個鏡像批量創建多個虛擬機,而且要求虛擬機分布到多個計算節點上,以滿足并發快速啟動的需求,這意味著需要完成鏡像文件從鏡像服務器快速分發到多個計算節點上。由于每個節點都能提供上傳服務,所以系統總體服務能力會隨著下載節點個數的增加而增加,使系統具有良好的可擴展性[13],這與BT和P2P解決的問題是一致的。

2 系統架構與工作流程

2.1 系統框架

在桌面虛擬化(VDI技術)場景中實現P2P下載,系統架構主要包括以下3個組件:鏡像服務、計算節點服務、BT-Tracker服務,如圖1所示。

鏡像服務:完成鏡像文件的保存、做種等功能。

BT-Tracker:維護每個種子文件連接的節點信息,在本文提出的方案中,節點包含鏡像服務和計算節點服務。

計算節點服務:創建虛擬機前,通過P2P技術從鏡像服務器下載鏡像。

鏡像服務和計算節點服務通過BT-Tracker連接進行信息交換后,直接連接進行數據交換。

以一個需要從鏡像服務分發鏡像文件到2個計算節點的場景,描述鏡像文件下發的整體過程如下:①鏡像服務對鏡像文件做種,并對BT-Tracker報告擁有鏡像完整文件;②計算節點1、2對BT-Tracker報告,并取回鏡像服務擁有完整文件的信息;③計算節點1、2直接連接鏡像服務,下載鏡像文件;④計算節點1、2在下載過程中,計算節點報告BT-Tracker服務擁有鏡像文件的部分內容;⑤計算節點1同時連接鏡像服務與計算節點2進行數據交換;⑥計算節點2同時連接鏡像服務與計算節點1進行數據交換。

2.2 BT-Tracker模塊內部工作流程

BT-Tracker服務為鏡像服務與計算節點溝通的紐帶,鏡像服務和計算節點作為P2P下載中的客戶端。在系統剛開始運行時并不知曉對方存在,所有客戶端需向BT-tracker報告自己的狀態,并獲取其它客戶端信息。當其它客戶端有需要下載的數據時,會直接發起與該客戶端的連接,并完成下載操作。

BT-Tracker在收到客戶端報告時,如果該客戶端報告的狀態為非stopped,則會保存該報告信息,并將其返回給客戶端,否則會將該信息移除。工作流程如圖2所示。

其中生成種子文件的核心偽代碼如下:

(1)構建libtorrent文件存儲對象:

fs <- lt.file_storage()

(2)將做種的文件加入到文件存儲對象中:

lt.add_files fs, image_file

(3)創建libtorrent種子文件對象:

t <- lt.create_torrent fs, trunk_size

(4)對鏡像文件分塊計算HASH值,并設置到種子文件對象中:

FOR 每個分塊設置每塊HASH

(5)生成種子文件。通過HASH信息生成種子文件。

2.3 鏡像下載工作流程

客戶端在進行鏡像下載時,會先判斷客戶端所在節點與鏡像服務是否在同一節點,如果是則直接使用文件拷貝,如果不是,則判斷是否啟用了P2P機制。如果未啟用,則使用HTTP方式進行下載,如已啟用P2P,則判斷種子文件是否存在。如種子不存在,則使用HTTP方式進行下載,否則使用P2P下載。詳細流程如圖3所示。

下載鏡像文件的核心偽代碼如下:

(1)構建OEBitTorrent對象:

bt <- OEBitTorrent()

(2)加入種子文件到OEBitTorrent對象,自動開始下載:

torrent_handle <- bt.add_torrent torrent_file_path, save_path, new_file_name, new_tracker_urls

(3)等待下載完成:

WHILE下載未完成

SLEEP 10

(4)從OEBitTorrent中移除種子文件:

bt.remove_torrent(torrent_handle)

3 實驗結果與分析

3.1 實驗環境設置

實驗共使用5臺硬件配置相同的服務器,包含1個2.0GHz Xeon E5-2640 CPU,32GB內存,存儲設備為1塊2 TB SATA硬盤。工作過程完全相同,只是服務器數量不同。鏡像存儲節點和計算節點通過千兆交換機連接。其中1個節點運行鏡像服務和BT-Tracker服務,剩余節點運行計算節點服務。

3.2 實驗結果與分析

本文所設置的實驗過程描述如下:①分別準備20G和40G的磁盤鏡像文件;②使用鏡像服務分別對2個鏡像文件做種,生成種子文件;③種子文件存放在共享文件系統NFS中,使4個計算節點都能正常訪問;④3/4個運行計算節點的服務器同時進行文件下載,分別針對使用HTTP方式和P2P方式下載進行計時,下載完成后記錄下載平均時間。在本次實驗中,每次都在同樣環境中進行3次下載,取平均值。實驗結果如表2所示。

由表2可知,使用HTTP下載時,因鏡像服務器所在節點網絡帶寬存在瓶頸,所有節點總下載速度為100.2MB/S左右。節點越多,同樣大小的鏡像文件下載時間越長。使用P2P下載,當節點數為3時,所有節點總下載速度為180.1MB/S左右;節點數為4時,所有節點的總下載速度為276.3MB/S左右。隨著節點數增多,下載速度隨之提升,同樣鏡像大小的文件下載時間會縮短。

綜上所述,在計算節點數為3個以上時,P2P技術能有效提升鏡像下載速度,并且節點數越多,速度提升表現越明顯。這意味著虛擬桌面數量規模越大、計算節點越多,采用P2P技術越能提升鏡像下載速度。

4 結語

在桌面虛擬化(VDI技術)系統中,虛擬機鏡像分發采用P2P方式,在使多個計算節點同時下載同一鏡像過程中,不同計算節點可直接連接并交換數據,從而使鏡像服務器不會成為瓶頸,提升了鏡像下載速度及桌面創建速度,同時提升了系統整體性能和用戶使用體驗。實驗結果也證實了P2P技術對于多個計算節點同時下載鏡像文件時的速度提升較為明顯。

參考文獻:

[1] 盛雯雯,李家峰.基于桌面虛擬化的多媒體機房設計——桌面虛擬化引導機房建設革命[J].硅谷,2011(18):49,14.

[2] DEBOOSERE L, VANKEIRSBILCK B, SIMONES P, et al. Efficient resource management for virtual desktop cloud computing[J]. The Journal of Supercomputing,2012,62(2):741-767.

[3] 劉圣卓,姜進磊,楊廣文.一種用于虛擬集群的鏡像按需分發框架[J].計算機工程與應用,2016(2):1-6.

[4] 李紫陽.云環境下虛擬機鏡像數據的協作式緩存研究[D].長沙:國防科技大學,2012.

[5] 姜躍.面向桌面虛擬化的分布式鏡像存儲研究[D].武漢:華中科技大學,2012.

[6] 江云飛,裘杰,徐紅仙.虛擬機鏡像文件處理方法、裝置及系統[P].中國:CN103942292A,2014.

[7] 周文莉,吳曉非.P2P技術綜述[J].計算機工程與設計,2006(1):76-79.

[8] BitTorrent.org. Bittorrent[EB/OL].http://www.bittorrent.org.2015.

[9] 孔彬,徐良賢.BitTorrent原理分析及改進[J].計算機工程,2004,30(A1):257-259.

[10] 王玨,周莉.BitTorrent模型原理分析[J].華東交通大學學報,2009(1):82.

[11] 黃江勇.基于非結構化P2P網絡的可擴展性研究[D].長沙:湖南大學,2012.

[12] 柳斌,李芝棠.基于訪問控制列表的BitTorrent流量控制策略[J].計算機應用與軟件,2006(5):19-34.

[13] YANG X Y, GUSTAVO D V. Service capacity of peer to peer networks[C]. Proceedings of the 23rd Conference of the IEEE Computer and Communications Societies,2004:2242-2252.

(責任編輯:黃 健)

主站蜘蛛池模板: 久久综合AV免费观看| 黄色网在线| 国内老司机精品视频在线播出| 2021国产乱人伦在线播放| 六月婷婷精品视频在线观看| 欧美日韩国产精品va| 国产在线一二三区| 国产精品中文免费福利| 亚洲精品视频免费| 2020最新国产精品视频| 精品国产自| 国产乱子伦精品视频| 日韩毛片在线播放| 四虎永久免费地址| 91色在线观看| 欧美精品在线观看视频| 欧美精品亚洲精品日韩专| 国产精品污视频| 色综合网址| 亚洲人成网站18禁动漫无码| 香蕉在线视频网站| 极品国产在线| 国产00高中生在线播放| 亚洲一级色| 99re精彩视频| 亚洲国产亚洲综合在线尤物| 亚洲成人手机在线| 国产欧美日韩va| 国产网站免费| 亚洲一区毛片| 日韩高清成人| 91精品国产福利| 日韩av在线直播| AV熟女乱| 在线看片中文字幕| 一级毛片免费高清视频| 国产系列在线| 在线永久免费观看的毛片| 国产69精品久久久久孕妇大杂乱| 亚洲永久精品ww47国产| 久久香蕉国产线看观看亚洲片| 99re在线观看视频| 无码'专区第一页| 先锋资源久久| 亚洲欧美成人在线视频| 日韩在线视频网| 欧美精品综合视频一区二区| Aⅴ无码专区在线观看| 久久久亚洲色| 综合社区亚洲熟妇p| 国产麻豆精品手机在线观看| 波多野结衣一二三| 亚洲无码视频喷水| 九九热精品视频在线| 久久黄色一级片| 欧美三级不卡在线观看视频| 第一页亚洲| 91久久国产综合精品女同我| 欧美啪啪视频免码| 网友自拍视频精品区| 国产综合精品日本亚洲777| 久久人人妻人人爽人人卡片av| 999精品免费视频| 伊人网址在线| 久久精品亚洲中文字幕乱码| 嫩草影院在线观看精品视频| 中文字幕免费视频| 四虎国产精品永久在线网址| 2020国产精品视频| 免费女人18毛片a级毛片视频| 久久成人国产精品免费软件 | 国产综合精品一区二区| 国产天天射| 国产成人三级| 69精品在线观看| 免费午夜无码18禁无码影院| 色九九视频| 午夜性刺激在线观看免费| 亚洲AV永久无码精品古装片| 国产性精品| 小说区 亚洲 自拍 另类| 国产麻豆va精品视频|