国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Spark的電網(wǎng)工控系統(tǒng)流量異常檢測(cè)平臺(tái)①

2019-08-22 02:30張艷升李喜旺李錦程
關(guān)鍵詞:工控卷積預(yù)警

張艷升, 李喜旺, 李錦程

1(中國(guó)科學(xué)院 沈陽(yáng)計(jì)算技術(shù)研究所,沈陽(yáng) 110168)

2(中國(guó)科學(xué)院大學(xué),北京 100049)

3(國(guó)網(wǎng)遼寧省電力有限公司,沈陽(yáng) 110004)

兩化融合的力度深度加強(qiáng),在電網(wǎng)領(lǐng)域越來(lái)越多地應(yīng)用的信息技術(shù). 工業(yè)控制系統(tǒng)已廣泛應(yīng)用于電力工業(yè)領(lǐng)域. 其中,在電網(wǎng)領(lǐng)域很大一部分的基礎(chǔ)設(shè)施需要依靠工業(yè)控制系統(tǒng)來(lái)實(shí)現(xiàn)自動(dòng)化作業(yè). 電網(wǎng)工控系統(tǒng)通常情況下采用通用的軟硬件和網(wǎng)絡(luò)設(shè)施,并越來(lái)越廣泛地與企業(yè)網(wǎng)和互聯(lián)網(wǎng)等集成,形成了開(kāi)放的網(wǎng)絡(luò)環(huán)境. 由于傳統(tǒng)電網(wǎng)控制系統(tǒng)是基于物理隔離的,主要關(guān)注系統(tǒng)的功能安全,缺乏對(duì)網(wǎng)絡(luò)信息安全的考慮,沒(méi)有專門(mén)的安全防御措施. 例如,2010年震撼全球的“震網(wǎng)”病毒事件,專門(mén)攻擊工業(yè)控制系統(tǒng)設(shè)施,造成伊朗核電站推遲發(fā)電[1,2]. 電力控制系統(tǒng)網(wǎng)絡(luò)化的快速發(fā)展,相應(yīng)導(dǎo)致了系統(tǒng)的安全風(fēng)險(xiǎn)不斷增加,面臨的網(wǎng)絡(luò)安全問(wèn)題更加突出,再加上利用TCP/IP技術(shù)對(duì)工業(yè)網(wǎng)絡(luò)進(jìn)行通信,對(duì)TCP/IP進(jìn)行相關(guān)攻擊,能夠快速進(jìn)入網(wǎng)絡(luò),使得工控系統(tǒng)面臨更大的安全挑戰(zhàn). 大數(shù)據(jù)技術(shù)的發(fā)展迅速,利用大數(shù)據(jù)技術(shù)來(lái)解決工業(yè)控制系統(tǒng)中異常流量檢測(cè)問(wèn)題是當(dāng)今研究的新的方向,如果當(dāng)人力無(wú)法處理超出可控范圍內(nèi)的異常流量數(shù)據(jù)時(shí),這樣一些隱藏的網(wǎng)絡(luò)攻擊將有機(jī)可趁,這時(shí)利用大數(shù)據(jù)技術(shù)來(lái)處理大規(guī)模數(shù)據(jù)中的異常情況就非常有必要,相關(guān)工作人員能夠快速定位與分析,做出相應(yīng)地措施.

