一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法
【專利摘要】本發(fā)明涉及一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,包括以下步驟:(1)選取特征向量:采用如下三維特征向量:Vector=<v1,v2,v3>;其中,V1代表數(shù)據(jù)包大小變化的均方差值,V2代表節(jié)點處上下行速度的比值,V3代表IP地址數(shù)量和端口數(shù)量的比值;(2)選擇適當?shù)暮撕瘮?shù);(3)選擇增量訓(xùn)練算法;(4)小波SVM的P2P流量識別的Boosting算法,最終通過采用有權(quán)重的投票的方式得到一個強分類器H(x),用于P2P流量的識別。本發(fā)明可以高效的對P2P網(wǎng)絡(luò)流量進行識別,及時采取對策,對P2P網(wǎng)絡(luò)流量進行有效的控制。
【專利說明】一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,屬于計算機對等網(wǎng)絡(luò)【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]對等網(wǎng)絡(luò)技術(shù)(Peer to Peer Computing,簡稱為P2P),正在以飛快的速度發(fā)展,P2P技術(shù)是作為一種全新的網(wǎng)絡(luò)通信模式,現(xiàn)在已經(jīng)被列為影響未來Internet發(fā)展的科技技術(shù)之一,與網(wǎng)格計算技術(shù)(Grid Computing)、云計算技術(shù)(Cloud Computing)并列成為分布式計算【技術(shù)領(lǐng)域】的相關(guān)研究重點,越來越受到研究者的重視。目前,針對P2P技術(shù)還沒有確切的定義,但是它的思想改變了人們對于互聯(lián)網(wǎng)的理解和認識。P2P網(wǎng)絡(luò)與傳統(tǒng)網(wǎng)絡(luò)最大的區(qū)別是,它允許兩個用戶之間進行互相鏈接,彼此進行文件傳輸和共享,改變了傳統(tǒng)網(wǎng)絡(luò)中,服務(wù)器/客戶機的傳輸模式,資源的需求者同時也是資源的提供者,同一個資源的需求者越多,其下載速度就越快,從而明顯提高了數(shù)據(jù)傳輸?shù)乃俣群托省?br>
[0003]P2P技術(shù)的迅速發(fā)展,也帶來了很多問題,體現(xiàn)在以下幾個方面:(1)占據(jù)大量的網(wǎng)絡(luò)帶寬:分享視頻和高清視頻等P2P應(yīng)用占據(jù)了大量的網(wǎng)絡(luò)帶寬,消耗過多的網(wǎng)絡(luò)資源,引起網(wǎng)絡(luò)的擁塞,其他正常的網(wǎng)絡(luò)業(yè)務(wù)不能開展,影響到了非P2P應(yīng)用的用戶的權(quán)利,損害了 ISP的利益。(2)網(wǎng)絡(luò)安全防護問題:P2P應(yīng)用普及的同時,也使得大量的病毒、木馬程序、不健康的內(nèi)容信息乘虛而入,在互聯(lián)網(wǎng)上快速的進行傳播,給黑客和不法分子以可乘之機,危害到用戶的利益安全。(3)P2P文件共享的版權(quán)問題:據(jù)統(tǒng)計,P2P下載超過80%內(nèi)容涉嫌盜版侵權(quán),損害了原創(chuàng)作者的利益,隨著3G網(wǎng)絡(luò)的普及,2009年國家廣電總局針對P2P下載站的色情內(nèi)容、盜版等問題加大了重點打擊的力度。
[0004]因此,網(wǎng)絡(luò)的安全性、可管理性及傳統(tǒng)應(yīng)用的可用性等都受到了挑戰(zhàn),加強網(wǎng)絡(luò)流量監(jiān)控,這就非常有必要對P2P流量和網(wǎng)絡(luò)行為進行深入的了解和分析,為管理與監(jiān)控P2P網(wǎng)絡(luò)提供技術(shù)支持。P2P的流量與傳統(tǒng)的WEB流量不同,它具有難以管理、控制的特點:(1)沒有固定的網(wǎng)絡(luò)協(xié)議標準:P2P應(yīng)用使用的是其專有協(xié)議,普通的防火墻技術(shù)不能對P2P流量進行完全過濾;(2)使用了動態(tài)端口:為了躲避使用固定端口檢測P2P流量,采用了動態(tài)端口,典型應(yīng)用有PPlive,Skype可以由用戶改變原來的默認端口,端口的設(shè)置更加靈活,為正確識別P2P流量加大了難度;(3)偽裝為正常流量=Kazza等P2P應(yīng)用在進行流量傳輸時,其報文格式偽裝成HTTP流量,更加不易于識別。(4)使用流量加密技術(shù)=Skype等使用了報文加密技術(shù),使得根據(jù)應(yīng)用層特征匹配的方法不能識別出經(jīng)過加密的P2P流量。
[0005]所以,要實現(xiàn)對P2P流量的管理,首先要解決的問題是實現(xiàn)對P2P流量的識別。深入研究P2P網(wǎng)絡(luò)流量的特征,選取適當?shù)淖R別模型,進而高效的對P2P網(wǎng)絡(luò)流量進行識別,及時的采取對策,對P2P網(wǎng)絡(luò)流量進行有效的控制具有非常重要的理論意義和現(xiàn)實價值。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于提供一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,以便通過小樣本提供有限信息的情況下,來尋找分類結(jié)果的最優(yōu)解,從而回避了很多機器學(xué)習的方法需要大樣本數(shù)據(jù)集的缺點和使用非線性的方法需要針對具體的問題來建立相應(yīng)的模型的缺點,進而高效的對P2P網(wǎng)絡(luò)流量進行識別,及時的采取對策,對P2P網(wǎng)絡(luò)流量進行有效的控制。
[0007]為了實現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下。
[0008]一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,包括以下步驟:
[0009]1、選取特征向量:
[0010]選取合適的特征向量,是對P2P網(wǎng)絡(luò)流量進行識別的重要方面,對P2P網(wǎng)絡(luò)流量進行特征選擇的時候,遵循有兩個原則:(I)具有不同功能和提供不同服務(wù)的節(jié)點流量呈現(xiàn)出有差異的行為特征,所以盡可能的選擇節(jié)點流量的行為特征。(2)特征的選取要能夠反映出P2P流量和非P2P流量的區(qū)別從而起到縮短訓(xùn)練時間,提高識別的精確度的目的。當有足夠多的特征向量,可以為分類器提供更精確的識別率,但是提供過多的特征會使訓(xùn)練的時間更長,計算復(fù)雜度加大。
[0011]基于以上原因,本發(fā)明中通過數(shù)據(jù)包、網(wǎng)絡(luò)流、節(jié)點連接三個層面進行特征向量的分析:
[0012](I)數(shù)據(jù)包層面的特征:包括包的平均長度,包的最大長度,包的最小長度,以及方差等統(tǒng)計特征。
[0013](2)網(wǎng)絡(luò)流層面的特征:通過對流原始的統(tǒng)計特征,如開始時間,結(jié)束時間,服務(wù)類型等得到流相關(guān)的統(tǒng)計特征:平均流持續(xù)的時間,平均傳輸速率,流的平均字節(jié)數(shù),包到達的時間間隔以及方差等。
[0014](3)節(jié)點連接層面的特征:通過TCP的連接狀態(tài),對節(jié)點連接的相關(guān)特征進行統(tǒng)計,包括連接呈現(xiàn)出的對稱性以及IP地址,端口特性等。
[0015]本發(fā)明中采用如下三維特征向量:
[0016]Vector = <vl, v2, v3> ;
[0017]其中,Vl代表數(shù)據(jù)包大小變化的均方差值,V2代表節(jié)點處上下行速度的比值,V3代表IP地址數(shù)量和端口數(shù)量的比值。在對網(wǎng)絡(luò)流量進行識別時,將三維特征向量作為輸入向量,然后就可以使用SVM模型生成的決策函數(shù)對其樣本P2P樣本數(shù)據(jù)進行有效的識別。
[0018]2、選擇適當?shù)暮撕瘮?shù):
[0019]P2P網(wǎng)絡(luò)流量呈現(xiàn)出突發(fā)性,不確定的非線性流量特征,小波分析適合于信號的局部分析和突變信號的檢測,結(jié)合小波分析引入多尺度的小波基函數(shù)來構(gòu)造SVM的核函數(shù),建立小波SVM的識別算法,能充分提高SVM的識別精度。引入小波基函數(shù)來構(gòu)造SVM的核函數(shù),并且用于P2P網(wǎng)絡(luò)的流量識別,需要滿足兩個條件:(I)符合SVM核函數(shù)的構(gòu)造的條件。
(2)選擇的小波基函數(shù)的計算復(fù)雜度不能太高,過多的參數(shù)設(shè)置會加大樣本的訓(xùn)練時間。
[0020]3、選擇增量訓(xùn)練算法:
[0021]SVM增量訓(xùn)練算法的思想就是其決策函數(shù)是由支持向量決定的,將訓(xùn)練集中的支持向量全部保留下來,舍棄非支持向量,最終增量訓(xùn)練的結(jié)果是和未使用增量學(xué)習的結(jié)果是一致的。
[0022]增量訓(xùn)練算法如下:
[0023]步驟1:在初始的訓(xùn)練集上經(jīng)過訓(xùn)練得到SVM的初始分類器f (X),SVs1表示f (X)的支持向量集;
[0024]步驟2:將SVs1與新增樣本集合并為新的訓(xùn)練集,經(jīng)過訓(xùn)練后,將得到新的分類器
[0025]f’(X),新的支持向量集SVs2 ;
[0026]步驟3:使得SVs1=SVs2,返回步驟2。
[0027]在增量訓(xùn)練算法中,由于算法中每次的增量學(xué)習僅保留了支持向量,舍棄了非支持向量,但實際情況中,非支持向量中也包含了數(shù)據(jù)集中分類的有用信息,會影響到識別的精確度。
[0028]4、小波SVM的P2P流量識別的Boosting算法:
[0029]Boosting算法是集成學(xué)習中專門處理錯分樣本的一種迭代算法,其核心思想是針對同一個訓(xùn)練集訓(xùn)練不同的分類器(弱分類器),然后把這些弱分類器集合起來,構(gòu)成一個更強的最終分類器(強分類器)。其算法本身是通過改變數(shù)據(jù)分布來實現(xiàn)的,它根據(jù)每次訓(xùn)練集之中每個樣本的分類是否正確,以及上次的總體分類的準確率,來確定每個樣本的權(quán)值。將修改過權(quán)值的新數(shù)據(jù)集送給下層分類器進行訓(xùn)練,最后將每次訓(xùn)練得到的分類器融合起來,作為最后的決策分類器。這樣可以將分類器處理的關(guān)鍵放在錯分的樣本這些關(guān)鍵的訓(xùn)練數(shù)據(jù)上面,從而提高樣本的識別精確率。
[0030]小波SVM的Boosting算法就是將小波SVM作為基分類器對樣本進行訓(xùn)練,首先從整個P2P和非P2P樣本集S中根據(jù)權(quán)重大小選擇M個樣本構(gòu)成一個訓(xùn)練子集Sp經(jīng)過訓(xùn)練后得出一個基分類器WSVMj,然后用WSVMj測試樣本集S,可以得出WSVMj的分類精確度;然后對錯分的樣本給予較高的權(quán)重;最后依據(jù)調(diào)整后的權(quán)重大小再次從S中選擇M個樣本構(gòu)成新的訓(xùn)練子集Sj+1,若Sj+1=S則退出,否則重復(fù)上面的步驟。經(jīng)過訓(xùn)練t輪后,(t<T,T是迭代的次數(shù)),得到一個基于WSVM的識別函數(shù)序列WSVM1,...,WSVMj,同時WSVMj也賦予權(quán)值,也就是對樣本集S識別的準確率;最終通過采用有權(quán)重的投票的方式得到一個強分類器H (X),用于P2P流量的識別。
[0031]具體算法描述如下:
[0032](I)輸入?;诸惼鱓SVM屮2?和非?2?流量訓(xùn)練樣本集5={0^,71),...,(xn,yn)},其中Xi e Rd,y e {-1,1},I≤i≤η ;訓(xùn)練的迭代次數(shù)T ;樣本初始權(quán)重Di=O (I ^ i ^ η);
[0033](2)for(j=l ; j ( T ;j++)
[0034]{
[0035]I)根據(jù)權(quán)重的大小依次從訓(xùn)練樣本集S中選取M個樣本,得到訓(xùn)練樣本子集Sj ;
[0036]2)如果Sj=Sj-JjM)則退出循環(huán);
[0037]3)用WSVM算法訓(xùn)練S」,得到一個基分類器WSVMj ;
[0038]4)用WSVMj分類樣本集S,得到錯誤率為e」;
[0039]5) WSVMj 的權(quán)重記為 a j = l-ej ;
[0040]6)調(diào)整支持向量和樣本集S中的錯分的樣本權(quán)重為Di=D1+j ;
[0041]}
[0042](3)輸出。決策函數(shù)序列 Ii=IffSVM1,…,WSVMt},其權(quán)重 a = { a ^...,a t},t ≤T,最終的決策函數(shù)是:
[0043]SignC^d aMx))[0044]該發(fā)明的有益效果在于:本發(fā)明的通過提供一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,在通過小樣本提供有限信息的情況下,來尋找分類結(jié)果的最優(yōu)解,從而回避了很多機器學(xué)習的方法需要大樣本數(shù)據(jù)集的缺點和使用非線性的方法需要針對具體的問題來建立相應(yīng)的模型的缺點,進而高效的對P2P網(wǎng)絡(luò)流量進行識別,及時的采取對策,對P2P網(wǎng)絡(luò)流量進行有效的控制。
【專利附圖】
【附圖說明】
[0045]圖1是本發(fā)明實施例中P2P應(yīng)用連接實施模式圖。
[0046]圖2是本發(fā)明實施例中P2P應(yīng)用連接實施模式圖。
[0047]圖3是本發(fā)明實施例中小波SVM的Boosting算法流程圖。
【具體實施方式】
[0048]下面結(jié)合附圖對本發(fā)明的【具體實施方式】進行描述,以便更好的理解本發(fā)明。
[0049]實施例
[0050]一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,包括:
[0051]1、選取特征向量:
[0052]選取合適的特征向量,是對P2P網(wǎng)絡(luò)流量進行識別的重要方面,對P2P網(wǎng)絡(luò)流量進行特征選擇的時候,遵循有兩個原則:(I)具有不同功能和提供不同服務(wù)的節(jié)點流量呈現(xiàn)出有差異的行為特征,所以盡可能的選擇節(jié)點流量的行為特征。(2)特征的選取要能夠反映出P2P流量和非P2P流量的區(qū)別從而起到縮短訓(xùn)練時間,提高識別的精確度的目的。當有足夠多的特征向量,可以為分類器提供更精確的識別率,但是提供過多的特征會使訓(xùn)練的時間更長,計算復(fù)雜度加大,據(jù)統(tǒng)計,如果在基于機器學(xué)習的算法中進行全部流特征屬性的選擇,進行網(wǎng)絡(luò)流量的識別,其準確率僅比進行特征屬性選擇出的準確率高2%,但是算法的執(zhí)行效率要高出很多。所以對特征屬性的選擇在保證分類器性能的同時,盡可能的選擇好特征向量是P2P流量識別的重要一步。
[0053]基于以上原因,本發(fā)明中通過數(shù)據(jù)包、網(wǎng)絡(luò)流、節(jié)點連接三個層面進行特征向量的分析:
[0054](I)數(shù)據(jù)包層面的特征:包括包的平均長度,包的最大長度,包的最小長度,以及方差等統(tǒng)計特征。
[0055](2)網(wǎng)絡(luò)流層面的特征:通過對流原始的統(tǒng)計特征,如開始時間,結(jié)束時間,服務(wù)類型等得到流相關(guān)的統(tǒng)計特征:平均流持續(xù)的時間,平均傳輸速率,流的平均字節(jié)數(shù),包到達的時間間隔以及方差等。
[0056](3)節(jié)點連接層面的特征:通過TCP的連接狀態(tài),對節(jié)點連接的相關(guān)特征進行統(tǒng)計,包括連接呈現(xiàn)出的對稱性以及IP地址,端口特性等。
[0057]實際網(wǎng)絡(luò)中不同的節(jié)點有著不同的功能,有的節(jié)點起著服務(wù)器的功能,向網(wǎng)絡(luò)其他節(jié)點提供資源傳輸服務(wù),有的節(jié)點起著客戶端的功能,接收服務(wù)器提供的各項服務(wù)。而P2P網(wǎng)絡(luò)中的節(jié)點既可以作為服務(wù)器向其他對等節(jié)點提供服務(wù),又可以作為客戶端接收其他對等節(jié)點提供的服務(wù)。因此,具有不同的功能和提供不同服務(wù)的節(jié)點流量呈現(xiàn)出有差異的行為特征,下面分別對這些行為特征進行分析。[0058]圖1是P2P應(yīng)用連接模式圖,在P2P網(wǎng)絡(luò)中,對等節(jié)點的連接方式和在傳統(tǒng)的服務(wù)器/客戶端模式下的連接方式不同,P2P網(wǎng)絡(luò)中的任何一個節(jié)點充當著雙重的角色,稱為對等節(jié)點。P2P應(yīng)用使用的連接在1024-65535之間的隨機端口進行數(shù)據(jù)傳輸,在TCP協(xié)議下,進行連接時,一個源端節(jié)點和多個對端節(jié)點連接。相對于源端節(jié)點,對端節(jié)點的IP地址數(shù)量較多,對端節(jié)點的端口是隨機端口,于是對端節(jié)點的IP地址數(shù)量和端口數(shù)量的比值接近
I。這點和傳統(tǒng)連接模式下的應(yīng)用不同,從而作為P2P流量的識別特征。
[0059]經(jīng)過從上面的數(shù)據(jù)包,網(wǎng)絡(luò)流,節(jié)點連接三個方面進行的行為特征分析,采取的特征向量都能夠體現(xiàn)出P2P網(wǎng)絡(luò)和傳統(tǒng)網(wǎng)絡(luò)中流量的差異,也是P2P流量在真實網(wǎng)絡(luò)中的特征體現(xiàn),達到識別的要求。通過這三個方面的特征,本發(fā)明中采用如下三維特征向量:
[0060]Vector=<vl, v2, v3> ;
[0061]其中,Vl代表數(shù)據(jù)包大小變化的均方差值,V2代表節(jié)點處上下行速度的比值,V3代表IP地址數(shù)量和端口數(shù)量的比值。在對網(wǎng)絡(luò)流量進行識別時,將三維特征向量作為輸入向量,然后就可以使用SVM模型生成的決策函數(shù)對其樣本P2P樣本數(shù)據(jù)進行有效的識別。
[0062]2、選擇適當?shù)暮撕瘮?shù):
[0063]SVM利用了核函數(shù)的方法,保證較好泛化能力的同時,解決了訓(xùn)練樣本特征空間的維數(shù)問題,通過選取不同的核函數(shù),來處理非線性的問題,目前針對P2P網(wǎng)絡(luò)流量的識別普遍采用了徑向基(RBF)核函數(shù),因為RBF核相比其它核函數(shù)具有較少的參數(shù),計算難度較小,能夠使用于所有分布的樣本。P2P網(wǎng)絡(luò)流量呈現(xiàn)出突發(fā)性,不確定的非線性流量特征,小波分析適合于信號的局部分析和突變信號的檢測,結(jié)合小波分析引入多尺度的小波基函數(shù)來構(gòu)造SVM的核函數(shù),建立小波SVM的識別算法,能充分提高SVM的識別精度。引入小波基函數(shù)來構(gòu)造SVM的核函數(shù),并且用于P2P網(wǎng)絡(luò)的流量識別,需要滿足兩個條件:(I)符合SVM核函數(shù)的構(gòu)造的條件。(2)選擇的小波基函數(shù)的計算復(fù)雜度不能太高,過多的參數(shù)設(shè)置會加大樣本的訓(xùn)練時間。如圖2所示。
[0064]3、選擇增量訓(xùn)練算法:
[0065]傳統(tǒng)的SVM,完成訓(xùn)練和分類的過程是一次完成的,而且在訓(xùn)練的時候需要求解二次規(guī)劃,當訓(xùn)練的樣本集比較大的時候,就需要占用較大的內(nèi)存,而且收斂速度較慢,隨著不斷變化的網(wǎng)絡(luò)數(shù)據(jù)信息,其數(shù)據(jù)集也呈現(xiàn)出了不平衡性和多樣性的特點,因此現(xiàn)有的單一的分類器和增量算法訓(xùn)練出來的分類器識別精確度不是很理想。其實影響識別精確度的主要因素是大量錯分樣本的存在,集成學(xué)習中的Boosting算法是專門針對錯分樣本的一種分類方法。本發(fā)明提出一種基于小波SVM的Boosting算法應(yīng)用于P2P流量識別,通過在學(xué)習過程中重點訓(xùn)練錯分的樣本,來提高學(xué)習機的泛化能力,進而提高識別的精確率。
[0066]在SVM中,支持向量可以描述整個樣本數(shù)據(jù)集的特性,對于確定好核函數(shù)的SVM,最優(yōu)分類面只與其支持向量有關(guān)系,對整個樣本數(shù)據(jù)集的分類能夠相當于對支持向量的分類。也就是說去除樣本訓(xùn)練集中支持向量以外的其他向量,重新進行訓(xùn)練,則訓(xùn)練的結(jié)果和在整個樣本訓(xùn)練集中得到的結(jié)果是一致的。SVM增量訓(xùn)練算法的思想就是其決策函數(shù)是由支持向量決定的,將訓(xùn)練集中的支持向量全部保留下來,舍棄非支持向量,最終增量訓(xùn)練的結(jié)果是和未使用增量學(xué)習的結(jié)果是一致的。
[0067]增量訓(xùn)練算法如下:
[0068]步驟1:在初始的訓(xùn)練集上經(jīng)過訓(xùn)練得到SVM的初始分類器f (X),SVs1表示f (x)的支持向量集;
[0069]步驟2:將SVs1與新增樣本集合并為新的訓(xùn)練集,經(jīng)過訓(xùn)練后,將得到新的分類器f’(X),新的支持向量集SVs2 ;
[0070]步驟3:使得SVs1=SVs2,返回步驟2。
[0071]在增量訓(xùn)練算法中,由于算法中每次的增量學(xué)習僅保留了支持向量,舍棄了非支持向量,但實際情況中,非支持向量中也包含了數(shù)據(jù)集中分類的有用信息,會影響到識別的精確度。
[0072]4、小波SVM的P2P流量識別的Boosting算法:
[0073]Boosting算法是集成學(xué)習中專門處理錯分樣本的一種迭代算法,其核心思想是針對同一個訓(xùn)練集訓(xùn)練不同的分類器(弱分類器),然后把這些弱分類器集合起來,構(gòu)成一個更強的最終分類器(強分類器)。其算法本身是通過改變數(shù)據(jù)分布來實現(xiàn)的,它根據(jù)每次訓(xùn)練集之中每個樣本的分類是否正確,以及上次的總體分類的準確率,來確定每個樣本的權(quán)值。將修改過權(quán)值的新數(shù)據(jù)集送給下層分類器進行訓(xùn)練,最后將每次訓(xùn)練得到的分類器融合起來,作為最后的決策分類器。這樣可以將分類器處理的關(guān)鍵放在錯分的樣本這些關(guān)鍵的訓(xùn)練數(shù)據(jù)上面,從而提高樣本的識別精確率。
[0074]圖3是本發(fā)明實施例中小波SVM的Boosting算法流程圖,就是將小波SVM作為基分類器對樣本進行訓(xùn)練,首先從整個P2P和非P2P樣本集S中根據(jù)權(quán)重大小選擇M個樣本構(gòu)成一個訓(xùn)練子集Sj,經(jīng)過訓(xùn)練后得出一個基分類器WSVMj,然后用WSVMj測試樣本集S,可以得出WSVMj的分類精確度;然后對錯分的樣本給予較高的權(quán)重;最后依據(jù)調(diào)整后的權(quán)重大小再次從S中選擇M個樣本構(gòu)成新的訓(xùn)練子集Sp1,若Sp1=S則退出,否則重復(fù)上面的步驟。經(jīng)過訓(xùn)練t輪后,(t≤T,T是迭代的次數(shù)),得到一個基于WSVM的識別函數(shù)序列WSVM1,...,WSVMj,同時WSVMj也賦予權(quán)值,也就是對樣本集S識別的準確率;最終通過采用有權(quán)重的投票的方式得到一個強分類器H(X),用于P2P流量的識別。
[0075]具體算法描述如下:
[0076](I)輸入?;诸惼鱓SVM屮2?和非?2?流量訓(xùn)練樣本集5={0^,71),...,(xn,yn)},其中Xi e Rd,y e {-1,1},I≤i≤η ;訓(xùn)練的迭代次數(shù)T ;樣本初始權(quán)重Di=O (I ^ i ^ η);
[0077](2)for(j=l ; j ( T ;j++)
[0078]{
[0079]I)根據(jù)權(quán)重的大小依次從訓(xùn)練樣本集S中選取M個樣本,得到訓(xùn)練樣本子集Sj ;
[0080]2)如果Sj=Sj-JjM)則退出循環(huán);
[0081 ] 3)用WSVM算法訓(xùn)練S」,得到一個基分類器WSVMj ;
[0082]4)用WSVMj分類樣本集S,得到錯誤率為ej ;
[0083]5) WSVMj 的權(quán)重記為 a j = l-ej ;
[0084]6)調(diào)整支持向量和樣本集S中的錯分的樣本權(quán)重為Di=Dw ;
[0085]}
[0086](3)輸出。決策函數(shù)序列 Ii=IffSVM1,…,WSVMt},其權(quán)重 a = (Q1,..., a J ,
t<T,最終的決策函數(shù)是:
【權(quán)利要求】
1.一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,其特征在于:包括以下步驟: (1)選取特征向量:遵循有兩個原則:(a)具有不同功能和提供不同服務(wù)的節(jié)點流量呈現(xiàn)出有差異的行為特征,所以盡可能的選擇節(jié)點流量的行為特征;(b)特征的選取要能夠反映出P2P流量和非P2P流量的區(qū)別從而起到縮短訓(xùn)練時間,提高識別的精確度的目的;選擇數(shù)據(jù)包、網(wǎng)絡(luò)流、節(jié)點連接三個層面作為特征向量;所述數(shù)據(jù)包層面的特征:包括包的平均長度,包的最大長度,包的最小長度,以及方差等統(tǒng)計特征;所述網(wǎng)絡(luò)流層面的特征:通過對流原始的統(tǒng)計特征,如開始時間,結(jié)束時間,服務(wù)類型等得到流相關(guān)的統(tǒng)計特征:平均流持續(xù)的時間,平均傳輸速率,流的平均字節(jié)數(shù),包到達的時間間隔以及方差等;所述節(jié)點連接層面的特征:通過TCP的連接狀態(tài),對節(jié)點連接的相關(guān)特征進行統(tǒng)計,包括連接呈現(xiàn)出的對稱性以及IP地址,端口特性等;采用如下三維特征向量:Vector=〈vl,v2,v3> ;其中,Vl代表數(shù)據(jù)包大小變化的均方差值,V2代表節(jié)點處上下行速度的比值,V3代表1P地址數(shù)量和端口數(shù)量的比值;在對網(wǎng)絡(luò)流量進行識別時,將三維特征向量作為輸入向量; (2)選擇核函數(shù):引入小波基函數(shù)來構(gòu)造SVM的核函數(shù),并且用于P2P網(wǎng)絡(luò)的流量識另O,需要滿足兩個條件:(a)符合SVM核函數(shù)的構(gòu)造的條件;(2)選擇的小波基函數(shù)的計算復(fù)雜度不能太高,過多的參數(shù)設(shè)置會加大樣本的訓(xùn)練時間; (3)選擇增量訓(xùn)練算法:SVM增量訓(xùn)練算法的思想就是其決策函數(shù)是由支持向量決定的,將訓(xùn)練集中的支持向量全部保留下來,舍棄非支持向量,最終增量訓(xùn)練的結(jié)果是和未使用增量學(xué)習的結(jié)果是一致的; (4)小波SVM的P2P流量識別的Boosting算法:小波SVM作為基分類器對樣本進行訓(xùn)練,首先從整個P2P和非P2P樣本集S中根據(jù)權(quán)重大小選擇M個樣本構(gòu)成一個訓(xùn)練子集Sj,經(jīng)過訓(xùn)練后得出一個基分類器WSVMj,然后用WSVMj測試樣本集S,可以得出WSVMj的分類精確度;然后對錯分的樣本給予較高的權(quán)重;最后依據(jù)調(diào)整后的權(quán)重大小再次從S中選擇M個樣本構(gòu)成新的訓(xùn)練子集Sj+1,若Sj+1=S則退出,否則重復(fù)上面的步驟;經(jīng)過訓(xùn)練t輪后,(t≤T,T是迭代的次數(shù)),得到一個基于WSVM的識別函數(shù)序列WSVM1, , WSVMj,同時WSVMj也賦予權(quán)值,也就是對樣本集S識別的準確率;最終通過采用有權(quán)重的投票的方式得到一個強分類器H(X),用于P2P流量的識別。
2.根據(jù)權(quán)利要求1所述的一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,其特征在于:所述步驟(3)中的增量訓(xùn)練算法步驟如下: 步驟1:在初始的訓(xùn)練集上經(jīng)過訓(xùn)練得到SVM的初始分類器f (X),SVs1表示f(X)的支持向量集; 步驟2:將SVs1與新增樣本集合并為新的訓(xùn)練集,經(jīng)過訓(xùn)練后,將得到新的分類器f’(X),新的支持向量集SVs2 ; 步驟3:使得SVs1=SVs2,返回步驟2。
3.根據(jù)權(quán)利要求1所述的一種不可分小波支持向量機的對等網(wǎng)絡(luò)流量識別方法,其特征在于:所述步驟(4)中的小波SVM的P2P流量識別的Boosting算法描述如下: (1)輸入:基分類器WSVM;P2P和非P2P流量訓(xùn)練樣本集S= {(Xl,yi),...,(xn, yn)},其中Xi∈ Rd,y ∈{-1,1},I≤i≤η ;訓(xùn)練的迭代次數(shù)T ;樣本初始權(quán)重Di=O (I≤i≤η);
(2)for(j=l;j ( T ; j++){ 1)根據(jù)權(quán)重的大小依次從訓(xùn)練樣本集S中選取M個樣本,得到訓(xùn)練樣本子集Sj; 2)如果Sj=Sp1UM)則退出循環(huán); 3)用WSVM算法訓(xùn)練S」,得到一個基分類器WSVMj; 4)用WSVMj分類樣本集S,得到錯誤率為ej; 5)WSVMj的權(quán)重記為a」=l-ej ; 6)調(diào)整支持向量和樣本集S中的錯分的樣本權(quán)重為Di=Dw;
} (3)輸出:決策函數(shù)序列h= IffSVM1,...,WSVMt},其權(quán)重α={αι,...,at},t≤Τ,最終的決策函數(shù)是:
【文檔編號】H04L12/801GK103780501SQ201410017016
【公開日】2014年5月7日 申請日期:2014年1月3日 優(yōu)先權(quán)日:2014年1月3日
【發(fā)明者】汪緒彪, 王文彬, 王宏昕, 孫媛, 伍又云, 任艷梅 申請人:濮陽職業(yè)技術(shù)學(xué)院, 汪緒彪, 王文彬, 王宏昕, 孫媛, 伍又云, 任艷梅