專利名稱:提供多個終端自單播傳輸漸次轉(zhuǎn)變的控制裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及信號分配系統(tǒng),更尤其涉及用于在此等系統(tǒng)中控制傳輸帶寬的技術(shù)。
背景技術(shù):
信號分配系統(tǒng)通常被配置以支持各種傳輸協(xié)議來傳送內(nèi)容。終端,被耦合至分配系統(tǒng)或為分配系統(tǒng)的一部分,可能接收到相同的內(nèi)容。例如,該內(nèi)容可包括視頻和相關(guān)音頻。當(dāng)相同的內(nèi)容在不同時間被提供至不同終端或者被不同終端接收時,無效率的情況出現(xiàn)。對該等系統(tǒng)的優(yōu)化可得到更好的帶寬利用率
發(fā)明內(nèi)容
在單播傳輸中,單個內(nèi)容流被傳輸至不同的終端。對于組播傳輸,系統(tǒng)的多個終端加入指定組播組及該組中的所有終端接收相同的傳輸內(nèi)容流。傳輸視頻內(nèi)容至多個終端的信號分配系統(tǒng)的一個舉例為在數(shù)字用戶線路(DSL)或光纖上提供互聯(lián)網(wǎng)協(xié)議電視(IPTV)的系統(tǒng)。在該系統(tǒng)中,訂閱用戶或者其他用戶被提供用于與網(wǎng)絡(luò)設(shè)備進(jìn)行通信的接口設(shè)備,諸如機頂盒(STB)或接收裝置,該網(wǎng)絡(luò)設(shè)備可包括DSL接入復(fù)用裝置(DSLAM)。該接口設(shè)備被配置來允許該訂閱用戶在給定地點、在被耦合至該接口設(shè)備的電視或其他顯示設(shè)備上接收對應(yīng)于所選擇頻道的內(nèi)容流。為接收IPTV系統(tǒng)中給定的所選頻道,該接口設(shè)備通常會加入相應(yīng)的組播流。2008年10月30日提交的、題為“快速信道改變請求處理”的美國專利申請序列號12/26,175,同此一起被轉(zhuǎn)讓并在此以引用的方式并入本文,公開了顯著降低在用戶輸入頻道改變指令與接收到用于新信道的可解碼組播數(shù)據(jù)之間的延遲的說明性實施例。在IPTV系統(tǒng)及其他信號分配系統(tǒng)中,將單播流分發(fā)至該系統(tǒng)的各終端經(jīng)常是必要的。例如,單播流可用于支持應(yīng)用,諸如視頻點播(VOD)或網(wǎng)絡(luò)個人視頻錄制(NPVR)。這就產(chǎn)生一個問題,因為許多需要的單播流可消耗過多網(wǎng)絡(luò)帶寬。盡管通過將關(guān)于相同內(nèi)容的多個單播流合為一個組播流,帶寬可被顯著降低,但在該方法中存在許多挑戰(zhàn)。例如,多個終端可能都在通過各自的單播流接收相同的內(nèi)容,該多個單播流是時域上互相偏離的。在該情況下,沒有有效的機制可以用來將所有單播流合為一個組播流,而不會為該等終端中的一個或多個終端帶來相當(dāng)程度的延遲。本發(fā)明在一個或多個說明性實施例中提供用于在IPTV系統(tǒng)中或者其他類型的信號分配系統(tǒng)中,將多個終端從單播漸次轉(zhuǎn)變至組播傳輸?shù)募夹g(shù)。根據(jù)本發(fā)明的一個方面,在視頻前端中或信號分配系統(tǒng)的其他部件中的控制裝置,可用于檢測條件,在所述條件中給定內(nèi)容流至多個終端的單播傳輸滿足設(shè)定的閾值。該控制裝置啟動所述給定內(nèi)容流的組播傳輸,以響應(yīng)所檢測的條件,并將所述多個終端中至少一個轉(zhuǎn)變至所述組播傳輸。例如,該控制裝置可將所述多個終端中至少一個,確定為先于接收所述組播傳輸?shù)钠渌K端中的一個或多個、接收所述給定內(nèi)容流的所述組播傳輸以代替其單播傳輸?shù)慕K端。該控制裝置然后停止至所確定終端的所述單播傳輸,若該單播傳輸已經(jīng)被啟動;啟動組播傳輸;切換該所確定終端至該組播傳輸;及隨后將所述其他終端中一個或多個轉(zhuǎn)變至該組播傳輸。第一說明性實施例提供了在此被稱為引導(dǎo)組播(lead multicast)技術(shù)的內(nèi)容。在該技術(shù)中,所確定終端為該多個終端的引導(dǎo)終端,也即,該終端通過其單播傳輸,在時間上、相對其他終端最早地接收或者否則被指定接收給定內(nèi)容流。當(dāng)組播傳輸被啟動時,該引導(dǎo)終端加入該組播,并且,該給定內(nèi)容流經(jīng)其各自單播傳輸被傳輸至其他終端中各終端的速率,利用已知的速率調(diào)整機制,諸如削弱(denting)或突發(fā),被增加。在此,在該上下文及本文他處所運用的術(shù)語“速率”旨在被廣義地解釋,以覆蓋有效數(shù)據(jù)速率或?qū)嶋H數(shù)據(jù)速率。通過舉例方式,有效數(shù)據(jù)速率可利用削弱機制被增加,該削弱機制不會導(dǎo)致實際數(shù)據(jù)速率的增加,而實際數(shù)據(jù)速率可運用突發(fā)機制被增加。其他終端被漸次轉(zhuǎn)變至組播傳輸,基于它們各自的單播何時“趕上”至引導(dǎo)終端的組播傳輸。第二說明性實施例提供了在此被稱為拖尾組播(trail multicast)技術(shù)的內(nèi)容。 在該技術(shù)中,所確定終端為多個終端中的拖尾(trailing)終端,也即,該終端通過其單播傳輸,在時間上相對于其他終端最晚接收或者否則被指定接收給定內(nèi)容流。組播傳輸以大于各單播傳輸速率的速率被啟動,再次運用已知速率調(diào)整技術(shù),諸如削弱或突發(fā)。當(dāng)該組播傳輸被啟動時,該拖尾終端加入該組播傳輸,并且,給定內(nèi)容流經(jīng)其各自單播傳輸被傳輸至其他終端中各終端的速率保持未顯著改變,直至恰在加入該組播傳輸之前,此時這些速率中的一個或多個可能被增加,例如被增加至該組播傳輸?shù)乃俾省F渌K端被漸次轉(zhuǎn)變至組播傳輸,基于組播傳輸何時“趕上”它們各自的單播傳輸。在其他終端被轉(zhuǎn)變至組播傳輸后,該組播傳輸?shù)乃俾剩鄬τ谄湓谄渌K端轉(zhuǎn)變之前的速率,可能被降低。例如,組播傳輸?shù)挠行俾士赡鼙唤档椭猎摰绕渌K端中一個的單播傳輸?shù)乃俾?。第三說明性實施例提供了在此被稱為組合式引導(dǎo)和拖尾組播的技術(shù)的內(nèi)容。在該技術(shù)中,引導(dǎo)終端和拖尾終端均被確定。第一組播傳輸被啟動,引導(dǎo)終端被切換至該第一組播傳輸。同樣,第二組播傳輸被啟動,拖尾終端被切換至該第二組播傳輸。隨后,剩余終端中的每一個自其單播傳輸被轉(zhuǎn)變至該第一組播傳輸與第二組播傳輸中的一個。該第二組播傳輸可擁有大于第一組播傳輸速率的速率。同樣,拖尾終端,以及已被自其各自的單播傳輸轉(zhuǎn)變至第二組播傳輸?shù)慕K端中的任意其他終端,可能隨后自該第二組播傳輸被轉(zhuǎn)變至第一組播傳輸。說明性實施例有利地降低了信號分配系統(tǒng)中的帶寬消耗,而沒有引起相當(dāng)程度的延遲或其他不利損害,諸如用戶終端所接收到的視頻或其他內(nèi)容流中的停滯(freezing)或丟棄。從附圖及以下詳細(xì)描述中,本發(fā)明的該等及其它特征和優(yōu)勢將會變得更加明顯。
圖I示出根據(jù)本發(fā)明的信號分配系統(tǒng)的說明性實施例;圖2為在說明性實施例中圖I信號分配系統(tǒng)的控制裝置的更詳細(xì)視圖;圖3為示出在說明性實施例中圖2的控制裝置的操作的流程圖;圖4示出圖I系統(tǒng)的多個用戶終端通過各自的時移(time-shifted)單播流接收相同內(nèi)容的舉例;
圖5示出圖4中的終端運用本發(fā)明的引導(dǎo)組播技術(shù)漸次轉(zhuǎn)變至單個組播流的方法;圖6示出圖4中的終端按照本發(fā)明的拖尾組播技術(shù)漸次轉(zhuǎn)變至單個組播流的方法;圖7示出圖4中的終端按照本發(fā)明的組合式引導(dǎo)與拖尾組播技術(shù)漸次轉(zhuǎn)變至單個組播流的方法;圖8為本發(fā)明的另一個實施例中的信號分配系統(tǒng)的方框圖。
具體實施例方式在此,結(jié)合關(guān)于信號分配系統(tǒng)及相關(guān)的單播至組播轉(zhuǎn)變技術(shù)的說明性實施例,本 發(fā)明將被描述。然而,應(yīng)當(dāng)理解,本發(fā)明不限于結(jié)合所描述的特定系統(tǒng)及技術(shù)使用,但反而更普遍適用于任何信號分配系統(tǒng),在該系統(tǒng)中,提供多個終端從單播到組播傳輸?shù)母倪M(jìn)的轉(zhuǎn)變以減少該系統(tǒng)中的帶寬消耗,是值得期望的。例如,盡管在此主要在IPTV系統(tǒng)的上下文中被描述,但本發(fā)明的技術(shù)也可以直接被適用于其他類型的信號分配系統(tǒng),包括,例如,網(wǎng)絡(luò)電視(即,互聯(lián)網(wǎng)電視)系統(tǒng),蜂窩系統(tǒng),有線電視系統(tǒng),衛(wèi)星系統(tǒng),基于地面綜合服務(wù)數(shù)字廣播(Integrated Services Digital Broadcasting-Terrestrial, ISDB-T)系統(tǒng)和巴西數(shù)字電視(Sistema Brasileiro de TeleVlSaO Digital, SBTVD)標(biāo)準(zhǔn)等。此外,盡管主要在視頻分配的上下文中被闡述,所公開的技術(shù)也可以被應(yīng)用到其他類型信息的傳輸,如音頻或任意組合的其它類型的信號。圖I示出信號分配系統(tǒng)100,其包括通過網(wǎng)絡(luò)104被耦合至多個用戶終端106-1、106-2、. . . 106-N的視頻源102。視頻源102包括被耦合至控制裝置112的一個或多個服務(wù)器110。如下將更詳細(xì)描述,該控制裝置被配置,來以一種有利地避免在該多個終端中的任意特定一個所接收和顯示的內(nèi)容中引入任何顯著的延遲、停滯、丟棄或其他不期望損害的方式,實現(xiàn)用戶終端106中的多個用戶終端從各自、單獨的相同內(nèi)容流的單播傳輸?shù)浇邮赵搩?nèi)容流的單個組播傳輸?shù)臐u次轉(zhuǎn)變。信號分配系統(tǒng)100可包括,通過舉例,IPTV系統(tǒng)。視頻源102可包括IPTV系統(tǒng)的其他傳統(tǒng)服務(wù)提供者設(shè)備,包括,例如,前端系統(tǒng),衛(wèi)星,服務(wù)器,網(wǎng)關(guān)路由器等,以此所公開方式被適當(dāng)修改。盡管在本實施例中的控制裝置112被顯示為與一個或多個服務(wù)器110相分離,在其它實施例中,該控制裝置可被實現(xiàn)于這樣的一個或多個服務(wù)器中,或者可被安排到視頻源102的外部。該視頻源為在此更一般地被稱為信號分配系統(tǒng)的“傳輸裝置”的裝置的舉例。這樣的傳輸裝置應(yīng)被理解為包括提供通過網(wǎng)絡(luò)至多個終端的單播和組播傳輸?shù)娜魏翁幚硌b置或裝置集合。用戶終端106可能都包括接口設(shè)備,諸如IPTV系統(tǒng)中的STB,及可能地關(guān)聯(lián)顯示裝置,諸如電視?;蛘?,用戶終端可包括,例如,計算機、移動電話、個人數(shù)字助理(PDA),無線設(shè)備,或其他基于處理裝置的設(shè)備的任何組合。該等設(shè)備在此也可被稱為用戶接口設(shè)備或“用戶”。該類型的給定接口或終端設(shè)備允許一個或多個用戶訪問通過信號分配系統(tǒng)的其它裝置分發(fā)給該設(shè)備的內(nèi)容流?!敖K端”,如在此被稱謂,旨在被廣義地解釋為任何類型的處理設(shè)備或設(shè)備集合,該處理設(shè)備或設(shè)備集合在信號分配系統(tǒng)通過網(wǎng)絡(luò)接收單播或組播傳輸,以向用戶顯示或其他展示。該終端一般將包括被耦合至存儲裝置的處理裝置,以及用于通過網(wǎng)絡(luò)與視頻源進(jìn)行通信的收發(fā)器電路,并且在說明性的實施例中,通常將包括接收和處理來自控制裝置的、指示終端從單播接收切換至組播接收的一個或多個指令的功能。網(wǎng)絡(luò)104可包括任何類型的通信網(wǎng)絡(luò),其適合于傳輸與提供電視服務(wù)或其他類型的內(nèi)容分發(fā)服務(wù)相關(guān)聯(lián)的信號,本發(fā)明并不受限于此。例如,網(wǎng)絡(luò)104的部分可包括諸如互聯(lián)網(wǎng)的廣域網(wǎng)、城域網(wǎng)、局域網(wǎng)、有線電視網(wǎng)絡(luò)、電話網(wǎng)絡(luò)、衛(wèi)星網(wǎng)絡(luò),以及這些或其它網(wǎng)絡(luò)的部分或組合。結(jié)合圖I所示出和描述的特定信號分配系統(tǒng)配置,應(yīng)被看作該系統(tǒng)的說明性示例,并且,應(yīng)當(dāng)理解,本發(fā)明可利用其他類型和配置的系統(tǒng)裝置來被實現(xiàn)。在本發(fā)明的另外一個實施例中,信號分配系統(tǒng)的更詳細(xì)的示例將在下文結(jié)合圖8被描述。現(xiàn)參考圖2,圖I系統(tǒng)的控制裝置112的一個可能實現(xiàn)被示出。在該實施例中,控制裝置包括被耦合至存儲裝置202的處理裝置200,還包括接口電路204。在該控制裝置中還包括模塊210-216,更具體的包括單播控制模塊210,組播控制模塊212,列表生成與維護 模塊214,引導(dǎo)和/或拖尾選擇模塊216。處理裝置200可被實現(xiàn)為微處理器、微控制器、專用集成電路(ASIC)或者其它類型的處理設(shè)備,以及該等設(shè)備的部分或組合。存儲裝置202可包括電子的隨機存取存儲器(RAM),只讀存儲器(R0M),基于磁盤的存儲器,或其他類型的存儲設(shè)備,以及該等設(shè)備的部分或組合。處理裝置和存儲裝置被用于一個或多個軟件程序的存儲和執(zhí)行,該(等)軟件程序用于利用在此所公開的技術(shù)實現(xiàn)多個終端從單播到組播傳輸?shù)臐u次轉(zhuǎn)變。各模塊210-216至少部分地可運用該軟件被實現(xiàn)。存儲裝置202可被視為——在此更一般地被稱為計算機程序產(chǎn)品,或者,仍更一般地被稱為計算機可讀的存儲介質(zhì),其中包括可執(zhí)行程序代碼一的舉例。計算機可讀存儲介質(zhì)的其他舉例可包括磁盤及其他類型的磁介質(zhì)或光介質(zhì)的任意組合。處理裝置200、存儲裝置202及接口電路204可包括眾所周知的傳統(tǒng)電路,該電路經(jīng)適當(dāng)修改以按照在此描述的方式運行。該電路的傳統(tǒng)方面是被本領(lǐng)域技術(shù)人員所公知的,因此,在此,將不被詳細(xì)描述。應(yīng)理解的是,如在此所公開的給定控制裝置,可運用不同于圖2中示例性裝置中所具體示出的裝置和模塊,來實現(xiàn)。在說明性實施例中,控制裝置112的運行,現(xiàn)在將參照圖3至圖7被描述。該等說明性實施例實現(xiàn)了在此被稱為帶寬“退火(annealing) ”技術(shù)的技術(shù),其中,一個或多個特定終端在一組接收或被指定接收給定內(nèi)容流的各自單播傳輸?shù)慕K端中被識別,一個被識別的終端首先被轉(zhuǎn)變至組播傳輸,而該組中其他終端的一個或多個漸次被轉(zhuǎn)變至該組播傳輸?,F(xiàn)參考圖3,在一個實施例中,控制裝置112的操作被示出。在該實施例中,所應(yīng)用的具體退火技術(shù)被稱為引導(dǎo)組播退火,因為如上所述的所識別的終端為該組中的引導(dǎo)終端,也即,該終端在時間上相對該組中的其他終端最早通過其單播傳輸接收給定內(nèi)容流。在該實例中的引導(dǎo)組播技術(shù)包括所示的步驟300至316。在步驟300中,控制裝置112被觸發(fā)以檢查通過各自的單播傳輸接收相同視頻流的用戶。該觸發(fā)可包括,例如,定期(例如,由時鐘驅(qū)動),或事件驅(qū)動(例如,用戶的視頻流請求引起該控制裝置檢查接收該相同流的其他用戶)。如前面所示,在此上下文中的術(shù)語“用戶”是指終端106的各個終端。
在步驟302中,關(guān)于通過各自的單播傳輸接收相同視頻流的用戶集合是否已達(dá)到設(shè)定閾值的判定被做出。這可能包括,例如,確定是否指定的最小數(shù)量的用戶通過各自的單播傳輸正在接收或被指定接收相同的視頻流。在其它實施例中,該設(shè)定閾值可能更復(fù)雜,可能包括,舉個例子,相鄰用戶對之間的最大時間偏移。也即,除了要求指定最小數(shù)量的終端通過單播接受或被指定接收相同內(nèi)容流之外,在該等單播之間的時間上的偏移量,可能被要求在指定的最大值之內(nèi)。這可幫助確保該等終端均可轉(zhuǎn)變至組播,而不要求在任何特定終端中過量的緩沖。該最大時間偏移可以時間單位,或者依據(jù)幀、數(shù)據(jù)包、字節(jié)等的數(shù)量被表不。若在步驟302中,被判定該設(shè)定閾值未被滿足,則在步驟304中,系統(tǒng)繼續(xù)向各用戶發(fā)送分離的視頻流單播傳輸。另一方面,若在步驟302中,被判定該設(shè)定閾值已經(jīng)被滿足,該過程如所示前進(jìn)至步驟306。應(yīng)注意的是,在步驟300中的檢查可不時地被重復(fù)觸發(fā),可能導(dǎo)致步驟302中閾值判定的一次或多次重復(fù)。在步驟306中,關(guān)于通過各自的單播傳輸接收相同視頻流的用戶的列表被創(chuàng)建。該列表一般將包括那些接收相同視頻內(nèi)容、能夠被轉(zhuǎn)變至組播的用戶,因此,可排除一些用戶——也正接收該相同視頻內(nèi)容,但沒有足夠的緩沖能力來支持轉(zhuǎn)變至組播。然后該相同內(nèi)容的組播流被創(chuàng)建,及在該列表中的用戶漸次轉(zhuǎn)變至該組播流。在引導(dǎo)組播退火技術(shù)中,該列表的用戶中的引導(dǎo)者被選擇,并且,旨在代替至該所選擇用戶的單播傳輸?shù)慕M播流被啟動,如在步驟307中所示。然后,至該所選擇用戶的單播流被停止,及該用戶被指示加入該組播流。一旦該所選擇用戶加入組播,組播傳輸代替至該所選擇用戶的單播傳輸,因此,該用戶從單播傳輸被轉(zhuǎn)變至組播傳輸。在該特定引導(dǎo)組播實施例中,引導(dǎo)者為在時間上相對該組終端中其他終端最早通過其單播傳輸接收該給定內(nèi)容流的終端,也稱作如上的引導(dǎo)終端。應(yīng)注意的是,終端一般不假定支持同時接收單播和組播,因為此可能會超出關(guān)聯(lián)的用戶環(huán)路中的可用帶寬。由于加入組播最多可能需要幾百毫秒(例如,從發(fā)送IGMP加入請求,直到接收到第一個組播包),當(dāng)單播領(lǐng)先組播至少那么多時間時,該單播的停止可能會發(fā)生。一個實現(xiàn)該目的的方法為在停止該單播及指示該所選擇終端加入組播之前,通過運用削弱(例如,通過跳過比較不重要的視頻部分,增加有效數(shù)據(jù)速率)或突發(fā)(例如,增加實際數(shù)據(jù)速率),提高至所選擇終端的單播流的速率。其它終端隨后以漸次的方式從單播傳輸轉(zhuǎn)變至組播傳輸,基于它們各自的單播何時“趕上”至引導(dǎo)終端的組播傳輸。這部分的過程在步驟308到316被示出。在步驟308中,關(guān)于在步驟306所創(chuàng)建列表中的任何特定剩余單播用戶是否趕上如在307所示的被發(fā)送至步驟306中所識別的引導(dǎo)者的組播的判定被做出。若在列表中,沒有用戶趕上組播,該過程轉(zhuǎn)移至步驟310。在該步驟中,至剩余用戶的各個用戶的單播傳輸速率被增加,運用已知的技術(shù),諸如削弱或突發(fā)。從步驟310開始,重復(fù)步驟308中的判定。若在步驟308中的判定為列表中剩余用戶中特定的一個已經(jīng)趕上組播,至該特定用戶的單播被停止,及該用戶被信號通知轉(zhuǎn)移至組播,及被發(fā)送組播信號,如在步驟312中所示。一旦用戶在步驟314中確認(rèn)轉(zhuǎn)移,在步驟316中,該用戶從該列表中被刪除的。然后,該過程返回至步驟310,以繼續(xù)至列表中剩下的用戶的更高速率的單播傳輸,直至它們中的一個或多個也趕上該組播。應(yīng)注意的是,在步驟314中的應(yīng)答是可選的,并可在其他實施例中被去除。例如,若由于某種原因,在步驟312中,用戶錯過轉(zhuǎn)移至組播的信號,該用戶將會發(fā)現(xiàn)單播已停止,并將其向視頻源報告,該視頻源然后可采取適當(dāng)?shù)拇胧┎襟E,諸如再次用信號通知該用戶以加入該組播。圖3流程圖中的各種操作可運用如圖2所示的相關(guān)的控制裝置模塊來實現(xiàn)。例如,在步驟304和310中的單播傳輸可被單播控制模塊210控制。類似地,在307所示的組播傳輸可被組播控制模塊212控制。在步驟306和316中被提及的列表產(chǎn)生和維護操作可通過模塊214被執(zhí)行,在步驟306中被提及的引導(dǎo)選擇操作可以通過模塊216被執(zhí)行。當(dāng)然,圖3的特定的處理操作及圖2的相關(guān)模塊配置僅用于說明的目的,不應(yīng)該被解釋為以任何 方式限制本發(fā)明的范圍。圖3的引導(dǎo)組播退火的詳細(xì)示例現(xiàn)將被描述,參考圖4和圖5。圖4示出至四個終端A、B、C和D各個終端的相同視頻內(nèi)容的單播傳輸。在該圖中,水平軸代表時間,垂直軸表示在視頻流中的位置,或者換句話說,所發(fā)送內(nèi)容中的偏移(例如,在相應(yīng)視頻文件中的字節(jié)偏移)。每個終端通過實線和虛線被表示。實線示出在終端處隨時間的視頻接收,虛線示出在該終端處隨時間的視頻消耗。對于給定終端,該兩條線之間的垂直間隔為在任何給定時間,在該終端處的視頻緩沖量。水平間隔為由該緩沖所引入的延遲(例如,從視頻包被終端接收到的時刻直至其被消耗)。盡管在該圖中顯示為直線,實線和虛線可以偏離該線性恒定比特率的表現(xiàn)。例如,實線周圍的波動可能由網(wǎng)絡(luò)抖動被引起,虛線周圍的波動可能由視頻幀具有不同大小、但以固定的幀速率被消耗的事實被引起。接收實線和消耗虛線之間的平均間隔應(yīng)足夠?qū)?,以保證——盡管波動,接收線將始終領(lǐng)先消耗線(例如,時間上更早,或在該圖中在其左側(cè))。這將避免在所顯示視頻中的停滯、跳躍及其它損害。從圖4可知,終端A為引導(dǎo)終端,因為它在時間上相對其他終端B、C和D,最早通過其單播傳輸接收給定的內(nèi)容流。類似地,終端D為尾隨終端,因為它在時間上相對其他終端A、B和C,最晚通過其單播傳輸接收給定的內(nèi)容流。在該示例中,在水平軸上在給定的一對終端之間的時間偏移(例如,A和B),為在一個終端(例如,終端A)接收特定的數(shù)據(jù)包或視頻流的其他指定部分和按照時間在下一個終端(例如,終端B)接收該視頻流相同部分之間的時間差。現(xiàn)在參考圖5,圖3的引導(dǎo)組播過程的操作被說明。假設(shè)在步驟302中的閾值為四個或更多的終端,當(dāng)終端D開始接收或被指定接收其單播傳輸時,達(dá)到該閾值。應(yīng)注意的是D實際上并不需要接收其單播的任何部分,但實際可能僅請求通常經(jīng)由單播傳輸被傳遞到D的視頻內(nèi)容。該情況旨在通過“被指定接收”單播傳輸?shù)慕K端的一般敘述被覆蓋,它只是意味著該終端將接收如在此所公開的帶寬退火技術(shù)的、缺少單播傳輸?shù)膽?yīng)用。在該階段,終端列表包括終端A、B、C和D,終端A被指定為引導(dǎo)者。因此,終端A自單播被轉(zhuǎn)變至組播。該組播在圖5中示為終端A的實線的較厚部分,如所示從500點處開始。作為該轉(zhuǎn)變的一部分,服務(wù)裝置110停止發(fā)送單播至終端A,及該終端然后加入組播。應(yīng)注意的是,在該舉例中至引導(dǎo)終端的單播速率在其被停止之前,在短時間內(nèi)被增加,以便促進(jìn)自單播至組播的平滑過渡。其他終端開始以增加的速率接收視頻,例如,通過之前所述的削弱或突發(fā)。該情況通過終端B、C和D的接收實線所增加的斜率被示出。為說明目的,該圖中斜率的增加被夸大了,但是相對于正常的視頻率,通常將增加5%至25%。至終端B、C和D的、速率被增加的單播傳輸將最終允許該等終端趕上組播,在該實施例中,該組播以與以前至終端A的單播傳輸相同的速率傳輸。當(dāng)該等速率被增加的單播傳輸中每一個到達(dá)并超越組播傳輸時,該單播傳輸被停止及對應(yīng)的終端被切換至該組播,例如,被指示加入該組播。所有剩余終端B、C和D因而最終自單播被轉(zhuǎn)變至組播傳輸。如前所述,終端一般不被假定同時接收單播和組播。由于加入組播可能需花費幾百毫秒(例如,從發(fā)送IGMP加入請求直至接收第一組播包),當(dāng)單播領(lǐng)先組播(即,在該圖示中在其左邊)至少那么多時間時,單播的停止可發(fā)生。然而,若終端等待較長時間作為安全措施,沒有造成危害。例如,若僅當(dāng)單播領(lǐng)先兩秒時該單播被停止,可能不會有問題或者損失數(shù)據(jù)。 一旦所有終端已經(jīng)加入組播,每一終端B、C和D所需要的緩沖數(shù)量,通過在組播和其相應(yīng)的消費線之間的垂直間隔被給出。該垂直間隔顯著大于終端否則未加入該組播時所對應(yīng)的間隔,在拖尾終端D處最大。然而,現(xiàn)代設(shè)備通常具備大量可用存儲器,因此,該額外的緩沖需求不應(yīng)構(gòu)成問題。在本發(fā)明的該實施例的擴展中,新用戶請求相同的視頻內(nèi)容,在組播流被啟動后,或者甚至在所有用戶加入該組播之后。該用戶可能通過運用削弱或突發(fā),以增加的速率接收單播流,并且,一旦至該用戶的單播趕上該組播,該用戶被指示加入該組播。這樣,當(dāng)該操作開始時,帶寬退火不再局限于已經(jīng)接收視頻內(nèi)容的用戶。在本發(fā)明的進(jìn)一步實施例中,當(dāng)用戶做出視頻流的請求時,用戶在該請求中包括其可支持的最大緩沖的指示,及控制裝置112可運用該信息做出其決定,如在步驟302和306中所示。圖6示出在此被稱為拖尾組播退火的替代方法。在該方法中,當(dāng)終端D請求與當(dāng)前正經(jīng)由單播被提供至終端A、B和C的相同視頻流的單播傳輸時,決定被做出以轉(zhuǎn)變所有四個終端至一個共同的組播傳輸。然而,代替最初將組播發(fā)送至引導(dǎo)終端A,該組播首先實際被發(fā)送至拖尾終端D。因此,拖尾終端D啟動在點600處接收組播,如更厚的接收實線所示。最初,組播流,或者通過削弱或者通過突發(fā),以大于實時視頻速率的加速速率被發(fā)送。當(dāng)組播流變得充分接近終端A、B或C的接收線中的一個時,至該終端的單播被停止,及該終端被指示加入該組播。一旦引導(dǎo)者A已經(jīng)加入組播,該組播的速率在點602處被下降至其正常速率,一般地對應(yīng)至實時視頻速率。在穩(wěn)定階段,在所有終端已將加入該組播之后,引導(dǎo)組播和拖尾組播方法產(chǎn)生相同結(jié)果。然而,每一方法相對于其他方法,具有一定優(yōu)勢,如下所示。拖尾組播相對于引導(dǎo)組播的優(yōu)勢包括,對于拖尾組播,在任何給定時刻,僅一個流處于加速速率(即組播流),因而保護了網(wǎng)絡(luò)帶寬。拖尾組播的另一個優(yōu)勢包括接收組播的第一個終端一一拖尾終端——不需要從單播傳輸切換至組播傳輸。反而,其可在組播中直接被啟動。引導(dǎo)組播相對于拖尾組播的優(yōu)勢包括,在引導(dǎo)組播中,從單播至組播的轉(zhuǎn)變更簡單。在拖尾組播中,正如在引導(dǎo)組播中,該單播僅當(dāng)領(lǐng)先該組播至少幾百毫秒時,應(yīng)當(dāng)停止,以便防止在即將到來的視頻中的不連續(xù)性或其他損害。這在引導(dǎo)組播中引入關(guān)于轉(zhuǎn)變的“不早于”限制,及在拖尾組播中引入關(guān)于轉(zhuǎn)變的“不遲于”限制。另外,在拖尾組播中,該轉(zhuǎn)變不可太早,否則其可引起給定終端(其遵循在轉(zhuǎn)變之后的組播)的接收線在該終端的損耗線之后。因此,在拖尾組播中,具有有限的間隔,其中,單播可被停止以允許無縫銜接。通過在單播被停止之前不久,加速該單播速率,該困難可被緩解,因此單播和組播“肩并肩”運行很短的時間(如在圖6中終端A和B所示)。引導(dǎo)組播的另一個優(yōu)勢包括,在帶寬退火操作啟動之后,其允許將新用戶轉(zhuǎn)變至組播,這通常對于拖尾組播是不可行的。應(yīng)注意的是,在引導(dǎo)組播中,至終端諸如終端B的單播在該過程中被相對早的停止,其中,終端B在時間上相對接近終端A,然而,至終端C和D的單播將持續(xù)很長時間直至他們趕上組播。在拖尾組播中,該情況則相反,因為終端A和B相比終端C和D花費較長時間直至它們的組播可能被停止。
圖7示出一種組合式引導(dǎo)組播和拖尾組播的方法,該方法允許所有單播流被迅速停止。在該方法中,當(dāng)D請求與已正被終端A,B和C通過單個單播所接收的相同的視頻流時,如同在圖6中的拖尾組播方法,D被分配加速組播流。與此同時,如同在圖5中的引導(dǎo)組播方法,引導(dǎo)終端A在其通常速率處增加組播。終端B在該引導(dǎo)終端附近,因此,其單播速率被加速并最終加入A的組播。終端C在拖尾終端D附近,因此,其保持其正常單播速率,并當(dāng)后者進(jìn)入正確的切換間隔時,最終切換至D的拖尾組播。這樣,在該過程中的早期,所有單播信道被轉(zhuǎn)變至組播中的一個。當(dāng)拖尾組播領(lǐng)先于引導(dǎo)組播時,所有在其上的終端(在該舉例中為終端C和D)被指示加入引導(dǎo)組播,且該拖尾組播被停止。圖5、6和7中典型的帶寬退火技術(shù)提供終端從單播至組播傳輸?shù)臐u次轉(zhuǎn)變,且通過以有效方式降低傳輸?shù)闹貜?fù),可顯著降低信號分配系統(tǒng)的帶寬需求,其中,該有效方式不會導(dǎo)致在所接收及顯示的視頻中的不良損害。圖8不出信號分配系統(tǒng)800的另一個實施例,該信號分配系統(tǒng)800運用在此披露的帶寬退火技術(shù),實現(xiàn)多個終端自單播至組播傳輸?shù)臐u次轉(zhuǎn)變。在該實施例中,系統(tǒng)800包括視頻前端802,其包括被耦合至媒體存儲單元806的衛(wèi)星接收裝置804。該媒體存儲單元從接收裝置804接收視頻信號,并存儲該信號以分發(fā)至服務(wù)器810。該視頻前端可包括常規(guī)性的額外裝置,諸如一個或多個解碼裝置。前端802為在網(wǎng)絡(luò)800中的視頻源。然而,應(yīng)理解的是,其不需要作為最終的視頻源。例如,前端802可屬于另一高層次網(wǎng)絡(luò),從該網(wǎng)絡(luò)其接收分發(fā)至網(wǎng)絡(luò)800的視頻內(nèi)容。服務(wù)器810被耦合至控制裝置812,其假設(shè)被配置類似于如圖2中所示的控制裝置112。該服務(wù)器也被耦合至包括邊路由器822的核心網(wǎng)絡(luò)820。核心網(wǎng)絡(luò)820的邊緣路由器被耦合至接入網(wǎng)絡(luò)830-1、830-2及830-3各自的邊緣路由器。每個這樣的接入網(wǎng)絡(luò)更一般地包括邊緣路由器832,交換機834及額外的網(wǎng)絡(luò)裝置836,其示例性地包括DSLAM和/或光纖到用戶(FTTU)接口單元。接入網(wǎng)絡(luò)830-1、830-2及830-3均被耦合至各自的用戶組840-1,840-2及840-3,每一這樣的用戶與住宅或商業(yè)位置842相關(guān)聯(lián)。在操作中,控制裝置812與服務(wù)器810相互作用以檢測用戶中的特定多個用戶,該用戶從視頻前端802通過單播接收或被指定接收相同內(nèi)容流,并運用如前所述的引導(dǎo)組播、拖尾組播或組合式引導(dǎo)和拖尾組播技術(shù)中的一個或多個,自動地轉(zhuǎn)變這些用戶中特定多個用戶至共享組播。關(guān)于何時為一給定的用戶組啟動帶寬退火技術(shù)的決定,可不僅取決于諸如接收相同內(nèi)容的用戶數(shù)量或他們之間的相對延遲等因素,還取決于這些用戶在該系統(tǒng)中所處的位置。例如,系統(tǒng)800的核心網(wǎng)絡(luò)820可具有高帶寬容量,因此,其帶寬退火閾值可為10個用戶。接入網(wǎng)絡(luò)830可具有較低帶寬容量,并且,因此,此處的閾值可為4個用戶。在該情況中,規(guī)則可被指定如下“若存在至少4個用戶自相同接入網(wǎng)絡(luò)接入,或存在共10個用戶自所有網(wǎng)絡(luò)接入,則啟動帶寬退火”。在其他實施例中,在核心網(wǎng)絡(luò)820和接入網(wǎng)絡(luò)830之間,可存在一個或多個中間層次的網(wǎng)絡(luò),每一個具備其自己的限制。該中間網(wǎng)絡(luò)可包括,例如,城域網(wǎng)絡(luò)。視頻前端802可能未意識到每一個低層次網(wǎng)絡(luò)的特定閾值,且其可能甚至未知曉每一用戶所屬的特定網(wǎng)絡(luò)。額外控制裝置可因此在接入網(wǎng)絡(luò)(例如被耦合至邊緣路由器的部分)處被提供,其中,該額外控制裝置監(jiān)測用戶對視頻內(nèi)容的請求,并且,若該網(wǎng)絡(luò)的退火約束已經(jīng)到達(dá),其向控制裝置812發(fā)送請求,以請求為這些用戶進(jìn)行帶寬退火。 應(yīng)強調(diào)的是,系統(tǒng)800僅為根據(jù)本發(fā)明的信號分配系統(tǒng)的一個可能的實現(xiàn)。許多其它系統(tǒng)可被配置來實現(xiàn)本發(fā)明的一個或多個方面。例如,在其他實施例中,一個或多個接入網(wǎng)絡(luò)830可由至蜂窩網(wǎng)絡(luò)的網(wǎng)關(guān)代替。如上所述,本發(fā)明的實施例可至少部分地以一個或多個軟件程序的形式被實現(xiàn),其中,該軟件程序被存儲于信號分配系統(tǒng)中的視頻前端或者其它傳輸裝置中的存儲器或者其它計算機可讀介質(zhì)。系統(tǒng)部件諸如模塊210,212,214及216可至少部分地運用軟件程序被實現(xiàn)。當(dāng)然,根據(jù)本發(fā)明,硬件、軟件或固件的許多替代裝置的任意組合可被用于實現(xiàn)該等及其它系統(tǒng)裝置。例如,本發(fā)明的實施例可在一個或多個現(xiàn)場可編程門陣列(FPGAs)、專用集成電路(ASICs)或者其它類型的集成電路設(shè)備的任意組合中被實現(xiàn)。該集成電路設(shè)備,以及關(guān)于其的部分或組合,均為在此使用的后者術(shù)語“電路”的舉例。應(yīng)注意的是,在此,使用的術(shù)語“單播”和“組播”旨在被廣義的解釋,以分別覆蓋對于一對一及一對多傳輸?shù)母鞣N不同的技術(shù)。此外,盡管在IPTV的上下文中已說明,所描述的技術(shù)可適用于以直接的方式運用在其它類型的信號分配系統(tǒng),諸如蜂窩系統(tǒng),有線和衛(wèi)星電視系統(tǒng)等。作為一個舉例,在圖I實施例中與視頻源102相關(guān)聯(lián)的控制裝置112,例如,可在分發(fā)電視信號至移動設(shè)備的蜂窩系統(tǒng)的基站中被執(zhí)行。該基站為在此使用的后者術(shù)語“傳輸裝置”的另一個舉例。應(yīng)再次強調(diào)的是,以上描述的實施例僅為說明性目的,不應(yīng)被解釋為以任何方式的限制。其它實施例可運用不同類型的系統(tǒng)部件、網(wǎng)絡(luò)、設(shè)備配置及通信介質(zhì),取決于特定內(nèi)容分發(fā)應(yīng)用的需求。替代性實施例可因此利用在此在其它上下文中所描述的技術(shù),其中,實現(xiàn)多終端自單個單播至共享組播的有效轉(zhuǎn)變是可取的。同樣,還應(yīng)注意的是,在描述說明性實施例的上下文中所做的特定假設(shè)不應(yīng)被解釋為本發(fā)明的需要。本發(fā)明可在其它未使用該等特定假設(shè)的實施例中被實現(xiàn)。在所附權(quán)利要求的范圍之內(nèi)的該等及許多其它替代實施例,對于本領(lǐng)域技術(shù)人員,將變得顯而易見。
權(quán)利要求
1.一種方法包括 檢測條件,在所述條件中給定內(nèi)容流至多個終端的單播傳輸滿足設(shè)定的閾值; 啟動所述給定內(nèi)容流的組播傳輸,以響應(yīng)所述檢測的條件;及 將所述多個終端中至少一個轉(zhuǎn)變至所述組播傳輸。
2.根據(jù)權(quán)利要求I所述的方法,還包括 將所述多個終端中至少一個確定為先于接收所述組播傳輸?shù)钠渌K端中的一個或多 個、接收所述給定內(nèi)容流的所述組播傳輸以代替其單播傳輸?shù)慕K端;及 停止至所確定終端的所述單播傳輸。
3.根據(jù)權(quán)利要求I所述的方法,還包括識別引導(dǎo)終端與拖尾終端中的至少一個。
4.根據(jù)權(quán)利要求I所述的方法,還包括降低所述組播傳輸?shù)乃俾室酝剿鼋o定內(nèi)容流的傳送。
5.根據(jù)權(quán)利要求I所述的方法,還包括以一速率將所述給定內(nèi)容流傳輸至所述多個終端中至少一個,所述一速率大于所述多個終端中另一終端的速率。
6.一種制品,包括其中包含可執(zhí)行程序代碼的計算機可讀存儲介質(zhì),該可執(zhí)行程序代碼當(dāng)被處理裝置執(zhí)行時,使關(guān)聯(lián)的處理設(shè)備執(zhí)行權(quán)利要求I所述方法的步驟。
7.—種設(shè)備包括 控制裝置包括處理裝置; 其中,所述控制裝置被配置以檢測狀態(tài),在所述狀態(tài)中給定內(nèi)容流至各個終端的單播傳輸滿足閾值條件;及 其中,所述控制裝置,響應(yīng)所述檢測的狀態(tài),被配置來啟動所述給定內(nèi)容流的組播傳輸并將所述終端轉(zhuǎn)變至所述組播傳輸。
8.一種集成電路,包括權(quán)利要求7所述的設(shè)備。
9.根據(jù)權(quán)利要求7所述的設(shè)備,其中,所述控制裝置被配置以接收消息,所述消息指示所述終端中至少一個終端的最大緩沖能力。
10.根據(jù)權(quán)利要求9所述的設(shè)備,其中,所述控制裝置被配置來至少部分地基于所述最大緩沖能力將所述至少一個終端轉(zhuǎn)變至所述組播傳輸。
全文摘要
在信號分配系統(tǒng)的視頻前端或其它傳輸裝置中的控制裝置,用于檢測條件,在所述條件中給定內(nèi)容流至多個終端的單播傳輸滿足設(shè)定的閾值。所述控制裝置啟動所述給定內(nèi)容流的組播傳輸以響應(yīng)所述檢測條件,及轉(zhuǎn)變所述多個終端中的至少一個至所述組播傳輸。在一個實施例中,所述控制裝置將所述多個終端中至少一個確定為先于接收所述組播傳輸?shù)钠渌K端中的一個或多個、將接收所述給定內(nèi)容流的所述組播傳輸以代替其單播傳輸?shù)慕K端。若所述單播傳輸已經(jīng)被啟動,所述控制裝置停止至所述確定終端的所述單播傳輸,啟動所述組播傳輸,切換該所確定終端至所述組播傳輸,及隨后,轉(zhuǎn)變一個或多個其它終端至該組播傳輸。所述確定終端可包括引導(dǎo)終端或拖尾終端。
文檔編號H04L29/06GK102845020SQ201180015614
公開日2012年12月26日 申請日期2011年3月18日 優(yōu)先權(quán)日2010年3月22日
發(fā)明者拉結(jié)爾·海密科恩, 約翰·赫恩 申請人:阿爾卡特朗訊