隨著電力工控系統(tǒng)智能化建設(shè)的不斷發(fā)展,數(shù)據(jù)呈現(xiàn)出海量化、高維化、復(fù)雜化的趨勢(shì). 傳統(tǒng)的網(wǎng)絡(luò)監(jiān)測(cè)安全預(yù)警系統(tǒng)在面對(duì)海量高維度數(shù)據(jù)時(shí),其在精度、實(shí)時(shí)性、擴(kuò)展性以及效率上都無(wú)法滿足需求. 目前大多數(shù)的工業(yè)控制網(wǎng)絡(luò)安全預(yù)警方案主要以Hadoop數(shù)據(jù)處理平臺(tái)為載體,考慮在集群上部署Hadoop數(shù)據(jù)處理平臺(tái),然后通過(guò)使用統(tǒng)計(jì)學(xué)習(xí)方法或者各種機(jī)器學(xué)習(xí)算法對(duì)采集到的海量數(shù)據(jù)進(jìn)行建模,從而進(jìn)行大規(guī)模的離線計(jì)算,然而利用Hadoop為載體的系統(tǒng)并沒(méi)有考慮到預(yù)警預(yù)測(cè)的實(shí)時(shí)性,也沒(méi)有考慮到其處理的速度問(wèn)題,不能快速、實(shí)時(shí)的反饋安全預(yù)警,利用Hadoop為載體的機(jī)器學(xué)習(xí)方法也無(wú)法做到在內(nèi)存中大量迭代. 要想快速、實(shí)時(shí)、高效的對(duì)網(wǎng)絡(luò)做出安全預(yù)警,需要研究其他大數(shù)據(jù)處理技術(shù),例如,近幾年出現(xiàn)的新型的數(shù)據(jù)處理計(jì)算框架Spark,它作為一種基于內(nèi)存的編程模型,它將迭代過(guò)程和中間結(jié)果放在內(nèi)存中進(jìn)行,數(shù)據(jù)處理速度上得到很大提升[3,4]. 它的組件Spark Streaming能夠?qū)?shù)據(jù)流進(jìn)行實(shí)時(shí)處理,從而能夠滿足實(shí)時(shí)性的要求[5-7],但是它們都是利用Spark內(nèi)置的簡(jiǎn)單的機(jī)器學(xué)習(xí)模型來(lái)進(jìn)行建模預(yù)測(cè),在面對(duì)海量數(shù)據(jù)集時(shí)無(wú)法體現(xiàn)其優(yōu)勢(shì),本文在利用Spark計(jì)算框架的基礎(chǔ)上,結(jié)合與其相集成的Deep Learning 4J來(lái)進(jìn)行深度學(xué)習(xí)模型的建模,這樣能夠統(tǒng)一技術(shù)棧,不論在精度、實(shí)時(shí)性還是擴(kuò)展性、效率上都有進(jìn)一步提升.

因此,在大數(shù)據(jù)環(huán)境下,為了能夠?qū)I(yè)控制網(wǎng)絡(luò)安全作出快速、精確和實(shí)時(shí)的預(yù)警,考慮使用Spark計(jì)算框架,結(jié)合利用深度學(xué)習(xí)建模,充分利用其低延遲、可擴(kuò)展以及高可用的特性,這顯然是發(fā)展的一種趨勢(shì).

1 電網(wǎng)工控系統(tǒng)流量異常檢測(cè)系統(tǒng)的設(shè)計(jì)

基于Spark的工業(yè)控制網(wǎng)絡(luò)安全預(yù)警平臺(tái)核心技術(shù)模塊主要包括數(shù)據(jù)采集與網(wǎng)絡(luò)流量深度包檢測(cè)協(xié)議解析模塊、實(shí)時(shí)數(shù)據(jù)分析處理模塊、安全預(yù)警預(yù)測(cè)模塊和數(shù)據(jù)存儲(chǔ)模塊共計(jì)4個(gè)系統(tǒng)功能模塊. 系統(tǒng)的整體結(jié)構(gòu)圖如圖1所示.

1.1 數(shù)據(jù)采集與網(wǎng)絡(luò)流量深度包檢測(cè)協(xié)議解析模塊

數(shù)據(jù)采集層負(fù)責(zé)從不同的數(shù)據(jù)源采集數(shù)據(jù). 利用網(wǎng)絡(luò)流量深度包檢測(cè)傳感器通過(guò)旁路接入的方式實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)內(nèi)數(shù)據(jù)的檢測(cè). 深度包檢測(cè)技術(shù)(Deep Packet Inspection,DPI)是在傳統(tǒng)IP數(shù)據(jù)包檢測(cè)技術(shù)(OSI L2-L4之間包含的數(shù)據(jù)包元素的檢測(cè)分析)之上增加了對(duì)應(yīng)用層數(shù)據(jù)的應(yīng)用協(xié)議識(shí)別,數(shù)據(jù)包內(nèi)容檢測(cè)與深度解碼. 一般網(wǎng)絡(luò)設(shè)備只會(huì)查看以太網(wǎng)頭部、IP頭部而不會(huì)分析TCP/UDP里面的內(nèi)容這種被稱為淺數(shù)據(jù)包檢測(cè); 與之對(duì)應(yīng)的DPI會(huì)檢查T(mén)CP/UDP里面的內(nèi)容,DPI數(shù)據(jù)包檢測(cè)如圖2所示.

