當(dāng)前位置:首頁 > 消費(fèi)電子 > 消費(fèi)電子
[導(dǎo)讀]網(wǎng)絡(luò)流媒體的發(fā)現(xiàn)是網(wǎng)絡(luò)流媒體服務(wù)質(zhì)量監(jiān)測等行為的前提和基礎(chǔ)。通過對網(wǎng)絡(luò)流媒體傳輸協(xié)議的分析,提出一個(gè)基于Winpcap的網(wǎng)絡(luò)流媒體識(shí)別算法。經(jīng)試驗(yàn)證明,該算法能夠有效識(shí)別流媒體。

0 引言
    隨著計(jì)算機(jī)網(wǎng)絡(luò)、視頻壓縮等關(guān)鍵技術(shù)的快速發(fā)展,網(wǎng)絡(luò)流媒體技術(shù)目前已成為繼文字和圖片之后,互聯(lián)網(wǎng)信息傳播的主要形式。通過網(wǎng)絡(luò)流媒體技術(shù),用戶可以方便地存取、查閱和播放網(wǎng)絡(luò)上的流媒體數(shù)據(jù)。如何從海量的網(wǎng)絡(luò)數(shù)據(jù)中快速發(fā)現(xiàn)流媒體數(shù)據(jù),是進(jìn)行網(wǎng)絡(luò)視頻服務(wù)質(zhì)量監(jiān)測、網(wǎng)絡(luò)流量統(tǒng)計(jì)、網(wǎng)絡(luò)視頻用戶行為分析及視頻內(nèi)容監(jiān)管等服務(wù)的前提和基礎(chǔ)。
    網(wǎng)絡(luò)流媒體服務(wù)為應(yīng)用層服務(wù),其數(shù)據(jù)傳輸主要采用專有應(yīng)用層協(xié)議RTP/RTCP。因此,對網(wǎng)絡(luò)視頻數(shù)據(jù)流的發(fā)現(xiàn)首先是識(shí)別應(yīng)用層協(xié)議。針對應(yīng)用層協(xié)議的識(shí)別,文獻(xiàn)提出了一種以協(xié)議中出現(xiàn)頻率最高的字段作為特征串來識(shí)別協(xié)議的方法,且采用一個(gè)特征串來標(biāo)識(shí)一種協(xié)議。文獻(xiàn)提出了基于簽名字串的方法來識(shí)別應(yīng)用層協(xié)議,其主要針對的是P2P協(xié)議的范圍,且需要對整個(gè)報(bào)文通過匹配多個(gè)特征串來識(shí)別一種P2P協(xié)議,時(shí)間效率偏低。文獻(xiàn)提出了基于先分類后分組的識(shí)別應(yīng)用層協(xié)議及流量的方法,但此方法的本質(zhì)還是基于某些固定端口的,若對于通過隨機(jī)選擇端口而實(shí)現(xiàn)的應(yīng)用層協(xié)議,此方法就缺乏準(zhǔn)確性和靈活性。
    本文通過分析網(wǎng)絡(luò)流媒體交互過程的特征,以應(yīng)用層傳輸協(xié)議對應(yīng)的關(guān)鍵特征字串為判斷依據(jù),設(shè)計(jì)了一種基于Winpcap的網(wǎng)絡(luò)視頻流識(shí)別算法,實(shí)現(xiàn)了對網(wǎng)絡(luò)流媒體的發(fā)現(xiàn),并通過實(shí)驗(yàn)對本文設(shè)計(jì)的算法性能進(jìn)行了分析和驗(yàn)證。

