一種虛擬化桌面的分享系統(tǒng)、分享方法以及分享裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及虛擬化計(jì)算領(lǐng)域,尤其涉及已一種基于虛擬化桌面的多媒體流分享系統(tǒng)、分享方法以及分享裝置。
【背景技術(shù)】
[0002]隨著技術(shù)的發(fā)展,虛擬化桌面的應(yīng)用領(lǐng)域也日益增多,成為最為典型的虛擬化應(yīng)用之一。使用虛擬化桌面技術(shù),用戶的桌面系統(tǒng)以虛擬機(jī)的形式運(yùn)行于虛擬機(jī)服務(wù)器上,虛擬機(jī)服務(wù)器對(duì)于所有用戶的虛擬機(jī)進(jìn)行統(tǒng)一管理,同時(shí),用戶通過(guò)桌面客戶端設(shè)備軟件連接虛擬機(jī),并在客戶端設(shè)備上顯示虛擬機(jī)的桌面。
[0003]例如公開(kāi)號(hào)為CN102460407 A的專利文獻(xiàn)公開(kāi)了一種用于提供虛擬計(jì)算服務(wù)的系統(tǒng),包括:一個(gè)或者多個(gè)服務(wù)器,每個(gè)服務(wù)器被配置成實(shí)例化和管理在所述服務(wù)器上運(yùn)行的多個(gè)虛擬計(jì)算機(jī)的操作,每個(gè)服務(wù)器還被配置成關(guān)聯(lián)在所述服務(wù)器上運(yùn)行的一個(gè)或者多個(gè)應(yīng)用與每個(gè)虛擬計(jì)算機(jī),每個(gè)虛擬計(jì)算機(jī)包括圖形顯示部件和音頻輸出部件,所述圖形顯示部件被配置成生成用于一個(gè)或者多個(gè)關(guān)聯(lián)應(yīng)用的圖形顯示數(shù)據(jù),所述音頻輸出部件被配置成生成用于所述一個(gè)或者多個(gè)關(guān)聯(lián)應(yīng)用的音頻輸出數(shù)據(jù),每個(gè)服務(wù)器也包括一個(gè)或者多個(gè)編碼器,每個(gè)編碼器被配置成對(duì)來(lái)自所述虛擬計(jì)算機(jī)中的對(duì)應(yīng)一個(gè)的所述圖形顯示數(shù)據(jù)和所述音頻輸出數(shù)據(jù)編碼用于通過(guò)網(wǎng)絡(luò)傳輸,使得同步編碼的圖形顯示數(shù)據(jù)和編碼的音頻輸出數(shù)據(jù);以及多個(gè)客戶端,用于與關(guān)聯(lián)顯示器一起使用,每個(gè)客戶端被配置成經(jīng)由所述網(wǎng)絡(luò)接收用于所述虛擬計(jì)算機(jī)中的分配的一個(gè)虛擬計(jì)算機(jī)的所述編碼的圖形顯示數(shù)據(jù)和所述編碼的音頻輸出數(shù)據(jù),并且在所述關(guān)聯(lián)顯示器上呈現(xiàn)分配的虛擬計(jì)算機(jī)的表示,每個(gè)客戶端包括解碼器,所述解碼器被配置成對(duì)所述編碼的圖形顯示數(shù)據(jù)和所述編碼的音頻輸出數(shù)據(jù)解碼,使得所述分配的虛擬計(jì)算機(jī)的所述表示的可見(jiàn)和可聽(tīng)組成基本上同步。
[0004]使用現(xiàn)有的虛擬化桌面技術(shù),用戶可以看見(jiàn)自己的桌面。但是在有些場(chǎng)合,例如電子競(jìng)技視頻分享,一個(gè)用戶的虛擬機(jī)桌面需要讓多個(gè)用戶同時(shí)可見(jiàn),這種情況下,現(xiàn)有技術(shù)無(wú)法完全滿足需求。
[0005]現(xiàn)有的遠(yuǎn)程桌面技術(shù),如RDP,雖然能夠讓多個(gè)用戶連接到一臺(tái)虛擬機(jī)觀看,在一定程度上實(shí)現(xiàn)視頻分享,但是有如下一些問(wèn)題:
[0006]1.支持的連接客戶數(shù)量很有限,不適用于互聯(lián)網(wǎng)業(yè)務(wù);
[0007]2.客戶端需要安裝特殊的軟件,不便于普通移動(dòng)智能設(shè)備使用;
[0008]3.占用帶寬比較大,不適于互聯(lián)網(wǎng),尤其不適合移動(dòng)互聯(lián)網(wǎng)接入。
[0009]如何更有效利用虛擬化桌面系統(tǒng)的計(jì)算及網(wǎng)絡(luò)資源,以及實(shí)現(xiàn)虛擬機(jī)桌面的視頻分享,是目前業(yè)界需要解決的一種技術(shù)難題。
[0010]不僅如此,由于運(yùn)行于虛擬機(jī)服務(wù)器的虛擬機(jī)實(shí)例數(shù)目和網(wǎng)絡(luò)負(fù)載都是動(dòng)態(tài)變化的,在很多情況下,現(xiàn)有技術(shù)并不能非常有效調(diào)度虛擬機(jī)桌面圖像的處理,來(lái)實(shí)現(xiàn)計(jì)算資源和網(wǎng)絡(luò)資源的最大化利用。
【發(fā)明內(nèi)容】
[0011]本發(fā)明提供一種虛擬化桌面的分享系統(tǒng),解決了現(xiàn)有技術(shù)所無(wú)法處理的,虛擬化桌面多媒體內(nèi)容分享問(wèn)題。
[0012]一種虛擬化桌面的分享系統(tǒng),包括桌面云終端以及客戶端,還設(shè)有:
[0013]虛擬機(jī)服務(wù)器,配置有與所述桌面云終端相交互的桌面虛擬機(jī),采集并發(fā)送來(lái)自所述桌面虛擬機(jī)的多媒體流;
[0014]流媒體服務(wù)器,響應(yīng)于來(lái)自所述客戶端的分享請(qǐng)求,接收來(lái)自所述虛擬機(jī)服務(wù)器的多媒體流并轉(zhuǎn)發(fā)至對(duì)應(yīng)的客戶端。
[0015]作為優(yōu)選,還設(shè)有向流媒體服務(wù)器轉(zhuǎn)發(fā)分享請(qǐng)求并從流媒體服務(wù)器接收相應(yīng)多媒體流的公網(wǎng)服務(wù)器,所述客戶端為直接向流媒體服務(wù)器發(fā)送分享請(qǐng)求的局域網(wǎng)客戶端,或直接向公網(wǎng)服務(wù)器發(fā)送分享請(qǐng)求的公網(wǎng)客戶端。
[0016]作為優(yōu)選,所述桌面虛擬機(jī)還用于顯示評(píng)論信息供所有的桌面云終端以及客戶端收看,該評(píng)論信息來(lái)自任一桌面云終端以及客戶端,并經(jīng)由流媒體服務(wù)器或公網(wǎng)服務(wù)器轉(zhuǎn)發(fā)至桌面虛擬機(jī)。
[0017]所述多媒體流的轉(zhuǎn)碼是根據(jù)分享系統(tǒng)的負(fù)載狀態(tài)在虛擬機(jī)服務(wù)器、流媒體服務(wù)器或公網(wǎng)服務(wù)器中進(jìn)行。
[0018]按照虛擬機(jī)服務(wù)器工作原理,將從桌面虛擬機(jī)采集來(lái)的圖像通過(guò)第一次編碼獲得原始多媒體流,由于原始多媒體流體積龐大、幀數(shù)高、格式特殊,不利于普通播放器播放,也會(huì)增加網(wǎng)絡(luò)負(fù)載,所以需要對(duì)原始多媒體流進(jìn)行轉(zhuǎn)碼,即對(duì)原始多媒體流進(jìn)行解碼和第二次編碼,以獲得易于播放、易于傳輸?shù)亩嗝襟w流。沒(méi)有特殊說(shuō)明的情況下,本發(fā)明所述的轉(zhuǎn)碼指對(duì)原始多媒體流進(jìn)行的解碼和第二次編碼。
[0019]本發(fā)明還提供了一種虛擬化桌面的分享方法,可以根據(jù)分享系統(tǒng)的負(fù)載動(dòng)態(tài)優(yōu)化虛擬桌面多媒體數(shù)據(jù)的壓縮、傳輸。
[0020]—種虛擬化桌面的分享方法,應(yīng)用于包括桌面云終端、虛擬機(jī)服務(wù)器、流媒體服務(wù)器以及客戶端的分享系統(tǒng)中,所述虛擬機(jī)服務(wù)器配置有與所述桌面云終端相交互的桌面虛擬機(jī),所述分享方法包括:
[0021 ]監(jiān)控所述分享系統(tǒng)的負(fù)載狀態(tài);
[0022]根據(jù)所述負(fù)載狀態(tài)選擇轉(zhuǎn)碼服務(wù)器;
[0023]在轉(zhuǎn)碼服務(wù)器上對(duì)采集自桌面虛擬機(jī)的多媒體流進(jìn)行轉(zhuǎn)碼;
[0024]根據(jù)客戶端的分享請(qǐng)求,將轉(zhuǎn)碼后的多媒體流發(fā)送至相應(yīng)的客戶端。
[0025]所述轉(zhuǎn)碼服務(wù)器為虛擬機(jī)服務(wù)器或流媒體服務(wù)器。
[0026]對(duì)所述原始多媒體流進(jìn)行轉(zhuǎn)碼前,根據(jù)所述負(fù)載狀態(tài)確定轉(zhuǎn)碼模式,轉(zhuǎn)碼模式為高轉(zhuǎn)碼質(zhì)量或低轉(zhuǎn)碼質(zhì)量。
[0027]將原始多媒體流壓縮至大于等于1000kbit/s為高轉(zhuǎn)碼質(zhì)量,小于1000kbit/s為低轉(zhuǎn)碼質(zhì)量。
[0028]所述分享系統(tǒng)的負(fù)載狀態(tài)包括:
[0029]虛擬機(jī)服務(wù)器的運(yùn)行狀態(tài);
[0030]流媒體服務(wù)器的運(yùn)行狀態(tài);[0031 ]虛擬機(jī)服務(wù)器與流媒體服務(wù)器之間的網(wǎng)絡(luò)狀態(tài)。
[0032]虛擬機(jī)服務(wù)器的運(yùn)行狀態(tài)包括:CPU負(fù)載、內(nèi)存消耗總量、硬盤(pán)活動(dòng)時(shí)間、網(wǎng)絡(luò)占用率、以及正在運(yùn)行的桌面虛擬機(jī)實(shí)例數(shù)。
[0033]任何兩個(gè)或兩個(gè)以上指標(biāo)超出閾值則認(rèn)為虛擬機(jī)服務(wù)器的運(yùn)行狀態(tài)為重負(fù)載,否則為輕負(fù)載。
[0034]流媒體服務(wù)器的運(yùn)行狀態(tài)包括:CPU負(fù)載、內(nèi)存占用率、硬盤(pán)活動(dòng)時(shí)間以及網(wǎng)絡(luò)占用率。
[0035]任何兩個(gè)或兩個(gè)以上指標(biāo)超出閾值則認(rèn)為虛擬機(jī)服務(wù)器的運(yùn)行狀態(tài)為重負(fù)載,否則為輕負(fù)載。
[0036]各指標(biāo)閾值為
[0037]CPU 負(fù)載(重、輕):
[0038]CPU使用率閾值為75%,風(fēng)扇轉(zhuǎn)速閾值為5000轉(zhuǎn)/分鐘,CPU溫度閾值為60攝氏度;任何兩個(gè)或兩個(gè)以上指標(biāo)超出閾值,則認(rèn)為CPU為重負(fù)載,否則為輕負(fù)載;
[0039]內(nèi)存占用率:75%;
[0040]硬盤(pán)活動(dòng)時(shí)間:20%;
[0041 ] 網(wǎng)絡(luò)占用率:75%;
[0042]正在運(yùn)行的桌面虛擬機(jī)實(shí)例數(shù):實(shí)例總數(shù)的75%
[0043]虛擬機(jī)服務(wù)器與流媒體服務(wù)器之間的網(wǎng)絡(luò)狀態(tài)包括:當(dāng)前網(wǎng)絡(luò)占用率、網(wǎng)絡(luò)延時(shí)和網(wǎng)絡(luò)連通性。
[0044]網(wǎng)絡(luò)連通性為不連通(ping值>500ms)時(shí)為重負(fù)載;
[0045]網(wǎng)絡(luò)連通性為連通(ping值< 500ms)時(shí),若網(wǎng)絡(luò)占用率大于75%并且網(wǎng)絡(luò)延時(shí)〉200ms,則為重負(fù)載,否則為輕負(fù)載。
[0046]根據(jù)分享系統(tǒng)的負(fù)載狀態(tài)選擇轉(zhuǎn)碼服務(wù)器時(shí),按照優(yōu)先級(jí)先后進(jìn)行判斷,依次判斷優(yōu)先判定虛擬機(jī)服務(wù)器的運(yùn)行狀態(tài)、流媒體服務(wù)器的運(yùn)行狀態(tài)、虛擬機(jī)服務(wù)器與流媒體服務(wù)器之間的網(wǎng)絡(luò)狀態(tài)。
[0047]決策方法:
[0048]負(fù)載狀態(tài)1、如果虛擬機(jī)服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且流媒體服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且網(wǎng)絡(luò)狀態(tài)(虛擬機(jī)服務(wù)器與流媒體服務(wù)器之間的網(wǎng)絡(luò)狀態(tài),下同)為輕負(fù)載,則虛擬機(jī)服務(wù)器轉(zhuǎn)碼(即選擇虛擬機(jī)服務(wù)器作為轉(zhuǎn)碼服務(wù)器);
[0049]轉(zhuǎn)碼模式為使用高轉(zhuǎn)碼質(zhì)量進(jìn)行轉(zhuǎn)碼;
[0050]負(fù)載狀態(tài)2、如果虛擬機(jī)服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且流媒體服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且網(wǎng)絡(luò)狀態(tài)為重負(fù)載,則虛擬機(jī)服務(wù)器轉(zhuǎn)碼;
[0051 ]轉(zhuǎn)碼模式為使用低轉(zhuǎn)碼質(zhì)量進(jìn)行轉(zhuǎn)碼;
[0052]負(fù)載狀態(tài)3、如果虛擬機(jī)服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且流媒體服務(wù)器運(yùn)行狀態(tài)為重負(fù)載,并且網(wǎng)絡(luò)狀態(tài)為輕負(fù)載,則虛擬機(jī)服務(wù)器轉(zhuǎn)碼;
[0053]轉(zhuǎn)碼模式為使用高轉(zhuǎn)碼質(zhì)量進(jìn)行轉(zhuǎn)碼;
[0054]負(fù)載狀態(tài)4、如果虛擬機(jī)服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且流媒體服務(wù)器運(yùn)行狀態(tài)為重負(fù)載,并且網(wǎng)絡(luò)狀態(tài)為重負(fù)載,則虛擬機(jī)服務(wù)器轉(zhuǎn)碼;
[0055]轉(zhuǎn)碼模式為使用低轉(zhuǎn)碼質(zhì)量進(jìn)行轉(zhuǎn)碼;
[0056]負(fù)載狀態(tài)5、如果虛擬機(jī)服務(wù)器運(yùn)行狀態(tài)為重負(fù)載,并且流媒體服務(wù)器運(yùn)行狀態(tài)為輕負(fù)載,并且網(wǎng)絡(luò)狀態(tài)為輕負(fù)載,則流媒體服務(wù)器轉(zhuǎn)碼;
[0057]轉(zhuǎn)碼模式為使用高轉(zhuǎn)碼質(zhì)量進(jìn)行轉(zhuǎn)碼;
[0058]負(fù)載狀態(tài)6、如果虛擬機(jī)服務(wù)器運(yùn)行狀態(tài)為重負(fù)載,并且流媒體服務(wù)器運(yùn)行狀態(tài)為重負(fù)載,并且網(wǎng)絡(luò)狀態(tài)為重負(fù)載,則虛擬機(jī)服務(wù)器轉(zhuǎn)碼;
[0059]轉(zhuǎn)