一種基于不可分小波svm的對等網(wǎng)絡(luò)流量識別方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別方法和系統(tǒng),本發(fā)明根據(jù)對等網(wǎng)絡(luò)流量相似性、突變性、多尺度的特性,引入小波分析工具,構(gòu)造不可分小波作為SVM的核函數(shù),提高了識別正確率;此外,針對網(wǎng)格搜索算法確定SVM懲罰參數(shù)和核函數(shù)效率低下的問題,引入杜鵑搜索快速確定SVM的最優(yōu)參數(shù),加快SVM的訓(xùn)練速度,提高識別正確率和計算效率;本發(fā)明能夠在小樣本下、實時高效地識別對等網(wǎng)絡(luò)流量。
【專利說明】-種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及網(wǎng)絡(luò)流量識別方法和系統(tǒng),具體的為一種基于不可分小波SVM的對等 網(wǎng)絡(luò)流量識別方法和系統(tǒng)。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)的發(fā)展,對等網(wǎng)絡(luò)技術(shù)(Peer to Peer簡稱為P2P)在影片下載、在線 視頻、文件下載等方面得到了廣泛的應(yīng)用。通過P2P文件的下載速度、視頻的觀看效果均有 極大的改善。然而,P2P技術(shù)一方面豐富了網(wǎng)絡(luò)中應(yīng)用,同時另一方面也帶來了許多負(fù)面影 響,主要體現(xiàn)在以下幾個方面:①占據(jù)大量的網(wǎng)絡(luò)帶寬,其產(chǎn)生的網(wǎng)絡(luò)流量占據(jù)互聯(lián)網(wǎng)流量 的80%以上;②網(wǎng)絡(luò)安全防護問題;③P2P文件共享的版權(quán)問題。因此,檢測和控制P2P流 量引起了學(xué)術(shù)界和網(wǎng)絡(luò)運營商的高度重視。而在檢測和控制P2P流量的過程中關(guān)鍵部分是 對P2P流量的識別操作,只有正確識別出感興趣的或異常的P2P流量,才能對它們進(jìn)行有效 的監(jiān)控。由于P2P流量識別工作的重要性,P2P流量識別已經(jīng)成為網(wǎng)絡(luò)測量領(lǐng)域的研究熱 點,常見的P2P流量識別主要可以分成如下四類:
[0003] (1)基于端口號的P2P流量識別技術(shù)。端口識別技術(shù)是根據(jù)TCP/UDP數(shù)據(jù)包首部 的源端口或目的端口號來識別流量。然而,由于偽端口技術(shù)、用戶定義的端口技術(shù)、隨機端 口技術(shù)的出現(xiàn)使得基于端口號的P2P流量識別技術(shù)的準(zhǔn)確度是逐漸降低,難以滿足識別要 求。
[0004] (2)深度包檢測技術(shù)。該方法很大程度上提高了流量識別的準(zhǔn)確率,但是該方法仍 然存在一些缺點,首先,很多P2P應(yīng)用程序不開源,準(zhǔn)確性和有效性都得不到保證;其次,部 分P2P應(yīng)用己經(jīng)開始對傳輸內(nèi)容進(jìn)行加密,根本無法獲取其真實有效的載荷信息。因此深 度數(shù)據(jù)包檢測技術(shù)在流量識別方面的效果需要進(jìn)一步提高。
[0005] (3)深度流檢測方法。該方法使用的是來自IP數(shù)據(jù)包首部的信息,因此它能夠克 服上述兩種方法的缺點,而且可有效地避免負(fù)載加密的影響。由于它只適用于流量記錄分 析,而且由于網(wǎng)絡(luò)環(huán)境的復(fù)雜性導(dǎo)致該方法的流量識別精度下降;更重要的是這種方法大 都以離線數(shù)據(jù)分析為主,缺乏P2P流量的實時識別能力。
[0006] (4)連接模式識別法。連接模式識別法是一種在傳輸層識別P2P流量的方法,它僅 僅統(tǒng)計用戶分組的首部信息,觀察源和目的IP地址和端口的連接模式。有些模式是P2P所 獨有的或少數(shù)應(yīng)用所共有,因此可以由此直接將P2P流量識別出來。其準(zhǔn)確性會受NAT等 端口 /IP地址轉(zhuǎn)換技術(shù)或監(jiān)測設(shè)備位置的干擾。
[0007] P2P流量識別問題本質(zhì)上就是一個分類問題,各種基于機器學(xué)習(xí)的分類方法很自 然的被應(yīng)用到P2P流量識別問題,如基于神經(jīng)網(wǎng)絡(luò)的P2P流量識別,基于貝葉斯網(wǎng)絡(luò)的P2P 流量識別等等,然而神經(jīng)網(wǎng)絡(luò)方法和貝葉斯網(wǎng)絡(luò)方法訓(xùn)練過程非常繁雜耗時;網(wǎng)絡(luò)的學(xué)習(xí) 和記憶具有不穩(wěn)定性。
[0008] 支持向量機(Support Vector Machine, SVM)是一種基于統(tǒng)計學(xué)原理的機器學(xué)習(xí) 方法,該方法具有較強的泛化能力,不會出現(xiàn)局部極小和維數(shù)災(zāi)難等優(yōu)點。對等網(wǎng)絡(luò)流量識 別本質(zhì)上是一個二類分類問題,即P2P流量和非P2P流量,因此可以使用SVM進(jìn)行P2P流量 的分類識別。然而模型參數(shù)(懲罰因子C、核函數(shù)類型和核函數(shù)參數(shù)〇)的選擇對SVM分類 結(jié)果的準(zhǔn)確度具有至關(guān)重要的影響。對于SVM參數(shù)(:和 〇的選擇問題,本發(fā)明采用杜鵑搜 索算法快速尋優(yōu)得到最優(yōu)(:和〇配置組合。在選取支持向量機核函數(shù)方面,對于在真實網(wǎng) 絡(luò)環(huán)境中的P2P網(wǎng)絡(luò)流量,無論從宏觀上還是微觀上都呈現(xiàn)出非常明顯的自相似性、突變 性、多尺度的特性,常用的核函數(shù)如線性核函數(shù)和RBF在處理這類問題時不夠理想,相對于 常用的可分小波核函數(shù),不可分小波構(gòu)造上有更大的自由度而且它將高維信號作為整體來 處理,更有利于高維信號的各個方向信息的分析[1-2],因此采用不可分小波作為支持向量 積的核函數(shù),可以帶來更好的識別效果。因而本發(fā)明提出一種基于不可分小波SVM的對等 網(wǎng)絡(luò)流量識別方法,同時使用杜鵑搜索算法加快SVM分類模型訓(xùn)練過程。杜鵑搜索算法是 2009年新提出的一種模仿杜鵑鳥巢寄生和列維飛行機理的元啟發(fā)優(yōu)化算法,其基本數(shù)學(xué)模 型如下[3]。
[0009] (1) -只杜鵑一次只能產(chǎn)一枚蛋,并通過隨機游走的方式選擇一個寄生鳥巢來孵 化這枚鳥蛋。
[0010] (2)在隨機選擇的寄生鳥巢中,只有最好的寄生鳥巢能夠保留到下一代。
[0011] (3)可以產(chǎn)蛋的寄生巢數(shù)量是確定的,一個寄生巢的鳥主人能發(fā)現(xiàn)一個外來鳥蛋 的概率是P a。如果被發(fā)現(xiàn),鳥巢的主人要么將杜鵑鳥蛋扔掉,要么將鳥巢棄掉,重新再次建 立一個新鳥巢。對于待優(yōu)化的問題,為方便起見有如下約定。①一個巢里面的每個蛋代表 一個待求解問題的解決方案;②一個杜鵑鳥的蛋代表了一種新的解決方案,目的是利用新 的以及潛在更好的解決方案,來取代一個在巢里的不那么好的解決方案。在這三個理想的 狀態(tài)下,杜鵑鳥尋找鳥巢的路徑和位置用如下公式更新:
[0012]
【權(quán)利要求】
1. 一種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別方法,其特征在于,包括如下步驟: 步驟1不可分小波SVM的訓(xùn)練步驟; 步驟I. 1抓取網(wǎng)絡(luò)數(shù)據(jù)包,并統(tǒng)計其中對等網(wǎng)絡(luò)流數(shù)據(jù)樣本和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本 數(shù)目,得到對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集; 步驟1. 2對步驟I. 1抓取的對等網(wǎng)絡(luò)流量樣本集和非對等網(wǎng)絡(luò)流量樣本集進(jìn)行特征數(shù) 據(jù)預(yù)處理和歸一化處理,作為步驟1. 3中SVM的訓(xùn)練集數(shù)據(jù)存入到數(shù)據(jù)庫中; 步驟1. 3構(gòu)造不可分小波函數(shù)作為SVM的核函數(shù);使用步驟1. 2中歸一化處理存在數(shù) 據(jù)庫中的SVM訓(xùn)練樣本集,利用杜鵑搜索算法確定SVM的懲罰參數(shù)C和核函數(shù)參數(shù)〇 ; 步驟1. 3. 1構(gòu)造不可分小波函數(shù)作為SVM的核函數(shù);
其中,K(X,X')表示核函數(shù),XGRd,x'GRd表示經(jīng)過數(shù)據(jù)預(yù)處理和歸一化處理過的P2P樣本數(shù)據(jù),%是小波伸縮因子,且% > 0,exp代表指數(shù)函數(shù); 步驟1. 3. 2使用步驟1. 2中的SVM訓(xùn)練樣本集,利用杜鵑搜索算法確定SVM的懲罰參 數(shù)C和核函數(shù)參數(shù)〇 ;并以SVM對訓(xùn)練樣本的識別的正確率作為杜鵑搜索算法的適應(yīng)度函 數(shù)值,設(shè)定訓(xùn)練SVM終止條件,利用抓取的網(wǎng)絡(luò)流數(shù)據(jù)包完成對不可分小波SVM對等網(wǎng)絡(luò)識 別模型的訓(xùn)練,得到分類決策函數(shù); 步驟2基于不可分小波SVM對等網(wǎng)絡(luò)流量識別階段; 步驟2. 1抓取網(wǎng)絡(luò)數(shù)據(jù)包,并統(tǒng)計其中對等網(wǎng)絡(luò)流數(shù)據(jù)樣本和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本 數(shù)目,得到對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集; 步驟2. 2對步驟2. 1抓取的對等網(wǎng)絡(luò)流量樣本集和非對等網(wǎng)絡(luò)流量樣本集進(jìn)行特征數(shù) 據(jù)預(yù)處理和歸一化處理; 步驟2. 3利用步驟1中已經(jīng)訓(xùn)練得到不可分小波SVM識別決策函數(shù)對步驟2. 1中對等 網(wǎng)絡(luò)流數(shù)據(jù)樣本集和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集,進(jìn)行計算判別分類,如果最終的識別決策 函數(shù)值大于〇,則認(rèn)為它是對等網(wǎng)絡(luò)流量并進(jìn)行相應(yīng)的控制和處理,否則是正常網(wǎng)絡(luò)流量不 予處理; 步驟3結(jié)束。
2. 根據(jù)權(quán)利要求1所述的一種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別方法,其特征 在于,所述的步驟1. 2或2. 2中對抓取的對等網(wǎng)絡(luò)流量樣本集和非對等網(wǎng)絡(luò)流量樣本集進(jìn) 行特征數(shù)據(jù)預(yù)處理是通過數(shù)據(jù)包、網(wǎng)絡(luò)流、節(jié)點連接三個層面進(jìn)行特征數(shù)據(jù)的預(yù)處理; 數(shù)據(jù)包層面的特征:包括數(shù)據(jù)包的平均長度,數(shù)據(jù)包的最大長度,數(shù)據(jù)包的最小長度, 以及方差統(tǒng)計特征; 網(wǎng)絡(luò)流層面的特征:包括流的平均持續(xù)的時間,平均傳輸速率,流的平均字節(jié)數(shù),數(shù)據(jù) 包到達(dá)的時間間隔以及方差; 節(jié)點連接層面的特征:通過TCP的連接狀態(tài),對節(jié)點連接的相關(guān)特征進(jìn)行統(tǒng)計,包括連 接呈現(xiàn)出的對稱性以及IP地址,端口特性。
3. 根據(jù)權(quán)利要求1所述的一種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別方法,其特征 在于,所述的步驟1. 2或2. 2中對抓取的對等網(wǎng)絡(luò)流量樣本集和非對等網(wǎng)絡(luò)流量樣本集進(jìn) 行最小-最大歸一化方法對原始數(shù)據(jù)進(jìn)行歸一化處理;假定minv和maxv分別為特征v的最 小和最大值;最小-最大歸一化方法通過下式:
其中A'表示特征V的原始值A(chǔ)映射到[0, 1]之間的歸一化值,minv和maxv分別為特 征V的最小和最大值。
4.根據(jù)權(quán)利要求1所述的一種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別方法,其特征 在于,所述的步驟1. 3. 2包括以下步驟: 步驟1. 3. 2. 1輸入步驟1. 2中歸一化處理過的SVM訓(xùn)練樣本集; 步驟1. 3. 2. 2初始化杜鵑算法種群的規(guī)模,鳥巢的初始位值
,其中第i個鳥巢的位置:
,種群的迭代最大運行迭代次數(shù)N,杜鵑鳥 蛋被發(fā)現(xiàn)的概率Pa ; 步驟1. 3. 2. 3將每個鳥巢
的值分別代入到不可分小波核函數(shù)中,作為 候選的參數(shù),將使用此參數(shù)的不可分小波SVM對訓(xùn)練集進(jìn)行識別,識別的正確率就是對應(yīng) 的這個鳥巢的適應(yīng)度函數(shù)值,比較每個鳥巢Iiesti的適應(yīng)度函數(shù)值,并記錄和保留當(dāng)前適應(yīng) 度值最大的群體最優(yōu)鳥巢位置(c,。; 步驟1. 3. 2. 4利用杜鵑搜索算法的位置更新公式對鳥巢位置進(jìn)行更新,生成一組新 的鳥巢nest/的位置作為SVM的不可分小波核函數(shù)的參數(shù)值,計算新位置的適應(yīng)度函數(shù) 值,比較這組新解的適應(yīng)度函數(shù)值并記其具有最高適應(yīng)度函數(shù)值的位置(c,〇 )2;將新巢 nest/與上一代鳥巢Iiesti的適應(yīng)度值進(jìn)行對比,如果新巢nest/適應(yīng)度值更好就用新 的位置作為鳥巢的位置,否則鳥巢位置不變,其中杜鵑搜索算法采用如下公式進(jìn)行位置更 新;
其中ct是速度步長控制量并且a>〇,?表示點對點乘法,LevyO)是均勻Levy分 布隨機數(shù),服從
,i表示第i個鳥巢的位置,t表示迭代次數(shù), 入是列維飛行步長控制參數(shù); 步驟1. 3. 2. 5利用隨機數(shù)rG[〇, 1]與杜鵑鳥蛋被發(fā)現(xiàn)的概率Pa對比,如果r >Pa, 則通過列維飛行隨機改變鳥巢nest/的位置,得到一組新的鳥巢位置,并計算其適 應(yīng)度函數(shù)值,比較這組解的適應(yīng)度函數(shù)值并記其具有最優(yōu)適應(yīng)度函數(shù)值的位置(c,〇 )3;然 后進(jìn)入步驟1. 3. 2. 6 ;如果r<Pa,則順序執(zhí)行下述步驟1. 3. 2. 6 ; 步驟1. 3. 2. 6對比位置(c, 〇h、位置(c, 〇 )2、位置(c, 〇 )3的適應(yīng)度函數(shù)值,重新選 出當(dāng)前最優(yōu)位置(c,〇)/ ; 步驟1. 3. 2. 7如迭代次數(shù)t未到達(dá)設(shè)定的算法最大迭代次數(shù)N,則跳到步驟1. 3. 2. 4, 繼續(xù)迭代更新;如果已經(jīng)達(dá)到最大的迭代次數(shù),則輸出步驟1. 3. 2. 6中的當(dāng)前最優(yōu)位置 (c, 〇 )/作為不可分小波SVM的參數(shù); 步驟1. 3. 2. 8.將輸出的最優(yōu)解作為到SVM的懲罰參數(shù)和核函數(shù)參數(shù),完成對不可分小 波SVM對等網(wǎng)絡(luò)流量識別模型的訓(xùn)練,得到最終的分類決策函數(shù);
其中,sgn為符號函數(shù),Ii為Lagrange系數(shù),
為樣本集,且Yi表 示分類的類別識別標(biāo)號,K(Xi,X)為不可分小波核函數(shù),b#為分類的閾值。
5. -種基于不可分小波SVM的對等網(wǎng)絡(luò)流量識別系統(tǒng),其特征在于,包括如下模塊: 不可分小波SVM的訓(xùn)練模塊包括如下模塊; 第一抓取模塊:用于抓取網(wǎng)絡(luò)數(shù)據(jù)包,并統(tǒng)計其中對等網(wǎng)絡(luò)流數(shù)據(jù)樣本和非對等網(wǎng)絡(luò) 流數(shù)據(jù)樣本數(shù)目,得到對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集; 第一處理模塊:用于對第一抓取模塊抓取的對等網(wǎng)絡(luò)流量樣本集和非對等網(wǎng)絡(luò)流量樣 本集進(jìn)行特征數(shù)據(jù)預(yù)處理和歸一化處理,作為第一計算模塊中SVM的訓(xùn)練集數(shù)據(jù)存入到數(shù) 據(jù)庫中; 第一計算模塊:用于構(gòu)造不可分小波函數(shù)作為SVM的核函數(shù);使用第一處理模塊中歸 一化處理存在數(shù)據(jù)庫中的SVM訓(xùn)練樣本集,利用杜鵑搜索算法確定SVM的懲罰參數(shù)C和核 函數(shù)參數(shù)〇 ; 用于構(gòu)造不可分小波函數(shù)作為SVM的核函數(shù);
其中,K(X,X')表示核函數(shù),XGRd,x'GRd表示經(jīng)過數(shù)據(jù)預(yù)處理和歸一化處理過的P2P樣本數(shù)據(jù),%是小波伸縮因子,且% > 0,exp代表指數(shù)函數(shù); 用于使用第一處理模塊中的SVM訓(xùn)練樣本集,利用杜鵑搜索算法確定SVM的懲罰參數(shù)C和核函數(shù)參數(shù)〇 ;并以SVM對訓(xùn)練樣本的識別的正確率作為杜鵑搜索算法的適應(yīng)度函數(shù) 值,設(shè)定訓(xùn)練SVM終止條件,利用抓取的網(wǎng)絡(luò)流數(shù)據(jù)包完成對不可分小波SVM對等網(wǎng)絡(luò)識別 模型的訓(xùn)練,得到分類決策函數(shù); 不可分小波SVM對等網(wǎng)絡(luò)流量識別模塊; 第二抓取模塊:用于抓取網(wǎng)絡(luò)數(shù)據(jù)包,并統(tǒng)計其中對等網(wǎng)絡(luò)流數(shù)據(jù)樣本和非對等網(wǎng)絡(luò) 流數(shù)據(jù)樣本數(shù)目,得到對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集; 第二處理模塊,用于對步驟第二抓取模塊抓取的對等網(wǎng)絡(luò)流量樣本集和非對等網(wǎng)絡(luò)流 量樣本集進(jìn)行特征數(shù)據(jù)預(yù)處理和歸一化處理; 第二計算模塊:用于利用第二抓取模塊中已經(jīng)訓(xùn)練得到不可分小波SVM識別決策函 數(shù)對第二抓取模塊中對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集和非對等網(wǎng)絡(luò)流數(shù)據(jù)樣本集,進(jìn)行計算判別分 類,如果最終的識別決策函數(shù)值大于0,則認(rèn)為它是對等網(wǎng)絡(luò)流量并進(jìn)行相應(yīng)的控制和處 理,否則是正常網(wǎng)絡(luò)流量不予處理。
【文檔編號】H04L12/26GK104243245SQ201410547394
【公開日】2014年12月24日 申請日期:2014年10月16日 優(yōu)先權(quán)日:2014年10月16日
【發(fā)明者】王春枝, 葉志偉, 陳宏偉, 宗欣露, 劉偉, 徐慧, 張會麗, 喻東陽, 陳秋霞, 周正 申請人:湖北工業(yè)大學(xué)