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

        ?

        基于HTTP的P2P流媒體直播系統(tǒng)構(gòu)建*

        2012-11-04 02:44:40鄭藝芳
        關(guān)鍵詞:客戶端服務(wù)器節(jié)點(diǎn)

        鄭藝芳

        (福建師范大學(xué)人民武裝學(xué)院,福建福州 350007)

        基于HTTP的P2P流媒體直播系統(tǒng)構(gòu)建*

        鄭藝芳

        (福建師范大學(xué)人民武裝學(xué)院,福建福州 350007)

        P2P技術(shù)在音視頻直播中的應(yīng)用,可以極大降低中心服務(wù)器的壓力,為用戶提供良好的服務(wù)體驗(yàn),是新一代內(nèi)容分發(fā)的核心技術(shù).基于HTTP流媒體協(xié)議構(gòu)建的P2P直播系統(tǒng),可以使P2P終端具有更好的網(wǎng)絡(luò)適應(yīng)性;其中HTTP流媒體協(xié)議的切片技術(shù),有利于P2P網(wǎng)絡(luò)中資源的定位和查詢,比起傳統(tǒng)的P2P協(xié)議,更加適合專用網(wǎng)絡(luò)中的音視頻直播服務(wù)構(gòu)建.

        HTTP流直播;P2P;流媒體

        HTTP是互聯(lián)網(wǎng)上流量排名第一的協(xié)議,其次為各種P2P協(xié)議,如BT等.HTTP承載了大部分的文本、音視頻數(shù)據(jù)傳輸,是各種主流應(yīng)用的首選協(xié)議.但長(zhǎng)期以來(lái),HTTP沒有用來(lái)作為流媒體數(shù)據(jù)傳輸?shù)闹髁鲄f(xié)議,大部分直播服務(wù)采用了RTSP、RTMP等協(xié)議進(jìn)行傳輸控制.在音視頻直播領(lǐng)域,基于P2P的流媒體技術(shù)十分普及,如 PPStream、PPLive、ESM等,它們大部分采用了復(fù)雜的P2P網(wǎng)絡(luò)模型和混合模型,資源定位算法復(fù)雜,各計(jì)算節(jié)點(diǎn)的系統(tǒng)資源占用較大.

        由于HTTP流媒體協(xié)議基于標(biāo)準(zhǔn)HTTP協(xié)議,并在此基礎(chǔ)上定義了適合媒體數(shù)據(jù)實(shí)時(shí)傳播的機(jī)制,有效保證了音視頻數(shù)據(jù)的傳輸實(shí)時(shí)性.HTTP對(duì)網(wǎng)絡(luò)有較強(qiáng)適用性,即大部分的防火墻都默認(rèn)允許HTTP協(xié)議穿透;以此為基礎(chǔ)來(lái)構(gòu)建P2P服務(wù),可以適應(yīng)現(xiàn)有網(wǎng)絡(luò),為用戶提供較好體驗(yàn),同時(shí)極大減輕服務(wù)器的壓力[1].

        1 基于HTTP的普通直播服務(wù)系統(tǒng)架構(gòu)

        基于HTTP流媒體協(xié)議構(gòu)建傳統(tǒng)的視頻直播系統(tǒng),有三個(gè)主要部分:直播數(shù)據(jù)編碼、數(shù)據(jù)分發(fā)系統(tǒng)、客戶端.一般架構(gòu)如圖1所示.

        圖1 HTTP流媒體服務(wù)體系

        在典型的配置中,前段編碼器將音視頻直播流數(shù)據(jù)按照指定壓縮標(biāo)準(zhǔn)進(jìn)行編碼,一般編碼規(guī)范會(huì)遵循MPEG-2或H.264標(biāo)準(zhǔn),然后通過(guò)文件切割器不斷生成小的TS流文件,同時(shí)生成索引文件.所創(chuàng)建的索引文件和TS流文件群會(huì)分發(fā)到Web架構(gòu)服務(wù)器中,由Web服務(wù)器將索引文件和TS流文件進(jìn)行發(fā)布.這樣客戶端就可以通過(guò)標(biāo)準(zhǔn)HTTP協(xié)議讀取索引及流文件,解碼后播出.

        1.1 直播數(shù)據(jù)編碼

        直播數(shù)據(jù)編碼部分的數(shù)據(jù)來(lái)源是衛(wèi)星接收機(jī),衛(wèi)星接收機(jī)接收衛(wèi)星信號(hào),將其以MPEG-2的TS流輸入到編碼器.一般情況下,每個(gè)頻道都配置一臺(tái)專用編碼器,所以前端編碼器的多少和直播系統(tǒng)支持的頻道數(shù)有關(guān).編碼器調(diào)整自己的配置,采用H.264的視頻編碼格式和AAC的音頻格式,對(duì)輸入TS流進(jìn)行壓縮編碼,并對(duì)音視頻流以MPEG2 TS的文件格式進(jìn)行封裝.直播編碼器產(chǎn)生的TS流直接輸入到流文件切割器中,流切割器將其按照直播的實(shí)時(shí)性要求,切割為一定粒度的小TS文件,一般該粒度設(shè)置為10秒;同時(shí),流切割器還產(chǎn)生一個(gè)包含生成TS文件列表的索引文件[2].

        這樣,直播數(shù)據(jù)編碼部分最終生成了索引和TS流文件,這些文件將被存儲(chǔ)到數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng),進(jìn)行分發(fā).

        1.2 數(shù)據(jù)分發(fā)系統(tǒng)

        數(shù)據(jù)分發(fā)系統(tǒng)一般是由Web服務(wù)器或者是web緩存系統(tǒng)組成,用來(lái)作為HTTP服務(wù)器發(fā)布媒體索引文件和一系列的.ts文件,以供HTTP客戶端下載.一般來(lái)說(shuō),索引文件采用M3U8文件格式規(guī)范,TS文件為MPEG-2中的文件封裝格式.

        表1 文件格式和MIME類型對(duì)應(yīng)

        M3U8文件示例如表2所示.其中將M3U8中的每一行列出來(lái),并在右方注釋.

        表2 M3U8文件示例及注釋

        在完成直播功能時(shí),M3U8文件需要及時(shí)更新,這個(gè)取決于及時(shí)調(diào)整其存活時(shí)間屬性,這樣文件會(huì)被頻繁地覆蓋,客戶端也會(huì)在存活時(shí)間到期后重新請(qǐng)求更新的M3U8文件.

        1.3 客戶端

        客戶端首先獲取M3U8索引文件,并解析M3U8識(shí)別其中的每一個(gè)TS文件,以及解密密鑰等必要信息.客戶端按順序下載每個(gè)可用的媒體文件.

        客戶端也采用HTTP協(xié)議請(qǐng)求數(shù)據(jù),HTTP協(xié)議并不需要設(shè)計(jì)如何穿透防火墻,一般防火墻都允許這一類協(xié)議的數(shù)據(jù)通過(guò)[3].

        2 基于HTTP的P2P直播系統(tǒng)架構(gòu)

        第二部分描述了基于服務(wù)器的直播系統(tǒng)架構(gòu).這種架構(gòu)充分利用了HTTP部署方便的特點(diǎn),可以較為快速地完成視頻直播系統(tǒng)的構(gòu)建.然而,基于HTTP的服務(wù)器模型和一般的B/S架構(gòu)有同樣的缺陷,即隨著用戶規(guī)模的擴(kuò)大,服務(wù)器需要不斷擴(kuò)容以支持用戶并發(fā)請(qǐng)求;當(dāng)用戶數(shù)量極大時(shí),服務(wù)器節(jié)點(diǎn)的投資建設(shè)將占用大量的成本.

        基于P2P技術(shù)可以解決這一問(wèn)題,在P2P系統(tǒng)中,客戶端同時(shí)作為服務(wù)器提供數(shù)據(jù)分發(fā)服務(wù).在服務(wù)器端,除了傳統(tǒng)的數(shù)據(jù)服務(wù)器外,還需要配置少量服務(wù)器用于收集資源區(qū)域分布信息,為客戶端請(qǐng)求數(shù)據(jù)提供索引服務(wù).

        2.1 基于HTTP的P2P網(wǎng)絡(luò)模型

        基于HTTP流協(xié)議的P2P模型,具有如下優(yōu)勢(shì):

        (1)HTTP協(xié)議可以無(wú)需考慮網(wǎng)絡(luò)穿透問(wèn)題,防火墻一般都允許HTTP協(xié)議通過(guò);

        (2)HTTP流媒體協(xié)議對(duì)文件的切片方式,導(dǎo)致客戶端需要下載多個(gè)小ts文件,存儲(chǔ)在內(nèi)存中后連貫起來(lái)播放,在直播系統(tǒng)設(shè)計(jì)中,一般會(huì)下載3段ts文件.這樣,終端的節(jié)點(diǎn)實(shí)際上都保存這最近3段的ts文件.這種設(shè)計(jì)模式方便終端節(jié)點(diǎn)通過(guò)標(biāo)準(zhǔn)的web方式提供數(shù)據(jù)服務(wù);

        (3)終端節(jié)點(diǎn)和資源節(jié)點(diǎn)管理服務(wù)器之間基于標(biāo)準(zhǔn)HTTP協(xié)議進(jìn)行數(shù)據(jù)交互,協(xié)議設(shè)計(jì)方便,軟件編寫簡(jiǎn)單.

        基于HTTP的P2P網(wǎng)絡(luò)模型如圖2所示.

        圖2 基于HTTP的P2P網(wǎng)絡(luò)模型

        相對(duì)于傳統(tǒng)的HTTP流服務(wù),該網(wǎng)絡(luò)模型在服務(wù)架構(gòu)上,增加了資源節(jié)點(diǎn)管理服務(wù)器,采用P2P中的混合網(wǎng)絡(luò)模型進(jìn)行資源的定位和協(xié)調(diào).每個(gè)終端節(jié)點(diǎn)都接受節(jié)點(diǎn)管理服務(wù)器的命令,告知其當(dāng)前狀態(tài)、網(wǎng)絡(luò)狀況等信息.

        資源節(jié)點(diǎn)管理服務(wù)器不僅直接和終端節(jié)點(diǎn)交換信息,同時(shí)和web服務(wù)器交換信息.Web服務(wù)器接收終端節(jié)點(diǎn)的首次請(qǐng)求,并根據(jù)節(jié)點(diǎn)管理服務(wù)器中保存的當(dāng)前節(jié)點(diǎn)的信息來(lái)決定終端最終從哪里得到數(shù)據(jù).Web服務(wù)器將連接的客戶端信息同步給節(jié)點(diǎn)管理服務(wù)器,這樣,節(jié)點(diǎn)服務(wù)器就根據(jù)區(qū)域節(jié)點(diǎn)資源分布算法,生成相應(yīng)的區(qū)域節(jié)點(diǎn)分布信息.

        終端節(jié)點(diǎn)請(qǐng)求數(shù)據(jù)時(shí),如果服務(wù)器認(rèn)為該區(qū)域的節(jié)點(diǎn)足以支撐其數(shù)據(jù)請(qǐng)求,則其首先從web服務(wù)器得到對(duì)應(yīng)區(qū)域的節(jié)點(diǎn)分布信息,然后從各個(gè)節(jié)點(diǎn)獲取對(duì)應(yīng)的直播數(shù)據(jù)[4].這時(shí),各個(gè)終端節(jié)點(diǎn)之間通過(guò)HTTP協(xié)議完成數(shù)據(jù)交互,所有節(jié)點(diǎn)在網(wǎng)絡(luò)上都是平等的.

        2.2 數(shù)據(jù)獲取流程及關(guān)鍵算法

        P2P節(jié)點(diǎn)開始總是從web服務(wù)器請(qǐng)求數(shù)據(jù),web服務(wù)器是P2P節(jié)點(diǎn)唯一知道的初始外界聯(lián)系對(duì)象.設(shè)P2P節(jié)點(diǎn)為A,中心Web服務(wù)集群為H,資源節(jié)點(diǎn)管理服務(wù)器為R,P2P節(jié)點(diǎn)的數(shù)據(jù)請(qǐng)求流程如下:

        (1)節(jié)點(diǎn)A連接中心Web服務(wù)器H,首得到當(dāng)前的直播列表文件,A節(jié)點(diǎn)解析該列表文件,但暫時(shí)不請(qǐng)求其中指定的URL獲取數(shù)據(jù).

        (2)H得到A的連接請(qǐng)求后,通知資源節(jié)點(diǎn)管理服務(wù)器R,同時(shí)在回復(fù)信息中告知R的訪問(wèn)方法.

        (3)A向R發(fā)起請(qǐng)求,要求得到索引文件中指定的流媒體ts文件的數(shù)據(jù)源分布狀況.

        (4)R查找數(shù)據(jù)庫(kù),得到A節(jié)點(diǎn)所在區(qū)域中的信息,回復(fù)數(shù)據(jù)資源的區(qū)域分布信息給A;

        (5)A節(jié)點(diǎn)將根據(jù)獲取的區(qū)域分布信息向其中的節(jié)點(diǎn)發(fā)起請(qǐng)求,獲取對(duì)應(yīng)數(shù)據(jù).

        由以上數(shù)據(jù)獲取流程可知,資源節(jié)點(diǎn)管理服務(wù)器R查找資源節(jié)點(diǎn)的算法,是影響整體性能的關(guān)鍵所在.在本課題中,采用了類似DHT的算法來(lái)完成節(jié)點(diǎn)定位和查詢.節(jié)點(diǎn)A使用哈希函數(shù)HASH(RID,RIP)標(biāo)示自己請(qǐng)求的資源名稱(RID)以及自身IP地址(RIP),經(jīng)過(guò)哈希運(yùn)算后得到唯一的標(biāo)識(shí),節(jié)點(diǎn)管理服務(wù)器R據(jù)此查找其對(duì)應(yīng)的節(jié)點(diǎn)資源信息.

        節(jié)點(diǎn)管理服務(wù)器采用web服務(wù)模式構(gòu)建,基于soap協(xié)議為web服務(wù)器,各個(gè)終端節(jié)點(diǎn)提供訪問(wèn)方法.

        3 工程應(yīng)用

        建設(shè)專用網(wǎng)絡(luò)的多媒體廣告信息系統(tǒng)需要增加直播功能,采用了基于HTTP的P2P技術(shù).該系統(tǒng)提供了30個(gè)頻道的采集和直播,并以每個(gè)1.2~1.6Mbps的碼流完成編碼參數(shù)配置.設(shè)計(jì)采用HP380G5服務(wù)器作為Web分發(fā)系統(tǒng),通過(guò)Linux系統(tǒng)集群實(shí)現(xiàn).每個(gè)服務(wù)器配備千兆網(wǎng)卡,服務(wù)器設(shè)計(jì)負(fù)載能力為300用戶.預(yù)計(jì)用戶數(shù)為10~30萬(wàn)之間.

        3.1 系統(tǒng)模塊圖

        圖3 廣告信息直播系統(tǒng)模塊圖

        系統(tǒng)整體包括內(nèi)容制作系統(tǒng)、直播采集轉(zhuǎn)發(fā)系統(tǒng)、廣告管理系統(tǒng)、廣告服務(wù)系統(tǒng)、信息發(fā)布系統(tǒng)、各種形式的多媒體信息終端,下面分別說(shuō)明其作用.

        (1)內(nèi)容制作系統(tǒng)可將各種格式的視頻進(jìn)行轉(zhuǎn)碼和檢測(cè),使其他格式的視頻資源轉(zhuǎn)化為符合高清廣告機(jī)要求的視頻,并對(duì)視頻進(jìn)行壓縮,形成h264編碼視頻;

        (2)直播采集轉(zhuǎn)發(fā)系統(tǒng)將衛(wèi)星電視信號(hào)轉(zhuǎn)換為數(shù)據(jù)流,并將直播轉(zhuǎn)發(fā)到Web數(shù)據(jù)分發(fā)系統(tǒng)中;

        (3)多媒體廣告管理系統(tǒng)包括廣告運(yùn)營(yíng)商管理、廣告資源管理、廣告資源分發(fā)、廣告發(fā)布、廣告機(jī)分組管理、廣告機(jī)監(jiān)控、廣告展示統(tǒng)計(jì)、第三方信息接入等模塊.以組為單位的管理模式可以實(shí)現(xiàn)個(gè)性化的精確廣告投放展示.

        (4)多媒體廣告服務(wù)系統(tǒng)包括廣告機(jī)心跳服務(wù)、廣告資源下載服務(wù)、日志上報(bào)采集、直播服務(wù)、第三方數(shù)據(jù)轉(zhuǎn)發(fā)等主要模塊.廣告服務(wù)系統(tǒng)采用分布式部署.

        (5)圖文信息發(fā)布管理系統(tǒng)進(jìn)行資訊管理和資訊瀏覽查詢展示,直接響應(yīng)終端的展示查詢請(qǐng)求.

        3.2 系統(tǒng)實(shí)驗(yàn)數(shù)據(jù)分析

        在實(shí)際的環(huán)境中測(cè)試,每天同時(shí)上線用戶數(shù)最高峰值為5000左右,此時(shí),服務(wù)器投入的資源為2臺(tái)集群Web數(shù)據(jù)分發(fā)服務(wù)器,其余的數(shù)據(jù)都通過(guò)P2P網(wǎng)絡(luò)進(jìn)行分發(fā).而我們?cè)趯?shí)驗(yàn)室模擬5000用戶進(jìn)行傳統(tǒng)中心服務(wù)模式測(cè)試,支撐5000用戶需要至少18臺(tái)服務(wù)器集群,且此時(shí)服務(wù)器CPU占用率已高達(dá)85%.表3是測(cè)試數(shù)據(jù)的對(duì)比.

        表3 P2P分發(fā)模式和中心服務(wù)模式對(duì)比

        數(shù)據(jù)顯示,P2P模式服務(wù)器壓力明顯較小,但客戶端壓力也明顯較大.由于此應(yīng)用場(chǎng)合是運(yùn)行在專用網(wǎng)絡(luò)中的廣告信息終端設(shè)備,不運(yùn)行其它任務(wù),所以客戶端略高的資源占用不會(huì)引起業(yè)務(wù)實(shí)現(xiàn)問(wèn)題.對(duì)比兩種方案,在5000臺(tái)的規(guī)模下,P2P模式已經(jīng)占據(jù)成本優(yōu)勢(shì).隨著用戶數(shù)量的增加,其優(yōu)勢(shì)更加明顯.

        4 結(jié)論

        基于HTTP流媒體協(xié)議構(gòu)建的P2P直播系統(tǒng),可以滿足中小型流媒體直播服務(wù)的需求,其特點(diǎn)使得部署應(yīng)用十分簡(jiǎn)單,而且可以提供實(shí)時(shí)性較好的直播服務(wù).采用該技術(shù),可以有效解決視頻直播中的服務(wù)器壓力過(guò)大,高峰時(shí)段服務(wù)質(zhì)量下降等問(wèn)題,極大提高直播系統(tǒng)的穩(wěn)定性并降低總體成本.

        [1]王志海,童新海,沈寒輝.OpenSSL與網(wǎng)絡(luò)信息安全——基礎(chǔ)、結(jié)構(gòu)和指令[M].北京:清華大學(xué)出版社,2007.

        [2]管磊.P2P技術(shù)揭秘:P2P網(wǎng)絡(luò)技術(shù)原理與典型系統(tǒng)開發(fā)[M].北京:清華大學(xué)出版社,2011.

        [3](美)史蒂文斯.TCP.IP詳解(卷3):TCP事務(wù)協(xié)議.HTTP和UNIX域協(xié)議[M].北京:人民郵電出版社,2010.

        [4]黃孝建,陶蒙華.IPTV關(guān)鍵技術(shù)詳解[M].北京:北京郵電大學(xué)出版社,2009.

        TN919.85

        A

        1008-4681(2012)02-0043-04

        2011-11-18

        鄭藝芳(1978-),女,福建福州人,福建師范大學(xué)人民武裝學(xué)院講師,碩士.研究方向:計(jì)算機(jī)應(yīng)用技術(shù)、網(wǎng)絡(luò)服務(wù)、網(wǎng)格計(jì)算等.

        (責(zé)任編校:晴川)

        猜你喜歡
        客戶端服務(wù)器節(jié)點(diǎn)
        CM節(jié)點(diǎn)控制在船舶上的應(yīng)用
        Analysis of the characteristics of electronic equipment usage distance for common users
        基于AutoCAD的門窗節(jié)點(diǎn)圖快速構(gòu)建
        通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
        縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
        孵化垂直頻道:新聞客戶端新策略
        基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
        得形忘意的服務(wù)器標(biāo)準(zhǔn)
        計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
        抓住人才培養(yǎng)的關(guān)鍵節(jié)點(diǎn)
        日韩av在线播放人妻| 亚洲an日韩专区在线| 免费国产裸体美女视频全黄| 亚洲人成人影院在线观看| 日本嗯啊在线观看| 国产好片日本一区二区三区四区| 国产免费人成视频在线观看播放 | 正在播放国产多p交换视频| 久久精品国产亚洲av高清热| 久久精品视频在线看99| 亚洲中文字幕第一页在线| 中文字幕乱码亚洲无线精品一区 | 日本乱码一区二区三区在线观看 | 未满十八勿入av网免费| 色妞www精品视频| 精品无码成人片一区二区| 亚洲一区二区三区毛片| 丰满人妻猛进入中文字幕| 久久久久久人妻无码| 岛国av无码免费无禁网站| 久久久久久亚洲av成人无码国产| 国产精品无码一区二区三区免费| 国产av影片麻豆精品传媒| 欧美亚洲日韩国产人成在线播放| 中文字幕熟女激情50路| 日本三级香港三级人妇99| 天堂中文а√在线| 国产精品久久久久久久免费看| 亚洲国模一区二区三区视频| 最新日本免费一区二区三区| 女同同志熟女人妻二区| 欧美日韩午夜群交多人轮换| 亚洲午夜无码av毛片久久| 人妻丰满av无码中文字幕| 亚洲AV色欲色欲WWW| 精品久久一区二区三区av制服| 日韩人妻精品中文字幕专区| 巨人精品福利官方导航| 亚洲日韩乱码中文无码蜜桃臀| 男女上床视频免费网站| 国产在线视频一区二区三|