欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法

文檔序號(hào):7612495閱讀:118來源:國(guó)知局
專利名稱:一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法,屬于通信組播技術(shù)領(lǐng)域。
背景技術(shù)
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,人們可以在任何網(wǎng)絡(luò)連通的地方享受資源共享,視頻點(diǎn)播(VOD)技術(shù)可以滿足人們工作娛樂上的多種需求,需要向更穩(wěn)定和服務(wù)更多用戶的方向發(fā)展。
覆蓋網(wǎng)絡(luò)組播是在原有物理網(wǎng)絡(luò)結(jié)構(gòu)上構(gòu)建的一種邏輯網(wǎng)絡(luò),由用戶主機(jī)作為構(gòu)建組播樹的結(jié)點(diǎn),完成數(shù)據(jù)的復(fù)制和轉(zhuǎn)發(fā),這樣用戶主機(jī)可以將數(shù)據(jù)分散存儲(chǔ),作為暫時(shí)的數(shù)據(jù)源,減輕服務(wù)器壓力。
VOD系統(tǒng)中,媒體服務(wù)器安排媒體流的分段存儲(chǔ),對(duì)于用戶的請(qǐng)求,為用戶建立媒體流檢索和發(fā)送,媒體流調(diào)度方法決定了視頻點(diǎn)播的實(shí)現(xiàn)和系統(tǒng)服務(wù)范圍及效果。目前,應(yīng)用中的VOD系統(tǒng)結(jié)合組播技術(shù)可以減少服務(wù)器壓力,達(dá)到資源共享。結(jié)合組播的媒體流調(diào)度方法主要有Batching,分層傳輸技術(shù),Patching等。Batching就是批處理,是以一段時(shí)間(稱為時(shí)間槽)為界,對(duì)這段時(shí)間內(nèi)到達(dá)的請(qǐng)求,延遲先到的用戶請(qǐng)求,不建立任何流,而是將界限內(nèi)到達(dá)的所有請(qǐng)求分為一組,在時(shí)間界限終點(diǎn)處建立并發(fā)送一個(gè)組播流。這樣由時(shí)間槽長(zhǎng)短來決定系統(tǒng)Batching性能。分層傳輸技術(shù)是要求,對(duì)于一個(gè)視頻節(jié)目,在服務(wù)器處保存的是一個(gè)基礎(chǔ)流文件(包含保證基本播放質(zhì)量所需信息)和一系列增強(qiáng)流文件,在基礎(chǔ)流上用插幀技術(shù)疊加不同級(jí)別的增強(qiáng)流,幀率提高,得到相應(yīng)不同級(jí)別的視頻播放效果,傳輸時(shí)可以由視頻服務(wù)器或者下面的某些有此能力的結(jié)點(diǎn)決定需要或丟棄哪些流。當(dāng)用戶逐漸離開組播組,組播組成員為0后,釋放組播流。
VCR操作就是快進(jìn),快退,暫停,重新定位等媒體播放機(jī)所具有的功能操作,其實(shí)現(xiàn)由媒體流調(diào)度方法決定。在視頻點(diǎn)播中,少數(shù)提供VCR操作的系統(tǒng)是給請(qǐng)求的用戶建立單播流,操作結(jié)束再釋放單播流,將用戶并入合適的組播流中。但多數(shù)都不提供所有的VCR操作,某些只提供實(shí)現(xiàn)相對(duì)簡(jiǎn)單的暫停操作,極少數(shù)可以提供重新定位操作,并且常常出現(xiàn)連接失敗或者等待時(shí)間太長(zhǎng)的問題。
覆蓋網(wǎng)絡(luò)組播與VOD系統(tǒng)結(jié)合,將時(shí)間槽內(nèi),對(duì)同一視頻節(jié)目提出播放請(qǐng)求的用戶分為一組,構(gòu)建組播樹,用戶在接收數(shù)據(jù)后,播放自己要觀看的部分,并由服務(wù)器分配,暫時(shí)存儲(chǔ)一部分?jǐn)?shù)據(jù)。當(dāng)有用戶點(diǎn)播同一視頻節(jié)目,服務(wù)器根據(jù)點(diǎn)播點(diǎn)通知他連入合適的用戶主機(jī)獲取數(shù)據(jù)。但是由于用戶主機(jī)的不確定性,使非葉子節(jié)點(diǎn)的離開可能造成受影響節(jié)點(diǎn)播放中斷,而以往媒體流調(diào)度方法都沒有對(duì)此做出有效地保護(hù),所以覆蓋網(wǎng)絡(luò)組播下的VOD系統(tǒng)一直無法推廣。

