分塊內(nèi)容的受控流送的制作方法
【專利摘要】描述用于使能分塊內(nèi)容的客戶機控制的流送的方法及系統(tǒng),其中所述客戶機控制的流送以清單文件為基礎(chǔ),所述清單文件包括一個或多個分塊標(biāo)識符以及一個或多個關(guān)聯(lián)的分塊定位符,所述分塊定位符優(yōu)選為一個或多個URL,用于定位配置成向所述客戶機傳遞一個或多個分塊的一個或多個傳遞節(jié)點,所述分塊由所述分塊標(biāo)識符識別,并且其中所述方法包括:以從所述清單文件中選出的至少一個分塊標(biāo)識符為基礎(chǔ)請求至少一個分塊的傳遞;以所述所請求的分塊為基礎(chǔ),從所述清單文件中選擇至少一個另外的分塊標(biāo)識符,所述另外的分塊標(biāo)識符與期望的未來分塊請求關(guān)聯(lián);以及,預(yù)解析與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第一分塊定位符以獲得與所述第一分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息。
【專利說明】分塊內(nèi)容的受控流送
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及分塊內(nèi)容的受控流送以及,更具體地,但不排他地,涉及一種用于使能分塊內(nèi)容的受控流送的方法,一種用于控制分塊內(nèi)容的流送的客戶機,用于與客戶機一起使用的網(wǎng)絡(luò)節(jié)點和數(shù)據(jù)結(jié)構(gòu)以及使用此種方法的計算機程序產(chǎn)品。
【背景技術(shù)】
[0002]當(dāng)前越來越多的視頻流技術(shù)使用所謂的分塊。例如,HTTP自適應(yīng)流送(HAS)、可伸縮視頻編碼(SVC)和空間分塊的視頻(例如平鋪(tiled)視頻)分別使用以時間、品質(zhì)和空間為基礎(chǔ)的分塊。在分塊過程期間,將會產(chǎn)生所謂的清單文件,其描述不同分塊文件和/或流與分塊可被檢索到的位置之間的關(guān)系。分塊文件可涉及包括分塊數(shù)據(jù)的文件,分塊數(shù)據(jù)可通過文件檢索協(xié)議(例如HTTP或FTP)檢索到。類似地,分塊流可涉及包括可由流送協(xié)議(例如RTSP/RTP或HAS)檢索到的分塊數(shù)據(jù)的流。分塊文件或流此后將被稱為分塊。此外,視頻,或更一般地,由分塊方案所表現(xiàn)的內(nèi)容可被稱為分塊內(nèi)容。
[0003]分塊內(nèi)容可用于動態(tài)地適應(yīng)變化的帶寬要求,例如通過從高品質(zhì)向低品質(zhì)視頻流切換。而且,分塊內(nèi)容也為在受歡迎與較不受歡迎視頻分塊之間的辨別留出空間。例如,典型地與視頻的開頭關(guān)聯(lián)的內(nèi)容與末尾處的內(nèi)容相比將更經(jīng)常地(更受歡迎)被觀看(下載/訪問/檢索)。類似地,低比特率的較低品質(zhì)視頻內(nèi)容(例如最低分辨率HAS分塊或SVC基層)與高品質(zhì)內(nèi)容(例如較高分辨率HAS分塊或SVC增強層)相比會更頻繁地被觀看(下載/訪問/檢索)。
[0004]因此,在對內(nèi)容進行分塊時,某些分塊相比于其他分塊會更經(jīng)常地(經(jīng)常得多地)被消費者所請求。這一屬性可有利地被內(nèi)容傳遞網(wǎng)絡(luò)(CDN)所利用,內(nèi)容傳遞網(wǎng)絡(luò)配置為向消費者傳遞內(nèi)容。其可例如將與更受歡迎的內(nèi)容關(guān)聯(lián)的分塊存儲在CDN中的多個節(jié)點以使得可減少帶寬問題(因為從太遠(yuǎn)的遠(yuǎn)程服務(wù)器獲取許多受歡迎分塊可阻礙網(wǎng)絡(luò)帶寬)以及保證有效的傳遞。CDN內(nèi)容位置管理員可在中心管理在其中CDN內(nèi)分塊可被檢索到的位置。
[0005]為了使客戶機能夠訪問存儲在CDN中的分塊,客戶機被提供有所謂的清單文件,該清單文件識別指向在網(wǎng)絡(luò)中位置的分塊定位符以及分塊標(biāo)識符的列表,分塊定位符以及分塊標(biāo)識符的列表使得客戶機能夠檢索分塊。典型地,客戶機配置為檢索分塊以使得與客戶機(裝置)關(guān)聯(lián)的分塊緩沖器在播放開始前被裝載以預(yù)定量的分塊。此外,在播放期間,客戶機持續(xù)地基于清單文件檢索分塊以使得在緩沖中保持足夠的分塊。通過這種方式,與分塊檢索關(guān)聯(lián)的等待時間不會妨礙分塊的無縫播放。
[0006]然而在一些情況下,客戶機可允許用戶與內(nèi)容的播放進行交互(例如快進、平移、縮放和/或傾斜)。此外,用戶可指導(dǎo)客戶機切換到另一速率或視頻品質(zhì)。在所有以上情況中,可能要求在緩沖中不可用的分塊的播放,使得客戶機將開始匆忙地(從CDN或其他網(wǎng)絡(luò))檢索該分塊。但由于分塊需要使用解析(resolving)過程(其可能涉及DNS查表和HTTP重定向)來被定位及檢索,這一過程可能花費相當(dāng)多時間。此外,在一些情況下與內(nèi)容項(例如視頻/電影)關(guān)聯(lián)的(內(nèi)容)分塊可存儲在屬于兩個或更多不同CDN的(CDN/其他網(wǎng)絡(luò))節(jié)點。在那情況下,沒有中央位置管理員能夠定位處于不同CDN域中的分塊。所以,由于第一 CDN不知道分塊在第二 CDN中的位置,與第一 CDN關(guān)聯(lián)的清單文件可僅提及在另外的CDN中的路由功能。每次來自另一(第二)CDN的分塊被請求時,需要至該另一(第二)CDN的路由請求。另外,在另一(第二)CDN中可能生成一個或多個另外的路由請求(和響應(yīng))。這類請求可產(chǎn)生請求-路由延遲以使得客戶機花費高達(dá)數(shù)秒的較長時間來接收所請求的分塊。
[0007]因此,從以上可得出結(jié)論:在沒有任何用戶交互的情況下,由于客戶機將典型地具有一些緩沖的分塊(允許一些富余部分),與DNS請求、重定向和/或交互⑶N (⑶N-1)請求路由關(guān)聯(lián)的延遲將會對(視頻)流的品質(zhì)的用戶感知幾乎不施加影響。然而如果允許用戶與(分塊的)內(nèi)容交互,在緩沖中不可用的分塊的播放由于該分塊需要使用解析過程來被定位而會花費相當(dāng)多時間。在復(fù)雜的或互連的CDN的情況下這一過程可花費高達(dá)數(shù)秒,使得分塊(視頻)內(nèi)容的無縫播放不再可能并且用戶體驗嚴(yán)重降級。
[0008]因此,在本領(lǐng)域存在對有效流送分塊內(nèi)容至客戶機的需求。特別地,存在對即使在用戶與分塊內(nèi)容交互的情況下提供分塊內(nèi)容的無縫播放的方法及系統(tǒng)的需求。
【發(fā)明內(nèi)容】
[0009]本發(fā)明的目的在于減少或消除現(xiàn)有技術(shù)中已知缺陷的至少一個并且在本發(fā)明的第一方面提供用于以(用于定位一個或多個傳遞節(jié)點的)清單文件為基礎(chǔ)使能分塊內(nèi)容的流送(優(yōu)選為客戶機控制的流送)的方法,其中所述方法可包括下列步驟的至少一個:以所述清單文件為基礎(chǔ)請求至少一個分塊的傳遞;以與所述分塊請求關(guān)聯(lián)的分塊標(biāo)識符為基礎(chǔ),從所述清單文件選擇至少一個另外的分塊標(biāo)識符,所述另外的分塊標(biāo)識符與所期望的未來的分塊請求關(guān)聯(lián);以及,預(yù)解析與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第一分塊定位符的至少一部分以獲得與所述第一分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息。在一個實施例中,清單文件可包括一個或多個分塊標(biāo)識符和/或一個或多個關(guān)聯(lián)的分塊定位符。在另一實施例中,傳遞節(jié)點可配置成將所述分塊標(biāo)識符識別的一個或多個分塊傳遞至所述客戶機。在又一實施例中,分塊定位符可為指向網(wǎng)絡(luò)節(jié)點的URL的預(yù)定義部分。
[0010]因此,本方法允許客戶機選擇在清單文件中列出并且預(yù)期在未來會被請求的分塊,以及允許客戶機以客戶機所請求的一個或多個分塊為基礎(chǔ)至少一部分地預(yù)解析與這些所選的分塊關(guān)聯(lián)的一個或多個分塊定位符。通過這種方式,消除或至少大量減少與請求路由、DNS請求和/或重定向關(guān)聯(lián)的延遲,使得可實現(xiàn)在用戶交互期間分塊的無縫的或至少大體無縫的播放。
[0011]在一個實施例中,網(wǎng)絡(luò)信息可包括:關(guān)于網(wǎng)絡(luò)地址的至少一部分(該網(wǎng)絡(luò)地址與所述第一分塊定位符的至少一部分關(guān)聯(lián))的信息;和/或,與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第一分塊定位符是指向傳遞節(jié)點(該傳遞節(jié)點用于與所述所期望的未來分塊請求關(guān)聯(lián)的分塊的傳遞)還是指向網(wǎng)絡(luò)節(jié)點(該網(wǎng)絡(luò)節(jié)點用于所述所期望的未來分塊請求的重定向)的信息;和/或,與所述所選的另外的分塊定位符關(guān)聯(lián)的第二分塊定位符的至少一部分。在另一實施例中,所述方法可包括:如果所述第一分塊定位符指向用于重定向的網(wǎng)絡(luò)節(jié)點,將所述第一分塊定位符的至少一部分預(yù)解析為與所述所選的未來的分塊標(biāo)識符關(guān)聯(lián)的第二分塊定位符。在又一實施例中,包括:以所述網(wǎng)絡(luò)信息為基礎(chǔ)修改所述清單文件。因此,存儲在清單高速緩沖存儲器中的清單文件可以所檢索的網(wǎng)絡(luò)信息為基礎(chǔ)而被更新。通過這種方式,客戶機,特別是與客戶機關(guān)聯(lián)的預(yù)解析功能元件,可持續(xù)地和動態(tài)地以完全地和/或部分地預(yù)解析的分塊定位符來更新清單文件。
[0012]在一個實施例中,所述方法可包括:以所述第二分塊定位符的所述至少一部分為基礎(chǔ)修改所述清單文件,優(yōu)選地所述修改包括以所述第二分塊定位符的所述至少一部分來替換所述第一分塊定位符的至少一部分的步驟。預(yù)解析步驟的結(jié)果可用于將原始分塊定位符重放和/或修改為另外的部分預(yù)解析的分塊定位符以使得當(dāng)與部分預(yù)解析的分塊定位符關(guān)聯(lián)的分塊被請求時,與解析該分塊定位符關(guān)聯(lián)的延遲大量減少。
[0013]在又一實施例中,所述方法可包括:如果所述第二分塊定位符與傳遞節(jié)點(該傳遞節(jié)點用于與所述所期望的未來分塊請求關(guān)聯(lián)的分塊的傳遞)的網(wǎng)絡(luò)地址關(guān)聯(lián),以所述第二分塊定位符為基礎(chǔ)修改所述清單文件。預(yù)解析步驟的結(jié)果可用于將原始分塊定位符重放和/或修改為完全預(yù)解析的分塊定位符以使得在請求分塊時不需要分塊請求的解析。
[0014]在又一實施例中,所述方法可包括下列步驟的至少一個:發(fā)送針對網(wǎng)絡(luò)信息的請求至與所述第一分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點;接收響應(yīng)消息;以所述響應(yīng)消息為基礎(chǔ)確定與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的所述第一分塊定位符是指向傳遞節(jié)點(該傳遞節(jié)點用于與所述所期望的未來分塊請求關(guān)聯(lián)的分塊的傳遞)還是指向網(wǎng)絡(luò)節(jié)點(該網(wǎng)絡(luò)節(jié)點用于所述所期望的未來分塊請求的重定向)。
[0015]在又一實施例中,所述針對網(wǎng)絡(luò)信息的請求可包括HTTP、RTSP和/或DNS協(xié)議消息,優(yōu)選為HTTP HEAD消息或RTSP DESCRIBE消息,和/或其中所述響應(yīng)消息為HTTP或RTSP響應(yīng)消息。
[0016]在一個實施例中,所述預(yù)解析可在所述至少一個分塊的傳遞的至少一部分期間作為后臺過程被執(zhí)行。
[0017]在一個實施例中,所述方法可包括:以下列至少一部分為基礎(chǔ)選擇所述至少一個另外的分塊標(biāo)識符:用戶資料、用戶瀏覽歷史、用戶與分塊內(nèi)容的交互和/或用戶的地理位置。因此,與所期望的未來的分塊請求關(guān)聯(lián)的分塊的選擇可基于用戶相關(guān)信息。
[0018]在一個實施例中,所述清單文件可包括一個或多個標(biāo)記,該標(biāo)記用于將一個或多個另外的分塊標(biāo)識符標(biāo)記用于未來的分塊請求,優(yōu)選地所述標(biāo)記包括評分值。通過這種方式,用于預(yù)解析的分塊的選擇可基于清單文件中的信息。這信息可被CDN或被內(nèi)容提供商插入清單文件中。
[0019]在一種變形中,所述預(yù)解析可包括下列步驟的至少一個:傳送針對網(wǎng)絡(luò)信息的請求,優(yōu)選為HTTP HEAD消息或RTSP DESCRIBE消息,至第一內(nèi)容傳遞網(wǎng)絡(luò)(CDNl),所述請求包括至少所述所選的另外的分塊標(biāo)識符;所述第一內(nèi)容傳遞網(wǎng)絡(luò)CDNl傳送包括所述所選的另外的分塊標(biāo)識符的交互⑶N請求消息(優(yōu)選地為DELIVERY REQUEST消息)至第二內(nèi)容傳遞網(wǎng)絡(luò)(CDN2)以供協(xié)商所述所選的另外的分塊標(biāo)識符識別的所述分塊的未來的傳遞;和/或,所述第一內(nèi)容傳遞網(wǎng)絡(luò)⑶NI接收交互⑶N響應(yīng)消息(優(yōu)選為DELIVERY RESPONSE消息),該交互CDN響應(yīng)消息包括優(yōu)選為與所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2中一個或多個傳遞節(jié)點關(guān)聯(lián)的網(wǎng)絡(luò)地址或分塊定位符的位置信息,所述一個或多個傳遞節(jié)點配置成向客戶機傳遞由所述所選的另外的分塊標(biāo)識符識別的分塊。因此,在預(yù)解析過程期間,第一 CDN的網(wǎng)絡(luò)節(jié)點可認(rèn)出與預(yù)解析分塊定位符關(guān)聯(lián)的針對網(wǎng)絡(luò)信息的請求并且將該請求轉(zhuǎn)發(fā)到第二CDN的網(wǎng)絡(luò)節(jié)點,從而改善預(yù)解析過程的效率。
[0020]在一個實施例中,所述交互⑶N請求消息可包括允許所述第二內(nèi)容傳遞網(wǎng)絡(luò)⑶N2確定交互CDN請求消息與分塊定位符的預(yù)解析關(guān)聯(lián)的標(biāo)志。
[0021]在另一實施例中,所述交互CDN請求消息可以HTTP HEAD消息或RTSP DESCRIBE消息為基礎(chǔ)來實現(xiàn),從而允許所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2確定交互CDN消息與分塊定位符的預(yù)解析相關(guān)。
[0022]在又一實施例中,所述清單文件可包括與第一內(nèi)容傳遞網(wǎng)絡(luò)(⑶NI)中一個或多個傳遞節(jié)點關(guān)聯(lián)的第一位置信息(該第一位置信息優(yōu)選為網(wǎng)絡(luò)地址)和與第二內(nèi)容傳遞網(wǎng)絡(luò)(CDN2)中一個或多個傳遞節(jié)點關(guān)聯(lián)的第二位置信息(該第二位置信息優(yōu)選為網(wǎng)絡(luò)地址)。
[0023]在另一實施例中,其中所述分塊內(nèi)容為時間上分塊的內(nèi)容并且其中所述客戶機使用限定時間距離的時間接近參數(shù)以使得識別多個時間分塊(該多個時間分塊布置在離客戶機當(dāng)前處理的時間分塊該時間接近距離內(nèi))的一個或多個分塊標(biāo)識符可被標(biāo)記和/或被選擇用于預(yù)解析它們的一個或多個關(guān)聯(lián)的分塊定位符;或,
[0024]其中所述分塊內(nèi)容為空間上分塊的內(nèi)容并且其中所述客戶機使用限定空間距離的空間接近參數(shù)以使得識別多個空間分塊(該多個空間分塊布置在離客戶機當(dāng)前處理的空間分塊該空間接近距離內(nèi))的一個或多個分塊標(biāo)識符可被標(biāo)記和/或被選擇用于預(yù)解析它們的一個或多個關(guān)聯(lián)的分塊定位符;或,
[0025]其中所述分塊內(nèi)容為按品質(zhì)分塊的內(nèi)容并且其中所述客戶機使用限定品質(zhì)距離的品質(zhì)接近參數(shù)以使得識別多個品質(zhì)分塊(該多個品質(zhì)分塊布置在離客戶機當(dāng)前處理的品質(zhì)分塊該品質(zhì)接近距離內(nèi))的一個或多個分塊標(biāo)識符可被標(biāo)記和/或被選擇用于預(yù)解析它們的一個或多個關(guān)聯(lián)的分塊定位符。
[0026]在另一方面,本發(fā)明可涉及一種客戶機,其用于在網(wǎng)絡(luò)中一個或多個傳遞節(jié)點上托管的分塊內(nèi)容的客戶機控制的流送,所述客戶機包括:清單高速緩沖存儲器,用于存儲清單文件的至少一部分,所述清單文件包括一個或多個分塊標(biāo)識符和一個或多個關(guān)聯(lián)的分塊定位符(優(yōu)選為一個或多個URL),該分塊定位符用于定位一個或多個傳遞節(jié)點(該傳遞節(jié)點配置成向所述客戶機傳遞由所述分塊標(biāo)識符識別的一個或多個分塊);分塊檢索功能元件,用于以所述清單文件中至少一個分塊標(biāo)識符為基礎(chǔ)請求至少一個分塊的傳遞;分塊選擇器,配置用于以所述至少一個分塊標(biāo)識符為基礎(chǔ)選擇與至少一個所期望的未來分塊請求相關(guān)聯(lián)的至少一個另外的分塊標(biāo)識符;以及,預(yù)解析功能元件,用于預(yù)解析與所述至少一個所選的另外的分塊標(biāo)識符相關(guān)聯(lián)的第一分塊定位符的至少一部分以用于獲得與所述第一分塊定位符相關(guān)聯(lián)的網(wǎng)絡(luò)信息。
[0027]在另一方面,本發(fā)明可涉及一種網(wǎng)絡(luò)節(jié)點,其用于與按照上面描述的客戶機一起使用,所述網(wǎng)絡(luò)節(jié)點與第一內(nèi)容傳遞網(wǎng)絡(luò)(CDNl)關(guān)聯(lián)并且配置用于:從客戶機接收針對與分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息的請求,優(yōu)選地所述請求以HTTP HEAD消息或RTSP DESCRIBE消息為基礎(chǔ),所述分塊定位符與識別分塊的分塊標(biāo)識符關(guān)聯(lián);向第二內(nèi)容傳遞網(wǎng)絡(luò)(CDN2)傳送交互CDN請求消息以用于協(xié)商所述分塊的未來的傳遞,該交互CDN請求消息(優(yōu)選為DELIVERY REQUEST消息)包括所述分塊定位符和/或分塊識別符的至少一部分;其中所述交互⑶N請求消息包括標(biāo)志或其中所述交互⑶N請求消息基于HTTP HEAD消息或RTSPDESCRIBE消息,所述標(biāo)志或HTTP HEAD消息或RTSP DESCRIBE消息允許所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2確定所述交互CDN消息與所述客戶機所請求的分塊定位符的預(yù)解析關(guān)聯(lián)。
[0028]在又一方面,本發(fā)明可涉及一種數(shù)據(jù)結(jié)構(gòu),其優(yōu)選為清單文件,用于在上面描述的客戶機中使用,所述數(shù)據(jù)結(jié)構(gòu)包括一個或多個分塊標(biāo)識符和一個或多個關(guān)聯(lián)的分塊定位符(優(yōu)選為URL),該分塊定位符用于定位一個或多個配置成向所述客戶機傳遞所述分塊標(biāo)識符識別的一個或多個分塊的傳遞節(jié)點;所述數(shù)據(jù)結(jié)構(gòu)還包括一個或多個與所述分塊標(biāo)識符的一個或多個關(guān)聯(lián)的標(biāo)記,所述一個或多個標(biāo)記允許所述客戶機中的預(yù)解析功能元件選擇用于未來的分塊請求的另外的分塊標(biāo)識符,優(yōu)選地所述一個或多個標(biāo)記與評分值(優(yōu)選為受歡迎分值)關(guān)聯(lián)。
[0029]本發(fā)明還涉及一種包括軟件代碼部分的計算機程序產(chǎn)品,該軟件代碼部分配置成,當(dāng)其在計算機的存儲器中運行時,執(zhí)行上面描述的方法步驟的至少一個。
[0030]本發(fā)明將參考附圖進一步地例示,附圖將示意性地示出根據(jù)本發(fā)明的實施例。應(yīng)理解本發(fā)明絕對不會限定到這些特定實施例。
【專利附圖】
【附圖說明】
[0031]圖1A和IB描繪傳統(tǒng)的自適應(yīng)流送客戶機以及用于在這種客戶機中使用的清單文件。
[0032]圖2描繪傳統(tǒng)的AS客戶機的分塊檢索和播放過程的流程圖。
[0033]圖3描繪根據(jù)本發(fā)明一個實施例的客戶機。
[0034]圖4A和4B根據(jù)本發(fā)明一個實施例描繪基于CDN的內(nèi)容傳遞系統(tǒng)以及與用于在基于CDN的內(nèi)容傳遞系統(tǒng)中解析位置的預(yù)解析過程關(guān)聯(lián)的流程圖。
[0035]圖5根據(jù)本發(fā)明一個實施例描繪預(yù)解析的分塊的檢索。
[0036]圖6根據(jù)本發(fā)明一個實施例描繪與客戶機執(zhí)行的分塊預(yù)解析和檢索過程關(guān)聯(lián)的流程圖。
[0037]圖7根據(jù)本發(fā)明一個實施例描繪預(yù)解析存儲在客戶機的清單高速緩沖存儲器中的清單文件的至少一部分的示例。
[0038]圖8描繪用于清單文件的請求及播放的過程的流程圖,其中清單文件中未解析的分塊URL被預(yù)解析。
[0039]圖9根據(jù)本發(fā)明的一個實施例提供描繪客戶機中預(yù)解析功能元件執(zhí)行的過程的詳細(xì)的流程圖。
[0040]圖10根據(jù)本發(fā)明一個實施例描繪用于預(yù)解析的合適分塊的選擇。
[0041]圖11根據(jù)本發(fā)明另一實施例描繪用于預(yù)解析的合適分塊的選擇。
[0042]圖12根據(jù)本發(fā)明又一實施例描繪用于預(yù)解析的合適分塊的選擇。
[0043]圖13根據(jù)本發(fā)明一個實施例描繪清單文件的至少一部分,該清單文件包括被標(biāo)記用于預(yù)解析的分塊。
【具體實施方式】
[0044]圖1A和IB分別描繪傳統(tǒng)的自適應(yīng)流送(AS)客戶機以及用于與這種AS客戶機一起使用的清單文件??蛻魴C102可托管在終端(未示出)上,該終端配置成與網(wǎng)絡(luò)中一個或多個媒體服務(wù)器通信并且以自適應(yīng)流送協(xié)議為基礎(chǔ)使能內(nèi)容的流送,自適應(yīng)流送協(xié)議例如(諸如)為蘋果HTTP直播流送協(xié)議[http://tools.1etf.0rg/html/draft-pantos-http-live-streaming-07]、微軟平滑流送協(xié)議[http://www.1is.net/download/SmoothStreaming]、Adobe HTTP 動態(tài)流送協(xié)議[http://www.adobe.com/products/httpdynamicstreaming] >3GPP-DASH[TS 26.247 透明端對端分組交換流送服務(wù)(PSS);基于HTTP的漸進式下載和動態(tài)自適應(yīng)流送協(xié)議]以及基于HTTP的MPEG動態(tài)自適應(yīng)流送協(xié)議[MPEG DASH IS0/IEC 23001-6]。
[0045]終端可一般涉及內(nèi)容處理裝置,例如,諸如電子平板、智能電話、筆記本、媒體播放器等的(移動)內(nèi)容播放裝置。在某個實施例中,終端可為配置用于處理并臨時存儲內(nèi)容以供內(nèi)容播放裝置未來消耗的機頂盒或內(nèi)容存儲裝置。
[0046]用戶可將終端連接到例如因特網(wǎng)的網(wǎng)絡(luò),瀏覽包括視頻標(biāo)題鏈接的內(nèi)容提供商的網(wǎng)站并且選擇一個。在選擇例如URL的鏈接時,所謂的清單文件可被發(fā)送到客戶機。這里,術(shù)語“清單文件”可一般指專用數(shù)據(jù)結(jié)構(gòu),其包括識別構(gòu)成視頻標(biāo)題的分塊的分塊標(biāo)識符(描述符),(一組)網(wǎng)絡(luò)節(jié)點的位置信息,網(wǎng)絡(luò)節(jié)點例如為媒體服務(wù)器,其可配置成要么向客戶機傳遞分塊要么向客戶機提供分塊在哪里可被檢索到的信息并且,可選地,提供確定分塊間關(guān)系的分塊控制信息,分塊間關(guān)系可被客戶機用來正確地確定用于播放的分塊的順序。對于清單文件而言,不同的協(xié)議可使用不同的名稱。例如,在DASH流送協(xié)議中,清單文件可被稱為媒體演示描述(MPD)。
[0047]圖1B描繪清單文件的示意圖,該清單文件包括用于識別構(gòu)成內(nèi)容項的分塊的分塊標(biāo)識符和包括對一個或多個網(wǎng)絡(luò)節(jié)點的引用的位置信息,其中網(wǎng)絡(luò)節(jié)點配置成向客戶機傳遞識別的分塊或配置成向客戶機提供分塊在哪里可被檢索到的信息。因此,這個引用,其在下文中可被稱為分塊定位符,可指向配置成傳遞識別的分塊的網(wǎng)絡(luò)節(jié)點;或者,備選地,指向能夠確定一個或多個網(wǎng)絡(luò)節(jié)點(其能夠傳遞識別的分塊)的網(wǎng)絡(luò)節(jié)點。在又一實施例中,分塊定位符也可指向網(wǎng)絡(luò)節(jié)點上的位置。例如,不同的分塊定位符可指向在一個傳遞節(jié)點中定義的不同文件夾。
[0048]圖1B描繪清單文件的示意圖,該清單文件由客戶機用來定位配置成向客戶機傳遞在清單文件中識別的分塊的傳遞節(jié)點。為此,清單文件可包括至少一個用于識別分塊的分塊標(biāo)識符(例如分塊文件名),和采用至少一個與分塊標(biāo)識符關(guān)聯(lián)的分塊定位符形式的位置信息。分塊定位符可被定義為指向一個或多個網(wǎng)絡(luò)節(jié)點(或一個或多個網(wǎng)絡(luò)節(jié)點上的文件夾)的指針,該網(wǎng)絡(luò)節(jié)點配置成托管識別的分塊并且向客戶機傳遞分塊,或配置成確定一個或多個另外的能夠向客戶機傳遞識別的分塊的網(wǎng)絡(luò)節(jié)點。
[0049]在一些實施例中,分塊標(biāo)識符和分塊定位符可為諸如URL的預(yù)定數(shù)據(jù)結(jié)構(gòu)的一部分。例如 URL central.cdnA.com/segmentl-1.avi 包括分塊定位符 central.cdnA.com(即指向⑶N A的網(wǎng)絡(luò)節(jié)點的指針(或索引))以及分塊標(biāo)識符(即分塊文件名segmentl-1.avi),其中與分塊定位符central.cdnA.com關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點可配置成向客戶機傳遞分塊或可配置成傳遞一個或多個另外的、指向一個或多個能夠傳遞分塊segmentl-1.avi的網(wǎng)絡(luò)節(jié)點的分塊定位符。盡管下文中示例使用URL來描述,應(yīng)提出的是,本發(fā)明并不限定于此。在另一實施例中,分塊標(biāo)識符和分塊定位符可采用適合在網(wǎng)絡(luò)中識別和定位分塊的任何適合的形式。在一些實施例中,從或是分塊標(biāo)識符或是分塊定位符可用于在網(wǎng)絡(luò)中識別和定位分塊的意義上講,分塊標(biāo)識符和分塊定位符可重合。
[0050]在圖1B的示例中,清單文件包括與兩個不同分塊組關(guān)聯(lián)的分塊標(biāo)識符和分塊定位符,即,第一組低比特率分塊和第二組高比特率分塊,其中每一組包含視頻標(biāo)題。在這里,與低比特率分塊關(guān)聯(lián)的URL的分塊定位符部分指向第一內(nèi)容傳遞網(wǎng)絡(luò)CDN A的網(wǎng)絡(luò)節(jié)點以及高比特率分塊指向第二 CDN B的網(wǎng)絡(luò)節(jié)點??蛻魴C可以以分塊URL為基礎(chǔ)在清單文件中檢索分塊。該方案在下文中更詳細(xì)地描述。
[0051]如圖1A所例示,清單文件可存儲在清單高速緩沖存儲器104中并且被解析和構(gòu)造成分塊列表,即邏輯數(shù)據(jù)結(jié)構(gòu),分塊列表包括用于檢索分塊的信息,例如分塊標(biāo)識符(例如分塊文件名)和用于確定這些分塊可在哪里被檢索到的分塊定位符(例如URL的預(yù)定部分),并且分塊列表還包括用于控制分塊的播放的播放控制信息,即分塊之間的關(guān)系(例如時間關(guān)系、品質(zhì)關(guān)系和/或空間關(guān)系)。
[0052]分塊檢索功能元件106可使用清單高速緩沖存儲器中的位置信息以便從媒體服務(wù)器或與內(nèi)容傳遞網(wǎng)絡(luò)(CDN)關(guān)聯(lián)的一個或多個傳遞節(jié)點檢索分塊。分塊可使用(分塊)傳輸協(xié)議(典型地這會是HTTP,但RTSP/RTP、FTP和其他協(xié)議也可被使用)來檢索并臨時地存入分塊緩沖器108中。此外,視頻播放功能元件110 (其也可被稱為媒體引擎)可以以清單高速緩沖存儲器中的信息為基礎(chǔ)來播放存儲在分塊緩沖器中的分塊。
[0053]分塊檢索功能元件可配置成檢索分塊以使得在播放開始前分塊緩沖器被裝載以預(yù)定數(shù)量的分塊。而且,在播放期間,分塊檢索功能元件持續(xù)地以清單文件為基礎(chǔ)檢索分塊使得充足的分塊被存儲在分塊緩沖器中。通過這種方式,與分塊檢索關(guān)聯(lián)的持續(xù)時間不會妨礙分塊的無縫播放。分塊檢索功能元件可接受并處理來自用戶瀏覽功能元件112的分塊檢索指令使得用戶能夠瀏覽清單文件所定義的分塊的內(nèi)容。在這里,來自用戶瀏覽功能元件的分塊檢索指令可涉及時間瀏覽(例如快進)或空間瀏覽(例如平移-縮放-傾斜)。
[0054]與圖1A描繪的傳統(tǒng)的AS客戶機相關(guān)的一個問題涉及如下事實,即:如果用戶瀏覽功能元件需要在分塊緩沖器中不可用的分塊的播放,分塊檢索功能元件將開始匆忙地檢索所需的分塊。但是這過程可能花費相當(dāng)多時間,因為分塊需要使用解析過程被定位,在解析過程中清單文件中(未解析的)分塊定位符被解析成與托管分塊的網(wǎng)絡(luò)節(jié)點關(guān)聯(lián)的網(wǎng)絡(luò)地址。這解析過程可能涉及DNS查表,HTTP重定向和/或交互⑶N(⑶N-1)請求路由。這過程可能在復(fù)雜或互連CDN的情況下花費多達(dá)數(shù)秒。下載分塊的過程也可能花費相當(dāng)時間。但是,由于播放過程在整個分塊已被下載之前可能已經(jīng)開始,用戶在瀏覽內(nèi)容時感知的體驗的品質(zhì)主要由分塊解析過程決定。
[0055]圖2更詳細(xì)地描繪圖1A中描繪的傳統(tǒng)客戶機的分塊檢索和播放過程。該過程可在t = O時開始,這時客戶機可以開始播放緩沖的分塊,在這情況下即為第一分塊“segmentl-l.avi”(步驟200),緩沖的分塊先前以參照圖1A和IB所說明的清單文件為基礎(chǔ)通過分塊檢索功能元件從CDN檢索得到。一旦第一分塊的播放完成,隨后的分塊在t =I (segmentl-2.avi)和 t = 2 (segmentl-3.avi)時被處理和播放。
[0056]隨后,在t = 2時,在具有分塊文件名segmentl-3.avi的分塊的播放期間,用戶可使用客戶機中的用戶瀏覽功能元件與內(nèi)容交互(例如通過選擇一個按鈕來進入低比特率播放模式)。交互的結(jié)果可能為在終端的分塊緩沖器中不可用的一個新的分塊,即低比特率segment2-4.avi,被需求(步驟 202)。
[0057]當(dāng)客戶機確定分塊在緩沖器中不可用時,其可能觸發(fā)分塊檢索功能元件在清單文件中檢索低比特率分塊segment2-4.avi的位置信息(例如分塊定位符),并且通過向DNS系統(tǒng)發(fā)送包括與⑶N A的請求路由功能元件關(guān)聯(lián)的分塊定位符central.cdnA.com的DNS請求消息來解析分塊定位符central.cdnA.com, DNS系統(tǒng)可向客戶機發(fā)送回包括解析的IP地址的DNS響應(yīng)消息(步驟204、206)。作為響應(yīng),客戶機可發(fā)送針對分塊segment2_4.avi的HTTP GET請求至CDN A的請求路由節(jié)點的DNS解析的IP地址123.45.67.89 (步驟208)。作為對該請求的響應(yīng),CDN A(即上游CDN)可與CDN B(即下游CDN)協(xié)商有關(guān)所請求的分塊的傳遞(步驟210,212)。
[0058]在這里,CDNA 和 CDN B 之間的通信可基于 draft-1etf-cdn1-problem-statement-01中描述的⑶NI請求路由(RR)接口。這接口允許互連⑶N中的請求路由節(jié)點進行通信以確保用戶請求可從上游⑶N(在這情況中為⑶N B)(重)定向到下游⑶N中的代理。⑶NIRR接口可允許下游⑶N向上游⑶N提供信息(例如資源、覆蓋區(qū)、負(fù)載)以促進由上游⑶N請求路由系統(tǒng)在處理內(nèi)容請求時所進行的下游CDN的選擇。
[0059]在交互⑶N協(xié)商之后,⑶N A的請求路由節(jié)點可確定對于這特定用戶的分塊的傳遞最好由⑶N B提供。⑶N A的請求路由功能元件可因此將包含⑶N B的請求路由節(jié)點的位置信息(central.cdnB.com/segment2_4.avi)的HTTP重定向響應(yīng)發(fā)送回客戶機(步驟214)。一旦接收到HTTP重定向,客戶機執(zhí)行另一 DNS詢問并且發(fā)送新的HTTP GET至⑶N B的請求路由節(jié)點的解析的IP地址98.65.45.201 (步驟216-220)。
[0060]此后,⑶N B的請求節(jié)點,特別是⑶N B的⑶N控制功能元件(⑶NCF),可就最適合向客戶機傳遞特定分塊的傳遞節(jié)點(DN)作出決定(步驟222,224)并且將包含分塊定位符(在這情況中為node3.cdnB.com)的HTTP重定向發(fā)送回客戶機。為了檢索傳遞節(jié)點的IP地址24.67.13.57,客戶機此后可執(zhí)行另一DNS詢問??蛻魴C隨后發(fā)送包括URL 24.67.13.57/segment2-4.avi的HTTP GET至傳遞節(jié)點的由此解析的IP地址(步驟228-232),該傳遞節(jié)點發(fā)送所請求的分塊(segment2-4.avi)至客戶機作為響應(yīng)(步驟234)。隨后在t = 9時,客戶機可接收segment2_4.avi并且開始播放。
[0061]因此,正如從圖2中可見,在沒有用戶交互的情況下,由于客戶機將典型地在開始播放前緩沖一些分塊,重定向和請求路由延遲對用戶感知幾乎沒有影響。然而,當(dāng)用戶與客戶機的交互被允許時,客戶機不知道用戶將選擇哪一個分塊。如圖2所例示,時間的(快進)、空間的(平移/縮放)或切換至多速率方案中的另一速率需要特定的分塊檢索,這可能花費相當(dāng)多持續(xù)時間。例如,在圖2中在t = 2時的用戶交互和在t = 9時與該用戶動作關(guān)聯(lián)的分塊的接收之間,為了執(zhí)行全部協(xié)議交換(DNS,HTTP重定向和交互CDN信號傳輸)高達(dá)數(shù)秒的持續(xù)時間是可能的。這持續(xù)時間將中斷分塊的無縫播放進而損害用戶體驗。
[0062]圖3描繪根據(jù)本發(fā)明一個實施例的客戶機。特別地,圖3描繪包括預(yù)解析功能元件314的AS客戶機,預(yù)解析功能元件314配置為預(yù)解析期望由客戶機選擇以供在不遠(yuǎn)的未來播放的分塊的分塊定位符(例如URL的至少一部分)。
[0063]為了預(yù)測這種分塊,分塊選擇器313可使用來自用戶瀏覽功能元件312的用戶瀏覽信息以便從存儲在清單高速緩沖存儲器304中的分塊列表中選擇至少一個分塊。這過程將在下文中更詳細(xì)地描述??蛻魴C還可包括分塊檢索功能元件306、分塊緩沖器308和視頻播放功能元件310(媒體引擎),類似于參照圖1所描述的那些。
[0064]以播放的分塊為基礎(chǔ)并且以用戶瀏覽功能元件所提供的用戶瀏覽信息為基礎(chǔ),分塊選擇器可預(yù)測哪一(哪些)分塊最有可能在不遠(yuǎn)的未來被客戶機所選擇。用戶瀏覽信息從而提供上下文信息,即用戶-特定的信息(例如用戶資料、用戶瀏覽歷史、用戶(地理)位置等),上下文信息被分塊選擇器用來預(yù)測未來的分塊播放。
[0065]預(yù)解析功能元件也可使用與所播放的分塊內(nèi)容關(guān)聯(lián)的一般瀏覽信息,例如有關(guān)與特定內(nèi)容項關(guān)聯(lián)的經(jīng)常請求的分塊的信息。為了預(yù)測未來的分塊播放,這一般瀏覽信息可與用戶瀏覽信息一起使用。在一個實施例中,CDN中的控制功能元件或內(nèi)容提供商可在一般內(nèi)容瀏覽信息被傳遞給客戶機時將其插入清單文件(例如,被標(biāo)記為受歡迎的分塊)中。這實施例參照圖13更詳細(xì)地描述。在另一實施例中,預(yù)解析功能元件可經(jīng)由另一通信信道從內(nèi)容提供商、CDN或第三方接收一般瀏覽信息。
[0066]如果所預(yù)測的分塊不在分塊高速緩沖存儲器中,預(yù)解析功能元件可開始預(yù)解析過程,其中所預(yù)測分塊的分塊定位符被全部地或至少部分地預(yù)解析,而沒有實際上檢索所預(yù)測的分塊。在這里,術(shù)語“預(yù)解析”指獲得與所預(yù)測分塊的分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息的過程。網(wǎng)絡(luò)信息可包括IP地址、另外的分塊定位符(的一部分)和/或分塊定位符是否指向網(wǎng)絡(luò)節(jié)點(其配置成向客戶機傳遞分塊(即傳遞節(jié)點)或重定向?qū)W(wǎng)絡(luò)信息的請求)的信息。預(yù)解析所預(yù)測分塊的分塊定位符的這個過程可與分塊的播放并行地(或作為后臺過程)執(zhí)行,并且可使用諸如DNS查表、重定向和/或交互CDN請求路由的技術(shù),而沒有實際檢索分塊。
[0067]與分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息可用于修改客戶機中的清單文件。例如,在一個實施例中,如果預(yù)解析所預(yù)測分塊的分塊定位符的過程產(chǎn)生完全預(yù)解析的分塊定位符,即,指向配置成向客戶機傳遞分塊的傳遞節(jié)點的網(wǎng)絡(luò)地址的分塊定位符,預(yù)解析功能元件可接收預(yù)解析的網(wǎng)絡(luò)地址并且使用這網(wǎng)絡(luò)地址來修改或重寫存儲在清單高速緩沖存儲器304中的分塊列表中的條目。備選地,預(yù)解析功能元件可將預(yù)解析的網(wǎng)絡(luò)地址增加到分塊列表中。此外,如果所預(yù)測分塊的分塊定位符的預(yù)解析過程產(chǎn)生部分預(yù)解析的分塊定位符,即另外的、第二分塊定位符(其需要一個或多個另外的預(yù)解析步驟以將其解析成完全預(yù)解析的分塊定位符),預(yù)解析功能元件可使用這部分預(yù)解析的分塊定位符來更新,例如修改或重寫,存儲在清單高速緩沖存儲器304中的分塊列表中的條目。
[0068]通過這種方式,當(dāng)全部或部分預(yù)解析的分塊被用戶經(jīng)由用戶瀏覽功能元件選擇時,客戶機可略過全部或至少部分的參照圖2描述的解析步驟,從而相當(dāng)程度上減少所預(yù)測分塊的檢索時間。尤其是,當(dāng)分塊定位符為完全預(yù)解析的,客戶機可以存儲于清單高速緩沖存儲器中的預(yù)解析的網(wǎng)絡(luò)地址為基礎(chǔ)、以最小請求路由延遲來檢索分塊,該預(yù)解析的網(wǎng)絡(luò)地址由預(yù)解析功能元件在早先確定。
[0069]圖4A描繪根據(jù)本發(fā)明一個實施例的內(nèi)容流送系統(tǒng)。特別地,圖4A例示包括第一⑶N 402 (也被稱為上游⑶N)的基于⑶N的內(nèi)容傳遞系統(tǒng),第一⑶N 402經(jīng)由⑶N互連接口464互連到至少第二⑶N 404 (也被稱為下游⑶N)。
[0070]該內(nèi)容傳遞系統(tǒng)還進一步包括內(nèi)容源406,其經(jīng)由輸送網(wǎng)絡(luò)407連接至一個或多個托管客戶機的終端408。該內(nèi)容源可涉及內(nèi)容提供商系統(tǒng)CPS、內(nèi)容準(zhǔn)備系統(tǒng)或另一 CDN。CPS可配置成向客戶提供內(nèi)容,例如視頻標(biāo)題,客戶可使用參照圖3描述的AS客戶機來購買并且接收內(nèi)容以供視頻播放。
[0071]⑶N可包括傳遞節(jié)點410、413、414和至少一個中心⑶N節(jié)點416、418。每一傳遞節(jié)點可包括控制器420、422、424和用于存儲并緩沖內(nèi)容的高速緩沖存儲器440、442、444,或者與它們關(guān)聯(lián)。每一中心CDN節(jié)點可包括攝取節(jié)點(或內(nèi)容起源功能元件,C0F) 425,427,內(nèi)容位置數(shù)據(jù)庫434、436和⑶N控制功能元件(⑶NCF) 426,428或可與其關(guān)聯(lián),攝取節(jié)點用于控制來自外部源的內(nèi)容的攝取,外部源例如為內(nèi)容提供商或另一 CDN,內(nèi)容位置數(shù)據(jù)庫用于維持關(guān)于內(nèi)容存儲在CDN內(nèi)何處的信息,CDN控制功能兀件用于控制內(nèi)容的一份或多份副本向傳遞節(jié)點的分發(fā)以及用于將客戶機重定向到合適的傳遞節(jié)點(該過程也被稱為請求路由)。在一個實施例中,托管CDNCF的節(jié)點可被稱為請求路由(RR)節(jié)點??蛻艨赏ㄟ^將請求發(fā)送到門戶網(wǎng)站(WP)432從CPS 430購買內(nèi)容,例如視頻標(biāo)題,門戶網(wǎng)站配置成提供識別可購買的內(nèi)容項的標(biāo)題索引。CDNCF可使用內(nèi)容位置數(shù)據(jù)庫434、436管理分塊可被檢索到的位置。
[0072]在圖4A的內(nèi)容傳遞系統(tǒng)中,上游⑶N可將至客戶機的分塊傳遞的一部分外包給下游CDN。例如,在一個實施例中,低品質(zhì)分塊可由第一 CDN A(配置例如用于內(nèi)容至移動裝置的傳遞)定位并由其傳遞,而高品質(zhì)分塊可由第二 CDN B (配置例如用于高品質(zhì)分塊至支持HDTV技術(shù)的家庭媒體裝置的傳遞)定位并由其傳遞。
[0073]圖4B根據(jù)本發(fā)明一個實施例描繪與預(yù)解析過程關(guān)聯(lián)的流程圖。特別地,圖4B描繪基于HTTP的預(yù)解析過程的流程圖,其中使用HTTP HEAD消息。
[0074]在t = 2時,在客戶機執(zhí)行的分塊的緩沖和播放期間,用戶可使用客戶機中的用戶瀏覽功能元件(例如通過按壓按鈕來執(zhí)行平移操作)與內(nèi)容交互。在交互期間,分塊選擇器可確定(預(yù)測)很有可能清單文件中的特定分塊(segment2_4.avi)可能在不遠(yuǎn)的未來被播放功能元件所請求,并且與這種請求關(guān)聯(lián)的分塊當(dāng)前在終端的分塊緩沖器中不可用。這種分塊請求可被稱為預(yù)期的未來分塊請求。
[0075]當(dāng)確定這個所預(yù)測分塊在分塊緩沖器中不可用時,客戶機可決定通過請求與來自網(wǎng)絡(luò)的分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息來部分地或是完全地預(yù)解析所預(yù)測分塊的(未解析的)分塊定位符(步驟452)。
[0076]在這網(wǎng)絡(luò)信息的基礎(chǔ)上,預(yù)解析功能元件可例如修改分塊定位符(在這個例子中,為指向請求路由節(jié)點的URL的一部分central.cdnA.com)形成另外的分塊定位符。這種另外的分塊定位符可涉及包括網(wǎng)絡(luò)地址(例如IP地址)的部分預(yù)解析的分塊定位符或完全預(yù)解析的分塊定位符,網(wǎng)絡(luò)地址與配置成向客戶機傳遞這分塊的至少一個傳遞節(jié)點關(guān)聯(lián)。預(yù)解析分塊定位符的這過程將在下文中更詳細(xì)地描述。
[0077]預(yù)解析過程可通過發(fā)送包括與網(wǎng)絡(luò)節(jié)點(例如包括⑶N A的請求路由功能元件的網(wǎng)絡(luò)節(jié)點)關(guān)聯(lián)的URL的一部分(central.cdnA.com)的DNS請求消息到網(wǎng)絡(luò)中的解析功能元件(例如DNS系統(tǒng))而開始,并且接收包括網(wǎng)絡(luò)節(jié)點(在這個例子中為包括與CDN A關(guān)聯(lián)的請求路由功能元件的網(wǎng)絡(luò)節(jié)點)的IP地址的響應(yīng)消息(步驟454、456)。此外,客戶機可檢查這個網(wǎng)絡(luò)節(jié)點是否能夠傳遞所預(yù)測分塊。為此,其可發(fā)送針對分塊Segment2-4.avi的HTTP HEAD請求至DNS解析的IP地址123.45.67.89 (步驟458)。如果這網(wǎng)絡(luò)節(jié)點能夠傳遞所請求的分塊,其可以HTTP 200 OK消息來響應(yīng)該請求。如果其不能夠傳遞所請求的分塊,其可以包括另外的分塊定位符的HTTP REDIRECT消息來響應(yīng),該另外的分塊定位符還需要進一步被預(yù)解析以便獲得配置成向客戶機傳遞所請求分塊的網(wǎng)絡(luò)節(jié)點的網(wǎng)絡(luò)地址。如早先已提到的,這種另外的分塊定位符可在下文中被稱為部分預(yù)解析的分塊定位符。
[0078]因此,在接收HTTP HEAD請求消息時,⑶N A中的請求路由功能元件可通過⑶NI請求路由(RR)接口與⑶N B就所請求分塊的傳遞進行協(xié)商(步驟460、462)。
[0079]在一個實施例中,在將客戶機重定向到⑶N B之前,⑶N A的RR節(jié)點可請求關(guān)于CDN B能夠并且愿意向客戶機傳遞特定分塊的確認(rèn)。在那種情況下,其可向CDN B的RR節(jié)點發(fā)送交互⑶N消息,例如DELIVERY REQUEST消息,其中請求可包括識別所請求分塊和位置信息的參數(shù),例如客戶機的IP地址。DELIVERY REQUEST可以HTTP GET消息來實現(xiàn)。
[0080]在另一實施例中,由⑶N A的RR節(jié)點發(fā)送至⑶N B的RR節(jié)點的交互⑶N消息,例如HTTP GET DELIVERY REQUEST消息可包括指示特定交互⑶N消息不涉及由客戶機進行的實際內(nèi)容請求(例如HTTP GET消息)而是涉及由客戶機執(zhí)行的預(yù)解析步驟(例如以HTTPHEAD消息為基礎(chǔ))的標(biāo)志。該標(biāo)志可用于通知⑶N B的RR節(jié)點該請求的性質(zhì),這允許RR節(jié)點選擇適當(dāng)?shù)暮罄m(xù)動作(為了計費、統(tǒng)計等目的)。
[0081]在另一實施例中,如果交互⑶N消息,例如DELIVERY REQUEST,與預(yù)解析步驟相關(guān),而不是與內(nèi)容請求相關(guān),交互⑶N消息可以HTTP HEAD消息而不是HTTP GET消息來實現(xiàn),使得⑶N B的RR節(jié)點知道請求的性質(zhì),這允許其選擇適當(dāng)?shù)暮罄m(xù)動作(為了計費、統(tǒng)計等目的)。在這個實施例中,響應(yīng)HTTP HEAD消息,HTTP 200 OK響應(yīng)消息可在其報頭(因為對HTTP HEAD請求的響應(yīng)消息不具有正文)包括所請求分塊和位置信息,例如客戶機的IP地址。
[0082]在與CDN B協(xié)商之后,CDN A的請求路由節(jié)點可確定這特定分塊向此特定用戶的傳遞最好由⑶N B來服務(wù)。其因此可將HTTP 302 REDIRECT響應(yīng)發(fā)送回客戶機(步驟464),該HTTP 302 REDIRECT響應(yīng)包括部分預(yù)解析的分塊定位符,即指向⑶N B的請求路由節(jié)點的URL的一部分(central.cdnB.com)。響應(yīng)HTTP HEAD消息而發(fā)送的消息不包括正文,所以HTTP 302 REDIRECT消息也不包括正文。但這不是一個問題,因為包括部分預(yù)解析的分塊定位符的重定向信息可能包含在其報頭中使得不需要消息正文。
[0083]在接收包括部分解析的分塊定位符的HTTP REDIRECT消息時,客戶機可確定請求中的分塊定位符沒有被完全預(yù)解析成網(wǎng)絡(luò)地址。預(yù)解析功能元件可隨后決定停止預(yù)解析過程并且通過以部分預(yù)解析的分塊定位符central.cdnB.com替換原始分塊定位符central.cdnA.com來重寫清單高速存儲緩沖器中的清單文件的一部分(在圖4B中未示出)。
[0084]備選地,在接收到HTTP重定向時,AS客戶機可決定通過執(zhí)行另一 DNS詢問繼續(xù)預(yù)解析過程(步驟466、468)并且發(fā)送新的HTTP HEAD至⑶N B的請求路由節(jié)點的解析的IP地址 98.65.45.210 (步驟 470)。
[0085]此后,⑶N B的請求節(jié)點,特別是⑶N B的⑶N控制功能元件(⑶NCF),可對最適于傳遞特定分塊至客戶機的傳遞節(jié)點(DN)作出決定(步驟472,474)并且將包含所選擇傳遞節(jié)點的位置(在這個例子中為分塊定位符node3.cdnB.com)的HTTP重定向發(fā)送回客戶機(步驟476)。在接收到HTTP REDIRECT消息時,客戶機可再次確定是停止預(yù)解析過程并通過以部分預(yù)解析的分塊定位符node3.cdnB.com替換原始分塊定位符central.cdnA.com(產(chǎn)生修正的URL node3.cdnB.com/segment2-4.avi)(未在圖4B中示出)來重寫清單高速存儲緩沖器中的清單文件的一部分,還是繼續(xù)預(yù)解析過程。
[0086]客戶機可通過執(zhí)行另一 DNS詢問來繼續(xù)預(yù)解析過程(步驟478,480),以便將URL解析為配置成向客戶機傳遞這分塊的傳遞節(jié)點的網(wǎng)絡(luò)地址(在這個例子中為IP地址24.67.13.57)。同樣,在這點上,預(yù)解析功能元件可決定停止預(yù)解析過程并且將結(jié)果(即分塊定位符24.67.13.57)存儲在清單高速緩沖存儲器(未示出)中。
[0087]如果預(yù)解析功能元件繼續(xù)預(yù)解析過程,預(yù)解析功能元件可再次檢查與預(yù)解析分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點是否能夠傳遞所預(yù)測分塊。為此,其可發(fā)送HTTP HEAD至傳遞節(jié)點的網(wǎng)絡(luò)地址(步驟482),傳遞節(jié)點作為響應(yīng)發(fā)送HTTP 200 OK消息,該消息向預(yù)解析功能元件確認(rèn)預(yù)解析過程完全解析了早先的分塊定位符(即用在預(yù)解析過程開始階段或中間階段的分塊定位符)。通過這種方式,能夠確定分塊可以URL 24.67.13.57/segment2-4.avi為基礎(chǔ)來檢索(步驟484)。
[0088]隨后,在t = 9時,預(yù)解析功能元件可通過以完全預(yù)解析的分塊定位符24.67.13.57替換原始分塊定位符central.cdnA.com來重寫清單高速緩沖存儲器中清單文件的一部分(產(chǎn)生完全解析的URL24.67.13.57/segment2-4.avi)(步驟486)。與分塊定位符關(guān)聯(lián)的標(biāo)志或指示符可指示分塊定位符是完全預(yù)解析的還是部分預(yù)解析的。上述過程可針對其他分塊被重復(fù),其中用戶瀏覽信息確定哪些后續(xù)分塊可被部分或完全預(yù)解析。
[0089]因此,從上述內(nèi)容能夠?qū)С?,預(yù)解析功能元件以與分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息為基礎(chǔ)部分或完全預(yù)解析AS客戶機的清單高速緩沖存儲器中的清單文件中預(yù)定的分塊定位符。為了獲得這種網(wǎng)絡(luò)信息,預(yù)解析功能元件可使用預(yù)定的協(xié)議消息,諸如在RFC2616中標(biāo)準(zhǔn)化的DNS請求或HTTP HEAD請求。HEAD請求與HTTP GET請求相同,除了網(wǎng)絡(luò)節(jié)點僅返回響應(yīng)的消息報頭。通過發(fā)送HEAD請求到存在于清單文件中的URL,AS客戶機可以響應(yīng)消息為基礎(chǔ)檢查該URL是否托管實際分塊。如果HTTP HEAD請求返回HTTP OK響應(yīng),AS客戶機知道URL是最終目的地并且不需要預(yù)期另外的請求路由延遲。如果服務(wù)器的響應(yīng)是HTTPREDIRECT消息,其可在那時停止預(yù)解析過程并且以部分解析的分塊URL來替換未解析的分塊URL。備選地,客戶機可確定通過發(fā)送另一 HTTP HEAD請求到重定向消息中列出的URL來繼續(xù)預(yù)解析過程。這過程可被重復(fù)直到最終完全預(yù)解析的URL被接收。其可隨后以通過預(yù)解析過程獲得的URL來替換存儲在清單高速緩沖存儲器中的URL。
[0090]盡管圖4B中描繪的過程參考HTTP協(xié)議來描述,其不應(yīng)被限定于此。例如,如果清單文件包括一個或多個RTSP分塊定位符(例如RTSP URL),客戶機可使用RTSP DESCRIBE請求來執(zhí)行分塊定位符的預(yù)解析。此外,在RTSP中重定向可通過在響應(yīng)中使用3xx響應(yīng)代碼以與HTTP相同的方式來處理。因此,當(dāng)客戶機響應(yīng)于RTSP DESCRIBE接收3xx響應(yīng)時,客戶機知道其不得不發(fā)送另一 RTSP DESCRIBE請求到3xx響應(yīng)中的URL。
[0091]圖5根據(jù)本發(fā)明的一個實施例描繪預(yù)解析的分塊定位符為基礎(chǔ)的分塊的檢索。在這特定示例中,該過程可以與參照圖2所描述的過程相同的方式開始,即所緩沖分塊的播放,其中分塊緩沖器通過分塊檢索功能元件持續(xù)地以另外的分塊來填充,這過程可與分塊播放過程并行地執(zhí)行。同時,圖4描繪的預(yù)解析過程作為后臺過程在客戶機中執(zhí)行使得清單文件中的分塊定位符(包括分塊定位符central.cdnA.com)用戶瀏覽信息為基礎(chǔ)來預(yù)解析,如參照圖3所解釋。
[0092]因此,如圖5所示,在t = O時,客戶機可開始播放分塊(在這個例子中為segmentl-1.avi ;為簡便起見分塊檢索過程在這圖中未示出)(步驟500)。一旦完成第一分塊的播放,在t = I時(segmentl-2.avi)和t = 2時(segmentl-3.avi)的后續(xù)分塊可被處理并播放。于是,在t = 2時,在客戶機播放segmentl-3.avi時,用戶可與內(nèi)容交互(例如通過按壓按鈕來執(zhí)行平移操作),其中交互的結(jié)果是新的分塊Segment2-4.avi被需要。
[0093]由于與這分塊關(guān)聯(lián)的分塊定位符已被在后臺運行的預(yù)解析功能元件完全預(yù)解析,客戶機可向傳遞節(jié)點的地址傳輸HTTP GET,其中HTTP GET消息包括分塊識別符segment2-4.avi (步驟532)。CDN B處的傳遞節(jié)點可通過在HTTP 200 OK響應(yīng)消息中發(fā)送所請求的分塊segment2-4.avi至客戶機來響應(yīng)(步驟534)。隨后,在t = 4時,客戶機開始接收并且播放segment2-4.avi (步驟536)。
[0094]從圖5中可見,客戶機中的預(yù)解析功能元件明顯地減少由分塊檢索過程在用戶與內(nèi)容互動時引入的延遲。如果分塊僅部分預(yù)解析,預(yù)解析過程的未完成部分需要在分塊能夠被檢索之前完成。然而,同樣在那種情況下(尤其是大量分塊需要被預(yù)解析)可實現(xiàn)在減少請求路由延遲中相當(dāng)可觀的改進。通過這種方式,用戶在瀏覽內(nèi)容時感知的體驗品質(zhì)可被相當(dāng)可觀地改善。此外,預(yù)解析功能元件可與僅需要客戶機軟件中更新的現(xiàn)有網(wǎng)絡(luò)技術(shù)一起使用。
[0095]圖6根據(jù)本發(fā)明一個實施例描繪與客戶機執(zhí)行的預(yù)解析和分塊檢索過程關(guān)聯(lián)的流程圖。在某一時刻,在瀏覽網(wǎng)站時,用戶選擇鏈接到網(wǎng)頁視頻的鏈接。在選擇時,用戶的客戶機可發(fā)送HTTP GET請求至包含在鏈接中的URL。在這情況下鏈接指向⑶N A的請求路由節(jié)點上的命名為manifest, mf的清單文件(步驟600)。在接收客戶機對清單文件的請求時,請求路由節(jié)點可確定哪一個傳遞節(jié)點最適合向客戶機傳遞清單文件。其可隨后發(fā)送HTTP REDIRECT消息至客戶機,該消息包含所選傳遞節(jié)點的URL (步驟601)。一旦客戶機接收HTTP REDIRECT消息,其可發(fā)送新的HTTP GET至包含在REDIRECT消息中的URL (在這個例子中為URL nodel.cdnA.com/manifest, mf)(步驟602)。CDN A傳遞節(jié)點可通過向客戶機發(fā)送所請求的清單文件來響應(yīng)(步驟603)。
[0096]在接收清單文件時,客戶機可分析清單文件以了解其描述的內(nèi)容的結(jié)構(gòu)(步驟604)。在分析清單文件之后,客戶機過程分裂成(至少)兩個獨立過程(線程):第一過程(第一過程607),其用于請求及播放分塊,參照圖5所描述;以及第二(后臺)過程(第二過程606),其用于預(yù)解析與分塊選擇器所選的分塊關(guān)聯(lián)的分塊定位符,參照圖3-4所描述。
[0097]這些消息流清晰地例示一旦分塊定位符被預(yù)解析,由于客戶機能夠以清單高速緩沖存儲器中預(yù)解析的網(wǎng)絡(luò)地址為基礎(chǔ)立刻聯(lián)系托管分塊的服務(wù)器,另外的重定向是不必要的。其也示出即使不同分塊位于不同節(jié)點以及甚至位于不同CDN中,也可實現(xiàn)分塊的有效檢索。
[0098]圖7根據(jù)本發(fā)明的一個實施例描繪預(yù)解析清單文件的至少一部分的分塊定位符的示例。特別地,圖7描繪客戶機為了替換分塊定位符(例如存儲在終端的清單高速緩沖存儲器中的URL的預(yù)定部分)如何使用預(yù)解析過程的示例,其中將被預(yù)解析的分塊定位符由分塊選擇器以用戶瀏覽信息和內(nèi)容瀏覽信息為基礎(chǔ)來選擇(參照圖3所描述)。
[0099]第一清單文件700可由客戶機從CDN接收,參照圖6所描述。在這情況下,清單文件指許多所謂的空間分塊文件,它們可用于將空間上分塊的內(nèi)容流送到客戶機。
[0100]空間上分塊的內(nèi)容或平鋪的內(nèi)容用于所謂的平鋪視頻系統(tǒng),其中可產(chǎn)生視頻內(nèi)容文件的多個分辨率層。平鋪視頻系統(tǒng)的示例在ICIP 2010年會刊4437頁至4440頁的Mavlankar等人的“用于在線演講觀看的交互感興趣區(qū)域視頻流送系統(tǒng)”中描述。
[0101]空間上分塊的內(nèi)容可通過在空間上將視頻文件中的視頻幀分成所謂的分片(tile)而產(chǎn)生,其中每一分片包括與原始視頻幀的空間區(qū)域(分片從其中產(chǎn)生)關(guān)聯(lián)的內(nèi)容。以視頻幀的序列為基礎(chǔ),與一個空間區(qū)域關(guān)聯(lián)的分片的序列可產(chǎn)生并被格式化為獨立的流,例如MPEG流。這種流可被稱為空間分塊流或簡稱為空間流。
[0102]因此,空間流彼此獨立地編碼并分發(fā)(即被流送)。終端的視頻客戶機可請求特定的空間區(qū)域(感興趣區(qū)域(ROI)),而服務(wù)器可隨后將ROI請求映射到一個或多個空間分塊并且將所選的空間分塊組傳送到客戶機,其中客戶機配置成將空間分塊流組合成一個無縫的視頻。分塊的內(nèi)容參照圖10-12更詳細(xì)地描述。
[0103]圖7中清單文件指示空間上分塊的內(nèi)容以內(nèi)容源文件Movie_4為基礎(chǔ)來產(chǎn)生以及由分塊標(biāo)識符(文件名)Movie-4_l.seg、Movie-4-2, seg、Movie-4-3, seg 和Movie-4-4, seg定義的四個獨立空間分塊流存儲在CND A的域中,其中URL central.cdn_A.com(701a-701d)的預(yù)定部分指向⑶N A內(nèi)的一般請求路由節(jié)點。因此,這些分塊定位符在不包括分塊可被檢索處的節(jié)點的網(wǎng)絡(luò)地址的意義上講是未解析的。當(dāng)這清單文件在流送過程中被客戶機使用時,可使用預(yù)解析過程,如參照圖4所詳細(xì)描述。
[0104]在那過程期間,與四個分塊關(guān)聯(lián)的URL 701a_701d中未解析的分塊定位符central.cdn_A.com的至少一部分可由網(wǎng)絡(luò)地址來替換。通過這種方式可形成4個解析的URL 703a-703d,其各自包含這些分塊可被檢索處的傳遞節(jié)點的網(wǎng)絡(luò)地址。解析的URL可指向例如一個或多個傳遞節(jié)點,其中傳遞節(jié)點的一些可位于例如另外的CDN B中。如圖7中可見,分塊可全部從網(wǎng)絡(luò)地址24.67.13.57識別的一個傳遞節(jié)點中檢索。
[0105]圖8描繪用于清單文件的請求及播放的過程的流程圖,其中未解析的分塊定位符被至少部分地預(yù)解析。該過程可以客戶機請求與期望內(nèi)容關(guān)聯(lián)的清單文件來開始(步驟800)。作為對請求的響應(yīng)。客戶機可從服務(wù)器接收清單文件(步驟801)并且通過請求在清單文件列出的第一分塊而開始視頻的播放(步驟802)。
[0106]在播放期間,由分塊選擇器分析用戶交互以預(yù)測用戶可能會在不遠(yuǎn)的未來需要哪些分塊和關(guān)聯(lián)的分塊定位符(步驟803)。這些預(yù)測的分塊定位符隨后被分塊選擇器標(biāo)記用于(部分)預(yù)解析。預(yù)解析功能元件可隨后部分地或完全地預(yù)解析標(biāo)記用于預(yù)解析的分塊定位符(步驟804)。如果最后的分塊定位符被處理(步驟805),則該過程被停止。如果沒有,新一輪的預(yù)解析開始。
[0107]圖9根據(jù)本發(fā)明一個實施例描繪預(yù)解析過程的詳細(xì)流程圖。特別地,圖9描繪預(yù)解析過程的流程圖,其中清單文件中分塊定位符以與這些分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息為基礎(chǔ)來預(yù)解析。
[0108]在第一步驟900,預(yù)解析功能元件可接收需要被部分或完全預(yù)解析的分塊定位符(例如URL)的列表,其中與分塊定位符關(guān)聯(lián)的每一分塊由特定的分塊標(biāo)識符(例如分塊文件名)來識別。這列表可在參照圖8描述的過程的步驟803期間產(chǎn)生。
[0109]預(yù)解析功能元件可從需要被解析的分塊定位符的列表取得第一分塊定位符(例如指向網(wǎng)絡(luò)節(jié)點的URL的預(yù)定部分)(步驟901),并且開始獲得與分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息(步驟902)。網(wǎng)絡(luò)信息可使用針對網(wǎng)絡(luò)信息的一個或多個請求消息來獲得(參照例如圖4B所描述)。這些消息可包括:一個或多個DNS消息(例如DNS詢問);和/或,一個或多個請求消息,用于確定分塊定位符是指向用于分塊的傳遞的網(wǎng)絡(luò)節(jié)點還是指向用于請求的重定向的網(wǎng)絡(luò)節(jié)點(例如HTTP HEAD或RTSP DESCRIBE消息);和/或一個或多個響應(yīng)消息,其指示分塊定位符是指向用于分塊的傳遞的網(wǎng)絡(luò)節(jié)點(傳遞節(jié)點)還是指向用于請求的重定向的網(wǎng)絡(luò)節(jié)點(例如HTTP 200 OK消息或3xx RTSP錯誤消息)。
[0110]以這些消息為基礎(chǔ),預(yù)解析功能元件可使用網(wǎng)絡(luò)信息來更新分塊定位符(步驟903)。如果以網(wǎng)絡(luò)信息為基礎(chǔ),確定更新的分塊定位符指向用于傳遞與分塊定位符關(guān)聯(lián)的分塊的傳遞節(jié)點(步驟904)(因為例如HTTP 200 OK消息被接收),預(yù)解析功能元件可確定更新的分塊定位符是完全預(yù)解析的分塊定位符(步驟905)。預(yù)解析功能元件還可通過以完全預(yù)解析的分塊定位符替換清單列表中的初始分塊定位符來更新分塊列表(步驟906)??蛇x地,標(biāo)志或指示符可用于用信號通知客戶機這樣修改的分塊定位符涉及完全預(yù)解析的分塊定位符。
[0111]如果以網(wǎng)絡(luò)信息為基礎(chǔ),確定更新的分塊定位符不指向傳遞節(jié)點,而是例如指向用于重定向的節(jié)點(由于例如HTTP REDIRECT1N被接收),預(yù)解析功能元件可確定是否停止預(yù)解析過程(步驟907)。如果預(yù)解析功能元件決定繼續(xù)預(yù)解析過程(步驟908),獲得網(wǎng)絡(luò)信息的過程開始(見步驟902)。如果其決定停止預(yù)解析過程,預(yù)解析功能元件可確定更新的分塊定位符是部分解析的分塊定位符(步驟909)。預(yù)解析功能元件可進一步通過以部分預(yù)解析的分塊定位符的至少一部分替換清單列表中的初始分塊定位符來更新分塊列表(步驟910)??蛇x地,標(biāo)志或指示符可用于指示客戶機這樣修改的分塊定位符涉及完全預(yù)解析的分塊定位符。
[0112]在分塊列表的更新之后,預(yù)解析功能元件可確定另外的分塊定位符是否需要被預(yù)解析(步驟911)。如果情況確是這樣,預(yù)解析功能元件可以下一分塊定位符為基礎(chǔ)開始預(yù)解析過程(步驟912)。
[0113]這預(yù)解析過程可在分塊從網(wǎng)絡(luò)檢索期間在后臺執(zhí)行。通過這種方式,分塊列表以完全和/或部分預(yù)解析的分塊定位符來持續(xù)地且動態(tài)地更新,其中將被預(yù)解析的分塊定位符被分塊選擇器以預(yù)定信息為基礎(chǔ)來選擇,預(yù)定信息例如為諸如用戶資料、用戶瀏覽歷史和/或用戶的地理位置的用戶相關(guān)信息;或例如為諸如分塊標(biāo)記的清單文件中信息,分塊標(biāo)記用于標(biāo)記在清單文件中識別的特定分塊定位符以使得預(yù)解析功能元件能夠選擇標(biāo)記的分塊定位符用于預(yù)解析。
[0114]圖10根據(jù)本發(fā)明一個實施例的描繪用于預(yù)解析的合適分塊定位符的選擇。特別地,圖10描繪供分塊選擇器確定與時間上分塊的視頻(例如基于HAS的視頻流)關(guān)聯(lián)的清單文件中哪些分塊定位符適合預(yù)解析的簡單算法。在這情況下,時間上接近于當(dāng)前正被觀看的分塊1000的分塊1001適合預(yù)解析。在時間上更遠(yuǎn)離當(dāng)前正被觀看的分塊定位的時間分塊(1002)(仍)不適合預(yù)解析。在一個實施例中,客戶機可使用限定時間距離的時間接近參數(shù)。時間接近參數(shù)可被用于確定清單文件中識別的哪些分塊在時間上極接近于當(dāng)前正被客戶機播放的分塊。落入該時間距離內(nèi)的、在清單文件中標(biāo)識的分塊可被標(biāo)記用于預(yù)解析。
[0115]圖11根據(jù)本發(fā)明另一實施例描繪用于預(yù)解析的合適分塊定位符的選擇。特別地,圖11描繪供分塊選擇器確定與品質(zhì)上分塊的視頻關(guān)聯(lián)的清單文件中哪些分塊定位符適合預(yù)解析的簡單算法。在這情況下,與品質(zhì)層1101(其品質(zhì)(在品質(zhì)級別上)接近當(dāng)前正被觀看的品質(zhì)(1100))關(guān)聯(lián)的分塊定位符適合預(yù)解析。與品質(zhì)層1102(其具有與當(dāng)前正被觀看的品質(zhì)遠(yuǎn)離的品質(zhì))關(guān)聯(lián)的分塊定位符不適合預(yù)解析。在一個實施例中,客戶機可使用限定品質(zhì)距離的品質(zhì)接近參數(shù)。品質(zhì)接近參數(shù)可用于確定清單文件中識別的哪些分塊在品質(zhì)上極接近于當(dāng)前正被客戶機播放的分塊。落入離當(dāng)前觀看的分段該品質(zhì)接近距離內(nèi)的、在清單文件中識別的分塊可被標(biāo)記用于預(yù)解析。
[0116]圖12根據(jù)本發(fā)明又一實施例描繪用于預(yù)解析的合適分塊定位符的選擇。特別地,圖12描繪供分塊選擇器確定與空間上分塊的視頻關(guān)聯(lián)的清單文件中哪些分塊定位符適合預(yù)解析的簡單算法。該算法確定空間分塊的矩陣,其中每一空間分塊與被空間分塊的矩陣所覆蓋的總區(qū)域內(nèi)特定區(qū)域(由虛線形成)的內(nèi)容關(guān)聯(lián)。用戶可選擇并且觀看一個特定空間分塊1201。因此,當(dāng)用戶開始與顯示在終端上的內(nèi)容交互時(例如經(jīng)由平移操作),很有可能與正被觀看的分塊直接接壤的一個或多個分塊將要被用戶選擇用于播放。在這場合下,適合預(yù)解析的空間分塊定位符直接定位于被觀看的分塊周圍。因此,如果用戶瀏覽信息指示與特定區(qū)域X,y關(guān)聯(lián)的空間分塊被播放,分塊選擇器可選擇一組另外的分塊定位符,例如與位置(χ-1, y) (χ-1, y-1) (x_l, y+1) (x, y+1) (χ, y-1) (Sx+1, y) (x+1, y-1) (x+1, y+1)處的區(qū)域關(guān)聯(lián)的空間分塊定位符,作為適合預(yù)解析的分塊定位符。以用戶瀏覽信息為基礎(chǔ),分塊選擇器可確定其他空間分塊(仍)不適合預(yù)解析。在一個實施例中,客戶機可使用限定空間距離的空間接近參數(shù)。與位于離當(dāng)前觀看的空間分塊該空間接近距離內(nèi)的區(qū)域關(guān)聯(lián)的空間分塊可被標(biāo)記用于預(yù)解析。
[0117]圖13根據(jù)本發(fā)明一個實施例描繪清單文件的至少一部分,其包括被標(biāo)記用于預(yù)解析的未解析分塊定位符1302(作為URL的一部分)。在這特定實施例中,內(nèi)容提供商或⑶N提供商可插入標(biāo)記1301a、1301b用于標(biāo)記清單文件1300內(nèi)的特定分塊定位符。這些標(biāo)記可以分塊瀏覽統(tǒng)計為基礎(chǔ)來插入,使得受歡迎的分塊(例如被經(jīng)常請求的分塊)能夠被客戶機以清單文件中標(biāo)記為基礎(chǔ)來識別。這種標(biāo)記將分塊定位符識別為適合預(yù)解析。在一個實施例中,標(biāo)記可與評分值(例如受歡迎分值)關(guān)聯(lián),使得未解析的分塊定位符可依照評分來分級。這些標(biāo)記可從而提供評分方案供分塊選擇器選擇一個或多個另外的分塊定位符用于未來的分塊請求。通過這種方式,與高受歡迎分值關(guān)聯(lián)的未解析的分塊定位符可比具有較低受歡迎分值的那些被更早地預(yù)解析。在一個實施例中,內(nèi)容提供商或⑶N可將這些標(biāo)記插入清單文件中。在另一實施例中,內(nèi)容提供商或CDN可產(chǎn)生新標(biāo)記的清單文件。
[0118]應(yīng)理解,針對任何一個實施例描述的任何特征可被單獨使用,或與所描述的其他特征結(jié)合使用,并且也可與任何其他實施例或任何其他實施例的組合的一個或多個特征結(jié)合使用。
[0119]本發(fā)明一個實施例可實現(xiàn)為用于與計算機系統(tǒng)一起使用的程序產(chǎn)品。程序產(chǎn)品的程序限定實施例的功能(包括本文所描述的方法)并且能夠包含在多種計算機可讀的存儲介質(zhì)上。例示性的計算機可讀存儲介質(zhì)包括,但不限于:(i)信息永久存儲于其上的不可寫存儲介質(zhì)(例如計算機內(nèi)只讀存儲裝置,諸如可由CD-ROM驅(qū)動讀取的CD-ROM碟、閃存存儲器、ROM芯片或任何類型的固態(tài)非易失性半導(dǎo)體存儲器);以及(ii)可改變的信息存儲于其上的可寫存儲介質(zhì)(例如磁盤驅(qū)動器內(nèi)的軟盤、硬盤驅(qū)動、或任何類型的固態(tài)隨機存取半導(dǎo)體存儲器)。本發(fā)明并不限定于上面描述的實施例,而可以在附隨權(quán)利要求的范圍內(nèi)被改變。
【權(quán)利要求】
1.一種用于以清單文件為基礎(chǔ)使能分塊內(nèi)容的流送的方法,所述清單文件包括一個或多個分塊標(biāo)識符以及一個或多個關(guān)聯(lián)的分塊定位符,所述分塊定位符用于定位一個或多個配置成向所述客戶機傳遞一個或多個分塊的傳遞節(jié)點,所述分塊由所述分塊標(biāo)識符識別,所述方法包括: 以所述清單文件中至少一個分塊標(biāo)識符為基礎(chǔ)請求至少一個分塊的傳遞; 以所述至少一個分塊標(biāo)識符為基礎(chǔ),從所述清單文件中選擇至少一個另外的分塊標(biāo)識符,所述另外的分塊標(biāo)識符與至少一個期望的未來分塊請求關(guān)聯(lián);以及, 預(yù)解析與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第一分塊定位符的至少一部分以獲得與所述第一分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息。
2.根據(jù)權(quán)利要求1所述的方法,其中所述網(wǎng)絡(luò)信息包括: 關(guān)于與所述第一分塊定位符的至少一部分關(guān)聯(lián)的網(wǎng)絡(luò)地址的至少一部分的信息;和/或,與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第一分塊定位符是指向用于與所述期望的未來分塊請求關(guān)聯(lián)的分塊的傳遞的傳遞節(jié)點,還是指向用于所述期望的未來分塊請求的重定向的網(wǎng)絡(luò)節(jié)點的信息;和/或,與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第二分塊定位符的至少一部分。
3.根據(jù)權(quán)利要求1或2所述的方法,還包括: 如果所述第一分塊定位符指向用于重定向的網(wǎng)絡(luò)節(jié)點,將所述第一分塊定位符的至少一部分預(yù)解析為與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的第二分塊定位符的至少一部分。
4.根據(jù)權(quán)利要求1至3中任一項所述的方法,包括: 以所述網(wǎng)絡(luò)信息為基礎(chǔ)修改所述清單文件。
5.根據(jù)權(quán)利要求2或3所述的方法,包括: 以所述第二分塊定位符的所述至少一部分為基礎(chǔ)修改所述清單文件,優(yōu)選地所述修改包括以所述第二分塊定位符的所述至少一部分替換所述第一分塊定位符的至少一部分的步驟。
6.根據(jù)權(quán)利要求1至5中任一項所述的方法,其中所述預(yù)解析包括: 發(fā)送針對網(wǎng)絡(luò)信息的請求至與所述第一分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點; 接收響應(yīng)消息; 以所述響應(yīng)消息為基礎(chǔ)確定與所述所選的另外的分塊標(biāo)識符關(guān)聯(lián)的所述第一分塊定位符是指向用于與所述期望的未來分塊請求關(guān)聯(lián)的分塊的傳遞的傳遞節(jié)點還是指向用于所述期望的未來分塊請求的重定向的網(wǎng)絡(luò)節(jié)點。
7.根據(jù)權(quán)利要求6所述的方法,其中所述針對網(wǎng)絡(luò)信息的請求包括下列項的至少一個:優(yōu)選為HTTP HEAD消息或RTSP DESCRIBE消息的HTTP、RTSP和/或DNS協(xié)議消息;和/或,其中所述響應(yīng)消息為HTTP或RTSP響應(yīng)消息。
8.根據(jù)權(quán)利要求1至7中任一項所述的方法,其中所述預(yù)解析在所述至少一個分塊的傳遞的至少一部分期間作為后臺過程執(zhí)行。
9.根據(jù)權(quán)利要求1至8中任一項所述的方法,包括: 以如下項的至少一部分為基礎(chǔ)選擇所述至少一個另外的分塊標(biāo)識符:用戶資料、用戶瀏覽歷史、用戶與分塊內(nèi)容的交互和/或客戶機和/或用戶的地理位置。
10.根據(jù)權(quán)利要求1至9中任一項所述的方法,其中所述清單文件包括用于將一個或多個另外的分塊標(biāo)識符標(biāo)記用于未來分塊請求的一個或多個標(biāo)記,優(yōu)選地所述標(biāo)記包括評分值。
11.根據(jù)權(quán)利要求1至10中任一項所述的方法,其中所述預(yù)解析包括: 傳輸針對網(wǎng)絡(luò)信息的請求至第一內(nèi)容傳遞網(wǎng)絡(luò)(⑶NI),所述請求優(yōu)選為HTTP HEAD消息或RTSP DESCRIBE消息,所述請求包括至少所述所選的另外的分塊標(biāo)識符; 所述第一內(nèi)容傳遞網(wǎng)絡(luò)(CDNl)傳輸交互CDN請求消息至第二內(nèi)容傳遞網(wǎng)絡(luò)(CDN2)以供協(xié)商由所述所選的另外的分塊標(biāo)識符識別的所述分塊的未來傳遞,所述交互CDN請求消息包括所述所選的另外的分塊標(biāo)識符,優(yōu)選為DELIVERY REQUEST消息; 所述第一內(nèi)容傳遞網(wǎng)絡(luò)CDNl接收交互CDN響應(yīng)消息,所述交互CDN響應(yīng)消息包括位置信息,優(yōu)選為DELIVERY RESPONSE消息,所述位置信息優(yōu)選為與所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2中一個或多個傳遞節(jié)點關(guān)聯(lián)的網(wǎng)絡(luò)地址或分塊定位符,所述一個或多個傳遞節(jié)點配置成向客戶機傳遞由所述所選的另外的分塊標(biāo)識符識別的分塊; 其中,可選地,所述交互CDN請求消息包括優(yōu)選為標(biāo)志的指示符,所述指示符允許所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2確定所述交互CDN請求消息與分塊定位符的所述預(yù)解析關(guān)聯(lián),或其中所述交互⑶N請求消息以HTTP HEAD消息或RTSP DESCRIBE消息為基礎(chǔ)來實現(xiàn),從而允許所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2確定所述交互CDN消息與分塊定位符的所述預(yù)解析關(guān)聯(lián)。
12.—種客戶機,用于在網(wǎng)絡(luò)中一個或多個傳遞節(jié)點上托管的分塊內(nèi)容的客戶機控制的流送,所述客戶機包括:清單高速緩沖存儲器,其用于存儲清單文件的至少一部分,所述清單文件包括一個或多個分塊標(biāo)識符以及一個或多個關(guān)聯(lián)的分塊定位符,所述分塊定位符用于定位一個或多個配置成向所述客戶機傳遞一個或多個分塊的傳遞節(jié)點,所述分塊由所述分塊標(biāo)識符識別;分塊檢索功能元件,其用于以所述清單文件中至少一個分塊標(biāo)識符為基礎(chǔ)請求至少一個分塊的傳遞; 分塊選擇器,其配置用于以所述至少一個分塊標(biāo)識符為基礎(chǔ)從所述分塊檢索功能元件中選擇與至少一個期望的未來分塊請求關(guān)聯(lián)的至少一個另外的分塊標(biāo)識符;以及, 預(yù)解析功能元件,其用于預(yù)解析與所述至少一個另外的分塊標(biāo)識符關(guān)聯(lián)的第一分塊定位符的至少一部分以獲得與所述第一分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息。
13.—種網(wǎng)絡(luò)節(jié)點,用于與根據(jù)權(quán)利要求12所述的客戶機一起使用,所述網(wǎng)絡(luò)節(jié)點與第一內(nèi)容傳遞網(wǎng)絡(luò)(CDNl)關(guān)聯(lián)并且配置成: 從客戶機接收針對與分塊定位符關(guān)聯(lián)的網(wǎng)絡(luò)信息的請求,優(yōu)選地所述請求包括HTTPHEAD消息或RTSP DESCRIBE消息,所述分塊定位符與識別分塊的分塊標(biāo)識符關(guān)聯(lián); 傳輸交互⑶N請求消息至第二內(nèi)容傳遞網(wǎng)絡(luò)(⑶N2)以供協(xié)商所述分塊的未來的傳遞,所述交互CDN請求消息包括所述分塊定位符和/或分塊標(biāo)識符的至少一部分,優(yōu)選為DELIVERY REQUEST 消息; 其中所述交互CDN請求消息包括標(biāo)志或其中所述交互CDN請求消息基于HTTP HEAD消息或RTSP DESCRIBE消息,所述標(biāo)志或HTTP HEAD消息或RTSP DESCRIBE消息允許所述第二內(nèi)容傳遞網(wǎng)絡(luò)CDN2確定所述交互CDN消息與所述客戶機所請求的分塊定位符的所述預(yù)解析關(guān)聯(lián)。
14.一種數(shù)據(jù)結(jié)構(gòu),優(yōu)選為清單文件,用于在根據(jù)權(quán)利要求12所述的客戶機中使用,所述數(shù)據(jù)結(jié)構(gòu)包括一個或多個分塊標(biāo)識符以及一個或多個關(guān)聯(lián)的分塊定位符,所述分塊定位符優(yōu)選為URL,所述分塊定位符用于定位一個或多個配置成向所述客戶機傳遞一個或多個分塊的傳遞節(jié)點,所述分塊由所述一個或多個分塊標(biāo)識符識別;所述數(shù)據(jù)結(jié)構(gòu)還包括一個或多個與所述分塊標(biāo)識符的一個或多個關(guān)聯(lián)的標(biāo)記,所述一個或多個標(biāo)記允許所述客戶機中的預(yù)解析功能元件選擇與一個或多個期望的未來分塊請求關(guān)聯(lián)的一個或多個另外的分塊標(biāo)識符,優(yōu)選地所述一個或多個標(biāo)記與評分值關(guān)聯(lián),所述評分值優(yōu)選為受歡迎分值。
15.一種計算機程序產(chǎn)品,包括軟件代碼部分,該軟件代碼部分配置用于當(dāng)其在計算機的存儲器中運行時,執(zhí)行根據(jù)權(quán)利要求1至11中任一項所述的方法步驟。
【文檔編號】H04L29/06GK104137564SQ201280070941
【公開日】2014年11月5日 申請日期:2012年12月27日 優(yōu)先權(quán)日:2011年12月29日
【發(fā)明者】M.O.范德文特, R.范布蘭登伯格, O.A.尼亞穆特 申請人:皇家Kpn公司, 荷蘭應(yīng)用自然科學(xué)研究組織