肖軍弼 魏嬌嬌
(中國(guó)石油大學(xué)(華東)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 青島 266580)
近年來(lái),隨著Internet 網(wǎng)絡(luò)結(jié)構(gòu)不斷復(fù)雜化發(fā)展,以及各種網(wǎng)絡(luò)設(shè)備類型不斷涌現(xiàn),網(wǎng)絡(luò)用戶的規(guī)模也在不斷提高,這使得網(wǎng)絡(luò)流量數(shù)據(jù)急劇增加,同時(shí)對(duì)網(wǎng)絡(luò)的有效管理、負(fù)荷評(píng)估和安全預(yù)警帶來(lái)了新的挑戰(zhàn)[1]。在傳統(tǒng)方法下網(wǎng)絡(luò)流量特征被描述為線性相關(guān)的,然而,在現(xiàn)代網(wǎng)絡(luò)環(huán)境下的網(wǎng)絡(luò)流量呈現(xiàn)出多種復(fù)雜的非線性特征,如具有長(zhǎng)相關(guān)性、自相似性、時(shí)變性、突發(fā)性、混沌性等特點(diǎn)[2]。面對(duì)如此復(fù)雜的網(wǎng)絡(luò)環(huán)境,開(kāi)展網(wǎng)絡(luò)流量分析研究具有重要意義。
網(wǎng)絡(luò)流量特性分析是進(jìn)行網(wǎng)絡(luò)流量分類及預(yù)測(cè)研究的前提與關(guān)鍵,分析出網(wǎng)絡(luò)流量所具備的特性,根據(jù)其特性的變化規(guī)律,選擇出一種計(jì)算量相對(duì)較小、結(jié)構(gòu)簡(jiǎn)單的分類與預(yù)測(cè)模型。
通過(guò)網(wǎng)絡(luò)流量分類研究,網(wǎng)絡(luò)監(jiān)管部門對(duì)正常流量和惡意流量進(jìn)行準(zhǔn)確、及時(shí)的分類識(shí)別,可以有效避免惡意流量對(duì)用戶帶來(lái)的干擾和損失[3]。同時(shí),網(wǎng)絡(luò)流量分類與識(shí)別在病毒入侵檢測(cè)、訪問(wèn)認(rèn)證授權(quán)等方面也發(fā)揮著重要作用[4]。在網(wǎng)絡(luò)流量分類研究中,傳統(tǒng)的基于特定規(guī)則的分類方法隨著網(wǎng)絡(luò)流量數(shù)據(jù)規(guī)模越來(lái)越大,流量組成越來(lái)越復(fù)雜,已經(jīng)不能滿足當(dāng)今的網(wǎng)絡(luò)流量分類需求,基于數(shù)據(jù)挖掘的網(wǎng)絡(luò)流量分類方法[5~6]已經(jīng)成為目前的研究熱點(diǎn)之一,如許多學(xué)者采用有監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法,例如利用樸素貝葉斯(Na?ve Bayes,NB)[7]、支持向量機(jī)(Support Vector Machine,SVM)[8-9]、決策樹(shù)(Decision Tree)[10]、神經(jīng)網(wǎng)絡(luò)(Neural Network,NN)[11~13]等算法進(jìn)行網(wǎng)絡(luò)流量分類研究,還有學(xué)者將KNN[14~16]、K-means[14,17~18]、隱馬爾科夫算法(Hidden Markov Model,HMM)[19]等無(wú)監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量預(yù)測(cè)方法應(yīng)用于網(wǎng)絡(luò)流量分類,此外,還有學(xué)者提出了使用基于高斯混合模型(Gaussian Mixed Model,GMM)[20]、基于半監(jiān)督支持向量機(jī)(Semi-Supervised Support Vector Machine,S3VM)[21]等基于半監(jiān)督學(xué)習(xí)的分類方法[22]。
通過(guò)開(kāi)展網(wǎng)絡(luò)流量預(yù)測(cè)研究,網(wǎng)絡(luò)管理者可以實(shí)時(shí)掌握網(wǎng)絡(luò)運(yùn)行時(shí)的狀態(tài),優(yōu)化網(wǎng)絡(luò)資源分配,檢測(cè)潛在的網(wǎng)絡(luò)威脅與故障,以便提前采取措施進(jìn)行干預(yù)[23~24]。隨著網(wǎng)絡(luò)流量特性愈發(fā)復(fù)雜,傳統(tǒng)的線性模型難以準(zhǔn)確地進(jìn)行預(yù)測(cè)。近年來(lái),許多學(xué)者和研究者開(kāi)始將數(shù)據(jù)挖掘技術(shù)如支持向量機(jī)(SVM)[25]、神經(jīng)網(wǎng)絡(luò)(NN)[26~28]、長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)[29~30]、梯度提升樹(shù)(Gradient Boosting Decision Tree,GBDT)[31]、決策樹(shù)(Decision Tree)[32~33]、灰色模型(Grey Models,GM)[34]等與網(wǎng)絡(luò)流量預(yù)測(cè)研究相結(jié)合,并通過(guò)實(shí)驗(yàn)證明這些算法能夠有效提高預(yù)測(cè)精確度。
1)自相似性
網(wǎng)絡(luò)流量的自相似特性[35]是指網(wǎng)絡(luò)流量時(shí)間序列在時(shí)間維度上表現(xiàn)出在不同時(shí)間尺度下具有相同或者相似的統(tǒng)計(jì)特征。以下是該特性的統(tǒng)計(jì)學(xué)方法描述。
假設(shè)一個(gè)隨機(jī)過(guò)程X(t) ,t∈R,對(duì)于所有a>0 均滿足式(1),則稱X(t)是自相似系數(shù)為H的自相似過(guò)程。
其中,a表示隨機(jī)過(guò)程的時(shí)間尺度變化,為漸進(jìn)同分布,H為自相似Hurst參數(shù)。網(wǎng)絡(luò)流量的自相似程度可根據(jù)參數(shù)H值來(lái)描述,H值的具體取值范圍是[0 ,1] ,其大小反映了網(wǎng)絡(luò)流量自相似性的強(qiáng)弱程度[12]。當(dāng)0 <H<0.5 時(shí),表明該流量序列有較弱的自相似性。當(dāng)0.5 <H<1 時(shí),表明該流量序列有明顯的自相似性,且越接近1,該流量序列的自相似性就越強(qiáng)。因此,可以通過(guò)計(jì)算網(wǎng)絡(luò)流量時(shí)間序列的Hurst值來(lái)判斷該序列是否具有自相似性以及強(qiáng)弱程度。
2)長(zhǎng)相關(guān)性
網(wǎng)絡(luò)流量的長(zhǎng)相關(guān)性[36]是指某一時(shí)刻的網(wǎng)絡(luò)流量值與此時(shí)刻之前的所有時(shí)刻的網(wǎng)絡(luò)流量值之間具有一定的關(guān)聯(lián)性。以下是該特性的統(tǒng)計(jì)學(xué)方法描述。
如果隨機(jī)過(guò)程X=Xt,t=1,2,…,n的自相關(guān)函數(shù)x(k)滿足以下公式,則稱該隨機(jī)過(guò)程具有長(zhǎng)相關(guān)性。
其中,x(k)是自相關(guān)函數(shù),ρk是自協(xié)方差函數(shù),E(X)是均值函數(shù)。
3)突發(fā)性
網(wǎng)絡(luò)流量數(shù)據(jù)的突發(fā)性[37]是指網(wǎng)絡(luò)流量在某一時(shí)刻急劇上升或下降,網(wǎng)絡(luò)流量產(chǎn)生突變性的原因主要是某一時(shí)刻用戶行為的頻繁變化和網(wǎng)絡(luò)設(shè)備的急劇增多引起的,比如大量用戶在同一時(shí)刻訪問(wèn)相同的網(wǎng)站、某一時(shí)刻同時(shí)接入大量網(wǎng)絡(luò)設(shè)備等。
4)周期性
網(wǎng)絡(luò)流量的周期性[38]是指在一定時(shí)間范圍內(nèi)的不同時(shí)間區(qū)間里流量具有相似甚至相同的變化趨勢(shì),并且這種趨勢(shì)會(huì)反復(fù)出現(xiàn)。在網(wǎng)絡(luò)管理過(guò)程中,可以根據(jù)網(wǎng)絡(luò)流量的周期規(guī)律規(guī)劃網(wǎng)絡(luò)資源使用情況,提高管理效率。
5)混沌性
網(wǎng)絡(luò)流量的混沌性[39]是一種類似無(wú)規(guī)則的、隨機(jī)的現(xiàn)象,既包含有序序列,又包含無(wú)序序列。即網(wǎng)絡(luò)流量數(shù)據(jù)實(shí)際上是混雜著低維混沌噪聲數(shù)據(jù)的時(shí)序序列。
網(wǎng)絡(luò)流量的特性決定了其行為表現(xiàn),準(zhǔn)確地分析其特性有助于構(gòu)造合適的分類與預(yù)測(cè)模型,進(jìn)一步獲得準(zhǔn)確的分析結(jié)果。所以十分有必要在開(kāi)展流量分析之前,先分析一下流量的基本特點(diǎn)。表1給出了主要的網(wǎng)絡(luò)流量的特性分析方法的優(yōu)缺點(diǎn)及適用范圍。
表1 網(wǎng)絡(luò)流量特性分析方法及其特性
定義TP(True Positive)表示正確分類的真例數(shù)量、TN(True Negative)表示正確分類的假例數(shù)量、FN(False Negative)表示錯(cuò)誤分類的假例數(shù)量、FP(False Positive)表示錯(cuò)誤分類的真例數(shù)量。
1)召回率(Recall)。召回率是TP占實(shí)際真例總數(shù)的百分比,其定義如下:
2)精確度(Precision)。精確度是TP占分類為真例個(gè)數(shù)的百分比,其定義如下:
3)F 值(F-Measure)。F-Measure 是精確度、召回率的調(diào)和平均數(shù),結(jié)合了兩者的評(píng)價(jià)標(biāo)準(zhǔn),其定義如下:
4)準(zhǔn)確率(Accuracy)。網(wǎng)絡(luò)流量分類方法的準(zhǔn)確率計(jì)算方式如下:
傳統(tǒng)的網(wǎng)絡(luò)流量分類研究通常采用基于特定規(guī)則的方法,比如基于端口的分類方法[40~41]與基于深度包檢測(cè)[42~43]的分類方法。這類方法的特點(diǎn)是由人工制定規(guī)則,并且將規(guī)則進(jìn)行硬編碼,通過(guò)匹配硬編碼的固定規(guī)則劃分出網(wǎng)絡(luò)流量類別。然而由于流量劇增及特性日益復(fù)雜化使得這類方法不再適用于當(dāng)前的網(wǎng)絡(luò)流量分類研究。
3.3.1 有監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法
有監(jiān)督學(xué)習(xí)是指訓(xùn)練有輸入有輸出的樣本。表2 給出了主要的基于有監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法及其特性。
表2 有監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法及其特性
3.3.2 無(wú)監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法
基于無(wú)監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類算法是通過(guò)聚類的形式來(lái)劃分?jǐn)?shù)據(jù)集包含的所屬類,通過(guò)某種方法,在學(xué)習(xí)過(guò)程中會(huì)將特征相似的樣本歸為一類。此類算法的優(yōu)點(diǎn)是具有發(fā)現(xiàn)新型網(wǎng)絡(luò)應(yīng)用的能力。主要的基于無(wú)監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法如下。
1)KNN 算法[14~16]。該算法理解簡(jiǎn)單,且模型的訓(xùn)練時(shí)間短。但是在進(jìn)行網(wǎng)絡(luò)流量分類時(shí),需要計(jì)算測(cè)試集與訓(xùn)練集內(nèi)部數(shù)據(jù)之間的相似度,計(jì)算成本高,并且在訓(xùn)練過(guò)程易受到噪聲數(shù)據(jù)的影響。此外,由于該算法對(duì)所有的訓(xùn)練數(shù)據(jù)進(jìn)行保存,導(dǎo)致內(nèi)存占用大。
2)K-means 算法[14,17~18]。該算法的優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單、容易理解,并且當(dāng)密集數(shù)據(jù)的類與類之間的區(qū)別明顯時(shí),能夠得到很好的分類效果。但是K-means 算法中初始均值向量K 的選定是難以估計(jì)的,算法的計(jì)算時(shí)間長(zhǎng),當(dāng)K 值選擇不當(dāng)時(shí)會(huì)產(chǎn)生很大誤差,并且對(duì)異常數(shù)據(jù)在計(jì)算質(zhì)心的過(guò)程中,會(huì)對(duì)結(jié)果產(chǎn)生很大的影響,容易陷入局部最優(yōu)。
3)隱馬爾科夫(Hidden Markov Model,HMM)聚類算法[19]。該算法是一種時(shí)序相關(guān)的概率模型,首先基于隱馬爾科夫鏈生成一個(gè)不可觀測(cè)的狀態(tài)序列,然后根據(jù)狀態(tài)序列生成預(yù)測(cè)結(jié)果。但該模型在進(jìn)行網(wǎng)絡(luò)流量分類的應(yīng)用過(guò)程中具有一定缺陷,按照HMM 算法的假設(shè),該模型不能記憶上下文信息,因此分類結(jié)果只與其前一個(gè)狀態(tài)信息關(guān)聯(lián),若想利用更多的已知信息,必須建立高階HMM模型,然而高階模型會(huì)導(dǎo)致算法的復(fù)雜度較高。
3.3.3 半監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)流量分類方法
基于半監(jiān)督學(xué)習(xí)的分類方法中,訓(xùn)練數(shù)據(jù)由大量未標(biāo)記數(shù)據(jù)和少量已標(biāo)記數(shù)據(jù)構(gòu)成,訓(xùn)練過(guò)程結(jié)合了有監(jiān)督學(xué)習(xí)與無(wú)監(jiān)督學(xué)習(xí)的思想。半監(jiān)督學(xué)習(xí)分類方法的優(yōu)點(diǎn)是訓(xùn)練方法對(duì)已標(biāo)記的數(shù)據(jù)的依賴程度較低。目前也有研究將這種方法應(yīng)用于網(wǎng)絡(luò)流量分類研究,比如:
1)基于高斯混合模型(Gaussian Mixed Model,GMM)的半監(jiān)督分類算法[20]。該方法的優(yōu)點(diǎn)是可以很好地描述時(shí)序數(shù)據(jù)的特征,通過(guò)收斂準(zhǔn)則逐步迭代可以更好地?cái)M合數(shù)據(jù)。但是該方法往往只能收斂于局部最優(yōu)。
2)基于半監(jiān)督支持向量機(jī)(Semi-Supervised Support Vector Machine,S3VM)的半監(jiān)督分類算法[21]。該方法是利用了結(jié)構(gòu)風(fēng)險(xiǎn)最小化計(jì)算方法進(jìn)行網(wǎng)絡(luò)流量分類,S3VM 假設(shè)決策超平面與無(wú)標(biāo)簽數(shù)據(jù)的空間分布信息的分布情況一致,然而如果實(shí)際情況不滿足此假設(shè),構(gòu)造的決策超平面會(huì)產(chǎn)生較大誤差,最終導(dǎo)致性能變差。
1)均方根誤差(Root Mean Square Error,RMSE)。該值反映出流量預(yù)測(cè)值與真實(shí)值之間的距離,用于評(píng)價(jià)網(wǎng)絡(luò)流量數(shù)據(jù)的變化程度,如果該值越小,說(shuō)明當(dāng)前的網(wǎng)絡(luò)流量預(yù)測(cè)模型性能越優(yōu)。RMSE 對(duì)異常大或者異常小的預(yù)測(cè)誤差尤其敏感,這使其可以較好地反映預(yù)測(cè)精度。該評(píng)價(jià)指標(biāo)的計(jì)算方法如式(9)所示:
其中,表示流量預(yù)測(cè)值,yj表流量實(shí)際值,n代表評(píng)估的數(shù)據(jù)總量。
2)測(cè)定系數(shù)(R-Squared,R2)。該值反映的是預(yù)測(cè)的準(zhǔn)確率,取值范圍是0~1,該值越大,說(shuō)明當(dāng)前的網(wǎng)絡(luò)流量預(yù)測(cè)值的準(zhǔn)確率越高。計(jì)算公式如式(10)所示:
3)模型的訓(xùn)練時(shí)間。在對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行預(yù)測(cè)的研究中,機(jī)器學(xué)習(xí)模型需要使用大量資源來(lái)建模,因此,在進(jìn)行模型訓(xùn)練的過(guò)程中,需要考慮計(jì)算成本,而模型的訓(xùn)練時(shí)間在模型的計(jì)算成本中占據(jù)重要影響。
4)平均絕對(duì)百分比誤差(Mean Absolute Percentage Error,MAPE)。該值是統(tǒng)計(jì)上常用于評(píng)估模型預(yù)測(cè)精確度的一個(gè)指標(biāo),該值越小,則表明預(yù)測(cè)的結(jié)果就越好。計(jì)算公式如式(11)所示:
其中,表示流量預(yù)測(cè)值,yj表流量實(shí)際值,n代表評(píng)估的數(shù)據(jù)總量。
5)準(zhǔn)確率Accuracy。計(jì)算公式如式(12)所示:
其中,X表示真實(shí)流量矩陣,表示預(yù)測(cè)流量矩陣。
表3 給出了主要的單個(gè)網(wǎng)絡(luò)流量預(yù)測(cè)模型的特性及其適用場(chǎng)景。
表3 流量預(yù)測(cè)模型特性
隨著網(wǎng)絡(luò)復(fù)雜化,應(yīng)用多樣化,網(wǎng)絡(luò)流量的非線性特征愈發(fā)明顯,網(wǎng)絡(luò)流量序列的長(zhǎng)相關(guān)性、周期性、突發(fā)性等特點(diǎn)使得單一的網(wǎng)絡(luò)流量預(yù)測(cè)模型難以準(zhǔn)確地進(jìn)行預(yù)測(cè)。研究者開(kāi)始將多種分析方法與網(wǎng)絡(luò)流量預(yù)測(cè)模型相結(jié)合,并且通過(guò)實(shí)驗(yàn)證明組合預(yù)測(cè)模型能夠有效提高預(yù)測(cè)精確度,有著良好的擬合與預(yù)測(cè)效果。例如文獻(xiàn)[44]提出基于SVM進(jìn)行預(yù)測(cè),結(jié)合遺傳算法進(jìn)行優(yōu)化,結(jié)果發(fā)現(xiàn)在流量預(yù)測(cè)方面整體性能較優(yōu),且具有較高的精度。文獻(xiàn)[45]提出布谷鳥(niǎo)搜索算法與支持向量機(jī)算法相結(jié)合的網(wǎng)絡(luò)流量預(yù)測(cè)模型(MCS-SVR 模型),并且在同一個(gè)數(shù)據(jù)集上分別與利用遺傳算法和粒子群算法優(yōu)化的SVM 算法做對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明MCS-SVR 模型提高了網(wǎng)絡(luò)流量預(yù)測(cè)精度。文獻(xiàn)[46]提出一種基于深度置信網(wǎng)絡(luò)的預(yù)測(cè)算法,同時(shí)融入無(wú)監(jiān)督學(xué)習(xí)的自動(dòng)編碼器AE,實(shí)驗(yàn)結(jié)果表明,該算法具有較好的預(yù)測(cè)性能。文獻(xiàn)[47]提出使用灰狼算法優(yōu)化支持向量機(jī)算法的參數(shù)并結(jié)合LSTM算法來(lái)建立網(wǎng)絡(luò)流量預(yù)測(cè)模型,通過(guò)實(shí)驗(yàn)證明該混合模型能夠有效處理非線性序列預(yù)測(cè)問(wèn)題,并且具有很強(qiáng)的容錯(cuò)能力,預(yù)測(cè)精度較高。文獻(xiàn)[48]提出一種殘差卷積和循環(huán)神經(jīng)網(wǎng)絡(luò)相結(jié)合的無(wú)線網(wǎng)絡(luò)流量預(yù)測(cè)模型,該模型能夠精確提取網(wǎng)絡(luò)流量數(shù)據(jù)的時(shí)空特性,實(shí)現(xiàn)了對(duì)流量的有效預(yù)測(cè),并且設(shè)置了流量監(jiān)控異常報(bào)警機(jī)制,加強(qiáng)了網(wǎng)絡(luò)流量的管理與規(guī)劃。文獻(xiàn)[49]提出一種圖卷積神經(jīng)網(wǎng)絡(luò)結(jié)合門控循環(huán)神經(jīng)網(wǎng)絡(luò)的混合流量預(yù)測(cè)模型,該模型基于圖卷積層來(lái)提取SDN流量復(fù)雜的空間相關(guān)性,通過(guò)門控循環(huán)單元來(lái)提取SDN 網(wǎng)絡(luò)流量的時(shí)間相關(guān)性,將空時(shí)關(guān)系相結(jié)合來(lái)進(jìn)行SDN 網(wǎng)絡(luò)流量預(yù)測(cè),并且通過(guò)實(shí)驗(yàn)證明了該混合模型具有良好的性能。
本文從網(wǎng)絡(luò)流量特性分析、網(wǎng)絡(luò)流量分類、網(wǎng)絡(luò)流量預(yù)測(cè)三個(gè)方面分析了網(wǎng)絡(luò)流量分析的研究現(xiàn)狀,介紹了當(dāng)前網(wǎng)絡(luò)流量分析的研究?jī)?nèi)容,總結(jié)了近幾年常用于網(wǎng)絡(luò)流量分類和網(wǎng)絡(luò)流量預(yù)測(cè)的數(shù)據(jù)挖掘方法。明確了高效的網(wǎng)絡(luò)流量分析研究具有重要意義:有助于對(duì)網(wǎng)絡(luò)進(jìn)行更好的規(guī)劃和優(yōu)化,實(shí)現(xiàn)網(wǎng)絡(luò)問(wèn)題的提前預(yù)警,保證網(wǎng)絡(luò)系統(tǒng)安全、穩(wěn)定運(yùn)行。但是在現(xiàn)有的網(wǎng)絡(luò)流量分析的研究中,也存在一些有待解決的問(wèn)題,如在對(duì)原始網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行預(yù)處理時(shí),預(yù)處理的結(jié)果會(huì)直接影響到模型的預(yù)測(cè)性能;使用特定的算法進(jìn)行網(wǎng)絡(luò)流量特征提取時(shí),若模型結(jié)構(gòu)的復(fù)雜度較高及模型參數(shù)的選擇不當(dāng),會(huì)導(dǎo)致較高的成本問(wèn)題。在未來(lái)的研究中,建立結(jié)構(gòu)復(fù)雜度相對(duì)較低、計(jì)算量較小的分類與預(yù)測(cè)模型,同時(shí)將所提出的模型實(shí)際應(yīng)用于現(xiàn)實(shí)場(chǎng)景中是網(wǎng)絡(luò)流量分析預(yù)測(cè)研究中需要進(jìn)一步考慮的問(wèn)題。