利用Kafka(是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng))作為平臺(tái)數(shù)據(jù)的接入與分發(fā). Kafka能夠靈活的處理流式數(shù)據(jù),主要為本文系統(tǒng)平臺(tái)中的數(shù)據(jù)采集層與數(shù)據(jù)預(yù)處理層之間提供高性能與低延遲的數(shù)據(jù)流轉(zhuǎn)[8]. 一個(gè)典型的Kafka體系架構(gòu)如圖3所示,主要包括若干Producer,若干broker,若干Consumer (Group),以及一個(gè)Zookeeper集群. Kafka通過(guò)Zookeeper管理集群配置,選舉leader,以及在consumer group發(fā)生變化時(shí)進(jìn)行rebalance. 將數(shù)據(jù)采集層采集好的特征數(shù)據(jù)根據(jù)網(wǎng)絡(luò)流量深度包傳感器接入不同設(shè)備來(lái)劃分Kafka中不同的Topic,每一Topic又劃分多個(gè)partition,然后Kafka中的Producer使用push(推)模式將消息發(fā)布到broker,發(fā)送每一條數(shù)據(jù)到broker,Producer會(huì)根據(jù)這條消息的Key和partition機(jī)制來(lái)決定發(fā)到哪一個(gè)partition,數(shù)據(jù)處理層利用Consumer使用pull(拉)模式從broker中訂閱并根據(jù)Topic主題來(lái)消費(fèi)消息.

圖1 異常流量檢測(cè)系統(tǒng)整體架構(gòu)圖

圖2 DPI數(shù)據(jù)包檢測(cè)圖

1.2 實(shí)時(shí)計(jì)算數(shù)據(jù)分析處理模塊

該模塊主要建立以Spark為核心的實(shí)時(shí)數(shù)據(jù)流處理模塊,主要面對(duì)大量實(shí)時(shí)監(jiān)測(cè)的數(shù)據(jù). 采用Spark Streaming(是建立在Spark上的實(shí)時(shí)計(jì)算框架,通過(guò)它提供豐富的API、基于內(nèi)存的高速執(zhí)行引擎,用戶可以結(jié)合流式、批處理和交互式查詢應(yīng)用)技術(shù)進(jìn)行實(shí)時(shí)事件流的處理,它將流式計(jì)算分解成一系列連續(xù)的DStream(Discretized Stream,DStream)[9-11]. DStream實(shí)質(zhì)上RDDs的集合,主要是以時(shí)間為鍵,RDD為值的哈希表,保存以時(shí)間為順序產(chǎn)生的RDD,而每個(gè)RDD封裝了批處理時(shí)間間隔內(nèi)獲取的數(shù)據(jù),每次產(chǎn)生的RDD會(huì)被添加到哈希表中,如果不需要的RDD會(huì)從哈希表中刪除. 該模塊主要消費(fèi)來(lái)自Kafka中的數(shù)據(jù),利用Spark Streaming的Direct方式來(lái)消費(fèi)來(lái)自Kafka中數(shù)據(jù),這種方式能夠定期的查詢Kafka中的topic+partition中的偏移量,DStream會(huì)創(chuàng)建與Kafka分區(qū)一樣的RDD分區(qū)數(shù),能夠并行的從Kafka中消費(fèi)數(shù)據(jù). Spark Streaming從Kafka中消費(fèi)數(shù)據(jù)運(yùn)行原理圖如圖4所示. 該模塊一方面消費(fèi)Kafka中的數(shù)據(jù),可以將處理后的數(shù)據(jù)存儲(chǔ)至歷史數(shù)據(jù)庫(kù),方便數(shù)據(jù)分析以及Spark ML建模使用; 另一方面,Spark Streaming可以處理實(shí)時(shí)監(jiān)測(cè)的數(shù)據(jù),可以存入內(nèi)存數(shù)據(jù)庫(kù)Redis實(shí)時(shí)展示網(wǎng)絡(luò)流量動(dòng)態(tài)曲線,同時(shí)實(shí)時(shí)處理的數(shù)據(jù)輸入到已建立好的流量異常檢測(cè)模型中來(lái)檢測(cè),這樣方便在出現(xiàn)異常時(shí)能夠?qū)崿F(xiàn)及時(shí)預(yù)警,方便工作人員作出及時(shí)調(diào)整.

