新四季網

內容發布方法、服務重定向方法及系統、節點設備的製作方法

2023-05-01 01:54:06 2

專利名稱:內容發布方法、服務重定向方法及系統、節點設備的製作方法
技術領域:
本發明涉及數據通信領域中J 某體內容分發和交付的技術,具體 地,涉及一種內容發布的方法、服務重定向的方法及系統、節點設 備。
背景技術:
隨著視頻和寬帶接入技術的迅速發展,通過網際網路(Internet) 網糹各收看電^見直4番已經成為現實。網際網路網絡電^L( Internet Protocol Television,簡稱為IPTV )能夠提供電一見直4番、4見頻點4番(Video On Demand,簡稱為VoD )和錄#番(TV On Demand ,簡稱為TVoD) 等業務,用戶在觀看電視直播的同時,還能夠時移電視和回看等, 從而使用戶從傳統的"你播我看"的被動收看電視P漠式中徹底地解 放出來。
目前的IPTV系統是一個C/S結構,在寬帶網絡上實現的IPTV 業務主要有兩種模式,即基於C/S模式的和基於對等網絡(Peer to Peer,簡稱為P2P ) 4支術的P2P疊加網絡方案。
基於C/S結構的IPTV系統的可擴展性差,系統難以擴展到用 戶數量非常多(例如,十萬用戶、百萬用戶)的情況。隨著用戶請 求IPTV業務的數量越來越多,任何一種容量的伺服器,最終都會 出現不能及時地響應用戶請求的現象。伺服器的資源最終會被消耗 盡,則不能向用戶4是供IPTV業務,而成為IPTV系統的弁瓦頸。目前減少月l務器壓力的方法如組才番方法(Multicasting )、水匕處理4支術 (Batching )、 4卜丁才支術(Patching )、合併才支術(Merging )、周期寸生 i也廣播—支術(Periodic broadcasting)等,這些才支術的基本出發點大 多採用組播方式,將同一個文件的多個點播(或直播)合併為一個 組播信道服務。
目前由於整個網絡並不支持全網IP組播,ADSL的線路帶寬也 不足以支撐同時傳llr兩個流,因此,目前減少月良務器壓力的方法在 實際運營中難以得到實際4吏用,且這種節省資源的策略以延時用戶 的響應為代價,在商業運營中得不償失。
目前還有釆用々某體分片的方式,如,協作代理緩存技術,可以 縮短用戶在頻道切換和節目播放前的等待時間;基於段的緩存技術, 將媒體文件的各個段以協作方式被分發到用戶進行播放,這些方式 並沒有改進IPTV系統的可擴展性。
P2P系統允許不同的計算機之間對等地交換數據,每個運行P2P 軟體的計算機被稱謂一個對等節點(peer)。任何一個具有媒體服務 定位功能的系統必須能夠提供搜索查找信息的功能,P2P軟體就能 夠提供這種4某體服務定位和搜索查找P2P網絡信息的能力。P2P網 絡所採用的搜索方案, 一般地,能夠分為以泛洪(flooding)方式搜 索的無結構網*各(unstructured network )和結構網絡(structured system )兩種。
泛洪方式4叟索的無結構P2P網絡會產生了大量地冗餘請求,難 以擴展到對等節點非常多的網絡。結構化的P2P系統採用基於分布 式口合希表(Distributed Hash Table,簡稱為DHT)的4叟索技術,這 種搜索方法緊緊地耦合了內容(或數據)的位置與網絡拓樸結構, 會導致較高的維護成本,並且這種網絡僅支持標識符(ID)搜索和 查找,缺乏基於關鍵詞搜索和查找的靈活性。本發明的發明人在實現本發明的過程中,發現現有技術中至少
存在如下缺陷
目前的IPTV系統中,基於C/S才莫式的結構可擴展性差;泛洪 方式搜索的無結構P2P網絡可擴展性差,結構化的P2P網絡維護成 本高、搜索不靈活。

