詹成,張偉
摘? 要: 信息戰(zhàn)都追求高速反應(yīng)機(jī)動,對網(wǎng)絡(luò)協(xié)議識別提出了高效快速的要求?;谏疃劝鼨z測DPI的協(xié)議識別方法識別準(zhǔn)確率高,但是由于要對所有數(shù)據(jù)包進(jìn)行檢測,計(jì)算量很大?;诙丝谔柕膮f(xié)議識別方法速度快,但識別準(zhǔn)確率低。提出一種新的基于數(shù)據(jù)流前端檢測的協(xié)議識別方法并進(jìn)行了系統(tǒng)實(shí)現(xiàn),結(jié)合了基于端口方法的快速簡單和基于DPI的準(zhǔn)確性的優(yōu)點(diǎn)。實(shí)驗(yàn)表明,這種綜合快速協(xié)議識別方法識別準(zhǔn)確率高,與基于DPI的方法相比,識別時(shí)間減少將近80%。
關(guān)鍵詞: 協(xié)議識別; 正則表達(dá)式; 數(shù)據(jù)流前端檢測; DPI
中圖分類號: TN911.7?34; TP393?????????? 文獻(xiàn)標(biāo)識碼: A??????????????????????? 文章編號: 1004?373X(2014)23?0058?04
Abstract: With the demand of quick response capability in the information war, the network protocol identification needs to be efficient and quick. The protocol identification method based on deep packet inspection (DPI) can achieve high accuracy, however it brings about mass calculation because of inspection of all packets. The protocol identification method based on port inspection is fast, but its accuracy is low. A new protocol identification method based on data?flow front?end detection is proposed and the system implementation way is given in this paper. The simple fast advantage of port?based method and the accuracy advantage of DPI method are combined in this method. The experimental results show that the new protocol identification method can achieve high accuracy, and decrease the identification time by nearly 80% in comparison with the DPI methods.
Keywords: protocol identification; regular expression; data?flow front?end detection; DPI
0? 引? 言
現(xiàn)在信息戰(zhàn)都追求高速反應(yīng),高速機(jī)動,要求對協(xié)議進(jìn)行高效快速識別,以盡快達(dá)到對協(xié)議識別的高準(zhǔn)確性。傳統(tǒng)的協(xié)議識別技術(shù)是端口識別[1],這種識別具有較高的效率。但是隨著網(wǎng)絡(luò)協(xié)議的發(fā)展,原有的基于端口映射的協(xié)議識別技術(shù)局限性越來越明顯。特別是在信息化軍事戰(zhàn)場上,這種識別方式的應(yīng)用性幾乎為零。一種基于深度報(bào)文檢測(Deep Payload Inspection,DPI)的方法[2],可以通過分析報(bào)文中的內(nèi)容,根據(jù)預(yù)先定義的大量模式(域值、關(guān)鍵字或者正則表達(dá)式),對報(bào)文中的內(nèi)容進(jìn)行匹配,尋找匹配項(xiàng),并確定報(bào)文所屬的應(yīng)用層協(xié)議,從而判定整個數(shù)據(jù)流所屬的協(xié)議類型。雖然DPI方法可以達(dá)到很高的識別準(zhǔn)確性,但是也存在以下問題:計(jì)算量大,需要對數(shù)據(jù)流的所有數(shù)據(jù)包內(nèi)容進(jìn)行檢測,從而使得采用DPI方法困難且價(jià)格昂貴;用戶的隱私保護(hù),由于DPI需要檢測數(shù)據(jù)包的全部負(fù)載,導(dǎo)致用戶的隱私數(shù)據(jù)內(nèi)容泄露。
本文創(chuàng)新地結(jié)合兩種方法提出一種綜合快速協(xié)議識別算法并進(jìn)行了系統(tǒng)實(shí)現(xiàn),通過對數(shù)據(jù)流的前端數(shù)據(jù)包進(jìn)行深度包檢測來進(jìn)行協(xié)議識別,不僅具有基于端口方法快速執(zhí)行的特點(diǎn),同時(shí)又具有DPI方法識別準(zhǔn)確性的優(yōu)勢。在真實(shí)數(shù)據(jù)流上的實(shí)驗(yàn)結(jié)果表明,相比較完全基于深度包檢測的方法,該方法可以達(dá)到類似的識別精度,而且識別時(shí)間減少了將近80%。
1? 系統(tǒng)采用的識別方法
在基于深度包檢測的方法中,數(shù)據(jù)流的所有數(shù)據(jù)包都要進(jìn)行模式匹配,但協(xié)議匹配并非總發(fā)生在數(shù)據(jù)流的末端。通過一個實(shí)驗(yàn)分析來探測到底在一段數(shù)據(jù)流中檢測深度需要多大,即需要檢測多少個數(shù)據(jù)包才能識別應(yīng)用層協(xié)議。實(shí)驗(yàn)采用從互聯(lián)網(wǎng)下載的真實(shí)數(shù)據(jù)流負(fù)載,其中包括典型協(xié)議HTTP,F(xiàn)TP,POP3,DHCP,SMTP,MSN,BitTorrent等協(xié)議的數(shù)據(jù)包。協(xié)議識別系統(tǒng)采用基于深度包檢測的協(xié)議識別方法[3?4],添加一些調(diào)試語句來收集以下信息:數(shù)據(jù)包的協(xié)議匹配在什么地方發(fā)生,即匹配發(fā)生在數(shù)據(jù)流的哪個數(shù)據(jù)包上。通過實(shí)驗(yàn)分析得到了如圖1所示的結(jié)果。其中橫軸表示協(xié)議匹配成功完成時(shí)匹配數(shù)據(jù)包在數(shù)據(jù)流中的位置,縱軸表示所有的數(shù)據(jù)流上發(fā)生協(xié)議匹配的次數(shù)。
<;E:\LIHUI\12月\12.4\現(xiàn)代電子技術(shù)201423\Image\03t1.tif>;
圖1 數(shù)據(jù)包匹配深度圖
從圖1中可以看到大部分協(xié)議匹配的完成只需檢測數(shù)據(jù)流的前幾個數(shù)據(jù)包就可以實(shí)現(xiàn)。這是因?yàn)閰f(xié)議運(yùn)行的初期通常需要進(jìn)行控制報(bào)文的交換,而這些交換報(bào)文通常是這種協(xié)議特有的,可以成為進(jìn)行協(xié)議識別的特征。這個實(shí)驗(yàn)提出了一種新的協(xié)議識別方法,即通過檢測網(wǎng)絡(luò)應(yīng)用中數(shù)據(jù)流最有意義的數(shù)據(jù)包,通常為數(shù)據(jù)流的前N個數(shù)據(jù)包,就可以成功地完成協(xié)議識別,在第3節(jié)討論[N]的具體取值。對數(shù)據(jù)流的前端數(shù)據(jù)包進(jìn)行深度包檢測,具有以下優(yōu)點(diǎn):達(dá)到接近于基于端口號方法的快速協(xié)議識別速度;盡量保護(hù)隱私數(shù)據(jù)。
2? 系統(tǒng)實(shí)現(xiàn)
2.1? 數(shù)據(jù)流前端數(shù)據(jù)包檢測
在協(xié)議識別系統(tǒng)實(shí)現(xiàn)中,只對數(shù)據(jù)流的前[N]個數(shù)據(jù)包進(jìn)行深度包檢測。由于在網(wǎng)絡(luò)傳輸層以上的數(shù)據(jù)傳輸都是以數(shù)據(jù)流為單位,因此在網(wǎng)絡(luò)數(shù)據(jù)流的基礎(chǔ)上進(jìn)行協(xié)議識別。在本系統(tǒng)中采用<;源IP,目的IP,端口號>;所定義的一組報(bào)文來描述數(shù)據(jù)流。協(xié)議識別在<;源IP,目的IP,端口號>;三元組所定義的數(shù)據(jù)流上進(jìn)行,一條數(shù)據(jù)流屬于某個協(xié)議或者不屬于某個協(xié)議,協(xié)議識別采用基于正則表達(dá)式的字符串匹配來進(jìn)行深度包檢測,在第3節(jié)中會詳細(xì)介紹。
當(dāng)新的數(shù)據(jù)流報(bào)文出現(xiàn)時(shí),協(xié)議識別系統(tǒng)將產(chǎn)生新的流標(biāo)志來標(biāo)識此數(shù)據(jù)流,完成對此數(shù)據(jù)流數(shù)據(jù)包檢測后,記錄該數(shù)據(jù)流識別狀態(tài),如已識別或尚未識別。當(dāng)發(fā)現(xiàn)新的數(shù)據(jù)包屬于舊有數(shù)據(jù)流,則判斷數(shù)據(jù)流的識別標(biāo)識,若該數(shù)據(jù)流已識別,則識別系統(tǒng)跳過后續(xù)報(bào)文;若尚未識別,識別系統(tǒng)將該數(shù)據(jù)流送至匹配引擎匹配,根據(jù)匹配結(jié)果確定協(xié)議分類;尚不能分類的數(shù)據(jù)流則需保留協(xié)議識別狀態(tài),以便后續(xù)報(bào)文到來時(shí)繼續(xù)進(jìn)行識別。對于暫時(shí)不能識別的數(shù)據(jù)流,可以保存識別狀態(tài),即記錄當(dāng)前數(shù)據(jù)流識別過程進(jìn)行狀態(tài)轉(zhuǎn)移時(shí)轉(zhuǎn)移到了哪個狀態(tài);當(dāng)再次遇到該數(shù)據(jù)流的數(shù)據(jù)包時(shí),可以將保存的狀態(tài)恢復(fù),繼續(xù)進(jìn)行識別。采用這種方法不必對數(shù)據(jù)流重新進(jìn)行識別,可以節(jié)省協(xié)議識別時(shí)間。
數(shù)據(jù)流協(xié)議識別算法如下所示,其中對每段數(shù)據(jù)流,只檢測前[N]個數(shù)據(jù)包。
1. while (新的數(shù)據(jù)包p到達(dá))
2.? if <;p(源IP),p(目的IP),p(端口號)>;未知
3.???? Con_id =? 為<;p(源IP),p(目的IP),p(端口號)>;分配的連接號
4.???? if? (能識別Con_id)
5.?????? return 協(xié)議類型
6.???? else
7.?????? 保存Con_id協(xié)議識別最新狀態(tài)
8.? else
9.??? Con_id =? 已保存的<;p(源IP),p(目的IP),p(端口號)>;連接號
10.?? 恢復(fù)最新識別狀態(tài)
11.?? if? (能識別Con_id)
12.????? return 協(xié)議類型
13.?? else
14.???? 保存Con_id協(xié)議識別最新狀態(tài)
數(shù)據(jù)流匹配算法只掃描一次數(shù)據(jù)流,隨著數(shù)據(jù)包的輸入,可以在輸入的任何位置完成識別,而無需重復(fù)掃描數(shù)據(jù)包;對未識別的數(shù)據(jù)流,從當(dāng)前識別狀態(tài)而不是初始狀態(tài)繼續(xù)進(jìn)行匹配,提高了整個協(xié)議識別速度。
2.2? 基于正則表達(dá)式的數(shù)據(jù)包檢測
協(xié)議特征提取可以通過對協(xié)議的相關(guān)文檔的研究,找出協(xié)議交互過程中特有的且必定出現(xiàn)的固定字段。若協(xié)議中只有惟一的固定字段,就選取該字段作為協(xié)議的特征串;若存在多個固定字段,則對協(xié)議的實(shí)際報(bào)文進(jìn)行統(tǒng)計(jì),選取出現(xiàn)頻率最高的字段作為協(xié)議的特征串。
正則表達(dá)式[5]是采用某種模式去匹配一類字符串的公式,主要用于文本搜索、程序語言編譯器等領(lǐng)域。作為一種形式語言,正則表達(dá)式定義了一套自己的描述方式:完整的正則表達(dá)式是由兩種字符構(gòu)成的字符模式,其中特殊字符稱為“元字符”,其他的普通ASCII字符稱為“文字”。描述一組可匹配的字符串時(shí)不用明確地列舉出所有的確切形式,而是通過元字符描述子串或者單個字節(jié)的特征。在正則表達(dá)式中,既可以使用ASCII字符,也可以使用十六進(jìn)制數(shù)。基于正則表達(dá)式的模式匹配就是將這一字符模式與所搜索的字符串進(jìn)行匹配。正則表達(dá)式比固定字符串具有更強(qiáng)的表達(dá)能力和更好的靈活性,因此采用正則表達(dá)式代替固定字符串表示協(xié)議的特征。
例如對于文件傳輸協(xié)議FTP,通常服務(wù)器會傳輸字符串“220”表示服務(wù)器已準(zhǔn)備好,接下來會傳輸一段數(shù)據(jù),其中包含字符串“FTP”,在“220”和“FTP”之間會有一些ASCII字符串。根據(jù)這些特性,可以將協(xié)議FTP的協(xié)議特征用正則表達(dá)式“^220*FTP”來表示。
2.3? 基于正則表達(dá)式的字符串匹配
字符串匹配問題,就是在一個文本[T=t1t2…tn]中找出某個特定模式串[p=p1p2…pn]的所有出現(xiàn)位置。其中[T]和[p]都是有限字母表[Σ]上的字符序列。匹配算法使用一個固定長度的窗口來搜索模式串,在窗口內(nèi)檢驗(yàn)?zāi)J绞欠衿ヅ?,然后從左向右不斷地移動窗口,直到掃描完整個文本。利用自動機(jī)進(jìn)行字符串匹配[6]只需對每個文本字符檢查一次,并且檢查每個文本字符的時(shí)間為常數(shù)。因此對長度為[n]的文本,建立自動機(jī)后匹配算法的時(shí)間為[Θ(n)。]
圖2為一個簡單的兩狀態(tài)自動機(jī),其狀態(tài)集Q={0,1},開始狀態(tài)q0=0,輸入字母表[Σ]={a,b}。狀態(tài)1是僅有的接受狀態(tài),有向邊表示轉(zhuǎn)移。如從狀態(tài)1到狀態(tài)0,標(biāo)有b的有向邊表示狀態(tài)轉(zhuǎn)移函數(shù)δ(1,b)=0。輸入abaaa,此狀態(tài)機(jī)的狀態(tài)序列(包括初始狀態(tài))為<;0,1,0,1,0,1>;,表示它接受了這個輸入;輸入abbaa,狀態(tài)序列是<;0,1,0,0,1,0>;,表示它拒絕了這個輸入。
<;E:\LIHUI\12月\12.4\現(xiàn)代電子技術(shù)201423\Image\03t2.tif>;
圖2 簡單的兩狀態(tài)自動機(jī)
每個模式[P]都存在一個字符串匹配自動機(jī),必須在預(yù)處理階段,根據(jù)模式構(gòu)造出相應(yīng)的自動機(jī)后,才能利用它來搜尋文本字符串。給定輸入文本T[1,2,…,n],尋找長度為m的模式[P]的出現(xiàn)位置,可以用下面的基于自動機(jī)的匹配算法進(jìn)行求解。對于長度為[m]的模式[p]的字符串匹配自動機(jī)來說,假定狀態(tài)集Q為{0,1,…,m},初始狀態(tài)為0,惟一的接收態(tài)是狀態(tài)m。
自動機(jī)字符串匹配算法 (T, δ, m)如下:
1. [n← ] lengthT
2. [q← 0]
3. [for i← 1 to n]
4.?? [do q← δ[q,T(i)]]
5.????? [if q=m]
6.???????? [then 字符串匹配 ]
由匹配算法的簡單循環(huán)結(jié)構(gòu)可以看出,對于一個長度為[n]的文本字符串,它的匹配時(shí)間為Θ(n)。這一匹配時(shí)間沒有包括計(jì)算變遷函數(shù)[δ]所需要的預(yù)處理時(shí)間。下面將給出如何生成有限狀態(tài)機(jī)的預(yù)處理過程。
2.4? 基于正則表達(dá)式的有限自動機(jī)DFA構(gòu)造
有限自動機(jī)是正則表達(dá)式的自然形式表示,它分為確定型有限自動機(jī)(DFA)和非確定型有限自動機(jī)(NFA)兩種。NFA和DFA的主要區(qū)別是NFA對同一個字符串輸入完全有可能有多種理解方式,而DFA則只有惟一的一種理解方式;即DFA對每個輸入只產(chǎn)生一個狀態(tài)轉(zhuǎn)移,而NFA對每個輸入可能產(chǎn)生多個狀態(tài)轉(zhuǎn)移,并且有空轉(zhuǎn)化邊ε。
傳統(tǒng)的正則表達(dá)式匹配技術(shù)主要是基于非確定型有限自動機(jī)(NFA)實(shí)現(xiàn)的,其匹配速度較慢。隨著表達(dá)式規(guī)模不斷擴(kuò)大,基于NFA 的匹配技術(shù)性能急劇下降,已經(jīng)不能滿足應(yīng)用的需求,因此通常使用匹配速度更快的基于DFA 的匹配技術(shù)[7]。正則表達(dá)式轉(zhuǎn)換成DFA的過程,首先通過Thompson構(gòu)造算法[8]將正則表達(dá)式轉(zhuǎn)換成NFA,然后采用子集構(gòu)造法[9]將NFA編譯成DFA,最后將DFA最小化。
Thompson算法根據(jù)確定的規(guī)則將正則表達(dá)式的NFA片段連接在一起,以構(gòu)成與整個正則式對應(yīng)的NFA,其主要方法是將各個片段根據(jù)規(guī)則進(jìn)行連接。利用Thompson算法構(gòu)造NFA時(shí),只需掃描一次正則表達(dá)式,其構(gòu)造復(fù)雜性為O(l),其中l(wèi)為正則表達(dá)式的長度。給定NFA,我們可以采用子集構(gòu)造算法來構(gòu)造有限狀態(tài)自動機(jī)DFA。
最小子集構(gòu)造算法如下,假定NFA=(S,[Σ,]δ,S0,A):
(1) 定義狀態(tài)集合I的ε?閉包[ε?clousure(I)],為狀態(tài)集合I中的任何狀態(tài)S經(jīng)過任意多條ε弧而能到達(dá)的狀態(tài)集合;
(2) 狀態(tài)集合I的a弧轉(zhuǎn)換(move(I,a)):定義為狀態(tài)集合J,其中J是所有可以從I的某一狀態(tài)經(jīng)過一條a弧而到達(dá)的狀態(tài)的全體;
(3) 定義Ia=ε-clousure(J):其中I為某個狀態(tài)集合,J為狀態(tài)集合I的a弧轉(zhuǎn)換move(I,a),也就是說,從某一個狀態(tài)集合中的任何一個狀態(tài)S,經(jīng)過一條a弧再經(jīng)過任意多條[ε]弧所能到達(dá)的狀態(tài)的全體為Ia;
(4) 由初始結(jié)點(diǎn)出發(fā),找出其閉包構(gòu)成的集合ε?clousure(S0)作為初始集合作為矩陣的第一行第一列,集合Ia作為第一行第二列,有窮輸入集[Σ]中的每一個輸入字符的Ix依次對應(yīng)一列。如果這些集合未出現(xiàn)過,則把這些集合作為下一個初始集合,即下一行的第一列,Ia作為第二列,依次類推得出一個狀態(tài)轉(zhuǎn)換矩陣。對矩陣中的所有狀態(tài)子集重新命名后,即得出DFA的狀態(tài)轉(zhuǎn)換矩陣。
3? 性能評價(jià)
通過系統(tǒng)實(shí)驗(yàn)來比較綜合協(xié)議識別方法和基于深度包檢測方法的性能差異,系統(tǒng)由C++語言實(shí)現(xiàn),運(yùn)行在Inter Core 2 Duo CPU @3.16 GHz的計(jì)算機(jī)上。實(shí)驗(yàn)采用互聯(lián)網(wǎng)中下載的真實(shí)數(shù)據(jù)流數(shù)據(jù),其中包括HTTP,F(xiàn)TP,POP3,DHCP,SMTP,MSN,BitTorrent等協(xié)議的數(shù)據(jù)包。采用完全深度包檢測的協(xié)議識別結(jié)果作為協(xié)議識別正確的判斷標(biāo)準(zhǔn),實(shí)驗(yàn)結(jié)果為200次實(shí)驗(yàn)求平均的結(jié)果。
圖3(a)給出了協(xié)議識別時(shí)間隨著數(shù)據(jù)流前端檢測參數(shù)N的變化圖,可以看到隨著N的增大,系統(tǒng)識別時(shí)間增大,這是由于檢測參數(shù)N反映了系統(tǒng)進(jìn)行數(shù)據(jù)包的檢測深度,N越大,系統(tǒng)需檢測的數(shù)據(jù)包越多。完全的深度包檢測需要時(shí)間5.453 s,而當(dāng)N=15時(shí),只需要1.17 s的檢測時(shí)間,識別時(shí)間減少了78%。
<;E:\LIHUI\12月\12.4\現(xiàn)代電子技術(shù)201423\Image\03t3.tif>;
圖3 數(shù)據(jù)流前端檢測參數(shù)N對系統(tǒng)性能的變化
圖3(b)反映了系統(tǒng)協(xié)議識別正確性隨著數(shù)據(jù)流前端檢測參數(shù)N的變化,隨著N的增大,協(xié)議識別正確率增大。當(dāng)N>;14后,系統(tǒng)的協(xié)議識別正確率維持為100%。這是由于協(xié)議特征通常通過數(shù)據(jù)流前端的一些控制數(shù)據(jù)包就可以確定,而不必對全部負(fù)載信息進(jìn)行檢測。在系統(tǒng)中,通常設(shè)置N=15。與深度包檢測的方法相比,不但可以達(dá)到相同的協(xié)議識別正確率,識別時(shí)間也減少了78%。
4?? 結(jié)? 論
本文提出一種基于數(shù)據(jù)流前端檢測的協(xié)議識別方法并進(jìn)行了系統(tǒng)實(shí)現(xiàn),結(jié)合了基于端口方法的快速簡單和基于DPI的準(zhǔn)確性的優(yōu)點(diǎn)。系統(tǒng)實(shí)驗(yàn)表明此種方法識別準(zhǔn)確率高,相比傳統(tǒng)方法識別時(shí)間減少將近80%。
參考文獻(xiàn)
[1] KARAGIANNIS T, BROIDO A, BROWNLEE N, et al. Is p2p dying or just hiding? [C]// Proceedings of IEEE Globecom. [S.l.]: IEEE, 2004, 3: 1532?1538.
[2] RISSO F, MORANDI O, BALDI M, et al. Lightweight, Payload?based traffic classification: An experimental evaluation [C]// Proceedings of ICC08. [S.l.]: IEEE, 2008: 5869?5875.
[3] CROTTI M, DUSI M, GRINGOLI F, et al. Traffic classification through simple statistical fingerprinting [J]. ACM SIGCOMM CCR, 2007, 37(1): 7?16.
[4] LI Zhu, YUAN Rui?xi, GUAN Xiao?hong. Accurate classification of the internet traffic based on the svm method [C]// Proceedings of ICC. [S.l.]: [s.n.], 2007: 1373?1378.
[5] GREGER H, FELDMANN A, MAL M, et al. Dynamic application?layer protocol analysis for network intrusion detection [C]// Proceedings of USENIX Security Symposium. [S.l.]: [s.n.], 2006: 1125?1130.
[6] CORMEN T H, LEISERSON C E, RIVEST R L, et al. Introduction to algorithms [M]. 2 ed. [S.l.]: [s.n.], 2002.
[7] 陳曙暉.基于內(nèi)容分析的高速網(wǎng)絡(luò)協(xié)議識別技術(shù)研究[D].長沙:國防科技大學(xué),2007.
[8] THOMPSON K. Regular expression search algorithm. [J]. Communications of the ACM, 1968, 11(6): 410?422.
[9] HOPCROFT J E. ULLMAN J D. Introduction to automata theory, languages,and computation.? second edition [M]. Boston. Addison?Wesley, 2002.
4?? 結(jié)? 論
本文提出一種基于數(shù)據(jù)流前端檢測的協(xié)議識別方法并進(jìn)行了系統(tǒng)實(shí)現(xiàn),結(jié)合了基于端口方法的快速簡單和基于DPI的準(zhǔn)確性的優(yōu)點(diǎn)。系統(tǒng)實(shí)驗(yàn)表明此種方法識別準(zhǔn)確率高,相比傳統(tǒng)方法識別時(shí)間減少將近80%。
參考文獻(xiàn)
[1] KARAGIANNIS T, BROIDO A, BROWNLEE N, et al. Is p2p dying or just hiding? [C]// Proceedings of IEEE Globecom. [S.l.]: IEEE, 2004, 3: 1532?1538.
[2] RISSO F, MORANDI O, BALDI M, et al. Lightweight, Payload?based traffic classification: An experimental evaluation [C]// Proceedings of ICC08. [S.l.]: IEEE, 2008: 5869?5875.
[3] CROTTI M, DUSI M, GRINGOLI F, et al. Traffic classification through simple statistical fingerprinting [J]. ACM SIGCOMM CCR, 2007, 37(1): 7?16.
[4] LI Zhu, YUAN Rui?xi, GUAN Xiao?hong. Accurate classification of the internet traffic based on the svm method [C]// Proceedings of ICC. [S.l.]: [s.n.], 2007: 1373?1378.
[5] GREGER H, FELDMANN A, MAL M, et al. Dynamic application?layer protocol analysis for network intrusion detection [C]// Proceedings of USENIX Security Symposium. [S.l.]: [s.n.], 2006: 1125?1130.
[6] CORMEN T H, LEISERSON C E, RIVEST R L, et al. Introduction to algorithms [M]. 2 ed. [S.l.]: [s.n.], 2002.
[7] 陳曙暉.基于內(nèi)容分析的高速網(wǎng)絡(luò)協(xié)議識別技術(shù)研究[D].長沙:國防科技大學(xué),2007.
[8] THOMPSON K. Regular expression search algorithm. [J]. Communications of the ACM, 1968, 11(6): 410?422.
[9] HOPCROFT J E. ULLMAN J D. Introduction to automata theory, languages,and computation.? second edition [M]. Boston. Addison?Wesley, 2002.
4?? 結(jié)? 論
本文提出一種基于數(shù)據(jù)流前端檢測的協(xié)議識別方法并進(jìn)行了系統(tǒng)實(shí)現(xiàn),結(jié)合了基于端口方法的快速簡單和基于DPI的準(zhǔn)確性的優(yōu)點(diǎn)。系統(tǒng)實(shí)驗(yàn)表明此種方法識別準(zhǔn)確率高,相比傳統(tǒng)方法識別時(shí)間減少將近80%。
參考文獻(xiàn)
[1] KARAGIANNIS T, BROIDO A, BROWNLEE N, et al. Is p2p dying or just hiding? [C]// Proceedings of IEEE Globecom. [S.l.]: IEEE, 2004, 3: 1532?1538.
[2] RISSO F, MORANDI O, BALDI M, et al. Lightweight, Payload?based traffic classification: An experimental evaluation [C]// Proceedings of ICC08. [S.l.]: IEEE, 2008: 5869?5875.
[3] CROTTI M, DUSI M, GRINGOLI F, et al. Traffic classification through simple statistical fingerprinting [J]. ACM SIGCOMM CCR, 2007, 37(1): 7?16.
[4] LI Zhu, YUAN Rui?xi, GUAN Xiao?hong. Accurate classification of the internet traffic based on the svm method [C]// Proceedings of ICC. [S.l.]: [s.n.], 2007: 1373?1378.
[5] GREGER H, FELDMANN A, MAL M, et al. Dynamic application?layer protocol analysis for network intrusion detection [C]// Proceedings of USENIX Security Symposium. [S.l.]: [s.n.], 2006: 1125?1130.
[6] CORMEN T H, LEISERSON C E, RIVEST R L, et al. Introduction to algorithms [M]. 2 ed. [S.l.]: [s.n.], 2002.
[7] 陳曙暉.基于內(nèi)容分析的高速網(wǎng)絡(luò)協(xié)議識別技術(shù)研究[D].長沙:國防科技大學(xué),2007.
[8] THOMPSON K. Regular expression search algorithm. [J]. Communications of the ACM, 1968, 11(6): 410?422.
[9] HOPCROFT J E. ULLMAN J D. Introduction to automata theory, languages,and computation.? second edition [M]. Boston. Addison?Wesley, 2002.