本發(fā)明是有關(guān)于一種負(fù)載平衡系統(tǒng)、負(fù)載平衡裝置及拓樸管理方法,且也有關(guān)于一種能最佳化利用頻寬及硬體資源的負(fù)載平衡系統(tǒng)、負(fù)載平衡裝置及拓樸管理方法。
背景技術(shù):
隨著網(wǎng)際網(wǎng)絡(luò)技術(shù)與云端運算技術(shù)快速發(fā)展,云端運算服務(wù)具備可靠性高、建置成本低、擴展性佳等優(yōu)勢,企業(yè)可隨時利用云端環(huán)境快速部署虛擬機器以提供各式應(yīng)用服務(wù)如web檔案傳輸、影音隨選視頻信息(videoondemand)、影音串流(livestreaming)等,解決了傳統(tǒng)自主建置系統(tǒng)設(shè)備可能導(dǎo)致使用率不佳與設(shè)備維護的問題。雖然云端運算服務(wù)帶來許多好處,對企業(yè)而言,如何有效率地依其用戶數(shù)量調(diào)整云端系統(tǒng)服務(wù)規(guī)模以維持良好的服務(wù)品質(zhì),是一項重要的議題。
以影音串流應(yīng)用服務(wù)為例,影音發(fā)布端利用影音發(fā)布軟件或裝置將影音串流上傳至影音服務(wù)系統(tǒng)指定的串流來源服務(wù)器(originserver)后,再由串流來源服務(wù)器將串流資料擴散至串流邊緣服務(wù)器(edgeserver)以服務(wù)使用者連線進行影音播放,此為典型且已廣泛被使用的來源-邊緣架構(gòu)。在此架構(gòu)中,影音服務(wù)系統(tǒng)會配置一負(fù)載平衡服務(wù)器(loadbalancer)接收影音串流觀看請求并進行連線資料分流,指當(dāng)使用者欲觀看某一影音頻道時,需先連線至負(fù)載平衡服務(wù)器,再由負(fù)載平衡服務(wù)器決定此一使用者連線應(yīng)重新導(dǎo)向(redirect)至哪一臺串流邊緣服務(wù)器以取得該影音頻道的影音串流資料。其中,每一影音頻道可對應(yīng)多種解析度產(chǎn)生多個影音串流。另外,不同的影音頻道依其影音內(nèi)容熱門程度與播放時段等因素影響,會有不同數(shù)量的線上觀賞人數(shù),若影音串流系統(tǒng)配置服務(wù)使用者的串流邊緣服務(wù)器不足,則在大量觀看人數(shù)的情形下,易導(dǎo)致連線擁塞,使得影音播放不順暢與延遲時間上升而造成使用者服務(wù)體驗品質(zhì)下降。反之,若配置的串流邊緣服務(wù)器數(shù)量過多,則可能導(dǎo)致有些串流邊緣服務(wù)器的使用者觀看數(shù)量偏低,而造成云端資源浪費與主機租用成本提高。
目前已有許多網(wǎng)絡(luò)流量的負(fù)載平衡方法被提出與應(yīng)用,例如隨機選擇(random)、輪替(roundrobin)、加權(quán)輪替(weightedroundrobin,wrr)、加權(quán)公平佇列(weightedfairqueuing,wfq)、最少連接(leastconnection)、加權(quán)最少連接(weightedleastconnection)、服務(wù)器負(fù)載(serverload)評估等。在多影音串流與動態(tài)觀看人數(shù)的影音應(yīng)用情境下,如何使用適當(dāng)?shù)呢?fù)載平衡方法并搭配服務(wù)器動態(tài)擴充/縮編機制,達到有效率的影音資料擴散且節(jié)省主機租用成本,便是一項挑戰(zhàn)。
技術(shù)實現(xiàn)要素:
本發(fā)明提出一種拓樸管理方法,包括:
為多個邊緣服務(wù)器的每一個配置及維護一傳輸進度值,并將多個邊緣服務(wù)器分組為多個服務(wù)器群組,其中所述多個服務(wù)器群組的每一個的邊緣服務(wù)器供應(yīng)多個影音串流中的其中一影音串流,所述多個邊緣服務(wù)器的每一個被分組至屬于所述多個服務(wù)器群組之中的至少一服務(wù)器群組;
從所述多個邊緣服務(wù)器之中選擇一第一邊緣服務(wù)器,其中所述第一邊緣服務(wù)器的一頻寬使用率高于一高負(fù)載門檻值并且所述第一邊緣服務(wù)器供應(yīng)所述多個影音串流之中的至少一影音串流的影音資料;
從所述第一邊緣服務(wù)器供應(yīng)的所述至少一影音串流中選擇一第一影音串流;
從所述多個邊緣服務(wù)器之中選擇一第二邊緣服務(wù)器;
將所述第一影音串流的影音資料同步到所述第二邊緣服務(wù)器;
將所述第二邊緣服務(wù)器的傳輸進度值設(shè)定為所述第一邊緣服務(wù)器的傳輸進度值;以及
將所述第二邊緣服務(wù)器加入供應(yīng)所述第一影音串流的服務(wù)器群組。
優(yōu)選的,為所述多個邊緣服務(wù)器的每一個配置及維護所述傳輸進度值的步驟包括:
從一用戶端裝置接收對應(yīng)所述多個影音串流之中的一第二影音串流的一下載請求;
依據(jù)所述下載請求從上述多個服務(wù)器群組之中選擇一第一服務(wù)器群組,其中所述第一服務(wù)器群組供應(yīng)所述第二影音串流;以及
依據(jù)所述第一服務(wù)器群組的邊緣服務(wù)器的傳輸進度值,從所述第一服務(wù)器群組的邊緣服務(wù)器之中選擇其中一個邊緣服務(wù)器作為一第三邊緣服務(wù)器來提供所述第二影音串流的一影音資料給所述用戶端裝置。
優(yōu)選的,依據(jù)所述第一服務(wù)器群組的邊緣服務(wù)器的傳輸進度值,從所述第一服務(wù)器群組的邊緣服務(wù)器之中選擇其中一個邊緣服務(wù)器作為所述第三邊緣服務(wù)器來提供所述第二影音串流的所述影音資料給所述用戶端裝置的步驟包括:
選擇所述第一服務(wù)器群組的邊緣服務(wù)器之中具有一最小傳輸進度值的邊緣服務(wù)器作為所述第三邊緣服務(wù)器;
計算一增值并將所述增值累加至所述第三邊緣服務(wù)器的傳輸進度值;以及
將所述下載請求重新導(dǎo)向到所述第三邊緣服務(wù)器。
優(yōu)選的,所述增值為所述影音資料大小除以所述第三邊緣服務(wù)器的一第一頻寬參數(shù),其中所述第一頻寬參數(shù)是依據(jù)所述第三邊緣服務(wù)器的對外頻寬而決定。
優(yōu)選的,選擇所述第二邊緣服務(wù)器的步驟包括:
在所述多個邊緣服務(wù)器之中不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中,選擇頻寬使用率不為零且頻寬使用率低于一低負(fù)載門檻值的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,選擇所述第二邊緣服務(wù)器的步驟還包括:
若在所述多個邊緣服務(wù)器之中不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中不存在頻寬使用率不為零且頻寬使用率低于所述低負(fù)載門檻值的邊緣服務(wù)器時,則在不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的所述多個邊緣服務(wù)器之中,選擇頻寬使用率介于所述低負(fù)載門檻值及所述高負(fù)載門檻值之間的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,選擇所述第二邊緣服務(wù)器的步驟還包括:
若在不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中,不存在頻寬使用率介于所述低負(fù)載門檻值及所述高負(fù)載門檻值之間的邊緣服務(wù)器時,則選擇頻寬使用率為零的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,還包括:
從一第三影音串流的服務(wù)器群組中選擇一第四邊緣服務(wù)器,其中所述第四邊緣服務(wù)器的傳輸進度值與所述第三影音串流的服務(wù)器群組的邊緣服務(wù)器的傳輸進度值之中的一最小傳輸進度值的一差值在一預(yù)定時間內(nèi)大于或等于一無效門檻值,其中所述預(yù)定時間可等于零;
將所述第四邊緣服務(wù)器從所述第三影音串流的服務(wù)器群組中移除;以及
發(fā)送一信息給所述第三影音串流對應(yīng)的來源服務(wù)器或所述第四邊緣服務(wù)器,以停止將所述第三影音串流的影音資料同步到所述第四邊緣服務(wù)器。
本發(fā)明還提出一種負(fù)載平衡系統(tǒng),包括:
多個邊緣服務(wù)器;
多個來源服務(wù)器,耦接所述多個邊緣服務(wù)器,其中所述多個來源服務(wù)器的每一個產(chǎn)生多個影音串流中的其中一影音串流,所述影音串流的影音資料被同步到所述多個邊緣服務(wù)器中的至少一邊緣服務(wù)器;以及
一負(fù)載平衡裝置,耦接所述多個來源服務(wù)器及所述多個邊緣服務(wù)器,
其中所述負(fù)載平衡裝置為所述多個邊緣服務(wù)器的每一個配置及維護一傳輸進度值,
其中所述負(fù)載平衡裝置將多個邊緣服務(wù)器分組為多個服務(wù)器群組,其中所述多個服務(wù)器群組的每一個的邊緣服務(wù)器供應(yīng)所述影音串流,所述多個邊緣服務(wù)器的每一個被分組至屬于所述多個服務(wù)器群組之中的至少一服務(wù)器群組,
其中所述負(fù)載平衡裝置從所述多個邊緣服務(wù)器之中選擇一第一邊緣服務(wù)器,其中所述第一邊緣服務(wù)器的一頻寬使用率高于一高負(fù)載門檻值并且所述第一邊緣服務(wù)器提供所述多個影音串流之中的至少一影音串流的影音資料,
其中所述負(fù)載平衡裝置從所述第一邊緣服務(wù)器供應(yīng)的所述至少一影音串流中選擇一第一影音串流,
其中所述負(fù)載平衡裝置從所述多個邊緣服務(wù)器之中選擇一第二邊緣服務(wù)器,
其中所述負(fù)載平衡裝置將所述第一影音串流的影音資料同步到所述第二邊緣服務(wù)器,
其中所述負(fù)載平衡裝置將所述第二邊緣服務(wù)器的傳輸進度值設(shè)定為所述第一邊緣服務(wù)器的傳輸進度值,
其中所述負(fù)載平衡裝置將所述第二邊緣服務(wù)器加入供應(yīng)所述第一影音串流的服務(wù)器群組。
優(yōu)選的,所述負(fù)載平衡裝置從一用戶端裝置接收對應(yīng)所述多個影音串流之中的一第二影音串流的一下載請求,其中所述多個服務(wù)器群組之中的一第一服務(wù)器群組供應(yīng)所述第二影音串流,
其中所述負(fù)載平衡裝置依據(jù)所述第一服務(wù)器群組的邊緣服務(wù)器的傳輸進度值,從所述第一服務(wù)器群組的邊緣服務(wù)器之中選擇其中一個邊緣服務(wù)器作為一第三邊緣服務(wù)器來提供所述第二影音串流的一影音資料給所述用戶端裝置。
優(yōu)選的,所述負(fù)載平衡裝置選擇所述第一服務(wù)器群組的邊緣服務(wù)器之中具有一最小傳輸進度值的邊緣服務(wù)器作為所述第三邊緣服務(wù)器,
其中所述負(fù)載平衡裝置計算一增值并將所述增值累加至所述第三邊緣服務(wù)器的傳輸進度值,
其中所述負(fù)載平衡裝置將所述下載請求重新導(dǎo)向到所述第三邊緣服務(wù)器。
優(yōu)選的,所述增值為所述影音資料大小除以所述第三邊緣服務(wù)器的一第一頻寬參數(shù),其中所述第一頻寬參數(shù)是依據(jù)所述第三邊緣服務(wù)器的對外頻寬而決定。
優(yōu)選的,所述負(fù)載平衡裝置在所述多個邊緣服務(wù)器之中不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中,選擇頻寬使用率不為零且頻寬使用率低于一低負(fù)載門檻值的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,若在所述多個邊緣服務(wù)器之中不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中不存在頻寬使用率不為零且頻寬使用率低于所述低負(fù)載門檻值的邊緣服務(wù)器時,則所述負(fù)載平衡裝置在不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的所述多個邊緣服務(wù)器之中,選擇頻寬使用率介于所述低負(fù)載門檻值及所述高負(fù)載門檻值之間的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,若在不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中,不存在頻寬使用率介于所述低負(fù)載門檻值及所述高負(fù)載門檻值之間的邊緣服務(wù)器時,則所述負(fù)載平衡裝置選擇頻寬使用率為零的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,包括:
其中所述負(fù)載平衡裝置從一第三影音串流的服務(wù)器群組中選擇一第四邊緣服務(wù)器,其中所述第四邊緣服務(wù)器的傳輸進度值與所述第三影音串流的服務(wù)器群組的邊緣服務(wù)器的傳輸進度值之中的一最小傳輸進度值的一差值在一預(yù)定時間內(nèi)大于或等于一無效門檻值,其中所述預(yù)定時間可等于零,
其中所述負(fù)載平衡裝置將所述第四邊緣服務(wù)器從所述第三影音串流的服務(wù)器群組中移除,
其中所述負(fù)載平衡裝置發(fā)送一信息給所述第三影音串流對應(yīng)的所述來源服務(wù)器或所述第四邊緣服務(wù)器,以停止將所述第三影音串流的影音資料同步到所述第四邊緣服務(wù)器。
本發(fā)明還提出一種負(fù)載平衡裝置,包括一處理單元及一通信單元,所述負(fù)載平衡裝置通過所述通信單元耦接多個來源服務(wù)器及多個邊緣服務(wù)器,所述多個來源服務(wù)器耦接所述多個邊緣服務(wù)器,其中所述多個來源服務(wù)器的每一個產(chǎn)生多個影音串流中的其中一影音串流,所述影音串流的影音資料被同步到所述多個邊緣服務(wù)器中的至少一邊緣服務(wù)器,
其中所述處理單元為所述多個邊緣服務(wù)器的每一個配置及維護一傳輸進度值,
其中所述處理單元將多個邊緣服務(wù)器分組為多個服務(wù)器群組,其中所述多個服務(wù)器群組的每一個的邊緣服務(wù)器供應(yīng)所述影音串流,所述多個邊緣服務(wù)器的每一個被分組至屬于所述多個服務(wù)器群組之中的至少一服務(wù)器群組,
其中所述處理單元從所述多個邊緣服務(wù)器之中選擇一第一邊緣服務(wù)器,其中所述第一邊緣服務(wù)器的一頻寬使用率高于一高負(fù)載門檻值并且所述第一邊緣服務(wù)器提供所述多個影音串流之中的至少一影音串流的影音資料,
其中所述處理單元從所述第一邊緣服務(wù)器供應(yīng)的所述至少一影音串流中選擇一第一影音串流,
其中所述處理單元從所述多個邊緣服務(wù)器之中選擇一第二邊緣服務(wù)器,
其中所述通信單元發(fā)送一信息給所述第一影音串流所對應(yīng)的所述來源服務(wù)器或所述第二邊緣服務(wù)器,以將所述第一影音串流的影音資料同步到所述第二邊緣服務(wù)器,
其中所述處理單元將所述第二邊緣服務(wù)器的傳輸進度值設(shè)定為所述第一邊緣服務(wù)器的傳輸進度值,
其中所述處理單元將所述第二邊緣服務(wù)器加入供應(yīng)所述第一影音串流的服務(wù)器群組。
優(yōu)選的,所述處理單元從一用戶端裝置接收對應(yīng)所述多個影音串流之中的一第二影音串流的一下載請求,其中所述多個服務(wù)器群組之中的一第一服務(wù)器群組供應(yīng)所述第二影音串流,
其中所述處理單元依據(jù)所述第一服務(wù)器群組的邊緣服務(wù)器的傳輸進度值,從所述第一服務(wù)器群組的邊緣服務(wù)器之中選擇其中一個邊緣服務(wù)器作為一第三邊緣服務(wù)器來提供所述第二影音串流的一影音資料給所述用戶端裝置。
優(yōu)選的,所述處理單元選擇所述第一服務(wù)器群組的邊緣服務(wù)器之中具有一最小傳輸進度值的邊緣服務(wù)器作為所述第三邊緣服務(wù)器,
其中所述處理單元計算一增值并將所述增值累加至所述第三邊緣服務(wù)器的傳輸進度值,
其中所述處理單元將所述下載請求重新導(dǎo)向到所述第三邊緣服務(wù)器。
優(yōu)選的,所述增值為所述影音資料大小除以所述第三邊緣服務(wù)器的一第一頻寬參數(shù),其中所述第一頻寬參數(shù)是依據(jù)所述第三邊緣服務(wù)器的對外頻寬而決定。
優(yōu)選的,所述處理單元在所述多個邊緣服務(wù)器之中不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中,選擇頻寬使用率不為零且頻寬使用率低于一低負(fù)載門檻值的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,若在所述多個邊緣服務(wù)器之中不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中不存在頻寬使用率不為零且頻寬使用率低于所述低負(fù)載門檻值的邊緣服務(wù)器時,則所述處理單元在不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的所述多個邊緣服務(wù)器之中,選擇頻寬使用率介于所述低負(fù)載門檻值及所述高負(fù)載門檻值之間的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,若在不屬于供應(yīng)所述第一影音串流的服務(wù)器群組的邊緣服務(wù)器之中,不存在頻寬使用率介于所述低負(fù)載門檻值及所述高負(fù)載門檻值之間的邊緣服務(wù)器時,則所述處理單元選擇頻寬使用率為零的邊緣服務(wù)器作為所述第二邊緣服務(wù)器。
優(yōu)選的,所述處理單元從一第三影音串流的服務(wù)器群組中選擇一第四邊緣服務(wù)器,其中所述第四邊緣服務(wù)器的傳輸進度值與所述第三影音串流的服務(wù)器群組的邊緣服務(wù)器的傳輸進度值之中的一最小傳輸進度值的一差值在一預(yù)定時間內(nèi)大于或等于一無效門檻值,其中所述預(yù)定時間可等于零,
其中所述處理單元將所述第四邊緣服務(wù)器從所述第三影音串流的服務(wù)器群組中移除,
其中所述通信單元發(fā)送一信息給所述第三影音串流對應(yīng)的所述來源服務(wù)器或所述第四邊緣服務(wù)器,以停止將所述第三影音串流的影音資料同步到所述第四邊緣服務(wù)器。
附圖說明
圖1是根據(jù)一范例實施例的負(fù)載平衡系統(tǒng)的方塊圖。
圖2是根據(jù)一范例實施例的負(fù)載平衡方法的流程圖。
圖3是根據(jù)一范例實施例的負(fù)載平衡方法的范例。
圖4是根據(jù)一范例實施例的負(fù)載平衡方法的另一范例。
圖5a及圖5b是根據(jù)一范例實施例用以說明負(fù)載平衡方法運作原理的一范例。
圖6為根據(jù)一范例實施例的影音擴散拓樸簡化方法的流程圖。
圖7是根據(jù)一范例實施例的影音擴散拓樸簡化方法的范例。
圖8為根據(jù)一范例實施例的影音擴散拓樸強化方法的流程圖。
圖9為根據(jù)一范例實施例的影音擴散拓樸強化方法的范例。
圖10為根據(jù)一范例實施例的服務(wù)器動態(tài)擴充方法的范例。
圖11為根據(jù)一范例實施例的服務(wù)器動態(tài)擴充方法的另一范例。
圖12a及圖12b為根據(jù)一范例實施例的服務(wù)器動態(tài)縮減方法的流程圖。
圖13a及圖13b為根據(jù)一范例實施例的服務(wù)器動態(tài)縮減方法的范例。
其中附圖標(biāo)記為:
100:負(fù)載平衡系統(tǒng)
110:負(fù)載平衡裝置
120-1~120-3:邊緣服務(wù)器
130-1~130-2:來源服務(wù)器
140-1~140-n:用戶端裝置
150:管理裝置
160:數(shù)據(jù)庫
s201、s203、s205:負(fù)載平衡方法的步驟
s601、s603、s605:影音擴散拓樸簡化方法的步驟
s801、s803、s805、s807、s809、s811:影音擴散拓樸強化方法的步驟
s1201、s1203、s1205、s1207、s1209、s1211、s1213:服務(wù)器動態(tài)縮減方法的步驟
具體實施方式
為讓本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合所附圖式作詳細說明如下。
圖1為根據(jù)一范例實施例的負(fù)載平衡系統(tǒng)的方塊圖。
請參照圖1,負(fù)載平衡系統(tǒng)100包括負(fù)載平衡裝置110、邊緣服務(wù)器120-1~120-3及來源服務(wù)器130-1~130-2。首先值得注意的是,盡管在圖1中只繪示了三個邊緣服務(wù)器120-1~120-3及兩個來源服務(wù)器130-1~130-2,但本發(fā)明不限于此,負(fù)載平衡系統(tǒng)100可包括任意數(shù)量的邊緣服務(wù)器及來源服務(wù)器。來源服務(wù)器130-1~130-2所耦接到的邊緣服務(wù)器120-1~120-3的數(shù)量和對象會根據(jù)負(fù)載平衡系統(tǒng)100的負(fù)載平衡狀態(tài)而動態(tài)調(diào)整。負(fù)載平衡系統(tǒng)100可耦接到多個用戶端裝置140-1~140-n及管理裝置150,其中管理裝置150還可耦接到數(shù)據(jù)庫160。用戶端裝置140-1~140-n可為個人電腦、筆記本電腦、平板電腦、智能手機等電子裝置。使用者可通過用戶端裝置140-1~140-n上的網(wǎng)頁瀏覽器或播放器等軟件從邊緣服務(wù)器120-1~120-3下載影音資料。在一范例實施例中,負(fù)載平衡裝置110可為包括處理器(也參考為處理單元)及通信晶片(亦參考為通信單元)的服務(wù)器。
每一邊緣服務(wù)器120-1~120-3及來源服務(wù)器130-1~130-2可設(shè)置于相同或不同的機器中。而每一來源服務(wù)器130-1~130-2也可以與任一邊緣服務(wù)器120-1~120-3設(shè)置于同一個實體機器或同一個虛擬機器。來源服務(wù)器130-1~130-2與邊緣服務(wù)器120-1~120-3設(shè)置于同一個實體或虛擬機器時,來源服務(wù)器130-1~130-2與邊緣服務(wù)器120-1~120-3會共享同一個實體機器或虛擬機器的中央處理單元運算資源與網(wǎng)絡(luò)頻寬資源。負(fù)載平衡裝置110可與任一邊緣服務(wù)器120-1~120-3或來源服務(wù)器130-1~130-2位于相同或不同的實體或虛擬機器。負(fù)載平衡裝置110可以是以軟件實作的程序碼或是以硬體實作的負(fù)載平衡電路,也可以是一個獨立的負(fù)載平衡服務(wù)器。
舉例來說,當(dāng)影音發(fā)布端正在利用影音發(fā)布軟件或裝置將影音串流的影音資料上傳到來源服務(wù)器130-1時,負(fù)載平衡裝置110會根據(jù)影音串流的總流量需求指示來源服務(wù)器130-1將影音資料同步到由邊緣服務(wù)器120-1、120-2所組成的服務(wù)器群組,以提供用戶端裝置140-1~140-n從此服務(wù)器群組中的邊緣服務(wù)器120-1或120-2下載影音資料。詳細來說,負(fù)載平衡裝置110可根據(jù)邊緣服務(wù)器的負(fù)載狀況來調(diào)整影音串流對應(yīng)的服務(wù)器群組,并且動態(tài)擴充或縮減服務(wù)器群組中邊緣服務(wù)器的數(shù)量。
當(dāng)用戶端裝置140-1~140-n要下載影音資料時,用戶端裝置140-1~140-n會發(fā)送請求給負(fù)載平衡裝置110以詢問邊緣服務(wù)器網(wǎng)址,并在獲得此邊緣服務(wù)器網(wǎng)址后發(fā)送請求給此邊緣服務(wù)器以下載影音資料。上述下載過程可采用超本文傳輸協(xié)定(hypertexttransferprotocol,http)網(wǎng)址導(dǎo)向,以相容于現(xiàn)有播放器的影音資料下載。當(dāng)負(fù)載平衡裝置110收到用戶端裝置140-1~140-n的下載請求時,負(fù)載平衡裝置110可依據(jù)用戶端裝置140-1~140-n欲下載的影音串流(例如,來源服務(wù)器130-1的影音串流)對應(yīng)的服務(wù)器群組(例如,邊緣服務(wù)器120-1、120-2)中的邊緣服務(wù)器的負(fù)載情況選擇一個邊緣服務(wù)器(例如,邊緣服務(wù)器120-1)并將其網(wǎng)址回復(fù)給用戶端裝置140-1~140-n。
也就是說,來源服務(wù)器130-1會對影音資料進行編碼并將影音資料擴散到邊緣服務(wù)器120-1、120-2。邊緣服務(wù)器120-1、120-2則會接收編碼后的影音資料并提供影音資料的下載頻寬以供用戶端裝置140-1~140-n來下載。負(fù)載平衡裝置110則會決定影音資料的擴散拓樸,其中擴散拓樸為來源服務(wù)器130-1~130-2將影音資料同步到邊緣服務(wù)器120-1~120-3時,來源服務(wù)器130-1~130-2與這些邊緣服務(wù)器120-1~120-3同步影音串流的影音資料的連接狀態(tài)。負(fù)載平衡裝置110還會決定影音資料的傳輸排程及提供影音資料的下載轉(zhuǎn)址,使得用戶端裝置140-1~140-n可從正確的邊緣服務(wù)器下載影音資料。
另外,管理裝置150會在影音串流發(fā)布時選擇影音串流對應(yīng)的來源服務(wù)器(例如,來源服務(wù)器130-1),并將上述資料記錄于數(shù)據(jù)庫160中。管理裝置150還可對負(fù)載平衡裝置110進行組態(tài)設(shè)定及提供影音串流和服務(wù)器資訊,或者從數(shù)據(jù)庫160中查詢負(fù)載平衡系統(tǒng)100的歷史資料。
圖2是根據(jù)本發(fā)明一范例實施例的負(fù)載平衡方法的流程圖。
請參照圖2,在步驟s201中,負(fù)載平衡裝置110為每一邊緣服務(wù)器配置一傳輸進度值并將多個邊緣服務(wù)器分組為多個服務(wù)器群組。在此每一服務(wù)器群組的邊緣服務(wù)器用以供應(yīng)一影音串流,且每一邊緣服務(wù)器會被分組至這些服務(wù)器群組中的至少一個服務(wù)器群組。在步驟s203中,負(fù)載平衡裝置110從用戶端裝置接收對應(yīng)第二影音串流的一下載請求,并依據(jù)此下載請求從上述多個服務(wù)器群組之中選擇其中一個服務(wù)器群組(以下稱為第一服務(wù)器群組),此第一服務(wù)器群組供應(yīng)此第二影音串流。在步驟s205中,負(fù)載平衡裝置110依據(jù)第一服務(wù)器群組的邊緣服務(wù)器的傳輸進度值,從第一服務(wù)器群組的邊緣服務(wù)器之中選擇其中一個邊緣服務(wù)器作為第三邊緣服務(wù)器來提供第二影音串流的影音資料給用戶端裝置。值得注意的是,第一服務(wù)器群組的邊緣服務(wù)器之中具有最小傳輸進度值的邊緣服務(wù)器會被選作第三邊緣服務(wù)器,而負(fù)載平衡裝置110還會計算一增值并將此增值累加至第三邊緣服務(wù)器的傳輸進度值,負(fù)載平衡裝置110將下載請求重新導(dǎo)向到第三邊緣服務(wù)器。在本范例實施例中,此增值為所述影音資料大小除以第三邊緣服務(wù)器的一第一頻寬參數(shù)。
上述邊緣服務(wù)器對應(yīng)的頻寬參數(shù)是依據(jù)邊緣服務(wù)器的對外頻寬而決定。任意兩個邊緣服務(wù)器的頻寬參數(shù)比例與對外頻寬比例相等。例如,邊緣服務(wù)器1的對外頻寬為100mbps、邊緣服務(wù)器2的對外頻寬為200mbps,則邊緣服務(wù)器1與邊緣服務(wù)器2的頻寬參數(shù)可以分別為100和200、或者分別為100×106和200×106、或者分別為100/(100+200)和200/(100+200),即1/3與2/3…等等。
此外,任意兩個邊緣服務(wù)器的頻寬參數(shù)比例也可設(shè)定與預(yù)留的對外頻寬比例相等。例如,邊緣服務(wù)器1預(yù)留的對外頻寬為80mbps、邊緣服務(wù)器2預(yù)留的對外頻寬為180mbps,則邊緣服務(wù)器1與邊緣服務(wù)器2的頻寬參數(shù)可以分別為80和180、或者分別為80×106和180×106、或者分別為80/(80+180)和180/(80+180),即4/13與9/13…等等。
圖3是根據(jù)本發(fā)明一范例實施例的負(fù)載平衡方法的范例。
請參照圖3,在本范例中有三個影音頻道,也就是頻道a、b、c分別由來源服務(wù)器a、b、c產(chǎn)生對應(yīng)的影音串流,并使用邊緣服務(wù)器1、2、3、4對外供應(yīng)頻寬(本范例實施例假設(shè)頻道與來源服務(wù)器為一一對應(yīng),因此以相同符號a、b、c來同時表示影音頻道及來源服務(wù)器)。其中,頻道a的影音串流同步至邊緣服務(wù)器1和邊緣服務(wù)器2,頻道b的影音串流同步至邊緣服務(wù)器2和邊緣服務(wù)器3,頻道c的影音串流同步至邊緣服務(wù)器3和邊緣服務(wù)器4。邊緣服務(wù)器對于每一頻道提供的分流服務(wù)及其頻寬用量分別以方塊的填滿方式和面積來表示。因此,邊緣服務(wù)器1服務(wù)頻道a、邊緣服務(wù)器2同時服務(wù)頻道a和頻道b,邊緣服務(wù)器3同時服務(wù)頻道b和頻道c,邊緣服務(wù)器4服務(wù)頻道c。此外,為簡化說明,在下文中假設(shè)每一邊緣服務(wù)器的對外頻寬可同時供應(yīng)100臺用戶端裝置140-1~140-n下載頻道影音串流資料。
隨著頻道觀看人數(shù)變化,例如,頻道a觀看人數(shù)從160升至170,頻道b人數(shù)維持80,頻道c人數(shù)從160降至150,本范例實施例的負(fù)載平衡方法可即時調(diào)適邊緣服務(wù)器1、2、3、4對于各頻道的頻寬供應(yīng)量,自動調(diào)整每一頻道的影音串流在邊緣服務(wù)器的頻寬負(fù)載,收斂達成最適當(dāng)?shù)念l寬負(fù)載平衡狀態(tài)。舉例來說,邊緣服務(wù)器2提供給頻道a、b的頻寬從60、40變?yōu)?0、30,而邊緣服務(wù)器3提供給頻道b、c的頻寬從40、60變?yōu)?0、50。
上述每一影音頻道對應(yīng)一來源服務(wù)器,以及來源服務(wù)器對應(yīng)每一影音頻道產(chǎn)生一影音串流的對應(yīng)關(guān)系僅是為了方便說明,實際上每一來源服務(wù)器可同時耦接服務(wù)多個影音頻道,且來源服務(wù)器可為每一影音頻道產(chǎn)生對應(yīng)多種解析度的多個影音串流。對邊緣服務(wù)器而言,將對應(yīng)同一影音頻道的多個影音串流視為不同的影音串流。因此,更精確的說法是,邊緣服務(wù)器提供分流服務(wù)的對象是個別的影音串流,也就是說,對應(yīng)同一影音頻道的多個影音串流的影音資料可被同步至不同的邊緣服務(wù)器。
圖4是根據(jù)本發(fā)明一范例實施例的負(fù)載平衡方法的另一范例。
請參照圖4,頻道a的影音串流同步至邊緣服務(wù)器1、2、3、4,每一邊緣服務(wù)器頻寬用量皆為80,且剩余頻寬皆為20。假設(shè)加入頻道b分享邊緣服務(wù)器4的頻寬,隨著頻道b的觀看人數(shù)增加至80,本范例實施例的負(fù)載平衡方法可將原本頻道a的影音串流在邊緣服務(wù)器4的頻寬用量自動轉(zhuǎn)移至邊緣服務(wù)器1、2、3,使頻道a和頻道b的影音串流的頻寬需求皆能滿足。
從圖3及圖4的范例可得知,當(dāng)影音頻道的頻寬需求隨觀看人數(shù)改變時,使用本范例實施例的負(fù)載平衡方法可自動調(diào)整所有邊緣服務(wù)器的頻寬分配比例。
圖5a及圖5b是根據(jù)本發(fā)明一范例實施例用以說明負(fù)載平衡方法運作原理的一范例。
請參照圖5a,在本范例中有三個影音頻道,頻道a的影音串流同步至邊緣服務(wù)器1和邊緣服務(wù)器2,頻道b的影音串流同步至邊緣服務(wù)器2和邊緣服務(wù)器3,頻道c的影音串流同步至邊緣服務(wù)器3和邊緣服務(wù)器4,其中,負(fù)載平衡裝置110對應(yīng)每一邊緣服務(wù)器配置一傳輸進度值,分別為tp1、tp2、tp3、以及tp4,而bw1到bw4分別為邊緣服務(wù)器1到邊緣服務(wù)器4的頻寬參數(shù)。依據(jù)圖2所揭露的負(fù)載平衡方法流程圖,首先,在步驟s203中,負(fù)載平衡裝置110從用戶端裝置x接收頻道a的影音串流下載請求(reqchannela),并依據(jù)此下載請求從多個服務(wù)器群組之中選擇頻道a影音串流所對應(yīng)的服務(wù)器群組,此服務(wù)器群組包括邊緣服務(wù)器1和邊緣服務(wù)器2。在步驟s205中,負(fù)載平衡裝置110從邊緣服務(wù)器1和邊緣服務(wù)器2之中選擇具有最小傳輸進度值的邊緣服務(wù)器來提供頻道a影音串流的影音資料給用戶端裝置x。假設(shè)目前邊緣服務(wù)器1的頻寬負(fù)載較高,其傳輸進度值tp1大于邊緣服務(wù)器2的傳輸進度值tp2,因而負(fù)載平衡裝置110選擇邊緣服務(wù)器2作為對應(yīng)此下載請求的影音資料提供者,并計算一增值累加至邊緣服務(wù)器2的傳輸進度值tp2(即,tp2←tp2+chunksizea/bw2),如圖5a所示的第①步驟。此增值可為頻道a影音串流的影音資料大小(chunksizea)除以邊緣服務(wù)器2的頻寬參數(shù)(bw2)。當(dāng)用戶端裝置x收到負(fù)載平衡裝置110的重導(dǎo)向回應(yīng)時,從邊緣服務(wù)器2下載對應(yīng)此下載請求的影音資料,如圖5b所示的第①步驟。
接著,負(fù)載平衡裝置110從用戶端裝置y接收頻道b的影音串流下載請求(reqchannelb),并依據(jù)此下載請求選擇頻道b影音串流所對應(yīng)的服務(wù)器群組,即邊緣服務(wù)器2和邊緣服務(wù)器3。類似地,負(fù)載平衡裝置110從頻道b影音串流的服務(wù)器群組中選擇傳輸進度值最小的邊緣服務(wù)器。此時,因為邊緣服務(wù)器2的傳輸進度值tp2已在步驟①中累加而增大,因此負(fù)載平衡裝置110選擇邊緣服務(wù)器3作為對應(yīng)此下載請求的影音資料提供者,并計算一增值累加至邊緣服務(wù)器3的傳輸進度值tp3(即,tp3←tp3+chunksizeb/bw3),如圖5a所示的第②步驟。當(dāng)用戶端裝置y收到負(fù)載平衡裝置110的重導(dǎo)向回應(yīng)時,從邊緣服務(wù)器3下載對應(yīng)此下載請求的影音資料,如圖5b所示的第②步驟。
接著,負(fù)載平衡裝置110從用戶端裝置z接收頻道c的影音串流下載請求(reqchannelc),并依據(jù)此下載請求選擇頻道c影音串流所對應(yīng)的服務(wù)器群組,即邊緣服務(wù)器3和邊緣服務(wù)器4。類似地,負(fù)載平衡裝置110從頻道c影音串流的服務(wù)器群組中選擇傳輸進度值最小的邊緣服務(wù)器。此時,因為邊緣服務(wù)器3的傳輸進度值tp3已在步驟②中累加而增大,因此負(fù)載平衡裝置110選擇邊緣服務(wù)器4作為對應(yīng)此下載請求的影音資料提供者,并計算一增值累加至邊緣服務(wù)器4的傳輸進度值tp4(即,tp4←tp4+chunksizec/bw4),如圖5a的第③步驟。當(dāng)用戶端裝置z收到負(fù)載平衡裝置110的重導(dǎo)向回應(yīng)時,從邊緣服務(wù)器4下載對應(yīng)此下載請求的影音資料,如圖5b的第③步驟。
值得注意的是,依據(jù)圖5a及圖5b范例中的影音資料擴散拓樸,每個頻道所對應(yīng)的服務(wù)器群組僅涵蓋部分的邊緣服務(wù)器,而任一邊緣服務(wù)器(例如邊緣服務(wù)器1)的頻寬負(fù)載卻能平均分散至其他所有的邊緣服務(wù)器(例如邊緣服務(wù)器2~4)。也就是說,頻寬資源用量可在全部的邊緣服務(wù)器之間自適性調(diào)度。因此,本方法通過各影音串流的服務(wù)器群組重疊所造成的資源連通特性,可自動達成系統(tǒng)全部邊緣服務(wù)器的頻寬負(fù)載平衡。
圖6為根據(jù)本發(fā)明一范例實施例的影音擴散拓樸簡化方法的流程圖。
請參照圖6,在步驟s601中,負(fù)載平衡裝置110從對應(yīng)一影音串流的服務(wù)器群組中選擇一無效邊緣服務(wù)器(以下也參考為第四邊緣服務(wù)器),其中此無效邊緣服務(wù)器的傳輸進度值與此服務(wù)器群組的所有邊緣服務(wù)器的傳輸進度值之中的最小傳輸進度值的差值在預(yù)定時間內(nèi)是大于或等于一無效門檻值。值得注意的是,無效門檻值代表邊緣服務(wù)器對應(yīng)該服務(wù)器群組的頻寬用量的偏移上限。此外,上述預(yù)定時間可等于零。在步驟s603中,負(fù)載平衡裝置110將無效邊緣服務(wù)器從服務(wù)器群組中移除,并且在步驟s605中,負(fù)載平衡裝置110發(fā)送信息給此影音串流對應(yīng)的來源服務(wù)器及/或無效邊緣服務(wù)器,以停止將此影音串流的影音資料同步到無效邊緣服務(wù)器。
具體來說,由于對于每一影音串流的服務(wù)器群組只有傳輸進度值最小的邊緣服務(wù)器才會被選擇當(dāng)作此影音串流的資料下載點,因此服務(wù)器群組中傳輸進度值過大的邊緣服務(wù)器在短時間內(nèi)已經(jīng)無法服務(wù)此影音串流,而可將此傳輸進度值過大的邊緣服務(wù)器從服務(wù)器群組中移除。通常這種情況可能發(fā)生在同一個邊緣服務(wù)器被其他影音串流瞬間地過度使用,導(dǎo)致其負(fù)載高于服務(wù)器群組中的其他邊緣服務(wù)器。而無效門檻值的設(shè)定可考慮傳輸進度值瞬間可容忍的累增偏移量,并依據(jù)頻道觀看人數(shù)瞬間增加量的上限來計算。
圖7是根據(jù)本發(fā)明一范例實施例的影音擴散拓樸簡化方法的范例。
請參照圖7,原本頻道a的影音串流同步至邊緣服務(wù)器1,頻道b的影音串流同步至邊緣服務(wù)器1和邊緣服務(wù)器2,頻道a與b的觀看人數(shù)分別為50和70,且在邊緣服務(wù)器1和邊緣服務(wù)器2的頻寬用量達成負(fù)載平衡。隨著頻道a觀看人數(shù)增加至80,邊緣服務(wù)器1的傳輸進度值也會隨著頻道a觀看人數(shù)增加而快速增加。負(fù)載平衡裝置110在短時間內(nèi)不會將頻道b影音串流的影音資料下載請求導(dǎo)向原本屬于頻道b影音串流的服務(wù)器群組中的邊緣服務(wù)器1,所以邊緣服務(wù)器1實質(zhì)上已不再為頻道b影音串流提供分流服務(wù)。因此,可以停止頻道b影音串流從來源服務(wù)器b到邊緣服務(wù)器1的影音資料同步連線。
圖8為根據(jù)本發(fā)明一范例實施例的影音擴散拓樸強化方法的流程圖。
請參照圖8,在步驟s801中,負(fù)載平衡裝置110會從負(fù)載平衡系統(tǒng)100的邊緣服務(wù)器中選擇一個高負(fù)載邊緣服務(wù)器(以下也參考為第一邊緣服務(wù)器),其中高負(fù)載邊緣服務(wù)器的頻寬使用率高于高負(fù)載門檻值,且高負(fù)載邊緣服務(wù)器供應(yīng)一或多個影音串流的影音資料下載。在步驟s803中,負(fù)載平衡裝置110會從對應(yīng)高負(fù)載邊緣服務(wù)器的多個影音串流中選擇一移轉(zhuǎn)影音串流(以下也參考為第一影音串流)。并且,在步驟s805中,負(fù)載平衡裝置110會選擇一接收邊緣服務(wù)器(以下也參考為第二邊緣服務(wù)器),其中接收邊緣服務(wù)器不屬于對應(yīng)移轉(zhuǎn)影音串流的服務(wù)器群組。
例如,在一范例實施例中,負(fù)載平衡裝置110會在不屬于對應(yīng)移轉(zhuǎn)影音串流的服務(wù)器群組的邊緣服務(wù)器中,先挑出頻寬使用率不為零且頻寬使用率低于低負(fù)載門檻值的邊緣服務(wù)器,然后,再從所挑出的邊緣服務(wù)器中任選一個邊緣服務(wù)器作為接收邊緣服務(wù)器,也可從上述所挑出的邊緣服務(wù)器中選擇頻寬使用率最高的邊緣服務(wù)器作為接收邊緣服務(wù)器。此外,若在不屬于對應(yīng)移轉(zhuǎn)影音串流的服務(wù)器群組的邊緣服務(wù)器之中,不存在頻寬使用率不為零且頻寬使用率低于低負(fù)載門檻值的邊緣服務(wù)器時,則負(fù)載平衡裝置110會在不屬于對應(yīng)移轉(zhuǎn)影音串流的服務(wù)器群組的邊緣服務(wù)器中,先挑出頻寬使用率介于低負(fù)載門檻值及高負(fù)載門檻值之間的邊緣服務(wù)器,然后再從所挑出的邊緣服務(wù)器中選擇頻寬使用率最低的邊緣服務(wù)器作為接收邊緣服務(wù)器。
之后,在步驟s807中,負(fù)載平衡裝置110會發(fā)送信息給移轉(zhuǎn)影音串流對應(yīng)的來源服務(wù)器及/或接收邊緣服務(wù)器,將移轉(zhuǎn)影音串流的影音資料同步到接收邊緣服務(wù)器。然后,在步驟s809中,負(fù)載平衡裝置110會將接收邊緣服務(wù)器的傳輸進度值設(shè)定為高負(fù)載邊緣服務(wù)器的傳輸進度值。最后,在步驟s811中,負(fù)載平衡裝置110會將接收邊緣服務(wù)器加入對應(yīng)移轉(zhuǎn)影音串流的服務(wù)器群組。在本范例實施例中,例如,高負(fù)載門檻值會被設(shè)定為每一邊緣服務(wù)器的對外頻寬的80%且低負(fù)載門檻值會被設(shè)定為每一邊緣服務(wù)器的對外頻寬的60%。
在本范例實施例中,通過優(yōu)先選擇頻寬使用率低于低負(fù)載門檻值的邊緣服務(wù)器之中,頻寬使用率最高的邊緣服務(wù)器作為接收邊緣服務(wù)器,可降低負(fù)載平衡系統(tǒng)100使用的邊緣服務(wù)器的總量并提高每個使用中邊緣服務(wù)器的使用率。而通過選擇頻寬使用率介于低負(fù)載門檻值及高負(fù)載門檻值之間的邊緣服務(wù)器之中,頻寬使用率最低的邊緣服務(wù)器作為接收邊緣服務(wù)器,可在負(fù)載平衡系統(tǒng)100整體邊緣服務(wù)器使用率偏高的情況下盡可能讓個別邊緣服務(wù)器的頻寬使用率不超過高負(fù)載門檻值。另外,為了保證接收邊緣服務(wù)器加入對應(yīng)移轉(zhuǎn)影音串流的服務(wù)器群組后能維持正確的負(fù)載平衡效果,必須先完成接收邊緣服務(wù)器傳輸進度值的均一化設(shè)定。例如,在步驟s809中,在進行均一設(shè)定時,負(fù)載平衡裝置110會將接收邊緣服務(wù)器的傳輸進度值設(shè)定為高負(fù)載邊緣服務(wù)器的傳輸進度值。
圖9為根據(jù)本發(fā)明一范例實施例的影音擴散拓樸強化方法的范例。
請參照圖9,由于邊緣服務(wù)器2頻寬負(fù)載過高,因此負(fù)載平衡裝置110選擇頻道b作為移轉(zhuǎn)影音串流并將其在邊緣服務(wù)器2的負(fù)載轉(zhuǎn)移至接收邊緣服務(wù)器(即,邊緣服務(wù)器3)。依據(jù)本范例實施例的影音擴散拓樸強化方法,邊緣服務(wù)器3不僅分?jǐn)偭祟l道b影音串流在邊緣服務(wù)器2的負(fù)載,且通過頻道a和頻道d影音串流各自對應(yīng)的服務(wù)器群組的負(fù)載連動,達成邊緣服務(wù)器3和邊緣服務(wù)器4共同分?jǐn)傔吘壏?wù)器1和邊緣服務(wù)器2頻寬負(fù)載的效果。
請再參照圖8,若在步驟s805中,當(dāng)負(fù)載平衡裝置110找不到頻寬使用率不為零且頻寬使用率低于低負(fù)載門檻值的邊緣服務(wù)器,也找不到頻寬使用率介于低負(fù)載門檻值及高負(fù)載門檻值之間的邊緣服務(wù)器時,則負(fù)載平衡裝置110會選擇一頻寬使用率為零的邊緣服務(wù)器作為接收邊緣服務(wù)器。以上選擇頻寬使用率為零的邊緣服務(wù)器作為接收邊緣服務(wù)器的方法也稱為服務(wù)器動態(tài)擴充方法。
圖10為根據(jù)本發(fā)明一范例實施例的服務(wù)器動態(tài)擴充方法的范例。
請參照圖10,由于負(fù)載平衡裝置110偵測到邊緣服務(wù)器3為高負(fù)載服務(wù)器,因此負(fù)載平衡裝置110在邊緣服務(wù)器3所服務(wù)的頻道中選擇一移轉(zhuǎn)影音串流。為了方便說明,假設(shè)頻道d被選為移轉(zhuǎn)影音串流。在選擇移轉(zhuǎn)影音串流之后,本范例實施例的服務(wù)器動態(tài)擴充方法會先建立來源服務(wù)器d至動態(tài)擴充的邊緣服務(wù)器4之間的同步連線,再配合上文中的負(fù)載平衡方法,邊緣服務(wù)器4會自動分?jǐn)傤l道d影音串流在邊緣服務(wù)器1、邊緣服務(wù)器2、以及邊緣服務(wù)器3的頻寬負(fù)載,重新收斂至最適當(dāng)?shù)呢?fù)載平衡狀態(tài)。此外,配合上文中的影音擴散拓樸簡化方法,負(fù)載平衡裝置110還會自動移除來源服務(wù)器d至邊緣服務(wù)器1、邊緣服務(wù)器2、以及邊緣服務(wù)器3的同步連線。
圖11為根據(jù)本發(fā)明一范例實施例的服務(wù)器動態(tài)擴充方法的另一范例。
請參照圖11,假設(shè)邊緣服務(wù)器3對應(yīng)的頻道c被選為移轉(zhuǎn)影音串流,則負(fù)載平衡裝置110會建立來源服務(wù)器c至動態(tài)擴充的邊緣服務(wù)器4之間的同步連線。配合上文中的負(fù)載平衡方法,邊緣服務(wù)器4會自動分?jǐn)傤l道c影音串流在邊緣服務(wù)器3的頻寬負(fù)載,且邊緣服務(wù)器3會自動分?jǐn)傤l道d影音串流在邊緣服務(wù)器1及邊緣服務(wù)器2的頻寬負(fù)載,最后重新收斂至最適當(dāng)?shù)呢?fù)載平衡狀態(tài)。此外,配合上文中的影音擴散拓樸簡化方法,負(fù)載平衡裝置110還會自動移除來源服務(wù)器d至邊緣服務(wù)器1及邊緣服務(wù)器2的同步連線。
圖12a及圖12b為根據(jù)本發(fā)明一范例實施例的服務(wù)器動態(tài)縮減方法的流程圖。
請參照圖12a及圖12b,在步驟s1201中,負(fù)載平衡裝置110判斷在移除所有邊緣服務(wù)器的其中之一后,其余邊緣服務(wù)器的平均頻寬使用率是否仍小于中負(fù)載門檻值。若在移除所有邊緣服務(wù)器的其中之一后,此些邊緣服務(wù)器的平均頻寬使用率仍小于中負(fù)載門檻值時,則在步驟s1203中,負(fù)載平衡裝置110會從所有邊緣服務(wù)器中選擇一離線邊緣服務(wù)器(以下也參考為第五邊緣服務(wù)器)并計算離線邊緣服務(wù)器的目前頻寬用量。在步驟s1205中,負(fù)載平衡裝置110會從離線邊緣服務(wù)器以外的邊緣服務(wù)器中選擇至少一接收邊緣服務(wù)器(以下也參考為第六邊緣服務(wù)器),其中所選出的每個第六邊緣服務(wù)器的目前頻寬用量與到達中負(fù)載門檻值的頻寬用量的頻寬差額的總和大于離線邊緣服務(wù)器的目前頻寬用量。在步驟s1207中,負(fù)載平衡裝置110會將離線邊緣服務(wù)器所供應(yīng)的每一影音串流在離線邊緣服務(wù)器的頻寬用量填補到第六邊緣服務(wù)器的頻寬差額,由此選出離線邊緣服務(wù)器的每一影音串流所對應(yīng)的第六邊緣服務(wù)器,并發(fā)送信息給此影音串流對應(yīng)的來源服務(wù)器及/或所選出的第六邊緣服務(wù)器,以將此影音串流的影音資料從來源服務(wù)器同步到選出的第六邊緣服務(wù)器。在此,若此影音串流對應(yīng)的來源服務(wù)器與所選出的第六邊緣服務(wù)器已在進行影音資料同步則不需要再次發(fā)送信息或重復(fù)同步影音資料。在步驟s1209中,負(fù)載平衡裝置110會重置所有邊緣服務(wù)器的傳輸進度值,例如,將負(fù)載平衡系統(tǒng)100的所有邊緣服務(wù)器的傳輸進度值重新設(shè)定為0。在步驟s1211中,負(fù)載平衡裝置110會將離線邊緣服務(wù)器的每一影音串流所對應(yīng)選出的第六邊緣服務(wù)器加入至該每一影音串流所對應(yīng)的服務(wù)器群組。在此,若所選出的第六邊緣服務(wù)器已屬于該影音串流所對應(yīng)的服務(wù)器群組則不需要再次加入。在步驟s1213中,負(fù)載平衡裝置110會將離線邊緣服務(wù)器從負(fù)載平衡系統(tǒng)100中的所有服務(wù)器群組移除,并發(fā)送信息給離線邊緣服務(wù)器的每一影音串流所對應(yīng)的來源服務(wù)器及/或離線邊緣服務(wù)器,停止將影音串流的影音資料同步到離線邊緣服務(wù)器。最后,關(guān)閉離線邊緣服務(wù)器。在本范例實施例中,例如,中負(fù)載門檻值是被設(shè)定為每一邊緣服務(wù)器總頻寬的70%。
圖13a及圖13b為根據(jù)本發(fā)明一范例實施例的服務(wù)器動態(tài)縮減方法的范例。
請參照圖13a及圖13b,負(fù)載平衡裝置110選擇邊緣服務(wù)器4為離線邊緣服務(wù)器,并將邊緣服務(wù)器4所服務(wù)的每一頻道影音串流的頻寬用量填補到其他接收邊緣服務(wù)器的頻寬差額。其中,頻道a影音串流在邊緣服務(wù)器4的頻寬用量被填補到邊緣服務(wù)器1,頻道b影音串流在邊緣服務(wù)器4的頻寬用量被分割后分別填補到邊緣服務(wù)器2和邊緣服務(wù)器3。由于邊緣服務(wù)器4對應(yīng)頻道b影音串流的頻寬用量要被分配到邊緣服務(wù)器2和邊緣服務(wù)器3,而來源服務(wù)器b與邊緣服務(wù)器3原本并未進行過影音資料同步,因此必須先建立來源服務(wù)器b與邊緣服務(wù)器3的影音資料同步(對應(yīng)圖12的步驟s1207),并將邊緣服務(wù)器3加入頻道b影音串流所對應(yīng)的服務(wù)器群組中(對應(yīng)圖12b的步驟s1211)。最后,負(fù)載平衡系統(tǒng)100重新收斂至最適當(dāng)?shù)呢?fù)載平衡狀態(tài),邊緣服務(wù)器4完成所有頻寬負(fù)載轉(zhuǎn)移后即可離線。
上述每一影音頻道對應(yīng)一來源服務(wù)器,以及來源服務(wù)器對應(yīng)每一影音頻道產(chǎn)生一影音串流的對應(yīng)關(guān)系僅是為了方便說明,實際上每一來源服務(wù)器可同時耦接服務(wù)多個影音頻道,且來源服務(wù)器可為每一影音頻道產(chǎn)生對應(yīng)多種解析度的多個影音串流。對邊緣服務(wù)器而言,是將對應(yīng)同一影音頻道的多個影音串流視為不同的影音串流。因此,更精確的說法是,邊緣服務(wù)器提供分流服務(wù)的對象是個別的影音串流,也就是說,對應(yīng)同一影音頻道的多個影音串流的影音資料可被同步至不同的邊緣服務(wù)器。
綜上所述,本發(fā)明的負(fù)載平衡系統(tǒng)、負(fù)載平衡裝置與拓樸管理方法會自動調(diào)整系統(tǒng)中所有服務(wù)器供應(yīng)各影音串流資料下載的頻寬分配比例,并適時進行來源服務(wù)器與邊緣服務(wù)器之間拓樸的簡化或強化以節(jié)省來源服務(wù)器的上傳頻寬且達成多個服務(wù)器群組之間的負(fù)載平衡。此外,本發(fā)明的負(fù)載平衡系統(tǒng)、負(fù)載平衡裝置與拓樸管理方法還會對應(yīng)來源服務(wù)器的影音串流進行邊緣服務(wù)器的擴充以緩解邊緣服務(wù)器負(fù)載過高的情況。本發(fā)明的負(fù)載平衡系統(tǒng)、負(fù)載平衡裝置與拓樸管理方法也會對應(yīng)來源服務(wù)器的影音串流進行邊緣服務(wù)器的縮減,使得系統(tǒng)可利用最少數(shù)量的邊緣服務(wù)器在每個邊緣服務(wù)器不超過高負(fù)載的情況下提供影音串流資料下載的足夠頻寬。
雖然本發(fā)明已以實施例發(fā)明如上,然其并非用于限定本發(fā)明,任何所屬技術(shù)領(lǐng)域中具有通知常識者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的改動與修飾,故本發(fā)明的保護范圍當(dāng)視后附的權(quán)利要求所界定的范圍為準(zhǔn)。