專利名稱:一種p2p流媒體直播技術的平行擴展方法
技術領域:
本發(fā)明涉及一種流媒體傳輸技術,尤其是基于P2P技術的流媒體直播技術的平行擴展方法。
背景技術:
傳統(tǒng)流媒體技術方案如圖1是架設一臺中心流媒體服務器,例如mediaservice或者real server,在服務器端發(fā)布流媒體節(jié)目,每個觀看流媒體節(jié)目的客戶端需要連接到該流媒體服務器請求流媒體數(shù)據(jù),然后下載數(shù)據(jù)到本地進行播放。這種技術方案的缺點就是隨著觀看節(jié)目用戶數(shù)增加,服務器負載,帶寬消耗也成倍速增加,例如一個500BPS碼率節(jié)目,20萬個用戶觀看需要至少200臺服務器和10G帶寬,成本非常巨大。利用P2P技術直播流媒體,流媒體接收端還會往外發(fā)送流媒體數(shù)據(jù),但是對于流媒體信息源數(shù)據(jù)越來越大,如果大量用戶同時登陸同一P2P服務器,則照樣會形成堵塞的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是在于解決大用戶量同時需要多個服務器的問題。
為達成上述目的,本發(fā)明一種P2P流媒體直播技術的平行擴展方法,其中流媒體發(fā)布源分別向若干個流媒體緩沖服務器注冊節(jié)目信息后向流媒體緩沖服務器定時發(fā)送流媒體數(shù)據(jù),流媒體緩沖服務器登陸到主管理服務器后將流媒體信息列表進行注冊;主管理服務器保存所有流媒體緩沖服務器列表,定時更新流媒體緩沖服務器信息,該信息包括包括流媒體緩沖服務器當前節(jié)目名稱,節(jié)目ID,節(jié)目緩沖的數(shù)據(jù);p2p管理服務器定時和主管理服務器進行通信,匯報本服務器種子信息,包括ip,節(jié)目緩沖數(shù)據(jù)多少,種子類型;客戶端首先登陸到登陸服務器,登陸服務器根據(jù)當前所有p2p管理服務器的負載情況,選擇一個人數(shù)未滿的p2p管理服務器,把該服務器的ip,port返回給客戶端種子節(jié)點并登陸到該p2p管理服務器。
采用上述方案后,主管理服務器實時接收緩沖服務器的地址和節(jié)目列表后更新到p2p管理服務器,登陸服務器可實時監(jiān)控P2P管理服務器的負載情況,當客戶端通過登陸服務器選擇負載較小的P2P管理服務器獲取緩沖服務器地址節(jié)目列表從而登陸緩沖服務器;由于緩沖服務器和p2p管理服務器均為多個,主管理服務器只是將列表發(fā)給p2p管理服務器,而通過登陸服務器的調度,客戶端選擇較小負載的P2P管理服務器,可在多個P2P管理服務器之間進行調度從而進行平行擴展,因此有效地解決了網(wǎng)絡堵塞的問題。
圖1是習用的流媒體傳輸?shù)慕Y構圖;圖2是本發(fā)明的結構圖;圖3是本發(fā)明流媒體發(fā)布端流程圖;圖4是本發(fā)明流程圖;圖5本發(fā)明登陸端流程圖。
下面結合附圖對本發(fā)明作進一步說明。
具體實施例方式
如圖2所示,本發(fā)明一種P2P流媒體直播技術的平行擴展方法,涉及以下功能裝置一、發(fā)布裝置61、讀取流媒體數(shù)據(jù),包括視頻流數(shù)據(jù)和文件數(shù)據(jù),例如wmv流數(shù)據(jù),Real流數(shù)據(jù)。
2、對每個流數(shù)據(jù)包進行打包,例如asf流數(shù)據(jù)包或者rmvb流數(shù)據(jù)包,如果系統(tǒng)需要加密則對每個流媒體包進行加密,在客戶端5(超級種子)收到改數(shù)據(jù)進行解密。
3、向流媒體緩沖服務器2定時發(fā)送數(shù)據(jù)包,例如每隔1秒時間發(fā)送1秒的流媒體數(shù)據(jù),1秒可能包含多個流媒體數(shù)據(jù)包。
二、流媒體緩沖服務器21、緩沖一定時間的流媒體數(shù)據(jù),例如緩沖1分鐘流媒體數(shù)據(jù)。流媒體緩沖服務器2保存的數(shù)據(jù)是p2p直播系統(tǒng)中節(jié)點取得數(shù)據(jù)的第一個源頭??蛻舳?(超級種子)首先從流媒體緩沖服務器2取得流媒體數(shù)據(jù),然后才通過p2p傳輸散播流媒體數(shù)據(jù)。
2、同步流媒體數(shù)據(jù),根據(jù)發(fā)布裝置6發(fā)布流媒體數(shù)據(jù),定時更新流媒體緩沖服務器2中的流媒體數(shù)據(jù),例如緩沖60秒數(shù)據(jù),(60可以根據(jù)系統(tǒng)需要進行調整),當發(fā)布裝置6有新的數(shù)據(jù)來到,流媒體緩沖服務器2則覆蓋最舊的數(shù)據(jù),這樣可以保持當前最新的60秒流媒體數(shù)據(jù)。
3、返回p2p節(jié)點連接請求流媒體數(shù)據(jù),例如p2p節(jié)點請求第4秒的數(shù)據(jù),則返回第4秒的流媒體數(shù)據(jù)給種子節(jié)點。
三、p2p管理服務器41、管理所有種子,p2p系統(tǒng)中每個種子都需要登陸到系統(tǒng)中的其中一個p2p管理服務器4。
2、從所有種子里選擇超級種子,在系統(tǒng)中主管理服務器1根據(jù)種子的網(wǎng)絡速度,包括上行速度,下行速度選擇最優(yōu)的前N個種子作為超級種子,超級種子直接從流媒體緩沖服務器2讀取流媒體數(shù)據(jù),同時向其他種子傳輸流媒體數(shù)據(jù)。
3、和主管理服務器1進行通信,實時更新流媒體緩沖服務器2列表。當有多個流媒體緩沖服務器2的時候,p2p管理服務器4根據(jù)種子節(jié)點請求返回流媒體緩沖服務器2的注冊信息,包括ip,port。這樣種子節(jié)點就可以從p2p服務器4得到流媒體緩沖服務器2的信息,連接到流媒體緩沖服務器2,取得流媒體數(shù)據(jù)。
四、主管理服務器11、管理所有p2p管理服務器4,p2p管理服務器4定時和主管理服務器1進行通信,匯報本服務器種子信息,包括ip,節(jié)目緩沖數(shù)據(jù)多少,種子類型包括超級種子,非超級種子兩種。
2、管理所有流媒體緩沖服務器2列表,當有多個流媒體緩沖服務器2的時候,主管理服務器1保存所有流媒體緩沖服務器2列表,定時更新流媒體緩沖服務器2信息,并定時把流媒體緩沖服務器2信息更新到p2p服務器4,包括流媒體緩沖服務器2當前節(jié)目名稱,節(jié)目ID,節(jié)目緩沖的數(shù)據(jù)。
五、Stun服務器71、負責測試種子節(jié)點Nat類型,客戶端5通過UDP協(xié)議發(fā)送NAT測試請求,客戶端5傳統(tǒng)UDP包的時候同時上報自己的內(nèi)網(wǎng)IP,Stun服務器7根據(jù)客戶端5UPD包的外網(wǎng)IP和內(nèi)網(wǎng)IP判斷NAT類型。
六、登陸服務器31、負責登陸負載均衡,當?shù)顷懹脩袅咳藬?shù)太多的情況,需要多個p2p管理服務器4,客戶端5首先登陸到登陸服務器3,登陸服務器3根據(jù)當前所有p2p管理服務器4的負載情況,選擇一個人數(shù)未滿的p2p管理服務器4,把該服務器的ip,port返回給種子節(jié)點,則客戶端5節(jié)點登陸到該p2p管理服務器4,從而達到多p2p管理服務器2的負載均衡。
如圖3至圖5所示,流媒體發(fā)布源分別向若干個流媒體緩沖服務器2注冊節(jié)目信息后向流媒體緩沖服務器2定時發(fā)送流媒體數(shù)據(jù),流媒體緩沖服務器2登陸到主管理服務器1后將流媒體信息列表進行注冊;主管理服務器1保存所有流媒體緩沖服務器2列表,定時更新流媒體緩沖服務器2信息,該信息包括流媒體緩沖服務器2當前節(jié)目名稱,節(jié)目ID,節(jié)目緩沖的數(shù)據(jù);p2p管理服務器4定時和主管理服務器1進行通信,匯報本服務器種子信息,包括ip,節(jié)目緩沖數(shù)據(jù)多少,種子類型;客戶端5首先登陸到登陸服務器3,登陸服務器3根據(jù)當前所有p2p管理服務器4的負載情況,選擇一個人數(shù)未滿的p2p管理服務器4,把該服務器的ip,port返回給客戶端5種子節(jié)點,則客戶端5種子節(jié)點登陸到該p2p管理服務器4。
權利要求
1.一種P2P流媒體直播技術的平行擴展方法,其特征在于流媒體發(fā)布源分別向若干個流媒體緩沖服務器注冊節(jié)目信息后向流媒體緩沖服務器定時發(fā)送流媒體數(shù)據(jù),流媒體緩沖服務器登陸到主管理服務器后將流媒體信息列表進行注冊;主管理服務器保存所有流媒體緩沖服務器列表,定時更新流媒體緩沖服務器信息;p2p管理服務器定時和主管理服務器進行通信,匯報本服務器種子信息;客戶端首先登陸到登陸服務器,登陸服務器根據(jù)當前所有p2p管理服務器的負載情況,選擇一個人數(shù)未滿的p2p管理服務器,把該服務器的ip,port返回給客戶端種子節(jié)點并登陸到該p2p管理服務器。
2.根據(jù)權利要求1所述的一種P2P流媒體直播技術的平行擴展方法,其特征在于該流媒體緩沖服務器信息包括流媒體緩沖服務器當前節(jié)目名稱,節(jié)目ID,節(jié)目緩沖的數(shù)據(jù)。
3.根據(jù)權利要求1所述的一種P2P流媒體直播技術的平行擴展方法,其特征在于p2p管理服務器信息包括ip,節(jié)目緩沖數(shù)據(jù)多少,種子類型。
全文摘要
本發(fā)明涉及一種P2P流媒體直播技術的平行擴展方法,其中流媒體發(fā)布源分別向若干個流媒體緩沖服務器注冊節(jié)目信息后向流媒體緩沖服務器定時發(fā)送流媒體數(shù)據(jù),流媒體緩沖服務器登陸到主管理服務器后將流媒體信息列表進行注冊;主管理服務器保存所有流媒體緩沖服務器列表,定時更新流媒體緩沖服務器信息,P2P管理服務器定時和主管理服務器進行通信,匯報本服務器種子信息;客戶端首先登陸到登陸服務器,登陸服務器根據(jù)當前所有P2P管理服務器的負載情況,選擇一個人數(shù)未滿的P2P管理服務器并陸到該P2P管理服務器,本發(fā)明通過登陸服務器的調度,客戶端選擇較小負載的P2P管理服務器,可在多個P2P管理服務器之間進行調度從而進行平行擴展,因此有效地解決了網(wǎng)絡堵塞的問題。
文檔編號H04L29/06GK101018201SQ200710008469
公開日2007年8月15日 申請日期2007年1月17日 優(yōu)先權日2007年1月17日
發(fā)明者黃從來 申請人:黃從來