發(fā)明內(nèi)容
本發(fā)明的目的就是為了使覆蓋網(wǎng)絡(luò)組播下,解決視頻節(jié)目點(diǎn)播播放過程中,非葉子結(jié)點(diǎn)用戶離開很可能造成下面結(jié)點(diǎn)播放中斷的現(xiàn)象,尤其符合在線點(diǎn)播視頻節(jié)目的特征和覆蓋網(wǎng)絡(luò)組播特點(diǎn)的需要,用戶等待時(shí)間最優(yōu),最少的流數(shù)目,最少的用戶緩沖區(qū)邏輯分塊,使用戶可以實(shí)時(shí),穩(wěn)定的在線點(diǎn)播視頻節(jié)目。同時(shí)為了緩解提供VCR操作給服務(wù)器帶來的壓力,提出一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法,實(shí)現(xiàn)用戶在線觀看的靈活性和自主性。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是本發(fā)明一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法,有以下步驟;步驟(1),對(duì)某一視頻節(jié)目首次點(diǎn)播時(shí),視頻服務(wù)器立刻為用戶建立一條組播流;步驟(2),有用戶請(qǐng)求同一視頻,結(jié)點(diǎn)加入時(shí),引入不同播放延遲,離根結(jié)點(diǎn)近的結(jié)點(diǎn)播放延遲小,離結(jié)點(diǎn)較遠(yuǎn)的結(jié)點(diǎn)播放延遲大;步驟(3),有非葉子結(jié)點(diǎn)離開時(shí),重建組播樹,之后新建組播流,由分層傳輸技術(shù)補(bǔ)償失去的播放片斷,以保證播放連續(xù)性;葉子結(jié)點(diǎn)離開時(shí),不會(huì)對(duì)其他結(jié)點(diǎn)播放造成影響,不用考慮;步驟(4),沒有結(jié)點(diǎn)加入和結(jié)點(diǎn)離開的期間,維持組播流正常傳送;步驟(5),用組播VCR操作的方法實(shí)現(xiàn)VCR操作的快進(jìn)和快退,組播VCR操作組中用戶VCR操作結(jié)束,并入合適的組播流,加入過程同步驟(2),組中用戶全部離開時(shí),釋放此VCR組播流。暫停和重新定位在恢復(fù)正常播放時(shí)并入合適組播流,加入過程同步驟(2);步驟(6),對(duì)視頻節(jié)目點(diǎn)播的用戶全部離開后,釋放組播流。
應(yīng)用本發(fā)明的積極效果是以上技術(shù)方案中的視頻點(diǎn)播方法可以在覆蓋網(wǎng)絡(luò)組播下,加入最優(yōu)化的用戶等待時(shí)間,使用較少流數(shù)目和用戶緩沖區(qū)邏輯分塊,有效保證VOD系統(tǒng)服務(wù)用戶的播放連續(xù)性,并且組播VCR操作可以大大減少用單播實(shí)現(xiàn)VCR時(shí)所需流的數(shù)目,提供有效的暫停,快進(jìn),快退,重新定位功能,有利于網(wǎng)絡(luò)中大面積實(shí)現(xiàn)VCR功能。
本發(fā)明方案的視頻點(diǎn)播實(shí)現(xiàn)方法同樣適用于IP組播與覆蓋網(wǎng)絡(luò)組播結(jié)合的情況,一樣可以給用戶提供連續(xù)穩(wěn)定的播放,并且對(duì)于用戶結(jié)束VCR操作,恢復(fù)正常播放時(shí)加入合適組播流的過程中運(yùn)用。組播VCR操作方法適用于任何采用組播方式的大型網(wǎng)絡(luò)VOD系統(tǒng),尤其適合用戶點(diǎn)播高峰期使用,并且可以用于在線電視或?qū)崨r轉(zhuǎn)播系統(tǒng),但只能提供快退和向后定位功能。


