專利名稱:一種基于可擴(kuò)展編碼的對(duì)等網(wǎng)絡(luò)流媒體直播系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)多媒體技術(shù)領(lǐng)域,涉及一種基于可擴(kuò)展編碼的對(duì)等網(wǎng)絡(luò)流媒體直播系統(tǒng),涉及到基于擴(kuò)展編碼的視頻處理技術(shù)特別涉及到異構(gòu)的對(duì)等網(wǎng)絡(luò)中視頻數(shù)據(jù)的傳輸、調(diào)度策略和激勵(lì)機(jī)制的設(shè)計(jì)方法。
背景技術(shù):
隨著寬帶技術(shù)的廣泛應(yīng)用,網(wǎng)絡(luò)流媒體服務(wù)得到了迅速的發(fā)展。不斷增多的用戶數(shù)量和用戶對(duì)于服務(wù)質(zhì)量要求的提高對(duì)傳統(tǒng)的基于客戶端/服務(wù)器模式的流媒體服務(wù)提出了挑戰(zhàn)。對(duì)等網(wǎng)絡(luò)技術(shù)(Peer to Peer, P2P)的出現(xiàn)為網(wǎng)絡(luò)流媒體服務(wù)提供了新的發(fā)展機(jī)遇。對(duì)等網(wǎng)絡(luò)技術(shù)充分利用了網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的上傳帶寬資源,能夠克服由于用戶數(shù)量增加而帶來(lái)的服務(wù)瓶頸。為了解決由于用戶數(shù)量增長(zhǎng)而帶來(lái)的服務(wù)瓶頸,P2P技術(shù)被引入流媒體服務(wù)中。在目前應(yīng)用的P2P流媒體服務(wù)中,視頻內(nèi)容采用傳統(tǒng)的單一碼流的編碼方式進(jìn)行處理,碼率范圍在300kps到IMkps之間。這種編碼方式不具有可擴(kuò)展性,對(duì)于所有用戶都提供相同碼流的視頻,不能滿足來(lái)自異構(gòu)網(wǎng)絡(luò)下不同帶寬用戶的需求,具有高帶寬接入的用戶(如光纖用戶)和低帶寬接入用戶(如ADSL用戶)接受著相同質(zhì)量的視頻服務(wù)。這種非區(qū)分的服務(wù)模式降低了用戶體驗(yàn)。傳統(tǒng)的P2P協(xié)議為文件共享而創(chuàng)建,其中一些特性并不適合流媒體應(yīng)用,比如最少優(yōu)先的下載策略和“針鋒相對(duì)”的激勵(lì)機(jī)制。原有的P2P協(xié)議多數(shù)采用最少優(yōu)先的下載策略來(lái)保證文件的內(nèi)容的完整性。但是在P2P流媒體應(yīng)用中,這種策略卻不能保證視頻播放的時(shí)序性,導(dǎo)致不必要的延遲。與文件共享系統(tǒng)相同,P2P流媒體系統(tǒng)中的搭便車者只下載資源而不上傳資源,將會(huì)影響系統(tǒng)的整體效率。所以一個(gè)有效地激勵(lì)機(jī)制對(duì)于P2P系統(tǒng)來(lái)說(shuō)十分重要。主流的P2P文件共享系統(tǒng)BitTorrent采用“針鋒相對(duì)”的激勵(lì)機(jī)制,即每個(gè)節(jié)點(diǎn)比較其鄰居節(jié)點(diǎn)的提供的下載帶寬,從而決定其為鄰居提供多少的下載帶寬。這種激勵(lì)機(jī)制以減少下載時(shí)間作為獎(jiǎng)勵(lì),在文件共享系統(tǒng)中可以有效減少搭便車者,但是在P2P流媒體系統(tǒng)中,下載時(shí)間并不是影響用戶體驗(yàn)的決定因素。所以傳統(tǒng)的P2P 激勵(lì)機(jī)制并不適合應(yīng)用在P2P流媒體系統(tǒng)中。
發(fā)明內(nèi)容
根據(jù)上述背景技術(shù)中存在的缺陷和不足,本發(fā)明提供了一種基于改進(jìn)的P2P協(xié)議,并使用可擴(kuò)展編碼進(jìn)行視頻處理的P2P流媒體服務(wù);對(duì)于不同帶寬的用戶提供不同質(zhì)量的視頻服務(wù);提供一種有效地激勵(lì)機(jī)制,減少系統(tǒng)中的搭便車者,提高系統(tǒng)整體性能;改進(jìn)P2P協(xié)議中的調(diào)動(dòng)策略,減少啟動(dòng)延遲,節(jié)目轉(zhuǎn)換延遲,提供更穩(wěn)定的視頻服務(wù);本發(fā)明的基于可擴(kuò)展編碼的對(duì)等網(wǎng)絡(luò)流媒體直播系統(tǒng)包括視頻采集設(shè)備、可擴(kuò)展編碼設(shè)備、視頻存儲(chǔ)服務(wù)器和目錄服務(wù)器;其解決問題的技術(shù)方案是(1)采用集中目錄式的P2P結(jié)構(gòu)組成覆蓋網(wǎng)絡(luò),進(jìn)行視頻內(nèi)容的分發(fā);視頻采集設(shè)備將采集到的視頻內(nèi)容交給可擴(kuò)展編碼服務(wù)器,服務(wù)器采用H. 264-SVC標(biāo)準(zhǔn)對(duì)視頻數(shù)據(jù)進(jìn)行編碼,經(jīng)過編碼的視頻存儲(chǔ)在視頻存儲(chǔ)服務(wù)器中;節(jié)點(diǎn)進(jìn)入系統(tǒng)后首先和目錄服務(wù)器進(jìn)行通信,目錄服務(wù)器記錄其相關(guān)信息并根據(jù)其帶寬情況決定向它提供視頻的質(zhì)量等級(jí),并向其發(fā)送鄰居節(jié)點(diǎn)信息;節(jié)點(diǎn)獲得鄰居節(jié)點(diǎn)信息后,檢查自己的緩沖區(qū),根據(jù)混合優(yōu)先級(jí)調(diào)度策略計(jì)算需要請(qǐng)求的視頻塊優(yōu)先級(jí)得分; 然后根據(jù)優(yōu)先級(jí)向鄰居節(jié)點(diǎn)依次發(fā)出視頻塊請(qǐng)求;如果要請(qǐng)求的視頻塊在播放之前不能獲得,則拋棄該請(qǐng)求;優(yōu)先級(jí)策略包括采用最先播放優(yōu)先、最底層視頻優(yōu)先和最少資源優(yōu)先相結(jié)合的混合優(yōu)先級(jí)策略;上傳節(jié)點(diǎn)接到下載節(jié)點(diǎn)發(fā)送的視頻塊請(qǐng)求后,將該請(qǐng)求加入到為該節(jié)點(diǎn)建立的請(qǐng)求隊(duì)列;上傳節(jié)點(diǎn)根據(jù)激勵(lì)機(jī)制選擇對(duì)系統(tǒng)共享大的節(jié)點(diǎn)優(yōu)先服務(wù),為其提供更大的上傳帶寬和更多的增強(qiáng)層視頻塊,使其能夠獲得更好的視頻服務(wù);節(jié)點(diǎn)定期和目錄服務(wù)器進(jìn)行通信,更新鄰居節(jié)點(diǎn)信息,同時(shí)匯報(bào)自己的緩沖區(qū)狀態(tài);節(jié)點(diǎn)下載一部分視頻數(shù)據(jù)后便可作為上傳節(jié)點(diǎn)為其他節(jié)點(diǎn)進(jìn)行服務(wù);節(jié)點(diǎn)上的視頻播放器將收到的分層數(shù)據(jù)解碼播放;具體步驟如下a.本發(fā)明采用一個(gè)中心目錄服務(wù)器管理P2P網(wǎng)絡(luò)中的節(jié)點(diǎn),包括記錄節(jié)點(diǎn)帶寬, 擁有的視頻數(shù)據(jù)信息。網(wǎng)絡(luò)中的其他節(jié)點(diǎn)具有相同的地位,自組織成覆蓋網(wǎng)絡(luò),每個(gè)節(jié)點(diǎn)即作為下載者,也作為上傳者;b.本系統(tǒng)中的視頻源采用可擴(kuò)展視頻編碼進(jìn)行處理,將視頻流分成一個(gè)基本層和多個(gè)增強(qiáng)層;節(jié)點(diǎn)只需要接收基本層的視頻數(shù)據(jù)即可保證視頻播放,節(jié)點(diǎn)獲得越多的增強(qiáng)層,則可以獲得更加清晰的視頻;c.節(jié)點(diǎn)進(jìn)入P2P流媒體服務(wù)網(wǎng)絡(luò)時(shí),首先與目錄服務(wù)器通信,目錄服務(wù)器記錄其相關(guān)信息,并根據(jù)其帶寬情況決定可向其提供的最大的視頻碼流;目錄服務(wù)器同時(shí)返回一個(gè)具有新節(jié)點(diǎn)所需視頻塊的節(jié)點(diǎn)列表,新節(jié)點(diǎn)從該節(jié)點(diǎn)列表中選取節(jié)點(diǎn)作為其鄰居節(jié)點(diǎn), 向其請(qǐng)求視頻數(shù)據(jù)塊;d.網(wǎng)絡(luò)中的節(jié)點(diǎn)根據(jù)帶寬情況進(jìn)行分類,同時(shí)確定其可接收的增強(qiáng)層的數(shù)量;節(jié)點(diǎn)根據(jù)此信息向鄰居節(jié)點(diǎn)請(qǐng)求視頻塊;當(dāng)網(wǎng)絡(luò)帶寬變化時(shí),節(jié)點(diǎn)重新確定其可接收的增強(qiáng)層數(shù)量,自適應(yīng)調(diào)整視頻質(zhì)量;(2)設(shè)計(jì)一種最先播放優(yōu)先和底層視頻優(yōu)先相結(jié)合的調(diào)度策略,保證視頻播放流暢,減少啟動(dòng)延時(shí)和頻道轉(zhuǎn)換延時(shí);具體步驟如下a.本發(fā)明中的調(diào)度策略主要工作在下載端節(jié)點(diǎn),下載節(jié)點(diǎn)根據(jù)這個(gè)策略決定應(yīng)該先請(qǐng)求哪個(gè)視頻塊和向哪個(gè)上傳節(jié)點(diǎn)發(fā)送請(qǐng)求;b.每個(gè)下載節(jié)點(diǎn)擁有一個(gè)緩沖區(qū),其中存儲(chǔ)著將要播放的視頻塊,節(jié)點(diǎn)根據(jù)緩沖區(qū)的情況向上傳者發(fā)出視頻塊請(qǐng)求;緩沖區(qū)中的視頻塊有如下的優(yōu)先級(jí)先播放的視頻具有高的優(yōu)先級(jí),底層的視頻塊具有高優(yōu)先級(jí),在系統(tǒng)中資源少的視頻塊具有高的優(yōu)先級(jí);c.本發(fā)明采用參數(shù)表示節(jié)點(diǎn)η請(qǐng)求在t時(shí)間播放的1層視頻塊的優(yōu)先級(jí)得分,
越小,優(yōu)先級(jí)越高;定義為4 二巧“^ + 乂。+….,其中L視頻的分層數(shù),為 UULBK
、為當(dāng)前時(shí)間,B為緩沖區(qū)大小即緩沖區(qū)所緩沖的視頻長(zhǎng)度,λ為該視頻塊在系統(tǒng)中的副
本數(shù),K為系統(tǒng)中的節(jié)點(diǎn)數(shù),w2,W3為這三個(gè)影響因素的權(quán)重W1, w2, W3根據(jù)播放情況動(dòng)態(tài)調(diào)整,當(dāng)播放剛啟動(dòng)時(shí)巧,W2具有較大的權(quán)重,播放過程中W3的權(quán)重較大;由此定義可以看出越小,被請(qǐng)求的視頻塊越重要,所以具有更高的優(yōu)先級(jí);d.下載節(jié)點(diǎn)在選擇要下載的視頻塊時(shí)首先按照上面的公式計(jì)算的值,然后請(qǐng)
求得分最小的視頻塊,下載節(jié)點(diǎn)能夠預(yù)測(cè)這個(gè)視頻塊的下載時(shí)間,如果下載時(shí)間超過了視頻塊的回放時(shí)間,則拋棄這個(gè)請(qǐng)求,如果沒有超過,則向上傳者節(jié)點(diǎn)發(fā)出視頻塊請(qǐng)求;(3)改進(jìn)P2P協(xié)議中的激勵(lì)機(jī)制,用視頻質(zhì)量作為激勵(lì)因素,對(duì)系統(tǒng)貢獻(xiàn)自己上傳帶寬大的用戶能夠獲得更多增強(qiáng)層的視頻塊,從而獲得更加清晰的視頻服務(wù);該機(jī)制能夠有效提高系統(tǒng)的總上傳帶寬,減少搭便車者;具體步驟如下a.本發(fā)明提出的P2P激勵(lì)機(jī)制可以簡(jiǎn)單描述為為系統(tǒng)貢獻(xiàn)越多上傳帶寬,就能獲得越清晰的視頻服務(wù);這個(gè)策略主要在上傳者實(shí)現(xiàn);b.在上傳者端,節(jié)點(diǎn)需要決定先服務(wù)哪個(gè)鄰居節(jié)點(diǎn),并決定為每個(gè)鄰居節(jié)點(diǎn)分配多少的上傳帶寬;為此上傳者需要為每個(gè)下載者創(chuàng)建一個(gè)請(qǐng)求隊(duì)列,每個(gè)請(qǐng)求隊(duì)列按照先入先出的方式組織,上傳者按照請(qǐng)求的到達(dá)順序進(jìn)行服務(wù);c.在同一時(shí)間,上傳者發(fā)送一個(gè)被請(qǐng)求的視頻塊;而視頻塊具有播放的時(shí)效性, 如果請(qǐng)求的視頻塊在播放時(shí)間之前不能被響應(yīng),則上傳者拋棄該請(qǐng)求,減少資源浪費(fèi);d.上傳者根據(jù)鄰居節(jié)點(diǎn)的對(duì)其的貢獻(xiàn)大小來(lái)決定應(yīng)該響應(yīng)哪個(gè)節(jié)點(diǎn)的請(qǐng)求。上傳者根據(jù)Pn, k來(lái)決定每個(gè)節(jié)點(diǎn)的服務(wù)響應(yīng)概率;本發(fā)明中Pn, k表示上傳者節(jié)點(diǎn)η選擇接收者
節(jié)點(diǎn)k的概率
權(quán)利要求
1. 一種基于可擴(kuò)展編碼的對(duì)等網(wǎng)絡(luò)流媒體直播系統(tǒng),其特征在于,(1)采用集中目錄式的P2P結(jié)構(gòu)組成覆蓋網(wǎng)絡(luò),進(jìn)行視頻內(nèi)容的分發(fā);視頻采集設(shè)備將采集到的視頻內(nèi)容交給可擴(kuò)展編碼服務(wù)器,服務(wù)器采用H. 264-SVC標(biāo)準(zhǔn)對(duì)視頻數(shù)據(jù)進(jìn)行編碼,經(jīng)過編碼的視頻存儲(chǔ)在視頻存儲(chǔ)服務(wù)器中;節(jié)點(diǎn)進(jìn)入系統(tǒng)后首先和目錄服務(wù)器進(jìn)行通信,目錄服務(wù)器記錄它的IP、端口、所需視頻塊的信息,并根據(jù)其帶寬情況決定向它提供視頻的質(zhì)量等級(jí),并向其發(fā)送鄰居節(jié)點(diǎn)信息;節(jié)點(diǎn)獲得鄰居節(jié)點(diǎn)信息后,檢查自己的緩沖區(qū),根據(jù)混合優(yōu)先級(jí)調(diào)度策略計(jì)算需要請(qǐng)求的各個(gè)視頻塊的優(yōu)先級(jí)得分;然后根據(jù)優(yōu)先級(jí)向鄰居節(jié)點(diǎn)依次發(fā)出視頻塊請(qǐng)求;每個(gè)請(qǐng)求塊在發(fā)出之前都被打上一個(gè)time-to-play時(shí)間戳,標(biāo)記該請(qǐng)求塊將要播放的時(shí)間,如果要請(qǐng)求的視頻塊在播放之前不能獲得,則拋棄該請(qǐng)求;上傳節(jié)點(diǎn)接到下載節(jié)點(diǎn)發(fā)送的視頻塊請(qǐng)求后,將該請(qǐng)求加入到為這個(gè)下載節(jié)點(diǎn)建立的請(qǐng)求隊(duì)列中,在上傳節(jié)點(diǎn)端為每一個(gè)向它請(qǐng)求視頻塊的下載節(jié)點(diǎn)建立一個(gè)請(qǐng)求隊(duì)列;上傳節(jié)點(diǎn)根據(jù)激勵(lì)機(jī)制管理這些請(qǐng)求對(duì)列,選擇對(duì)系統(tǒng)共享大的節(jié)點(diǎn)優(yōu)先服務(wù),為其提供更大的上傳帶寬和更多的增強(qiáng)層視頻塊,使其能夠獲得更好的視頻服務(wù);節(jié)點(diǎn)定期和目錄服務(wù)器進(jìn)行通信,更新鄰居節(jié)點(diǎn)信息,同時(shí)匯報(bào)自己的緩沖區(qū)狀態(tài) ’節(jié)點(diǎn)下載一部分視頻數(shù)據(jù)后便可作為上傳節(jié)點(diǎn)為其他節(jié)點(diǎn)進(jìn)行服務(wù);節(jié)點(diǎn)上的視頻播放器將收到的分層數(shù)據(jù)解碼播放;(2)混合優(yōu)先級(jí)調(diào)度策略如下采用表示節(jié)點(diǎn)η請(qǐng)求在t時(shí)間播放的1層視頻塊的優(yōu)先級(jí)得分,《S^定義為
全文摘要
本發(fā)明公開了一種基于可擴(kuò)展編碼的對(duì)等網(wǎng)絡(luò)流媒體直播系統(tǒng),屬于網(wǎng)絡(luò)多媒體技術(shù)領(lǐng)域。其特征是采用可擴(kuò)展編碼和對(duì)等網(wǎng)絡(luò)技術(shù)提供可擴(kuò)展的流媒體直播服務(wù),采用集中目錄式的對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行視頻分發(fā)。提出了以視頻質(zhì)量作為激勵(lì)因素的激勵(lì)機(jī)制和一種混合優(yōu)先級(jí)的請(qǐng)求調(diào)度策略。本發(fā)明能夠提供自適應(yīng)的視頻服務(wù),根據(jù)用戶所處的網(wǎng)絡(luò)環(huán)境提供不同質(zhì)量視頻服務(wù),采用有效的激勵(lì)機(jī)制和調(diào)度策略提高系統(tǒng)的公平性和下載效率,減少啟動(dòng)延時(shí)、換臺(tái)延時(shí),提高了系統(tǒng)整體性能。
文檔編號(hào)H04L29/08GK102158767SQ20101050215
公開日2011年8月17日 申請(qǐng)日期2010年9月30日 優(yōu)先權(quán)日2010年9月30日
發(fā)明者劉秀龍, 李克秋, 楊世宇, 楊丹, 申彥明, 趙雨 申請(qǐng)人:大連理工大學(xué)