本發(fā)明涉及多媒體網(wǎng)絡(luò)與云計(jì)算資源管理領(lǐng)域,更具體地,涉及一種應(yīng)用于云直播平臺(tái)的上傳帶寬優(yōu)化方法。
背景技術(shù):
隨著視頻終端設(shè)備的廣泛覆蓋以及互聯(lián)網(wǎng)高帶寬消耗應(yīng)用的興起,云直播平臺(tái)相繼出現(xiàn)并帶來(lái)了巨幅增長(zhǎng)的網(wǎng)絡(luò)流量。近年來(lái),國(guó)內(nèi)外涌現(xiàn)了許多云直播平臺(tái),并且進(jìn)行了許多成功的實(shí)踐。國(guó)內(nèi)比較熱門的云直播平臺(tái)有斗魚(yú)直播平臺(tái)、虎牙直播平臺(tái)和龍珠直播平臺(tái)。國(guó)外比較熱門的云直播平臺(tái)有twitch.tv、youtube、azubu.tv。云直播平臺(tái)的內(nèi)容覆蓋廣泛,涉及游戲內(nèi)容直播、娛樂(lè)綜藝直播、體育節(jié)目直播等等。
云直播平臺(tái)架構(gòu)主要涉及三個(gè)不同的群體:視頻流上傳者、云直播平臺(tái)和觀眾。上傳者可以使用各種終端設(shè)備(如個(gè)人電腦,智能手機(jī),平板電腦等)實(shí)時(shí)上傳視頻流,云直播平臺(tái)接收上傳者上傳的視頻流,并提供轉(zhuǎn)碼服務(wù),然后分發(fā)轉(zhuǎn)碼后的視頻流給觀眾。上傳者和觀眾都可以分布在全球各地。
在云直播平臺(tái)的架構(gòu)中,視頻流的傳輸主要包括三個(gè)方面:上傳者上傳視頻流到云直播平臺(tái),云直播平臺(tái)內(nèi)部的視頻傳輸,云直播平臺(tái)向觀眾分發(fā)視頻流。本發(fā)明關(guān)注的部分主要是視頻流的上傳部分。
隨著互聯(lián)網(wǎng)應(yīng)用的不斷增加,帶寬成為一種有限的資源,如何充分有效的利用和分配帶寬是一個(gè)重要的問(wèn)題。對(duì)于云直播平臺(tái)來(lái)說(shuō),上傳帶寬是有限的,隨著上傳者數(shù)量的不斷增長(zhǎng),上傳帶寬將會(huì)成為云直播平臺(tái)的一個(gè)瓶頸。對(duì)于用戶來(lái)說(shuō),用戶上傳視頻可能會(huì)引起流量費(fèi)用,并且使用不同的碼率(即不同的視頻流質(zhì)量)將會(huì)引發(fā)不一樣的流量費(fèi)用。然后,在目前已有的云直播平臺(tái)架構(gòu)之中,上傳者可以任意設(shè)置上傳碼率,而這將會(huì)引起上傳帶寬資源的浪費(fèi)。另外,在云直播平臺(tái)的服務(wù)之中,不同上傳者上傳的視頻,有著不同的觀眾數(shù)量,并且上傳者上傳視頻的質(zhì)量將會(huì)很大影響觀眾的用戶體驗(yàn)。因此,如何在上傳帶寬有限的情況下選擇上傳者上傳視頻的碼率,并同時(shí)考慮每個(gè)上傳者的觀眾用戶體驗(yàn),以及合理降低上傳視頻所帶來(lái)的流量費(fèi)用,這是一個(gè)具有挑戰(zhàn)性的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為解決現(xiàn)有的云直播平臺(tái)存在的上傳帶寬分配和使用不合理的問(wèn)題,提供了一種應(yīng)用于云直播平臺(tái)的上傳帶寬優(yōu)化方法,該方法從云直播平臺(tái)的角度出發(fā),在上傳帶寬有限的情況下,降低上傳者的帶寬開(kāi)銷,同時(shí)保證用戶的良好觀看體驗(yàn),并且考慮不同上傳者的觀看用戶數(shù)量,能夠在降低流量費(fèi)用的同時(shí)提供盡可能好的用戶體驗(yàn)。
為實(shí)現(xiàn)以上發(fā)明目的,采用的技術(shù)方案是:
一種應(yīng)用于云直播平臺(tái)的上傳帶寬優(yōu)化方法,包括以下步驟:
s1.定義集合u={u1,u2,...,un}表示上傳者群體,
s2.定義第i個(gè)上傳者的帶寬開(kāi)銷ci為:
ci=ci*ri
其中ci表示單位帶寬消耗所引發(fā)的流量費(fèi)用;
s3.定義第i個(gè)上傳者的觀看用戶的qoe模型為:
定義第i個(gè)上傳者以最小上傳帶寬上傳時(shí)其觀看用戶的qoe模型為:
s4.結(jié)合第i個(gè)上傳者的帶寬開(kāi)銷和觀看用戶的qoe定義效用模型來(lái)對(duì)當(dāng)前的上傳碼率進(jìn)行評(píng)價(jià):
其中,k表示帶寬開(kāi)銷的權(quán)重;
定義第i個(gè)上傳者以最小上傳帶寬上傳時(shí)其效用模型為:
s5.結(jié)合s4得到的效用模型和第i個(gè)上傳者的觀看用戶數(shù)量vi定義第i個(gè)上傳者的效用函數(shù)為:
s6.對(duì)集合u={u1,u2,...,un}中的每一個(gè)上傳者執(zhí)行步驟s1~s5的操作得到每一個(gè)上傳者的效用函數(shù);
s7.將上傳帶寬的優(yōu)化問(wèn)題定義為納什議價(jià)問(wèn)題,定義納什議價(jià)問(wèn)題為:
其中集合
s8.結(jié)合p1問(wèn)題定義相對(duì)應(yīng)的p2問(wèn)題:
s9.對(duì)p2問(wèn)題進(jìn)行拉格朗日轉(zhuǎn)換,得到p2問(wèn)題的拉格朗日函數(shù)為:
其中
s10.對(duì)拉格朗日函數(shù)進(jìn)行分解,拉格朗日函數(shù)被重寫(xiě)為:
其中
s11.令每一個(gè)關(guān)于li的拉格朗日函數(shù)的倒數(shù)為0,得到相應(yīng)的上傳者上傳碼率的最優(yōu)選擇,即:
其中
在具體的實(shí)施過(guò)程中,在使用上傳帶寬優(yōu)化方法得到各個(gè)上傳者上傳碼率的最優(yōu)選擇后,需要對(duì)拉格朗日乘子
對(duì)p2問(wèn)題進(jìn)行多分解,轉(zhuǎn)換為p3問(wèn)題:
p3:maxg(α,β,γ)
其中
(1)拉格朗日乘子
(2)拉格朗日乘子
(3)拉格朗日乘子γ的更新策略為:
其中,s表示迭代的順序,ξ表示每一次迭代的步長(zhǎng);當(dāng)滿足|g(s+1)-g(s)|≤∈時(shí)不再對(duì)拉格朗日乘子
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
本發(fā)明從云直播平臺(tái)的角度出發(fā),在上傳帶寬有限的情況下,降低上傳者的帶寬開(kāi)銷,同時(shí)保證用戶的良好觀看體驗(yàn),并且考慮不同上傳者的觀看用戶數(shù)量,能夠在降低流量費(fèi)用的同時(shí)提供盡可能好的用戶體驗(yàn)。本發(fā)明基于nbs(即nashbargainingsolution,納什議價(jià)解決方案)的優(yōu)化框架,可以在上傳帶寬受限的情況下,考慮到不同上傳者的不同觀看用戶數(shù)量,公平有效地給每個(gè)參與者分配上傳帶寬,在實(shí)現(xiàn)個(gè)體利益最優(yōu)的同時(shí)實(shí)現(xiàn)全局最優(yōu)。
附圖說(shuō)明
圖1為方法的流程示意圖。
具體實(shí)施方式
附圖僅用于示例性說(shuō)明,不能理解為對(duì)本專利的限制;
以下結(jié)合附圖和實(shí)施例對(duì)本發(fā)明做進(jìn)一步的闡述。
實(shí)施例1
如圖1所示,本發(fā)明提供的方法具體包括以下步驟:
s1.定義集合u={u1,u2,...,un}表示上傳者群體,
s2.定義第i個(gè)上傳者的帶寬開(kāi)銷ci為:
ci=ci*ri
其中ci表示單位帶寬消耗所引發(fā)的流量費(fèi)用;
s3.定義第i個(gè)上傳者的觀看用戶的qoe模型為:
定義第i個(gè)上傳者以最小上傳帶寬上傳時(shí)其觀看用戶的qoe模型為:
s4.結(jié)合第i個(gè)上傳者的帶寬開(kāi)銷和觀看用戶的qoe定義效用模型來(lái)對(duì)當(dāng)前的上傳碼率進(jìn)行評(píng)價(jià):
其中,k表示帶寬開(kāi)銷的權(quán)重;
定義第i個(gè)上傳者以最小上傳帶寬上傳時(shí)其效用模型為:
s5.結(jié)合s4得到的效用模型和第i個(gè)上傳者的觀看用戶數(shù)量vi定義第i個(gè)上傳者的效用函數(shù)為:
s6.對(duì)集合u={u1,u2,...,un}中的每一個(gè)上傳者執(zhí)行步驟s1~s5的操作得到每一個(gè)上傳者的效用函數(shù);
s7.將上傳帶寬的優(yōu)化問(wèn)題定義為納什議價(jià)問(wèn)題,定義納什議價(jià)問(wèn)題為:
其中集合
s8.結(jié)合p1問(wèn)題定義相對(duì)應(yīng)的p2問(wèn)題:
s9.對(duì)p2問(wèn)題進(jìn)行拉格朗日轉(zhuǎn)換,得到p2問(wèn)題的拉格朗日函數(shù)為:
其中
s10.對(duì)拉格朗日函數(shù)進(jìn)行分解,拉格朗日函數(shù)被重寫(xiě)為:
其中
s11.令每一個(gè)關(guān)于li的拉格朗日函數(shù)的倒數(shù)為0,得到相應(yīng)的上傳者上傳碼率的最優(yōu)選擇,即:
其中
上述方案中,本發(fā)明提供的方法主要進(jìn)行上傳帶寬的優(yōu)化,并不考慮云直播平臺(tái)的轉(zhuǎn)碼和傳輸視頻流給觀眾的部分。因此,本發(fā)明定義用戶的qoe由上傳者上傳的視頻碼率來(lái)決定,可以理解為當(dāng)上傳者以一個(gè)碼率上傳視頻之后,其觀看用戶可以有機(jī)會(huì)以這個(gè)碼率進(jìn)行觀看視頻。
上述方案中,本發(fā)明采用nbs(即nashbargainingsolution,納什議價(jià)解決方案)的優(yōu)化策略。nbs的內(nèi)在思想在于,在假定其他參與者的選擇策略不變的情況下,單個(gè)參與者可以計(jì)算出他的最優(yōu)選擇,并且在其他參與者沒(méi)有改變他們的選擇策略時(shí),任何參與者都不能采用其他的選擇來(lái)獲取更高的效用。這是一種基于博弈論的資源分配策略,可以保證公平性和有效性,能夠保證個(gè)體利益最優(yōu)的同時(shí),保證全局利用的最大化。
在具體的實(shí)施過(guò)程中,在使用上傳帶寬優(yōu)化方法得到各個(gè)上傳者上傳碼率的最優(yōu)選擇后,需要對(duì)拉格朗日乘子
對(duì)p2問(wèn)題進(jìn)行多分解,轉(zhuǎn)換為p3問(wèn)題:
p3:maxg(α,β,γ)
其中
(1)拉格朗日乘子
(2)拉格朗日乘子
(3)拉格朗日乘子γ的更新策略為:
其中,s表示迭代的順序,ξ表示每一次迭代的步長(zhǎng);當(dāng)滿足|g(s+1)-g(s)|≤∈時(shí)不再對(duì)拉格朗日乘子
其中,本發(fā)明提供的優(yōu)化方法的偽代碼如下:
顯然,本發(fā)明的上述實(shí)施例僅僅是為清楚地說(shuō)明本發(fā)明所作的舉例,而并非是對(duì)本發(fā)明的實(shí)施方式的限定。對(duì)于所屬領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在上述說(shuō)明的基礎(chǔ)上還可以做出其它不同形式的變化或變動(dòng)。這里無(wú)需也無(wú)法對(duì)所有的實(shí)施方式予以窮舉。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明權(quán)利要求的保護(hù)范圍之內(nèi)。