1 Winpeap簡介
    Winpcap是由伯克利分組捕獲庫派生而來的分組捕獲庫,它在Windows操作平臺(tái)上實(shí)現(xiàn)對底層包的截取過濾。
    Winpcap是BPF模型和Libpcap函數(shù)庫在Windows平臺(tái)下網(wǎng)絡(luò)數(shù)據(jù)包捕獲和網(wǎng)絡(luò)狀態(tài)分析的一種體系結(jié)構(gòu),這個(gè)體系結(jié)構(gòu)是由一個(gè)核心的包過濾驅(qū)動(dòng)程序,一個(gè)底層的動(dòng)態(tài)連接庫Packet.dll和一個(gè)高層的獨(dú)立于系統(tǒng)的函數(shù)庫Libpcap組成。底層的包捕獲驅(qū)動(dòng)程序?qū)嶋H為一個(gè)協(xié)議網(wǎng)絡(luò)驅(qū)動(dòng)程序,通過對NDIS中函數(shù)的調(diào)用為Windows 95/98/NT/2000提供一類似于UNIX系統(tǒng)下Berkeley Packet Filter的捕獲和發(fā)送原始數(shù)據(jù)包的能力。Packet.dll是對這個(gè)BPF驅(qū)動(dòng)程序進(jìn)行訪問的API接口,同時(shí)它有一套符合Libpcap接口(UNIX下的捕獲函數(shù)庫)的函數(shù)庫。
    Winpcap包括三部分:第一個(gè)模塊NPF(NetgroupPacket Filter),是一個(gè)虛擬設(shè)備驅(qū)動(dòng)程序文件。它的功能是過濾數(shù)據(jù)包,并把這些數(shù)據(jù)包原封不動(dòng)地傳給用戶態(tài)模塊,這個(gè)過程中包括了一些操作系統(tǒng)特有的代碼。第二個(gè)模塊Packet.dll為Win32平臺(tái)提供了一個(gè)公共的接口。不同版本的Windows系統(tǒng)都有自己的內(nèi)核模塊和用戶層模塊。Packet.dll用于解決這些不同。調(diào)用Packet.dll的程序可以運(yùn)行在不同版本的windows平臺(tái)上,而無需重新編譯。第三個(gè)模塊wpcap.dll是不依賴于操作系統(tǒng)的,它提供了更加高層、抽象的函數(shù)。
    Winpcap提供了一套標(biāo)準(zhǔn)的編程接口,與libpcap兼容,可使得原來許多UNIX平臺(tái)下的網(wǎng)絡(luò)分析工具快速移植過來便于開發(fā)各種網(wǎng)絡(luò)分析工具,充分考慮了各種性能和效率的優(yōu)化,包括對于NPF內(nèi)核層次上的過濾器支持,支持內(nèi)核態(tài)的統(tǒng)計(jì)模式,提供了發(fā)送數(shù)據(jù)包的能力。