圖3 Kafka體系架構(gòu)圖

圖4 Spark Streaming消費(fèi)Kafka原理圖

Spark Streaming 消費(fèi)Kafka中的數(shù)據(jù),首先識(shí)別原始數(shù)據(jù)中的每條特征是否是字符形式的數(shù)據(jù),如果是,將該特征進(jìn)行數(shù)值化處理,最終每條數(shù)據(jù)都是數(shù)值化的形式,然后將轉(zhuǎn)化為數(shù)值化后的數(shù)據(jù)進(jìn)行最大值最小值標(biāo)準(zhǔn)化處理,方便接下來(lái)利用Deep Learning 4J設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò)的使用,將其一維轉(zhuǎn)二維化處理.

1.3 安全預(yù)警預(yù)測(cè)模塊

電網(wǎng)工控系統(tǒng)數(shù)據(jù)海量化以及復(fù)雜化,對(duì)異常流量檢測(cè)安全預(yù)警需要要求準(zhǔn)確性,實(shí)時(shí)性等要求,通過(guò)讀取歷史數(shù)據(jù)庫(kù)中的數(shù)據(jù),利用Deep Learning 4J建立以卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的流量異常檢測(cè)模型,Deep Learning 4J集成了Hadoop及Spark,能夠與該平臺(tái)實(shí)現(xiàn)統(tǒng)一的技術(shù)棧,實(shí)現(xiàn)統(tǒng)一的pipeline,節(jié)省了研發(fā)成本[12-14]. 該模塊能夠根據(jù)歷史數(shù)據(jù)庫(kù)實(shí)現(xiàn)模型的建立,每過(guò)一段時(shí)間可以增量更新模型,同時(shí)根據(jù)Spark Streaming實(shí)時(shí)處理的數(shù)據(jù),利用該模型進(jìn)行檢測(cè),能夠做出極高的準(zhǔn)確率,極大地提高了異常流量的效率以及精度.

1.4 數(shù)據(jù)存儲(chǔ)模塊

該模塊主要根據(jù)數(shù)據(jù)的類型以及使用的情況進(jìn)行選擇,數(shù)據(jù)采集的原始數(shù)據(jù)可以存放至HDFS,方便Spark快速讀取,以及歷史數(shù)據(jù)挖掘分析. 為提高平臺(tái)數(shù)據(jù)處理分析以及異常流量檢測(cè)的實(shí)時(shí)性,使用分布式內(nèi)存數(shù)據(jù)庫(kù)Redis,主要利用Redis數(shù)據(jù)庫(kù)的鍵值存儲(chǔ),對(duì)實(shí)時(shí)數(shù)據(jù)處理的結(jié)果進(jìn)行存儲(chǔ). 為方便利用Deep Learning 4J中的卷積神經(jīng)網(wǎng)絡(luò)建立模型,將平臺(tái)的離線歷史數(shù)據(jù)存儲(chǔ)用Mysql進(jìn)行存儲(chǔ),同時(shí)將異常流量檢測(cè)模型檢測(cè)的結(jié)果數(shù)據(jù)也存儲(chǔ)至Mysql中,這樣可以積累訓(xùn)練數(shù)據(jù),同時(shí)滿足增量更新的要求,更有利于提高模型的準(zhǔn)確性.

2 基于Spark的異常檢測(cè)模型

電網(wǎng)工控系統(tǒng)中流量異常檢測(cè)是非常重要有必要的,網(wǎng)絡(luò)運(yùn)行安全時(shí)網(wǎng)絡(luò)各個(gè)維度的特征都比較平穩(wěn).但當(dāng)異常發(fā)生時(shí)會(huì)產(chǎn)生較大的波動(dòng),當(dāng)某些維度的數(shù)值超過(guò)閾值時(shí)判定異常發(fā)生. 異常有許多種,并且一種異常發(fā)生時(shí)對(duì)應(yīng)的特征波動(dòng)情況也相對(duì)穩(wěn)定,本文中主要對(duì)電網(wǎng)工控系統(tǒng)采集流量數(shù)據(jù),分為正常流量和部分少量異常流量,采用Spark框架對(duì)數(shù)據(jù)進(jìn)行處理,為結(jié)合Spark以及達(dá)到實(shí)時(shí)性已經(jīng)準(zhǔn)確性的要求,建立模型部分采用與Spark計(jì)算引擎集成的Deep Learning 4J,設(shè)計(jì)好卷積神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu),這樣能夠很好捕捉好異常的波動(dòng),達(dá)到較高的識(shí)別率. 異常檢測(cè)模型如圖5所示,基于Spark的異常檢測(cè)模型的算法如下:

