專利名稱:一種基于p2psip的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法
技術領域:
本發(fā)明涉及了互聯(lián)網(wǎng)視頻網(wǎng)絡拓撲優(yōu)化和視頻播送優(yōu)化技術,具體涉及一種基于 P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法。
背景技術:
網(wǎng)絡視頻的研究已經(jīng)發(fā)展了很多年,現(xiàn)在商業(yè)上所應用的技術是IP組播,但它有 一些局限性,主要是IP組播只能應用于同一運營商的網(wǎng)絡而且所有路由器必須支持IP組 播。其他視頻播送技術主要有單純的P2P,和P2P加⑶N,然而,這些技術仍然面臨許多難以 逾越的瓶頸和障礙,如終端用戶在接收視頻時的延遲,不同用戶之間在接收視頻的延遲差 (因而不能同步),在轉換頻道時的延遲,越來越讓運營商關注的是現(xiàn)有技術所引起的對互 聯(lián)網(wǎng)帶寬的浪費,此外,每次一個新技術的啟用,運營商需要預先在基礎設施上投入很大。本發(fā)明主要解決和改善以下問題1、視頻播送所需要的大量不必要的骨干網(wǎng)超級節(jié)點;2、運營商在提供服務前所需要在基礎設施上的巨大投資;3、視頻播送對骨干網(wǎng)帶寬的浪費;4、視頻轉發(fā)和復制中的延時。
發(fā)明內容
有鑒于此,本發(fā)明致力于提供一種基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送 樹的方法。本發(fā)明的上述目的是通過如下的技術方案予以實現(xiàn)的P2P覆蓋是一組運行同一 P2P算法的IP節(jié)點的集合;P2P資源分布于P2P覆蓋以便 共享,每一 P2P資源通過一個哈希算法得到唯一的資源識別號;P2P節(jié)點號是用于標識P2P 節(jié)點并用于P2P算法的標號,資源識別號和P2P節(jié)點號通過P2P算法組成P2P路由表;在任 意P2P節(jié)點上使用一個資源識別號作為關鍵字去查詢P2P路由表,將得到一致的結果某個 特定的P2P節(jié)點保持這個資源。 P2PSIP是基于P2P的分布式SIP協(xié)議,P2PSIP對等是超級P2P節(jié)點,P2PSIP客戶端 沒有路由表,但P2PSIP客戶端可通過一個哈希算法得到一個資源的識別號,然后向P2PSIP 對等發(fā)出路由請求。一種基于P2PS IP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,包括al)根據(jù)視頻用戶在互聯(lián)網(wǎng)的分布情況,建立視頻覆蓋樹,樹的每一節(jié)點是一個 P2PSIP覆蓋,父節(jié)點覆蓋負責向其子節(jié)點覆蓋復制媒體,根節(jié)點覆蓋稱為控制覆蓋,負責群 組會話控制,葉節(jié)點覆蓋稱為接入覆蓋,負責向終端用戶復制媒體,其他枝節(jié)點覆蓋稱為分 配覆蓋;bl)對每一接入覆蓋就近安裝與用戶數(shù)量成比例的P2PSIP媒體站點,P2PSIP媒體站點是一個支持P2PSIP對等的媒體網(wǎng)關,分配覆蓋是其所有子節(jié)點覆蓋的合并,并不需要 另外的媒體站點,因而是虛擬覆蓋;Cl)在同一父節(jié)點下,一般子節(jié)點覆蓋對應于一定用戶密度的區(qū)域,但往往需要設 定一個子節(jié)點為省缺覆蓋,省缺覆蓋向在同一父節(jié)點下所有其他疏松區(qū)域的用戶直接提供 服務,因而省缺覆蓋是一個接入覆蓋;dl)覆蓋樹最初可以是單一的P2PSIP覆蓋,覆蓋樹根據(jù)用戶數(shù)目的增長和區(qū)域性 用戶密度而逐漸分化成多層次覆蓋樹,視頻運營商可以會員制形式保證穩(wěn)定的用戶基礎;el)每一視頻節(jié)目經(jīng)過控制覆蓋認證批準后,通過SIP消息PUBLISH向覆蓋樹廣 播,接入覆蓋將視頻節(jié)目作為P2P資源安裝在某個P2PSIP媒體站點(稱為節(jié)目載體),結果 視頻節(jié)目在每個接入覆蓋中均勻分載在各個媒體站點上;fl)媒體訂閱樹以最優(yōu)方式連接共同觀看同一視頻節(jié)目的用戶,用戶訂閱啟動訂 閱樹建樹進程,建樹從樹葉終端用戶到接入覆蓋,再到上層虛擬分配覆蓋,最后到頂層控制 覆蓋,訂閱樹的根稱為控制站點;gl)節(jié)目準備播放時,控制覆蓋通知訂閱樹,用戶收到通知后呼叫請求觀看節(jié)目, 用戶呼叫連接形成媒體播送樹,媒體流將從媒體播送樹樹根一步一步轉發(fā)或復制到接入覆 蓋再到終端用戶;hi)由于上層覆蓋是虛擬覆蓋,從媒體播送樹樹根到樹葉的有些中間節(jié)點可能屬 于同一媒體站點,因而邏輯上這些虛擬節(jié)點之間的系列復制和轉發(fā),在實現(xiàn)上可優(yōu)化為一 次性復制和轉發(fā)。 所述步驟dl之后進一步包括a2)覆蓋水平分化當一個省缺覆蓋所含的用戶太多以致于開始浪費骨干網(wǎng)帶寬 時,這個省缺覆蓋被認為超載,應該被分化,這時計算出用戶密度最大的區(qū)域,建立一個并 列的接入覆蓋去服務這個區(qū)域,這個新的接入覆蓋是原來的省缺覆蓋的兄弟節(jié)點,原有省 缺覆蓋繼續(xù)作為省缺覆蓋,但服務的范圍小了 ;b2)覆蓋垂直分化當一個非省缺覆蓋所含的用戶太多以致于開始浪費骨干網(wǎng)帶 寬時,這個覆蓋被認為超載,應被分化;這時建立一個新的虛擬覆蓋并繼承超載的覆蓋的父 接點,然后把超載的覆蓋降為這個虛擬覆蓋的子覆蓋,并設定為省缺覆蓋,再根據(jù)a2)對這 個新的省缺覆蓋進行水平分化;所述步驟n,gl和hi之后進一步包括a 3)用戶是P2PSIP客戶端,用戶使用SIP消息SUBSCRIBE去訂閱節(jié)目,節(jié)目在 SUBSCRIBE消息Request Header中表現(xiàn)為SIP URI,這條消息送到負責這個P2PSIP客戶的 P2PSIP媒體站點(稱為接入站點);b3)接入站點通過P2P路由查詢節(jié)目載體,然后轉發(fā)SUBSCRIBE消息到這個節(jié)目載 體,為減少延遲,接入站點最初可委托節(jié)目載體復制或轉發(fā)媒體流直接給終端用戶,但當用 戶數(shù)目超載節(jié)目載體時,節(jié)目載體可把直接復制或轉發(fā)給終端用戶的任務還給接入站點;c3)節(jié)目載體收到SUBSCRIBE后,查詢父節(jié)點覆蓋是否有節(jié)目載體,如果無,設 定自己為父節(jié)點覆蓋的節(jié)目載體,然后作為P2P資源安裝在父節(jié)點覆蓋;如果有,轉發(fā) SUBSCRIBE至父節(jié)點節(jié)目載體;d3)重復b3)和c3)過程直到控制站收到SUBSCRIBE ;控制站點可能轉發(fā)SUBSCRIBE至節(jié)目提供商,或通過其他方式通知這個群組訂閱;e3)每次媒體站點收到SUBSCRIBE,如果這個節(jié)目沒有訂閱樹,建立此樹,然后把 發(fā)送這個SUBSCRIBE的媒體站點或P2PSIP客戶端增加為一個這個訂閱樹中自己的子節(jié)占.f3)節(jié)目提供商一旦準備好節(jié)目,通知控制站點,控制站點向此節(jié)目的訂閱樹廣播 消息NOTIFY,節(jié)目在NOTIFY消息Request Header中表現(xiàn)為SIP URI ;g3)當用戶收到NOTIFY后,若決定觀看節(jié)目,用戶向訂閱樹接入站點發(fā)送INVITE 呼叫請求,節(jié)目在INVITE消息Request和To Header中表現(xiàn)為SIP URI,INVITE在訂閱樹 上行轉發(fā)直至控制站點;h3)控制站點使用背靠背UA模式,控制站點匯總所有呼叫請求而發(fā)送單一的I NVITE給節(jié)目提供商,控制站點與節(jié)目提供商建立呼叫,控制站點與每一用戶建立呼叫,用 戶的呼叫連接形成媒體播送樹; 3)呼叫建立后,節(jié)目提供商向媒體播送樹發(fā)送節(jié)目媒體流,節(jié)目媒體流沿媒體播 送樹下行轉發(fā)或復制給每一用戶;j3)控制站點執(zhí)行計費控制,控制站點可能因費用不足而終止單個用戶的會話連 接,從而媒體播送樹停止向這個用戶復制和轉發(fā)媒體流。所述步驟b3)之后進一步包括a4)接入覆蓋中的節(jié)目載體可使用背靠背UA模式來控制復制和轉發(fā)超載;b4)當某個節(jié)目的復制和轉發(fā)超載節(jié)目載體,節(jié)目載體使用SIP消息NOTIFY通知 在同一接入覆蓋中的所有媒體站點;c4)節(jié)目載體使用SIP消息REINVITE去修改與正在觀看節(jié)目的用戶的會話;d4)當接入站點受理INVITE和REINVITE時,如果節(jié)目載體沒有超載,接入站點傳 遞節(jié)目載體和用戶之間SDP的信息,以便節(jié)目載體直接復制或轉發(fā)媒體流給終端用戶;e4)如果節(jié)目載體超載,接入站點修改節(jié)目載體和用戶之間SDP的信息,以便節(jié)目 載體復制或轉發(fā)媒體給這個接入站點,接入站點再復制或轉發(fā)媒體流給終端用戶;本發(fā)明具有如下技術效果1、通過使用發(fā)明虛擬覆蓋和省缺覆蓋,節(jié)省大量不必要的骨干網(wǎng)超級節(jié)點;2、通過使用發(fā)明省缺覆蓋、覆蓋水平分化和覆蓋垂直分化,給運營商在提供服務 前節(jié)省基礎設施上的巨大投資;3、通過使用發(fā)明多層次虛擬分配覆蓋,大大降低對骨干網(wǎng)帶寬的浪費;4、通過使用虛擬覆蓋和在接入覆蓋呼叫控制的優(yōu)化,顯著地降低了視頻轉發(fā)和復 制中的延時。
圖1為本發(fā)明中基于P2PSIP的層次性虛擬覆蓋樹示意圖;圖2為本發(fā)明中利用省缺覆蓋對圖1中的覆蓋樹的優(yōu)化覆蓋樹示意圖用2個省 缺覆蓋替代了 6個區(qū)域性接入覆蓋;圖3至圖5示范了視頻網(wǎng)因用戶增加而升級的過程;圖6和圖7示范了節(jié)目公布和訂閱樹的產(chǎn)生過程;
圖8至圖10示范了媒體播送樹的產(chǎn)生過程;視頻網(wǎng)的升級過程下面結合圖3至圖5對視頻網(wǎng)因用戶增加而升級的過程進行詳細說明。如圖3所示,北京接入覆蓋超載,其中以東城區(qū)為最密。由于這是一個非省缺覆 蓋,需要進行垂直分化。如圖4所示,建立一個新的虛擬覆蓋(北京分配覆蓋)并繼承北京接入覆蓋的父 接點(控制覆蓋),然后把北京接入覆蓋降為北京分配覆蓋的子覆蓋,并設定為省缺覆蓋。 現(xiàn)在把問題轉化為這個新的省缺覆蓋超載,所以下面要執(zhí)行水平分化。如圖5所示,東城區(qū)的用戶密度最大,建立一個并列的接入覆蓋(東城區(qū)接入覆 蓋)去服務東城區(qū)的用戶,東城區(qū)接入覆蓋是原來的省缺覆蓋的兄弟節(jié)點,原有省缺覆蓋 繼續(xù)作為省缺覆蓋,但服務的范圍小了,不再是整個北京;媒體播送建樹過程下面結合圖6至圖10對訂閱樹的產(chǎn)生過程,和節(jié)目公布,用戶訂閱到媒體播送的 全過程進行詳細說明。覆蓋樹如圖6所示,覆蓋樹由下述覆蓋組成。東城接入覆蓋三個媒體站點A23、B23和C23 ;U23UU232和U233是這個覆蓋的 P2PSIP客戶端用戶,通過P2PSIP協(xié)議,U231分配給B23,U232分配給A23,U233分配給C23。西城接入覆蓋三個媒體站點A22、B22和C22 ;U22UU222和U223是這個覆蓋的 P2PSIP客戶端用戶,通過P2PSIP協(xié)議,U221分配給B22,U222分配給A22,U223分配給C22。北京省缺覆蓋三個媒體站點A21、B21和C21 ;U211和U212是這個覆蓋的P2PSIP 客戶端用戶,通過P2PSIP協(xié)議,U211分配給B21,U212分配給C21。省缺覆蓋三個媒體站點A1、B1和Cl ;U11、U12、U13和U14是這個覆蓋的P2PSIP 客戶端用戶,通過P2PSIP協(xié)議,Ull分配給Bi,U12分配給Al,U13分配給Cl,U14分配給 Cl。北京分配覆蓋這是三個接入覆蓋(東城接入覆蓋、西城接入覆蓋和北京省缺覆 蓋)的合并,因此它包括如下媒體站點:A21、B21、C21、A22、B22、C22、A23、B23和C23??刂聘采w這是二個覆蓋(北京分配覆蓋和省缺覆蓋)的合并,因此它包括如下媒 體站點:A1、B1、C1、A21、B21、C21、A22、B22、C22、A23、B23 和 C23。定位節(jié)目過程如圖6所示,視頻節(jié)目“絡威P2P優(yōu)播講座”(其URI形式可表示為lorentp2pcasti lorentnetworks. com)經(jīng)過控制覆蓋認證批準后,通過SIP消息PUBLISH向覆蓋樹廣播,每 個接入覆蓋將視頻節(jié)目作為P2P資源安裝在某個P2PSIP媒體站點(即節(jié)目載體),圖6中 所有紅色媒體站點是節(jié)目載體,即A1為省缺覆蓋的節(jié)目載體,A21為北京省缺覆蓋的節(jié)目 載體,A22為西城接入覆蓋的節(jié)目載體,A23為東城接入覆蓋的節(jié)目載體。用戶訂閱過程如圖7所示,用戶按照標號1至10的次序依次發(fā)送SUBSCRIBE消息給各個接入站
點ο1、用戶U221使用SIP消息SUBSCRIBE去訂閱節(jié)目,節(jié)目“絡威P2P優(yōu)播講座”在
8SUBSCRIBE 消息 Request Header 中表現(xiàn)為 SIP URI sip lorentp2pcastilorentnetworks. com.這條消息送到接入站點B22 ;接入站點B22通過P2P路由查詢得到節(jié)目載體A22,然后 轉發(fā)SUBSCRIBE消息到A22 ;節(jié)目載體A22收到SUBSCRIBE后,查詢父節(jié)點覆蓋(北京分配 覆蓋),發(fā)現(xiàn)沒有節(jié)目載體,故設定A22自己為北京分配覆蓋的節(jié)目載體,然后作為P2P資源 安裝在北京分配覆蓋;再查詢控制覆蓋,發(fā)現(xiàn)沒有節(jié)目載體,故設定A22自己為控制覆蓋的 節(jié)目載體,然后作為P2P資源安裝在控制覆蓋;控制覆蓋再向節(jié)目提供商絡威網(wǎng)絡技術公 司訂閱節(jié)目“絡威P2P優(yōu)播講座”。2、用戶U231發(fā)送SUBSCRIBE給接入站點B23 ;接入站點B23通過P2P路由查詢得 到節(jié)目載體A23,然后轉發(fā)SUBSCRIBE消息到A23 ;節(jié)目載體A23收到SUBSCRIBE后,查詢父 節(jié)點覆蓋(北京分配覆蓋),發(fā)現(xiàn)已有節(jié)目載體A22,故轉發(fā)SUBSCRIBE消息給A22 ;A22已 在訂閱樹中,故無須繼續(xù)傳遞SUBSCRIBE ;3、用戶U13發(fā)送SUBSCRIBE給接入站點Cl,接入站點Cl通過P2P路由查詢得到節(jié) 目載體Al,然后轉發(fā)SUBSCRIBE消息到Al ;節(jié)目載體Al收到SUBSCRIBE后,查詢父節(jié)點覆 蓋(控制覆蓋),發(fā)現(xiàn)已有節(jié)目載體A22,故轉發(fā)SUBSCRIBE消息給A22 ;4、用戶U211發(fā)送SUBSCRIBE給接入站點B21 ;接入站點B21通過P2P路由查詢得 到節(jié)目載體A21,然后轉發(fā)SUBSCRIBE消息到A21 ;節(jié)目載體A21收到SUBSCRIBE后,查詢父 節(jié)點覆蓋(北京分配覆蓋),發(fā)現(xiàn)已有節(jié)目載體A22,故轉發(fā)SUBSCRIBE消息給A22 ;A22已 在訂閱樹中,故無須繼續(xù)傳遞SUBSCRIBE ;5、用戶U223發(fā)送SUBSCRIBE給接入站點C22 ;接入站點C22通過P2P路由查詢 得到節(jié)目載體A22,然后轉發(fā)SUBSCRIBE消息到A22 ;A22已在訂閱樹中,故無須繼續(xù)傳遞 SUBSCRIBE ;6、用戶U232發(fā)送SUBSCRIBE給接入站點A23,A23是節(jié)目載體,已在訂閱樹中,故 無須繼續(xù)傳遞SUBSCRIBE ;7、用戶U233發(fā)送SUBSCRIBE給接入站點C23 ;接入站點C23通過P2P路由查詢 得到節(jié)目載體A23,然后轉發(fā)SUBSCRIBE消息到A23 ;A23已在訂閱樹中,故無須繼續(xù)傳遞 SUBSCRIBE ;8、用戶Ull發(fā)送SUBSCRIBE給接入站點Bl ;接入站點Bl通過P2P路由查詢得到節(jié) 目載體Al,然后轉發(fā)SUBSCRIBE消息到Al ;Al已在訂閱樹中,故無須繼續(xù)傳遞SUBSCRIBE ;9、用戶U14發(fā)送SUBSCRIBE給接入站點Cl,Cl已在訂閱樹中,故無須繼續(xù)傳遞 SUBSCRIBE ;10、用戶U12發(fā)送SUBSCRIBE給接入站點Al,Al是節(jié)目載體,已在訂閱樹中,故無 須繼續(xù)傳遞SUBSCRIBE ;這樣,一個為節(jié)目lorentp2pcastilorentnetworks. com服務的訂閱樹形成,如圖 7所示。節(jié)目載體超載狀態(tài)如圖8所示,在省缺覆蓋中,Al發(fā)現(xiàn)有很多用戶而認為自己可能超載,故發(fā)送 NOTIFY給Bl和Cl,告訴節(jié)目lorentp2pcastilorentnetworks. com已經(jīng)在此覆蓋中超載。在東城接入覆蓋中,A22發(fā)現(xiàn)他承擔父接點覆蓋的節(jié)目載體,需要復制和轉發(fā)媒 體給其他接入覆蓋和省缺覆蓋,故發(fā)送NOTIFY給B22和C22,告訴節(jié)目lorentp2pcasti
9lorentnetworks. com已經(jīng)在此覆蓋中超載。媒體播送樹津樹過稈如圖8所示,當節(jié)目提供商向訂閱樹廣播SIP消息NOTIFY,通知節(jié)目 lorentp2pcastilorentnetworks. com準備好,用戶開始呼叫請求觀看節(jié)目。本節(jié)以U221、 U231、U13和U211為例,示范用戶向訂閱樹發(fā)送的呼叫過程。UU221向接入站點B22發(fā)送INVITE呼叫請求,B22得知節(jié)目載體A22超載,用自 己的IP地址和端口更換INVITE中的SDP,再轉發(fā)INVITE給A22,這樣以后的媒體將由A22 復制給B22,B22再復制給U221 ;由于A22也是父節(jié)點北京分配覆蓋和控制覆蓋的節(jié)目載 體,無須再轉發(fā)INVITE,A22與U221建立會話連接;2、U231向接入站點B23發(fā)送INVITE呼叫請求,B23得知節(jié)目載體A21并沒有超載, 不修改INVITE中的SDP而轉發(fā)INVITE給A23,這樣以后的媒體將由A23直接復制給U231 ; A23轉發(fā)INVITE給北京分配覆蓋中的A22,由于A22也是父節(jié)點控制覆蓋的節(jié)目載體,無須 再轉發(fā)INVITE,A22與U231建立會話連接;3、U13向接入站點Cl發(fā)送INVITE呼叫請求,Cl得知節(jié)目載體Al超載,用自己的 IP地址和端口更換INVITE中的SDP,再轉發(fā)INVITE給Al,這樣以后的媒體將由Al復制給 Cl,Cl再復制給U13 ;Al轉發(fā)INVITE給父節(jié)點控制覆蓋中的A22,A22與U13建立會話連 接;4、U211向接入站點B21發(fā)送INVITE呼叫請求,B21得知節(jié)目載體A21并沒有超載, 不修改INVITE中的SDP而轉發(fā)INVITE給A21,這樣以后的媒體將由A21直接復制給U211 ; A21轉發(fā)INVITE給北京分配覆蓋中的A22,由于A22也是父節(jié)點控制覆蓋的節(jié)目載體,無須 再轉發(fā)INVITE,A22與U211建立會話連接;這樣,控制站點A22與每一用戶建立呼叫;另一方面,控制站點A22匯總所有呼叫 請求而發(fā)送單一的INVITE給節(jié)目提供商,控制站點A22與節(jié)目提供商建立呼叫。圖8是在圖7中的訂閱樹的基礎上產(chǎn)生的媒體播送樹,圖9是去掉覆蓋框架的媒 體播送樹邏輯示意圖。由于在控制覆蓋、北京分配覆蓋和東城接入覆蓋中的A22屬于同一媒體站點,因 而邏輯上這些虛擬節(jié)點A22之間的系列復制和轉發(fā),在實現(xiàn)上可優(yōu)化為一次性復制和轉 發(fā),這樣,我們把所有A22濃縮為一個實體節(jié)點而得到圖10中的媒體播送樹。
權利要求
一種基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,包括a1)根據(jù)視頻用戶在互聯(lián)網(wǎng)的分布情況,建立視頻覆蓋樹,樹的每一節(jié)點是一個P2PSIP覆蓋,父節(jié)點覆蓋負責向其子節(jié)點覆蓋復制媒體,根節(jié)點覆蓋(控制覆蓋)負責群組會話控制,葉節(jié)點覆蓋(接入覆蓋)負責向終端用戶復制媒體;b1)對每一接入覆蓋就近安裝與用戶數(shù)量成比例的P2PSIP媒體站點,分配覆蓋是其所有子節(jié)點覆蓋的合并,并不需要另外的媒體站點,因而是虛擬覆蓋;c1)在同一父節(jié)點下,一般子節(jié)點覆蓋對應于一定用戶密度的區(qū)域,但往往需要設定一個子節(jié)點為省缺覆蓋,省缺覆蓋向在同一父節(jié)點下所有其他疏松區(qū)域的用戶直接提供服務,因而省缺覆蓋是一個接入覆蓋;d1)覆蓋樹最初可以是單一的P2PSIP覆蓋,覆蓋樹根據(jù)用戶數(shù)目的增長和區(qū)域性用戶密度而逐漸分化成多層次覆蓋樹,視頻運營商可以會員制形式保證穩(wěn)定的用戶基礎;e1)每一視頻節(jié)目經(jīng)過控制覆蓋認證批準后,通過SIP消息PUBLISH向覆蓋樹廣播,接入覆蓋將視頻節(jié)目作為P2P資源安裝在某個P2PSIP媒體站點(節(jié)目載體),結果視頻節(jié)目在每個接入覆蓋中均勻分載在各個媒體站點上;f1)媒體訂閱樹以最優(yōu)方式連接共同觀看同一視頻節(jié)目的用戶,用戶訂閱啟動訂閱樹建樹進程,建樹從樹葉終端用戶到接入覆蓋,再到上層虛擬分配覆蓋,最后到頂層控制覆蓋;g1)節(jié)目準備播放時,控制覆蓋通知訂閱樹,用戶收到通知后呼叫請求觀看節(jié)目,用戶呼叫連接形成媒體播送樹,媒體流將從媒體播送樹樹根一步一步轉發(fā)或復制到接入覆蓋再到終端用戶;h1)由于上層覆蓋是虛擬覆蓋,從媒體播送樹樹根到樹葉的有些中間結點可能屬于同一媒體站點,因而邏輯上這些虛擬結點之間的系列復制和轉發(fā),在實現(xiàn)上可優(yōu)化為一次性復制和轉發(fā)。
2.如權利要求1所述的一種基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法, 其特征在于所述步驟dl之后進一步包括a2)覆蓋水平分化當一個省缺覆蓋所含的用戶太多以致于開始浪費骨干網(wǎng)帶寬時, 這個省缺覆蓋被認為超載,應該被分化,這時計算出用戶密度最大的區(qū)域,建立一個并列的 接入覆蓋去服務這個區(qū)域,這個新的接入覆蓋是原來的省缺覆蓋的兄弟節(jié)點,原有省缺覆 蓋繼續(xù)作為省缺覆蓋,但服務的范圍小了 ;b2)覆蓋垂直分化當一個非省缺覆蓋所含的用戶太多以致于開始浪費骨干網(wǎng)帶寬 時,這個覆蓋被認為超載,應被分化;這時建立一個新的虛擬覆蓋并繼承超載的覆蓋的父接 點,然后把超載的覆蓋降為這個虛擬覆蓋的子覆蓋,并設定為省缺覆蓋,再根據(jù)a2)對這個 新的省缺覆蓋進行水平分化。
3.如權利要求1所述的一種基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法, 其特征在于所述步驟Π,gl和hi之后進一步包括a3)用戶是P2PSIP客戶端,用戶使用SIP消息SUBSCRIBE去訂閱節(jié)目,節(jié)目在 SUBSCRIBE消息Request Header中表現(xiàn)為SIP URI,這條消息送到負責這個P2PSIP客戶的 P2PSIP媒體站點(稱為接入站點);b3)接入站點通過P2P路由查詢節(jié)目載體,然后轉發(fā)SUBSCRIBE消息到這個節(jié)目載體,為減少延遲,接入站點最初可委托節(jié)目載體復制或轉發(fā)媒體流直接給終端用戶,但當用戶 數(shù)目超載節(jié)目載體時,節(jié)目載體可把直接復制或轉發(fā)給終端用戶的任務還給接入站點;c3)節(jié)目載體收到SUBSCRIBE后,查詢父節(jié)點覆蓋是否有節(jié)目載體,如果無,設定自己 為父節(jié)點覆蓋的節(jié)目載體,然后作為P2P資源安裝在父節(jié)點覆蓋;如果有,轉發(fā)SUBSCRIBE 至父節(jié)點節(jié)目載體;d3)重復b3)和c3)過程直到控制站收到SUBSCRIBE ;控制站點可能轉發(fā)SUBSCRIBE至 節(jié)目提供商,或通過其他方式通知這個群組訂閱;e3)每次媒體站點收到SUBSCRIBE,如果這個節(jié)目沒有訂閱樹,建立此樹,然后把發(fā)送 這個SUBSCRIBE的媒體站點或P2PSIP客戶端增加為一個這個訂閱樹中自己的子節(jié)點;f3)節(jié)目提供商一旦準備好節(jié)目,通知控制站點,控制站點向此節(jié)目的訂閱樹廣播消息 NOTIFY,節(jié)目在 NOTIFY 消息 Request Header 中表現(xiàn)為 SIP URI ;g3)當用戶收到NOTIFY后,若決定觀看節(jié)目,用戶向訂閱樹接入站點發(fā)送INVITE呼叫 請求,節(jié)目在INVITE消息Request和To Header中表現(xiàn)為SIP URI, INVITE在訂閱樹上行 轉發(fā)直至控制站點;h3)控制站點使用背靠背UA模式,控制站點匯總所有呼叫請求而發(fā)送單一的INVITE給 節(jié)目提供商,控制站點與節(jié)目提供商建立呼叫,控制站點與每一用戶建立呼叫,用戶的呼叫 連接形成媒體播送樹;i 3)呼叫建立后,節(jié)目提供商向媒體播送樹發(fā)送節(jié)目媒體流,節(jié)目媒體流沿媒體播送樹 下行轉發(fā)或復制給每一用戶;j3)控制站點執(zhí)行計費控制,控制站點可能因費用不足而終止單個用戶的會話連接,從 而媒體播送樹停止向這個用戶復制和轉發(fā)媒體流。
4.如權利要求3所述的一種基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法, 其特征在于所述步驟b3)之后進一步包括a4)接入覆蓋中的節(jié)目載體可使用背靠背UA模式來控制復制和轉發(fā)超載; b4)當某個節(jié)目的復制和轉發(fā)超載節(jié)目載體,節(jié)目載體使用SIP消息NOTIFY通知在同 一接入覆蓋中的所有媒體站點;c4)節(jié)目載體使用SIP消息REINVITE去修改與正在觀看節(jié)目的用戶的會話; d4)當接入站點受理INVITE和REINVITE時,如果節(jié)目載體沒有超載,接入站點傳遞節(jié) 目載體和用戶之間SDP的信息,以便節(jié)目載體直接復制或轉發(fā)媒體流給終端用戶;e4)如果節(jié)目載體超載,接入站點修改節(jié)目載體和用戶之間SDP的信息,以便節(jié)目載體 復制或轉發(fā)媒體給這個接入站點,接入站點再復制或轉發(fā)媒體流給終端用戶。
5.如權利要求1所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于媒體播送方法以任何種類的網(wǎng)絡覆蓋樹為基礎。
6.如權利要求1所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于使用以實體網(wǎng)絡覆蓋或實體媒體站點為基礎的虛擬網(wǎng)絡覆蓋以減少在互聯(lián)網(wǎng)上的 媒體站點的數(shù)目或所有媒體站點的整體容量。
7.如權利要求1所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于使用省缺網(wǎng)絡覆蓋以減少在互聯(lián)網(wǎng)上的媒體站點的數(shù)目或所有媒體站點的整體容 量。
8.如權利要求1所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于將視頻節(jié)目作為P2P資源通過P2P算法安裝在某個節(jié)目載體上,以便視頻節(jié)目在網(wǎng) 絡覆蓋中均勻分載在各個媒體站點上。
9.如權利要求2所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于當一個網(wǎng)絡覆蓋所含的用戶太多以致于開始浪費骨干網(wǎng)帶寬時,計算出用戶密度 最大的子區(qū)域,將這個子區(qū)域單獨分化出去,并建立一個新的網(wǎng)絡覆蓋去服務這個子區(qū)域。
10.如權利要求3所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于重新使用現(xiàn)有網(wǎng)絡覆蓋中已經(jīng)存在的節(jié)目載體到其他不同網(wǎng)絡覆蓋以減少媒體復 制和轉發(fā)的次數(shù)。
11.如權利要求3所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于以SIP消息SUBSCRIBE為訂閱媒體的方式而后來的媒體播送以這些訂閱為基礎。
12.如權利要求3所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于以訂閱樹為基礎進行呼叫請求以優(yōu)化和控制最終的媒體播送方法。
13.如權利要求3所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于控制站點使用背靠背UA模式,一方面匯總所有呼叫請求而與節(jié)目提供商建立單一 的呼叫連接,另一方面控制站點與與每一用戶建立呼叫連接,這樣節(jié)目提供商無須具備高 性能、高擴展的網(wǎng)關設備。
14.如權利要求4所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于當某個節(jié)目的復制和轉發(fā)超載節(jié)目載體,節(jié)目載體使用SIP消息NOTIFY通知有關 網(wǎng)絡覆蓋中的所有媒體站點。
15.如權利要求4所述的基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,其特 征在于當接入站點受理呼叫有關的、帶有SDP的SIP消息時,如果同一網(wǎng)絡覆蓋中的節(jié)目 載體沒有超載,接入站點傳遞節(jié)目載體和用戶之間SDP的信息,以便節(jié)目載體直接復制或 轉發(fā)媒體流給終端用戶;如果節(jié)目載體超載,接入站點修改節(jié)目載體和用戶之間SDP的信 息,以便節(jié)目載體復制或轉發(fā)媒體給這個接入站點,接入站點再復制或轉發(fā)媒體流給終端 用戶。
全文摘要
一種基于P2PSIP的虛擬覆蓋樹、訂閱樹和媒體播送樹的方法,包括覆蓋樹由葉結點接入覆蓋、虛擬分配覆蓋和虛擬控制覆蓋組成;省缺覆蓋向在同一父節(jié)點下所有其他松疏區(qū)域的用戶服務;覆蓋樹可隨用戶數(shù)目的增長而逐漸分化成多個層次;視頻節(jié)目向覆蓋樹廣播并作為P2P資源安裝在接入覆蓋以均勻分載;訂閱樹以最優(yōu)方式連接訂閱同一視頻節(jié)目的用戶;用戶呼叫連接形成媒體播送樹,播送樹中屬于同一媒體站點的虛擬結點之間的系列復制和轉發(fā)可優(yōu)化為一次性復制和轉發(fā)。本發(fā)明節(jié)省大量不必要的骨干網(wǎng)超級結點,節(jié)省運營商在服務前的巨大投資,降低了對骨干網(wǎng)帶寬的浪費,降低了視頻轉發(fā)和復制中的延時。
文檔編號H04L12/44GK101938506SQ20091014843
公開日2011年1月5日 申請日期2009年6月30日 優(yōu)先權日2009年6月30日
發(fā)明者李云洲 申請人:李云洲