王瑋
(陜西藝術(shù)職業(yè)學(xué)院 基礎(chǔ)教學(xué)部, 陜西 西安710054)
對(duì)等(Peer To Peer)網(wǎng)絡(luò)P2P打破了傳統(tǒng)客戶端/服務(wù)器的模式,是新一代網(wǎng)絡(luò)技術(shù),相對(duì)于其它網(wǎng)絡(luò),P2P網(wǎng)絡(luò)的速度更快,因此成為當(dāng)前應(yīng)用范圍最為廣泛的網(wǎng)絡(luò)[1]。在P2P網(wǎng)絡(luò)的實(shí)際應(yīng)用中存在許多問(wèn)題,具體為:瘋狂搶占帶寬,擁塞概率大;存在大量的不良信息;網(wǎng)絡(luò)入侵和網(wǎng)絡(luò)病毒引起的安全問(wèn)題等。為了保證P2P網(wǎng)絡(luò)安全,提高P2P網(wǎng)絡(luò)的性能和穩(wěn)定性,需要對(duì)P2P網(wǎng)絡(luò)的流量進(jìn)行監(jiān)控,P2P網(wǎng)絡(luò)流量識(shí)別是網(wǎng)絡(luò)管理的基礎(chǔ),高精度的P2P網(wǎng)絡(luò)流量識(shí)別方法構(gòu)建是當(dāng)前研究的熱點(diǎn)問(wèn)題[2-3]。
為了獲得理想的P2P網(wǎng)絡(luò)流量識(shí)別效果,提出基于神經(jīng)網(wǎng)絡(luò)的P2P網(wǎng)絡(luò)流量識(shí)別方法,并與經(jīng)典P2P網(wǎng)絡(luò)流量識(shí)別方法在相同平臺(tái)進(jìn)行仿真對(duì)比實(shí)驗(yàn),結(jié)果表明,本文方法可以描述P2P網(wǎng)絡(luò)流量的變化特點(diǎn),P2P網(wǎng)絡(luò)流量識(shí)別精度更高,具有十分明顯的優(yōu)越性。
近些年來(lái),國(guó)內(nèi)外對(duì)P2P網(wǎng)絡(luò)流量識(shí)別進(jìn)行深入研究,當(dāng)前P2P網(wǎng)絡(luò)流量識(shí)別技術(shù)主要?jiǎng)澐譃?類:基于端口號(hào)的P2P網(wǎng)絡(luò)流量識(shí)別技術(shù);基于報(bào)文檢測(cè)的P2P網(wǎng)絡(luò)流量識(shí)別技術(shù);基于特征的P2P網(wǎng)絡(luò)流量識(shí)別技術(shù)[4]。最初,由于P2P網(wǎng)絡(luò)的端口比較少,而且固定,但是一些應(yīng)用程序?yàn)榱朔乐苟丝跈z測(cè),其端口號(hào)采用動(dòng)態(tài)方式進(jìn)行分析,這樣基于端口號(hào)的P2P網(wǎng)絡(luò)流量識(shí)別結(jié)果就更為可靠;為了解決動(dòng)態(tài)端口問(wèn)題,出現(xiàn)了基于報(bào)文檢測(cè)的識(shí)別技術(shù),具體為基于數(shù)據(jù)包的動(dòng)態(tài)端口P2P網(wǎng)絡(luò)流量識(shí)別方法,但是該方法會(huì)涉及用戶的隱私問(wèn)題,無(wú)法廣泛使用[5-7];基于特征的P2P網(wǎng)絡(luò)流量識(shí)別技術(shù)主要通過(guò)流量的上下行比例、數(shù)據(jù)包大小分布等進(jìn)行,然后結(jié)合機(jī)器學(xué)習(xí)算法,如支持向量機(jī)、貝葉斯算法或決策樹(shù)等[8-10],通過(guò)訓(xùn)練構(gòu)建P2P網(wǎng)絡(luò)流量識(shí)別模型,但是在實(shí)際應(yīng)用中這些機(jī)器學(xué)習(xí)算法均存在一定的不足,如支持向量機(jī)的訓(xùn)練過(guò)程復(fù)雜,P2P網(wǎng)絡(luò)流量識(shí)別時(shí)間長(zhǎng);貝葉斯算法、決策樹(shù)的P2P網(wǎng)絡(luò)流量識(shí)別精度低[11-13]。
傳統(tǒng)網(wǎng)絡(luò)通常采用客戶端/服務(wù)器的工作模式,其中服務(wù)器是整個(gè)網(wǎng)絡(luò)的中心,客戶端將任務(wù)發(fā)送給服務(wù)器,服務(wù)器對(duì)任務(wù)進(jìn)行處理,因此服務(wù)器完成了大部分運(yùn)行,其負(fù)擔(dān)相當(dāng)重,工作效率難以提升,而P2P網(wǎng)絡(luò)弱化了服務(wù)器,每一個(gè)節(jié)點(diǎn)的地位是相同的,處于一種對(duì)等狀態(tài),每個(gè)節(jié)點(diǎn)既是參與的使用者,也是任務(wù)的提供者,節(jié)點(diǎn)可以自由的加入或離開(kāi),不僅可擴(kuò)展性強(qiáng),而且具有較強(qiáng)的魯健性。P2P網(wǎng)絡(luò)的模式,如圖1所示。
圖1 P2P網(wǎng)絡(luò)的模式
選擇最優(yōu)P2P網(wǎng)絡(luò)特征向量是建立性能優(yōu)異的P2P網(wǎng)絡(luò)流量識(shí)別方法的一個(gè)重要方面,因?yàn)樘卣魈?,那么使得P2P網(wǎng)絡(luò)流量識(shí)別模型的輸入向量數(shù)量大,P2P網(wǎng)絡(luò)流量識(shí)別效率低,同時(shí)一些特征向量之間有信息重復(fù),使得它們之間相互干擾,對(duì)P2P網(wǎng)絡(luò)流量識(shí)別精度產(chǎn)生不利影響,本文基于特征差異性明顯、能夠識(shí)別出P2P網(wǎng)絡(luò)流量和非P2P網(wǎng)絡(luò)流量原則,選擇的P2P網(wǎng)絡(luò)流量識(shí)別特征,如表1所示。
表1 P2P網(wǎng)絡(luò)流量識(shí)別特征
徑向基神經(jīng)網(wǎng)絡(luò)是一種最常用的人工神經(jīng)網(wǎng)絡(luò),通常為3層結(jié)構(gòu),具體為:輸入層、隱含層和輸出層,每一層根據(jù)實(shí)際的問(wèn)題具有不同數(shù)量的節(jié)點(diǎn),設(shè)它們的節(jié)點(diǎn)數(shù)分別為:n、p和m個(gè),那么徑向基神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如圖2所示。
圖2 徑向基神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)
徑向基神經(jīng)網(wǎng)絡(luò)的基本工作步驟如下。
Step1:對(duì)于輸入向量Xl=[X1l,X2l,…,Xnl]T,通過(guò)徑向基函數(shù)φ(·)變換到隱含層,可以得到隱含層第i個(gè)節(jié)點(diǎn)的單元輸出,如式(1)。
(1)
徑向基函數(shù)φ(·)通常采用高斯函數(shù),那么式(1)變化為式(2)。
(2)
式中,σ表示聚類中心的寬度。
Step2:將隱含層的輸出作為輸出層的輸入,通過(guò)連接權(quán)值wik得到輸出層的第k個(gè)節(jié)點(diǎn)的輸出,如式(3)。
(3)
Step1:分析P2P網(wǎng)絡(luò)的結(jié)構(gòu),提取P2P網(wǎng)絡(luò)流量識(shí)別特征。
Step2:采集P2P網(wǎng)絡(luò)流量識(shí)別特征值,并對(duì)特征進(jìn)行歸一化處理,如式(4)。
(4)
Step3:采集P2P網(wǎng)絡(luò)流量數(shù)據(jù),并對(duì)P2P網(wǎng)絡(luò)流量和非P2P網(wǎng)絡(luò)流量進(jìn)行標(biāo)記。
Step4:根據(jù)特征和標(biāo)記的P2P網(wǎng)絡(luò)流量和非P2P網(wǎng)絡(luò)流量值建立學(xué)習(xí)樣本。
Step5:根據(jù)P2P網(wǎng)絡(luò)流量的特征向量數(shù)確定徑向基神經(jīng)網(wǎng)絡(luò)的輸入層節(jié)點(diǎn)數(shù),并根據(jù)一定的規(guī)則確定隱含層的節(jié)點(diǎn)數(shù),根據(jù)P2P網(wǎng)絡(luò)流量的類型確定輸出層的節(jié)點(diǎn)數(shù)。
Step6:初始徑向基神經(jīng)網(wǎng)絡(luò)的相關(guān)參數(shù),如連接權(quán)值、聚類中心的數(shù)量等。
Step7:采用徑向基神經(jīng)網(wǎng)絡(luò)對(duì)P2P網(wǎng)絡(luò)流量學(xué)習(xí)樣本進(jìn)行學(xué)習(xí),建立P2P網(wǎng)絡(luò)流量識(shí)別模型。
為了分析神經(jīng)網(wǎng)絡(luò)的P2P網(wǎng)絡(luò)流量識(shí)別效果,選擇Andrew Moore提供的公共數(shù)據(jù)集作為實(shí)驗(yàn)對(duì)象,其共有11個(gè)數(shù)據(jù)集,每一個(gè)數(shù)據(jù)集中有P2P網(wǎng)絡(luò)流量和非P2P網(wǎng)絡(luò)流量,每一個(gè)數(shù)據(jù)集選擇一定數(shù)量P2P網(wǎng)絡(luò)流量和非P2P網(wǎng)絡(luò)流量樣本,如表2所示。
從表2可以看出,相對(duì)于非P2P網(wǎng)絡(luò)流量,P2P網(wǎng)絡(luò)流量樣本數(shù)量相對(duì)較少,對(duì)于每一個(gè)數(shù)據(jù)集,根據(jù)3:1的比例形成訓(xùn)練樣本集合和測(cè)試樣本集合,采用VC++ 編程實(shí)現(xiàn)P2P網(wǎng)絡(luò)流量識(shí)別實(shí)驗(yàn)。
選擇文獻(xiàn)[12]和文獻(xiàn)[13]的P2P網(wǎng)絡(luò)流量識(shí)別方法進(jìn)行對(duì)比實(shí)驗(yàn),統(tǒng)計(jì)每一個(gè)數(shù)據(jù)集。不同方法的P2P網(wǎng)絡(luò)流量識(shí)別精度,如表3所示。
表2 P2P網(wǎng)絡(luò)流量識(shí)別的實(shí)驗(yàn)對(duì)象
表3 不同方法的P2P網(wǎng)絡(luò)流量識(shí)別精度比較
對(duì)表3的P2P網(wǎng)絡(luò)流量識(shí)別精度進(jìn)行對(duì)比和分析可以知道,本文方法的P2P網(wǎng)絡(luò)流量識(shí)別精度最高,每一個(gè)數(shù)據(jù)集的識(shí)別精度超過(guò)95%,相對(duì)于文獻(xiàn)[12]和文獻(xiàn)[13],本文方法的P2P網(wǎng)絡(luò)流量識(shí)別精度分別提高了8.70%和6.31%,獲得了更加理想的P2P網(wǎng)絡(luò)流量識(shí)別結(jié)果。
對(duì)于一個(gè)P2P網(wǎng)絡(luò)流量識(shí)別方法,只有高精度的P2P網(wǎng)絡(luò)流量識(shí)別結(jié)果還不行,還要分析其P2P網(wǎng)絡(luò)流量的虛警率和漏報(bào)率。不同方法的P2P網(wǎng)絡(luò)流量的虛警率和漏報(bào)率如圖3、圖4所示。
圖3 不同方法的P2P網(wǎng)絡(luò)流量的虛警率對(duì)比
圖4 不同方法的P2P網(wǎng)絡(luò)流量的漏報(bào)率對(duì)比
從圖3、圖4可以看出,無(wú)論是P2P網(wǎng)絡(luò)流量的虛警率或者漏報(bào)率,本文方法更低,對(duì)比結(jié)果表明,本文方法的P2P網(wǎng)絡(luò)流量識(shí)別整體性能更優(yōu)。
由于P2P網(wǎng)絡(luò)流量識(shí)別的計(jì)算性能也是重要的評(píng)價(jià)指標(biāo),因此統(tǒng)計(jì)不同方法的P2P網(wǎng)絡(luò)流量學(xué)習(xí)時(shí)間(秒,s),每一種方法進(jìn)行5次學(xué)習(xí)實(shí)驗(yàn),如圖5所示。
圖5 不同方法的P2P網(wǎng)絡(luò)流量學(xué)習(xí)對(duì)比
從圖5的P2P網(wǎng)絡(luò)流量識(shí)別的學(xué)習(xí)時(shí)間可以看出,本文方法的P2P網(wǎng)絡(luò)流量學(xué)習(xí)時(shí)間要少于文獻(xiàn)[12]和文獻(xiàn)[13],從計(jì)算性能的角度分析,本文方法是最佳的P2P網(wǎng)絡(luò)流量識(shí)別方法,可以對(duì)大規(guī)模的P2P網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行分析。
隨著P2P網(wǎng)絡(luò)應(yīng)用范圍的不斷拓寬,應(yīng)用類型日趨復(fù)雜多樣,給P2P網(wǎng)絡(luò)的管理帶來(lái)了一定的挑戰(zhàn),為了更加精細(xì)的對(duì)P2P網(wǎng)絡(luò)進(jìn)行管理,結(jié)合P2P網(wǎng)絡(luò)流量變化特征,提出了神經(jīng)網(wǎng)絡(luò)的P2P流量識(shí)別方法,并通過(guò)具體P2P網(wǎng)絡(luò)流量數(shù)據(jù)實(shí)例進(jìn)行了仿真測(cè)試,結(jié)果表明,本文方法是一種精度高、速度快的P2P網(wǎng)絡(luò)流量識(shí)別方法,并且P2P網(wǎng)絡(luò)流量識(shí)別結(jié)果的穩(wěn)定性要優(yōu)于當(dāng)前其它P2P網(wǎng)絡(luò)流量的識(shí)別方法,具有十分廣泛的應(yīng)用前景。