一種實現(xiàn)虛擬機真實設(shè)備調(diào)度的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)應(yīng)用技術(shù)領(lǐng)域,特別是涉及一種實現(xiàn)虛擬機真實設(shè)備調(diào)度的方法及裝置。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的用戶不斷增多,用戶對音視頻直播畫質(zhì)/音質(zhì)的要求不斷提升,直播內(nèi)容的碼流不斷提升,同時在線人數(shù)也不斷增加,帶寬和并發(fā)在線人數(shù)的要求漸漸成為制約這項業(yè)務(wù)的瓶頸。
[0003]當(dāng)前通常采用服務(wù)器分層加客戶端對等(p2p)網(wǎng)絡(luò)技術(shù)來分擔(dān)并發(fā)訪問的人數(shù)同時將服務(wù)器的一部訪問轉(zhuǎn)移到客戶端,從而減輕服務(wù)器的訪問壓力并降低帶寬的消耗,
[0004]另外,依托于布置在互聯(lián)網(wǎng)最后一英里的特殊設(shè)備,具體的如某種可以利用上下行富余帶寬的網(wǎng)絡(luò)接入路由器,或者是裝有虛擬化程序并且能上網(wǎng)的電子設(shè)備等,其特征是對計算能力和存儲能力要求不高,但是在運營商的帶寬利用上,處于用戶側(cè)個人電腦的上一層,能夠長時間穩(wěn)定接入互聯(lián)網(wǎng),故而能夠更好的利用運營商的上/下行的帶寬,而將這些設(shè)備通過虛擬化的方式集中起來,提供各種可以定制化的服務(wù)。為了描述方便,可將這些設(shè)備特殊設(shè)備都用真實設(shè)備(RD,real device)表示,多個RD設(shè)備可組成一個虛擬機(VM,virtual machine),RD設(shè)備可看成是一個提供網(wǎng)絡(luò)服務(wù)的容器,即它可以安裝任何滿足要求的網(wǎng)絡(luò)服務(wù)程序(即RD設(shè)備APP),另一方面它又是一個網(wǎng)絡(luò)帶寬的輸出單元,即RD設(shè)備可以向互聯(lián)網(wǎng)提供帶寬資源。在RD設(shè)備上可以安裝一個agent代理程序,其作用是監(jiān)控RD設(shè)備的狀態(tài),例如上下行帶寬狀態(tài),從而獲取RD設(shè)備的運行負(fù)載,向RD設(shè)備發(fā)送指令。在agent代理程序的上層,是虛擬化的應(yīng)用程序接口(API),是連接RD設(shè)備和虛擬化調(diào)度單元的橋梁,裝有相同服務(wù)程序的RD設(shè)備會被組織成一個大的虛擬機,提供上述所述的網(wǎng)絡(luò)服務(wù)。而對于通過網(wǎng)絡(luò)協(xié)議(例如rtmp/http/rtsp/hls/p2p協(xié)議)訪問虛擬機VM的客戶端來說,其感受到的就是一個真實的服務(wù)器,同樣的,對于使用上層用戶界面(UI)的調(diào)用者來說,管理的也是一個個的真實服務(wù)器。
[0005]在具體應(yīng)用中,如果想要利用虛擬機VM來提供音視頻直播加速,可以將這些虛擬機服務(wù)器作為一個虛擬化應(yīng)用層,并加入到傳統(tǒng)的CDN-P2P網(wǎng)絡(luò)中,替代了原有架構(gòu)中CDN層和播放器的數(shù)據(jù)傳送功能。虛擬機VM還可以和云端的輔助系統(tǒng)進行通信,獲取來自源站的信息,如視頻直播內(nèi)容源,然后虛擬機VM就成為一個虛擬的CDN直播分發(fā)服務(wù)器,向播放器提供各種服務(wù),例如提供p2p的傳輸服務(wù)等。在實現(xiàn)上,按照不同的運營商區(qū)域,配置若干虛擬機的服務(wù)器,作為邊緣的CDN節(jié)點,其上層是原有的真實CDN服務(wù)器層,這里只需要一條鏈路就可以把視頻內(nèi)容下發(fā)到虛擬服務(wù)器上,再由虛擬服務(wù)器轉(zhuǎn)發(fā)給客戶端,而在實際使用中,為保證系統(tǒng)的健壯性,可以再增加若干條鏈路,保證系統(tǒng)可以穩(wěn)定工作。
[0006]現(xiàn)有技術(shù)中一個虛擬機VM所能提供的對外帶寬總量是由虛擬機VM中所有的RD設(shè)備所能提供的上行帶寬總量所限定,所以通過限定分配給虛擬機VM的RD數(shù)量,也就限定了VM的帶寬。但如果為一個虛擬機VM分配過多的帶寬,而實際使用時客戶端數(shù)量沒有那么多,就會造成帶寬浪費。而如果為一個虛擬機VM分配的帶寬過少,導(dǎo)致實際使用時客戶端的連接總是無法滿足,就會導(dǎo)致服務(wù)質(zhì)量下降,因此,如何對RD設(shè)備進行調(diào)度和分配是業(yè)界需要解決的問題。
【發(fā)明內(nèi)容】
[0007]鑒于上述問題,本發(fā)明實施例提供一種實現(xiàn)虛擬機真實設(shè)備調(diào)度的方法及裝置,以合理調(diào)度真實設(shè)備的閑散帶寬,保證能最有效的滿足用戶的需求,從而保證服務(wù)的質(zhì)量。
[0008]為了解決上述技術(shù)問題,本發(fā)明實施例提供的一種實現(xiàn)虛擬機真實設(shè)備調(diào)度的方法,其包括:
[0009]檢測當(dāng)前目標(biāo)虛擬機的連接數(shù)變化量;
[0010]將所述連接數(shù)變化量轉(zhuǎn)換為對應(yīng)的真實設(shè)備變化量;
[0011 ]根據(jù)所述真實設(shè)備變化量確定當(dāng)前的真實設(shè)備變化趨勢級別;
[0012]根據(jù)當(dāng)前的真實設(shè)備變化趨勢級別相應(yīng)對分配給該目標(biāo)虛擬機的真實設(shè)備進行調(diào)度。
[0013]其中,檢測目標(biāo)虛擬機的連接數(shù)變化量包括:
[0014]按照指定統(tǒng)計周期時間對目標(biāo)虛擬機的連接數(shù)進行采樣;
[0015]將當(dāng)前統(tǒng)計周期時間內(nèi)采樣得到的連接數(shù)與前一統(tǒng)計周期時間內(nèi)采樣得到的連接數(shù)進行比較確定當(dāng)前目標(biāo)虛擬機的連接數(shù)變化量。
[0016]其中,將所述連接數(shù)變化量轉(zhuǎn)換為對應(yīng)的真實設(shè)備變化量包括:
[0017]將所述連接數(shù)變化量轉(zhuǎn)換為對應(yīng)的帶寬變化量;
[0018]將所述帶寬變化量轉(zhuǎn)換為對應(yīng)的真實設(shè)備變化量。
[0019]其中,根據(jù)所述真實設(shè)備變化量確定當(dāng)前的真實設(shè)備變化趨勢級別包括:
[0020]根據(jù)真實設(shè)備變化量確定真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目;
[0021 ]根據(jù)真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目和當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目確定當(dāng)前的真實設(shè)備變化趨勢級別。
[0022]其中,根據(jù)真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目和當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目確定當(dāng)前的真實設(shè)備變化趨勢級別包括:
[0023]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目值大于零,且所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目值大于當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目,則確定當(dāng)前的真實設(shè)備變化趨勢級別為快速增加趨勢級別;
[0024]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目大于零,且所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目小于當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目與調(diào)整門限閾值系數(shù)的乘積,則確定當(dāng)前的真實設(shè)備變化趨勢為基本穩(wěn)定趨勢級別;
[0025]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目大于零,且所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目大于當(dāng)前分配窗口大小所對應(yīng)基數(shù)數(shù)目與調(diào)整門限閾值系數(shù)的乘積,并小于當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目,則確定當(dāng)前的真實設(shè)備變化趨勢為緩慢增加趨勢級別;
[0026]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目大于零,且富余至少一倍以上當(dāng)前分配窗口大小所對應(yīng)基數(shù)數(shù)目的帶寬,則確定當(dāng)前的真實設(shè)備變化趨勢為富余趨勢級別;
[0027]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目小于零,且所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目小于負(fù)的當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目,則確定當(dāng)前的真實設(shè)備變化趨勢級別為快速減少趨勢級別;
[0028]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目小于零,且所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目大于負(fù)的當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目與調(diào)整門限閾值系數(shù)的乘積,則確定當(dāng)前的真實設(shè)備變化趨勢為基本穩(wěn)定趨勢級別;
[0029]若所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目小于零,且所述真實設(shè)備變化所對應(yīng)的基數(shù)數(shù)目小于負(fù)的當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目與調(diào)整門限閾值系數(shù)的乘積,并大于負(fù)的當(dāng)前分配窗口大小所對應(yīng)的基數(shù)數(shù)目,則確定當(dāng)前的真實設(shè)備變化趨勢為緩慢減少趨勢級別。
[0030]其中,對分配給該目標(biāo)虛擬機的真實設(shè)備進行調(diào)度包括:
[0031]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整。
[0032]其中,真實設(shè)備變化趨勢級別為快速增加趨勢級別;
[0033]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整包括:
[0034]調(diào)整分配窗口大小為當(dāng)前值的兩倍;
[0035]給目標(biāo)虛擬機新分配調(diào)整后的分配窗口大小所對應(yīng)基數(shù)數(shù)目所代表的數(shù)量的真實設(shè)備。
[0036]其中,真實設(shè)備變化趨勢級別為緩慢增加趨勢級別;
[0037]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整包括:
[0038]保持當(dāng)前的分配窗口大小不變;
[0039]給目標(biāo)虛擬機新分配當(dāng)前分配窗口大小所對應(yīng)基數(shù)數(shù)目所代表的數(shù)量的真實設(shè)備。
[0040]其中,真實設(shè)備變化趨勢級別為基本穩(wěn)定趨勢級別;
[0041 ]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整包括:
[0042]保持當(dāng)前的分配窗口大小不變;
[0043]判斷當(dāng)前需要的帶寬總量是否大于所有真實設(shè)備可提供的帶寬總量,若判斷結(jié)果為是,則給目標(biāo)虛擬機新分配當(dāng)前分配窗口大小所對應(yīng)基數(shù)數(shù)目所代表的數(shù)量的真實設(shè)備,否則,繼續(xù)保持目標(biāo)虛擬機當(dāng)前的真實設(shè)備數(shù)量。
[0044]其中,真實設(shè)備變化趨勢級別為緩慢減少趨勢級別;
[0045]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整包括:
[0046]保持當(dāng)前的分配窗口大小不變;
[0047]以基數(shù)為單位回收目標(biāo)虛擬機中全部沒有客戶端連接的真實設(shè)備組。
[0048]其中,真實設(shè)備變化趨勢級別為快速減少趨勢級別;
[0049]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整包括:
[0050]調(diào)整分配窗口大小為當(dāng)前值的一半,如果新的值不是一個整數(shù),則向上取整數(shù);
[0051]以基數(shù)為單位回收目標(biāo)虛擬機中全部沒有客戶端連接的真實設(shè)備組。
[0052]其中,真實設(shè)備變化趨勢級別為富余趨勢級別;
[0053]對分配給該目標(biāo)虛擬機的真實設(shè)備進行分配窗口大小和真實設(shè)備數(shù)量的調(diào)整包括:
[0054]調(diào)整分配窗口大小為當(dāng)前值的一半,如果新值不是整數(shù),則向上取整數(shù);
[0055]以基數(shù)為單位回收目標(biāo)虛擬機中全部沒有客戶端連接的真實設(shè)備組。
[0056]其中,對目標(biāo)虛擬機的真實設(shè)備數(shù)量按照下述任一種方式進行初始分配:
[0057]全部分配方式;折半分配方式、最小分配方式以及中間量分配方式。
[0058]根據(jù)本發(fā)明的另一方面,本發(fā)明實施例提供的一種實現(xiàn)虛擬機真實設(shè)備調(diào)度的裝置,其包括:
[0059]檢測處理模塊,用于檢測當(dāng)前目標(biāo)虛擬機的連接數(shù)變化量;
[0060]轉(zhuǎn)換處理模塊,用于將所述連接數(shù)變化量轉(zhuǎn)換為對應(yīng)的真實設(shè)備變化量;
[0061]真實設(shè)備變化趨勢級別確定處理模塊,用于根據(jù)所述真實設(shè)備變化量確定當(dāng)前的真實設(shè)備變化趨勢級別;
[0062]調(diào)度處理模塊,根據(jù)當(dāng)前的真實設(shè)備變化趨勢級別相應(yīng)對分配給該目標(biāo)虛擬機的真實設(shè)備進行調(diào)度。
[0063]其中,檢測處理模塊包括:
[0064]采樣子模塊,用于按照指定統(tǒng)計周期時間對目標(biāo)虛擬機的連接數(shù)進行采樣;
[0065]第一確定子模塊,用于將當(dāng)前統(tǒng)計周期時間內(nèi)采樣得到的連接數(shù)與前一統(tǒng)計周期時間內(nèi)采樣得到的連接數(shù)進行比較確定當(dāng)前目標(biāo)虛擬機的連接數(shù)變化量。
[0066]其中,轉(zhuǎn)換處理模塊包括:
[0