1) 首先采集電網(wǎng)工控系統(tǒng)的數(shù)據(jù),將字符型數(shù)據(jù)轉(zhuǎn)化為數(shù)值型,并將數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化的形式處理.

2) 將每條數(shù)據(jù)即一維特征進(jìn)行二維化處理,將每條樣本數(shù)據(jù)轉(zhuǎn)化為圖片的形式.

3) 設(shè)計(jì)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),有卷積層,池化層,Dropout層,全連接層以及反卷積層實(shí)現(xiàn).

4) 利用設(shè)計(jì)好的卷積神經(jīng)網(wǎng)絡(luò)對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行訓(xùn)練,并利用測(cè)試樣本對(duì)模型進(jìn)行調(diào)參,使模型達(dá)到最優(yōu).

5) Spark Streaming實(shí)時(shí)處理的監(jiān)測(cè)數(shù)據(jù)用訓(xùn)練好的模型進(jìn)行預(yù)測(cè),從而作出識(shí)別預(yù)警,并將識(shí)別結(jié)果存儲(chǔ)至結(jié)果數(shù)據(jù)庫(kù)中.

6) 定期增量更新模型,方便提高系統(tǒng)的性能.

圖5 Deep Learning 4J異常檢測(cè)模型

卷積神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)有輸入層、卷積層、池化層、全連接層和輸出層這幾部分交替組合而成. 設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò)如圖6所示.

本文中在卷積神經(jīng)網(wǎng)絡(luò)模型設(shè)計(jì)中加入了dropout技術(shù),其目的是為了提高模型的泛化能力,進(jìn)而能夠?qū)δP偷倪^(guò)擬合現(xiàn)象得到有效的改善. 在實(shí)驗(yàn)環(huán)節(jié),對(duì)不加入dropout技術(shù)與加入dropout技術(shù)兩個(gè)模型做了相關(guān)對(duì)比,在模型設(shè)計(jì)與測(cè)試時(shí),根據(jù)經(jīng)驗(yàn)值將dropout設(shè)置成0.4,統(tǒng)計(jì)模型在最后的損失與準(zhǔn)確率趨于穩(wěn)定的結(jié)果,如表1所示.

表1可知,不帶dropout技術(shù)的模型的訓(xùn)練時(shí)的損失值要小于加入dropout技術(shù)的損失值,由此可知,在不加入dropout技術(shù)時(shí),當(dāng)訓(xùn)練模型時(shí),模型為了最小化損失函數(shù),從而對(duì)訓(xùn)練數(shù)據(jù)過(guò)分?jǐn)M合,使得模型的損失值最小. 但加入dropout技術(shù)的模型的準(zhǔn)確率要大于不加入dropout技術(shù)的準(zhǔn)確率,因?yàn)榧尤雂ropout的模型在模型參數(shù)更新時(shí)會(huì)隨機(jī)選擇一部分參數(shù)進(jìn)行更新,避免對(duì)固有模型參數(shù)的學(xué)習(xí)記錄. 即模型再每一次迭代過(guò)程中,都會(huì)生成一個(gè)個(gè)的小網(wǎng)絡(luò),每次只針對(duì)此次生成的小網(wǎng)絡(luò)進(jìn)行參數(shù)學(xué)習(xí)更新,各個(gè)神經(jīng)元之間不會(huì)形成特定的組合對(duì)模型學(xué)習(xí)的影響,使得參數(shù)的分布趨于均勻. 因此,使得模型在測(cè)試數(shù)據(jù)集的表現(xiàn)效果更佳.

圖6 DeepLearning 4J卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖

表1 Dropout的影響

