羅宏芳,王春枝
(1. 湖北工業(yè)大學(xué)工程技術(shù)學(xué)院,湖北 武漢 430068;2. 湖北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院,湖北 武漢 430068)
由于計(jì)算機(jī)網(wǎng)絡(luò)規(guī)模的擴(kuò)大,數(shù)據(jù)量也隨之增長(zhǎng),直接導(dǎo)致網(wǎng)絡(luò)被濫用的情況增加,以上問題會(huì)對(duì)網(wǎng)絡(luò)流量的穩(wěn)定性造成巨大影響,使得計(jì)算機(jī)網(wǎng)絡(luò)安全性能大大下降[1,2]?,F(xiàn)如今計(jì)算機(jī)網(wǎng)絡(luò)均添加云計(jì)算功能[3],使得計(jì)算機(jī)運(yùn)算以及網(wǎng)絡(luò)資源容量大大提升,也提高了用戶的訪問量,這導(dǎo)致網(wǎng)絡(luò)流量的波動(dòng)幅度較大,因此,為了網(wǎng)絡(luò)安全,網(wǎng)絡(luò)流量異常波動(dòng)的檢測(cè)必須受到重視。
孟永偉[4]首先分析網(wǎng)絡(luò)流量數(shù)據(jù)的特征屬性,基于特征屬性得出屬性矩陣,同時(shí)通過(guò)數(shù)據(jù)的相似性得出鄰接矩陣,結(jié)合兩種矩陣建立出網(wǎng)絡(luò)流量異常檢測(cè)模型,對(duì)模型進(jìn)行求解實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)流量異常檢測(cè)。董書琴[5]等人在小批量梯度下降算法的基礎(chǔ)上對(duì)流量數(shù)據(jù)SDA(堆疊降噪自編碼器)開展訓(xùn)練,根據(jù)噪聲數(shù)據(jù)和原始數(shù)據(jù)向量之間的偏差得出流量特征,并依據(jù)流量特征對(duì)數(shù)據(jù)進(jìn)行訓(xùn)練得出異常網(wǎng)絡(luò)流量檢測(cè)分類器,實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)流量異常檢測(cè)。以上方法在對(duì)大規(guī)模網(wǎng)絡(luò)異常流量進(jìn)行檢測(cè)過(guò)程中沒有對(duì)流量數(shù)據(jù)進(jìn)行組合融合處理,導(dǎo)致流量無(wú)法被準(zhǔn)確區(qū)分,影響異常流量檢測(cè)效果。為了解決上述方法中存在的問題,提出面向云計(jì)算的大規(guī)模網(wǎng)絡(luò)流量異常檢測(cè)方法。
對(duì)云計(jì)算空間中的大規(guī)模網(wǎng)絡(luò)流量進(jìn)行分組[6],分別對(duì)流量數(shù)據(jù)進(jìn)行特征提取[7]、聚類分組[8]以及分組融合處理,生成最詳細(xì)的分組結(jié)果,這樣處理后的流量數(shù)據(jù)可提升檢測(cè)結(jié)果的準(zhǔn)確率,流量特征提取的目的是為數(shù)據(jù)聚類分組提供特征分組向量,方便大規(guī)模流量數(shù)據(jù)聚類。
常規(guī)的流量數(shù)據(jù)特征提取方法由于定義過(guò)于模糊,所以特征提取的結(jié)果主觀性過(guò)強(qiáng)[9,10],為了解決該問題,利用DWT(離散小波變換)分解原始流量數(shù)據(jù),提取出其中的隱藏時(shí)頻特征,進(jìn)而詳細(xì)地描述出網(wǎng)絡(luò)流量數(shù)據(jù)特征。
DWT信號(hào)處理方法是通過(guò)母小波得出零均值函數(shù),將其視為小波,進(jìn)而完成初始流量數(shù)據(jù)序列的卷積處理。假設(shè)母小波為γA,B(t),則母小波的展開式為:
(1)
式中,A代表流量數(shù)據(jù)的縮放參數(shù),B代表流量數(shù)據(jù)的位移參數(shù),t表示母小波,t表示信號(hào)處理時(shí)間。
其中,參數(shù)A和B的計(jì)算公式分別為
(2)
式中,j和k均代表常數(shù)。
將原始流量數(shù)據(jù)標(biāo)記為s(t),并對(duì)式(1)進(jìn)行離散化處理,通過(guò)離散小波函數(shù)對(duì)原始信號(hào)進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換后的原始流量數(shù)據(jù)表達(dá)式為
(3)
則離散小波λj,k(t)的表達(dá)式為
(4)
(5)
式中,AM,k代表M級(jí)分解的縮放函數(shù)的系數(shù),γ(·)代表M級(jí)分解的縮放函數(shù),F(xiàn)j(t)代表近似系數(shù)與M級(jí)的詳細(xì)系數(shù)之間的函數(shù)關(guān)系。
根據(jù)式(5)可將原始流量數(shù)據(jù)s(t)分解出近似系數(shù)與M級(jí)的詳細(xì)系數(shù),由此總結(jié)出不同的小波以及級(jí)別得出的分解信號(hào)系數(shù)也不盡相同,不同的系數(shù)會(huì)得出不同的DWT特征提取結(jié)果[11],其中包含著最優(yōu)結(jié)果。但由于計(jì)算量過(guò)大很難找尋出最優(yōu)結(jié)果,經(jīng)大量研究發(fā)現(xiàn),異常網(wǎng)絡(luò)流量數(shù)據(jù)通常會(huì)變?yōu)榈途S流特征,所以想要選取出異常流量?jī)H僅提取低維流特征即可,將網(wǎng)絡(luò)流量數(shù)據(jù)的實(shí)時(shí)數(shù)據(jù)以及以往兩次流量數(shù)據(jù)的差分值,視為流量數(shù)據(jù)聚類的特征即可,得出流量的特征向量表達(dá)式為
G=(Vl,Vl-Vl-1)
(6)
式中,V代表大規(guī)模網(wǎng)絡(luò)流量值,l代表流量數(shù)據(jù)采樣的時(shí)間。
利用BIRCH(利用層次方法的平衡迭代規(guī)約和聚類)算法對(duì)大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行聚類[12],通過(guò)掃描全部流量數(shù)據(jù)特征構(gòu)建出初始化的特征數(shù),假設(shè)特征樹為CF,其表達(dá)式為
(7)
當(dāng)目標(biāo)數(shù)據(jù)添加到鄰近的節(jié)點(diǎn)中,且該節(jié)點(diǎn)的半徑大于固定閾值,該節(jié)點(diǎn)就會(huì)被分割,當(dāng)聚類特征樹構(gòu)建完成后,根據(jù)聚類特征對(duì)數(shù)據(jù)進(jìn)一步聚類即可得到最詳細(xì)的分類結(jié)果。
由于聚類分組的流量結(jié)果不能很好地處理一個(gè)用戶屬于多個(gè)分組的情況,因此,上述的聚類結(jié)果和實(shí)際情況存在一定差異,較為相似的網(wǎng)絡(luò)流量數(shù)據(jù)特征易分類到同一組,還需對(duì)其進(jìn)行修正,為解決這一問題得出下列分組融合策略[13]。
1)在對(duì)數(shù)據(jù)分組開始前將全部流量進(jìn)行初始化處理,將處理完成后的流量全部劃分到一組中。
2)生成一組聚類數(shù)據(jù)后,提取出該組與其它組的交集,將其中最大交集的新分組添加到目前分組中。
3)合并完成后其中若還有存在被重新分組的流量數(shù)據(jù),則將這一部分?jǐn)?shù)據(jù)列為一組即可,進(jìn)而完成所有數(shù)據(jù)聚類融合。
針對(duì)云計(jì)算下大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的異常檢測(cè),選用NMF(非負(fù)矩陣分解)[14,15]為檢測(cè)方法,該方法的檢測(cè)步驟共分為三步,分別為建立常規(guī)子空間、生成殘余矩陣和異常檢測(cè),在上述分組的流量結(jié)果的基礎(chǔ)上進(jìn)行網(wǎng)絡(luò)流量的異常進(jìn)行檢測(cè)。
假設(shè)原始流量矩陣為X,其表達(dá)式為
X=[X1,X2,…,Xi]
(8)
式中,Xi代表矩陣中的第i個(gè)網(wǎng)絡(luò)流量實(shí)際位置的測(cè)量值列向量。
在原始流量矩陣中,可將Xi視為在d維空間中的一點(diǎn),因?yàn)槠鋷в械途S特性,所以網(wǎng)絡(luò)流量矩陣可通過(guò)R維子空間進(jìn)行描述,在該空間中對(duì)矩陣X實(shí)施NMF處理后即可生成R維子空間的基向量,其集合矩陣表達(dá)式為
U=[U1,U2,…,Uj]
(9)
式中,Uj代表矩陣中的基向量。
矩陣U中每個(gè)維度的基向量均獲取了時(shí)變形式,則矩陣X在維度R空間中的系數(shù)向量矩陣表達(dá)式為
W=[W1,W2,…,Wi]
(10)
在R維子空間中齊聚式(8)、(9)、(10)即可構(gòu)建出正常的子空間。
根據(jù)上述子空間重構(gòu)大規(guī)模網(wǎng)絡(luò)流量矩陣X,繼而得到全新的流量矩陣,其表達(dá)式為
=[U1,U2,…,Uj][W1,W2,…,Wi]
(11)
矩陣中的噪聲和異常部分的流量表達(dá)式為
(12)
各個(gè)流量測(cè)量周期中的殘余流量是檢測(cè)流量是否異常的基礎(chǔ)[16,17],即大規(guī)模網(wǎng)絡(luò)流量測(cè)量周期的殘余流量。
假設(shè)網(wǎng)絡(luò)流量第q個(gè)測(cè)量周期的結(jié)果為
Xq=(Xq1,Xq2,…,Xqi)
(13)
通過(guò)NMF處理[18]后Xq可以改寫為
(14)
若將流量采樣測(cè)量周期的均值、標(biāo)準(zhǔn)差以及極差視為統(tǒng)計(jì)信息,此時(shí)利用Shewhart控制圖[19]描述異常與正常數(shù)據(jù)之間的差別更為明顯,將異常的流量視為異常采樣點(diǎn),否則為正常采樣點(diǎn)。Shewhart控制圖實(shí)質(zhì)上是將目標(biāo)數(shù)據(jù)視為正態(tài)分布,根據(jù)目標(biāo)數(shù)據(jù)的均值以及標(biāo)準(zhǔn)差,得出數(shù)據(jù)發(fā)生變化的界限判斷出網(wǎng)絡(luò)流量是否出現(xiàn)異常,從而完成網(wǎng)絡(luò)流量異常檢測(cè)。
(15)
式中,Hi代表第i個(gè)采樣點(diǎn)的極值。
則控制圖的控制界限表達(dá)式為
(16)
式中,d3和d2均代表根據(jù)規(guī)則計(jì)算得出的測(cè)量值,CL、UCL和LCL均代表控制圖的界限,E(H)代表極值的計(jì)算函數(shù)。
當(dāng)采樣值的結(jié)果超過(guò)式(16)的界限即可檢測(cè)出大規(guī)網(wǎng)絡(luò)的異常流量。
為了驗(yàn)證面向云計(jì)算的大規(guī)模網(wǎng)絡(luò)流量異常檢測(cè)方法的整體有效性,現(xiàn)對(duì)本文方法、利用殘差分析的網(wǎng)絡(luò)異常流量檢測(cè)方法和基于深度特征學(xué)習(xí)的網(wǎng)絡(luò)流量異常檢測(cè)方法進(jìn)行異常流量檢測(cè)精度和檢測(cè)指標(biāo)評(píng)價(jià)的測(cè)試,測(cè)試結(jié)果如下所示。
實(shí)驗(yàn)所用數(shù)據(jù)來(lái)自WIDE Project數(shù)據(jù)集(http:∥mawi.wide.ad.jp/mawi/),該數(shù)據(jù)集中包含某條骨干網(wǎng)絡(luò)的網(wǎng)絡(luò)流量,里面一共涉及7個(gè)采樣點(diǎn),且時(shí)間跨度較大。在該數(shù)據(jù)集中抽取一定數(shù)量的正常流量數(shù)據(jù)與異常流量數(shù)據(jù),運(yùn)用SPSS仿真軟件對(duì)數(shù)據(jù)進(jìn)行處理。實(shí)驗(yàn)中,保證三種異常流量檢測(cè)方法的實(shí)驗(yàn)環(huán)境均一致。
1)異常流量檢測(cè)精度
在實(shí)驗(yàn)數(shù)據(jù)集中抽取異常流量數(shù)據(jù),形成5個(gè)樣本集,分別定義為樣本1~樣本5,每組樣本中包含的異常類別數(shù)量分別為30個(gè),20個(gè),15個(gè),40個(gè)以及55個(gè),三種檢測(cè)方法檢測(cè)得到的異常類別數(shù)量與實(shí)際值越接近,說(shuō)明檢測(cè)結(jié)果精度越高,如圖1所示。
根據(jù)實(shí)驗(yàn)結(jié)果可知,本文方法與實(shí)際流量異常類別數(shù)量完全相同,說(shuō)明本文方法可百分百檢測(cè)出不同種類樣本下的異常流量類別,檢測(cè)精度較高,其次是殘差分析方法,該方法可檢測(cè)出大部分的網(wǎng)絡(luò)異常流量,但針對(duì)數(shù)量較少且不易被發(fā)現(xiàn)的異常流量很難檢測(cè)出,深度特征學(xué)習(xí)方法的檢測(cè)結(jié)果更差,由此證明本文方法的檢測(cè)效果更好。這是因?yàn)楸疚姆椒ㄔ趯?duì)網(wǎng)絡(luò)異常流量進(jìn)行檢測(cè)過(guò)程中將海量數(shù)據(jù)進(jìn)行分組處理,且保證數(shù)據(jù)分組的精度,從而降低整體計(jì)算復(fù)雜度,從而提高檢測(cè)能力。
圖1 三種方法的異常流量檢測(cè)精度
2)異常流量檢測(cè)指標(biāo)評(píng)價(jià)
為了進(jìn)一步驗(yàn)證本文方法的異常流量檢測(cè)效果,現(xiàn)選取2個(gè)指標(biāo)在上述實(shí)驗(yàn)環(huán)境下利用三種方法進(jìn)行檢測(cè)。
指標(biāo)分別為召回率以及F1值,召回率是指每組樣本中被正確檢測(cè)出來(lái)的異常流量占異常樣本的比值,其計(jì)算公式為:
(17)
式中,TP代表正確檢測(cè)的樣本數(shù)量,F(xiàn)N代表被錯(cuò)誤檢測(cè)出的樣本數(shù)量。
F1值的計(jì)算公式為
(18)
式中,P代表檢測(cè)精度。
根據(jù)以上計(jì)算公式得出三種方法的召回率以及F1值,其結(jié)果如圖2和圖3所示。
圖2 三種方法的召回率
根據(jù)圖2和圖3中的實(shí)驗(yàn)結(jié)果可知,本文方法的召回率以及F1值均高于殘差分析方法和深度特征學(xué)習(xí)方法,說(shuō)明本文方法的異常流量檢測(cè)效果更好。
圖3 不同方法的F1值
云計(jì)算可容納海量數(shù)據(jù),可保證計(jì)算機(jī)數(shù)據(jù)庫(kù)的完整,但網(wǎng)絡(luò)流量在運(yùn)行過(guò)程中的運(yùn)算資源以及網(wǎng)絡(luò)資源較大,為防止流量異常造成的網(wǎng)絡(luò)擁堵或網(wǎng)絡(luò)崩潰的情況,提出面向云計(jì)算的大規(guī)模網(wǎng)絡(luò)流量異常檢測(cè)方法,該方法首先對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行分組,在此基礎(chǔ)上,利用NMF異常流量檢測(cè)算法對(duì)大規(guī)模網(wǎng)絡(luò)流量進(jìn)行異常檢測(cè)。解決了異常流量檢測(cè)效果不佳的問題,避免因?yàn)榫垲惾诤蠈?dǎo)致的同一流量無(wú)法區(qū)分情況的產(chǎn)生,提升了網(wǎng)絡(luò)異常流量檢測(cè)的精度與效果。