• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      網(wǎng)絡(luò)數(shù)據(jù)流異常檢測研究*

      2019-01-23 11:49:38高仲合王來花
      通信技術(shù) 2019年1期
      關(guān)鍵詞:網(wǎng)絡(luò)流量數(shù)據(jù)流算法

      楊 姣,高仲合,王來花

      (曲阜師范大學(xué) 軟件學(xué)院,山東 曲阜 273100)

      0 引 言

      隨著網(wǎng)絡(luò)時代的到來、科技的不斷發(fā)展以及數(shù)據(jù)每時每刻的不斷產(chǎn)生,使得對數(shù)據(jù)的挖掘分析變得尤為重要。面對如此數(shù)量巨大和不斷變化的數(shù)據(jù),原來對于靜態(tài)數(shù)據(jù)異常檢測的算法已經(jīng)不再適用于動態(tài)數(shù)據(jù)流。因此,網(wǎng)絡(luò)數(shù)據(jù)流的異常檢測技術(shù)要結(jié)合網(wǎng)絡(luò)數(shù)據(jù)流的特點,實現(xiàn)對流式數(shù)據(jù)的異常檢測[1]。雖然中內(nèi)外很多專家對異常檢測做了研究,但是目前的檢測系統(tǒng)還不能簡單推廣用于面向大規(guī)模網(wǎng)絡(luò)的數(shù)據(jù)流異常檢測。所以,有學(xué)者提出將數(shù)據(jù)挖掘算法應(yīng)用到數(shù)據(jù)流異常檢測中。雖然這樣已經(jīng)達(dá)到了較好的效果,但因為網(wǎng)絡(luò)數(shù)據(jù)流具有數(shù)據(jù)量大、時間連續(xù)、無限不可知、到達(dá)快速、隨時間改變的特性[2],所以不可能對每一秒鐘產(chǎn)生的新數(shù)據(jù)都及時存儲和處理,會導(dǎo)致新的數(shù)據(jù)不斷產(chǎn)生且不斷覆蓋舊的數(shù)據(jù),每次處理的僅僅是新數(shù)據(jù),舊數(shù)據(jù)則將被全部遺漏,成為當(dāng)前數(shù)據(jù)挖掘用于網(wǎng)絡(luò)數(shù)據(jù)流檢測需要解決的問題。面對網(wǎng)絡(luò)流量實時數(shù)據(jù)規(guī)模不斷擴(kuò)張的趨勢,如何使用有限的存儲空間和較好的時間復(fù)雜度,快速處理這些流式數(shù)據(jù),并及時獲取有用信息,實現(xiàn)對數(shù)據(jù)流異常情況的及時監(jiān)測,是解決大數(shù)據(jù)環(huán)境下實時處理數(shù)據(jù)的時效性問題的關(guān)鍵。

      1 網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法

      網(wǎng)絡(luò)流量數(shù)據(jù)采集于實際的網(wǎng)絡(luò)流量,反映了網(wǎng)絡(luò)流量在時間上的特征,并且是按時間的先后順序形成的序列,也就是典型的時間連續(xù)序列[2]。因此,可以將時間序列分析用在研究網(wǎng)絡(luò)數(shù)據(jù)流的異常流量檢測問題上。目前,學(xué)者大多采用靜態(tài)閾值進(jìn)行監(jiān)測。這個方法易懂也易于實現(xiàn),但是并不適合不斷變化的動態(tài)數(shù)據(jù)流,且不能保證能夠每一秒鐘產(chǎn)生的數(shù)據(jù)都可以采集到,從而不能獲得高的實用性。為此,本文提出一種基于DT-KNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測方法。這是因為網(wǎng)絡(luò)流量是典型的時間序列,將網(wǎng)絡(luò)數(shù)據(jù)流異常檢測用時間序列的分析表示出來,能夠成功解決動態(tài)數(shù)據(jù)流的諸多問題。

      在網(wǎng)絡(luò)流量時間序列分析中,通過均值表示一組數(shù)據(jù)的集中趨勢,通過方差表示一組數(shù)據(jù)的波動[3]。在一段時間序列中,用兩個采集值的差值表示這一條鏈路流量值的平均距離(Mean Distance),平均距離表示這網(wǎng)絡(luò)流量段時間序列的距離集中趨勢,可以作為檢測的基準(zhǔn)。平均距離的計算公式如下:

      式中,v1,v2…,vn為鏈路流量值集合。

      根據(jù)平均距離的概念,本文提出累計距離(Cumulative Distance),并將其應(yīng)用在KNN算法中,最終得到DT-KNN算法。累計距離反映了待檢測點的變化趨勢,具體計算

      公式如下:

      式中,x1,x2…,xk為未貼標(biāo)簽點的k個最近鄰點的集合;vx1,vx2…,vxk是每個時間點對應(yīng)的數(shù)據(jù)流值的集合,根據(jù)距離的遠(yuǎn)近給與不同的權(quán)值;w1,w2…,wk為每個時間點所對應(yīng)的數(shù)據(jù)流的權(quán)值集合。其中,式中計算了距離未知類型點最近的k個做鄰居點的數(shù)值。結(jié)合K-NN相關(guān)理論及計算過程,給出基于DT-KNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法流程,如圖1所示。

      圖1 基于DT-KNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法流程

      2 在Storm平臺上的實現(xiàn)方案

      結(jié)合基于DT-KNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法流程,選擇Storm平臺作為處理平臺,對基于DTKNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法進(jìn)行實現(xiàn),關(guān)鍵是給出DT-KNN算法在Storm平臺上的拓?fù)浞桨浮?/p>

      2.1 Storm概述

      Storm是一個免費開源的分布式實時處理平臺,提供了一個簡單、可靠的連續(xù)流數(shù)據(jù)處理環(huán)境[4],主要利用“spouts”和“bolts”的組建來定義和操作信息源。由于Storm能夠提供一個簡單可行、安全可靠的連續(xù)數(shù)據(jù)流處理環(huán)境,并且能夠?qū)?shù)據(jù)流進(jìn)行分布式處理[5],因此本文選擇Storm作為基于DT-KNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法的實現(xiàn)平臺。Storm的工作原理如圖2所示。

      圖2 Storm集群工作原理

      2.2 DT-KNN算法在Storm平臺上的拓?fù)鋱D

      DT-KNN算法在Storm平臺上的拓?fù)淙鐖D3所示。

      圖3 DT-KNN算法在Storm平臺上的拓?fù)?/p>

      從圖3可以看出,基于DT-KNN的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法主要通過Spout在Storm平臺上實現(xiàn)數(shù)據(jù)處理[6]。Spout A接收初始化數(shù)據(jù),Spout B將接收到的數(shù)據(jù)存儲在KAFKA中,Spout C接收時間計算,Spout D接收初始化參數(shù),Spout E將KAFKA接收到的數(shù)據(jù)進(jìn)行查詢[7]。最終,Spout B和Spout C被發(fā)送到本地節(jié)點。Local Bolt是一個分布式部分,到達(dá)的數(shù)據(jù)均勻分布到每個Local Bolt線程;Spout A和Spout B被發(fā)送到DT-KNN Blot,DT-KNN Bolt使用從Spout A和Spout D發(fā)送的初始化數(shù)據(jù)和參數(shù)初始化全局微集群[8]。DT-KNN Bolt通過初始化數(shù)據(jù)和參數(shù)初始化全局微集群由Spout A和Spout D傳輸。在Spout C發(fā)送時間信息后,Global Bolt開始從Redis中提取數(shù)據(jù),并逐步合并全局微集群的結(jié)果,實現(xiàn)全球微集群的增量更新。Macro Clustering BoltBolt從Spout E接收用戶查詢參數(shù),對Global Bolt中的全局結(jié)果執(zhí)行聚類查詢,并將查詢結(jié)果發(fā)送到 Print Bolt。

      3 算法實驗與結(jié)果分析

      3.1 實驗設(shè)計

      實驗選擇KDD CUP99數(shù)據(jù)集作為實驗數(shù)據(jù)。這個數(shù)據(jù)集包含兩類,一類是普通數(shù)據(jù),另一類是攻擊數(shù)據(jù)。共有311 029條數(shù)據(jù)記錄,每個數(shù)據(jù)包含41維屬性,包括34維連續(xù)屬性和7維離散屬性[9]。所有的實驗數(shù)據(jù)都進(jìn)行了歸一化處理。

      實驗使用的仿真工具是MATLAB,硬件環(huán)境是4.0 GHz的PC,操作系統(tǒng)為Windows 7。

      3.2 實驗結(jié)果分析

      3.2.1 判斷指標(biāo)

      運算速度和精度是網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法性能衡量的主要指標(biāo)。其中,精確度是指檢測出來的網(wǎng)絡(luò)數(shù)據(jù)流異常點占實際異常點的比例,即:

      式中,s為算法運行過程中檢測到的真正異常點個數(shù);|o|為算法運行過程中檢測到的疑似異常點個數(shù)。

      3.2.2 準(zhǔn)確性測試

      在網(wǎng)絡(luò)數(shù)據(jù)流異常檢測算法的準(zhǔn)確性測試中,采用檢測率和誤報率作為衡量標(biāo)準(zhǔn),采用KNN算法和DT-KNN算法對同一類型攻擊和對未知類型攻擊的檢測能力進(jìn)行試驗分析。

      (1)對同一類型攻擊的檢測實驗

      按照2∶1的比例將數(shù)據(jù)分為訓(xùn)練數(shù)據(jù)集與測試數(shù)據(jù)集,測試集與訓(xùn)練集均包含所有攻擊類型。測試集的數(shù)據(jù)不分組,直接進(jìn)行測試,攻擊類型占總測試數(shù)據(jù)的9%;訓(xùn)練集中數(shù)據(jù)分為4組,每組攻擊類型只有一種,占該組數(shù)據(jù)的2%。實驗結(jié)果如圖4所示。

      圖4 DT-KNN算法和KNN算法的檢測率與誤報率

      從圖4可以看出,與KNN算法相比,在檢測率與誤報率方面DT-KNN算法具有明顯優(yōu)勢,由此可以驗證DT-KNN算法在網(wǎng)絡(luò)數(shù)據(jù)流異常檢測中的準(zhǔn)確性。

      (2)對未知攻擊的檢測實驗

      訓(xùn)練集中分為訓(xùn)練集A和訓(xùn)練集B,測試集包含主要攻擊類型是DoS攻擊。首先,訓(xùn)練集A用于生成分類模型,訓(xùn)練集B用于更新分類模型,最后使用測試集進(jìn)行測試[10]。實驗結(jié)果如圖5所示。

      圖5 未知攻擊檢測結(jié)果

      由圖5可以看出,DT-KNN算法在檢測率、誤報率與對未知數(shù)據(jù)的檢測率方面都優(yōu)于KNN算法,驗證了DT-KNN算法在網(wǎng)絡(luò)數(shù)據(jù)流異常檢測中的準(zhǔn)確性。

      對同一類型攻擊的檢測實驗和對未知攻擊的檢測實驗結(jié)果可以看出,相比于KNN算法,DT-KNN算法都具有更好的網(wǎng)絡(luò)數(shù)據(jù)流異常檢測效果:DTKNN算法的時效性明顯高于KNN算法;隨著網(wǎng)絡(luò)數(shù)據(jù)量的增加,KNN算法運行時間的增加幅度明顯高于DT-KNN算法。由此可以得出結(jié)論,DT-KNN算法在網(wǎng)絡(luò)數(shù)據(jù)流異常檢測中具有比KNN算法更高的時效性。

      4 結(jié) 語

      網(wǎng)絡(luò)數(shù)據(jù)流具有數(shù)據(jù)量大、時間連續(xù)、無限不可知、到達(dá)快速、隨時間改變的特性[11]。結(jié)合這些特征,將累計距離的概念引入KNN算法,提出采用DT-KNN算法對網(wǎng)絡(luò)數(shù)據(jù)流進(jìn)行分析,用以預(yù)測待檢測點的變化趨勢,最終給出DT-KNN算法在Storm平臺上的拓?fù)鋱D。通過MATLAB軟件仿真分析可知,相比KNN算法,DT-KNN算法具有更高的準(zhǔn)確率和更好的時效性,在網(wǎng)絡(luò)數(shù)據(jù)流異常檢測中具有一定的應(yīng)用價值。

      猜你喜歡
      網(wǎng)絡(luò)流量數(shù)據(jù)流算法
      基于多元高斯分布的網(wǎng)絡(luò)流量異常識別方法
      基于神經(jīng)網(wǎng)絡(luò)的P2P流量識別方法
      汽車維修數(shù)據(jù)流基礎(chǔ)(下)
      基于MapReduce的改進(jìn)Eclat算法
      Travellng thg World Full—time for Rree
      進(jìn)位加法的兩種算法
      一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機(jī)制
      AVB網(wǎng)絡(luò)流量整形幀模型端到端延遲計算
      一種改進(jìn)的整周模糊度去相關(guān)算法
      基于數(shù)據(jù)流聚類的多目標(biāo)跟蹤算法
      邵武市| 武胜县| 嘉定区| 灵寿县| 金乡县| 宾川县| 葫芦岛市| 怀集县| 中山市| 双桥区| 伊通| 郁南县| 梅州市| 普宁市| 乾安县| 龙川县| 京山县| 百色市| 锡林浩特市| 随州市| 许昌县| 灌南县| 禹城市| 永新县| 南城县| 淄博市| 资兴市| 建平县| 新昌县| 长丰县| 林口县| 阿拉善盟| 锡林郭勒盟| 湖南省| 德令哈市| 会泽县| 新龙县| 辉县市| 奈曼旗| 布尔津县| 梓潼县|