下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)一步說明。
圖1是本發(fā)明視頻點(diǎn)播方法實(shí)現(xiàn)過程流程圖(不包括VCR過程),a是計(jì)算播放延遲模塊,b是基本的視頻點(diǎn)播流程圖。
圖2是本發(fā)明視頻點(diǎn)播中VCR實(shí)現(xiàn)的過程流程圖。
圖3是實(shí)施例的示意圖,說明媒體流調(diào)度策略中結(jié)點(diǎn)加入過程用戶等待時(shí)間設(shè)定,其中有a,b兩幅圖,描述了結(jié)點(diǎn)加入過程。
圖4是實(shí)施例的示意圖,說明媒體流調(diào)度策略中非葉子結(jié)點(diǎn)離開過程中用戶緩沖區(qū)數(shù)據(jù)和用戶等待時(shí)間的值,其中有a,b,c,d四幅圖,描述了結(jié)點(diǎn)離開過程。
圖5是實(shí)施例的示意圖,說明組播VCR操作過程中用戶的動(dòng)態(tài)加入過程。
圖中S表示VOD系統(tǒng)的視頻服務(wù)器(Server),A、B、C、D、X、Y都表示在線點(diǎn)播視頻節(jié)目的用戶。T是一段視頻節(jié)目發(fā)送所需時(shí)間(一般與播放時(shí)間是相同的)。
具體實(shí)施例方式
實(shí)施例1,如圖1b所示,本發(fā)明一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法,有以下主要步驟步驟1、用戶請(qǐng)求,服務(wù)器是否有足夠資源,否則即通知用戶請(qǐng)求失?。?
步驟2、判斷是否對(duì)此視頻的首次請(qǐng)求,否則轉(zhuǎn)入步驟6;步驟3、建立一條組播流;步驟4、維持組播流的正常傳輸,監(jiān)測(cè)網(wǎng)絡(luò)和組播組成員狀態(tài),如果收到用戶點(diǎn)播同一視頻節(jié)目的請(qǐng)求,轉(zhuǎn)入“當(dāng)有用戶請(qǐng)求點(diǎn)播同一視頻節(jié)目時(shí)”的步驟;如果檢測(cè)到有用戶離開,轉(zhuǎn)入“當(dāng)用戶報(bào)告離開或服務(wù)器檢測(cè)到用戶突然離開時(shí)”的步驟;如果收到用戶要VCR操作的請(qǐng)求,轉(zhuǎn)入“當(dāng)用戶請(qǐng)求VCR操作時(shí)”的步驟;步驟5、判斷是否組播樹中的節(jié)點(diǎn)數(shù)為零,否則轉(zhuǎn)入步驟3;步驟6、釋放組播流;當(dāng)有用戶請(qǐng)求點(diǎn)播同一視頻節(jié)目時(shí)步驟1、判斷是否在時(shí)間槽內(nèi),否則建立一條新的組播流;步驟2、進(jìn)入節(jié)點(diǎn)加入過程步驟,搜索用戶所需的數(shù)據(jù)位置,用戶主機(jī)位置信息,用戶所需數(shù)據(jù)的節(jié)點(diǎn)的位置信息;步驟3、根據(jù)組播樹結(jié)構(gòu)決定用戶進(jìn)入哪個(gè)節(jié)點(diǎn);步驟4、將用戶接入的結(jié)點(diǎn)深度信息送給計(jì)算播放延遲模塊,得到合適的播放延遲;步驟5、通知用戶接收數(shù)據(jù),采用相應(yīng)播放延遲;之后轉(zhuǎn)入主要步驟4。
當(dāng)用戶報(bào)告離開或服務(wù)器檢測(cè)到用戶突然離開時(shí)步驟1、判斷是否非葉子節(jié)點(diǎn),否則轉(zhuǎn)入以上主要步驟4;步驟2、確定離開節(jié)點(diǎn)位置,記錄離開節(jié)點(diǎn)位置信息,將結(jié)點(diǎn)離開位置信息送到計(jì)算播放延遲模塊,節(jié)點(diǎn)離開時(shí)正常傳輸?shù)臄?shù)據(jù)點(diǎn)信息送給之后的步驟4;步驟3、重建組播樹,組播組成員信息送入以下步驟4;
步驟4、根據(jù)計(jì)算播放延遲模塊算出的播放延遲,和節(jié)點(diǎn)離開時(shí)正常傳輸?shù)臄?shù)據(jù)點(diǎn)信息,重建組播流,用分層傳播技術(shù)補(bǔ)充失去數(shù)據(jù),未受影響用戶丟棄重復(fù)數(shù)據(jù);步驟5、恢復(fù)正常播放;之后轉(zhuǎn)入主要步驟4。
當(dāng)用戶請(qǐng)求VCR操作時(shí),如圖2所示的VCR操作過程步驟如下步驟1、對(duì)于收到的VCR請(qǐng)求,判斷是否服務(wù)器有足夠資源,否則通知用戶失?。徊襟E2、判斷請(qǐng)求播放點(diǎn)是否落在VCR操作頻繁的片斷中,否則建立一條單播流為用戶服務(wù);步驟3、判斷是否落在同一片斷中,否則建立新的判斷進(jìn)程;步驟4、確定VCR操作類型,若重新定位則進(jìn)入節(jié)點(diǎn)加入過程程序;若暫停則進(jìn)入用戶緩沖區(qū)繼續(xù)接收數(shù)據(jù),轉(zhuǎn)入暫停操作步驟;步驟5、若選擇快進(jìn)或快退,判斷是否是第一個(gè)請(qǐng)求,若是開始一個(gè)時(shí)間槽的計(jì)時(shí),之后進(jìn)入步驟6;若否,直接進(jìn)入步驟6;步驟6、根據(jù)點(diǎn)播點(diǎn)排隊(duì);步驟7、判斷是否到了時(shí)間槽的終點(diǎn),否則等待時(shí)間槽的結(jié)束,若是記錄所有點(diǎn)播點(diǎn)排隊(duì)信息,送入步驟9;步驟8、搜索所需片段,建立VCR組播流,從片段開始處發(fā)送數(shù)據(jù);步驟9、依次通知用戶加入VCR組播流;步驟10、維持VCR組播流;步驟11、監(jiān)測(cè)組播VCR組播組成員狀態(tài),判斷是否有成員離開,否則轉(zhuǎn)入步驟10,若是進(jìn)入下一步驟,并記錄用戶離開點(diǎn)信息進(jìn)入節(jié)點(diǎn)加入程序步驟;
步驟12、判斷VCR組播流中成員是否為零,否則轉(zhuǎn)入步驟10;步驟13、釋放VCR組播流。之后轉(zhuǎn)到主要步驟3。
暫停操作步驟步驟1、用戶緩沖區(qū)繼續(xù)接收數(shù)據(jù);步驟2、判斷用戶緩沖區(qū)是否已滿,否則轉(zhuǎn)入步驟1;步驟3、用戶停止接收數(shù)據(jù);步驟4、判斷是否恢復(fù)播放,否則轉(zhuǎn)入步驟3;步驟5、進(jìn)入節(jié)點(diǎn)加入過程程序步驟。
設(shè)任意用戶結(jié)點(diǎn)的緩沖區(qū)足夠大,非葉子結(jié)點(diǎn)離開引起的組播樹重構(gòu)所需時(shí)間相同,并且組播樹重構(gòu)穩(wěn)定后,重新連接的結(jié)點(diǎn)可以得到與重構(gòu)前相似的帶寬性能。
主要步驟4所述結(jié)點(diǎn)加入過程具體描述為時(shí)間槽內(nèi)有用戶點(diǎn)播相同視頻節(jié)目時(shí),服務(wù)器根據(jù)用戶所需要的數(shù)據(jù),安排用戶加入組播樹中合適的位置,深度有可能不同。播放延遲指從用戶接收到數(shù)據(jù)起,一段時(shí)間內(nèi)的數(shù)據(jù)只緩存不播放,這段時(shí)間就是播放延遲,是為了緩沖足夠多的數(shù)據(jù),可以使短時(shí)間內(nèi)失去數(shù)據(jù)源時(shí),用戶還有足夠的數(shù)據(jù)播放。對(duì)于播放延遲的設(shè)定,采用計(jì)算播放延遲模塊,如圖1(a),輸入結(jié)點(diǎn)信息(單個(gè)或多個(gè)均可),輸出計(jì)算好的播放延遲(相應(yīng)的單個(gè)或多個(gè))。計(jì)算原理是根據(jù)網(wǎng)絡(luò)的狀況,越靠近根結(jié)點(diǎn),受其他結(jié)點(diǎn)離開影響的概率越小,采用的播放延遲越小,反之距離根節(jié)點(diǎn)的路徑上含結(jié)點(diǎn)越多,受其他結(jié)點(diǎn)離開影響的概率越大,所以采用的播放延遲越大;同時(shí),多個(gè)結(jié)點(diǎn)同時(shí)離開的概率要比兩個(gè)結(jié)點(diǎn)同時(shí)離開的概率大很多,則距離根節(jié)點(diǎn)路徑上的多個(gè)結(jié)點(diǎn)同時(shí)離開的概率將隨離開結(jié)點(diǎn)數(shù)增加而迅速減小,則一條路徑上相鄰結(jié)點(diǎn)的播放延遲的差值隨距離增加而迅速減小,最后差值將收斂為0,只須保證臨近根結(jié)點(diǎn)的用戶播放延遲不小于一個(gè)結(jié)點(diǎn)離開時(shí),重建連接所需要的時(shí)間,所以一個(gè)結(jié)點(diǎn)加入時(shí)所應(yīng)引入的播放延遲可以根據(jù)網(wǎng)絡(luò)、服務(wù)器監(jiān)聽用戶頻率和服務(wù)器處理能力的實(shí)際情況算出。這種情況下,組播時(shí)間槽的計(jì)算必須記入不同深度用戶等待時(shí)間極限值,時(shí)間槽外的請(qǐng)求,再建立新的組播流。
主要步驟4所述結(jié)點(diǎn)離開過程如圖4所示當(dāng)服務(wù)器收到用戶離開的通知,或監(jiān)測(cè)到有用戶意外離開時(shí),如果是葉子結(jié)點(diǎn),其離開不會(huì)影響組播用戶,但如果他是最后一個(gè)結(jié)點(diǎn),結(jié)束組播流。如果是非葉子結(jié)點(diǎn)離開,確定結(jié)點(diǎn)位置,重建組播樹。重建連接的過程中,結(jié)點(diǎn)加入時(shí)附加的播放延遲已可以保證用戶緩沖區(qū)中有足夠的數(shù)據(jù)持續(xù)播放。從減少流的總數(shù)目方面考慮,重建組播流。結(jié)點(diǎn)連入后,將原先的組播流釋放,用分層傳輸技術(shù),使用較低幀率傳輸一個(gè)從結(jié)點(diǎn)離開時(shí)正傳輸?shù)臄?shù)據(jù)為起點(diǎn)的組播流,接收數(shù)據(jù)的成員是新建組播樹的所有結(jié)點(diǎn),但是為了補(bǔ)上丟失數(shù)據(jù)的時(shí)間差,在原有帶寬基礎(chǔ)上,用質(zhì)量較低的基礎(chǔ)流組播一段時(shí)間,直到所有受影響結(jié)點(diǎn)緩沖區(qū)中數(shù)據(jù)恢復(fù)到結(jié)點(diǎn)離開前,保證播放連續(xù)性所需的播放延遲時(shí)間的數(shù)據(jù),未受影響的結(jié)點(diǎn)丟棄重復(fù)數(shù)據(jù),之后,服務(wù)器根據(jù)重建連接的結(jié)點(diǎn)此時(shí)所處深度進(jìn)行計(jì)算(用計(jì)算播放延遲模塊,如圖1(a)所示,同時(shí)計(jì)算所有受影響結(jié)點(diǎn)的播放延遲),使其緩沖區(qū)內(nèi)的數(shù)據(jù)量為假設(shè)其剛加入這個(gè)組播組所需要的播放延遲時(shí)間長(zhǎng)度時(shí),恢復(fù)正常幀率的組播,這樣可以在不增加帶寬的情況下,補(bǔ)充受影響結(jié)點(diǎn)失去的數(shù)據(jù),同時(shí),鏈路上自始至終只有一條數(shù)據(jù)流,用戶緩沖區(qū)自始至終只需要兩塊邏輯緩沖區(qū),一塊存儲(chǔ)要播放的數(shù)據(jù),一塊存儲(chǔ)暫不播放的組播流中的數(shù)據(jù)。
主要步驟4所述的組播VCR操作方法是預(yù)先要對(duì)于一部由N個(gè)單元(單位時(shí)間播放所包含的數(shù)據(jù))組成其流媒體文件的影片,在服務(wù)器處根據(jù)歷史數(shù)據(jù)中對(duì)影片VCR操作(除暫停操作,只處理快進(jìn),快退和重新定位操作)頻繁情況分段,將相同VCR操作頻繁的片斷分為一段,其中各分段再根據(jù)VCR點(diǎn)播率進(jìn)行排序。在此前提下,VCR操作過程如圖2所示,對(duì)同一VCR操作頻繁的片段點(diǎn)播的用戶,在相同VCR操作(快進(jìn)和快退過程相同,但也要分別計(jì)時(shí))的時(shí)間槽內(nèi),建立VCR組播流,發(fā)送一份數(shù)據(jù),但因?yàn)橛脩粝嗤琕CR操作的請(qǐng)求開始點(diǎn)有可能有微小的不同,根據(jù)用戶對(duì)這一段的點(diǎn)播點(diǎn)對(duì)用戶排隊(duì),并根據(jù)點(diǎn)播點(diǎn)信息通知用戶在合適時(shí)間點(diǎn)動(dòng)態(tài)加入VCR組播流。可見,對(duì)于大型網(wǎng)絡(luò),一個(gè)組播組中成員較多,而受加入組播組時(shí)的時(shí)間槽長(zhǎng)度限制,觀看點(diǎn)不會(huì)相差太遠(yuǎn),最壞情況是時(shí)間槽中的第一個(gè)請(qǐng)求位于時(shí)間槽開始處,并且要求從這段末尾開始VCR,用戶等待時(shí)間為時(shí)間槽長(zhǎng)度與這段播放時(shí)間之和;而最好情況是時(shí)間槽中最后一個(gè)請(qǐng)求位于時(shí)間槽結(jié)尾處,并且要求從這段開始處VCR,用戶等待時(shí)間為0。如果根據(jù)先驗(yàn)數(shù)據(jù)所提供的點(diǎn)播率對(duì)流媒體文件進(jìn)行分割,對(duì)某段的點(diǎn)播將集中于段首,這樣時(shí)間槽可以很短,并且所有點(diǎn)播的等待時(shí)間都會(huì)很短,同時(shí)還節(jié)省了服務(wù)器和網(wǎng)絡(luò)資源。
具體分VCR操作過程和恢復(fù)正常播放過程。暫停和重新定位播放不存在操作過程,對(duì)于FF(快進(jìn))和FR(快退)的播放,用戶“動(dòng)態(tài)加入”快進(jìn)或快退文件的組播,并且由于用戶緩沖區(qū)有一部分?jǐn)?shù)據(jù)可以緩沖FF的需要,將減少用戶FF操作的平均等待時(shí)間。四種VCR操作的恢復(fù)正常播放時(shí)可以不區(qū)分類型,如果有合適的組播流,則直接加入,如果沒有就一起排隊(duì),之后建立一個(gè)組播流,將所有請(qǐng)求按序“動(dòng)態(tài)加入”。對(duì)于沒落入熱門片段的少量VCR請(qǐng)求,還是按照以往的策略,建立單播流,恢復(fù)播放時(shí)尋找合適的組播流加入或建立新的組播流。綜合角度看,減少了所需流的數(shù)目。
發(fā)明整體過程為圖1和圖2所示,VOD系統(tǒng)用圖1所示流程即可實(shí)現(xiàn)保證用戶播放都不會(huì)中斷的流調(diào)度過程,提供的VCR操作,可在原有系統(tǒng)上,采用圖2所示流程生成一個(gè)VCR操作模塊,供原系統(tǒng)調(diào)用即可實(shí)現(xiàn)。
實(shí)施例2如圖3,圖4和圖5所示,網(wǎng)絡(luò)組播樹表現(xiàn)視頻點(diǎn)播方法,時(shí)間片表現(xiàn)組播VCR過程。與實(shí)施例1采用相同假設(shè)。
說明結(jié)點(diǎn)加入過程和播放延遲計(jì)算,如圖3所示。VOD系統(tǒng)中已建立組播樹如圖3(a),此時(shí)有用戶X和Y請(qǐng)求加入,請(qǐng)求發(fā)到視頻服務(wù)器S處,X所需數(shù)據(jù)在A上可以得到,Y需要數(shù)據(jù)在D上可以得到,S根據(jù)他們需要的數(shù)據(jù),令X連接用戶A獲取數(shù)據(jù),Y連接用戶D獲取數(shù)據(jù)。按照提出的媒體流調(diào)度方法,用戶加入過程中,越是靠近根結(jié)點(diǎn)的用戶的播放延遲可以較小,逐級(jí)增大播放延遲,而葉子結(jié)點(diǎn)的播放延遲最大。如圖3(b)中,表示了結(jié)點(diǎn)加入過程中,新加入結(jié)點(diǎn)播放時(shí)間延遲的不同,每個(gè)結(jié)點(diǎn)旁邊的標(biāo)識(shí)表示那個(gè)結(jié)點(diǎn)的播放延遲。對(duì)于播放延遲由視頻服務(wù)器計(jì)算,保證t1≥0、t2≥0且t3≥0,這樣t1+t2+t3≥t1+t2≥t1,t1可以為0,或一個(gè)很小的值,根據(jù)視頻服務(wù)器的響應(yīng)時(shí)間長(zhǎng)短決定,然后根據(jù)多個(gè)節(jié)點(diǎn)同時(shí)離開的概率逐漸減少這一規(guī)律,使t2≥t3,并且設(shè)路徑上同時(shí)三個(gè)結(jié)點(diǎn)離開的概率為0,一個(gè)結(jié)點(diǎn)離開時(shí)重建所需的時(shí)間為t,使t1+t2≥t,在以上這些前提下設(shè)定t1,t2,t3。然后,X接入A開始獲取到數(shù)據(jù),在t1+t2長(zhǎng)的時(shí)間內(nèi),緩存收到的數(shù)據(jù),但不播放,同樣,Y接入D開始獲取到數(shù)據(jù),在t1+t2+t3長(zhǎng)的時(shí)間內(nèi),緩存收到的數(shù)據(jù),但不播放。播放延遲時(shí)間過后,正常播放,用戶狀態(tài)穩(wěn)定。并根據(jù)假設(shè),如果再有結(jié)點(diǎn)加入A和B,播放延遲都是t1+t2,再有結(jié)點(diǎn)接入Y、X、C和D,播放延遲都為t1+t2+t3,接入深度更深的結(jié)點(diǎn)播放延遲都是t1+t2+t3。
說明非葉子結(jié)點(diǎn)離開的過程,如圖4所示。如果非葉子結(jié)點(diǎn)離開,受影響的結(jié)點(diǎn)都是他的下級(jí)結(jié)點(diǎn),如圖4中(a)是建立好的組播樹。用t(t’)表示每個(gè)結(jié)點(diǎn)當(dāng)時(shí)的播放延時(shí)和緩沖區(qū)里保證連續(xù)播放必需的數(shù)據(jù),t為播放延時(shí),t’表示緩沖區(qū)數(shù)據(jù)可以播放t’單位時(shí)間,以樹的根結(jié)點(diǎn)為參考點(diǎn),則設(shè)根結(jié)點(diǎn)的為0(0),其他結(jié)點(diǎn)如圖4中(a)所示。圖4中(b)表示一個(gè)結(jié)點(diǎn)由于某種原因離開。假設(shè)重建組播樹所需時(shí)間為t,傳輸速率與播放速率相同。則受影響結(jié)點(diǎn)有四個(gè),從他上級(jí)結(jié)點(diǎn)離開起,用戶不再接收到新數(shù)據(jù),只播放結(jié)點(diǎn)加入時(shí)引入的播放延遲時(shí)間內(nèi)緩沖區(qū)儲(chǔ)存的數(shù)據(jù),重建組播樹需要播放時(shí)間為t的一段,緩沖區(qū)中減少播放時(shí)間為t的數(shù)據(jù),如圖4(c)中所示,重建組播樹后,如圖4中(d),這一組播流的組織和調(diào)度由服務(wù)器來計(jì)算完成。假設(shè)根據(jù)帶寬需要時(shí)間t”長(zhǎng)時(shí)間傳輸播放t+t”長(zhǎng)時(shí)間的數(shù)據(jù),則組播流由t”長(zhǎng)時(shí)間的基礎(chǔ)流和銜接基礎(chǔ)流尾部數(shù)據(jù)的正常質(zhì)量的數(shù)據(jù)流組成。在傳輸基礎(chǔ)流這段期間,沒有受影響的結(jié)點(diǎn)將新建組播中傳輸?shù)淖约阂延械牟シ艛?shù)據(jù)丟棄,播放自己緩沖區(qū)中的數(shù)據(jù),這樣所有用戶主機(jī)從加入組播樹穩(wěn)定后起,鏈路上只有一個(gè)流,并且一個(gè)結(jié)點(diǎn)只接收一個(gè)組播流,用戶緩沖區(qū)只需要兩塊邏輯分塊,一塊存儲(chǔ)正播放的數(shù)據(jù),一塊接收組播流。
說明組播處理VCR過程,如圖5所示。組播組中所有用戶觀看點(diǎn)相差不會(huì)超過時(shí)間槽長(zhǎng)度與播放延遲之和,而對(duì)一部熱門影片中的熱門片斷的點(diǎn)播概率會(huì)比較高。如圖5所示,對(duì)于某一段時(shí)間為T的片段的點(diǎn)播,從0時(shí)刻起,在長(zhǎng)度為t的時(shí)間內(nèi),所有VCR操作的點(diǎn)播開始點(diǎn)可能不完全相同,1-5是按時(shí)間的請(qǐng)求序號(hào),a-e是根據(jù)五個(gè)請(qǐng)求播放點(diǎn)時(shí)間排序后的時(shí)間序列,請(qǐng)求1要求從這段c指向的位置處開始播放,請(qǐng)求2要求從這段開始處(a處)播放,請(qǐng)求3要求從這段e指向的位置處開始播放,請(qǐng)求4要求從這段b指向的位置處開始播放,請(qǐng)求5要求從這段d指向的位置處開始播放,將這段時(shí)間內(nèi)對(duì)這一段的所有請(qǐng)求按要求的開始播放點(diǎn)進(jìn)行排序,即2-4-1-5-3,在結(jié)束點(diǎn)t建立組播流,發(fā)送從這段開始處的數(shù)據(jù),并根據(jù)用戶對(duì)這一段的點(diǎn)播點(diǎn)通知用戶排隊(duì)及何時(shí)“動(dòng)態(tài)加入”組播組,如圖3。統(tǒng)一表示兩點(diǎn)間的時(shí)間間隔,請(qǐng)求1和2之間為t12,依此類推,加入點(diǎn)a和b之間為tab,依此類推,那么,請(qǐng)求1的等待時(shí)間為t15+tac=t+tac;請(qǐng)求2的等待時(shí)間為t25;請(qǐng)求3的等待時(shí)間為t35+tae=t35+T;請(qǐng)求4的等待時(shí)間為t45+tab;請(qǐng)求5的等待時(shí)間為tad。可見,請(qǐng)求時(shí)間越接近t時(shí)刻,并且請(qǐng)求播放點(diǎn)越接近段首,等待時(shí)間越短,所以若根據(jù)先驗(yàn)數(shù)據(jù)所提供的點(diǎn)播率對(duì)流媒體文件進(jìn)行分割,對(duì)某段的點(diǎn)播將集中于段首,這樣時(shí)間槽可以很短,相對(duì)的請(qǐng)求時(shí)間接近t時(shí)刻,則所有點(diǎn)播的等待時(shí)間都會(huì)很短,同時(shí)還節(jié)省了服務(wù)器和網(wǎng)絡(luò)資源。在發(fā)送數(shù)據(jù)接近這段片斷的結(jié)尾處,如果還有用戶位于組播流,繼續(xù)發(fā)送下一段數(shù)據(jù),如果用戶逐漸退出組播流,將隨著最后一個(gè)用戶的離開釋放此組播流。
權(quán)利要求
1.一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是有以下步驟步驟(1)、對(duì)某一視頻節(jié)目首次點(diǎn)播時(shí),視頻服務(wù)器立刻為用戶建立一條組播流;步驟(2)、用戶請(qǐng)求同一視頻,結(jié)點(diǎn)加入時(shí),引入不同播放延遲,離根結(jié)點(diǎn)近的結(jié)點(diǎn)播放延遲小,離結(jié)點(diǎn)較遠(yuǎn)的結(jié)點(diǎn)播放延遲大;步驟(3)、非葉子結(jié)點(diǎn)離開時(shí),重建組播樹,之后新建組播流,由分層傳輸技術(shù)補(bǔ)償失去的播放片斷,以保證播放連續(xù)性;葉子結(jié)點(diǎn)離開時(shí),不會(huì)對(duì)其他結(jié)點(diǎn)播放造成影響,不用考慮;步驟(4)、沒有結(jié)點(diǎn)加入和結(jié)點(diǎn)離開的期間,維持組播流正常傳送;步驟(5)、用組播VCR操作的方法實(shí)現(xiàn)VCR操作的快進(jìn)和快退,組播VCR操作組中用戶VCR操作結(jié)束,并入合適的組播流,加入過程同步驟(2),組中用戶全部離開時(shí),釋放此VCR組播流,暫停和重新定位在恢復(fù)正常播放時(shí)并入合適組播流,加入過程同步驟(2);步驟(6)、對(duì)視頻節(jié)目點(diǎn)播的用戶全部離開后,釋放組播流。
2.權(quán)利要求1所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是計(jì)算播放延遲的方法是根據(jù)網(wǎng)絡(luò)情況確定不同深度結(jié)點(diǎn)到根結(jié)點(diǎn)路徑上多個(gè)結(jié)點(diǎn)離開的概率,根據(jù)結(jié)點(diǎn)接入的深度計(jì)算所需要的播放延遲,到達(dá)一定深度的結(jié)點(diǎn),播放延遲收斂為固定值。
3.權(quán)利要求1所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是非葉子結(jié)點(diǎn)離開后,受影響結(jié)點(diǎn)播放緩沖區(qū)中數(shù)據(jù),并重新接入組播樹,鏈路接通后,重建組播流,從結(jié)點(diǎn)離開時(shí)刻正傳輸?shù)臄?shù)據(jù)開始,用較低幀率的媒體流,快速補(bǔ)充受影響結(jié)點(diǎn)在重新連接過程中失去的數(shù)據(jù),未受影響節(jié)點(diǎn)丟棄重復(fù)數(shù)據(jù)。
4.權(quán)利要求1所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,組播VCR操作的快進(jìn)和快退,其特征是預(yù)先對(duì)視頻的流媒體文件,根據(jù)快進(jìn)、快退操作記錄分段,將短期內(nèi)進(jìn)行相同VCR操作頻繁的片斷分為一段,對(duì)于短時(shí)間落入同一段的快進(jìn)、快退操作請(qǐng)求組播處理,通知用戶按請(qǐng)求播放點(diǎn)排隊(duì),動(dòng)態(tài)加入組播流。
5.權(quán)利要求1所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是有以下主要步驟步驟1、用戶請(qǐng)求,服務(wù)器是否有足夠資源,否則即通知用戶請(qǐng)求失??;步驟2、判斷是否對(duì)此視頻的首次請(qǐng)求,否則轉(zhuǎn)入步驟6;步驟3、建立一條組播流;步驟4、維持組播流的正常傳輸,監(jiān)測(cè)網(wǎng)絡(luò)和組播組成員狀態(tài),如果收到用戶點(diǎn)播同一視頻節(jié)目的請(qǐng)求,轉(zhuǎn)入“當(dāng)有用戶請(qǐng)求點(diǎn)播同一視頻節(jié)目時(shí)”的步驟;如果檢測(cè)到有用戶離開,轉(zhuǎn)入“當(dāng)用戶報(bào)告離開或服務(wù)器檢測(cè)到用戶突然離開時(shí)”的步驟;如果收到用戶要VCR操作的請(qǐng)求,轉(zhuǎn)入“當(dāng)用戶請(qǐng)求VCR操作時(shí)”的步驟;步驟5、判斷是否組播樹中的節(jié)點(diǎn)數(shù)為零,否則轉(zhuǎn)入步驟3;步驟6、釋放組播流。
6.權(quán)利要求5所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是有當(dāng)有用戶請(qǐng)求點(diǎn)播同一視頻節(jié)目時(shí)的步驟步驟1、判斷是否在時(shí)間槽內(nèi),否則建立一條新的組播流;步驟2、進(jìn)入節(jié)點(diǎn)加入過程步驟,搜索用戶所需的數(shù)據(jù)位置,用戶主機(jī)位置信息,用戶所需數(shù)據(jù)的節(jié)點(diǎn)的位置信息;步驟3、根據(jù)組播樹結(jié)構(gòu)決定用戶進(jìn)入哪個(gè)節(jié)點(diǎn);步驟4、將用戶接入的結(jié)點(diǎn)深度信息送給計(jì)算播放延遲模塊,得到合適的播放延遲;步驟5、通知用戶接收數(shù)據(jù),采用相應(yīng)播放延遲;之后轉(zhuǎn)入權(quán)利要求5的主要步驟4。
7.權(quán)利要求5所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是有當(dāng)用戶報(bào)告離開或服務(wù)器檢測(cè)到用戶突然離開時(shí)的步驟步驟1、判斷是否非葉子節(jié)點(diǎn),否則轉(zhuǎn)入權(quán)利要求5的主要步驟4;步驟2、確定離開節(jié)點(diǎn)位置,記錄離開節(jié)點(diǎn)位置信息,將結(jié)點(diǎn)離開位置信息送到計(jì)算播放延遲模塊,節(jié)點(diǎn)離開時(shí)正常傳輸?shù)臄?shù)據(jù)點(diǎn)信息送給之后的步驟4;步驟3、重建組播樹,組播組成員信息送入以下步驟4;步驟4、根據(jù)計(jì)算播放延遲模塊算出的播放延遲,和節(jié)點(diǎn)離開時(shí)正常傳輸?shù)臄?shù)據(jù)點(diǎn)信息,重建組播流,用分層傳播技術(shù)補(bǔ)充失去數(shù)據(jù),未受影響用戶丟棄重復(fù)數(shù)據(jù);步驟5、恢復(fù)正常播放;之后轉(zhuǎn)入權(quán)利要求5的主要步驟4。
8.權(quán)利要求5所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是有當(dāng)用戶請(qǐng)求VCR操作時(shí),步驟如下步驟1、對(duì)于收到的VCR請(qǐng)求,判斷是否服務(wù)器有足夠資源,否則通知用戶失??;步驟2、判斷請(qǐng)求播放點(diǎn)是否落在VCR操作頻繁的片斷中,否則建立一條單播流為用戶服務(wù);步驟3、判斷是否落在同一片斷中,否則建立新的判斷進(jìn)程;步驟4、確定VCR操作類型,若重新定位則進(jìn)入節(jié)點(diǎn)加入過程程序;若暫停則進(jìn)入用戶緩沖區(qū)繼續(xù)接收數(shù)據(jù),轉(zhuǎn)入暫停操作步驟;步驟5、若選擇快進(jìn)或快退,判斷是否是第一個(gè)請(qǐng)求,若是開始一個(gè)時(shí)間槽的計(jì)時(shí),之后進(jìn)入步驟6;若否,直接進(jìn)入步驟6;步驟6、根據(jù)點(diǎn)播點(diǎn)排隊(duì);步驟7、判斷是否到了時(shí)間槽的終點(diǎn),否則等待時(shí)間槽的結(jié)束,若是記錄所有點(diǎn)播點(diǎn)排隊(duì)信息,送入步驟9;步驟8、搜索所需片段,建立VCR組播流,從片段開始處發(fā)送數(shù)據(jù);步驟9、依次通知用戶加入VCR組播流;步驟10、維持VCR組播流;步驟11、監(jiān)測(cè)組播VCR組播組成員狀態(tài),判斷是否有成員離開,否則轉(zhuǎn)入步驟10,若是進(jìn)入下一步驟,并記錄用戶離開點(diǎn)信息進(jìn)入節(jié)點(diǎn)加入程序步驟;步驟12、判斷VCR組播流中成員是否為零,否則轉(zhuǎn)入步驟10;步驟13、釋放VCR組播流;之后轉(zhuǎn)到權(quán)利要求5的主要步驟4。
9.權(quán)利要求5所述的一種覆蓋網(wǎng)絡(luò)組播下實(shí)現(xiàn)視頻點(diǎn)播的方法,其特征是有暫停操作步驟步驟1、用戶緩沖區(qū)繼續(xù)接收數(shù)據(jù);步驟2、判斷用戶緩沖區(qū)是否已滿,否則轉(zhuǎn)入步驟1;步驟3、用戶停止接收數(shù)據(jù);步驟4、判斷是否恢復(fù)播放,否則轉(zhuǎn)入步驟3;步驟5、進(jìn)入節(jié)點(diǎn)加入過程程序步驟。
全文摘要
一種覆蓋網(wǎng)絡(luò)組播下視頻點(diǎn)播實(shí)現(xiàn)方法,對(duì)某一視頻節(jié)目首次點(diǎn)播時(shí),視頻服務(wù)器為用戶建立一條組播流;用戶請(qǐng)求同一視頻,結(jié)點(diǎn)加入時(shí),引入不同播放延遲,離根結(jié)點(diǎn)近的結(jié)點(diǎn)播放延遲小,離結(jié)點(diǎn)較遠(yuǎn)的結(jié)點(diǎn)播放延遲大;用組播VCR操作的方法實(shí)現(xiàn)VCR操作的快進(jìn)和快退,組播VCR操作組中用戶VCR操作結(jié)束,并入合適的組播流。本發(fā)明可以在覆蓋網(wǎng)絡(luò)組播下,加入最優(yōu)化的用戶等待時(shí)間,使用較少流數(shù)目和用戶緩沖區(qū)邏輯分塊,有效保證VOD系統(tǒng)服務(wù)用戶的播放連續(xù)性,并且組播VCR操作可以大大減少用單播實(shí)現(xiàn)VCR時(shí)所需流的數(shù)目,提供有效的暫停,快進(jìn),快退,重新定位功能,有利于網(wǎng)絡(luò)中大面積實(shí)現(xiàn)VCR功能。
文檔編號(hào)H04N7/173GK1719894SQ20051001193
公開日2006年1月11日 申請(qǐng)日期2005年6月15日 優(yōu)先權(quán)日2005年6月15日
發(fā)明者劉云, 霍曉宇, 李永昊, 卯玉成 申請(qǐng)人:北京交通大學(xué), 中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
黑水县| 潍坊市| 德阳市| 三门峡市| 贞丰县| 铅山县| 南汇区| 商丘市| 木里| 泾阳县| 共和县| 成安县| 龙陵县| 徐闻县| 出国| 西林县| 临安市| 建昌县| 澄城县| 临城县| 剑河县| 泰和县| 陆川县| 蓝山县| 洛宁县| 霞浦县| 凤城市| 方城县| 洪洞县| 东源县| 读书| 武定县| 台北县| 金坛市| 吕梁市| 正镶白旗| 电白县| 梨树县| 乌兰察布市| 阳高县| 新闻|