黃金鈴
(上海師范大學(xué) 信息化辦公室, 上海 200234)
在對(duì)等網(wǎng)絡(luò)(peer to peer,P2P)應(yīng)用過程中,易出現(xiàn)網(wǎng)絡(luò)寬帶消耗量增長、信息泄露與其他安全方面問題,而P2P流量在互聯(lián)網(wǎng)資源內(nèi)所占比例超出60%,對(duì)P2P流量的管控進(jìn)行研究成為當(dāng)前網(wǎng)絡(luò)管理研究的重中之重[1-2].P2P流量管控中的關(guān)鍵之處在于流量的識(shí)別與控制,P2P流量的精準(zhǔn)識(shí)別是實(shí)行P2P流量有效控制的基礎(chǔ),通過對(duì)P2P流量控制,能夠降低網(wǎng)絡(luò)擁堵與延遲、提升網(wǎng)絡(luò)服務(wù)與管理質(zhì)量,對(duì)網(wǎng)絡(luò)的安全運(yùn)行提供有效保障[3-4].實(shí)現(xiàn)有效的P2P流量控制,達(dá)到網(wǎng)絡(luò)的安全運(yùn)行,需對(duì)網(wǎng)絡(luò)流量中P2P流量予以識(shí)別[5].
當(dāng)前P2P流量識(shí)別和控制的方法有很多,例如,最優(yōu)ABC-SVM算法流量識(shí)別方法適用于小樣本數(shù)據(jù)的分類,對(duì)于大流量數(shù)據(jù)的識(shí)別無法保障識(shí)別的準(zhǔn)確度[6];CNN流量識(shí)別方法即卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN),通過提取數(shù)據(jù)特征運(yùn)用多個(gè)窗口卷積方式對(duì)各塊的部分信息實(shí)行處理識(shí)別,但該方法訓(xùn)練時(shí)易產(chǎn)生過學(xué)習(xí)現(xiàn)象,導(dǎo)致出現(xiàn)整體識(shí)別時(shí)間過長、識(shí)別精度不穩(wěn)定等問題[7-9].
深度學(xué)習(xí)算法[10-11]能夠通過訓(xùn)練提取到數(shù)據(jù)的特征并實(shí)現(xiàn)分類,具有較強(qiáng)的并行處理與自組織學(xué)習(xí)等能力,為了獲得理想的P2P流量識(shí)別與控制效果,提出了基于深度學(xué)習(xí)算法的P2P流量識(shí)別與控制方法,在針對(duì)網(wǎng)絡(luò)中的P2P流量實(shí)行精準(zhǔn)識(shí)別的基礎(chǔ)上,實(shí)現(xiàn)對(duì)識(shí)別P2P流量的有效控制,提升網(wǎng)絡(luò)的管理水平與運(yùn)行的安全性.
1.1.1 深度學(xué)習(xí)算法的網(wǎng)絡(luò)流量數(shù)據(jù)聚類
深度學(xué)習(xí)算法聚類的基本過程為:將由網(wǎng)絡(luò)應(yīng)用端口所采集到的流量數(shù)據(jù)作為樣本數(shù)據(jù),其中少量流量數(shù)據(jù)作為訓(xùn)練樣本數(shù)據(jù),其余流量數(shù)據(jù)作為檢測(cè)樣本數(shù)據(jù),以訓(xùn)練樣本數(shù)據(jù)實(shí)現(xiàn)對(duì)深度學(xué)習(xí)算法的BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練,應(yīng)用訓(xùn)練后的BP神經(jīng)網(wǎng)絡(luò)預(yù)分類訓(xùn)練樣本數(shù)據(jù),以預(yù)分類結(jié)果為依據(jù)將聚類中心確準(zhǔn);在預(yù)分類結(jié)果所確準(zhǔn)的聚類中心基礎(chǔ)上,通過聚類算法對(duì)檢測(cè)樣本數(shù)據(jù)實(shí)行聚類,獲取精準(zhǔn)有效的識(shí)別結(jié)果.深度學(xué)習(xí)算法聚類過程如圖1所示.

