羅宏芳,王春枝
(1. 湖北工業(yè)大學(xué)工程技術(shù)學(xué)院,湖北 武漢 430068;2. 湖北工業(yè)大學(xué)計算機學(xué)院,湖北 武漢 430068)
由于計算機網(wǎng)絡(luò)規(guī)模的擴大,數(shù)據(jù)量也隨之增長,直接導(dǎo)致網(wǎng)絡(luò)被濫用的情況增加,以上問題會對網(wǎng)絡(luò)流量的穩(wěn)定性造成巨大影響,使得計算機網(wǎng)絡(luò)安全性能大大下降[1,2]?,F(xiàn)如今計算機網(wǎng)絡(luò)均添加云計算功能[3],使得計算機運算以及網(wǎng)絡(luò)資源容量大大提升,也提高了用戶的訪問量,這導(dǎo)致網(wǎng)絡(luò)流量的波動幅度較大,因此,為了網(wǎng)絡(luò)安全,網(wǎng)絡(luò)流量異常波動的檢測必須受到重視。
孟永偉[4]首先分析網(wǎng)絡(luò)流量數(shù)據(jù)的特征屬性,基于特征屬性得出屬性矩陣,同時通過數(shù)據(jù)的相似性得出鄰接矩陣,結(jié)合兩種矩陣建立出網(wǎng)絡(luò)流量異常檢測模型,對模型進行求解實現(xiàn)大規(guī)模網(wǎng)絡(luò)流量異常檢測。董書琴[5]等人在小批量梯度下降算法的基礎(chǔ)上對流量數(shù)據(jù)SDA(堆疊降噪自編碼器)開展訓(xùn)練,根據(jù)噪聲數(shù)據(jù)和原始數(shù)據(jù)向量之間的偏差得出流量特征,并依據(jù)流量特征對數(shù)據(jù)進行訓(xùn)練得出異常網(wǎng)絡(luò)流量檢測分類器,實現(xiàn)大規(guī)模網(wǎng)絡(luò)流量異常檢測。以上方法在對大規(guī)模網(wǎng)絡(luò)異常流量進行檢測過程中沒有對流量數(shù)據(jù)進行組合融合處理,導(dǎo)致流量無法被準確區(qū)分,影響異常流量檢測效果。為了解決上述方法中存在的問題,提出面向云計算的大規(guī)模網(wǎng)絡(luò)流量異常檢測方法。
對云計算空間中的大規(guī)模網(wǎng)絡(luò)流量進行分組[6],分別對流量數(shù)據(jù)進行特征提取[7]、聚類分組[8]以及分組融合處理,生成最詳細的分組結(jié)果,這樣處理后的流量數(shù)據(jù)可提升檢測結(jié)果的準確率,流量特征提取的目的是為數(shù)據(jù)聚類分組提供特征分組向量,方便大規(guī)模流量數(shù)據(jù)聚類。
常規(guī)的流量數(shù)據(jù)特征提取方法由于定義過于模糊,所以特征提取的結(jié)果主觀性過強[9,10],為了解決該問題,利用DWT(離散小波變換)分解原始流量數(shù)據(jù),提取出其中的隱藏時頻特征,進而詳細地描述出網(wǎng)絡(luò)流量數(shù)據(jù)特征。
DWT信號處理方法是通過母小波得出零均值函數(shù),將其視為小波,進而完成初始流量數(shù)據(jù)序列的卷積處理。假設(shè)母小波為γA,B(t),則母小波的展開式為:

(1)
式中,A代表流量數(shù)據(jù)的縮放參數(shù),B代表流量數(shù)據(jù)的位移參數(shù),t表示母小波,t表示信號處理時間。
其中,參數(shù)A和B的計算公式分別為

(2)
式中,j和k均代表常數(shù)。
將原始流量數(shù)據(jù)標記為s(t),并對式(1)進行離散化處理,通過離散小波函數(shù)對原始信號進行轉(zhuǎn)換,轉(zhuǎn)換后的原始流量數(shù)據(jù)表達式為

(3)

則離散小波λj,k(t)的表達式為

(4)