發明內容
本發明的目的是針對現有技術中IPTV系統的可擴展性差、搜
索查找不靈活的^:陷,提出一種內容發布的方法、月l務重定向的方
法、裝置及系統,以提高IPTV系統的可擴展性。
為實現上述目的,根據本發明的一個方面,提供了 一種內容發 布方法。
才艮據本發明實施例的內容發布方法包括將待發布的內容分成 多個段;對於每個段,確定用於存儲段的一個或多個節點;將段發 布給存儲段的一個或多個節點。
其中,將待發布的內容分成多個段的操作具體包括將待發布 的內容分成多個相同或不同的,殳,每個,殳都包含大小可調整和/或配 置的多個塊。
其中,通過以下節點信息至少之一確定用於存儲段的一個或多 個節點節點可利用的帶寬、節點的穩定性、節點可利用的存儲空 間、節點的利用頻率。
優選地,該方法還包括周期性地獲取節點發送的報告消息, 報告消息中攜帶有節點信息。
10其中,可以根據以下信息確定存儲段的節點:
formula see original document page 11
其中,GSti表示節點i的優度檢驗值,
EstimatedStayi(new)= a x EstimatedStayi(prev) + p x CurrentStayi;
EstimatedStayi(new)表示節點的穩、定寸生,CurrentStayi為節點i力口 入系統的持續時間或無故障持續時間的時間長度, EstimatedStayi(prev)為EstimatedStayi的歷史值,a和(3為#又重因子, 且"+ P=l; BWi為節點i可利用的帶寬;11,^為節點i加入系統
所捐獻帶寬的平均利用率,Frese,為節點i在預定周期內處理IPTV _清求的頻率;
其中,ast、 Pst、 Yst為^又重因子,m為加入IPTV系統的節點 的數量。
其中,確定用於存儲段的一個或多個節點的操作具體包括獲 取每個節點對應的優度檢驗值GSt;選擇大於或大於等於預設值的 優度4企驗值,將超過預設值的優度檢驗值對應的節點作為存儲段的 節點。
優選地,將段發布給存儲^殳的一個或多個節點的操作通過以下 方式進行按照確定用於存儲_歐的一個或多個節點的優度檢驗值高 低,將段分別發布給一個或多個節點。為實現上述目的,根據本發明的一個方面,提供了一種服務重 定向方法。
根據本發明實施例的服務重定向方法包括獲取內容請求消息, 其中,內容請求消息用於請求下載/下拉內容;確定存儲內容的各個 段的一個或多個節點;從一個或多個節點下載/下拉內容的各個段; 才艮據內容的各個段獲得完整的內容。
優選地,在確定存儲內容的各個段的一個或多個節點的操作之 後,進一步包4舌將確定的一個或多個節點的節點標識添加到下載/ 下4i內容的節點列表。
優選地,確定存儲內容的各個段的 一個或多個節點的操作之後, 還包括向一個或多個節點分配下載/下拉的數據塊,具體可通過以 下方式至少之一進4亍按照節點順序循環乂人一個或多個節點下載/ 下拉段或段中的一個/多個塊,其中,每個節點在每個循環中被分配 的段或塊相同,或者被分配的段或塊與該節點的帶寬成比例;根據 存儲段的一個或多個節點的帶寬,從一個或多個節點下載/下拉每一 個,爻或l殳中的一個/多個塊。
其中,從一個或多個節點下載/下拉內容的各個段的操作通過以 下方式至少之一進行利用累加帶寬下載/下拉內容的各個段;將下 載/下拉的內容的各個段寫入預設的環形緩存,環形緩存預設有各個 段和/或每個段的一個或多個塊的對應位置,其中,每個段都包含大 小可調整和/或配置的多個塊。
優選地,該方法還包括對於接收速率小於預設值的一個或多 個失效節點,為其選擇替代節點,並從替代節點下載/下拉對應的失 效節點存儲的段和/或塊。20 為實現上述目的,才艮據本發明的另一個方面,4是供了一種月l務 重定向系糹充。
才艮據本發明實施例的服務重定向系統,包括一個或多個集群,
其中,每個集群都包括中心節點,用於保存所有待發布的內容, 並發布內容;具有層級結構的一個或多個下屬節點,直接連接到中 心節點,或者連接到下屬節點的上級節點,用於存儲系統發布的內 容的各個段,並在接收到下載/下拉內容對應的請求消息時,確定下 載/下^立內容的一個或多個節點,乂人確定的一個或多個節點下載/下拍: 內容的各個段。
優選地,中心節點與下屬節點形成樹形拓樸結構或網狀拓4卜結構。
其中,上述各個節點均包括欄目表,用於存儲各個欄目與所 屬集群的代理節點的映射關係,欄目為將所有內容分類的目錄信息, 代理節點用於對包含欄目中的一類或多類目錄內容的節點進行維護 和管理;存儲模塊,用於存儲本地保存的內容的段;鏈路模塊,用 於存儲到其他節點的鏈路。
優選地,上述節點為代理節點時,該系統還包括內容索引表, 用於維護存儲內容的節點、以及節點對應的地址信息;疊加鏈路表, 用於存儲一個或多個在其它集群中具有相同欄目的代理節點的地址 信息;其中,欄目為將所有內容分類的目錄信息。
為實現上述目的,根據本發明的另一個方面,提供了一種節點 設備。
根據本發明實施例的節點設備包括欄目表,用於存儲各個欄 目與所屬集群的代理節點的映射關係,欄目為將所有內容分類的目 錄信息,代理節點用於對包含欄目中的一類或多類目錄內容的節點進行維護和管理;存儲模塊,用於存儲本地保存的內容的段;鏈^各 模塊,用於存儲到其他節點的鏈路。
優選地,該節點設備還包括內容索引表,用於維護存儲內容 的節點、以及節點對應的地址信息;疊加鏈路表,用於存儲一個或 多個在其它集群中具有相同欄目的代理節點的地址信息;其中,欄 目為將所有內容分類的目錄信息。
其中,上述鏈路模塊包括父鏈路子模塊,用於存儲到上級節 點的鏈路;子鏈路子模塊,用於存儲到下級節點的鏈路。
本發明各實施例的內容發布方法、月l務重定向方法、節點設備 及系統,可以在網際網路上大規模發布內容和進行士某體服務定位。上 述一個或多個實施例對於IPTV系統,將內容分成多個不同的,殳, 這些段可以存儲在系統的多個節點中。熱片(即用戶點擊較多的內容) 節目的段(或非常重要的段)可以存儲在多個不同的節點中,在用 戶請求收看相應的節目時,沒有必要在4某體播放之前完成所請求的 全部,殳的下載。i見頻文件的段可以進一步地分成多個塊,這有助於 並行接收來自不同存儲節點的一個段的不同的部分,從而對來自不 同存儲節點的上行帶寬進行累加。在一個流媒體會話期間,多個存 儲節點支持一個IPTV請求,能夠利用一些未^皮利用的存儲空間和 到用戶終端的上行帶寬來支持IPTV業務請求。
上述一個或多個實施例由於將內容分成若干段,並發布到不同 的多個存儲節點上,與現有技術將整個內容或文件為單位存在某一 個月l務器節點上不同,可以分別/人多個節點響應用戶的^青求,可有 效提高IPTV系統的可擴展性,完成IPTV媒體服務定向等功能。
本發明的其它特徵和優點將在隨後的說明書中闡述,並且,部 分地從說明書中變得顯而易見,或者通過實施本發明而了解。本發明的目的和其他優點可通過在所寫的說明書、斥又利要求書、以及附 圖中所特別指出的結構來實現和獲得。


附圖用來提供對本發明的進一步理解,並且構成說明書的 一部 分,與本發明的實施例一起用於解釋本發明,並不構成對本發明的
限制。在附圖中
圖1為應用根據本發明實施例的服務重定向系統實現P2P技術 的IPTV系鄉克的示意圖2為圖1中各個節點的結構示意圖3為根據本發明實施例的內容發布方法的流程圖3A為圖3中步驟32將內容分段的實施例示意圖4為才艮據本發明實施例的系統構成的樹形結構的集群示意
圖5為根據本發明實施例的系統及各個節點裝置的內部結構示 意圖6為根據本發明實施例的系統應用於P2P技術的IPTV系統 中實現4臾索查找內容的欄目疊加的示意圖7為4艮據本發明實施例的方法的流禾呈圖7A為應用才艮據本發曰/ 拉數據塊的分配順序示意圖;圖7B為應用4艮據本發明實施例的方法實現基於帶寬下載/下4i 悽史據塊的分配順序示意圖7C為應用4艮據本發明實施例的方法實現基於多源法下載/下 4立悽史據塊的分配順序示意圖8為應用根據本發明實施例的方法實現利用累加帶寬把數據 傳輸給用戶的示意傳輸給用戶的示意圖10為才艮據本發明實施例的系統應用於P2P技術的IPTV系統 的擴展結構示意圖。
具體實施例方式
以下結合附圖對本發明的優選實施例進行說明,應當理解,此 處所描述的優選實施例僅用於說明和解釋本發明,並不用於限定本 發明。
根據本發明實施例,提供了一種服務重定向系統、內容發布方 法、月良務重定向方法及服務重定向裝置,下面結合圖1-圖10對本 發明各個實施例進4亍詳細i兌明。
系鄉克實施例
圖1為應用根據本發明實施例的服務重定向系統實現P2P技術 的IPTV系統的示意圖。如圖1所示的是基於P2P的IPTV系統10。 系統10包含許多節點,如圖1中的節點12A- 12H。每個節點都具 有計算能力和數據存儲能力的裝置。例如,節點12A-12H可以是 PC、工作站、機頂盒(Set-Top-Box ,簡稱為STB )、流4某體伺服器、其它網絡i殳備等。節點12A-12H通過翁:據通信網絡14互連。節點 12A-12H通過網絡14能夠交換信息和內容。圖1隻示出了 8個節 點,其實系統10可以包4舌更多的節點。
圖2為圖1中各個節點的結構示意圖。如圖2所示,以節點12A 為例,節點包含一個數據處理器16A、網絡接口 16B、數據存儲裝 置16C、欄目表16D、播放裝置16E。其中,數據處理器16A執行 欄目表16D,獲得相應欄目的節點地址信息,具體會在後續進行詳 細描述。數據存儲裝置16C可以存儲系統發布的段;節點在鏈路表 16D中存^f諸該節點與其他節點的3各由關係。圖1系統中每個節點中 的部分或全部均可以擁有播S丈裝置16E。
IPTV內容只有^嫂布到系統IO才能被系統10所利用。本領域 技術人員應當了解,本發明各實施例中的內容或媒體內容可以是任 何一種數據。例如,應用於IPTV系統,々某體內容可以是
1、 視頻內容(例如,電影、電視節目、實況電視轉播,等);
2、 音頻內容(例如,音樂,等);
3、 其它類型的媒體內容。 方法實施例
圖3為根據本發明實施例的內容發布方法的流程圖。如圖3所 示,本實施例包4舌
步驟S32:將待發布的內容分成多個段;
步驟S34:對於每個段,確定用於存儲各個段的一個或多個節點.步驟S36:將段發布給存儲該段的一個或多個節點。
其中,上述步驟S32可參看圖3A,圖3A為圖3中步驟32將 內容分,殳的實施例示意圖。如圖3A所示,4寺發布的內容以文件31 的方式提供,步驟S32可通過分片處理器將文件31分成若干個段 31A(或者分片)。段可以具有相等大小,也可以不相等。每一個段 31A還可以包含若干個塊31B,塊31B的大小可調整和配置。
步驟S34中,選擇一個或者多個節點(如圖1中的節點12A-12H 中若干個)來存儲每一個段31A。通過執行步驟S36,系統可以將 內容的各個段分發到已選擇的不同的節點上。不同的節點可以收到 一個或者多個段。
本實施例的內容發布方法將々某體文件31的所有的段31A存儲 在系統的節點中。優選的,將每一個段31A存儲在系統的多個節點中。
下面結合圖1系統實施例對圖3內容發布方法實施例的過程進 行詳細說明
系統10中的節點12A-12H可以為系統IO捐獻出某些帶外帶寬 和文件存4諸空間來實現系統10中內容的發布,假設第i個節點Pi 捐獻的帶外帶寬和文件存^f諸空間分別記為Bwi和Sti,則確定哪一個 節點存儲當前的媒體文件的段31A可以基於許多因素。例如,確定 用於存々者^殳31A的一個或多個節點可以基於以下一個或多個因素 節點可利用的帶寬Bwi、節點可利用的存儲空間Sti、節點的穩定性、 及系統最近利用該節點的程度,即節點的利用頻率。
節點被選擇為存儲某一段31A的可能性隨著該節點的可用帶 寬、存儲空間及節點的穩定性的增加而增加,而隨著節點已經被系 統10利用的禾呈度的增加而減少,即確定用於存+者,殳31A的節點與每個節點可利用的帶寬、存儲空間及節點穩定性成正比,與節點的 利用頻率成反比。
由於節點可利用的帶寬Bwi及節點可利用的存儲空間Sti可以 比較容易獲得,下面簡要介紹確定用於存儲萃殳31A的節點的其他兩 個因素
1. 節點穩定性的測量
節點i穩定性的一個可能的測量是基於周期的長度,在該周期 期間節點(如圖1中節點12A-12H中任一節點)一直保持與系統10 相連4妄而沒有中斷或離線。優選地,可以通過如下公式(1 )來計算 各個節點的穩定性
EstimatedStayi(new)= oc x EstimatedStayi(prev) + P x CurrentStayi ( 1 )
其中,CurrentStayi表示節點i自/人連4妻到系統10以來,已經 加入系統10的持續時間或無古文障持續時間的時間長度。 EstimatedStayi(new)是節點Pi的穩定性測量,由於考慮到節點i的歷 史悽t才居,EstimatedStayi(prev)是EstimatedStayi的歷史1直。a和p是 權重,而且a + p-l。
2. 節點的利用頻率
節點i被系統最近利用的程度的測量可以根據節點i加入系統 以來所捐獻帶寬的平均利用率Riusage和在最近周期內該節點處理 IPTV請求的頻率Freservei。
在獲得了系統中每個節點可利用的帶寬Bwi、可利用的存儲空 間Sti、節點的穩定性、及節點的利用頻率後,即可確定存儲內容(文 件)的段的一個或多個節點優選地,節點i被選為存儲媒體文件31的段31A的可能性可
以基於測量GSti,以下簡稱GSt值為"優度檢驗值"。例如,對於某
一個具體的實現,計算G"i的公式如下所示
v Estima感tayi ^醜A x(1-R,,) 班 g 「 a stx-t^T":--r十P stx-^z;~ 一 y stx
max(EstimatedStay;} max{£w, x (1 — 7 ,咖")} max(i^e^,}
(2)
其中ccst、 Pst、 Yst是權重因子,m是加入系統的節點的數量。
通過上述公式的優度檢驗值可知, 一個更加穩定的、具有較高 可利用帶寬、較低被利用歷史的節點將具有較高的G"值,可以將 具有較高GSt值的節點作為存儲文件各個段31A的候選節點。
具有待發布內容的節點,如,希望發布文件31的節點檢索其它 節點的GSt值,並確定擁有較高G&值的其它節點(一個或多個), 並且,在這些確定的節點上發布段31A。具體實現時,可以在圖1 所示的系統中"i殳置一中心節點或區域中心節點,負責維護和管理與 該(區域)中心節點最近的其餘多個節點,中心節點之外的其餘多 個節點釆集並計算各自的G"值,並且,轉發這些統計的G&值到(區 域)中心節點。(區域)中心節點維護一個數據結構,將各個節點與 對應的GSt值進行關聯,數據結構可以包括按照GSt值分類的列表。 一旦(區域)中心節點接收到來自內容發布節點,如節點j的請求, (區域)中心節點可以選4奪具有最高GSt值的節點Nc,並且將所確 認節點Nc的信息發回給要內容發布的節點j。
優選地,系統10的節點12A-12H ^皮組織成一個或多個集群結 構。每一個集群包含一個中心節點,用於負責累加該中心節點所負 責的集群內相應的節點的G"值。在這種情況下,每個集群的中心 節點除了確認在它自己集群內含有最高G&值的節點以外,該中心 節點還可以將本集群內的請求轉發給其它的中心節點。要發布內容的請求節點,如節點j等待一段時間(可以設定最長的等待時間)
就能夠接收到中心節點發送的確定節點Nc的信息,節點j可以基於 確定節點GSt值的大小順序將段31A發布給確定的節點。
優選地,集群結構一個具體的實現情況是樹形結構,如圖4所示。
優選地,每一個節點周期地發送"心跳"消息(即才艮告消息) 蟲合它的上級節點(以下簡稱父節點)。心J兆消息可以包括「 EstimatedStay、 Bw、 1^3卿和Freq^ve這些值。這個父節點採集包括 下級節點的心跳消息在內的信息和自己的"心跳,,消息,周期性地 把累加報告發送給它自己的父節點。通過上述方式,最終,中心節 點將擁有計算每一個節點GSt值的足夠的最近或最新的信息。中心 節點可以以Gst降序的方式將節點分類和/或以分類的候選節點列表 的方式存儲結果。中心節點基於節點最近的信息維護該分類的候選 節點列表。
除了維護節點的GSt值以外,預定時間內未收到某節點的心跳 消息能夠被用來檢測該節點由於某種原因是否已離開系統。
如圖3及圖3A所示,在步驟S34確定了存儲待發布內容的段 的節點(以下簡稱為存儲節點)之後,各個段31A在這些存儲節點之 間以循環方式被發布。段的發布方法是,分配起始段到具有最高Gst 值的候選節點,然後,發布第二個段到具有次最高0"值的候選節 點,依此類推。當所有的段分配完成時,要發布內容的節點發送段 31A到分配的各個節點。節點將已經接收到的段31A存儲在數據存 儲設備16C中。
優選地,考慮到用戶在觀看了起始段之後如果對所觀看的內容 不感興趣,則用戶不會繼續觀看該內容的後面段;另一方面,如果用戶》見看了起始若干,爻後如果沒有時間繼續^見看,則用戶也不會》見 看後面段的內容。因此,被存儲在系統中的待發布內容(或稱為文 件)的起始段或起始的若干段的拷貝份數要大於該內容後面的段的 拷貝份數,即選擇多個存儲節點存儲文件的起始段或起始的若干段。
根據圖3的方法實施例,可以將待發布的內容分成多個段(如 圖3A中的段31A),以及每一個段被存儲在系統中的一個或多個節 點內。上述方法實施例提供了一種J 某體^殳分布(Media Segment Distributing ,簡稱為MSD)方法,可以結合節點的穩、定性、可用 的上行帶寬、最近流服務負荷/頻率等信息,來選擇將哪些段存儲在 哪些節點中,能夠將文件的各個段發布到不同的節點進行存儲。
以下對根據圖l-圖3,對內容發布的方法做簡要總結
如圖1-圖3所示,當用戶利用系統104企索和獲取文件31在節 點12A進行播放時,數據處理器16A能夠使得々某體文件31的某些 段31A保存在數據存儲裝置16C中。這些被保存的段可以被系統 IO中的其它節點所利用、下載,尤其是一些熱片(用戶點擊率較高 的文件)內容的段需要保存在系統10中。考慮到實際用戶觀看的因 素,偏向於選褲^某體內容起始的若干段31A保存在系統10的可能 性要大於該內容後面的段。
在某些情況下, 一個文件內容的所有的段被保存在數據存儲設 備16C中至少一段時間。存儲在本地存儲設備16C的段允許快速地 轉發或回i文,只要段被保存在接收節點,內容(例如,視頻)就能 夠在接收節點播放,沒有必要再下載段,可以為各個節點配置所允 i午回》文節目的時間長度。
在某些情況下,內容文件31的完整拷貝(包含文件的所有段) 可以保存在已經選擇的非常穩定的節點(例如, 一直連續在線的)上。只有當其它節點都沒有用戶所請求的內容時才將用戶的請求重
定向到這種節點(如圖4中的中心節點42),保證了節目內容的"種 子"存在。
圖4為根據本發明實施例的服務重定向系統構成的樹形結構的 集群示意圖。如圖4所示,除了中心節點,其它節點要麼直接與中 心節點相連接,要麼經過中間節點與中心節點相連接。在圖4中, 集群只含有一個中心節點42,多個直接與中心節點相連接節點被稱 為區域中心節點43,最下級的節點被稱為邊緣節點44,與用戶最近, 其中,區域中心節點43為邊緣節點44的上級節點或父節點。本實 施例中,集群的組織結構是邏輯上的,並且僅與路由有關,按照該 路由,邊緣節點和中心節點可以相互通信。集群內各個節點的排列 沒有必要受到網絡結構或節點地理位置的影響。
圖4實施例中,中心節點42,用於保存所有待發布的內容,並 發布內容,具體可參見圖3及圖3A方法實施例中內容發布的相關 說明;區域中心節點43,用於維護和管理自身及該區域內的各個邊 緣節點44的信息(如,邊緣節點上報的心跳消息),保存中心節點 發布給它的內容,並保存各個邊緣節點44與所存儲的內容的對應關 系(如,內容索引表,通過內容索引表可以查找到存儲某內容的節 點),即區域中心節點雖然可以不保存某些內容的段的數據,但通過 查找內容與邊緣節點的對應關係,獲得存儲某內容的節點;邊緣節
點44,用於周期性的上報自身的信息,保存發布給它自身的內容, 並在本地沒有4呆存某些節目內容時,通知區域中心節點,如果區域 中心節點查找到該節目內容的存4諸節點,則通知用戶/人查找的節點 下載tt據內容。其中,區域中心節點43下還可以包括下級的區域中 心節點43-1,形成層級的結構。
具體地,服務重定向系統可以對集群的結構和規模大d 、進行不 同的限制。例如,屬於某個集群的所有的節點被要求至多是N級或N跳,N級或N跳被稱為集群的範圍或大小的限制。經由樹形結構 /人一個節點到中心節點的級悽^皮稱為節點的範圍。
可以通過兩種不同的方式構成集群
1 .通過允許某節點請求加入已存在的集群來構成集群
如, 一個在線的節點i可以與一個集群的一個節點j通信,諱-求加入該集群,如果節點j的範圍小於集群的範圍(如,未達到N 級),那麼請求節點i可以加入節點j所屬的集群,作為節點j的子 節點。
2.通過創建新的集群來構成集群
如,節點i請求加入節點j所屬的集群,如果節點j的範圍等於 集群的範圍(如,達到N級),那麼請求節點i可以創建一個新的集 群(例如,該節點就變成了新創建的集群的中心節點)。
優選地,不同的集群具有相同或類似的大小,而且,大小可以 4皮管理。具體可通過如下方式控制
(1 )各個不同的集群可以擁有不同的集群範圍。 一旦一個集群 達到了集群範圍,則可以拒絕加入該集群的節點的請求(直到一個 或多個已經存在的屬於該集群的節點離開該集群);
(2)設置集群"分支"極限,當一個節點把加入一個集群的請 求發送給該集群的邊界節點(即其級數等於集群級數的極限值)時, 如果不需要創建一個新的集群,則邊界節點可以轉發該請求給它的 父節點,如果集群分支的範圍小於集群"分支"極限,則發送請求 的節點可以加入這個集群,成為該集群下的一個分支。集群"分支" 極限值被設定的越高,則只需要創建較少的集群,每個集群可以有多個分支,通過集群"分支"極限, 一個請求節點加入已存在集群
的概率會增大,可以減少產生小範圍集群的概率;
(3 )要成為中心節點,需要滿足中心節點必須具備的某些功能, 例如,擁有充分的計算能力、高的帶寬、較長的在線時間,等等;
(4 )每一個集群的中心節點要周期性地檢查集群的規模。如果 集群的規模(集群的範圍/集群的分支)小於某一個門限值,則中心 節點可以嘗試發現另 一個適合的集群,並且將它合併到那個合適的 集群中。
圖5為根據本發明實施例的服務重定向系統及各個節點裝置的 內部結構示意圖。本實施例對圖4實施例中的各個節點的內部結構 進行了細化,圖5實施例中,將被分配去維護和管理事先已定義的 欄目內容的索引的節點稱為某個欄目的"代理節點(Agent Nodes )"。 欄目與網絡內容有關,並且,可以包含在但不局限於描述々某體的欄 目。例如,將系統所存儲的電影的欄目分為"動作片(action )"、"喜 劇片(comedy )"、"歷史片(historical)",等等。
在圖5所示的系統中,系統在接收到用戶發送的請求消息後, 希望確定系統內已存儲了所請求內容的文件某個段的節點,存儲的 段55用於保存節點本地所保存的欄目內容的那些段。例如,可以為 某文件內容的每一個段依次建立欄目lth、 2th、,..,表示該文件的 各個段。在圖5所示的系統中,系統在接收到用戶發送的請求下載 某文件的消息後,將首先搜索包括該文件第1段數據的節點,查找 各個節點的存儲的段55中是否包含該文件的lth,然後從搜索到的 節點下載數據,再從查找的包含該文件的2th的節點下載該文件的第 2段數據,依此類推。除了按照段的順序以外,欄目還可以基於系 數因子,例如,欄目可以基於內容的主題分類和段的順序兩個因子。可以將代理節點按照欄目分類,如,每個欄目的代理節點(Agent Node )為某一些或所有屬於該欄目或者一皮分配糹會該欄目的信息維護 了一個關鍵詞列表(以下簡稱為"內容索引表,,)。內容索引表包括 了屬於某個欄目所有內容關鍵詞列表的一個數據結構。例如,在內 容索引表中每個實體包括下面信息欄目、關鍵詞列表、節點。其 中,"欄目"表示內容已被分配到的欄目;"關鍵詞列表,,包括一個 或多個與內容匹配的關鍵詞;"節點,,表示此信息存儲在該節點上。 例如, 一個實體〈CA, KL, Nx〉表示節點Nx中包括屬於欄目CA 與關4建詞KL相配的內容,具體的,可以為節點Nx中包4舌屬於 欄目"動作片"與"英雄"相匹配的內容。內容索引表僅在代理節 點中維護。
圖5實施例的服務重定向系統示出了具有一個集群,並且該集 群具有一個中心節點53A、 一個區域中心節點53B、兩個邊》彖節點 53C及53D、兩個代理節點53E及53F的結構,其中,每一個節點 均含有一個欄目表54和本地存儲的段55,欄目表54用於存儲各個 欄目與所屬集群的代理節點的映射表。欄目表中的每一個實體可以 包括下列數據 ,例如, 一個實體〈CA, Nx, Ti〉表示在時刻Ti,代理節點Nx與欄目CA關聯。通過欄目表 54,節點可以對要查詢內容對應欄目的代理節點進行定位。
圖5實施例的集群拓樸中,含有子節點(下級節點)的其它節 點都含有到它們的子節點的鏈路57A,除了中心節點53A之外的其 他所有節點均含有一條鏈路57B到它的父節點(上級節點)。每一 個4戈理節點53E和53F均包4舌一個或多個內容索引表59A和一個或 多個疊加鏈路表59B,其中,疊加鏈路表59B表示一個或多個在其 它集群中具有相同欄目的代理節點的地址信息。
下面介紹與疊加鏈路表相關的欄目疊加
26在某些情況下,可以將P2P網絡中的節點分成集群(Cluster) 結構。每個集群可以包括一個、二個或者多個節點。不同的集群可 以包含不同數量的節點。每一個集群包括若干個維護不同欄目的代 理節點。單個節點可以是一個多欄目的代理節點。屬於不同集群中 欄目的代理節點可以相互關聯,該關聯關係可以由不同集群的代理 節點之間的鏈路所組成。 一條鏈路包括一條地址的記錄、或者在其 它節點維護的該欄目的代理節點的其它聯繫信息。在某些具體情況 下,每一個代理節點含有一個列出了多個在其它集群該欄目代理節 點地址信息的疊加鏈路列表。不同集群的代理節點之間的這種關聯 被稱為"欄目疊加"。多個欄目的疊加是可以被架構的,每一個欄目 疊加對應於一個欄目。由於不同的集群可以包含不同數量的節點, 因此,某一個節點可以屬於多個欄目疊加。
圖6為根據本發明實施例的服務重定向系統應用於P2P技術的 IPTV系統中實現搜索查找內容的欄目疊加的示意圖。圖6示出了節 點:被組織成集群60A、集群60B、集群60C,以及多個欄目疊加62A、 62B、 62C的一個例子。在每一個集群裡, 一個代理節點被分配給 已定義的3個欄目之一Cal、 Ca2、 Ca3。例如,在集群60A中, 代理節點Nl與欄目Ca2關聯;在集群60B中,代理節點N2與欄 目Ca2關聯;在集群60C中,代理節點N3與欄目Ca2關聯。因為 節點N1、 N2、 N3都是欄目Ca2的代J裡節點,因此,這3個4戈理節 點可以相互關聯構成欄目疊加62B。類似地,可以分別為欄目Cal 和Ca3的代理節點構成欄目疊加62A和62C。
在圖5實施例中,父節點和子節點構成了集群的拓樸,而疊加 鏈路表59B構成了欄目疊加的拓樸,即與不同集群之間的拓樸。為 了從該系統查詢信息,節點可以發出查詢某內容的請求消息,該請 求包括要查詢的欄目、以及與要從系統查找信息關聯的關鍵詞列表。 發出查詢請求的節點(即請求節點)通過查詢本地保存的欄目表54 中的欄目,可以對該欄目關聯的代理節點進行定位,並將請求消息發送給該欄目關聯的代理節點。代理節點接收查詢請求,從代理節 點的內容索引表中查詢與關鍵詞列表中的關鍵詞相匹配的信息,將 查詢到的結果,即存儲有該關4建詞內容的節點信息發送給請求節點。
優選地,接收到查詢請求的代理節點可以查詢它的內容索引表
59A中匹配該查詢關4建詞的4言息,並返回查詢結果給i青,,節點。查 詢結果可以包括一個存儲了滿足查詢條件信息的節點列表。
下面結合圖5及圖6 ,舉例說明搜索屬於欄目CA中的KL信 息的過程
1、 i青求節點Nx(如圖5中邊》彖節點53A)通過查找它的欄目 表找到欄目CA的代理節點;
2、 假設欄目CA的代理節點是Ny(如圖5中代理節點53E),則 節點Nx就與節點Ny建立通信,發起查詢屬於欄目CA的KL請求 消息;
3、 如果節點Ny是在線的(或存活的),並且是欄目CA的正 確的節點,則節點Ny通過從Nx接收到的請求消息的關鍵詞KL搜 索它的內容索引表,並且將搜索結果返回給節點Nx;
4、 如果節點Ny不是正確的代理節點,則Ny按照由它維護的 欄目表返回代理節點(如圖5中^理節點53F)的正確地址。如果Ny 的欄目表信息比起Nx的欄目表信息是更新的,則Nx的更新它的欄 目表,並重複步驟4;
5、 如果節點Ny離線或故障等,則Nx聯繫它的父節點Nz。如 果Nz不能發現欄目CA的代理節點,則Nx聯繫Nz的父節點,直 到Nx聯繫到中心節點。如果中心節點還不能確定欄目CA的^理節點或者中心節點離線,則以泛洪的方式查詢該集群中的每一個節
點,以確定包含屬於欄目CA的KL的節點。
在上述步驟1 5操作期間, 一旦欄目CA的代理節點接收到查 詢請求消息,則代理節點在本地執行查詢,並且根據疊加鏈路列表 查找在另一個集群中的欄目CA的代理節點,將該查詢請求轉發給 包含在疊加鏈路列表中的相應欄目疊加的代理節點。當另 一個代理 節點4妻收轉發的查詢時,4企查並確定是否第一次*接收該查詢,如果 是第一次接收該查詢,則本地執行查詢;否則可以忽略該查詢請求, 具體地,可通過分布式p合希算法(DHT)實現。
在上述搜索中, 一個查詢請求僅需要在與查詢相關的欄目疊加 內傳送查詢-清求,這與現有4支術中以泛洪的方式向所有節點查詢相 比,更力口有效。W支:沒集群的個悽t為N,則每個欄目泛洪最多包含N 個對等節點,因此, 一個查詢請求^f又在它的欄目疊加相關的代理節 點之間傳送,與該查詢請求聯繫的節點數量非常少,查詢速度快。 例如, 一個用戶希望找到某個國家歌手的音樂作品的文件,與該用 戶相關的節點可以發送查詢"國家,,欄目的"i青求,該查詢"i青求包括r 歌手姓名或歌名的關鍵詞列表,通過代理節點可以返回存儲與該查 詢相匹配的節點的;也址。
請求節點還可以利用欄目疊加搜索來確定存儲某文件的段的節 點。例如,如果所請求文件的段是第N個段(Nth),則請求節點可 以確定與該文件第N個段關聯的代理節點,從而發送查詢請求到含 有第N個^殳欄目的代理節點,代理節點可以:搜索返回一個或多個存 儲了所請求文件第N個段的節點列表。
通過圖4-圖6實施例,對本發明實施例月l務重定向系統的結構 作了詳細"i兌明,^旦有以下幾點需要i兌明1. 當創建一個新的集群時,該集群最初的中心節點就是該新集 群所有欄目的代理節點。隨著其它節點加入新集群,中心節點可以 將某些欄目遷移到其它節點,這些其它節點可以再次將欄目遷移到 另一些其它的節點。例如,在一個集群內的4壬4可 理節點可以遷移 它的某些欄目到新加入的且是該代理節點的子節點的節點中。如果 代理節點的負荷較重,則可以將某些欄目遷移到其它節點中去。
2. 如果集群中的代理節點已遷移一個或多個欄目給某些其它 的代理節點,則由該集群的代理節點所維護的欄目表需要更新。起 初,只有遷移出欄目的^f戈理節點和欄目所遷移到的節點具有所遷移 欄目的當前代理節點的最新信息。周期性地上^=艮可以解決欄目表需 要更新的問題。每一個加入的節點可以周期性地發送欄目更新報告 給一個或多個所隨才幾選4奪的相鄰的節點。欄目更新報告可以包括N 條最新信息(或者欄目遷移報告事件),以及任意M條欄目表的實 體。 一旦接收到欄目更新報告,則接收節點基於欄目更新報告裡的 時間戳來更新欄目表。
3. 當一個節點與系統共享信息時,通過查找欄目表中與這個信 息匹配的欄目,可以確定合適的代理節點,從而,該節點與該代理 節點進行消息通信。共享信息可以包括一個欄目、與該信息關聯的 一個關4建詞列表等,並且,可以告知代理節點所分配的欄目信息其 它節點也可以進行訪問。代理節點一旦接收到通信的消息,可以存 儲關鍵詞列表,以及在內容索引表存儲節點的地址。
4. 在某些具體情況下,可以由用戶對應的節點選擇欄目和關4建 詞。用戶可以從預定義欄目列表中選擇欄目,並且可以選擇描述欄 目內容的多個關4建詞。關4建詞的數量可以是1個或者大於1個。
圖7為4艮據本發明實施例的服務重定向方法的流程圖。如圖7 所示,本實施例包4舌
30步驟S72:獲取內容請求消息,其中,所述內容請求消息用於 請求下載/下拉內容;
步驟S74:確定存儲內容的各個段的一個或多個節點;
步驟S76:從確定的一個或多個節點下載/下拉內容的各個段;
步驟S78:根據內容的各個段獲得完整的內容數據。
本實施例可以結合系統實施例方便理解,圖7實施例中,根據 用戶獲取某文件內容對應的請求消息,如IPTV請求,從中心節點、 區域中心節點或代理節點的確定存儲內容的各個段的 一個或多個節 點,如從代理節點的內容索引表獲得存儲該內容的節點及節點對應 地址,發送請求消息的請求節點即可從確定的 一個或多個節點下載/ 下拉內容的各個段,最後根據內容的各個段獲得完整的內容數據。
本實施例的服務重定向方法用於提供下載/下拉媒體悽t據。本實 施例可以^皮用作下4立到接收節點的々某體內容,J 某體內容可以由多個 段所組成,這些段被存儲在網絡的節點上。節點根據接收到的請求 消息,可以搜索存儲用戶所請求內容的節點,優選地,將確定的存 儲用戶所請求內容的各個段的一個或多個節點組成節點列表,從節 點列表中下載用戶所請求的內容。
,I設一個^殳包含N個塊{B1, B2,…,BM},並且已確定M 個存儲段的節點(簡稱為存儲節點),記為{Pl, P2,…,PM}來 提供段。假設每一個存儲節點的帶寬是{Bwl, Bw2,…,BwM}, 其中,帶寬之和應該至少等於Br (視頻播放的位速率)。調度方式 解決如何從M個存儲節點下載該段,以使該段的各個塊到接收節點 具有較小的初始緩衝時間,以及儘可能早地下載每一個塊。圖7實施例步驟S76中從確定的一個或多個節點下載/下拉內容 的各個段(本文筒稱為調度方式)可以通過以下3種方式來實現
(1 )基於循環(round robin,筒稱為RR)法分配數據塊
在循環法中,將已確定的存儲段的節點(簡稱為存儲節點)編
號成l、 2.....M。按照從1到M的順序,從各個存儲節點下載/
下拉數據塊。循環法下載/下拉數據塊的方式通過為每一個存儲節點 分配相同的塊數,將各個存儲節點同等對待,不論每一個存儲節點 對流々某體會話可以捐獻出多少帶寬。
圖7A為應用根據本發明實施例的服務重定向方法實現基於循 環法下載/下拉數據塊的分配順序示意圖。圖7A示出了利用RR法 從3個存儲節點(Pl P3)下載/下拉8個大小相等的數據塊(B1 B8 ) 的一個例子。假設播放速度Br是512kbps,並且每個塊含有1秒鐘 播力文時間的^L頻內容。布I設存儲節點Pl的帶寬是320kbps (5/8x Br), P2帶寬是128kbps( 1/4 x Br), P3的帶寬是64kbps ( 1/8 x Br)。 採用RR法,則下載/下拉所有8個數據塊需要消耗16秒鐘的時間。
(2)基於帶寬匹酉己(Bandwidth Proportional,簡稱為BP)下
載/下拉數據塊
在BP法中,分配給每一個存儲節點的塊數與該節點的帶寬成 比例。在BP法中,為存儲節點Pi分配下載/下拉Bwi/Br個悽t據塊, 其中,Bwi為節點i的帶寬,Br為播放速度。BP法下載/下拉數據 塊的方法可以充分利用各個存儲節點的帶寬。
圖7B為應用根據本發明實施例的服務重定向方法實現基於帶 寬下載/下拉數據塊的分配順序示意圖。圖7B示出了利用BP法從 3個存儲節點(P1 P3)下載/下拉8個大小相等的數據塊(B1 B8) 的一個例子。同樣假設播放速度Br是512kbps,並且每個塊含有1秒鐘播放時間的視頻內容。假設存儲節點P1的帶寬是320kbps (5/8 x Br ), P2帶寬是128kbps ( 1/4 x Br ), P3的帶寬是64kbps ( 1/8 x Br )。採用BP法,則下載/下4立所有8個凝:據塊需要消庫毛8秒鐘的時 間。BP法可以有效利用各個存儲節點的帶寬,但從圖7B可看出, 起始的若干個數據塊被分配給一個節點,僅利用 一個節點的帶寬來 下載/下拉起始的若干個數據塊。如果想要緩存起始的若干個數據 塊,則緩存這些起始的若干個數據塊耗費的時間可能比下載/下拉起 始若干個數據塊的時間要長。
(3 )基於多源法下載/下拉數據塊
多源法是採用多源調度(Multi-Source Scheduling ,簡稱為 MSS)的方法,這種方式結合了 RR和BP的優點,主要過禾呈為 以RR方式將一個段的數據塊分配給存儲節點,在每一個循環裡, 節點一皮分配的tt據塊的數目與該節點的帶寬成比例。
在MSS法中,存儲節點可以按照帶寬Bw降序的方式分類。假 設一個存儲節點Pi開始發送當前數據塊的最早時間是Ti。如果存儲 節點Pi還沒有發送數據塊,則Ti就是當前時間;如果存儲節點已 經發送了多個數據塊,則Ti就是存儲節點完成發送數據塊的時間。 Ti的4刀始偵j皮i殳置為0。
要下載/下拉的段的數據塊以數據塊編號的順序被分配給存儲
節點,以第一個數據塊Bi開始。為了分配當前的數據塊Bc肌加,接
收節點可以首先計算該塊從每 一 個存儲節點下載完成時間的估計
值。優選地,通過下面的7>式計算完成時間的估計值
formula see original document page 33
其中,Tfmish(i,是對於存儲節點Pi完成時間的估計值,Size是當前塊B。^t的大小。根據各存儲節點下載完成時間的估計值,確認具 有最小完成時間的估計值的存儲節點,將當前的塊分配給具有最'J 、 完成時間的估計值的那個存儲節點。已選擇的存儲節點的下載完成 時間就被設置等於Tfinish(i),分配過程以當前數據塊的順序一直重複 進行,直到當前段的最後一個塊被分配給存儲節點。
MSS法基於對當前塊的完成時間的估計值來分配提供塊的存 儲節點。具有最小完成時間估計值的節點將當前數據塊交付給用戶 終端。MSS法保證所分配的存儲節點與其能提供的帶寬成正比。當 接收了前面的塊之後,接收節點將儘可能快地下載下一個塊。
圖7C為應用根據本發明實施例的服務重定向方法實現基於多 源法下載/下拉數據塊的分配順序示意圖。圖7C示出了利用MSS 法從3個存儲節點(P1 P3)下載/下拉8個大小相等的數據塊(B1 B8) 的一個例子。同樣假設播放速度Br是512kbps,並且每個塊含有1 秒鐘播放時間的視頻內容。假設存儲節點P1的帶寬是320kbps(5/8 x Br ), P2帶寬是128kbps ( 1/4 x Br ), P3的帶寬是64kbps ( 1/8 x Br )。採用MSS法,則下載/下拉所有8個數據塊需要消耗8秒鐘的 時間。
通過圖7A-圖7C可對RR法、BP法和MSS法進行比較。從 圖7A-圖7C可知,採用RR法,8個塊的交^f寸花費16秒的時間, 而採用BP和MSS完成相同的塊的交付卻僅花費8秒的時間。BP 法和MSS法在完成交J寸起始的幾個塊的時間是不同的,i口果起始糹爰 衝塊的凌t量為3塊,則RR法需要花費8秒的時間完成3個塊的交 付。通過比較,BP需要花費4.8秒完成此3塊的交付,而MSS僅 需要花費4秒時間。圖7A-圖7C通過比4交RR、 BP和MSS三種調 度方式充分說明可以花費較少的時間下載各個塊,而且獲得較d 、的 初始緩衝時間。當下拉某文件第1個段的過程中,接收節點可以同時下拉第2 個段和後續各個段。 一直到一個完整的文件被下拉到接收節點。
上述月l務重定向方法實施例中,當一個節點(一個"l妾收節點) 請求下載系統中的某內容文件時,接收節點通過代理節點確定存儲 該內容文件的起始段的節點列表。當接收節點準備下載/下拉所期待 媒體內容的其餘段時,起始段已從一個或多個節點中下載/下拉下 來。接收節點可以運用圖7A-圖7C所示的調度方式來計算已選擇的 存儲節點的帶寬,以及按照類似MSS的調度方式從起始段開始下拉 數據內容到接收節點中。
當接收節點請求的某內容文件不能被提供,則返回被拒絕IPTV 請求消息。請求;故拒絕的可能情況有以下幾種
1、 沒有查找到所有的段,或者根本沒有發現希望請求的內容;
2、 存儲內容的節點沒有足夠的帶寬來傳輸々某體流。
上述服務重定向方法實施例還提供了 一種欄目疊加(Category Overlay)的搜索方法。運用此搜索方法進行服務重定向,能夠為一 個IPTV會i舌(streaming session )定4立所*清求的々某體,殳。欄目疊加 的搜索方法在流媒體會話期間運用,不需要在媒體播放之前完成所 i青求的全部革殳的下載。#見頻文件的#殳可以進一步地分成多個塊,這 有助於並行接收來自不同存儲節點的一個段的不同的部分,這有助 於累加來自不同存儲節點的上行帶寬。在一個流^f某體會話期間,多 個存儲節點支持一個IPTV請求,為了有效地利用各個不同存儲節 點累加的上行帶寬,可以使用MSS方法來選擇存儲節點和一個段的 各個塊的分配順序,並且,協調各個存儲節點下載/下拉來保證及時 地月良務一個IPTV i青求。上述實施例可以將欄目疊加搜索方法應用到基於集群的P2P技 術的P2P疊加的無結構網絡上,該結構允許」搜索所產生的流量與系 統維護相互分離。當執行欄目疊加搜索時,可以限制執行此搜索所 產生的消息的數量,具體地,可以按照欄目和集群/區域進行分類搜 索。進一步地,還可以通過隔離搜索和索引的流量。
在某些情況下,當前i青求或4企索的內容可以包4舌元悽t據 (Metadata )。例^口,該元悽t才居可以確i人一個只於應於某個場景的牙見頻 文件的各個段。元數據可以包括與段信息內容相關的較詳細的信息。 例如,對於一個^L頻文件來"i兌,元悽t據可以確定某一個男演員或者 女演員主演的那個段。元數據允許對內容進行智能搜索,元數據可 以被包括在一個或者多個內容的起始段中,使得可以由接收節點的 播放裝置立即獲得和使用。通過搜索元數據來確定期待的場景開始 才番;改的段,播放裝置可以被配置播放內容使其能夠提供快進或回退 到某一個特別的邏輯場景,以及後續定位、緩存和在已確定的段處 開始播放。
圖8為應用根據本發明實施例的服務重定向方法實現利用累加 帶寬把數據傳輸給用戶的示意圖。如圖8所示,假設接收節點P6 想觀看一段視頻,其播放速率是500kbps。接收節點P6搜索到視頻 的段#0,並且搜索到節點Pl、 P2、 P3包括段#0,那麼接收節點 P6選擇P1、 P2、 P3作為提供,殳#0的節點,並且,計算P1、 P2、 P3下拍"歐弁0的帶寬。同才羊,乂人P3、 P4下拍"歐弁l;從P4、 P5下 拉段#2。在流會話結束之後,接收節點P6可以在它所提供的存儲 空間裡緩存下拉的各個段,以後,接收節點P6基於所存儲的段,可 以為其它節點提供內容服務。
一旦接收節點產生了下載媒體文件段的請求時,它可以發送調 度命令給已選擇提供媒體內容服務的存儲節點。當存儲節點接收到 該調度命令時,可以發送調度中分配的塊到接收節點(或用戶終端)。
36圖9為應用根據本發明實施例的服務重定向方法實現利用循環 法把數據塊傳輸給用戶的示意圖。如圖9所示,接收節點可以維護 一個環形緩存90。 一旦接收節點內的接收裝置92從存儲節點接收 到分塊時,則接收節點可以將塊插入到環形緩存90中的正確位置, 並通過播放裝置94播放。環形緩存90的大小可以表示成oc buff x Nsche x blk_Size是。其中,a buff是一個參數,且ex buff > 1 , Nsche表示調 度的數據塊的數量,blk—Size表示一個數據塊的大小。
為了能夠適應流力某體包的延遲或者某個節點離開系統或故障, 在媒體文件開始播放之前,接收節點可以至少緩存SinitBuff (初始緩 存)個塊。在初始緩存時間之後,*接收節點可以連續不斷地乂人環形 緩衝90中讀取々某體數據和播放媒體文件。
優選地,在流會話期間,接收節點可以監^見環形緩存90的狀態, 並且對已接收的塊進行跟蹤。在已接收的塊^皮調度去播放之前,每 一個塊至少接收一定的設定時間(記為T^秒)。如果塊沒有已接收 該i殳定的時間,則塊可以淨皮確定為已"丟失",因此,,接收節點可以 向相應的節點發送請求重發所丟失的塊。
在上述實施例的力l務重定向方法過程的一個流會話期間,某個 節點離開了服務重定向系統、或者故障、或者從某個或多個節點輸 入的流速率由於網絡擁塞而變'隄,在這種情況下,可以選擇該節點 的替代節點。具體地,可以預設一接收速率的最小值,對於接收速 率小於該最小值或者脫離系統的一個或多個節點(簡稱為失效節 點),為其選擇替代節點,並從選擇的替代節點下載/下拉失效節點 存儲的段和/或塊。如接收節點可以從所請求段的節點裡選擇一個 或多個替代的節點。
具體實現時,如果某個節點在一個流々某體會話期間發生故障或 離開了系統,則接收節點可以選擇另一個節點來替換已離開/故障的節點。4妄收節點可以產生 一個由還沒有4妄收塊的新節點組成的流交 付調度。接收節點發送修改後的調度(即當前接收塊從哪幾個節點 接收)給替代節點, 一旦選擇替代的新節點接收到已修改的調度, 則新節點可以按照調度裡所說明的順序發送所分配的塊給接收節 點,為說明簡單,將這個過程稱為"提供者切換"。在流會話期間, 接收節點(或用戶終端)可以監視從各個存儲節點接收的內容的速 率,如果接收節點檢測到從某一存儲節點正在輸出的媒體流的速率 已經下降了 一段時間,或者已報告或檢測到該存儲節點離開或故障, 則接收節點可以執行提供者切換。
優選地,考慮到接收節點發生提供者切換時,總帶寬可能小於 所要求的播放速率,以及接收節點的緩存可能為空的現象。在設置
sinitBuff (初始緩存)時,初始緩存可以被選擇成足夠大使得即使發
生提供者切換的現象也能夠繼續播放而沒有中斷。
本發明上述各實施例所提供的方法和系統支持在較大範圍節點 內搜索共享信息。服務重定向的功能能夠分布在許多節點上,最大 可多到欄目數量與系統內集群數量之積的程度。對於系統的維護, 例如,內容索引,自動地合併新節點或處理節點的離開,也可以是 分布在許多節點上進行。
本發明實施例的月l務重定向方法,能夠運用網絡中的節點的上
4亍帶寬小於它的下4於帶寬的情形(例如,ADSL)。例如單個節點 上載數據的速率相對較低,而從多個節點下拉/下載數據到接收節點 的i4,貝'J才目只於專交高。
本發明各實施例所提供的內容發布方法和服務重定向方法,可 以對IPTV系統進行擴展,運用到系統以外的裝置。例如,可以將 內容交^J"給私人悽吏字助理(Personal Digital Assistant, PDA )、手才幾 等,具體地,可以通過代理(Proxy)節點作為接收節點來實現,代理節點從系統節點下載/下拉內容後,可以自身進行播放,還可以將 下載的內容轉發給其它裝置設備(例如,手機)。
圖10為根據本發明實施例的服務重定向系統應用於P2P技術 的IPTV系統的擴展結構示意圖。圖10示出了包4舌^理節點10的 系統10A。 4<理節點10與其它節點12通信來4妾收內容數據,通過 通信鏈路14A,代理節點10也與非加入系統10A的節點100進行 相互通信,通信鏈3各14A可以包括無線連4妻。代理節點10與系統 IOA的其餘部分交互,並且經過通信鏈路14A,轉發所接收的內容 數據給節點100。如圖10所示,節點100具體為手機,手機用戶能 夠4叟索系統10A中的4見頻,然後,在手衝几上插^文:規頻。在某些具體 情況下,可以在代理節點10進行轉碼來降低內容數據的速率使得適 應節點100和/或通信鏈^各14A。具體進4亍力良務重定向和內容發布可 參看圖1-圖9各實施例的相關說明,在此不對相同或相似的內容重 復描述。
上述系統實施例中的IPTV系統,方4更擴展,並能夠在節點之 間提供4交好的負載平4軒。在系統實施例中,可以不i殳置能夠獨立地 處理這個系統所有搜索業務的"超級節點,,(super node )。
在上述系統實施例中,可以以兩種方式進4亍關聯 一方面,節 點被關聯到集群。如確定哪個節點是哪個集群的代理節點等維護 任務,可以採用集群的拓樸結構來關聯;另一方面,在欄目疊加中 關聯代理節點,如服務重定向節點的搜索任務,可以採用相應的 欄目疊加拓樸進行管理。
綜上所述,本發明各實施例所提供的內容發布方法、服務重定 向方法及系統、節點設備,將內容分成若干段,並發布到不同的多 個存儲節點上,可以分別從多個節點響應用戶的請求,可有效提高 IPTV系統的可擴展性,完成IPTV媒體服務定向等功能。上述各實施例還可以基於P2P網絡模型,提供大規模而有效的關鍵詞搜索業 務,有效縮短月艮務重定^f立的時間。
以上所述僅為本發明的優選實施例而已,並不用於限制本發明, 對於本領域的4支術人員來^i兌,本發明可以有各種更改和變化。凡在 本發明的精神和原則之內,所作的任何^修改、等同替換、改進等, 均應包含在本發明的保護範圍之內。
權利要求
1.一種內容發布方法,應用於IPTV系統,其特徵在於,包括將待發布的內容分成多個段;對於每個段,確定用於存儲所述段的一個或多個節點;將所述段發布給存儲所述段的所述一個或多個節點。
2. 根據權利要求1所述的方法,其特徵在於,所述將待發布的內 容分成多個段的操作具體包括將所述待發布的內容分成多個相同或不同的段,每個所述 ,史都包含大小可調整和/或配置的多個塊。
3. 根據權利要求1所述的方法,其特徵在於,通過以下節點信息 至少之一確定用於存々者所述l殳的一個或多個節點節點可利用的帶寬、節點的穩定性、節點可利用的存儲空 間、節點的利用頻率。
4. 根據權利要求3所述的方法,其特徵在於,還包括周期性地獲取節點發送的報告消息,所述報告消息中攜帶 有所述節點信息。
5. 根據權利要求1-4中任一項所述的方法,其特徵在於,根據以 下信息確定存儲所述段的節點formula see original document page 3其中,Gsti表示節點i的優度檢驗值,EstimatedStayi(new)= a x EstimatedStayi(prev) + P x CurrentStayj;EstimatedStayi(new)表示節點的穩、定寸生,CurrentStayj為節 點i加入系統的持續時間或無故障持續時間的時間長度, EstimatedStayj(prev)為EstimatedStayi的歷史值,ot和P為權重 因子,且"+ 0=1; Bwi為節點i可利用的帶寬;11^亭為節點 i加入系統所捐獻帶寬的平均利用率,Frese,為節點i在預定 周期內處理IPTV i青求的頻率;其中,ocst、 Pst、 Yst為4又重因子,m為加入IPTV系統 的節點的悽史量。
6 根據權利要求5所述的方法,其特徵在於,確定用於存儲所述 段的一個或多個節點的操作具體包括獲取每個節點對應的優度檢驗值Gst;選擇大於或大於等於預設值的優度檢驗值,將超過所述預 設值的優度檢驗值對應的節點作為存儲所述段的節點。
7 根據權利要求6所述的方法,其特徵在於,所述將所述段發布 給存儲所述段的所述 一 個或多個節點的操作通過以下方式進 行按照確定用於存儲所述段的一個或多個節點的優度檢驗 值高低,將所述段分別發布給所述一個或多個節點。
8. —種力良務重定向的方法,其特4i在於,包才舌獲取內容請求消息,其中,所述內容請求消息用於請求下 載/下拉內容;確定存儲所述內容的各個段的一個或多個節點;從所述一個或多個節點下載/下拉所述內容的各個段;根據所述內容的各個段獲得完整的內容。
9. 根據權利要求8所述的方法,其特徵在於,在所述確定存儲所 述內容的各個段的一個或多個節點的操作之後,進一步包括將確定的所述一個或多個節點的節點標識添加到下載/下 拉所述內容的節點列表。
10. 根據權利要求8所述的方法,其特徵在於,所述確定存儲所述 內容的各個段的一個或多個節點的操作之後,還包括向所述一個或多個節點分配下載/下4立的悽t據塊,具體可 通過以下方式至少之一進4亍按照節點順序循環從所述一個或多個節點下載/下拉所述 l史或所述l殳中的一個/多個所述塊,其中,每個節點在每個循 環中被分配的所述段或所述塊相同,或者被分配的所述段或所 述塊與該節點的帶寬成比例;根據存儲所述段的所述一個或多個節點的帶寬,從所述一 個或多個節點下載/下4立每一個所述,爻或所述^殳中的一個/多個 所述塊。
11. 根據權利要求8所述的方法,其特徵在於,所述從所述一個或 多個節點下載/下拉所述內容的各個段的操作通過以下方式至 少之一進行利用累加帶寬下載/下拉所述內容的各個段;將下載/下拉的所述內容的各個段寫入預設的環形緩存,所述環形緩存預i殳有各個^:和/或每個,史的一個或多個塊的對 應位置,其中,所述每個革爻都包含大小可調整和/或配置的多 個塊。
12. 根據權利要求8-11中任一項所述的方法,其特徵在於,還包 括對於接收速率小於預設值的一個或多個失效節點,為其選 擇替代節點,並從所述替代節點下載/下拉對應的失效節點存 〃賭的^殳和/或塊。
13. —種服務重定向系統,其特徵在於,包括一個或多個集群,每 個所述集群都包括中心節點,用於保存所有待發布的內容,並發布內容;具有層級結構的一個或多個下屬節點,直接連接到所述中 心節點,或者連接到所述下屬節點的上級節點,用於存儲系統 發布的內容的各個段,並在接收到下載/下拉內容對應的請求 消息時,確定下載/下4立內容的一個或多個節點,乂人所述確定 的一個或多個節點下載/下拉所述內容的各個段。
14. 根據權利要求13所述的系統,其特徵在於,所述中心節點與 所述下屬節點形成樹形拓樸結構或網狀拓樸結構。
15. 根據權利要求13或14所述的系統,其特徵在於,所述各個節 點均包括欄目表,用於存儲各個欄目與所屬集群的代理節點的映射 關係,所述欄目為將所有內容分類的目錄信息,所述代理節點 用於對包含所述欄目中的一類或多類目錄內容的節點進行維 護和管理;存儲才莫塊,用於存儲本地保存的內容的段; 鏈路模塊,用於存儲到其他節點的鏈路。
16. 根據權利要求15所述的系統,其特徵在於,所述節點為代理 節點,還包4舌內容索引表,用於維護存儲內容的節點、以及節點對應的 地址信息;疊加鏈路表,用於存儲一個或多個在其它集群中具有相同 欄目的代理節點的地址信息;其中,所述欄目為將所有內容分 類的目錄信息。
17. —種節點設備,其特徵在於,包括欄目表,用於存儲各個欄目與所屬集群的代理節點的映射 關係,所述欄目為將所有內容分類的目錄信息,所述代理節點 用於對包含所述欄目中的一類或多類目錄內容的節點進行維 護和管J裡;存儲模塊,用於存儲本地保存的內容的段; 鏈if各才莫塊,用於存儲到其他節點的鏈路。
18. 根據權利要求17所述的節點設備,其特徵在於,還包括內容索引表,用於維護存儲內容的節點、以及節點對應的 地址〗言息;疊加鏈路表,用於存儲一個或多個在其它集群中具有相同 欄目的代理節點的地址信息;其中,所述欄目為將所有內容分 類的目錄信息。
19. 根據權利要求17或18所述的節點設備,其特徵在於,所述鏈 路模塊包括-.父鏈路子模塊,用於存儲到上級節點的鏈路; 子鏈路子模塊,用於存儲到下級節點的鏈路。
全文摘要
本發明公開了一種內容發布方法、服務重定向方法及系統、節點設備,其中,內容發布的方法包括將待發布的內容分成多個段;對於每個段,確定用於存儲段的一個或多個節點;將段發布給存儲段的一個或多個節點。本發明可以分別從多個節點響應用戶的請求,可有效提高IPTV系統的可擴展性,完成IPTV媒體服務定向等功能,有效解決現有技術中IPTV系統的可擴展性差、搜索查找不靈活的缺陷。
文檔編號H04N7/173GK101594292SQ20081011032
公開日2009年12月2日 申請日期2008年5月30日 優先權日2008年5月30日
發明者李木金 申請人:中興通訊股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