本文在卷積神經(jīng)網(wǎng)絡(luò)模型設(shè)計(jì)中加入了反卷積操作,其反卷積操作的關(guān)鍵是卷積層的逆過(guò)程,是能夠?qū)υ驾斎雸D像的重建,從而訓(xùn)練得到參數(shù)更新,能夠降低模型的損失誤差,增加模型的泛化能力. 如表2,為模型在趨于穩(wěn)定的時(shí)候統(tǒng)計(jì)的模型的損失與準(zhǔn)確率的平均值. 從表2也可以看出加入反卷積層的模型的損失值更小,泛化能力更強(qiáng),識(shí)別準(zhǔn)確率更高.

表2 反卷積層的影響

3 實(shí)驗(yàn)與結(jié)果分析

3.1 實(shí)驗(yàn)環(huán)境

平臺(tái)的實(shí)驗(yàn)環(huán)境是基于分布式系統(tǒng)基礎(chǔ)架構(gòu)Hadoop安裝的Spark集群,集群中共有10機(jī)器作為節(jié)點(diǎn),是基于Hadoop中資源調(diào)度器Yarn來(lái)部署Spark為Yarn Cluster模式,每臺(tái)機(jī)器的內(nèi)存為32 GB. 集群軟件配置如表3.

表3 集群軟件配置

3.2 實(shí)驗(yàn)數(shù)據(jù)與結(jié)果分析

本文所用數(shù)據(jù)是通過(guò)對(duì)東北電網(wǎng)采用網(wǎng)絡(luò)流量深度包檢測(cè),將檢測(cè)的數(shù)據(jù)包進(jìn)行捕獲解析,將解析的數(shù)據(jù)生產(chǎn)到Kafka相應(yīng)話題,利用Spark Streaming的時(shí)間窗的流式處理對(duì)數(shù)據(jù)進(jìn)行處理,采集網(wǎng)絡(luò)數(shù)據(jù)時(shí)主要關(guān)注網(wǎng)絡(luò)間與連接特征相關(guān)的信息. 例如,在TCP連接的基本特征中可以提取連接的持續(xù)時(shí)間、網(wǎng)絡(luò)協(xié)議的類型、目標(biāo)主機(jī)的網(wǎng)絡(luò)服務(wù)類型、從源主機(jī)到目標(biāo)主機(jī)的數(shù)據(jù)字節(jié)數(shù)等,目前采集的網(wǎng)絡(luò)流量數(shù)據(jù)集大小約為4.62 GB.

在數(shù)據(jù)集的每條數(shù)據(jù)中都記錄攻擊類型,其中攻擊類型一共包括4個(gè)大類以及28個(gè)小類,為了方便建模將數(shù)據(jù)集分為訓(xùn)練集與測(cè)試集,28個(gè)小類攻擊類型中的12個(gè)小類出現(xiàn)在測(cè)試集中,這樣可以檢驗(yàn)?zāi)P偷姆夯芰?

采集的流量數(shù)據(jù)樣本特征值并不都是在0~255之間,有些特征還是以字符串的形式采集下來(lái)的. 拿其中一條樣本來(lái)看,0,tcp,smtp,SF,787,329,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0.00,0.00,0.00,0.00,1.00,0.00,0.00,76,117,0.49,0.08,0.01,0.02,0.00,0.00,0.00,0.00,normal.

首先將字符特征轉(zhuǎn)化成數(shù)值型特征,分別將Internet 控制報(bào)文協(xié)議(Internet Control Message Protocol,ICMP)、用戶數(shù)據(jù)包協(xié)議(User Datagram Protocol,UDP)和Tcp 3種協(xié)議類型,簡(jiǎn)單郵件傳輸協(xié)議(Simple Mail Transfer Protocol,SMTP)、目標(biāo)主機(jī)服務(wù)類型ecr_i、private、超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)等70種網(wǎng)絡(luò)服務(wù)類型,SF(Symbol Flag)、REJ(REJECT)等11種網(wǎng)絡(luò)連接狀態(tài)以及Smurf攻擊(Smurf)、Ping掃射(ping-sweep)、端口掃描(port-scan)23種攻擊類型和一種正常狀態(tài)轉(zhuǎn)化數(shù)字標(biāo)識(shí). 對(duì)每一條轉(zhuǎn)化好的數(shù)值特征采用數(shù)據(jù)標(biāo)準(zhǔn)化處理,本文采用最大最小值歸一化處理,取每條數(shù)據(jù)的最大值最小值,然后對(duì)每一個(gè)數(shù)據(jù)進(jìn)行處理,公式如下:

