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