(5)
式中,AM,k代表M級分解的縮放函數(shù)的系數(shù),γ(·)代表M級分解的縮放函數(shù),F(xiàn)j(t)代表近似系數(shù)與M級的詳細系數(shù)之間的函數(shù)關(guān)系。
根據(jù)式(5)可將原始流量數(shù)據(jù)s(t)分解出近似系數(shù)與M級的詳細系數(shù),由此總結(jié)出不同的小波以及級別得出的分解信號系數(shù)也不盡相同,不同的系數(shù)會得出不同的DWT特征提取結(jié)果[11],其中包含著最優(yōu)結(jié)果。但由于計算量過大很難找尋出最優(yōu)結(jié)果,經(jīng)大量研究發(fā)現(xiàn),異常網(wǎng)絡(luò)流量數(shù)據(jù)通常會變?yōu)榈途S流特征,所以想要選取出異常流量僅僅提取低維流特征即可,將網(wǎng)絡(luò)流量數(shù)據(jù)的實時數(shù)據(jù)以及以往兩次流量數(shù)據(jù)的差分值,視為流量數(shù)據(jù)聚類的特征即可,得出流量的特征向量表達式為
G=(Vl,Vl-Vl-1)
(6)
式中,V代表大規(guī)模網(wǎng)絡(luò)流量值,l代表流量數(shù)據(jù)采樣的時間。
利用BIRCH(利用層次方法的平衡迭代規(guī)約和聚類)算法對大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)進行聚類[12],通過掃描全部流量數(shù)據(jù)特征構(gòu)建出初始化的特征數(shù),假設(shè)特征樹為CF,其表達式為

(7)
當目標數(shù)據(jù)添加到鄰近的節(jié)點中,且該節(jié)點的半徑大于固定閾值,該節(jié)點就會被分割,當聚類特征樹構(gòu)建完成后,根據(jù)聚類特征對數(shù)據(jù)進一步聚類即可得到最詳細的分類結(jié)果。
由于聚類分組的流量結(jié)果不能很好地處理一個用戶屬于多個分組的情況,因此,上述的聚類結(jié)果和實際情況存在一定差異,較為相似的網(wǎng)絡(luò)流量數(shù)據(jù)特征易分類到同一組,還需對其進行修正,為解決這一問題得出下列分組融合策略[13]。
1)在對數(shù)據(jù)分組開始前將全部流量進行初始化處理,將處理完成后的流量全部劃分到一組中。
2)生成一組聚類數(shù)據(jù)后,提取出該組與其它組的交集,將其中最大交集的新分組添加到目前分組中。
3)合并完成后其中若還有存在被重新分組的流量數(shù)據(jù),則將這一部分數(shù)據(jù)列為一組即可,進而完成所有數(shù)據(jù)聚類融合。
針對云計算下大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的異常檢測,選用NMF(非負矩陣分解)[14,15]為檢測方法,該方法的檢測步驟共分為三步,分別為建立常規(guī)子空間、生成殘余矩陣和異常檢測,在上述分組的流量結(jié)果的基礎(chǔ)上進行網(wǎng)絡(luò)流量的異常進行檢測。
假設(shè)原始流量矩陣為X,其表達式為
X=[X1,X2,…,Xi]
(8)
式中,Xi代表矩陣中的第i個網(wǎng)絡(luò)流量實際位置的測量值列向量。
在原始流量矩陣中,可將Xi視為在d維空間中的一點,因為其帶有低維特性,所以網(wǎng)絡(luò)流量矩陣可通過R維子空間進行描述,在該空間中對矩陣X實施NMF處理后即可生成R維子空間的基向量,其集合矩陣表達式為
U=[U1,U2,…,Uj]
(9)
式中,Uj代表矩陣中的基向量。
矩陣U中每個維度的基向量均獲取了時變形式,則矩陣X在維度R空間中的系數(shù)向量矩陣表達式為
W=[W1,W2,…,Wi]
(10)
在R維子空間中齊聚式(8)、(9)、(10)即可構(gòu)建出正常的子空間。
根據(jù)上述子空間重構(gòu)大規(guī)模網(wǎng)絡(luò)流量矩陣X,繼而得到全新的流量矩陣,其表達式為
=[U1,U2,…,Uj][W1,W2,…,Wi]
(11)
矩陣中的噪聲和異常部分的流量表達式為

(12)

各個流量測量周期中的殘余流量是檢測流量是否異常的基礎(chǔ)[16,17],即大規(guī)模網(wǎng)絡(luò)流量測量周期的殘余流量。
假設(shè)網(wǎng)絡(luò)流量第q個測量周期的結(jié)果為
Xq=(Xq1,Xq2,…,Xqi)
(13)
通過NMF處理[18]后Xq可以改寫為

(14)
若將流量采樣測量周期的均值、標準差以及極差視為統(tǒng)計信息,此時利用Shewhart控制圖[19]描述異常與正常數(shù)據(jù)之間的差別更為明顯,將異常的流量視為異常采樣點,否則為正常采樣點。Shewhart控制圖實質(zhì)上是將目標數(shù)據(jù)視為正態(tài)分布,根據(jù)目標數(shù)據(jù)的均值以及標準差,得出數(shù)據(jù)發(fā)生變化的界限判斷出網(wǎng)絡(luò)流量是否出現(xiàn)異常,從而完成網(wǎng)絡(luò)流量異常檢測。

