專利名稱:基于支持向量機(jī)的混合式點(diǎn)對(duì)點(diǎn)流量檢測(cè)方法
技術(shù)領(lǐng)域:
采用基于SVM (支持向量機(jī))和基于流量統(tǒng)計(jì)特征與深層數(shù)據(jù)包檢測(cè)技術(shù)相結(jié)合的分布 式總體架構(gòu),使用混合式的檢測(cè)手段,能有效地提高檢測(cè)精度和速度,降低虛警率和誤報(bào)率, 適應(yīng)P2P檢測(cè)系統(tǒng)對(duì)不斷增長(zhǎng)的P2P新的應(yīng)用的控制要求。屬于網(wǎng)絡(luò)安全的技術(shù)領(lǐng)域。
背景技術(shù):
P2P技術(shù)概述
P2P是"Peer-to-Peer"的縮寫(xiě),即點(diǎn)對(duì)點(diǎn)的意思,P2P是一種分布式網(wǎng)絡(luò),網(wǎng)絡(luò)的參與
者共享他們所擁有的一部分硬件資源(處理能力、存儲(chǔ)能力、網(wǎng)絡(luò)連接能力、打印機(jī)等), 這些共享資源需要由網(wǎng)絡(luò)提供服務(wù)和內(nèi)容,能被其它對(duì)等節(jié)點(diǎn)(Peer)直接訪問(wèn)而無(wú)需經(jīng)過(guò)中
間實(shí)體。在此網(wǎng)絡(luò)中的參與者既是資源(服務(wù)和內(nèi)容)提供者(Server),又是資源(服務(wù) 和內(nèi)容)獲取者(Client)。根據(jù)拓?fù)浣Y(jié)構(gòu)的關(guān)系可以將P2P研究分為4種形式中心化拓?fù)?(Centralized Topology),代表就是著名的MP3共享軟件Napster;全分布式非結(jié)構(gòu)化拓?fù)?(Decentralized Unstructured Topology ), 代表Gnutella;全分布式結(jié)構(gòu)化拓?fù)?(Decentralized Structured Topology,也稱作DHT網(wǎng)絡(luò)),是Tapestry, Chord, CAN, Pastry, KAD:半分布式拓?fù)?Partially Decentralized Topology),代表為KaZaa 。 SVM概述
SVM(S叩port Vector Machine)是一種以統(tǒng)計(jì)學(xué)理論為基礎(chǔ)的,以結(jié)構(gòu)風(fēng)險(xiǎn)最小化的機(jī) 器學(xué)習(xí)方法。V即nik等人在多年研究統(tǒng)計(jì)學(xué)習(xí)理論基礎(chǔ)上對(duì)線性分類器提出了另一種設(shè)計(jì)最 佳準(zhǔn)則。其原理也從線性可分說(shuō)起,然后擴(kuò)展到線性不可分的情況。甚至擴(kuò)展到使用非線性 函數(shù)中去,這種分類器被稱為支持向量機(jī)(S叩port Vector Machine,簡(jiǎn)稱SVM) 。 SVM的主要 思想可以概括為兩點(diǎn)(1)它是針對(duì)線性可分情況進(jìn)行分析,對(duì)于線性不可分的情況,通 過(guò)使用非線性映射算法將低維輸入空間線性不可分的樣本轉(zhuǎn)化為高維特征空間使其線性可 分,從而使得高維特征空間采用線性算法對(duì)樣本的非線性特征進(jìn)行線性分析成為可能;(2) 它基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化理論之上在特征空間中建構(gòu)最優(yōu)分割超平面,使得學(xué)習(xí)器得到全局最 優(yōu)化,并且在整個(gè)樣本空間的期望風(fēng)險(xiǎn)以某個(gè)概率滿足一定上界。
現(xiàn)有主要的幾種P2P流量檢測(cè)技術(shù)方案及其缺陷
1.基于端口的P2P流量識(shí)別 這里的端口指TCP/IP模型的傳輸層端口,即TCP或UDP端口。早期的P2P系統(tǒng)大都使用 默認(rèn)的網(wǎng)絡(luò)端口,這種方法的特點(diǎn)是簡(jiǎn)單快速,然而一些P2P協(xié)議不使用固定端口,而是 動(dòng)態(tài)地使用端口.包括使用一些知名服務(wù)的端口。 KaZaA就是可以使用端口80 (通常是http 或web服務(wù)來(lái)使用)來(lái)通信的,而像Direct Connect, Bitconnect等更是使用了隨機(jī)端口,而 http隧道、端口跳躍等技術(shù)的使用更是加大了識(shí)別、跟蹤、控制的難度。
42. 基于流統(tǒng)計(jì)特征的識(shí)別
基于流的識(shí)別方法是基于統(tǒng)計(jì)的觀點(diǎn),通過(guò)分析P2P流的幾個(gè)特征屬性(平均速率,字 節(jié)數(shù)等),從宏觀上進(jìn)行識(shí)別。研究表明,P2P流量具有長(zhǎng)時(shí)間固定連接,數(shù)據(jù)量大,高速 傳輸,流量具有非突發(fā)性,上行流量與下行流量相當(dāng)?shù)奶攸c(diǎn)。當(dāng)某個(gè)方向的流被識(shí)別為P2P 流,則其反方向流必然也是P2P流。通過(guò)分析不同數(shù)據(jù)流的屬性,可以把P2P流與其它應(yīng)用的 數(shù)據(jù)流區(qū)別開(kāi)來(lái)。有些流的特征和P2P的相似,如FTP文件傳輸。對(duì)于這些流,可以綜合端 口識(shí)別方法進(jìn)行判斷?;诹鞯腜2P識(shí)別方法可以將P2P從其他非P2P服務(wù)類型區(qū)別開(kāi),易 于檢測(cè)對(duì)負(fù)載進(jìn)行加密的流量以及新出現(xiàn)的和未知的P2P流量,但是不能區(qū)分具體是哪種 P2P協(xié)議,另外,這種方法的靈活性較好但精確性不高。
3. 基于傳輸層行為特征的識(shí)別
該方法以P2P流量在傳輸層所表現(xiàn)出來(lái)的兩種一般特性為依據(jù)并結(jié)合傳統(tǒng)的端口檢測(cè) 技術(shù)。基于傳輸層的P2P識(shí)別與基于流的P2P識(shí)別有相似之處,都是通過(guò)宏觀分析的方法進(jìn) 行識(shí)別,而不進(jìn)行任何微觀內(nèi)容的檢測(cè),不同之處在于,基于流的P2P識(shí)別依據(jù)的是P2P流 的字節(jié)數(shù),平均速率以及持續(xù)時(shí)間等流的屬性特征,而傳輸層的P2P識(shí)別則是根據(jù)P2P連接 的IP地址和端口號(hào)的連接特征進(jìn)行識(shí)別的。這種方法主要使用一個(gè)數(shù)據(jù)流中兩種不同類型的 對(duì)。第一種是同時(shí)使用TCP和UDP進(jìn)行數(shù)據(jù)傳輸?shù)膡源IP,目的IP》對(duì);第二種是兩個(gè)P2P結(jié) 點(diǎn)進(jìn)行連接的(IP, port》對(duì)。同基于流的識(shí)別方法一樣,這種識(shí)別方法最大的問(wèn)題也是不能 區(qū)分出具體的P2P協(xié)議,靈活性較好,即可以識(shí)別未知的P2P協(xié)議,但精確性不高。
4. 基于深層數(shù)據(jù)包掃描的識(shí)別
深層數(shù)據(jù)包檢測(cè)技術(shù)是通過(guò)對(duì)數(shù)據(jù)包應(yīng)用層協(xié)議的檢測(cè)解析發(fā)現(xiàn)P2P應(yīng)用。這種技術(shù) 使用一個(gè)載荷特征庫(kù)存儲(chǔ)載荷特征串,符合載荷特征串的數(shù)據(jù)包即視為P2P數(shù)據(jù)包。幾乎 每種P2P應(yīng)用都基于自己的應(yīng)用層協(xié)議,通過(guò)數(shù)據(jù)報(bào)報(bào)文捕獲,分析報(bào)文特征,為每種P2P 應(yīng)用層協(xié)議定義唯一的特征串,定義特征串的原則為選擇該協(xié)議特有的,交互過(guò)程中必須 出現(xiàn)且實(shí)際環(huán)境中出現(xiàn)頻率最高的字段作為協(xié)議的特征串。這種方法的特點(diǎn)是識(shí)別率高,但 是這種方法是通過(guò)識(shí)別包載荷中的特征字段來(lái)捕捉相應(yīng)的P2P流量,它依賴于報(bào)文內(nèi)容, 面對(duì)負(fù)載加密的P2P流量或者內(nèi)容特征尚未公布的新型P2P流量顯得力不從心。此外,算 法檢測(cè)性能與載荷特征串的復(fù)雜度有關(guān),載荷特征越復(fù)雜,則檢測(cè)代價(jià)越高,算法性能越差。
以上各類歸結(jié)為兩大類即基于流量特征的檢測(cè)方法和基于載荷(payload)特征的深 層數(shù)據(jù)包檢測(cè)方法,兩者各有優(yōu)缺點(diǎn)。
發(fā)明內(nèi)容
技術(shù)問(wèn)題本發(fā)明的目的是提供一種基于支持向量機(jī)的混合式點(diǎn)對(duì)點(diǎn)流量檢測(cè)方法,使 用混合式的檢測(cè)手段,能有效地提高精確度,降低虛警率和漏警率,適應(yīng)在當(dāng)今P2P技術(shù) 迅速發(fā)展的情況下對(duì)其檢測(cè)的要求。
技術(shù)方案本發(fā)明的基于SVM (支持向量機(jī))和常用的P2P (點(diǎn)對(duì)點(diǎn))流量檢測(cè)方法, 首先選取大量的P2P流量樣本和非P2P流量樣本利用SVM進(jìn)行針對(duì)性的反饋迭代訓(xùn)練, SVM在經(jīng)過(guò)多次反饋迭代訓(xùn)練后,識(shí)別的準(zhǔn)確率將有很大的提升。直至達(dá)到一個(gè)我們所要 求的性能與速度均可以接受的均衡點(diǎn)。然后將支持向量機(jī)(SVM)布置在網(wǎng)關(guān)處開(kāi)始抓包, 利用SVM的分類器對(duì)其進(jìn)行分類,確定的P2P流量進(jìn)入管理平臺(tái)的匹配模塊進(jìn)行P2P類型
5匹配,不確定是否為P2P流量的進(jìn)入分析模塊待分析,確定為非P2P流量的直接舍棄。分 析模塊從匹配模塊接受無(wú)法匹配的數(shù)據(jù),從SVM的分類器接受不確定是否為P2P的數(shù)據(jù), 對(duì)二者進(jìn)行分析。分析后根據(jù)情況傳到匹配模塊或是校正模塊。校正模塊將校正信息傳遞給 支持向量機(jī)(SVM)的訓(xùn)練器,使其訓(xùn)練出的模型更適合分類器使用。
所述的總體架構(gòu)的設(shè)計(jì)、支持向量機(jī)(SVM)的訓(xùn)練、P2P流量識(shí)別方法具體為
a. 訓(xùn)練支持向量機(jī)首先使用一定數(shù)量的P2P和非P2P數(shù)據(jù)作為訓(xùn)練樣本輸入到支持向 量機(jī)之中,根據(jù)這些訓(xùn)練數(shù)據(jù)輸出一個(gè)模型,這個(gè)模型實(shí)際上就是通過(guò)樣本構(gòu)造的一個(gè)決策 函數(shù),然后將測(cè)試數(shù)據(jù)輸入該模型進(jìn)行分類,如果非P2P流量被識(shí)別為P2P流量的比例較大, 則說(shuō)明虛警率比較高;相反,如果P2P流量被識(shí)別為非P2P流量的比例較大,則說(shuō)明漏警率比 較高;接下來(lái)對(duì)當(dāng)前的情況進(jìn)行反饋將錯(cuò)分為P2P的非P2P流量重新歸到非P2P—類;同時(shí) 也將被錯(cuò)分為非P2P的P2P流量重新歸到P2P—類,循環(huán)執(zhí)行前面的步驟,直到獲得理想的精 度為止;
b. 支持向量機(jī)對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分類將訓(xùn)練好的支持向量機(jī)加入布置到網(wǎng)關(guān)中,通過(guò)網(wǎng) 關(guān)的數(shù)據(jù)被抓包送入支持向量機(jī)的分類器中進(jìn)行分析并對(duì)其分類,分類器在使用時(shí)不僅僅只 是分成P2P流量和非P2P流量?jī)纱箢?,在兩者之間設(shè)定一個(gè)模糊區(qū)域,在這個(gè)模糊區(qū)域內(nèi),將 此流量作為輸入數(shù)據(jù)傳給管理平臺(tái),也向支持向量機(jī)的訓(xùn)練器中輸入此數(shù)據(jù),由管理平臺(tái)的 分析模塊負(fù)責(zé)對(duì)這部份模糊數(shù)據(jù)進(jìn)行分析,最終確定其數(shù)據(jù)類別;由分類器確定的非P2P流 量直接舍棄;
c.匹配模塊對(duì)P2P流量進(jìn)行數(shù)據(jù)匹配當(dāng)管理平臺(tái)的匹配模塊接收到來(lái)自于支持向量 機(jī)分類器分類的確定P2P流量數(shù)據(jù)時(shí),開(kāi)始對(duì)數(shù)據(jù)進(jìn)行匹配,對(duì)可以確定類型的P2P流量數(shù) 據(jù)分別歸入各自部分,有一部分被支持向量機(jī)確定為P2P數(shù)據(jù)但在匹配模塊中找不到符合的 項(xiàng),這部分?jǐn)?shù)據(jù)將由匹配模塊傳入到分析模塊中,由分析模塊來(lái)對(duì)其確認(rèn);
d.分析模塊對(duì)傳入數(shù)據(jù)進(jìn)行分析分析模塊采用基于流量統(tǒng)計(jì)特征和深層數(shù)據(jù)包檢測(cè) 技術(shù)相結(jié)合的方法,分析模塊接收的數(shù)據(jù)來(lái)自兩個(gè)地方,其中一處是來(lái)自支持向量機(jī)分類器 中不能確定的模糊區(qū)域的數(shù)據(jù),另一處來(lái)自匹配模塊中無(wú)法找到對(duì)應(yīng)匹配項(xiàng)的數(shù)據(jù),分析模 塊首先對(duì)這些數(shù)據(jù)進(jìn)行簡(jiǎn)單的常用端口過(guò)濾,過(guò)濾掉一些使用常用端口的非P2P流量數(shù)據(jù), 然后使用流量特征匹配確認(rèn)該數(shù)據(jù)報(bào)文是否符合P2P流量特征,如果符合,再進(jìn)行載荷匹配 以獲得其應(yīng)用類型,如果此時(shí)在無(wú)法找到相匹配的項(xiàng),則根據(jù)載荷特征新建一匹配項(xiàng),對(duì)不 符合流量統(tǒng)計(jì)特征的數(shù)據(jù)報(bào)文也要進(jìn)行載荷匹配;若找到匹配項(xiàng),則獲知其應(yīng)用類型,否則 認(rèn)為其為非P2P流量
e. 校正模塊對(duì)支持向量機(jī)的訓(xùn)練器進(jìn)行不定期的調(diào)整設(shè)計(jì)一個(gè)校正模塊對(duì)支持向量 機(jī)的訓(xùn)練器進(jìn)行不定期的調(diào)整,以期達(dá)到設(shè)計(jì)要求;校正模塊的數(shù)據(jù)來(lái)自與分析模塊,基于 流量統(tǒng)計(jì)特征和深層數(shù)據(jù)包檢測(cè)技術(shù)相結(jié)合的方法能發(fā)現(xiàn)未知的P2P流量,以提高訓(xùn)練器的 效果,使得訓(xùn)練器產(chǎn)生的分類模型更適合分類器使用
f. 控制模塊協(xié)調(diào)其他幾個(gè)模塊的運(yùn)行并發(fā)出控制命令對(duì)網(wǎng)絡(luò)流量進(jìn)行總控控制模塊 作為整個(gè)管理平臺(tái)的中樞,由它來(lái)協(xié)調(diào)匹配模塊、分析模塊、校正模塊的關(guān)系,組織幾個(gè)模 塊的正確運(yùn)行,最終的控制網(wǎng)絡(luò)流量的命令也由它發(fā)出,控制模塊將根據(jù)檢測(cè)到的P2P流量 的類型、對(duì)網(wǎng)絡(luò)的危害程度來(lái)決定是完全禁止此種P2P應(yīng)用,還是僅僅只是限制此種P2P 應(yīng)用,抑或暫時(shí)對(duì)此種P2P應(yīng)用完全放行。有益效果:本發(fā)明技術(shù)方案中通過(guò)SVM技術(shù)引入到P2P流量檢測(cè)中,將支持向量機(jī)(SVM) 布置在網(wǎng)關(guān)處抓包,然后利用SVM的分類器對(duì)其進(jìn)行分類。首先利用訓(xùn)練數(shù)據(jù)訓(xùn)練支持向量 機(jī)直到獲得理想的精度然后利用支持向量機(jī)對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分類;匹配模塊對(duì)P2P流量進(jìn) 行數(shù)據(jù)匹配,分析模塊對(duì)傳入數(shù)據(jù)進(jìn)行分析,校正模塊對(duì)支持向量機(jī)的訓(xùn)練器進(jìn)行不定期的 調(diào)整,控制模塊協(xié)調(diào)其他幾個(gè)模塊的運(yùn)行并發(fā)出控制命令對(duì)網(wǎng)絡(luò)流量進(jìn)行總控。利用SVM 的自學(xué)習(xí)功能,極大的提升P2P流量檢測(cè)的精確性,同時(shí)也提高了檢測(cè)的速度。
圖1為該體系總體架構(gòu)圖,
圖2支持向量機(jī)(SVM)的訓(xùn)練原理圖,
圖3 P2P流量數(shù)據(jù)匹配圖,
圖4分析模塊圖。
具體實(shí)施例方式
本發(fā)明的總體架構(gòu)如圖l所示,其中的支持向量機(jī)(SVM)的訓(xùn)練原理如圖2所示。
1. 訓(xùn)練支持向量機(jī)(SVM)
首先使用一定數(shù)量的P2P和非P2P數(shù)據(jù)作為訓(xùn)練樣本輸入到支持向量機(jī)之中,根據(jù)這些訓(xùn) 練數(shù)據(jù)輸出一個(gè)模型,這個(gè)模型實(shí)際上就是通過(guò)樣本構(gòu)造的一個(gè)決策函數(shù)。然后將測(cè)試數(shù)據(jù) 輸入該模型進(jìn)行分類,如果非P2P流量被識(shí)別為P2P流量的比例較大,則說(shuō)明虛警率比較高; 相反,如果P2P流量被識(shí)別為非P2P流量的比例較大,則說(shuō)明漏警率比較高。接下來(lái)應(yīng)該對(duì)當(dāng) 前的情況進(jìn)行反饋將錯(cuò)分為P2P的非P2P流量重新歸到非P2P—類;同時(shí)也將被錯(cuò)分為非P2P 的P2P流量重新歸到P2P—類。循環(huán)執(zhí)行前面的步驟,直到獲得理想的精度為止。在該實(shí)驗(yàn)最 開(kāi)始的時(shí)候,投入訓(xùn)練的樣本并不多,這是為了保證能夠迅速的構(gòu)造決策函數(shù)。接下來(lái)的反 饋過(guò)程將錯(cuò)分的樣本進(jìn)行糾正,相當(dāng)于在下一次訓(xùn)練中加入了先驗(yàn)知識(shí),從而通過(guò)學(xué)習(xí)提高 分類性能。隨著迭代次數(shù)的增加,投入訓(xùn)練的樣本越來(lái)越多,包含的數(shù)據(jù)特征也越來(lái)越全面; 同時(shí)由于反饋次數(shù)的增多,該學(xué)習(xí)器的分類性能也隨著加入的先驗(yàn)知識(shí)不斷增強(qiáng),最終將達(dá) 到較為理想的效果。
2. 支持向量機(jī)對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分類
將訓(xùn)練好的支持向量機(jī)(SVM)加入布置到網(wǎng)關(guān)中,通過(guò)網(wǎng)關(guān)的數(shù)據(jù)被抓包送入SVM的分類 器中進(jìn)行分析并對(duì)其分類。因?yàn)殡S著網(wǎng)絡(luò)的發(fā)展,P2P的應(yīng)用越來(lái)越廣泛,而且新的P2P形式 越來(lái)越多,為了更好的將P2P流量區(qū)分出來(lái),我們的分類器在使用時(shí)不僅僅只是分成P2P流量 和非P2P流量?jī)纱箢?,因?yàn)檫@樣做有可能會(huì)將一些本是P2P的流量識(shí)別為非P2P流量,同時(shí)將 一些本是非P2P流量的數(shù)據(jù)識(shí)別為P2P流量。因此我們?cè)趦烧咧g設(shè)定一個(gè)模糊區(qū)域,在這個(gè) 模糊區(qū)域內(nèi),我們暫且不去區(qū)分流量類別,而是將此流量作為輸入數(shù)據(jù)傳給管理平臺(tái),也向 支持向量機(jī)的訓(xùn)練器中輸入此數(shù)據(jù)。由管理平臺(tái)的分析模塊負(fù)責(zé)對(duì)這部份模糊數(shù)據(jù)進(jìn)行分 析,最終確定其數(shù)據(jù)類別。由分類器確定的P2P流量作為輸入傳到管理平臺(tái)的匹配模塊中, 再有匹配模塊確定其P2P流量的類型。因?yàn)槲覀冏罱K要分析的只是P2P流量,所以由分類器確 定的非P2P流量直接舍棄。
3.匹配模塊對(duì)P2P流量進(jìn)行數(shù)據(jù)匹配當(dāng)管理平臺(tái)的匹配模塊接收到來(lái)自于支持向量機(jī)分類器分類的確定P2P流量數(shù)據(jù)時(shí),開(kāi) 始對(duì)數(shù)據(jù)進(jìn)行匹配,如圖3所示。對(duì)可以確定類型的P2P流量數(shù)據(jù)分別歸入各自部分,但仍 然會(huì)有一部分被支持向量機(jī)確定為P2P數(shù)據(jù)但在匹配模塊中找不到符合的項(xiàng),這部分?jǐn)?shù)據(jù)將 由匹配模塊傳入到分析模塊中,由分析模塊來(lái)對(duì)其確認(rèn)。
4.分析模塊對(duì)傳入數(shù)據(jù)進(jìn)行分析 分析模塊采用基于流量統(tǒng)計(jì)特征和深層數(shù)據(jù)包檢測(cè)(DPI)技術(shù)相結(jié)合的方法,檢測(cè)方法如圖4 所示。分析模塊接收的數(shù)據(jù)來(lái)自兩個(gè)地方,其中一處是來(lái)自支持向量機(jī)(SVM)分類器中不 能確定的模糊區(qū)域的數(shù)據(jù),另一處來(lái)自匹配模塊中無(wú)法找到對(duì)應(yīng)匹配項(xiàng)的數(shù)據(jù)。分析模塊首 先對(duì)這些數(shù)據(jù)進(jìn)行簡(jiǎn)單的常用端口 (不包括80這個(gè)常用端口,這個(gè)端口被某些P2P軟件使用) 過(guò)濾,這樣可以過(guò)濾掉一些使用常用端口的非P2P流量數(shù)據(jù)。然后使用流量特征匹配確認(rèn)該 數(shù)據(jù)報(bào)文是否符合P2P流量特征,如果符合,再進(jìn)行載荷(payload)匹配以獲得其應(yīng)用類型。 如果此時(shí)在無(wú)法找到相匹配的項(xiàng),則根據(jù)載荷特征新建一匹配項(xiàng),因?yàn)檫@種^^基于流量統(tǒng)計(jì) 特征檢測(cè)出而不能被利用深層數(shù)據(jù)包檢測(cè)技術(shù)檢測(cè)到的P2P流量極有可能是未知的P2P流量 或加密的P2P流量。對(duì)不符合流量統(tǒng)計(jì)特征的數(shù)據(jù)報(bào)文也要進(jìn)行載荷(payload)匹配,若找 到匹配項(xiàng),則獲知其應(yīng)用類型;否則認(rèn)為其為非P2P流量。采用這種新型的檢測(cè)方法,未知的 和加密的P2P應(yīng)用可以在流量特征匹配階段進(jìn)行有效的檢測(cè),從而克服了深層數(shù)據(jù)包檢測(cè)技 術(shù)在這方面固有的缺陷,而對(duì)于P2P應(yīng)用的分類又克服了基于流量檢測(cè)技術(shù)分類能力弱的缺 陷。由于是基于流量特征和payload特征的雙重檢測(cè)來(lái)確定P2P流量,只要保證流量特征和 payload特征的組合能夠唯一確定P2P協(xié)議即可,所以在制定過(guò)濾規(guī)則時(shí)可以根據(jù)性能的需要 去掉許多復(fù)雜的流量特征和payload特征,從而提高檢測(cè)效率。分析模塊也會(huì)向匹配模塊傳送 匹配模塊尚不具有的,但被分析模塊確定為P2P流量的數(shù)據(jù)特征,這樣匹配模塊可以對(duì)支持 向量機(jī)(SVM)的分類器分類的P2P流量數(shù)據(jù)進(jìn)行更好的匹配。
5. 校正模塊對(duì)支持向量機(jī)(SVM)的訓(xùn)練器進(jìn)行不定期的調(diào)整 網(wǎng)絡(luò)技術(shù)總是不斷的進(jìn)步,P2P技術(shù)也是在不斷的發(fā)展。在長(zhǎng)期的使用環(huán)境下,如果不對(duì)支 持向量機(jī)(SVM)進(jìn)行不斷的訓(xùn)練,SVM將無(wú)法對(duì)新型的P2P應(yīng)用作出反應(yīng)或作出錯(cuò)誤的反 應(yīng),對(duì)P2P流量的檢測(cè)效率和精度都將越來(lái)越低。因此我們?cè)O(shè)計(jì)一個(gè)校正模塊對(duì)支持向量機(jī)
(SVM)的訓(xùn)練器進(jìn)行不定期的調(diào)整,以期達(dá)到我們的要求。校正模塊的數(shù)據(jù)來(lái)自與分析模 塊,基于流量統(tǒng)計(jì)特征和深層數(shù)據(jù)包檢測(cè)技術(shù)相結(jié)合的方法能發(fā)現(xiàn)未知的P2P流量。這些數(shù) 據(jù)的提供可以提高訓(xùn)練器的效果,使得訓(xùn)練器產(chǎn)生的分類模型更適合分類器使用。
6. 控制模塊協(xié)調(diào)其他幾個(gè)模塊的運(yùn)行并發(fā)出控制命令對(duì)網(wǎng)絡(luò)流量進(jìn)行總控 控制模塊作為整個(gè)管理平臺(tái)的中樞,由它來(lái)協(xié)調(diào)匹配模塊、分析模塊、校正模塊的關(guān)系,
組織幾個(gè)模塊的正確運(yùn)行。最終的控制網(wǎng)絡(luò)流量的命令也由它發(fā)出,控制模塊將根據(jù)檢測(cè)到 的P2P流量的類型、對(duì)網(wǎng)絡(luò)的危害程度來(lái)決定是完全禁止此種P2P應(yīng)用,還是僅僅只是限制 此種P2P應(yīng)用,抑或暫時(shí)對(duì)此種P2P應(yīng)用完全放行。
8
權(quán)利要求
1. 一種基于支持向量機(jī)的混合式點(diǎn)對(duì)點(diǎn)流量檢測(cè)方法,其特征在于,該方法分為支持向量機(jī)的訓(xùn)練、P2P流量識(shí)別方法兩部分;首先選取大量的P2P流量樣本和非P2P流量樣本利用支持向量機(jī)進(jìn)行針對(duì)性的反饋迭代訓(xùn)練,SVM在經(jīng)過(guò)多次反饋迭代訓(xùn)練后,識(shí)別的準(zhǔn)確率將有很大的提升,直至達(dá)到一個(gè)所要求的性能與速度均可以接受的均衡點(diǎn),然后將支持向量機(jī)布置在網(wǎng)關(guān)處開(kāi)始抓包,利用支持向量機(jī)的分類器對(duì)其進(jìn)行分類,確定的P2P流量進(jìn)入管理平臺(tái)的匹配模塊進(jìn)行P2P類型匹配,不確定是否為P2P流量的進(jìn)入分析模塊待分析,確定為非P2P流量的直接舍棄;分析模塊從匹配模塊接受無(wú)法匹配的數(shù)據(jù),從支持向量機(jī)的分類器接受不確定是否為P2P的數(shù)據(jù),對(duì)二者進(jìn)行分析,分析后根據(jù)情況傳到匹配模塊或是校正模塊,校正模塊將校正信息傳遞給支持向量機(jī)的訓(xùn)練器,使其訓(xùn)練出的模型更適合分類器使用。
2. 根據(jù)權(quán)利要求1所述的基于支持向量機(jī)的混合式點(diǎn)對(duì)點(diǎn)流量檢測(cè)方法,其特征在于, 所述的支持向量機(jī)的訓(xùn)練、P2P流量識(shí)別方法具體為a. 訓(xùn)練支持向量機(jī)首先使用一定數(shù)量的P2P和非P2P數(shù)據(jù)作為訓(xùn)練樣本輸入到支持向 量機(jī)之中,根據(jù)這些訓(xùn)練數(shù)據(jù)輸出一個(gè)模型,這個(gè)模型實(shí)際上就是通過(guò)樣本構(gòu)造的一個(gè)決策 函數(shù),然后將測(cè)試數(shù)據(jù)輸入該模型進(jìn)行分類,如果非P2P流量被識(shí)別為P2P流量的比例較大, 則說(shuō)明虛警率比較高;相反,如果P2P流量被識(shí)別為非P2P流量的比例較大,則說(shuō)明漏警率比 較高;接下來(lái)對(duì)當(dāng)前的情況進(jìn)行反饋將錯(cuò)分為P2P的非P2P流量重新歸到非P2P—類;同時(shí) 也將被錯(cuò)分為非P2P的P2P流量重新歸到P2P—類,循環(huán)執(zhí)行前面的步驟,直到獲得理想的精 度為止;b. 支持向量機(jī)對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分類將訓(xùn)練好的支持向量機(jī)加入布置到網(wǎng)關(guān)中,通過(guò)網(wǎng) 關(guān)的數(shù)據(jù)被抓包送入支持向量機(jī)的分類器中進(jìn)行分析并對(duì)其分類,分類器在使用時(shí)不僅僅只 是分成P2P流量和非P2P流量?jī)纱箢?,在兩者之間設(shè)定一個(gè)模糊區(qū)域,在這個(gè)模糊區(qū)域內(nèi),將 此流量作為輸入數(shù)據(jù)傳給管理平臺(tái),也向支持向量機(jī)的訓(xùn)練器中輸入此數(shù)據(jù),由管理平臺(tái)的 分析模塊負(fù)責(zé)對(duì)這部份模糊數(shù)據(jù)進(jìn)行分析,最終確定其數(shù)據(jù)類別;由分類器確定的非P2P流 量直接舍棄c.匹配模塊對(duì)P2P流量進(jìn)行數(shù)據(jù)匹配當(dāng)管理平臺(tái)的匹配模塊接收到來(lái)自于支持向量 機(jī)分類器分類的確定P2P流量數(shù)據(jù)時(shí),開(kāi)始對(duì)數(shù)據(jù)進(jìn)行匹配,對(duì)可以確定類型的P2P流量數(shù)據(jù)分別歸入各自部分,有一部分被支持向量機(jī)確定為P2P數(shù)據(jù)但在匹配模塊中找不到符合的 項(xiàng),這部分?jǐn)?shù)據(jù)將由匹配模塊傳入到分析模塊中,由分析模塊來(lái)對(duì)其確認(rèn);d.分析模塊對(duì)傳入數(shù)據(jù)進(jìn)行分析分析模塊采用基于流量統(tǒng)計(jì)特征和深層數(shù)據(jù)包檢測(cè) 技術(shù)相結(jié)合的方法,分析模塊接收的數(shù)據(jù)來(lái)自兩個(gè)地方,其中一處是來(lái)自支持向量機(jī)分類器 中不能確定的模糊區(qū)域的數(shù)據(jù),另一處來(lái)自匹配模塊中無(wú)法找到對(duì)應(yīng)匹配項(xiàng)的數(shù)據(jù),分析模 塊首先對(duì)這些數(shù)據(jù)進(jìn)行簡(jiǎn)單的常用端口過(guò)濾,過(guò)濾掉一些使用常用端口的非P2P流量數(shù)據(jù), 然后使用流量特征匹配確認(rèn)該數(shù)據(jù)報(bào)文是否符合P2P流量特征,如果符合,再進(jìn)行載荷匹配 以獲得其應(yīng)用類型,如果此時(shí)在無(wú)法找到相匹配的項(xiàng),則根據(jù)載荷特征新建一匹配項(xiàng),對(duì)不 符合流量統(tǒng)計(jì)特征的數(shù)據(jù)報(bào)文也要進(jìn)行載荷匹配;若找到匹配項(xiàng),則獲知其應(yīng)用類型,否則 認(rèn)為其為非P2P流量;e. 校正模塊對(duì)支持向量機(jī)的訓(xùn)練器進(jìn)行不定期的調(diào)整設(shè)計(jì)一個(gè)校正模塊對(duì)支持向量 機(jī)的訓(xùn)練器進(jìn)行不定期的調(diào)整,以期達(dá)到設(shè)計(jì)要求;校正模塊的數(shù)據(jù)來(lái)自與分析模塊,基于 流量統(tǒng)計(jì)特征和深層數(shù)據(jù)包檢測(cè)技術(shù)相結(jié)合的方法能發(fā)現(xiàn)未知的P2P流量,以提高訓(xùn)練器的 效果,使得訓(xùn)練器產(chǎn)生的分類模型更適合分類器使用;f. 控制模塊協(xié)調(diào)其他幾個(gè)模塊的運(yùn)行并發(fā)出控制命令對(duì)網(wǎng)絡(luò)流量進(jìn)行總控控制模塊 作為整個(gè)管理平臺(tái)的中樞,由它來(lái)協(xié)調(diào)匹配模塊、分析模塊、校正模塊的關(guān)系,組織幾個(gè)模 塊的正確運(yùn)行,最終的控制網(wǎng)絡(luò)流量的命令也由它發(fā)出,控制模塊將根據(jù)檢測(cè)到的P2P流量 的類型、對(duì)網(wǎng)絡(luò)的危害程度來(lái)決定是完全禁止此種P2P應(yīng)用,還是僅僅只是限制此種P2P 應(yīng)用,抑或暫時(shí)對(duì)此種P2P應(yīng)用完全放行。
全文摘要
采用基于SVM和基于流量統(tǒng)計(jì)特征與深層數(shù)據(jù)包檢測(cè)技術(shù)相結(jié)合的分布式總體架構(gòu),使用混合式的檢測(cè)手段,有效地提高P2P流量檢測(cè)的精度和速度,降低虛警率和漏警率,適應(yīng)P2P檢測(cè)系統(tǒng)對(duì)不斷增長(zhǎng)的P2P新的應(yīng)用的控制要求。本方案中對(duì)支持向量機(jī)(SVM)的分類器的分類進(jìn)行更細(xì)也是更有效的劃分,獨(dú)立出一個(gè)模糊區(qū)域,模糊區(qū)域的引入使得分類器不是在碰到任何數(shù)據(jù)時(shí)都時(shí)簡(jiǎn)單的將其歸結(jié)為P2P流量或者非P2P流量,而是通過(guò)由模糊區(qū)域?qū)?shù)據(jù)傳到管理平臺(tái)的分析模塊,由分析模塊精確分析后確定。分析模塊確定的P2P流量數(shù)據(jù)特征將分別根據(jù)情況傳遞到匹配模塊或校正模塊,進(jìn)一步提高檢測(cè)的效率。
文檔編號(hào)H04L29/08GK101510873SQ200910029899
公開(kāi)日2009年8月19日 申請(qǐng)日期2009年3月20日 優(yōu)先權(quán)日2009年3月20日
發(fā)明者紀(jì)迎彬, 郭曉鳳, 勤 黃 申請(qǐng)人:揚(yáng)州永信計(jì)算機(jī)有限公司