亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于P2P的流媒體直播系統(tǒng)設(shè)計(jì)

        2011-04-10 05:51:36王從局連云港師范高等專科學(xué)校計(jì)算機(jī)系江蘇連云港222006
        關(guān)鍵詞:客戶端服務(wù)器傳輸

        王從局(連云港師范高等??茖W(xué)校計(jì)算機(jī)系,江蘇 連云港222006)

        基于傳統(tǒng)的C/S模式或B/S模式的視頻直播或點(diǎn)播系統(tǒng),存在建設(shè)費(fèi)用高、服務(wù)器負(fù)荷大、網(wǎng)絡(luò)帶寬要求高、訪問量過大時(shí)播放質(zhì)量差、可靠性和可擴(kuò)展性受結(jié)構(gòu)限制等缺點(diǎn)?;赑2P的流媒體服務(wù)技術(shù)通過合理地使用客戶端計(jì)算機(jī)空閑的資源提供部分服務(wù),讓客戶機(jī)緩存一部分信息,充當(dāng)服務(wù)器的部分功能,使網(wǎng)絡(luò)中的資源和服務(wù)分散化。采用P2P架構(gòu)可以充分利用其中各節(jié)點(diǎn)閑置的計(jì)算能力或存儲(chǔ)空間,達(dá)到低成本的提供更高性能計(jì)算和海量存儲(chǔ)的目的[1]。下面,筆者設(shè)計(jì)了一種基于P2P流媒體的視頻直播系統(tǒng)。

        1 系統(tǒng)整體架構(gòu)

        基于P2P的流媒體直播系統(tǒng)分為服務(wù)器(是指保存有原始節(jié)目文件,最初發(fā)布服務(wù)的節(jié)點(diǎn))和客戶端(是指沒有節(jié)目文件,依靠其他節(jié)點(diǎn)傳輸?shù)拿襟w流進(jìn)行節(jié)目播放的節(jié)點(diǎn))2個(gè)部分。在P2P網(wǎng)絡(luò)上節(jié)點(diǎn)是對(duì)等的,即作為客戶端在接收上級(jí)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的同時(shí),也在作為服務(wù)器給下級(jí)節(jié)點(diǎn)提供數(shù)據(jù)流[2]。在P2P傳輸結(jié)構(gòu)的組織上,采用完全二叉樹的結(jié)構(gòu),如圖1所示。其中服務(wù)器作為樹的根節(jié)點(diǎn),客戶端根據(jù)請(qǐng)求加入的順序,在服務(wù)器的控制下,按照構(gòu)造完全二叉樹的策略逐漸組織傳輸結(jié)構(gòu)。

        圖1 系統(tǒng)整體架構(gòu)圖

        2 系統(tǒng)功能設(shè)計(jì)

        系統(tǒng)功能的設(shè)計(jì)包括服務(wù)器端功能設(shè)計(jì)和客戶端功能設(shè)計(jì)2部分。

        2.1 服務(wù)器端功能設(shè)計(jì)

        服務(wù)器端的主要功能由發(fā)布服務(wù)通告、獲取本地媒體流并播放、獲取節(jié)點(diǎn)加入P2P網(wǎng)絡(luò)、將實(shí)時(shí)媒體流傳給孩子節(jié)點(diǎn)、監(jiān)聽直接孩子節(jié)點(diǎn)的存活情況、處理孩子節(jié)點(diǎn)的斷線情況等功能構(gòu)成。

        1)發(fā)布服務(wù)通告 服務(wù)器在啟動(dòng)時(shí),會(huì)發(fā)布自己的服務(wù)通告,目的是讓客戶端通過服務(wù)通告找到服務(wù)器節(jié)點(diǎn),并且加入整個(gè)P2P網(wǎng)絡(luò)。主要通過JXTA平臺(tái),服務(wù)器建立自己的服務(wù)通告名稱和ID,然后發(fā)布出去,等待客戶端的連接。

        2)獲取本地媒體流并播放 服務(wù)器首先找到本地存放的媒體文件,并將其進(jìn)行轉(zhuǎn)換成實(shí)時(shí)的流媒體。主要通過JMF的媒體處理器對(duì)本地的媒體文件進(jìn)行處理,得到可供傳輸?shù)拿襟w流。

        3)獲取節(jié)點(diǎn)加入P2P網(wǎng)絡(luò) 服務(wù)器接收到客戶端的入網(wǎng)請(qǐng)求之后,將客戶端加入P2P傳輸網(wǎng)絡(luò)中,并設(shè)置相應(yīng)的屬性如加入的順序編號(hào)作為標(biāo)記。主要通過JXTA的消息機(jī)制,客戶端將自己的信息傳給服務(wù)器,并讓服務(wù)器將其加入P2P網(wǎng)絡(luò)中。

        4)將實(shí)時(shí)媒體流傳給孩子節(jié)點(diǎn) 服務(wù)器通過JMF獲取正播放的媒體,再通過它發(fā)送給自己的直接孩子節(jié)點(diǎn)。

        5)監(jiān)聽直接孩子節(jié)點(diǎn)的存活情況 用JXTA的消息機(jī)制定時(shí)給直接孩子節(jié)點(diǎn)(包括左孩子和右孩子)發(fā)送消息來判斷直接孩子節(jié)點(diǎn)是否存活。如果孩子節(jié)點(diǎn)收到消息,則孩子節(jié)點(diǎn)給服務(wù)器返回消息證明自己存在。

        6)處理孩子節(jié)點(diǎn)的斷線情況 服務(wù)器接收到孩子節(jié)點(diǎn)(可以是所有的孩子節(jié)點(diǎn))不存在的消息之后,重新調(diào)整整個(gè)P2P網(wǎng)絡(luò)的傳輸結(jié)構(gòu),將P2P網(wǎng)絡(luò)中最后一個(gè)節(jié)點(diǎn)調(diào)到剛斷線節(jié)點(diǎn)處,代替剛掉線的節(jié)點(diǎn)以保持整個(gè)網(wǎng)絡(luò)傳輸?shù)捻槙场?/p>

        2.2 客戶端功能設(shè)計(jì)

        客戶端主要功能由搜索服務(wù)器服務(wù)通告、加入P2P網(wǎng)絡(luò)、獲得父節(jié)點(diǎn)媒體流并播放、將實(shí)時(shí)媒體流傳給孩子節(jié)點(diǎn)、處理直接孩子節(jié)點(diǎn)的斷線情況等功能構(gòu)成。

        1)搜索服務(wù)器服務(wù)通告 通過JXTA平臺(tái),客戶端根據(jù)默認(rèn)的服務(wù)名稱搜索服務(wù)器建立的服務(wù)通告名稱。

        2)加入P2P網(wǎng)絡(luò) 客戶端搜索到服務(wù)器的服務(wù)通告后,通過JXTA的消息機(jī)制將自己的信息情況發(fā)送給服務(wù)器,請(qǐng)求加入P2P網(wǎng)絡(luò)。

        3)獲得父節(jié)點(diǎn)媒體流并播放 客戶端通過JMF技術(shù),獲得從父節(jié)點(diǎn)發(fā)送給自己的實(shí)時(shí)媒體流進(jìn)行相應(yīng)的處理之后,實(shí)時(shí)播放出來。

        4)將實(shí)時(shí)媒體流傳給孩子節(jié)點(diǎn) 用JMF的媒體流克隆技術(shù),將自己正播放的從父節(jié)點(diǎn)收到的實(shí)時(shí)媒體流克隆一份,發(fā)送給自己的直接孩子節(jié)點(diǎn)。

        5)處理直接孩子節(jié)點(diǎn)的斷線情況 客戶端首先通過定時(shí)函數(shù)探測(cè)到自己的直接孩子節(jié)點(diǎn)已經(jīng)斷線,然后將自己孩子節(jié)點(diǎn)的信息用JXTA的消息機(jī)制發(fā)送給服務(wù)器,讓服務(wù)器處理。

        3 關(guān)鍵技術(shù)

        3.1 節(jié)點(diǎn)加入

        在P2P應(yīng)用中,傳輸結(jié)構(gòu)是在逐漸增加的節(jié)點(diǎn)上創(chuàng)建的。筆者設(shè)計(jì)的傳輸結(jié)構(gòu)采用完全二叉樹的結(jié)構(gòu)形式,也就是說服務(wù)器的服務(wù)發(fā)布后,節(jié)點(diǎn)可以發(fā)起一個(gè)請(qǐng)求到服務(wù)器,服務(wù)器將把前2個(gè)發(fā)起請(qǐng)求的節(jié)點(diǎn)作為孩子節(jié)點(diǎn),然后服務(wù)器把以后發(fā)來請(qǐng)求的節(jié)點(diǎn)的請(qǐng)求轉(zhuǎn)發(fā)給某個(gè)子孫節(jié)點(diǎn),服務(wù)將由子孫節(jié)點(diǎn)來提供。節(jié)點(diǎn)的加入過程如圖2所示。

        圖2 節(jié)點(diǎn)的加入過程圖

        設(shè)計(jì)中,使用Sequence來存儲(chǔ)節(jié)點(diǎn)信息。如假設(shè)服務(wù)器的編號(hào)為1,第一個(gè)發(fā)起請(qǐng)求的節(jié)點(diǎn)為2,依次類推,則i節(jié)點(diǎn)的左孩子就是i×2,右孩子是i×2+1,父節(jié)點(diǎn)是i/2向下取整。i節(jié)點(diǎn)發(fā)出的請(qǐng)求得到服務(wù)器的響應(yīng)后,將其信息放入Sequence的末尾(即位置i),若自己已經(jīng)存在2個(gè)孩子節(jié)點(diǎn),則請(qǐng)求將被轉(zhuǎn)發(fā)給編號(hào)為i/2的節(jié)點(diǎn)。在圖2中,節(jié)點(diǎn)4的請(qǐng)求被服務(wù)器轉(zhuǎn)發(fā)給了節(jié)點(diǎn)2,即4/2,使新加進(jìn)的節(jié)點(diǎn)成了節(jié)點(diǎn)2的左孩子。這種做法將確保傳輸結(jié)構(gòu)為完全二叉樹。

        3.2 節(jié)點(diǎn)退出

        在P2P應(yīng)用中,節(jié)點(diǎn)的不穩(wěn)定性造成其有可能隨時(shí)退出系統(tǒng)的情況。在設(shè)計(jì)中,節(jié)點(diǎn)不但從上一級(jí)節(jié)點(diǎn)接收流媒體用來自己播放,同時(shí)還要向下一級(jí)節(jié)點(diǎn)提供數(shù)據(jù)流,如果有節(jié)點(diǎn)退出,它的下一級(jí)節(jié)點(diǎn)將會(huì)失去數(shù)據(jù)源,播放將被中斷[3]。因此,在發(fā)現(xiàn)節(jié)點(diǎn)故障后,需要進(jìn)行傳輸結(jié)構(gòu)的調(diào)整,以確保所有節(jié)點(diǎn)的播放正常進(jìn)行。為了保證被調(diào)整以后的傳輸結(jié)構(gòu)仍然是完全二叉樹,筆者以最后一個(gè)節(jié)點(diǎn)補(bǔ)充失效節(jié)點(diǎn)的方式來調(diào)整傳輸結(jié)構(gòu),如圖3所示。

        圖3 節(jié)點(diǎn)的退出過程圖

        如果節(jié)點(diǎn)2退出,服務(wù)器(節(jié)點(diǎn)1)將在一定時(shí)間后通過監(jiān)視程序發(fā)現(xiàn)節(jié)點(diǎn)2失效。隨后服務(wù)器將查找Sequence中最后一個(gè)節(jié)點(diǎn),即節(jié)點(diǎn)7。服務(wù)器通過節(jié)點(diǎn)7的編號(hào)找到它的父節(jié)點(diǎn)3,通知節(jié)點(diǎn)3取消對(duì)節(jié)點(diǎn)7的數(shù)據(jù)流傳輸和監(jiān)視。并將節(jié)點(diǎn)7的信息調(diào)整到Sequence中的位置2,然后服務(wù)器重新開始對(duì)新的2號(hào)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)流傳輸和監(jiān)視。最后,服務(wù)器通過Sequence的長(zhǎng)度是否大于2×2和2×2+1來判斷節(jié)點(diǎn)2是否有孩子。若有孩子,則服務(wù)器象節(jié)點(diǎn)4、5請(qǐng)求加入時(shí)一樣,向新2號(hào)節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)4、5請(qǐng)求加入的消息,之后新2號(hào)節(jié)點(diǎn)將分別向他們傳輸數(shù)據(jù)流,并且監(jiān)視他們的有效性[4]。

        當(dāng)某節(jié)點(diǎn)通過監(jiān)視程序發(fā)現(xiàn)自己的孩子節(jié)點(diǎn)失效時(shí),將向服務(wù)器發(fā)送 “編號(hào)為i的節(jié)點(diǎn)失效”的消息,編號(hào)i通過自己的編號(hào)計(jì)算而來,然后由服務(wù)器通過向節(jié)點(diǎn)發(fā)送消息來完成傳輸結(jié)構(gòu)的調(diào)整。

        3.3 流媒體的傳輸

        向客戶端提供的節(jié)目一般以媒體文件的形式存儲(chǔ)于服務(wù)器中,這些媒體文件直接傳輸?shù)娇蛻舳耸菬o法被客戶端實(shí)時(shí)接收并播放的。為了使客戶端可以實(shí)時(shí)接收并播放節(jié)目,需要服務(wù)器在傳輸時(shí)將媒體文件轉(zhuǎn)化為流媒體格式,以流的形式傳輸媒體數(shù)據(jù)。RTP是為支持實(shí)時(shí)多媒體通信而設(shè)計(jì)的傳輸層協(xié)議,本設(shè)計(jì)所采用的流媒體格式是基于RTP的。在網(wǎng)絡(luò)上傳輸RTP流,必須使用處理器和RTP編碼的數(shù)據(jù)源,并構(gòu)建一個(gè)會(huì)話管理器或數(shù)據(jù)匯集點(diǎn)來控制傳輸。處理器的輸入可以是當(dāng)前捕獲的數(shù)據(jù),也可以是已存儲(chǔ)的文件。一般的節(jié)目都是既有圖像又有聲音的,在處理器中音視頻被描述成2個(gè)軌道,即視頻軌道和音頻軌道。由于視頻和音頻的編碼方式不同,所以必須從媒體文件中分別提取出視頻軌道和音頻軌道,按照各自的編碼方式轉(zhuǎn)換為RTP流,之后創(chuàng)建2個(gè)會(huì)話管理器,在2個(gè)會(huì)話中分別進(jìn)行傳輸[5]。

        4 結(jié) 語

        在綜合考慮各種因素的情況下,利用P2P技術(shù)設(shè)計(jì)大規(guī)模流媒體直播解決方案,可以在將來提供更好的網(wǎng)絡(luò)流媒體播放服務(wù)。采用P2P技術(shù)設(shè)計(jì)的流媒體直播系統(tǒng),還具有在線訪問用戶越多視頻質(zhì)量就越清晰流暢、容易部署和擴(kuò)展能力高的特點(diǎn),可以在將來提供更好的網(wǎng)絡(luò)流媒體播放服務(wù)。

        [1]彭凱,武娟,楊宗凱,等 .基于P2P的流媒體直播技術(shù)研究與展望 [J].計(jì)算機(jī)科學(xué),2009,36(1):10-15.

        [2]韓俊偉,王少鋒 .基于P2P的流媒體直播系統(tǒng)研究與設(shè)計(jì) [J].計(jì)算機(jī)應(yīng)用研究,2006(6):227-229.

        [3]李長(zhǎng)利,應(yīng)小昆,張萬光,等 .基于P2P網(wǎng)絡(luò)技術(shù)的視頻直播系統(tǒng)的實(shí)現(xiàn)與測(cè)試 [J].微電子學(xué)與計(jì)算機(jī),2008,25(10):83-86.

        [4]張路 .基于流媒體技術(shù)的電視直播系統(tǒng)研究與設(shè)計(jì) [J].中國(guó)科技博覽,2009(14):82-83.

        [5]王從局 .基于JXTA的視頻直播系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [D].上海:華東師范大學(xué),2009.

        猜你喜歡
        客戶端服務(wù)器傳輸
        混合型隨機(jī)微分方程的傳輸不等式
        牽引8K超高清傳輸時(shí)代 FIBBR Pure38K
        通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
        電子制作(2018年18期)2018-11-14 01:48:00
        縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
        孵化垂直頻道:新聞客戶端新策略
        基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
        支持長(zhǎng)距離4K HDR傳輸 AudioQuest Pearl、 Forest、 Cinnamon HDMI線
        得形忘意的服務(wù)器標(biāo)準(zhǔn)
        計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
        欧美性生交活xxxxxdddd| 亚洲精品高清av在线播放| 白浆高潮国产免费一区二区三区 | 国产 在线播放无码不卡| 少妇人妻无一区二区三区| 大地资源高清在线视频播放| 一区二区传媒有限公司| 男女视频在线一区二区| 人妻少妇中文字幕专区| 欧美精品欧美人与动人物牲交 | 亚洲av色香蕉一区二区三区av| 一本色道久久hezyo无码| 公粗挺进了我的密道在线播放贝壳| 亚洲色成人WWW永久在线观看| 中文字幕一区二区区免| 国产激情久久久久影院小草| 特级做a爰片毛片免费看无码| 无码午夜剧场| 99视频偷拍视频一区二区三区| 亚洲精品无码永久中文字幕| 日本精品人妻无码77777| 456亚洲人成在线播放网站| 国产少妇高潮在线视频| 婷婷综合另类小说色区| 97影院在线午夜| 久久精品国产亚洲片| 大量漂亮人妻被中出中文字幕| 国产精品亚洲αv天堂无码| 国产小视频网址| 天堂av一区二区麻豆| 国产精品视频永久免费播放| 台湾佬综合网| 国产精品一区二区午夜久久| 国产精品综合一区久久| 老司机亚洲精品影院| 8av国产精品爽爽ⅴa在线观看| av男人的天堂第三区| 东京热人妻系列无码专区| 品色堂永远的免费论坛| av网站可以直接看的| 亚洲黄色天堂网站在线观看禁18|