【技術(shù)領(lǐng)域】
本發(fā)明涉及一種媒體分發(fā)級(jí)聯(lián)方法及系統(tǒng)。
背景技術(shù):
一個(gè)媒體分發(fā)服務(wù)器受限于硬件條件,其所能分發(fā)的會(huì)話數(shù)量總是有限的,但是,在某些場(chǎng)景下,一個(gè)會(huì)議可能需要分發(fā)上千,甚至上萬(wàn)的會(huì)話量,但是,受限于但單個(gè)服務(wù)器性能的影響,使得分發(fā)會(huì)話量達(dá)到瓶頸,無(wú)法滿足會(huì)議需求。這就導(dǎo)致音頻流、視頻流在傳輸過(guò)程中出現(xiàn)丟包問(wèn)題,因此,視頻畫(huà)面出現(xiàn)馬賽克、花屏等,聲音模糊、卡頓等,造成較差用戶體檢。
現(xiàn)有對(duì)于媒體分發(fā)會(huì)話量的需求是越來(lái)越大,有鑒于此,本發(fā)明申請(qǐng)人提出一種媒體服務(wù)器級(jí)聯(lián)的方法,有效提高分發(fā)的數(shù)量級(jí)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問(wèn)題之一,在于提供一種媒體分發(fā)級(jí)聯(lián)方法,其有效提高單個(gè)會(huì)議的媒體分發(fā)能力,可以通過(guò)不斷地級(jí)聯(lián)媒體分發(fā)服務(wù)器,達(dá)到有效增加媒體分發(fā)能力。
本發(fā)明是這樣解決上述技術(shù)問(wèn)題之一的:
技術(shù)方案一:
一種媒體分發(fā)級(jí)聯(lián)方法,包括如下步驟:
步驟1、將所有的媒體服務(wù)器都注冊(cè)到同一個(gè)媒體管理器上,媒體管理器獲得各個(gè)媒體服務(wù)器上的可用資源量;
步驟2、所述媒體管理器接收第三方應(yīng)用程序請(qǐng)求調(diào)用媒體服務(wù)器的指令,得到所述第三方應(yīng)用程序請(qǐng)求資源的大小,判斷可用資源最大的媒體服務(wù)器是否能滿足所述請(qǐng)求資源,若能,則直接由可用資源最大的媒體服務(wù)器分發(fā)所述請(qǐng)求的會(huì)話數(shù)量,源終端與可用資源最大的媒體服務(wù)器進(jìn)行橋接,源終端上需要傳輸?shù)拿襟w流通過(guò)該橋被送到可用資源最大的媒體服務(wù)器上,再分發(fā)到各個(gè)終端上,同時(shí),媒體管理器更新各媒體服務(wù)器的可用資源量;若不能,則觸發(fā)級(jí)聯(lián),進(jìn)入步驟3;
步驟3、所述級(jí)聯(lián)具體為:將可用資源最大的媒體服務(wù)器作為主服務(wù)器,其他媒體服務(wù)器作為級(jí)聯(lián)子服務(wù)器,各級(jí)聯(lián)子服務(wù)器分別與所述主服務(wù)器進(jìn)行橋接;
步驟4、所述媒體管理器將所述請(qǐng)求資源分配給所述主服務(wù)器和至少一個(gè)所述級(jí)聯(lián)子服務(wù)器,被分配的級(jí)聯(lián)子服務(wù)器的數(shù)量由所述請(qǐng)求資源的大小決定;分配完成后,所述媒體管理器更新各媒體服務(wù)器的可用資源數(shù)量;
步驟5、所述主服務(wù)器和級(jí)聯(lián)子服務(wù)器根據(jù)媒體管理器的分配規(guī)則通過(guò)該橋接收來(lái)自源終端數(shù)據(jù)流,然后再分發(fā)至各個(gè)終端上。
更優(yōu)地,所述媒體管理器根據(jù)各個(gè)媒體服務(wù)器上的可用資源量的大小將各個(gè)媒體服務(wù)器按照從大到小的順序進(jìn)行排序。
更優(yōu)地,所述橋接為建立一個(gè)rtp通路,所述rtp為實(shí)時(shí)傳輸協(xié)議。
更優(yōu)地,所述步驟4中,所述媒體管理器的分配規(guī)則為:分配給所述主服務(wù)器上的請(qǐng)求資源等于所述主服務(wù)器的最大可用資源的數(shù)量,然后,未分配的剩余請(qǐng)求資源分配給可用資源數(shù)量最大的級(jí)聯(lián)子服務(wù)器,若能滿足需求,直接分配剩余請(qǐng)求資源,若還是不能滿足需求,按照優(yōu)先選擇可用資源數(shù)量大的級(jí)聯(lián)子服務(wù)器的原則,進(jìn)行再次分配,直至請(qǐng)求資源完全被分配。
本發(fā)明要解決的技術(shù)問(wèn)題之二,在于提供一種媒體分發(fā)級(jí)聯(lián)系統(tǒng)。
本發(fā)明是這樣解決上述技術(shù)問(wèn)題之二的:
技術(shù)方案二:
一種媒體分發(fā)級(jí)聯(lián)系統(tǒng),包括一注冊(cè)模塊、一資源分配模塊、一級(jí)聯(lián)模塊、一級(jí)聯(lián)分配模塊以及一數(shù)據(jù)流傳輸模塊;
所述注冊(cè)模塊將所有的媒體服務(wù)器都注冊(cè)到同一個(gè)媒體管理器上,媒體管理器獲得各個(gè)媒體服務(wù)器上的可用資源量;
所述資源分配模塊用于執(zhí)行以下內(nèi)容:所述媒體管理器接收第三方應(yīng)用程序請(qǐng)求調(diào)用媒體服務(wù)器的指令,得到所述第三方應(yīng)用程序請(qǐng)求資源的大小,判斷可用資源最大的媒體服務(wù)器是否能滿足所述請(qǐng)求資源,若能,則直接由可用資源最大的媒體服務(wù)器分發(fā)所述請(qǐng)求的會(huì)話數(shù)量,源終端與可用資源最大的媒體服務(wù)器進(jìn)行橋接,源終端上需要傳輸?shù)拿襟w流通過(guò)該橋被送到可用資源最大的媒體服務(wù)器上,再分發(fā)到各個(gè)終端上,同時(shí),媒體管理器更新各媒體服務(wù)器的可用資源量;若不能,則觸發(fā)級(jí)聯(lián),通過(guò)所述級(jí)聯(lián)模塊完成級(jí)聯(lián);
所述級(jí)聯(lián)模塊用于執(zhí)行如下步驟:所述媒體管理器將可用資源最大的媒體服務(wù)器作為主服務(wù)器,其他媒體服務(wù)器作為級(jí)聯(lián)子服務(wù)器,各級(jí)聯(lián)子服務(wù)器分別與所述主服務(wù)器進(jìn)行橋接;
所述級(jí)聯(lián)分配模塊用于執(zhí)行如下步驟:所述媒體管理器將所述請(qǐng)求資源分配給所述主服務(wù)器和至少一個(gè)所述級(jí)聯(lián)子服務(wù)器,被分配的級(jí)聯(lián)子服務(wù)器的數(shù)量由所述請(qǐng)求資源的大小決定;分配完成后,所述媒體管理器更新各媒體服務(wù)器的可用資源數(shù)量;
所述數(shù)據(jù)流傳輸模塊用于執(zhí)行如下步驟:所述主服務(wù)器和級(jí)聯(lián)子服務(wù)器根據(jù)媒體管理器的分配規(guī)則通過(guò)該橋接收來(lái)自源終端數(shù)據(jù)流,然后再分發(fā)至各個(gè)終端上。
更優(yōu)地,所述媒體管理器根據(jù)各個(gè)媒體服務(wù)器上的可用資源量的大小將各個(gè)媒體服務(wù)器按照從大到小的順序進(jìn)行排序。
更優(yōu)地,所述橋接為建立一個(gè)rtp通路,所述rtp為實(shí)時(shí)傳輸協(xié)議。
更優(yōu)地,所述級(jí)聯(lián)分配模塊中,所述媒體管理器執(zhí)行的分配規(guī)則為:分配給所述主服務(wù)器上的請(qǐng)求資源等于所述主服務(wù)器的最大可用資源的數(shù)量,然后,未分配的剩余請(qǐng)求資源分配給可用資源數(shù)量最大的級(jí)聯(lián)子服務(wù)器,若能滿足需求,直接分配剩余請(qǐng)求資源,若還是不能滿足需求,按照優(yōu)先選擇可用資源數(shù)量大的級(jí)聯(lián)子服務(wù)器的原則,進(jìn)行再次分配,直至請(qǐng)求資源完全被分配。
本發(fā)明具有如下優(yōu)點(diǎn):
在發(fā)明通過(guò)將所有媒體服務(wù)器注冊(cè)到媒體管理器上,再由媒體管理器進(jìn)行資源分配,當(dāng)一個(gè)媒體服務(wù)器不能滿足分發(fā)需求時(shí),則觸發(fā)級(jí)聯(lián),使得多個(gè)媒體服務(wù)器能夠協(xié)同操作,達(dá)到媒體分發(fā)的會(huì)話數(shù)能有效的提高。而媒體管理器對(duì)外抽象,使得上層對(duì)媒體的調(diào)用都統(tǒng)一到媒體管理器,有效的提高對(duì)媒體分發(fā)服務(wù)器的管理。而當(dāng)?shù)谌綉?yīng)用對(duì)媒體的調(diào)用,都走的媒體管理器,不需要去知悉有多少個(gè)媒體服務(wù)器。
本發(fā)明能夠有效增加單個(gè)會(huì)議的媒體分發(fā)能力,可以通過(guò)不斷地級(jí)聯(lián)媒體服務(wù)器來(lái)達(dá)到有效的媒體分發(fā)能力的提高。同時(shí),本發(fā)明所有媒體請(qǐng)求都走媒體管理器,媒體管理器可以達(dá)到一定的資源分配,并可以實(shí)現(xiàn)相關(guān)的負(fù)責(zé)均衡支持,對(duì)媒體服務(wù)器的管理更加方便。
【附圖說(shuō)明】
下面參照附圖結(jié)合實(shí)施例對(duì)本發(fā)明作進(jìn)一步的說(shuō)明。
圖1為本發(fā)明級(jí)聯(lián)框架示意圖。
圖2為本發(fā)明級(jí)聯(lián)觸發(fā)后的示意圖。
圖3為本發(fā)明級(jí)聯(lián)資源計(jì)算示意圖。
【具體實(shí)施方式】
請(qǐng)參閱圖1至圖3所示,對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)的說(shuō)明。圖1和圖2中粗連接線表示管理交互,細(xì)連接線表示級(jí)聯(lián)流向。
請(qǐng)參閱圖1,一種媒體分發(fā)級(jí)聯(lián)方法,包括如下步驟:
步驟1、將所有的媒體服務(wù)器都注冊(cè)到同一個(gè)媒體管理器上,媒體管理器獲得各個(gè)媒體服務(wù)器上的可用資源量;
步驟2、所述媒體管理器接收第三方應(yīng)用程序請(qǐng)求調(diào)用媒體服務(wù)器的指令,得到所述第三方應(yīng)用程序請(qǐng)求資源的大小,判斷可用資源量最大的媒體服務(wù)器是否能滿足所述請(qǐng)求資源,若能,則直接由可用資源最大的媒體服務(wù)器分發(fā)所述請(qǐng)求資源,源終端與可用資源量最大的媒體服務(wù)器進(jìn)行橋接,源終端上需要傳輸?shù)拿襟w流通過(guò)該橋被送到可用資源最大的媒體服務(wù)器上,再分發(fā)到各個(gè)終端上,同時(shí),媒體管理器更新各媒體服務(wù)器的可用資源量;若不能,則觸發(fā)級(jí)聯(lián),進(jìn)入步驟3;
步驟3、重點(diǎn)請(qǐng)參閱圖2,所述級(jí)聯(lián)具體為:將可用資源最大的媒體服務(wù)器作為主服務(wù)器,其他媒體服務(wù)器作為級(jí)聯(lián)子服務(wù)器,各級(jí)聯(lián)子服務(wù)器分別與所述主服務(wù)器進(jìn)行橋接;
步驟4、所述媒體管理器將所述請(qǐng)求資源分配給所述主服務(wù)器和至少一個(gè)所述級(jí)聯(lián)子服務(wù)器,被分配的級(jí)聯(lián)子服務(wù)器的數(shù)量由所述請(qǐng)求資源的大小決定;分配完成后,所述媒體管理器更新各媒體服務(wù)器的可用資源數(shù)量;
步驟5、所述主服務(wù)器和級(jí)聯(lián)子服務(wù)器根據(jù)媒體管理器的分配規(guī)則通過(guò)該橋接收來(lái)自源終端數(shù)據(jù)流,然后再分發(fā)至各個(gè)終端上。
較佳地,所述媒體管理器根據(jù)各個(gè)媒體服務(wù)器上的可用資源量的大小將各個(gè)媒體服務(wù)器按照從大到小的順序進(jìn)行排序。使用rtp建立橋接,優(yōu)勢(shì)是可以最大程度降低延遲。
所述步驟4中,所述媒體管理器的分配規(guī)則為:分配給所述主服務(wù)器上的請(qǐng)求資源等于所述主服務(wù)器的最大可用資源的數(shù)量,然后,未分配的剩余請(qǐng)求資源分配給可用資源數(shù)量最大的級(jí)聯(lián)子服務(wù)器,若能滿足需求,直接分配剩余請(qǐng)求資源,若還是不能滿足需求,按照優(yōu)先選擇可用資源數(shù)量大的級(jí)聯(lián)子服務(wù)器的原則,進(jìn)行再次分配,直至請(qǐng)求資源完全被分配。由于媒體管理器根據(jù)各個(gè)媒體服務(wù)器上的可用資源量的大小將各個(gè)媒體服務(wù)器按照從大到小的順序進(jìn)行排序,因此,選擇的即連服務(wù)器也會(huì)根據(jù)可用會(huì)話數(shù)量一次降低。
將上述方法應(yīng)用于會(huì)議場(chǎng)景時(shí),所述可用資源量可具體為可用會(huì)話數(shù)量,所述請(qǐng)求資源可具體為請(qǐng)求的會(huì)話數(shù)量。請(qǐng)參閱圖3,當(dāng)一個(gè)會(huì)議發(fā)出會(huì)話請(qǐng)求,媒體管理器計(jì)算出需要分發(fā)的會(huì)話數(shù),當(dāng)可用會(huì)話數(shù)最大的媒體服務(wù)器不能滿足需求時(shí),則觸發(fā)級(jí)聯(lián),以需要分發(fā)800個(gè)會(huì)話為例,當(dāng)可用會(huì)話數(shù)最大的媒體服務(wù)器a的可用會(huì)話量為400時(shí),則觸發(fā)級(jí)聯(lián),將媒體服務(wù)器a作為主服務(wù)器,將其余媒體服務(wù)器作為級(jí)聯(lián)子服務(wù)器,以三個(gè)級(jí)聯(lián)子服務(wù)器為例,級(jí)聯(lián)子服務(wù)器b(300)、級(jí)聯(lián)子服務(wù)器c(200)以及級(jí)聯(lián)子服務(wù)器d(100)為例,括號(hào)中表示可用會(huì)話數(shù)量,媒體管理器將剩余的400各未分配的會(huì)話中300個(gè)會(huì)話分配給級(jí)聯(lián)子服務(wù)器b,100個(gè)會(huì)話分配給級(jí)聯(lián)子服務(wù)器c,然后媒體管理會(huì)更新當(dāng)前個(gè)媒體服務(wù)器的可用會(huì)話數(shù)量:媒體服務(wù)器a為0,媒體服務(wù)器b為0,級(jí)聯(lián)子服務(wù)器c為100,級(jí)聯(lián)子服務(wù)器為d為100。800個(gè)會(huì)話(即數(shù)據(jù)流)通過(guò)rtp通道送到主服務(wù)器a,其中400個(gè)會(huì)話由主服務(wù)器a分發(fā),300個(gè)會(huì)話通過(guò)主服務(wù)器a與級(jí)聯(lián)服務(wù)器b之間的rtp通道送到級(jí)聯(lián)服務(wù)器b,由級(jí)聯(lián)服務(wù)器b分發(fā),100個(gè)會(huì)話通過(guò)主服務(wù)器a與級(jí)聯(lián)服務(wù)器c之間的rtp通道送到級(jí)聯(lián)服務(wù)器c,由級(jí)聯(lián)服務(wù)器b分發(fā)。
如果總的媒體服務(wù)器的可用資源量不足,則會(huì)返回給第三方應(yīng)用。
在本實(shí)施例中,通過(guò)將所有媒體服務(wù)器注冊(cè)到媒體管理器上,再由媒體管理器進(jìn)行資源分配,當(dāng)一個(gè)媒體服務(wù)器不能滿足分發(fā)需求時(shí),則觸發(fā)級(jí)聯(lián),使得多個(gè)媒體服務(wù)器能夠協(xié)同操作,達(dá)到媒體分發(fā)的會(huì)話數(shù)能有效的提高。而媒體管理器對(duì)外抽象,使得上層對(duì)媒體的調(diào)用都統(tǒng)一到媒體管理器,有效的提高對(duì)媒體分發(fā)服務(wù)器的管理。而當(dāng)?shù)谌綉?yīng)用對(duì)媒體的調(diào)用,都走的媒體管理器,不需要去知悉有多少個(gè)媒體服務(wù)器。
實(shí)施例二、
一種媒體分發(fā)級(jí)聯(lián)系統(tǒng),包括一注冊(cè)模塊、一資源分配模塊、一級(jí)聯(lián)模塊、一級(jí)聯(lián)分配模塊以及一數(shù)據(jù)流傳輸模塊;
所述注冊(cè)模塊將所有的媒體服務(wù)器都注冊(cè)到同一個(gè)媒體管理器上,媒體管理器獲得各個(gè)媒體服務(wù)器上的可用資源量;所述媒體管理器根據(jù)各個(gè)媒體服務(wù)器上的可用資源量的大小將各個(gè)媒體服務(wù)器按照從大到小的順序進(jìn)行排序;
所述資源分配模塊用于執(zhí)行以下內(nèi)容:所述媒體管理器接收第三方應(yīng)用程序請(qǐng)求調(diào)用媒體服務(wù)器的指令,得到所述第三方應(yīng)用程序請(qǐng)求資源的大小,判斷可用資源最大的媒體服務(wù)器是否能滿足所述請(qǐng)求資源,若能,則直接由可用資源最大的媒體服務(wù)器分發(fā)所述請(qǐng)求的會(huì)話數(shù)量,源終端與可用資源最大的媒體服務(wù)器進(jìn)行橋接,源終端上需要傳輸?shù)拿襟w流通過(guò)該橋被送到可用資源最大的媒體服務(wù)器上,再分發(fā)到各個(gè)終端上,同時(shí),媒體管理器更新各媒體服務(wù)器的可用資源量;若不能,則觸發(fā)級(jí)聯(lián),通過(guò)所述級(jí)聯(lián)模塊完成級(jí)聯(lián);所述橋接為建立一個(gè)rtp通路,所述rtp為實(shí)時(shí)傳輸協(xié)議;
所述級(jí)聯(lián)模塊用于執(zhí)行如下步驟:所述媒體管理器將可用資源最大的媒體服務(wù)器作為主服務(wù)器,其他媒體服務(wù)器作為級(jí)聯(lián)子服務(wù)器,各級(jí)聯(lián)子服務(wù)器分別與所述主服務(wù)器進(jìn)行橋接;
所述級(jí)聯(lián)分配模塊用于執(zhí)行如下步驟:所述媒體管理器將所述請(qǐng)求資源分配給所述主服務(wù)器和至少一個(gè)所述級(jí)聯(lián)子服務(wù)器,被分配的級(jí)聯(lián)子服務(wù)器的數(shù)量由所述請(qǐng)求資源的大小決定;分配完成后,所述媒體管理器更新各媒體服務(wù)器的可用資源數(shù)量;所述媒體管理器執(zhí)行的分配規(guī)則為:分配給所述主服務(wù)器上的請(qǐng)求資源等于所述主服務(wù)器的最大可用資源的數(shù)量,然后,未分配的剩余請(qǐng)求資源分配給可用資源數(shù)量最大的級(jí)聯(lián)子服務(wù)器,若能滿足需求,直接分配剩余請(qǐng)求資源,若還是不能滿足需求,按照優(yōu)先選擇可用資源數(shù)量大的級(jí)聯(lián)子服務(wù)器的原則,進(jìn)行再次分配,直至請(qǐng)求資源完全被分配。
所述數(shù)據(jù)流傳輸模塊用于執(zhí)行如下步驟:所述主服務(wù)器和級(jí)聯(lián)子服務(wù)器根據(jù)媒體管理器的分配規(guī)則通過(guò)該橋接收來(lái)自源終端數(shù)據(jù)流,然后再分發(fā)至各個(gè)終端上。
本發(fā)明能夠有效增加單個(gè)會(huì)議的媒體分發(fā)能力,可以通過(guò)不斷地級(jí)聯(lián)媒體服務(wù)器來(lái)達(dá)到有效的媒體分發(fā)能力的提高。同時(shí),本發(fā)明所有媒體請(qǐng)求都走媒體管理器,媒體管理器可以達(dá)到一定的資源分配,并可以實(shí)現(xiàn)相關(guān)的負(fù)責(zé)均衡支持,對(duì)媒體服務(wù)器的管理更加方便。
雖然以上描述了本發(fā)明的具體實(shí)施方式,但是熟悉本技術(shù)領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,我們所描述的具體的實(shí)施例只是說(shuō)明性的,而不是用于對(duì)本發(fā)明的范圍的限定,熟悉本領(lǐng)域的技術(shù)人員在依照本發(fā)明的精神所作的等效的修飾以及變化,都應(yīng)當(dāng)涵蓋在本發(fā)明的權(quán)利要求所保護(hù)的范圍內(nèi)。