(15)
式中,Hi代表第i個采樣點的極值。
則控制圖的控制界限表達式為

(16)
式中,d3和d2均代表根據(jù)規(guī)則計算得出的測量值,CL、UCL和LCL均代表控制圖的界限,E(H)代表極值的計算函數(shù)。
當采樣值的結(jié)果超過式(16)的界限即可檢測出大規(guī)網(wǎng)絡(luò)的異常流量。
為了驗證面向云計算的大規(guī)模網(wǎng)絡(luò)流量異常檢測方法的整體有效性,現(xiàn)對本文方法、利用殘差分析的網(wǎng)絡(luò)異常流量檢測方法和基于深度特征學(xué)習(xí)的網(wǎng)絡(luò)流量異常檢測方法進行異常流量檢測精度和檢測指標評價的測試,測試結(jié)果如下所示。
實驗所用數(shù)據(jù)來自WIDE Project數(shù)據(jù)集(http:∥mawi.wide.ad.jp/mawi/),該數(shù)據(jù)集中包含某條骨干網(wǎng)絡(luò)的網(wǎng)絡(luò)流量,里面一共涉及7個采樣點,且時間跨度較大。在該數(shù)據(jù)集中抽取一定數(shù)量的正常流量數(shù)據(jù)與異常流量數(shù)據(jù),運用SPSS仿真軟件對數(shù)據(jù)進行處理。實驗中,保證三種異常流量檢測方法的實驗環(huán)境均一致。
1)異常流量檢測精度
在實驗數(shù)據(jù)集中抽取異常流量數(shù)據(jù),形成5個樣本集,分別定義為樣本1~樣本5,每組樣本中包含的異常類別數(shù)量分別為30個,20個,15個,40個以及55個,三種檢測方法檢測得到的異常類別數(shù)量與實際值越接近,說明檢測結(jié)果精度越高,如圖1所示。
根據(jù)實驗結(jié)果可知,本文方法與實際流量異常類別數(shù)量完全相同,說明本文方法可百分百檢測出不同種類樣本下的異常流量類別,檢測精度較高,其次是殘差分析方法,該方法可檢測出大部分的網(wǎng)絡(luò)異常流量,但針對數(shù)量較少且不易被發(fā)現(xiàn)的異常流量很難檢測出,深度特征學(xué)習(xí)方法的檢測結(jié)果更差,由此證明本文方法的檢測效果更好。這是因為本文方法在對網(wǎng)絡(luò)異常流量進行檢測過程中將海量數(shù)據(jù)進行分組處理,且保證數(shù)據(jù)分組的精度,從而降低整體計算復(fù)雜度,從而提高檢測能力。

圖1 三種方法的異常流量檢測精度
2)異常流量檢測指標評價
為了進一步驗證本文方法的異常流量檢測效果,現(xiàn)選取2個指標在上述實驗環(huán)境下利用三種方法進行檢測。
指標分別為召回率以及F1值,召回率是指每組樣本中被正確檢測出來的異常流量占異常樣本的比值,其計算公式為:

(17)
式中,TP代表正確檢測的樣本數(shù)量,F(xiàn)N代表被錯誤檢測出的樣本數(shù)量。
F1值的計算公式為

(18)
式中,P代表檢測精度。
根據(jù)以上計算公式得出三種方法的召回率以及F1值,其結(jié)果如圖2和圖3所示。

圖2 三種方法的召回率
根據(jù)圖2和圖3中的實驗結(jié)果可知,本文方法的召回率以及F1值均高于殘差分析方法和深度特征學(xué)習(xí)方法,說明本文方法的異常流量檢測效果更好。

圖3 不同方法的F1值
云計算可容納海量數(shù)據(jù),可保證計算機數(shù)據(jù)庫的完整,但網(wǎng)絡(luò)流量在運行過程中的運算資源以及網(wǎng)絡(luò)資源較大,為防止流量異常造成的網(wǎng)絡(luò)擁堵或網(wǎng)絡(luò)崩潰的情況,提出面向云計算的大規(guī)模網(wǎng)絡(luò)流量異常檢測方法,該方法首先對網(wǎng)絡(luò)流量數(shù)據(jù)進行分組,在此基礎(chǔ)上,利用NMF異常流量檢測算法對大規(guī)模網(wǎng)絡(luò)流量進行異常檢測。解決了異常流量檢測效果不佳的問題,避免因為聚類融合導(dǎo)致的同一流量無法區(qū)分情況的產(chǎn)生,提升了網(wǎng)絡(luò)異常流量檢測的精度與效果。