圖1 深度學(xué)習(xí)算法聚類過程
深度學(xué)習(xí)算法聚類算法的實(shí)現(xiàn)過程為:
1) 訓(xùn)練樣本數(shù)據(jù)為Xk=[xk1,xk2,…,xkN],k=1,2,…,M,M為樣本數(shù)量;第m次迭代時(shí),網(wǎng)絡(luò)的實(shí)際輸出為Yk(m)=[yk1(m),yk2(m),…,ykg(m)],g為輸出層神經(jīng)元數(shù)量;期望輸出為Bk=[bk1,bk2,…,bkg],Yk為最終結(jié)果,可通過誤差運(yùn)算與權(quán)值修正獲得.
2) 以Yk值為第k個(gè)聚類中心點(diǎn).
3) 將k個(gè)聚類數(shù)據(jù)對(duì)象集合Ai與k個(gè)聚類中心Yi輸出.
1.1.2 P2P流量識(shí)別
作為IP服務(wù)的P2P包通常情況下包含數(shù)據(jù)傳輸與消息聯(lián)系兩種狀態(tài),且兩種狀態(tài)均以較高速率實(shí)施轉(zhuǎn)換[12].當(dāng)前較為常見的六種IP服務(wù)流量特征對(duì)比如表1所示.通過表1能夠看出,P2P的流量特征主要包括:字節(jié)數(shù)高、持續(xù)時(shí)間長以及平均傳輸速率由中到高,以此類特征為依據(jù)可較好地區(qū)分除FTP以外的其他服務(wù)類別,對(duì)于FTP服務(wù)類別的區(qū)分,可依據(jù)消息聯(lián)系方面實(shí)現(xiàn),具體為:FTP僅擁有單方面聯(lián)系,無用戶交互,而P2P擁有雙方面消息聯(lián)系,存在用戶交互.

表1 不同IP服務(wù)流量特征
P2P與萬維網(wǎng)(WWW)相對(duì)于單個(gè)流而言,二者包的大小標(biāo)準(zhǔn)差較大,但因P2P包大小轉(zhuǎn)換頻率較高,且P2P持續(xù)時(shí)間長,故輸入特征值可選取為各流的包大小轉(zhuǎn)換頻率、包數(shù)目、包大小標(biāo)準(zhǔn)差、總字節(jié)數(shù)及包大小平均值五類特征值,輸入層神經(jīng)元數(shù)量為5.對(duì)于流量識(shí)別結(jié)果,需對(duì)是否屬于P2P予以判斷即可,即輸出結(jié)果僅有兩種,則輸出層神經(jīng)元數(shù)量為2.設(shè)置相應(yīng)的參數(shù):隱含層神經(jīng)元數(shù)量為4,輸入層神經(jīng)元數(shù)量與輸出層神經(jīng)元數(shù)量分別為5和2,訓(xùn)練次數(shù)與學(xué)習(xí)速率分別為420和0.66.以深度學(xué)習(xí)算法的預(yù)分類結(jié)果為依據(jù),運(yùn)用所選取的五個(gè)特征值對(duì)流量數(shù)據(jù)中的檢測(cè)樣本數(shù)據(jù)進(jìn)行分析,獲取各種IP服務(wù)的聚類中心;以常見的IP服務(wù)類別為依據(jù),聚類k值取為2,根據(jù)5個(gè)特征值的均值聚類各個(gè)流量獲得聚類結(jié)果,實(shí)現(xiàn)P2P流量識(shí)別.
P2P流量識(shí)別是為了實(shí)現(xiàn)更有效的P2P流量控制,故在P2P流量識(shí)別結(jié)果的基礎(chǔ)上,結(jié)合P2P流量特征,將所識(shí)別的P2P流量作為控制對(duì)象,提出基于自相似性的P2P流量控制機(jī)制,對(duì)識(shí)別所得的P2P流量實(shí)行有效控制.
1.2.1 基于FARIMA過程的自相似模型
分形自回歸綜合滑動(dòng)平均(FARIMA)自相似模型為分形自回歸綜合移動(dòng)平均線過程(p,d,q),其中,p為自回歸階次,d為差分次數(shù),q為滑動(dòng)平均階次.對(duì)于任意時(shí)序序列{Z(n)},F(xiàn)ARIMA(p,d,q)模型可表示為
他卻很大方地給我找了個(gè)椅子,然后從開水瓶里給我倒了杯水,像個(gè)大人一樣招呼我。他奶奶拄著拐杖顫顫巍巍地出來,說這孩子從小就懂事腦袋也聰明,就是命不好,兩個(gè)大人都不靠譜,要我多照顧一下他。
φ(B)dZ(f)=θ(B)E(f)
(1)
式中:B為延遲算子;E(f)為白噪聲序列;d為分形差分算子,其表達(dá)式為
(2)
延遲算子表達(dá)式為
BnZ(t)=Z(n-t)
(3)
φ(B)和θ(B)分別為自回歸項(xiàng)和滑動(dòng)平均項(xiàng),其表達(dá)式為
φ(B)=1-φ1B-φ2B2-…-φpBp
(4)
θ(B)=1-θ1B-θ2B2-…-θqBp
(5)
1.2.2 基于FARIMA模型的P2P流量控制
P2P流量控制機(jī)制是以FARIMA的P2P流量識(shí)別結(jié)果為依據(jù),對(duì)P2P流量進(jìn)行智能控制,主要包括:FARIMA自相似模型預(yù)估、預(yù)估流量對(duì)比、以計(jì)數(shù)器為依據(jù)調(diào)整P2P流量,具體如圖2所示.基于FARIMA模型的P2P流量控制步驟具體如下:

圖2 P2P流量控制機(jī)制流程
1) FARIMA自相似模型程序可通過C編程實(shí)現(xiàn).
2) 設(shè)用戶的最高寬帶值為DG、突現(xiàn)流量的上限最高值和下限最低值分別為hDG和cLG,穿越上下門限值計(jì)數(shù)器分別為hCount和cCount,各數(shù)值的關(guān)系為DG>hDG>cLG.
3) 以FARIMA自相似模型為依據(jù),將識(shí)別得到的P2P流量下個(gè)Δt時(shí)刻的流量值PΔt預(yù)估得出.
4) 計(jì)時(shí)器在預(yù)估出第一個(gè)Δt時(shí)刻的P2P流量值時(shí)開啟計(jì)時(shí).
5) 若預(yù)估流量值PΔt>hDG,則hCount=hCount+1;反之則cCount=cCount-1.
6) 在l個(gè)Δt時(shí)刻內(nèi),若cCount 實(shí)驗(yàn)中在某高校校園網(wǎng)中的計(jì)算機(jī)終端上安裝網(wǎng)絡(luò)嗅探軟件wireshark,通過被動(dòng)監(jiān)聽的方式抓取網(wǎng)絡(luò)流量數(shù)據(jù)包,抓取流量數(shù)據(jù)包的時(shí)間段為2019年3~7月,運(yùn)行ftp、www、eMule與BitTorrent等應(yīng)用.校園網(wǎng)計(jì)算機(jī)的配置為:Intel 2.85 GHz 4核CPU,8 GB內(nèi)存,操作系統(tǒng)為Windows XP,通過抓取采集到各應(yīng)用的字節(jié)數(shù)、包數(shù)量、轉(zhuǎn)換頻率、包大小等流量樣本數(shù)據(jù)共4 500條.從每種應(yīng)用中各隨機(jī)抽出1/3數(shù)據(jù)作為本文方法的訓(xùn)練樣本數(shù)據(jù),剩余數(shù)據(jù)為檢測(cè)樣本數(shù)據(jù). 2.1.1 穩(wěn)定性分析 通過本文方法對(duì)1 500條訓(xùn)練樣本數(shù)據(jù)實(shí)行預(yù)分類,獲取到訓(xùn)練樣本數(shù)據(jù)的預(yù)分類結(jié)果,包含P2P流與非P2P流,隨機(jī)從預(yù)分類結(jié)果中選取出兩類流量數(shù)據(jù)各4條,每條流量樣本數(shù)據(jù)的特征值如表2所示.表2中,“1”表示P2P流,“0”表示非P2P流.通過本文方法預(yù)分類后獲得的聚類中心值(各個(gè)特征值的平均值)如表3所示. 表2 流量樣本數(shù)據(jù)的特征值 表3 聚類中心值 以預(yù)分類得到的訓(xùn)練樣本數(shù)據(jù)聚類中心值為依據(jù),采用本文方法對(duì)剩余3 000條檢測(cè)樣本數(shù)據(jù)實(shí)行10次聚類,獲得10次流量識(shí)別結(jié)果;再分別采用最優(yōu)ABC-SVM和CNN流量識(shí)別方法進(jìn)行10次對(duì)比實(shí)驗(yàn),P2P流量識(shí)別結(jié)果如表4所示.通過表4可以看出,本文方法的10次P2P流量識(shí)別結(jié)果更加穩(wěn)定,識(shí)別結(jié)果波動(dòng)幅度小,表明本文方法可以得到較穩(wěn)定的P2P流量識(shí)別結(jié)果. 表4 不同流量識(shí)別結(jié)果 2.1.2 精度分析 將3 000條檢測(cè)樣本數(shù)據(jù)進(jìn)行預(yù)處理,去掉一些無用數(shù)據(jù),得到有效的P2P流量數(shù)量為2 136條,統(tǒng)計(jì)三種方法的P2P流量識(shí)別精度,得到P2P流量識(shí)別誤差,結(jié)果如圖3所示.由圖3可知,相對(duì)于對(duì)比方法,本文方法的10次流量識(shí)別誤差變化更加平穩(wěn),平均誤差值為0.56%,最優(yōu)ABC-SVM和CNN流量識(shí)別方法的平均誤差值分別為0.95%和1.25%,本文方法的P2P流量識(shí)別精度高于對(duì)比方法,這是因?yàn)楸疚姆椒ㄊ且罁?jù)流量特征實(shí)現(xiàn)的流量識(shí)別,不僅可用于普通P2P流量識(shí)別,還可以對(duì)加密及未知的P2P流量實(shí)現(xiàn)高精度識(shí)別,具有較好的自適應(yīng)性. 圖3 各方法識(shí)別誤差對(duì)比 為了驗(yàn)證本文方法的P2P流量控制效果,采用吞吐量與丟包率作為檢測(cè)指標(biāo),流量丟包率的計(jì)算方法為 (6) 式中,O和K分別為P2P流量的流出值與初始值.P2P流量的丟包率越低,P2P流量控制效果越理想,測(cè)試結(jié)果如圖4所示.從圖4可以看出,在應(yīng)用本文方法控制前,P2P流量間競(jìng)爭(zhēng)寬帶十分激烈,使得流量吞吐量快速下降,網(wǎng)絡(luò)資源沒有得到充分利用,出現(xiàn)丟包率過高問題;采用本文方法對(duì)P2P流量控制后,P2P流量傳輸順暢,寬帶分配合理,吞吐量變化十分平穩(wěn),使得流量丟包率降低.對(duì)比結(jié)果表明,本文方法能夠保持P2P流量穩(wěn)定傳輸,減少流量傳輸時(shí)的丟包率,獲得了理想的P2P流量控制效果. 圖4 吞吐量與丟包率對(duì)比 本文提出了深度學(xué)習(xí)的P2P流量識(shí)別與控制方法,通過結(jié)合深度學(xué)習(xí)算法與聚類算法,完成對(duì)所采集流量數(shù)據(jù)的聚類,獲取P2P流量識(shí)別結(jié)果,并基于FARIMA自相似模型創(chuàng)建P2P流量控制機(jī)制,實(shí)現(xiàn)對(duì)所識(shí)別P2P流量的有效控制,以某高校校園網(wǎng)中所采集的各流量數(shù)據(jù)為例,通過本文方法識(shí)別與控制后,驗(yàn)證了本文方法識(shí)別結(jié)果的精準(zhǔn)穩(wěn)定與顯著有效的控制性能.2 實(shí)例分析
2.1 識(shí)別結(jié)果分析




2.2 控制效果分析

3 結(jié) 論