專利名稱:一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)p2p直播的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在互聯(lián)網(wǎng)實現(xiàn)實時流媒體傳輸?shù)姆椒?,尤其涉及一種用動態(tài)P2P廣播節(jié)點服務(wù)器取代固定P2P廣播節(jié)點服務(wù)器而實現(xiàn)P2P直播的方法。
背景技術(shù):
當(dāng)前,用戶通過互聯(lián)網(wǎng)接收直播媒體節(jié)目,存在著極大的局限性。原因是在網(wǎng)絡(luò)中傳輸?shù)闹辈チ髅襟w節(jié)目,是由原始直播媒體源經(jīng)過直播流媒體服務(wù)器轉(zhuǎn)換成可在網(wǎng)絡(luò)上傳輸?shù)牧髅襟w格式,但是這種流媒體服務(wù)器的負(fù)載極其有限,不能滿足客戶端的需求。
為解決這一問題,隨著后來P2P原理(即客戶端可以直接連接到其他客戶端點對點的資源共享,已有技術(shù)應(yīng)用包括BT、電驢,也包括后來發(fā)展的P2P直播應(yīng)用)的發(fā)展,而在P2P直播中,媒體或者網(wǎng)站在設(shè)立流媒體服務(wù)器時,同時需要專門設(shè)立P2P服務(wù)器來實現(xiàn)P2P直播,即用于轉(zhuǎn)換和發(fā)送帶P2P協(xié)議的流媒體格式的廣播節(jié)點服務(wù)器,如圖1所示,在網(wǎng)絡(luò)中,直播媒體源從流媒體服務(wù)器傳輸至P2P服務(wù)器,因為P2P服務(wù)器上安裝有P2P轉(zhuǎn)換模塊,其主要功能是在直播媒體源經(jīng)過流媒體服務(wù)器轉(zhuǎn)換成流媒體格式后,再通過P2P服務(wù)器轉(zhuǎn)換成帶P2P協(xié)議的流媒體格式,使得客戶端從該P2P服務(wù)器獲得的直播節(jié)目信息能夠以P2P協(xié)議形式在網(wǎng)絡(luò)上傳輸,圖1中帶箭頭實線1為直播流媒體節(jié)目的傳輸方向。
但是,這種專用P2P服務(wù)器,其容量及性能仍然是有限的。隨著在線用戶大量增加時,必然將超出其性能負(fù)荷,而導(dǎo)致傳輸障礙。而且網(wǎng)站對專用P2P服務(wù)器地投資壓力也將越來越大。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有技術(shù)中存在的問題,提供一種利用網(wǎng)絡(luò)中的客戶端,設(shè)定其為動態(tài)P2P廣播節(jié)點服務(wù)器,來取代固定P2P廣播節(jié)點服務(wù)器而實現(xiàn)P2P直播的方法。
為了解決上述技術(shù)問題,本發(fā)明通過下述技術(shù)方案得以解決一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)P2P直播的方法,包括以下步驟A.網(wǎng)站控制服務(wù)器檢索并登記網(wǎng)絡(luò)中的直播流媒體節(jié)目信息;B.網(wǎng)站控制服務(wù)器控制處理客戶端的播放請求,并在請求的客戶端中選擇設(shè)定臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上,網(wǎng)站控制服務(wù)器控制后續(xù)請求播放相同直播節(jié)目的客戶端連接到該設(shè)定的臨時廣播節(jié)點服務(wù)器上;C.臨時廣播節(jié)點服務(wù)器以P2P協(xié)議功能向后續(xù)連接其上的客戶端傳輸請求的直播流媒體節(jié)目。
作為優(yōu)選,上述步驟B具體是通過以下步驟實現(xiàn)a.當(dāng)控制服務(wù)器接收到客戶端請求播放直播流媒體節(jié)目信息時,記錄當(dāng)前請求客戶端性能信息,再判斷當(dāng)前是否有設(shè)定的臨時廣播節(jié)點服務(wù)器若否,則設(shè)定該請求的客戶端為臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;若是,則轉(zhuǎn)到步驟b;
b.判斷當(dāng)前備用臨時廣播節(jié)點服務(wù)器是否滿足預(yù)定的數(shù)量;若否,則分析當(dāng)前請求客戶端的性能指標(biāo),再轉(zhuǎn)到步驟c;若是,再轉(zhuǎn)到步驟d;c.判斷當(dāng)前請求客戶端與控制服務(wù)器中已經(jīng)登記性能信息的客戶端,包括與控制服務(wù)器設(shè)定的臨時廣播節(jié)點服務(wù)器性能要求相比較是否較優(yōu)若是,則設(shè)定當(dāng)前請求客戶端為備用臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的備用臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的備用臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;若否,則轉(zhuǎn)到步驟e;d.判斷當(dāng)前請求客戶端的性能指標(biāo)是否比已有相同直播節(jié)目的備用臨時廣播節(jié)點服務(wù)器較優(yōu)若是,則用該客戶端替換性能較劣的備用臨時廣播節(jié)點服務(wù)器,被替換掉的備用臨時廣播節(jié)點服務(wù)器轉(zhuǎn)為當(dāng)前請求客戶端,再轉(zhuǎn)到步驟e;若否,則直接轉(zhuǎn)到步驟e;e.判斷當(dāng)前播放與請求的直播內(nèi)容相同的臨時廣播節(jié)點服務(wù)器在預(yù)設(shè)的承載負(fù)荷下,是否都已滿負(fù)荷;若否,則為該請求客戶端選擇一個臨時廣播節(jié)點服務(wù)器連接,再轉(zhuǎn)到步驟f;若是,則轉(zhuǎn)到步驟g;f.判斷當(dāng)前請求客戶端是否是臨時廣播節(jié)點服務(wù)器一級子級若是,保留該客戶端的登記信息;若否,摒棄該客戶端的登記信息;
g.判斷是否能為當(dāng)前請求客戶端選擇到一個直播相同節(jié)目的備用臨時廣播節(jié)點服務(wù)器若是,將請求客戶端連接到該備用臨時廣播節(jié)點服務(wù)器,并保留該請求客戶端的登記信息;若否,則設(shè)定當(dāng)前請求客戶端為備用臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的備用臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的備用臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;h.當(dāng)控制服務(wù)器收到網(wǎng)絡(luò)中正在直播流媒體節(jié)目的客戶端的中斷信息,則判斷該客戶端是否為由控制服務(wù)設(shè)定的廣播節(jié)點服務(wù)器若是,則轉(zhuǎn)到步驟i;若否,則中斷的客戶端為臨時廣播節(jié)點服務(wù)器中的一級子級客戶端,再轉(zhuǎn)到步驟j;i.判斷該中斷的客戶端是否為備用廣播節(jié)點服務(wù)器若是,則補充減少的備用廣播節(jié)點服務(wù)器數(shù)量;若否,則選擇一個備用臨時廣播節(jié)點服務(wù)替代中斷的臨時廣播節(jié)點服務(wù)器,并補充減少的備用廣播節(jié)點服務(wù)器數(shù)量;j.判斷該臨時廣播節(jié)點服務(wù)器是否已經(jīng)無一級子級客戶端若是,則該臨時廣播節(jié)點服務(wù)器為處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器,再轉(zhuǎn)到步驟k;若否,則該臨時廣播節(jié)點服務(wù)器的子網(wǎng)絡(luò)中除一級子級外的子級客戶端,就近直接連接到該臨時廣播節(jié)點服務(wù)器,替代中斷的一級子級客戶端,控制服務(wù)器登記新增一級子級客戶端的性能信息;
k.判斷當(dāng)前備用臨時服務(wù)器是否滿足預(yù)定數(shù)量若是,則取消處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器的設(shè)定,并為其選擇一個直播相同流媒體節(jié)目的臨時廣播節(jié)點服務(wù)器連接。
若否,則將處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器作為備用臨時廣播節(jié)點服務(wù)器。
按本發(fā)明技術(shù)的方案的一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)P2P直播的方法,利用網(wǎng)絡(luò)中的客戶端設(shè)定為臨時廣播節(jié)點服務(wù)器,即采用動態(tài)廣播節(jié)點服務(wù)器方式代替固定、專用廣播節(jié)點服務(wù)器,其主要優(yōu)點如下1)隨著在線用戶的增加,但不增加媒體源流媒體服務(wù)器輸出容量的壓力,相反地能使網(wǎng)絡(luò)的傳輸更加通暢。
2)免去了用于直播媒體的廣播節(jié)點服務(wù)器(P2P服務(wù)器)的投入,而是直接利用互聯(lián)網(wǎng)上在線客戶端,極大地節(jié)約了投入成本。
圖1為現(xiàn)有技術(shù)中P2P直播傳輸過程的示意圖。
圖2為本發(fā)明實施例中第一個臨時廣播節(jié)點服務(wù)器的設(shè)定及其連接子網(wǎng)絡(luò)的過程示意圖。
圖3為本發(fā)明實施例中設(shè)定備用臨時廣播節(jié)點服務(wù)器的過程示意圖。
圖4為本發(fā)明實施例中臨時廣播節(jié)點服務(wù)器中斷時,其下子網(wǎng)絡(luò)轉(zhuǎn)移的過程示意圖。
圖5為本發(fā)明實施例中控制服務(wù)器處理客戶端請求時的主要程序流程圖。
圖6為本發(fā)明實施例中控制服務(wù)器處理客戶端中斷時的主要程序流程圖。
具體實施例方式
下面結(jié)合附圖與具體實施方式
對本發(fā)明作進一步詳細(xì)描述
圖2、圖3和圖4中直線2表示網(wǎng)絡(luò)連接;帶箭頭雙點劃線21表示直播流媒體服務(wù)器的流媒體節(jié)目信息方向;帶箭頭單點劃線22表示客戶端性能信息登記方向。
點線框28表示臨時廣播節(jié)點服務(wù)器(圖中臨服器)的一級子級客戶端,當(dāng)然一級子級客戶端不僅僅只有1個。
圖2中帶箭頭點線23表示為客戶端轉(zhuǎn)換為臨時廣播節(jié)點服務(wù)器(圖中臨服器)的過程。帶箭頭虛線24表示為臨服器連接子網(wǎng)絡(luò)的過程;圖3中帶箭頭點線25表示為客戶端轉(zhuǎn)換為備用臨時廣播節(jié)點服務(wù)器(圖中備服器);圖4中帶箭頭虛線26表示備服器替換為臨服器。虛線框31表示臨服器的子網(wǎng)絡(luò),圖中為示意其呈樹狀,實際中的子網(wǎng)絡(luò)31中客戶端個數(shù)是不確定的,點線27表示子網(wǎng)絡(luò)31轉(zhuǎn)移,即臨服器3中斷時,其下子網(wǎng)絡(luò)31轉(zhuǎn)移到備服器4上,而備服器4也替換為臨服器。
圖中R表示存儲器容量,C表示CPU性能,D表示客戶端網(wǎng)絡(luò)寬帶的帶寬。
本發(fā)明是將現(xiàn)有技術(shù)中,在網(wǎng)絡(luò)上用于實現(xiàn)P2P直播而專門設(shè)立安裝有P2P協(xié)議轉(zhuǎn)換功能模塊的多臺專用P2P服務(wù)器,通過網(wǎng)站設(shè)立的控制服務(wù)器,在網(wǎng)絡(luò)的客戶端中控制選擇請求的客戶端作為服務(wù)器來取代,即作為一種動態(tài)的服務(wù)器,本實施例中稱為臨時廣播節(jié)點服務(wù)器,而本發(fā)明中涉及的處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器其實際仍為臨時廣播節(jié)點服務(wù)器,僅是處于的狀態(tài)不同。而臨時廣播節(jié)點服務(wù)器同專門設(shè)立的P2P服務(wù)器有相同的功能,即由該服務(wù)器實現(xiàn)P2P直播,其具體實現(xiàn)的步驟一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)P2P直播的方法,包括以下步驟A.網(wǎng)站控制服務(wù)器檢索并登記網(wǎng)絡(luò)中的直播流媒體節(jié)目信息;
B.網(wǎng)站控制服務(wù)器控制處理的步驟如下a.當(dāng)控制服務(wù)器接收到客戶端請求播放直播流媒體節(jié)目信息時,記錄當(dāng)前請求客戶端性能信息,再判斷當(dāng)前是否有設(shè)定的臨時廣播節(jié)點服務(wù)器若否,則設(shè)定該請求的客戶端為臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;若是,則轉(zhuǎn)到步驟b;b.判斷當(dāng)前備用臨時廣播節(jié)點服務(wù)器是否滿足預(yù)定的數(shù)量;若否,則分析當(dāng)前請求客戶端的性能指標(biāo),再轉(zhuǎn)到步驟c;若是,再轉(zhuǎn)到步驟d;c.判斷當(dāng)前請求客戶端與控制服務(wù)器中已經(jīng)登記性能信息的客戶端,包括與控制服務(wù)器設(shè)定的臨時廣播節(jié)點服務(wù)器性能要求相比較是否較優(yōu)若是,則設(shè)定當(dāng)前請求客戶端為備用臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的備用臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的備用臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;若否,則轉(zhuǎn)到步驟e;d.判斷當(dāng)前請求客戶端的性能指標(biāo)是否比已有相同直播節(jié)目的備用臨時廣播節(jié)點服務(wù)器較優(yōu)若是,則用該客戶端替換性能較劣的備用臨時廣播節(jié)點服務(wù)器,被替換掉的備用臨時廣播節(jié)點服務(wù)器轉(zhuǎn)為當(dāng)前請求客戶端,再轉(zhuǎn)到步驟e;若否,則直接轉(zhuǎn)到步驟e;
e.判斷當(dāng)前播放與請求直播內(nèi)容相同的臨時廣播節(jié)點服務(wù)器在預(yù)設(shè)的承載負(fù)荷下,是否都已滿負(fù)荷;若否,則為該請求客戶端選擇一個臨時廣播節(jié)點服務(wù)器連接,再轉(zhuǎn)到步驟f;若是,則轉(zhuǎn)到步驟g;f.判斷當(dāng)前請求客戶端是否是臨時廣播節(jié)點服務(wù)器一級子級若是,保留該客戶端的登記信息;若否,摒棄該客戶端的登記信息;g.判斷是否能為當(dāng)前請求客戶端選擇到一個直播相同節(jié)目的備用臨時廣播節(jié)點服務(wù)器若是,將請求客戶端連接到該備用臨時廣播節(jié)點服務(wù)器,并保留該請求客戶端的登記信息;若否,則設(shè)定當(dāng)前請求客戶端為備用臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的備用臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的備用臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上。
h.當(dāng)控制服務(wù)器收到網(wǎng)絡(luò)中正在直播流媒體節(jié)目的客戶端的中斷信息,則判斷該客戶端是否為由控制服務(wù)設(shè)定的廣播節(jié)點服務(wù)器若是,則轉(zhuǎn)到步驟i;若否,則中斷的客戶端為臨時廣播節(jié)點服務(wù)器中的一級子級客戶端,再轉(zhuǎn)到步驟j;i.判斷該中斷的客戶端是否為備用廣播節(jié)點服務(wù)器若是,則補充減少的備用廣播節(jié)點服務(wù)器數(shù)量;
若否,則選擇一個備用臨時廣播節(jié)點服務(wù)替代中斷的臨時廣播節(jié)點服務(wù)器,并補充減少的備用廣播節(jié)點服務(wù)器數(shù)量;j.判斷該臨時廣播節(jié)點服務(wù)器是否已經(jīng)無一級子級客戶端若是,則該臨時廣播節(jié)點服務(wù)器為處于空置狀態(tài)臨時廣播節(jié)點服務(wù)器,再轉(zhuǎn)到步驟k;若否,則該臨時廣播節(jié)點服務(wù)器的子網(wǎng)絡(luò)中除一級子級外的子級客戶端,就近直接連接到該臨時廣播節(jié)點服務(wù)器,替代中斷的一級子級客戶端,控制服務(wù)器登記新增一級子級客戶端的性能信息;k.判斷當(dāng)前備用臨時服務(wù)器是否滿足預(yù)定數(shù)量若是,則取消處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器的設(shè)定,并為其選擇一個直播相同流媒體節(jié)目的臨時廣播節(jié)點服務(wù)器連接;若否,則將處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器作為備用臨時廣播節(jié)點服務(wù)器。
C.臨時廣播節(jié)點服務(wù)器以P2P協(xié)議功能向后續(xù)連接其上的客戶端傳輸請求的直播流媒體節(jié)目。
在步驟A中,網(wǎng)站控制服務(wù)器可以檢索并選擇較為穩(wěn)定的直播流媒體服務(wù)器,必要時設(shè)立若干接入直播媒體源的相對穩(wěn)定流媒體服務(wù)器,免去用戶的盲目選擇。當(dāng)然流媒體服務(wù)器是多個的,而直播的節(jié)目也是多個的,均由網(wǎng)站控制服務(wù)器來選擇,或由網(wǎng)站單獨設(shè)立。
設(shè)定第一個臨時廣播節(jié)點服務(wù)器時,如圖2所示,在步驟B中,客戶端通過互聯(lián)網(wǎng)登陸網(wǎng)站,向控制服務(wù)器第一個發(fā)送播放直播節(jié)目的請求,控制服務(wù)器接收到客戶端發(fā)送的請求信息,同時登記該請求客戶端的性能指標(biāo),其指標(biāo)可以是RAM容量、CPU性能、客戶端網(wǎng)絡(luò)寬帶的帶寬,即如圖5所示,R、C、D。
控制服務(wù)器檢測到當(dāng)前無臨時廣播服務(wù)器時,就無選擇地將該當(dāng)前請求的客戶端設(shè)定為臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該請求的客戶端上,同時將該客戶端連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上,接收請求播放的直播流媒體節(jié)目,使得,該請求的客戶端可以在本機上播放請求的直播流媒體節(jié)目,而且其又能以P2P服務(wù)器功能向后續(xù)用戶傳送帶P2P協(xié)議的直播流媒體節(jié)目。
后續(xù)連接并點擊播放相同直播節(jié)目的客戶端,除要被設(shè)定為備用臨時廣播節(jié)點服務(wù)器外,都被連接到第一個設(shè)定臨時廣播節(jié)點服務(wù)器下以P2P傳輸形式子網(wǎng)絡(luò)的中,而控制服務(wù)器判斷該后續(xù)請求的客戶端是否是臨時廣播節(jié)點服務(wù)器的一級子級客戶端28,若是則保留該客戶端登記信息,若否則摒棄客戶端登記信息。臨時廣播節(jié)點服務(wù)器按預(yù)先設(shè)定的承載負(fù)荷要求,在其子網(wǎng)絡(luò)31容量變化量達(dá)到一定程度時,會向控制服務(wù)器反饋狀態(tài)信息,比如刷新其負(fù)荷信息等,而控制服務(wù)器檢測接收到該信息而判斷臨時服是否處于超出承載負(fù)荷。上述保留一級子級客戶端的登記信息,主要是為了控制服務(wù)器能夠隨時檢測到臨時廣播節(jié)點服務(wù)器的異常狀態(tài)信息,特別是臨時廣播節(jié)點服務(wù)器的非正常中斷信息,以便控制服務(wù)器的實時處理。
為防止臨時廣播節(jié)點服務(wù)器因連接中斷而導(dǎo)致其子網(wǎng)絡(luò)下其他用戶連接的中斷,控制服務(wù)器需要設(shè)定若干個空余的備用臨時廣播節(jié)點服務(wù)器。備用臨時廣播節(jié)點服務(wù)器,其設(shè)定原則和收看直播節(jié)目的方式與臨時廣播節(jié)點服務(wù)器相同,只是在臨時廣播節(jié)點服務(wù)器未出現(xiàn)中斷等情況時,備用廣播節(jié)點服務(wù)器不連接子級客戶端。
備用臨時廣播節(jié)點服務(wù)器的數(shù)量,一般視網(wǎng)絡(luò)容量而定,而在設(shè)定臨時廣播節(jié)點服務(wù)器的同時,緊接著設(shè)定備用臨時廣播節(jié)點服務(wù)器,一般地備用臨時廣播節(jié)點服務(wù)器地數(shù)量達(dá)到20臺即可滿足網(wǎng)絡(luò)需求,避免大面積連接中斷風(fēng)暴的出現(xiàn)。當(dāng)備用臨時廣播節(jié)點服務(wù)器因退出(中斷)或轉(zhuǎn)入臨時廣播節(jié)點服務(wù)器等原因而減少時,則補足備用臨時服務(wù)器的數(shù)量。即控制服務(wù)器判斷當(dāng)前備用臨時廣播節(jié)點服務(wù)器是否滿足預(yù)定(一般為20臺)的數(shù)量,即按步驟B中步驟b所述。
臨時廣播節(jié)點服務(wù)器的中斷,一般有兩種情況,一種是正常中斷,一種是非正常中斷。
正常中斷時,控制服務(wù)器根據(jù)臨時廣播節(jié)點服務(wù)器的反饋的狀態(tài)信息,在檢測接收到臨時廣播節(jié)點服務(wù)器的中斷信息時,控制服務(wù)器將該臨時廣播節(jié)點服務(wù)器下子網(wǎng)絡(luò)傳輸轉(zhuǎn)移到播放相同直播節(jié)目的就近的備用臨時廣播節(jié)點服務(wù)器上,即由備用臨時廣播節(jié)點服務(wù)器替代中斷的臨時廣播節(jié)點服務(wù)器。
非正常中斷時,控制服務(wù)器根據(jù)臨時廣播節(jié)點服務(wù)器的一級子級的即時反饋信息,檢測接收到臨時廣播節(jié)點服務(wù)器的中斷信息時,控制服務(wù)器將臨時廣播節(jié)點服務(wù)器下子網(wǎng)絡(luò)傳輸轉(zhuǎn)移到播放相同直播節(jié)目的就近的備用臨時廣播節(jié)點服務(wù)器上。
當(dāng)網(wǎng)絡(luò)中某臨時廣播節(jié)點服務(wù)器的子網(wǎng)絡(luò)中連接的子級客戶端退出,至臨時服務(wù)器不再有客戶端與其連接時,即該臨時廣播節(jié)點服務(wù)器已經(jīng)處于空置狀態(tài)時,若當(dāng)前備用臨時廣播節(jié)點服務(wù)器的數(shù)量未滿足要求,則保留該臨時廣播節(jié)點服務(wù)器,作為備用臨時廣播節(jié)點服務(wù)器;若當(dāng)前備用臨時廣播節(jié)點服務(wù)器的數(shù)量已經(jīng)滿足要求,則取消該臨時廣播節(jié)點服務(wù)器的設(shè)定,轉(zhuǎn)為一般請求客戶端,并為其選擇一個播放相同直播節(jié)目的臨時廣播節(jié)點服務(wù)器或備用臨時廣播節(jié)點服務(wù)器連接。
本發(fā)明采用動態(tài)廣播節(jié)點服務(wù)器方式代替固定、專用廣播節(jié)點服務(wù)器,充分利用網(wǎng)絡(luò)資源,減少硬件投資,同時將動態(tài)廣播節(jié)點技術(shù)應(yīng)用于P2P直播上,更好地利用了P2P原理的資源共享性。
權(quán)利要求
1.一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)P2P直播的方法,其特征在于,包括以下步驟A.網(wǎng)站控制服務(wù)器檢索并登記網(wǎng)絡(luò)中的直播流媒體節(jié)目信息;B.網(wǎng)站控制服務(wù)器控制處理客戶端的播放請求,并在請求的客戶端中選擇設(shè)定臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上,網(wǎng)站控制服務(wù)器控制后續(xù)請求播放相同直播節(jié)目的客戶端連接到該設(shè)定的臨時廣播節(jié)點服務(wù)器上;C.臨時廣播節(jié)點服務(wù)器以P2P協(xié)議功能向后續(xù)連接其上的客戶端傳輸請求的直播流媒體節(jié)目。
2.根據(jù)權(quán)利要求1所述的一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)P2P直播的方法,其特征在于,步驟B是通過以下步驟實現(xiàn)a.當(dāng)控制服務(wù)器接收到客戶端請求播放直播流媒體節(jié)目信息時,記錄當(dāng)前請求客戶端性能信息,再判斷當(dāng)前是否有設(shè)定的臨時廣播節(jié)點服務(wù)器若否,則設(shè)定該請求的客戶端為臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;若是,則轉(zhuǎn)到步驟b;b.判斷當(dāng)前備用臨時廣播節(jié)點服務(wù)器是否滿足預(yù)定的數(shù)量;若否,則分析當(dāng)前請求客戶端的性能指標(biāo),再轉(zhuǎn)到步驟c;若是,再轉(zhuǎn)到步驟d;c.判斷當(dāng)前請求客戶端與控制服務(wù)器中已經(jīng)登記性能信息的客戶端,包括與控制服務(wù)器設(shè)定的臨時廣播節(jié)點服務(wù)器性能要求相比較是否較優(yōu)若是,則設(shè)定當(dāng)前請求客戶端為備用臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的備用臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的備用臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;若否,則轉(zhuǎn)到步驟e;d.判斷當(dāng)前請求客戶端的性能指標(biāo)是否比已有直播相同節(jié)目的備用臨時廣播節(jié)點服務(wù)器較優(yōu)若是,則用該客戶端替換性能較劣的備用臨時廣播節(jié)點服務(wù)器,被替換掉的備用臨時廣播節(jié)點服務(wù)器轉(zhuǎn)為當(dāng)前請求客戶端,再轉(zhuǎn)到步驟e;若否,則直接轉(zhuǎn)到步驟e;e.判斷當(dāng)前播放與請求直播內(nèi)容相同的臨時廣播節(jié)點服務(wù)器在預(yù)設(shè)的承載負(fù)荷下,是否都已滿負(fù)荷;若否,則為該請求客戶端選擇一個臨時廣播節(jié)點服務(wù)器連接,再轉(zhuǎn)到步驟f;若是,則轉(zhuǎn)到步驟g;f.判斷當(dāng)前請求客戶端是否是臨時廣播節(jié)點服務(wù)器一級子級若是,保留該客戶端的登記信息;若否,摒棄該客戶端的登記信息;g.判斷是否能為當(dāng)前請求客戶端選擇到一個直播相同節(jié)目的備用臨時廣播節(jié)點服務(wù)器若是,將請求客戶端連接到該備用臨時廣播節(jié)點服務(wù)器,并保留該請求客戶端的登記信息;若否,則設(shè)定當(dāng)前請求客戶端為備用臨時廣播節(jié)點服務(wù)器,并將帶P2P協(xié)議轉(zhuǎn)換模塊的插件自動安裝在該設(shè)定的備用臨時廣播節(jié)點服務(wù)器上,同時將該設(shè)定的備用臨時廣播節(jié)點服務(wù)器連接到步驟A中包含有其所請求的直播流媒體節(jié)目信息的流媒體服務(wù)器上;h.當(dāng)控制服務(wù)器收到網(wǎng)絡(luò)中正在直播流媒體節(jié)目的客戶端的中斷信息,則判斷該客戶端是否為由控制服務(wù)設(shè)定的廣播節(jié)點服務(wù)器若是,則轉(zhuǎn)到步驟i;若否,則中斷的客戶端為臨時廣播節(jié)點服務(wù)器中的一級子級客戶端,再轉(zhuǎn)到步驟j;i.判斷該中斷的客戶端是否為備用廣播節(jié)點服務(wù)器若是,則補充減少的備用廣播節(jié)點服務(wù)器數(shù)量;若否,則選擇一個備用臨時廣播節(jié)點服務(wù)替代中斷的臨時廣播節(jié)點服務(wù)器,并補充減少的備用廣播節(jié)點服務(wù)器數(shù)量;j.判斷該臨時廣播節(jié)點服務(wù)器是否已經(jīng)無一級子級客戶端若是,則該臨時廣播節(jié)點服務(wù)器為處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器,再轉(zhuǎn)到步驟k;若否,則該臨時廣播節(jié)點服務(wù)器的子網(wǎng)絡(luò)中除一級子級外的子級客戶端,就近直接連接到該臨時廣播節(jié)點服務(wù)器,替代中斷的一級子級客戶端,控制服務(wù)器登記新增一級子級客戶端的性能信息;k.判斷當(dāng)前備用臨時服務(wù)器是否滿足預(yù)定數(shù)量若是,則取消處于空置狀態(tài)的臨時廣播節(jié)點服務(wù)器的設(shè)定,并為其選擇一個直播相同流媒體節(jié)目的臨時廣播節(jié)點服務(wù)器連接;若否,則將處于空置狀態(tài)臨時廣播節(jié)點服務(wù)器作為備用臨時廣播節(jié)點服務(wù)器。
全文摘要
本發(fā)明涉及一種用動態(tài)P2P廣播節(jié)點服務(wù)器取代固定P2P廣播節(jié)點服務(wù)器而實現(xiàn)P2P直播的方法,一種運用動態(tài)廣播節(jié)點技術(shù)實現(xiàn)P2P直播的方法,主要通過控制服務(wù)器處理客戶端播放請求,并在請求客戶端中選擇設(shè)定臨服器,并將帶P2P協(xié)議轉(zhuǎn)換模塊插件自動安裝在該設(shè)定的臨服器,同時將該設(shè)定臨服器連接到控制服務(wù)器檢索并登記的媒體服務(wù)器上,再控制后續(xù)請求客戶端連接到該設(shè)定的臨服器上,該臨服器以P2P協(xié)議功能向后續(xù)連接的客戶端傳輸請求直播流媒體節(jié)目。按本發(fā)明技術(shù)的方案,利用網(wǎng)絡(luò)中客戶端設(shè)定為臨服器,使隨在線用戶的增加,不增加流媒體服務(wù)器輸出容量壓力。免去了用于直播媒體廣播節(jié)點服務(wù)器的投入,極大地節(jié)約了投入成本。
文檔編號H04N21/238GK1984315SQ20061005189
公開日2007年6月20日 申請日期2006年6月9日 優(yōu)先權(quán)日2006年6月9日
發(fā)明者張兵權(quán), 徐禮崗 申請人:徐禮崗