定位和檢索分段內容的制作方法
【專利摘要】描述用于檢索源自兩個或更多內容分發(fā)網絡的分段內容的方法和系統(tǒng)。該方法可以包括以下步驟:檢索與所述分段內容相關聯(lián)的清單文件模板,該清單文件模板包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針;使用所述一個或多個數(shù)據(jù)庫條目來確定所述第一或第二內容分發(fā)網絡中的分發(fā)節(jié)點的位置,所述分發(fā)節(jié)點被配置成分發(fā)與所述數(shù)據(jù)庫條目相關聯(lián)的分段;以及通過用所述確定的位置替代所述指針來生成用于定位所述分段內容的清單文件。
【專利說明】定位和檢索分段內容
【技術領域】
[0001]本發(fā)明涉及定位和檢索分配(distributed)在兩個或更多內容分發(fā)(delivery)網絡上的分段內容,并且特別地但不排他地涉及用于定位和檢索分配在兩個或更多內容分發(fā)網絡上的分段內容的方法、控制功能模塊和客戶端,以及使用這種方法的計算機程序產
品O
【背景技術】
[0002]當前越來越多的視頻流技術使用所謂的分段。例如,在HTTP自適應流(HAS)中,可伸縮視頻編碼(VCS)和空間分段的內容(例如平鋪視頻)使用分別以時間、質量和空間為基礎的分段。在分段過程期間,將會生成所謂的清單文件,其描述不同分段之間的關系以及可能會檢索到分段的位置。
[0003]分段的視頻內容可以被用來動態(tài)調整帶寬需求,例如通過從高質量視頻流切換到低質量視頻流。此外,分段的視頻還可能允許受歡迎的和較不受歡迎的視頻分段之間的劃分。例如,與視頻結束處的內容相比,與視頻的開始相關聯(lián)的內容通常將被更頻繁地觀看(更受歡迎)。類似地,與高質量內容(例如較高分辨率HAS分段或SVC增強層)相比,低比特率較低質量視頻內容(例如最低分辨率HAS分段或SVC基層)將被更頻繁地觀看。因此,當對視頻內容進行分段時,某些分段將會比其他分段更頻繁(得多)地被消費者請求。被配置成向消費者分發(fā)內容的內容分發(fā)網絡(CDN)可以有利地使用該性質。例如可以將與更受歡迎的內容相關聯(lián)的分段存儲在CDN中的多個節(jié)點處以便可以減少帶寬問題并且保證高效分發(fā)。⑶N內容位置管理器可以集中管理⑶N內的可能會檢索到分段的位置。
[0004]在一些情況下,與一片內容相關聯(lián)的片段可以被存儲在屬于兩個或更多不同CDN域的節(jié)點處。在這種情況下,沒有中央位置管理器可用于在不同⑶N域中定位分段。因此,與第一 CDN相關聯(lián)的清單文件可能僅提到其他CDN中的路由功能,因為第一 CDN不了解該分段在第二 CDN中的位置。因此,每當請求另一 CDN中的分段時,需要對該CDN的路由請求。這樣的請求會生成請求-路由延遲以使得會花費較長的時間來接收到所請求的分段。
[0005]這樣的路由請求可能對CDN的性能有負面影響。包括大量分段的內容可能需要對其他CDN的大量路由請求,因此大大增加了每用戶的請求路由載荷。此外,路由-請求延遲還可能對客戶端的性能產生負面影響,尤其當客戶端允許與內容的用戶交互時(例如在空間分段內容的情況下縮放和平移請求)。路由請求延遲可能引起顯示某一所請求的內容的延遲,從而負面地影響用戶體驗。
[0006]在 http: //tools, ietf.0rg/html/draft-peterson-cdn1-strawman-QO 中描述 了不同于上述路由請求機制的CDN互連方案。在這篇文章中,基于DNS查找和HTTP重定向來提出方案。然而,這樣的技術需要每個所請求的分段的多個重定向,從而引入不期望的延遲,當使用需要短響應時間以達到快速內容交互的內容服務時這些延遲是不期望的。
[0007]因此,在現(xiàn)有技術中存在對分配在兩個或更多CDN域上的分段的高效定位的需要。特別地,存在對以下這樣的方法和系統(tǒng)的需要,即在多個CDN域中定位分段以使得可以以最小的延遲將分段分發(fā)給客戶端從而實現(xiàn)對內容播放設備的內容服務,該內容播放設備需要用戶交互功能(例如平移、縮放、傾斜、高分辨率版本和低分辨率版本之間的無縫切換
寸寸7 ο
【發(fā)明內容】
[0008]本發(fā)明的一個目的是減少或消除現(xiàn)有技術中已知的缺點中的至少一個并且在本發(fā)明的第一方面中提供一種用于定位優(yōu)選地分段內容或片段內容、優(yōu)選地空間分段內容的方法,其中所述分段內容可以被分配在至少與第一內容位置數(shù)據(jù)庫相關聯(lián)的第一內容分發(fā)網絡和與第二內容位置數(shù)據(jù)庫相關聯(lián)的第二內容分發(fā)網絡上。所述方法可以包括:檢索與所述分段內容相關聯(lián)的清單文件模板,其包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針;使用所述一個或多個數(shù)據(jù)庫條目來確定所述第一或第二內容分發(fā)網絡中的分發(fā)節(jié)點的位置,所述分發(fā)節(jié)點被配置成分發(fā)與所述數(shù)據(jù)庫條目相關聯(lián)的分段;以及通過用所述確定的位置替代指針來生成用于定位所述分段內容的清單文件。
[0009]在一個實施例中,所述分段內容被分配在第一或第二內容分發(fā)網絡上。
[0010]在一個實施例中,可以由第一內容分發(fā)網絡來檢索所述清單文件模板和/或可以由第二內容分發(fā)網絡來檢索所述清單文件模板。
[0011]在一個實施例中,可以響應于接收到用于定位所述分段內容的至少一部分的位置請求來檢索所述清單文件模板。
[0012]在另一實施例中,所述位置請求是優(yōu)選地請求分段內容的用戶(或客戶端)請求。在另外的其他實施例中,所述位置請求可以是來自網絡中內容控制功能、優(yōu)選地IPTV控制功能、可選地基于IMS的功能的請求。
[0013]在一個實施例中,該方法可以包括:針對所述數(shù)據(jù)庫條目中的至少一個來確定所述第一內容分發(fā)網絡還是所述第二內容分發(fā)網絡最適合于分發(fā)與所述數(shù)據(jù)庫條目中的至少一個相關聯(lián)的分段。
[0014]在另一實施例中,該方法可以包括:向所述第二內容位置數(shù)據(jù)庫發(fā)送確定分發(fā)節(jié)點在所述第二內容分發(fā)網絡中的位置的請求,所述分發(fā)節(jié)點適合于分發(fā)與所述數(shù)據(jù)庫條目中的至少一個相關聯(lián)的分段。
[0015]在一個實施例中,發(fā)送給所述第二內容位置數(shù)據(jù)庫的所述請求是轉發(fā)的、可選地經修改的位置請求。
[0016]在另一實施例中,發(fā)送給所述第二內容位置數(shù)據(jù)庫的所述請求可以包括部分清單文件,其包括一個或多個分段標識符。
[0017]在一個實施例中,將所述所確定的位置從第二內容分發(fā)網絡傳送到第一內容分發(fā)網絡。
[0018]在另一實施例中,將所述所確定的位置作為優(yōu)選地經更新的部分清單文件的一部分來傳送。
[0019]在又一實施例中,可以基于所述位置請求、優(yōu)選地基于與所述請求相關聯(lián)的位置信息來確定所述優(yōu)選地最適合的內容分發(fā)網絡。
[0020]在一個實施例中,所述第一內容位置數(shù)據(jù)庫中的包括用于定位被配置成分發(fā)分段的分發(fā)節(jié)點的一個或多個定位符的所述數(shù)據(jù)庫條目可以包括指向數(shù)據(jù)庫位置的指針。[0021]在另一實施例中,所述第一內容位置數(shù)據(jù)庫中的包括指向所述第二內容分發(fā)節(jié)點的內容位置數(shù)據(jù)庫的一個或多個指針的所述數(shù)據(jù)庫條目可以包括指向數(shù)據(jù)庫位置的指針。
[0022]在另一方面中,本發(fā)明可以涉及一種用于從包括第一內容位置數(shù)據(jù)庫的第一內容分發(fā)網絡向包括第二內容位置數(shù)據(jù)庫的第二內容分發(fā)網絡移動分段內容的至少一部分的方法,該方法包括:檢索與所述分段內容相關聯(lián)的清單文件模板,其包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針;為在所述清單文件模板中標識的分段的至少一部分確定分段度量;基于所述分段度量來選擇移動到所述第二內容分發(fā)網絡的一個或多個分段;通過用被配置成分發(fā)所述所選分段的所述第一內容分發(fā)網絡中的分發(fā)節(jié)點的一個或多個位置替代與所述所選一個或多個分段相關聯(lián)的所述清單文件模板中的指針來生成部分清單文件;將所述部分清單文件發(fā)送到所述第二內容分發(fā)網絡??商鎿Q地,用于將一個或多個分段移動到第二內容分發(fā)網絡的選擇過程不基于分段度量,而是具有另一基礎。例如,隨機、預定。在這樣的實施例中,可以省略確定分段度量的步驟。
[0023]在一個實施例中,該方法還可以包括:請求所述第二內容分發(fā)網絡獲取(ingest)在所述部分清單文件中標識的分段的至少一部分。
[0024]在另一方面,本發(fā)明可以涉及用于定位分段內容的控制功能模塊,所述內容被分配在至少與第一內容位置數(shù)據(jù)庫相關聯(lián)的第一內容分發(fā)網絡和與第二內容位置數(shù)據(jù)庫相關聯(lián)的第二內容分發(fā)網絡上,所述控制功能模塊被配置成:檢索包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針的清單文件模板;使用所述一個或多個數(shù)據(jù)庫條目來確定所述第一或第二內容分發(fā)網絡中的分發(fā)節(jié)點的位置,所述分發(fā)節(jié)點被配置成分發(fā)與所述數(shù)據(jù)庫條目相關聯(lián)的分段;以及通過用所述確定的位置替代指針來生成用于定位所述分段內容的清單文件。
[0025]在另一方面中,本發(fā)明可以涉及一種被配置成與上述控制功能模塊進行通信的客戶端,所述客戶端被配置成:向所述控制功能模塊發(fā)送定位所述分段內容的至少一部分的位置請求;接收包括與所述第一和/或第二分發(fā)網絡中的分發(fā)節(jié)點相關聯(lián)的位置信息的清單文件;以及基于所述位置信息向所述分發(fā)節(jié)點中的至少一個發(fā)送對分段的請求。在另外的實施例中,所述控制功能模塊可以與第一內容分發(fā)網絡相關聯(lián)。所述客戶端被配置成從第一內容分發(fā)網絡或第二內容分發(fā)網絡接收所述清單文件。
[0026]本發(fā)明還涉及包括軟件代碼部分的計算機程序產品,所述軟件代碼部分被配置成當在計算機的存儲器中運行時執(zhí)行上述方法步驟中的至少一個。
[0027]將參考示意性地示出根據(jù)本發(fā)明的實施例的附圖進一步說明本發(fā)明。將會理解,不以任何方式使本發(fā)明受限于這些特定實施例。
【專利附圖】
【附圖說明】
[0028]圖1描繪根據(jù)本發(fā)明的一個實施例的內容分發(fā)系統(tǒng)。
[0029]圖2描繪根據(jù)本發(fā)明的一個實施例的內容位置數(shù)據(jù)庫。
[0030]圖3描繪根據(jù)本發(fā)明的一個實施例的清單文件或清單文件模板的通用數(shù)據(jù)結構。
[0031]圖4描繪根據(jù)本發(fā)明的一個實施例的內容獲取的流程圖。
[0032]圖5描繪根據(jù)本發(fā)明的一個實施例的內容獲取的序列圖。
[0033]圖6描繪根據(jù)本發(fā)明的一個實施例在內容獲取之后清單文件的更新。[0034]圖7描繪根據(jù)本發(fā)明的一個實施例將靜態(tài)MF更新到MF模板中的流程圖和序列圖。
[0035]圖8描繪根據(jù)本發(fā)明的一個實施例更新清單文件模板的過程。
[0036]圖9描繪根據(jù)本發(fā)明的一個實施例使用部分清單文件(MF)將分段從第一 CDN移動到第二⑶N的流程圖。
[0037]圖10描繪根據(jù)本發(fā)明的一個實施例使用部分MF將分段從第一 CDN移動到第二⑶N的序列圖。
[0038]圖11描繪根據(jù)本發(fā)明的一個實施例用于內容獲取的部分MF的形成。
[0039]圖12描繪根據(jù)本發(fā)明的一個實施例服務于用戶請求的過程的流程圖。
[0040]圖13描繪根據(jù)本發(fā)明的一個實施例用于生成DMF的過程的序列圖。
[0041]圖14描繪根據(jù)本發(fā)明的一個實施例與用戶請求相關聯(lián)的DMF的形成。
[0042]圖15描繪根據(jù)本發(fā)明的一個實施例生成與用戶請求相關聯(lián)的清單文件的過程的流程圖。
[0043]圖16描繪根據(jù)本發(fā)明的一個實施例生成與用戶請求相關聯(lián)的清單文件的過程的序列圖。
[0044]圖17描繪根據(jù)本發(fā)明的一個實施例處理從⑶N A到⑶N B的分段位置請求的流程圖。
[0045]圖18描繪根據(jù)本發(fā)明的一個實施例基于DMF從第一和第二 CDN檢索分段內容的過程的序列圖。
【具體實施方式】
[0046]圖1描繪根據(jù)本發(fā)明的一個實施例用于將分段內容分發(fā)給客戶端的內容分發(fā)系統(tǒng)100。該內容分發(fā)系統(tǒng)可以包括內容分發(fā)網絡(⑶N)(例如第一⑶N 102和第二⑶N 104)、經由傳輸網絡107連接到托管客戶端108的一個或多個終端的內容源106。該內容源可以涉及內容提供者系統(tǒng)CPS、內容準備系統(tǒng)或另一 CDN。CPS可以被配置成將內容(例如視頻字幕)提供給消費者,消費者可以使用客戶端購買并且接收該內容。
[0047]終端通常涉及內容處理設備,例如(移動)內容播放設備(諸如電子平板設備、智能電話、筆記本型電腦、媒體播放器等等。在一些實施例中,終端可以是機頂盒或被配置成處理并臨時存儲由內容播放設備將來消耗的內容的內容存儲設備。
[0048]每個⑶N可以包括分發(fā)節(jié)點110、112、114以及至少一個中央⑶N節(jié)點116、118。每個分發(fā)節(jié)點可以包括控制器120、122、124以及用于存儲和緩沖內容的高速緩沖存儲器126、128、130或者與控制器120、122、124以及用于存儲和緩沖內容的高速緩沖存儲器126、128、130相關聯(lián)。每個中央CDN節(jié)點可以包括:用于控制從外部源(例如內容提供者或另一CDN)獲取內容的獲取節(jié)點(或內容源自功能(COF)) 125,127 ;用于保留關于內容被存儲在⑶N中的哪里的信息的內容位置數(shù)據(jù)庫134、136 ;以及用于控制向分發(fā)節(jié)點分配內容的一個或多個拷貝并且將客戶端重定向到適當?shù)姆职l(fā)節(jié)點(也被稱為請求路由的過程)的CDN控制功能(CDNCF) 123、128,并且與所述獲取節(jié)點125、127、內容位置數(shù)據(jù)庫134、136、CDN控制功能(⑶NCF) 123、128相關聯(lián)。分配可以被控制以使得在將內容分發(fā)給客戶端的整個過程中確保⑶N足夠帶寬。在一個實施例中,⑶N可以涉及如在ETSI TS 182 019中描述的CDN。
[0049]消費者可以通過向門戶網站(WP) 132發(fā)送請求來從CPS 131購買內容(例如視頻字幕),所述門戶網站(WP) 132被配置成提供標識可購買的內容的字幕參考。響應于所述請求,客戶端可以接收來自WP的字幕參考的至少一部分以及能夠分發(fā)所選內容的CDN的CDNCF的位置信息(例如URL)。
[0050]CDNCF可以發(fā)送與一個或多個被配置成向客戶端分發(fā)所選內容的分發(fā)節(jié)點相關聯(lián)的客戶端位置信息。典型地,該CDNCF可以在CDN中選擇最適合于向客戶端分發(fā)所選內容的分發(fā)節(jié)點。選擇分發(fā)節(jié)點的標準可以包括客戶端的位置以及分發(fā)節(jié)點的處理載荷。
[0051]客戶端可以使用各種已知技術(包括HTTP和/或DNS系統(tǒng))來接觸⑶N中的分發(fā)節(jié)點。此外,可以使用各種流協(xié)議來向客戶端分發(fā)內容。這樣的協(xié)議可以包括HTTP和RTP類型的流協(xié)議。在優(yōu)選實施例中,可以使用自適應流協(xié)議,諸如HTTP自適應流(HAS)、DVB自適應流、DTG自適應流、MPEG DASH、ATIS自適應流、IETF HTTP直播流和相關協(xié)議。
[0052]CDN被配置成獲取和分配分段內容。還沒有被分段或成為片段的內容有時也被稱為原始內容。已知的分段流系統(tǒng)可能基于時間分段(例如HTTP自適應流(HAS))、基于質量的分段(例如可伸縮視頻編碼(VCS))和/或空間分段(例如平鋪的視頻)。這些系統(tǒng)的共同之處是以許多分段(片或部分)來組織內容,其中可以根據(jù)已知的傳輸容器格式來格式化(諸如MPEG或AVI)所述分段。以更一般的方式,分段有時還被稱為組塊(chunk)??梢杂伤鼈冏约旱腢RL對分段單獨尋址并且從文件系統(tǒng)的角度來看將分段存儲為單個文件。在一些基于HTTP的內容流技術中,使用片段的替換術語。作為內容片段化(代替內容分段)的結果,形成作為組塊的另一種形式的片段。
[0053]在具有例如用于Microsoft的平滑流的片段(或虛擬分段)的情況下,所有組塊或者屬于同一組塊收集的片段被存儲在一起,作為單個文件的一部分。盡管存在允許存儲這種類型的分組塊內容的許多容器格式,但是最常使用片段化的MP4。在具有片段的情況下,可以通過用唯一標識所感興趣的組塊的標識符對通用文件URL加下標、借助于時間戳、字節(jié)范圍或以某一其他方式對特定組塊尋址。要注意,本發(fā)明的實施例還適用于在其中使用片段而不是分段的系統(tǒng)或技術。因此,為了該申請的目的,可以使用術語分段來表現(xiàn)分段、或片段、或廣義詞組塊,只要最適合,因為在現(xiàn)有技術中這些都可能碰到。
[0054]可以以特定數(shù)據(jù)結構來描述各分段之間的關系,在下文中該特定數(shù)據(jù)結構被稱為清單文件,該特定數(shù)據(jù)結構可以被存儲并且使用特定文件名稱擴展(例如,.mf、.xml、和.m3u8)來對其進行標識。清單文件還描述一個或多個分發(fā)節(jié)點上的不同分段的位置和名稱。
[0055]在特別受歡迎的分段中,可以從CDN中的多于一個分發(fā)節(jié)點檢索分段。而且,在某些情況下,應該從另一 CDN域中的分發(fā)節(jié)點檢索分段。CDNCF可以管理能夠檢索到分段的位置。在這種情況下,CDNCF可以使用內容位置數(shù)據(jù)庫134、136。在一個實施例中,內容位置數(shù)據(jù)庫可以涉及資產位置功能(ALF) JBETSI TS 182 019中所述。
[0056]圖2描繪根據(jù)本發(fā)明的一個實施例的內容位置數(shù)據(jù)庫。該內容位置數(shù)據(jù)庫可以包括主位置表格202,其包括與特定類型的文件名相關聯(lián)的條目。每個條目還包括指代數(shù)據(jù)庫記錄204-212的位置指針,該數(shù)據(jù)庫記錄204-212包括用于在⑶NCF的⑶N域(例如⑶N A)內或另一 CDN域(例如CDN B)內定位分發(fā)節(jié)點的一個或多個文件定位符(例如URL)。例如,與文件名Movie-2相關聯(lián)的數(shù)據(jù)庫條目214涉及類型為“視頻文件”的文件并且包括指向包含定位與CDN A的第一和第二分發(fā)節(jié)點相關聯(lián)的第一和第二高速緩沖存儲器的兩個URL的數(shù)據(jù)庫記錄的位置指針Movie-2_Location。
[0057]類似地,與文件名Movie-4相關聯(lián)的數(shù)據(jù)庫條目216涉及類型為“靜態(tài)清單文件”的文件并且包括指向包含對于CDN A中的被配置成分發(fā)數(shù)據(jù)庫條目中所標識的清單文件的分發(fā)節(jié)點的URL的記錄的位置指針M0Vie-4_L0Cati0n。靜態(tài)清單文件類型指代沒有基于用戶請求而動態(tài)自適應而是以與存儲在CDN節(jié)點上的形式相同的形式分發(fā)給客戶端的清單文件。靜態(tài)清單文件標識許多分段,其中這些分段被存儲在與清單文件本身相同的位置處。
[0058]與名稱Movie-5相關聯(lián)的另一數(shù)據(jù)庫條目218被標識為所謂的“清單文件模板”并且包括指向包含用于定位CDN A中的被配置成分發(fā)這樣的清單文件模板的分發(fā)節(jié)點的高速緩沖存儲器的URL的記錄的位置指針Movie-5_Location。
[0059]清單文件模板類型指代標識許多分段名稱(例如Movie-5_l)的清單文件。與普通(靜態(tài))清單文件相比,清單文件模板不包括對于被配置成分發(fā)特定分段的內容分發(fā)節(jié)點的URL。而是,每一個分段名稱或者分段名稱的至少一部分可以與指向內容位置數(shù)據(jù)庫中的數(shù)據(jù)庫條目的指針相關聯(lián),例如cdncf.cdn_A.com/res/Movie-5_l.seg。指針可以被用來找到關于分段的(一個或多個)位置的信息。
[0060]如下文中將更詳細描述的那樣,CDN可以使用清單文件模板來生成所謂的動態(tài)清單文件(DMF)。應該注意,清單文件模板決不會被分發(fā)給最終用戶,而是僅作為構建動態(tài)清單文件的基礎。
[0061]動態(tài)清單文件是靜態(tài)清單文件的替換并且用于定位分段內容,其中該分段可以被分配在位于一個或多個CDN域中的多個分發(fā)節(jié)點上。這樣的分段分配允許存儲更多分發(fā)節(jié)點上的更頻繁請求(即受歡迎)的分段而不是較不頻繁請求的分段,以便確保這種分段的高效分發(fā)和存儲。
[0062]可以基于與用戶請求相關聯(lián)的信息來生成動態(tài)清單文件。例如,可以基于請求分段內容的用戶的位置來生成動態(tài)清單文件。使用用戶的位置信息(例如IP地址),⑶NCF可以確定哪些分發(fā)節(jié)點最適合于向用戶分發(fā)分段。
[0063]關聯(lián)分段類型的兩個文件名稱Movie_5_l和Movie_5_2的另外的數(shù)據(jù)庫條目220和222包括指向包含用于定位被配置用來分發(fā)數(shù)據(jù)庫條目中所標識的分段的分發(fā)節(jié)點的URL的記錄的位置指針。而且,如與位置指針Movie-5_l位置相關聯(lián)的記錄中所指示的,位置還可以被限定為對另一⑶N域(⑶N B)的⑶NCF功能的參考。在這種情況下,這樣的位置參考還將包含唯一標識另一域中的特定分段的內容標識符(在該示例中“Movie-5.1.seg”)。如下面將更詳細描述的,這樣的參考允許檢索其他⑶N域中的分段的機制。應該注意,一個CDN域中的CDNCF將不具有對另一 CDN域的內容位置數(shù)據(jù)庫的直接訪問。為了獲得另一 CDN域中的特定分段的位置,請求將通常將經歷其他域的CDNCF功能,其中內容標識符被用于標識所請求的分段。
[0064]圖3描繪根據(jù)本發(fā)明的一個實施例的清單文件(MF)或清單文件模板的通用數(shù)據(jù)結構。MF可以包括頭部分304和分段部分306。頭部分可以包括關于分段部分中限定的分段的全局分段信息。全局信息可以包括文件的名稱、分段的類型和格式、分段的類型以及各分段之間的關系(例如各分段之間的時間或空間關系)。分段部分可以包括承載一片內容的各個分段上的局部分段信息308。局部分段信息可以包括分段的名稱和大小、播放持續(xù)時間、分段中承載的內容的分辨率、分段的位置(例如時間或空間方面)以及用于在CDN域中定位分發(fā)節(jié)點的定位符。如已經參考圖2所描述的,定位符可以具有指向(如例如在MF模板中使用的)內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的(如例如在靜態(tài)MF中使用的)URL或指針的形式。
[0065]圖4和圖5分別描繪根據(jù)本發(fā)明的一個實施例與獲取分段(優(yōu)選地空間分段)的內容的過程相關聯(lián)的流程圖和序列圖。
[0066]圖4中的過程可以以CDNCF接收到請求源自該源(例如內容提供者、CDN或另一內容處理實體)的內容獲取開始(步驟402)。該請求可以包括位置信息(例如URL)和內容標識符。響應于此,CDNCF可以接收文件(步驟404),該文件可以與清單文件MF或常見內容文件有關。
[0067]如果⑶NCF檢測到MF (步驟406、408),則它可以解析所接收的MF (步驟410)以便檢索與該MF中列出的分段相關聯(lián)的位置信息(例如URL)。CDNCF然后可以命令獲取節(jié)點基于所接收的MF來執(zhí)行分段的獲取(步驟412)??蛇x地,獲取節(jié)點可以對所接收的分段執(zhí)行額外處理,諸如代碼轉換。
[0068]基于與⑶N中的分發(fā)節(jié)點相關聯(lián)的處理載荷、數(shù)據(jù)業(yè)務和/或地理鄰近信息(⑶N度量),CDNCF然后可以將分段分配給與一個或多個分配節(jié)點相關聯(lián)的高速緩沖存儲器(步驟414)。此后,CDNCF可以通過添加與分段被分配到的分發(fā)節(jié)點的位置相關聯(lián)的位置信息來更新MF (步驟416)。應該注意,由⑶NCF插入到經更新的MF中的URL可以是絕對URL(包含全部URL路徑)或者相對URL (僅包含相對于MF本身的位置的路徑)。⑶NCF可以存儲采用分發(fā)節(jié)點所更新的(修改的)MF (步驟418)并且在與CDNCF相關聯(lián)的內容位置數(shù)據(jù)庫中生成新條目(步驟420)。然后,⑶NCF可以向MF指定“靜態(tài)清單”類型(步驟422),創(chuàng)建新記錄以便存儲可以被檢索到經更新的MF的位置以供將來使用(步驟424)并且生成指向可通過⑶NCF訪問的內容位置數(shù)據(jù)庫中的新條目的URL (步驟426)。然后可以將該URL發(fā)送到源(步驟436)。
[0069]如果該源的源獲取請求與常見內容相關聯(lián),則可以將內容分配給一個或多個所選分發(fā)節(jié)點的高速緩沖存儲器(步驟428)??梢栽趦热菸恢脭?shù)據(jù)庫中為該文件創(chuàng)建新數(shù)據(jù)庫條目(步驟430),包括用于存儲與所存儲的文件相關聯(lián)的URL的記錄(步驟432)以及指向數(shù)據(jù)庫中的新條目的URL (步驟434)。然后可以將該URL發(fā)送到源(步驟436)。
[0070]圖5的序列圖更詳細地描繪用于獲取分段的過程。在該示例中,⑶NCF和該源可以使用基于HTTP的協(xié)議來控制內容獲取。該過程可以以該源向⑶NCF發(fā)送內容獲取請求來開始,其中該請求包括指向命名為Movie-4, smf的MF的URL (步驟502)。⑶NCF可以檢索MF (步驟504和506)并且解析該MF (步驟508)以便檢索空間分段文件位置(例如以一個或多個URL的形式)。
[0071]使用URL,⑶NCF可以指導⑶N獲取節(jié)點取得MF中所標識的分段(步驟510)。在已經接收到分段之后(步驟512-518),獲取節(jié)點可以向⑶NCF通知已經成功地檢索到內容并且將其分配到CDN中的分發(fā)節(jié)點的高速緩沖存儲器。
[0072]然后⑶NCF可以通過將分發(fā)節(jié)點的位置從可以被檢索到的分段插入到MF來更新MF (步驟520)。經更新的MF可以存儲有所選分發(fā)節(jié)點的高速緩沖存儲器中的分段(步驟522 )。MF的位置可以被存儲在與⑶NCF相關聯(lián)的內容位置數(shù)據(jù)庫中(步驟524)。此外,⑶NCF可以將響應發(fā)送回到該源,其中該響應可以包括指向可通過CDN的CDNCF訪問的內容位置數(shù)據(jù)庫中的條目的URL (步驟526)。
[0073]圖6描繪在如參考圖4和圖5描述的分段的獲取之前和之后的MF的一部分的示例。從該源接收到的靜態(tài)MF 602可以具有如參考圖3所述的數(shù)據(jù)結構。MF可以包括文件名、關于分段的信息,例如分段的類型(在這種情況下是空間分段)、分段的數(shù)目和各分段之間的(空間)關系。MF還可以指示四個單獨的分段(Movie-4-1, seg、Movie-4-2, seg、Movie-4-3, seg 和 Movie-4-4.seg)被存儲在源域中的某一位置(cache, source, com/res/)處。
[0074]在獲取分段之后,⑶NCF可以生成經更新的靜態(tài)MF 604,其包括采用指向第一分發(fā)節(jié)點的URL的形式的更新的分段位置(cache_l.cdn_A.com/res/),包括(空間)分段Movie-4-1.seg、Movie-4_2.seg、Movie-4_3.seg 和 Movie-4-4.seg。應該注意,在這種情況下,在多個分發(fā)節(jié)點上托管靜態(tài)清單文件以及其相關聯(lián)的分段并且使用絕對URL,MF將具有每一個分發(fā)節(jié)點上的不同分段URL。在使用相對URL的情況下,不同分發(fā)節(jié)點上的清單文件將是相同的。
[0075]因此,從上面得出的結論是MF允許⑶N內分段的受控獲取。在獲取之后,MF標識⑶N中存儲分段的位置。
[0076]如之前所指示的,靜態(tài)MF涉及標識預定數(shù)目的分段的位置的MF。在某種意義上,MF是靜態(tài)的指的是MF不是與用戶有關的而是預定的。靜態(tài)MF將總是指向作為MF自身存儲在相同分發(fā)節(jié)點上的分段位置,盡管這不是嚴格要求的。
[0077]然而,靜態(tài)MF中的分段可能涉及頻繁或較不頻繁請求的分段。
[0078]因此,基于分段度量(例如一般的受歡迎度、或來自特定位置或區(qū)域請求的數(shù)目),可以在CDN以及可選其他CDN中的多個分配節(jié)點上重新分配分段。然后,當用戶向分段內容的MF請求分發(fā)時,可以基于與該用戶請求相關聯(lián)的信息來生成所謂的動態(tài)MF。例如,可以生成包括內容分段在分發(fā)節(jié)點中的位置的動態(tài)MF,一些分發(fā)節(jié)點靠近用戶的位置以便實現(xiàn)所請求的分段的高效局部分發(fā),而其他分發(fā)節(jié)點可能因為較不經常請求內容分段而更遠尚用戶。
[0079]基于所謂的MF模板來生成動態(tài)MF。圖7A和7B描繪根據(jù)本發(fā)明的一個實施例將靜態(tài)MF更新到MF模板中的流程圖和序列圖。
[0080]圖7A中的過程可以以收集靜態(tài)MF中限定的分段的分段度量來開始。分段度量可以涉及分段被請求和觀看的頻率、從其請求分段的用戶位置(例如IP地址)、以及確定靜態(tài)MF中各分段之間的差異的任何其他度量(步驟702)。如果存在明顯的差異,則可以觸發(fā)創(chuàng)建MF模板的過程(步驟704)。該過程可以包括以下步驟:檢索靜態(tài)MF (步驟708)、從靜態(tài)MF檢索分段位置(步驟710)以及在內容位置數(shù)據(jù)庫中為分段位置創(chuàng)建條目(步驟712)。因此,基于分段度量,CDNCF可以決定將一個或多個分段(特別地頻繁請求的分段)的拷貝分配給CDN中的多于一個分配節(jié)點。因此,數(shù)據(jù)庫條目可以包括用于定位被配置成分發(fā)特定分段的不同分配節(jié)點的兩個或更多URL (類似于圖2中的數(shù)據(jù)庫條目“M0Vie-5_l”具有指向特別包含被配置成分發(fā)預定分段MoVie_-5-l.seg的兩個分發(fā)節(jié)點的URL的記錄的位置指針)。[0081]此后,通過用指向內容位置數(shù)據(jù)庫的指針替代靜態(tài)MF中的位置來將靜態(tài)MF重新寫入到MF模板中(步驟714和716)??梢酝ㄟ^將MF的“類型”改變成“清單文件模板”來完成MF模板創(chuàng)建過程(步驟718)。
[0082]圖7B更詳細地描繪MF模板的生成。該過程可以由⑶NCF檢測到靜態(tài)MF的分段度量中的明顯差異而開始(步驟720)。⑶NCF然后可以從存儲MF的一個或多個分發(fā)節(jié)點的高速緩沖存儲器檢索靜態(tài)MF Movie-4, mf (步驟722和724)。然后,⑶NCF可以執(zhí)行將分段位置輸入到數(shù)據(jù)庫中的過程并且將靜態(tài)MF重寫入到包括指向CDN的內容位置數(shù)據(jù)庫的指針的MF模板(步驟726和728)。此后,將(新)MF模板發(fā)送回到一個或多個分發(fā)節(jié)點的高速緩沖存儲器,在那里其替代(舊、靜態(tài))MF (步驟730-736 )。
[0083]圖8描繪根據(jù)本發(fā)明的一個實施例的MF模板的形成。在參考圖7描述的更新過程期間,舊的靜態(tài)MF 802被更新到MF模板804,在那里用指向⑶N A的內容位置數(shù)據(jù)庫中的可通過⑶NCF訪問的條目的指針來替代分段位置URL。
[0084]在基于分段度量重新分配分段在⑶N (⑶N A)內的存儲的過程之后,⑶NCF還可以發(fā)起將某些分段移動到另一⑶N (⑶N B)的過程。在圖9中描繪該過程。在第一步驟902中,基于觀看頻率、請求分段的用戶的位置(IP地址)以及其他相關度量來收集分段度量。
[0085]根據(jù)這些分段度量,變得例如顯而易見的是位于遠離⑶N A的地理位置的地理位置中的一大群用戶請求某些分段。在這種情況下,CDNCF可以決定將這些分段推入到靠近那些用戶的地理位置的⑶N B (步驟904)。
[0086]因此,⑶NCF可以準備并且臨時存儲包括⑶N A中的分發(fā)節(jié)點的分段位置的所謂的部分清單文件(部分MF)(步驟906和908)。在某種意義上,部分MF是“部分的”指的是MF模板中的數(shù)據(jù)庫條目的子集被URL代替而其他數(shù)據(jù)庫條目被移除。特別地,用定位CDNA中被配置成分發(fā)需要被CDN B獲取的分段的分發(fā)節(jié)點的URL來替代與那些分段相關聯(lián)的MF模板中的數(shù)據(jù)庫條目。指向不該被CDN B獲取的分段的數(shù)據(jù)庫條目的指針被移除并且被標記為“空”。
[0087]隨后將部分MF發(fā)送到⑶N B的⑶NCF,其可以使用部分MF中的非空分段URL來將那些分段獲取到其自己的⑶N中(步驟910)。在⑶N B中獲取到分段之后,⑶N A的⑶NCF從⑶N B接收到指向⑶N B的⑶NCF的URL,包括唯一標識⑶N B中獲取的分段的內容標識符列表(步驟912)。⑶N A的⑶NCF利用接收到的URL更新其內容位置數(shù)據(jù)庫。
[0088]可替換地,在⑶N B已經獲取列在部分MF中的分段之后,⑶N B的⑶NCF不會將URL和指示所獲取的分段的位置的標識符列表發(fā)送給其⑶NCF,而是URL指向由⑶N B更新的經更新的部分MF,其現(xiàn)在包括所獲取的分段在⑶N B內的相對位置。⑶N A的⑶NCF然后可以從⑶N B檢索部分MF,解析它并且利用所分配的分段的URL來填充⑶N A內容位置數(shù)據(jù)庫??商鎿Q地,⑶N A可以利用基于從⑶N B接收到的URL和分段標識符而生成為查詢字符串的URL來填充其內容位置數(shù)據(jù)庫。
[0089]以這種方式,⑶N A的內容位置數(shù)據(jù)庫中的某些條目可以包括對于另一⑶N的URL(類似于圖2中的數(shù)據(jù)庫條目“Movie-5_l”具有指向⑶N B的⑶NCF的位置指針和唯一標識⑶N B中的特定分段以便在⑶N B中檢索分段Movie_5-l.seg的標識符)。
[0090]圖10更詳細地描繪圖示使用部分MF來獲取從第一⑶N到第二⑶N的分段的序列圖。該過程可以由⑶NCF確定應該將某些分段移動到⑶N B觸發(fā)(步驟1002)。在這種情況下,⑶N A的⑶NCF可以準備部分MF cdn_B-Movie-4.mf并且將其存儲在高速緩沖存儲器中(步驟1004)。此后,⑶N A的⑶NCF可以將獲取請求發(fā)送給⑶N B的⑶NCF (步驟1006),從而指示⑶N B的⑶NCF獲取在部分MF中限定的可以由⑶N B的⑶NCF基于獲取請求中的URL而定位的分段(步驟1008-1010)。可替換地,⑶N A可以包括要被發(fā)送到⑶NB的⑶NCF的獲取請求主體中的部分MF?;诓糠諱F,⑶N B隨后獲取該部分MF中限定的分段。獲取過程類似于參考圖5所述的過程(步驟1012)。在該過程期間,CDN B可以自發(fā)地確定將哪些分發(fā)節(jié)點可以配置用于分發(fā)分段。在獲取過程完成之后CDN A接收到的唯一信息是指向CDN B的CDNCF的URL和唯一標識CDN B中的分段的標識符列表,或者是指向⑶N B中被用于將來檢索清單文件和分段位置的經更新的部分MF的URL (步驟1014)。
[0091]作為對CDN B實際獲取到在它從CDN A接收到的部分清單文件中指示的分段的替換,⑶N B (優(yōu)選地⑶N B的⑶NCF)可以向這些所標識的分段預先指定在⑶N B中的位置(高速緩沖存儲器/節(jié)點),并且相應地利用這些位置來更新部分清單。然后在稍后的時刻可以由⑶N B來獲取實際分段。例如當客戶端基于清單文件請求這些分段時。這樣的機制還被稱為“拉出”模型。
[0092]圖11描繪在參考圖10所述的過程中用于內容獲取的部分MF的形成。可以基于參考圖7更詳細描述的MF模板1102來構造部分MF。在這里,用對被配置用于分發(fā)分段Movie-4-1, seg和Movie_4_2.seg的分發(fā)節(jié)點進行定位的URL來替代與這些分段相關聯(lián)的MF模板中的頭兩個數(shù)據(jù)條目。其他兩個數(shù)據(jù)庫條目為空以使得這些分段不會被CDN B獲取。
[0093]因此,基于參考圖3-10所述的過程,⑶N可以構建包括對于MF模板的條目和與存儲在各種分發(fā)節(jié)點處的分段相關聯(lián)的條目的內容位置數(shù)據(jù)庫,所述各種分發(fā)節(jié)點可以位于CDN域和/或其他CDN的CDN域內。MF模板可以被用來響應于用戶請求而創(chuàng)建動態(tài)MF(DMF),其中動態(tài)MF包括用于檢索基于分段度量優(yōu)化后的所請求的分段的位置,所述分段度量例如與請求的地理位置和頻率相關聯(lián)的度量。動態(tài)MF中的位置可能涉及不同CDN域中的分發(fā)節(jié)點的位置。以這種方式,動態(tài)MF允許用戶高效且直接地從動態(tài)FM中指定的各種分發(fā)節(jié)點檢索到分段,而不必忍耐對于存儲在另一 CDN域內的每個分段的重定向延遲。在下文中參考圖12-18更詳細地描述該過程。
[0094]圖12描繪根據(jù)本發(fā)明的一個實施例服務于用戶請求的過程的流程圖。該過程可以以CDNCF接收到包括內容名稱或標識符的用戶請求來開始(步驟1202)。該名稱可以被分解成文件類型和位置。此外,可以基于IP地址來確定與用戶請求相關聯(lián)的用戶位置。
[0095]然后CDNCF可以使用內容位置數(shù)據(jù)庫來確定所分解的文件類型是否涉及MF模板(步驟1204)。如果不是這種情況,則⑶NCF可以使用各種度量(諸如用戶位置和當前⑶N載荷)來確定最適合于分發(fā)所請求的內容的單個分發(fā)節(jié)點或CDN域(步驟1206)。如果分解的文件類型涉及MF模板,則⑶NCF可以使用內容位置數(shù)據(jù)庫來生成包括一個或多個分發(fā)節(jié)點的URL的動態(tài)MF,它們一起都最適合于分發(fā)所請求的分段(步驟1208)。所生成的動態(tài)MF可以臨時地存儲有響應于用戶而發(fā)送的定位DMF的URL和⑶NCF。
[0096]圖13描繪根據(jù)本發(fā)明的一個實施例用于生成DMF的過程的序列圖。該過程可以以從網絡中的內容控制功能(例如IPTV控制功能)發(fā)送用戶請求或請求開始,該用戶請求或請求包括指向⑶N的內容位置數(shù)據(jù)庫中的條目Moive-4.mf的URL以及采用對于⑶N A的⑶NCF的IP地址形式的用戶位置(步驟1302和1304)。⑶NCF將執(zhí)行數(shù)據(jù)庫查找,從而確定該請求中的數(shù)據(jù)庫條目與MF模板的類型有關,其中MF模板Moive-4.mf位于CDN A的特定分發(fā)節(jié)點的高速緩沖存儲器處(步驟1306)。隨后將檢索MF模板(步驟1308和1310),并且基于MF模板,通過將數(shù)據(jù)庫條目重寫入到MF模板中來生成DMF (步驟1312)。隨后將DMF發(fā)送給用戶或內容控制功能(步驟1314)。
[0097]圖14描繪根據(jù)本發(fā)明的一個實施例與用戶請求相關聯(lián)的DMF的形成。MF模板1402可以被用作生成與特定用戶1404相關聯(lián)的DMF的基礎。生成DMF的過程可以確定用于將DMF中的分段分發(fā)給位于兩個CDN域(即CDN A和CDN B)的用戶的最適合分發(fā)節(jié)點。
[0098]圖15更詳細地描繪生成與如圖13所述的內容控制功能或用戶請求相關聯(lián)的DMF的過程的流程圖。該過程可以以CDNCF檢索與由用戶或內容控制功能所指示的內容請求相關聯(lián)的MF模板來開始(步驟1502)。
[0099]此后,循環(huán)開始,其中作為對于內容位置數(shù)據(jù)庫中的條目的指針的MF模板中的分段名稱被分解成位置(URL)?;谟脩艋騼热菘刂乒δ苄畔?例如IP地址)來確定最適合于分發(fā)分段(例如最靠近或最佳可用)的域(步驟1504)。如果該域是與用戶請求或內容控制功能請求相關聯(lián)的域(即⑶N A)(步驟1506),則可以選擇最適合于分發(fā)分段的⑶N A中的分發(fā)節(jié)點的位置(URL)(步驟1508)。隨后將該URL作為分段名稱插入到MF模板中(步驟1514)。
[0100]如果確定另一域更適合于分發(fā)分段,則可以將可選地包括用戶位置(例如IP地址)的請求發(fā)送給該⑶N的⑶NCF (步驟1510)。響應于該請求,可以從⑶N接收URL (步驟1512)。隨后可以將該URL添加到MF模板中的分段名稱(步驟1514)。
[0101]對于MF模板中的所有分段來重復該過程,由此形成臨時存儲在與⑶NCF相關聯(lián)的高速緩沖存儲器上的DMF??梢陨蒛RL以便定位由此生成的DMF (步驟1518)。
[0102]在本發(fā)明的一個實施例中,生成DMF的⑶NCF將針對另一⑶N中的特定⑶NCF的所有位置請求捆綁成單個請求。這考慮到不同CDNS的CDNCF之間更高效的通信并且降低其他⑶N域中的⑶NCF中的載荷。這樣做,⑶N A中的⑶NCF可能創(chuàng)建新部分MF,該新部分MF不被CDN B的CDNCF用來獲取相關分段,而是告訴CDN A對特定用戶來說分段的最適合位置。
[0103]圖16更詳細地描繪圖示生成與如圖13所述的內容控制功能或用戶請求相關聯(lián)的DMF的過程的序列圖。該過程可以以觸發(fā)器基于MF模板Moive-4.mf生成DMF來開始(步驟1602)。此后,可以使用參考圖15所述的過程來確定MF模板中的每分段、將分段分發(fā)給內容控制功能或用戶的給定位置的最佳分發(fā)節(jié)點。對于兩個分段(MoVie_4-l.seg和Movie_4-2.seg),確定最佳分發(fā)節(jié)點位于⑶N B的域中(步驟1606)。對于這兩個分段,⑶NCF轉發(fā)包括⑶N B的⑶NCF的URL、在⑶N B中唯一標識分段的兩個標識符以及用戶位置的分段位置請求(步驟1608)??商鎿Q地,如之前所述,該請求可以包括包含分段標識符的部分MF。CDN B的CDNCF可以通過檢查數(shù)據(jù)庫條目以及基于用戶位置確定最佳服務分發(fā)節(jié)點在⑶N B中的位置(URLS)來處理位置請求(步驟1610)。由此確定的位置被返回給⑶NA的⑶NCF (步驟1612)并且被插入到MF模板中(步驟1614),如此完成動態(tài)MF。
[0104]因此,參考圖16描述的過程提供允許一個⑶N從另一⑶N請求一個或多個分段的位置的CDN互連方案,其中所返回的位置可能涉及最適合于向用戶或網絡中的內容控制功能(諸如IPTV控制功能)分發(fā)分段的分發(fā)節(jié)點。
[0105]圖17描繪根據(jù)本發(fā)明的一個實施例處理從⑶N A到⑶N B的分段位置請求的流程圖。在第一步驟1702中,接收域⑶N B從原始域⑶N A接收用于定位一個或多個分段的請求。響應于該請求,⑶N B (特別地⑶N B的⑶NCF)可以將一個或多個分段標識符分解成類型和位置(例如(一個或多個)URL (集合)),其中響應于⑶N A選擇并返回最適合的分發(fā)節(jié)點的位置(步驟1704)。在一個實施例中,該過程是循環(huán)的,其中⑶N B具有委托給⑶NC的一些分段,并且⑶N B執(zhí)行與圖15和16中所述的過程類似的過程。
[0106]圖18描繪根據(jù)本發(fā)明的一個實施例基于DMF從第一和第二 CDN檢索分段內容的過程的序列圖。在這種情況下,用戶(客戶端)或內容控制功能已經從⑶N A或⑶N B接收到DMF并且確定該DMF中限定的分段的位置。例如,在圖18的示例中,基于DMF中的位置,客戶端可以從⑶N B中的第一和第二分發(fā)節(jié)點直接請求和接收第一和第二分段(步驟1804、1806和步驟1810、1812)并且從⑶N A的分發(fā)節(jié)點直接請求和接收第三分段(步驟1816)。
[0107]參考在與圖10相關聯(lián)的最后段落中描述的替換方案,在CDN-node B沒有預先獲取步驟1804中所請求的分段(并且該分段也沒有存在于cache_5處)的情況下,步驟1804之后可以是根據(jù)步驟1806的以下步驟:cache_5從⑶N A請求“丟失的”分段并且隨后在該分段被分發(fā)給客戶端之前cache_5接收到該分段。這樣的模型也被稱為“拉出”模型。
[0108]因此,動態(tài)生成的DMF允許從不同⑶N域直接檢索內容。DMF允許在DMF中限定的不同分段之間的快速切換。分段檢索不需要重定向機制的類型以便在不同CDN域中定位分段,因此為分段內容提供了迅速且高效的檢索機制。這樣的內容檢索機制可以被用在允許與內容的用戶交互(例如平移、縮放、傾斜、各種流版本之間的無縫切換)的內容服務中。
[0109]要理解,關于任何一個實施例所述的任何特征可以被單獨地、或者結合所述的其他特征來使用,并且還可以結合任一些其他實施例的一個或多個特征或者任一些其他實施例的任何組合來使用。
[0110]本發(fā)明的一個實施例可以被實施為與計算機系統(tǒng)一起使用的程序產品。程序產品的(一個或多個)程序限定實施例(包括這里所述的方法)的功能,并且可以被包含在各種各樣的計算機可讀存儲介質上。說明性計算機可讀存儲介質包括但不限于:(i)信息被永久地存儲在其上的非可寫入存儲介質(例如計算機內的只讀存儲器設備,諸如CD-ROM驅動器可讀的CD-ROM盤、閃存存儲 器、ROM芯片或任何類型的固態(tài)非易失性半導體存儲器);以及(?)其上存儲有可變信息的可寫入存儲介質(例如磁盤驅動器或硬盤驅動器內的軟盤或任何類型的固態(tài)隨機存取半導體存儲器)。本發(fā)明不限于上述實施例,可以在所附權利要求的范圍內改變本發(fā)明。
【權利要求】
1.用于定位分段內容的方法,所述分段內容被分配在至少與第一內容位置數(shù)據(jù)庫相關聯(lián)的第一內容分發(fā)網絡和與第二內容位置數(shù)據(jù)庫相關聯(lián)的第二內容分發(fā)網絡上,包括: 檢索與所述分段內容相關聯(lián)的清單文件模板,該清單文件模板包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針; 使用所述一個或多個數(shù)據(jù)庫條目來確定所述第一或第二內容分發(fā)網絡中的分發(fā)節(jié)點的位置,所述分發(fā)節(jié)點被配置成分發(fā)與所述數(shù)據(jù)庫條目相關聯(lián)的分段;以及 通過用所述確定的位置替代所述清單文件模板中的指針來生成用于定位所述分段內容的清單文件。
2.根據(jù)權利要求1的方法,其中響應于接收到用于定位所述分段內容的至少一部分的位置請求來檢索所述清單文件模板。
3.根據(jù)權利要求1或2的方法,包括: 針對所述數(shù)據(jù)庫條目中的至少一個來確定是所述第一內容分發(fā)網絡還是所述第二內容分發(fā)網絡最適合于分發(fā)與所述數(shù)據(jù)庫條目中的至少一個相關聯(lián)的分段。
4.根據(jù)權利要求1-3中的任一項的方法,包括: 向所述第二內容位置數(shù)據(jù)庫發(fā)送確定分發(fā)節(jié)點在所述第二內容分發(fā)網絡中的位置的請求,所述分發(fā)節(jié)點適合于分發(fā)與所述數(shù)據(jù)庫條目中的至少一個相關聯(lián)的分段。
5.根據(jù)權利要求3或4的方法,其中基于所述位置請求、優(yōu)選地基于與所述請求相關聯(lián)的位置信息來確定所述最適合的內容分發(fā)網絡。
6.根據(jù)權利要求1-5中的任一項的方法,其中所述第一內容位置數(shù)據(jù)庫中的包括用于定位被配置成分發(fā)分段的分發(fā)節(jié)`點的一個或多個定位符的所述數(shù)據(jù)庫條目包括指向數(shù)據(jù)庫位置的指針。
7.根據(jù)權利要求1-6中的任一項的方法,其中所述第一內容位置數(shù)據(jù)庫中的包括指向所述第二內容分發(fā)節(jié)點的內容位置數(shù)據(jù)庫的一個或多個指針的所述數(shù)據(jù)庫條目包括指向數(shù)據(jù)庫位置的指針。
8.用于從包括第一內容位置數(shù)據(jù)庫的第一內容分發(fā)網絡向包括第二內容位置數(shù)據(jù)庫的第二內容分發(fā)網絡移動分段內容的至少一部分的方法,該方法包括: 檢索與所述分段內容相關聯(lián)的清單文件模板,該清單文件模板包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針; 確定在所述清單文件模板中標識的分段的至少一部分的分段度量; 基于所述分段度量來選擇移動到所述第二內容分發(fā)網絡的一個或多個分段; 通過用被配置成分發(fā)所述所選分段的所述第一內容分發(fā)網絡中的分發(fā)節(jié)點的一個或多個位置替代與所述所選一個或多個分段相關聯(lián)的所述清單文件模板中的指針來生成部分清單文件; 將所述部分清單文件發(fā)送到所述第二內容分發(fā)網絡。
9.根據(jù)權利要求8的方法,還包括: 請求所述第二內容分發(fā)網絡獲取在所述部分清單文件中標識的分段的至少一部分。
10.用于定位分段內容的控制功能模塊,所述內容被分配在至少與第一內容位置數(shù)據(jù)庫相關聯(lián)的第一內容分發(fā)網絡和與第二內容位置數(shù)據(jù)庫相關聯(lián)的第二內容分發(fā)網絡上,所述控制功能模塊被配置成:檢索包括指向所述第一內容位置數(shù)據(jù)庫的數(shù)據(jù)庫條目的一個或多個指針的清單文件模板; 使用所述一個或多個數(shù)據(jù)庫條目來確定所述第一或第二內容分發(fā)網絡中的分發(fā)節(jié)點的位置,所述分發(fā)節(jié)點被配置成分發(fā)與所述數(shù)據(jù)庫條目相關聯(lián)的分段;以及通過用所述確定的位置替代指針來生成用于定位所述分段內容的清單文件。
11.一種被配置成與根據(jù)權利要求8的控制功能模塊進行通信的客戶端,所述客戶端被配置成: 向所述控制功能模塊發(fā)送用于定位所述分段內容的至少一部分的位置請求; 接收包括與所述第一和第二分發(fā)網絡中的分發(fā)節(jié)點相關聯(lián)的位置信息的清單文件;以及 基于所述位置信息向所述分發(fā)節(jié)點中的至少一個發(fā)送對分段的請求。
12.一種包括軟件代碼部分的計算機程序產品,所述軟件代碼部分被配置成當在計算機的存儲器中運行時執(zhí)行根據(jù)權 利要求1-11中的任一項的方法步驟。
【文檔編號】H04L29/06GK103563327SQ201280027641
【公開日】2014年2月5日 申請日期:2012年6月7日 優(yōu)先權日:2011年6月8日
【發(fā)明者】R.布蘭登伯格范, V.M.O.德文特, O.A.尼亞穆特 申請人:皇家Kpn公司, 荷蘭應用自然科學研究組織