將數(shù)據(jù)歸一化的數(shù)據(jù)生成特征圖的方式,利用設(shè)計(jì)好的異常檢測(cè)模型,利用訓(xùn)練集與測(cè)試集來(lái)訓(xùn)練模型以及調(diào)優(yōu)模型,對(duì)Spark Streaming消費(fèi)Kafka中的實(shí)時(shí)數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行相應(yīng)處理,利用訓(xùn)練好的模型進(jìn)行相關(guān)預(yù)測(cè),以便做出安全預(yù)警.

檢測(cè)結(jié)果主要利用檢測(cè)率,誤報(bào)率和未知攻擊檢測(cè)率三個(gè)指標(biāo),公式如下:

由表4列舉出了3種攻擊類型和整體情況的檢測(cè)結(jié)果. 可以看出相比于基于大數(shù)據(jù)的K-means的檢測(cè)方法和基于大數(shù)據(jù)的DBScan檢測(cè)方,本文使用基于Spark的卷積神經(jīng)網(wǎng)絡(luò)的方法很大程度上提高了檢測(cè)率和未知攻擊檢測(cè)率,降低了誤報(bào)率,取得了比較好的成果.

表4 各算法測(cè)試結(jié)果對(duì)比

4 結(jié)論

本文結(jié)合電力控制網(wǎng)絡(luò)的數(shù)據(jù)特點(diǎn),以及滿足對(duì)精確性、實(shí)時(shí)性及效率的要求,構(gòu)建出了一個(gè)基于Spark的電網(wǎng)工業(yè)控制網(wǎng)絡(luò)安全預(yù)警平臺(tái),通過(guò)深度檢測(cè)技術(shù)采集電力工控系統(tǒng)中的數(shù)據(jù),進(jìn)行協(xié)議解析并存入Kafka相應(yīng)話題,然后利用Spark Streaming消費(fèi)Kafka數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)處理并利用Spark ML與Deep Learning4J構(gòu)建異常檢測(cè)模型,該方法在面對(duì)海量高維數(shù)據(jù)時(shí)不僅能快速有效地識(shí)別出異常流量的已有攻擊以及未知攻擊,而且能夠應(yīng)用到各種工控系統(tǒng),體現(xiàn)了該系統(tǒng)的泛化能力與可擴(kuò)展性高的優(yōu)勢(shì). 本文方法能夠做到實(shí)時(shí)處理及安全預(yù)警,方便工作人員做出對(duì)應(yīng)措施,節(jié)約了人力成本,極大地提高了工作效率,提高了網(wǎng)絡(luò)的安全性能.

猜你喜歡
工控卷積預(yù)警
預(yù)警型智能包裝在食品安全中的應(yīng)用和設(shè)計(jì)
一種基于卷積神經(jīng)網(wǎng)絡(luò)的地磁基準(zhǔn)圖構(gòu)建方法
基于3D-Winograd的快速卷積算法設(shè)計(jì)及FPGA實(shí)現(xiàn)
一種并行不對(duì)稱空洞卷積模塊①
超級(jí)秀場(chǎng) 大風(fēng)預(yù)警
從濾波器理解卷積
安全防護(hù)應(yīng)貫穿工控系統(tǒng)全生命周期
全國(guó)政協(xié)委員何幫喜:工控網(wǎng)絡(luò)安全防護(hù)應(yīng)納入國(guó)家戰(zhàn)略
啟明星辰網(wǎng)御星云 進(jìn)軍工控安全領(lǐng)域
預(yù)警個(gè)啥
泊头市| 普兰县| 当雄县| 乌海市| 临武县| 信阳市| 赣榆县| SHOW| 修武县| 宽甸| 蓬莱市| 且末县| 兴城市| 江口县| 家居| 涞水县| 壶关县| 岳西县| 即墨市| 得荣县| 吴旗县| 台中县| 科技| 桃园县| 西城区| 越西县| 漳平市| 邯郸市| 靖安县| 天气| 太康县| 张家川| 安福县| 历史| 土默特左旗| 铁岭县| 衡南县| 利辛县| 上饶市| 万载县| 霍山县|