2 應(yīng)用層協(xié)議RTP/RTCP
    RTP/RFCP是一種應(yīng)用型的傳輸層協(xié)議,它沒有連接的概念,既可以建立在面向連接的底層協(xié)議上,又可以建立在面向無連接的底層協(xié)議上,因此RTP對傳輸層是獨(dú)立的。由于網(wǎng)絡(luò)流媒體的傳輸實(shí)時(shí)性要求較高,UDP的傳輸延時(shí)低于TCP,能與音頻和視頻流很好地匹配,所以,在實(shí)際應(yīng)用中,RFP/RTCP/UDP是流媒體傳輸?shù)闹饕獏f(xié)議,其結(jié)構(gòu)如圖l所示。


    實(shí)時(shí)傳輸協(xié)議RTP是為實(shí)時(shí)數(shù)據(jù)提供端到端傳遞服務(wù)的協(xié)議,能夠傳遞時(shí)間信息和實(shí)現(xiàn)流同步。但RTP本身并不能為按順序傳送數(shù)據(jù)包提供可靠的傳輸機(jī)制,也不提供流量控制或擁塞控制,它依靠RTP控制協(xié)議RTCP配合實(shí)現(xiàn)控制服務(wù)。在RTP會(huì)話期間,各參與者周期性地交互RTCP包,RFCP包中含有己發(fā)送的數(shù)據(jù)包的數(shù)量、丟失的數(shù)據(jù)包的數(shù)量等統(tǒng)計(jì)資料,會(huì)話方可以利用這些信息動(dòng)態(tài)地改變傳輸速率,甚至改變有效型。RTP數(shù)據(jù)包結(jié)構(gòu)如圖2所示。


    從圖2可以看出,RTP數(shù)據(jù)包由12個(gè)字節(jié)的固定RTP頭和不定長的連續(xù)多媒體數(shù)據(jù)組成,其中的多媒體數(shù)據(jù)可以是壓縮后數(shù)據(jù)。
    其中比較重要的幾個(gè)域及其意義如下:
    版本(V):2b,此域定義了RTP的版本,此協(xié)議定義的版本是2。
    填料(P):1b,填料可能用于某些具有固定長度的加密算法,或者在底層數(shù)據(jù)單元中傳輸多個(gè)RTP包。
    擴(kuò)展(X):1b,若設(shè)置擴(kuò)展比特,表示固定頭(僅)后面跟隨一個(gè)頭擴(kuò)展。
    CSRC計(jì)數(shù)(CC):4b,CSRC計(jì)數(shù)包含了跟在固定頭后面CSRC識(shí)別符的數(shù)目。
    標(biāo)志(M):1b,標(biāo)志用來允許在比特流中標(biāo)記重要的事件,如幀范圍。
    負(fù)載類型(PT):7b,此域定義了負(fù)載的格式,由具體應(yīng)用決定其解釋。協(xié)議可以規(guī)定負(fù)載類型碼和負(fù)載格式之間一個(gè)默認(rèn)的匹配。其他的負(fù)載類型碼可以通過非RTP方法動(dòng)態(tài)定義,RTP發(fā)射機(jī)在任意給定時(shí)間發(fā)出一個(gè)單獨(dú)的RTP負(fù)載類型。
    序列號(hào)(SN):16b,每發(fā)送一個(gè)RTP數(shù)據(jù)包,序列號(hào)加一,接收機(jī)可以據(jù)此檢測丟包和重建包。序列號(hào)的初始值是隨機(jī)的。
    時(shí)間標(biāo)志:32b,時(shí)間標(biāo)志反映了RTP數(shù)據(jù)包中第一個(gè)比特的抽樣瞬間。時(shí)間標(biāo)志的起始值是隨機(jī)的。
    SSRC:32b,SSRC域用以識(shí)別同步源。標(biāo)識(shí)符被隨機(jī)生成,以使在同一個(gè)RTP會(huì)話期中沒有任何兩個(gè)同步源有相同的SSRC識(shí)別符。
    CSRC列表:0~15項(xiàng),每項(xiàng)32b。CSRC列表識(shí)別在此包中負(fù)載的有貢獻(xiàn)源。識(shí)別符的數(shù)目在CC域中給定。
    通過對RTP協(xié)議的分析,總結(jié)出以下幾條“流特征”:
    (1)UDP負(fù)荷頭兩個(gè)比特是0x10(RTP的版本號(hào)是2)。
    (2)RTP流負(fù)載類型PT值保持不變。即同一流媒體數(shù)據(jù)包RTP頭的9~15b的值保持不變。
    (3)RTP流的SN值為遞增。
    (4)RTP包的SSRC值為定值,同一流媒體數(shù)據(jù)各包的SSRC值保持不變。

3 算法實(shí)現(xiàn)
    首先通過Winpcap過濾器對數(shù)據(jù)包進(jìn)行捕獲,識(shí)別其中的握手?jǐn)?shù)據(jù)包,然后分析呼叫信令的內(nèi)容,獲取傳輸流媒體的源、目的地址和端口號(hào),再通知給過濾器針對該源、目的地址和端口號(hào)進(jìn)行數(shù)據(jù)捕捉;識(shí)別其中的UDP數(shù)據(jù)包進(jìn)行分析,根據(jù)“流特征”進(jìn)行分析,確定所要捕捉的RTP數(shù)據(jù)流。
    采用以上4條作為判斷RTP流量的必要條件,當(dāng)對每一個(gè)UDP數(shù)據(jù)流,如能連續(xù)檢出4個(gè)包符合上述策略,則認(rèn)定其滿足為RTP數(shù)據(jù)流的充分條件。
    經(jīng)過大量實(shí)際數(shù)據(jù)的測試,該算法可以有效識(shí)別網(wǎng)絡(luò)流媒體。

4 結(jié)語
    在分析網(wǎng)絡(luò)流媒體傳輸協(xié)議的基礎(chǔ)上,利用Winpcap實(shí)現(xiàn)了一個(gè)網(wǎng)絡(luò)流媒體識(shí)別算法。經(jīng)試驗(yàn)證明,該算法能夠有效識(shí)別流媒體,對網(wǎng)絡(luò)流媒體的應(yīng)用具有積極的作用。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