申秀雨,姬偉峰?,李映岐,吳玄
(1.空軍工程大學(xué)信息與導(dǎo)航學(xué)院,陜西西安 710077;2.93107 部隊(duì),遼寧沈陽 110000;3.94701 部隊(duì),安徽 安慶 246000)
隨著通信技術(shù)的發(fā)展,各類終端設(shè)備以指數(shù)爆炸的趨勢(shì)接入互聯(lián)網(wǎng),萬物互聯(lián)(IoE)的時(shí)代即將到來。邊緣計(jì)算[1]作為一種新型計(jì)算模型應(yīng)運(yùn)而生,將計(jì)算任務(wù)放在靠近數(shù)據(jù)源的邊緣側(cè)進(jìn)行,能夠降低終端與云中心的信息傳輸開銷。邊緣基礎(chǔ)設(shè)施的存儲(chǔ)資源和計(jì)算資源都較為薄弱,許多邊緣設(shè)備在設(shè)計(jì)之初只考慮了可用性而忽略了安全性,這些設(shè)備暴露在互聯(lián)網(wǎng)上極易受到網(wǎng)絡(luò)攻擊。分布式拒絕服務(wù)(DDoS)攻擊[2]是最常見的網(wǎng)絡(luò)安全威脅之一,其因攻擊成本低、危害范圍大被廣泛關(guān)注。近年來,DDoS 攻擊強(qiáng)度越來越大,AWS 發(fā)布報(bào)告稱2020 年受到的DDoS 攻擊量為2.3 Tb/s[3]。在邊緣計(jì)算環(huán)境中,DDoS 攻擊可以輕易地實(shí)施于邊緣節(jié)點(diǎn),并通過計(jì)算卸載[4]將海量的惡意流量發(fā)送到邊緣網(wǎng)絡(luò)的所有設(shè)備,造成邊緣網(wǎng)絡(luò)癱瘓,因此,需要研究一種面向邊緣計(jì)算卸載的DDoS 攻擊檢測(cè)模型,以便有效保護(hù)邊緣計(jì)算資源并提高邊緣設(shè)備可用性。
目前,邊緣計(jì)算中對(duì)計(jì)算卸載的研究主要集中在卸載方式、卸載粒度、卸載決策上,通過綜合考慮終端設(shè)備性能、信道質(zhì)量、邊緣服務(wù)計(jì)算能力等因素[5]對(duì)時(shí)延[6]、能耗[7]以及多指標(biāo)聯(lián)合效用[8]進(jìn)行優(yōu)化,對(duì)卸載安全方面的研究比較少,而卸載安全問題被很多專家學(xué)者認(rèn)為是不容忽視的新方向[9-11]。
基于機(jī)器學(xué)習(xí)的邊緣智能[12]方法已經(jīng)用在邊緣計(jì)算的DDoS 檢測(cè)中。文獻(xiàn)[13]在WEKA 工具中實(shí)施6 種不同的機(jī)器學(xué)習(xí)(ML)算法對(duì)CICDDoS2019數(shù)據(jù)集進(jìn)行分析,其中決策樹(DT)和隨機(jī)森林(RF)算法獲得99%的最佳檢測(cè)結(jié)果,DT 在時(shí)間上優(yōu)于RF 算法。雖然決策樹預(yù)測(cè)效率高,但預(yù)測(cè)模型對(duì)訓(xùn)練樣本的要求較高,受樣本不平衡的影響較大。文獻(xiàn)[14]提出一種基于隨機(jī)森林和深度森林的無線傳感器網(wǎng)絡(luò)入侵檢測(cè)模型,獲得了比傳統(tǒng)機(jī)器學(xué)習(xí)方法更高的檢測(cè)準(zhǔn)確率,但不及CNN 和Autoencoder SVM。
深度學(xué)習(xí)算法[15]比其他機(jī)器學(xué)習(xí)算法具有更高的準(zhǔn)確率,但由于結(jié)構(gòu)復(fù)雜、參數(shù)較多,模型訓(xùn)練需要大量的時(shí)間和計(jì)算資源,因此需要對(duì)深度學(xué)習(xí)算法進(jìn)行輕量化設(shè)計(jì)來適應(yīng)邊緣計(jì)算環(huán)境,并同時(shí)保證較高的檢測(cè)效率。
文獻(xiàn)[16]利用FastRNN 和FastGRNN 構(gòu)建一層128 個(gè)神經(jīng)元的輕量型Edge-Detect 模型,與標(biāo)準(zhǔn)LSTM、GRU 相比,精度提高了1%,模型尺寸縮減了66%。但該模型僅做到了對(duì)DDoS 攻擊的二分類。文獻(xiàn)[17]針對(duì)一維時(shí)間序列數(shù)據(jù)無法作為卷積層輸入、CNN 池化層存在信息丟失和RNN 處理長(zhǎng)時(shí)序時(shí)存在梯度消失的問題,在初始CNN、RNN 基礎(chǔ)上引入格拉姆角場(chǎng)(GAF)、SoftPool 池化層和多頭注意力機(jī)制(MHS),選用Bi-GRU 代替?zhèn)鹘y(tǒng)的RNN 算法,達(dá)到減少模型參數(shù)的目的,所構(gòu)建的物聯(lián)網(wǎng)入侵檢測(cè)模型(GSM-IDS)在多分類中具有較好表現(xiàn),但其在處理模型輸入的數(shù)據(jù)時(shí)采用升維的方式,增加了模型處理數(shù)據(jù)的復(fù)雜度。
文獻(xiàn)[18]提出LUCID 模型,建立了適用CNN輸入的在線流量預(yù)處理機(jī)制,其將流量樣本轉(zhuǎn)化為二維矩陣,讓所有卷積核使用相同參數(shù),簡(jiǎn)化了CNN 參數(shù)學(xué)習(xí)方式,從而得到更加輕量級(jí)的訓(xùn)練模型,訓(xùn)練過程中學(xué)習(xí)參數(shù)、計(jì)算量、內(nèi)存占用均減少,與LSTM 達(dá)到相同檢測(cè)精度時(shí),分類速度快了40 倍,所以,CNN 在資源有限的環(huán)境中,既能最大限度地減小運(yùn)算規(guī)模,同時(shí)又能保持高性能。但LUCID 模型的輸入仍然需要人為篩選出流量的11 個(gè)屬性,不能實(shí)現(xiàn)自主區(qū)分多屬性在檢測(cè)中的重要性。以上方法大多都是針對(duì)通信鏈路中的全部數(shù)據(jù)直接進(jìn)行檢測(cè),檢測(cè)到攻擊后對(duì)所有卸載任務(wù)進(jìn)行阻斷,未考慮通過對(duì)卸載任務(wù)進(jìn)行分類來降低單個(gè)任務(wù)受到攻擊時(shí)對(duì)整個(gè)鏈路中計(jì)算任務(wù)安全卸載的影響。
基于以上討論,考慮到邊緣網(wǎng)絡(luò)中計(jì)算和存儲(chǔ)資源有限的特殊性,針對(duì)現(xiàn)有DDoS 檢測(cè)方法性能有待提高、未對(duì)計(jì)算卸載任務(wù)進(jìn)行分類處理、CNN模型不能自主過濾冗余特征的問題,本文提出一種邊緣計(jì)算中基于任務(wù)分類的Attention-1D-CNN DDoS 檢測(cè)模型TCA1C,其中包括卸載任務(wù)分類處理模塊和Attention-1D-CNN 模塊,可以在線收集邊緣網(wǎng)絡(luò)中的實(shí)時(shí)流量數(shù)據(jù)并及時(shí)檢測(cè)DDoS 攻擊,進(jìn)而阻斷DDoS 攻擊對(duì)邊緣服務(wù)器的影響。
TCA1C 模型的卸載任務(wù)分類處理模塊對(duì)混雜在通信鏈路中的卸載數(shù)據(jù)進(jìn)行分類識(shí)別,降低了不同任務(wù)受到攻擊時(shí)的相互影響。同時(shí),在同一計(jì)算任務(wù)下提取數(shù)據(jù)的屬性值并進(jìn)行歸一化,生成可直接輸入檢測(cè)模型的數(shù)據(jù)樣式。
TCA1C 模型的Attention-1D-CNN 模塊對(duì)輸入數(shù)據(jù)進(jìn)行檢測(cè),其中,通道注意力(CA)機(jī)制對(duì)1DCNN 不同通道的特征圖進(jìn)行篩選,空間注意力(SA)機(jī)制對(duì)同一特征圖中不同位置的信息進(jìn)行篩選,將低于篩選閾值的特征作置零處理,減少1D-CNN 的學(xué)習(xí)參數(shù),提高模型收斂速度。
為了解決邊緣網(wǎng)絡(luò)中卸載任務(wù)種類不同、屬性值多樣,不利于快速完成DDoS 檢測(cè)的問題,本文提出一種TCA1C 模型。該模型部署在邊緣服務(wù)器上,由卸載任務(wù)分類處理模塊和Attention-1D-CNN 模塊構(gòu)成,是一個(gè)對(duì)邊緣網(wǎng)絡(luò)中DDoS 攻擊進(jìn)行檢測(cè)的輕量級(jí)模型。該模型架構(gòu)由卸載任務(wù)分類處理、模型訓(xùn)練、攻擊檢測(cè)3 個(gè)階段構(gòu)成,如圖1 所示(彩色效果見《計(jì)算機(jī)工程》官網(wǎng)HTML 版,下同)。
圖1 TCA1C 模型架構(gòu)Fig.1 TCA1C model architecture
卸載任務(wù)分類處理模塊主要完成卸載任務(wù)分類和數(shù)據(jù)處理任務(wù),將終端設(shè)備卸載到邊緣網(wǎng)絡(luò)中的計(jì)算任務(wù)處理為可直接輸入檢測(cè)模塊的數(shù)據(jù)樣式,為檢測(cè)每個(gè)計(jì)算任務(wù)是否受到DDoS 攻擊做好數(shù)據(jù)準(zhǔn)備工作。
Attention-1D-CNN 模塊主要完成模型訓(xùn)練和攻擊檢測(cè)任務(wù),1D-CNN 完成特征提取和異常檢測(cè),CA和SA 機(jī)制對(duì)1D-CNN 提取的特征進(jìn)行篩選,去除不必要的冗余特征。
終端設(shè)備將計(jì)算任務(wù)卸載到邊緣服務(wù)器時(shí),不同設(shè)備以及同一設(shè)備的不同任務(wù)之間會(huì)共用終端設(shè)備與邊緣服務(wù)器的通信鏈路。直接在通信鏈路上采樣進(jìn)行檢測(cè)會(huì)將不同任務(wù)的數(shù)據(jù)包混在一起,當(dāng)檢測(cè)出有異常時(shí),不能立刻確定是哪個(gè)任務(wù)中出現(xiàn)了DDoS攻擊,不利于精確實(shí)施防御措施。因此,需要將通信鏈路中混雜的數(shù)據(jù)包按卸載任務(wù)進(jìn)行分類、重組,并處理成可以直接輸入檢測(cè)模型的數(shù)據(jù)樣式。
卸載任務(wù)分類處理就是根據(jù)終端設(shè)備所卸載任務(wù)的ID 信息,對(duì)鏈路中的流量數(shù)據(jù)按不同卸載任務(wù)進(jìn)行分類整合,對(duì)同一個(gè)計(jì)算任務(wù)中的數(shù)據(jù)包提取屬性值并做歸一化處理,具體分為卸載任務(wù)識(shí)別分類、數(shù)據(jù)屬性值提取、屬性值歸一化3 個(gè)步驟,該過程所涉及的參數(shù)如表1 所示。
表1 任務(wù)分類處理的參數(shù)Table 1 Parameters in task classification processing
1)卸載任務(wù)識(shí)別分類。在捕獲流量的時(shí)間窗口內(nèi),通信鏈路中會(huì)有一個(gè)或若干個(gè)卸載任務(wù)的數(shù)據(jù)包,每個(gè)數(shù)據(jù)包都有自己對(duì)應(yīng)的任務(wù)標(biāo)識(shí)(I)。根據(jù)數(shù)據(jù)包所攜帶的任務(wù)標(biāo)識(shí)對(duì)混雜在一起的數(shù)據(jù)包進(jìn)行分類,每個(gè)卸載任務(wù)的數(shù)據(jù)包被組合在一起,直到收集完該任務(wù)的所有N個(gè)數(shù)據(jù)包,如圖2 所示。
圖2 卸載任務(wù)分類過程Fig.2 Offloading task classification process
2)數(shù)據(jù)屬性值提取。對(duì)每個(gè)數(shù)據(jù)包提取f個(gè)屬性,包括Protocol、Timestamp、Total Fwd Packets 等,提取的屬性保存為N×f的矩陣,N行表示有N個(gè)數(shù)據(jù)包,每一行表示數(shù)據(jù)包的所有屬性值,f列表示每個(gè)數(shù)據(jù)包的f個(gè)不同屬性,詳細(xì)屬性如表2 所示。
表2 每個(gè)卸載任務(wù)的數(shù)據(jù)包屬性Table 2 Data packet attributes of each offloading task
3)屬性值歸一化。對(duì)有空值的行進(jìn)行剔除,留下的行將屬性值歸一化到[0,1],每一行的數(shù)組(1×f)就是一個(gè)單獨(dú)的樣本,在檢測(cè)DDoS 攻擊時(shí),作為模型的輸入。
算法1 給出了卸載任務(wù)分類處理過程,步驟1 對(duì)需要的參數(shù)進(jìn)行初始化,步驟2~11 為整個(gè)處理過程,步驟3~5 對(duì)數(shù)據(jù)包按任務(wù)I進(jìn)行分類,步驟6~10對(duì)所有數(shù)據(jù)包的屬性值進(jìn)行標(biāo)準(zhǔn)化處理,所有的處理過程都在時(shí)間窗口t內(nèi)完成。
算法1卸載任務(wù)分類處理算法
模型訓(xùn)練和DDoS 攻擊檢測(cè)階段都在Attention-1D-CNN 模塊中完成,具體流程如圖3 所示。
圖3 Attention-1D-CNN 模塊流程Fig.3 Procedure of Attention-1D-CNN module
1D-CNN[19]包括卷積層、池化層、全連接層,卷積層完成1D-CNN 和激活函數(shù)的運(yùn)算[20],池化層完成下采樣,全連接層與傳統(tǒng)多層感知機(jī)(MLP)類似,完成權(quán)重學(xué)習(xí)和邏輯回歸。1D-CNN 在處理一維流信息時(shí)的計(jì)算復(fù)雜度為O(pq),其中,p為樣本大小,q為卷積核大小,所以,1D-CNN 在實(shí)時(shí)性高、資源有限的硬件上更容易實(shí)現(xiàn)。
1D-CNN 每層的卷積過程為:
其中:Sl-1是第l-1 層所有神經(jīng)元的輸出構(gòu)成的數(shù)組,同時(shí)作為第l層卷積運(yùn)算的輸入;W是第l-1 層神經(jīng)元到第l層神經(jīng)元的卷積核;bl是由第l層神經(jīng)元的偏置構(gòu)成的數(shù)組;Xl是第l層所有神經(jīng)元卷積輸出構(gòu)成的數(shù)組;conv1D 是使用無填充valid 模式的一維卷積運(yùn)算。式(1)所示即第l-1 層神經(jīng)元的輸出Sl-1與第l-1 層到第l層的卷積核W進(jìn)行一維卷積運(yùn)算,再加上第l層神經(jīng)元的偏置bl,得到第l層神經(jīng)元卷積的輸出Xl。
激活過程表示為:
其中:Yl是Xl經(jīng)過激活函數(shù)進(jìn)行非線性映射后的輸出結(jié)果,同時(shí)作為下一步池化過程的輸入;g為激活函數(shù),通常有Tanh、ReLU、Sigmoid、Softmax 等,此處選用Sigmoid。Sigmoid 函數(shù)可將特征轉(zhuǎn)化為權(quán)重,其表達(dá)式為:
池化過程為:
其中:Sl為Yl經(jīng)過下采樣后的輸出,也是下一層卷積的輸入;↓S表示帶有采樣因子S的下采樣操作。
雖然標(biāo)準(zhǔn)1D-CNN 具有計(jì)算復(fù)雜度低的優(yōu)勢(shì),但仍有2 個(gè)不足:1)在同一卷積層中,由不同通道的卷積核生成的特征圖不同,不能識(shí)別哪些特征圖是必要的,哪些特征圖在參數(shù)學(xué)習(xí)上的貢獻(xiàn)度低;2)同一特征圖中不同位置的特征信息也不同,不能區(qū)分哪些特征信息是必要的,哪些信息對(duì)參數(shù)的貢獻(xiàn)度低。低貢獻(xiàn)度特征對(duì)模型訓(xùn)練和DDoS 檢測(cè)作用不大,但增加了參數(shù)學(xué)習(xí)過程的計(jì)算復(fù)雜度,因此,本文在標(biāo)準(zhǔn)1D-CNN 上引入CA 和SA 機(jī)制,利用篩選函數(shù)剔除低貢獻(xiàn)度的特征。
注意力機(jī)制[21]與CNN 結(jié)合,不僅可以通過捕獲CNN 不同通道的權(quán)重關(guān)系給不同通道的特征進(jìn)行加權(quán),而且可以捕獲一個(gè)特征圖不同位置的權(quán)重信息,從而有效地進(jìn)行特征篩選并增強(qiáng)特征[22-23]。
在CA 機(jī)制中,不同通道的特征圖被拼接在一起得到Lin,Lin為CA 機(jī)制的輸入。Lin經(jīng)過平均池化和最大池化分別得到2 個(gè)長(zhǎng)度與通道數(shù)量相等的一維向量,利用大小與通道數(shù)量成正比的卷積核對(duì)2 個(gè)一維向量進(jìn)行卷積,將得到的2 個(gè)卷積結(jié)果利用乘法融合,再通過Sigmoid 激活函數(shù)得到代表不同通道權(quán)重值的權(quán)重向量μ,平均池化的一維向量與權(quán)重向量點(diǎn)積,得到篩選通道的閾值λ。不同通道的特征圖與閾值λ作為通道篩選函數(shù)FC的輸入,篩選出必要的特征圖得到Lout,減少不必要的計(jì)算量。CA 機(jī)制如圖4 所示。
圖4 CA 機(jī)制Fig.4 CA mechanism
通道篩選函數(shù)FC的定義如下:
其中:|Li,in|為第i個(gè)通道特征圖的絕對(duì)值;λ為特征圖的篩選閾值。當(dāng)特征圖絕對(duì)值小于λ時(shí),該特征圖被置為0,即Lout的值取0,以達(dá)到減少計(jì)算復(fù)雜度的目的,如圖4 中Lout的空白部分所示;當(dāng)特征圖絕對(duì)值大于等于λ時(shí),Lout的值與Lin保持一致。
在SA 機(jī)制中,每個(gè)卷積通道得到的特征圖Min經(jīng)過一維卷積得到代表特征圖信息的向量α,α經(jīng)過Sigmoid 激活得到該特征圖不同位置的權(quán)重向量β,Min的平均池化結(jié)果與β相乘,得到空間篩選閾值向量γ,Min和γ作為空間篩選函數(shù)FS的輸入,篩選出每個(gè)特征圖中的必要信息,剔除低于閾值但增加計(jì)算復(fù)雜度的冗余信息,得到Mout。SA 機(jī)制如圖5所示。
圖5 SA 機(jī)制Fig.5 SA mechanism
空間篩選函數(shù)FS定義如下:
其中:|Mj,in|為特征圖Min第j個(gè)位置信息的絕對(duì)值;|γj|為對(duì)應(yīng)第j個(gè)位置的篩選閾值。當(dāng)?shù)趈個(gè)位置信息的絕對(duì)值小于篩選閾值|γj|時(shí),將該位置的值置為0,即Mout的值取0,達(dá)到減少計(jì)算復(fù)雜度的目的,如圖5 中Mout的空白部分所示;當(dāng)?shù)趈個(gè)位置信息的絕對(duì)值大于等于篩選閾值|γj|時(shí),Mout的值與Min保持一致。
本文采用CICDDOS2019 數(shù)據(jù)集驗(yàn)證所提模型效果。CICDDOS2019 數(shù)據(jù)集由真實(shí)的網(wǎng)絡(luò)系統(tǒng)生成,包括良性流量和最新常見的DDoS 攻擊,從原理上DDoS 攻擊被分為基于反射的DDoS 攻擊和基于漏洞的DDoS 攻擊,從協(xié)議上被分為基于TCP、UDP及TCP、UDP 集成的攻擊[24],詳細(xì)的分類情況如表3所示。
表3 CICDDOS2019 數(shù)據(jù)集DDoS 攻擊的詳細(xì)分類Table 3 Detailed classification of DDoS attacks in CICDDOS2019 dataset
原始數(shù)據(jù)集按攻擊類型分為11個(gè)文件,每個(gè)文件所包括的DDoS 攻擊實(shí)例數(shù)量和實(shí)驗(yàn)所用到的實(shí)例數(shù)量如表4 所示。CICDDOS2019 數(shù)據(jù)集中的實(shí)例包括56 863 個(gè)正常流量包和12 類共50 006 249 個(gè)攻擊流量包(WebDDoS 只有439 個(gè)),每個(gè)實(shí)例都有88 個(gè)特征,其中1 個(gè)為分類標(biāo)簽。因?yàn)樵紨?shù)據(jù)集的實(shí)例數(shù)量過大,所以在訓(xùn)練和測(cè)試所提的模型時(shí),從原始數(shù)據(jù)集中選取部分樣本構(gòu)建訓(xùn)練和測(cè)試樣本集,樣本集中包含從11 文件中選取的正常實(shí)例共56 863 個(gè),在11類攻擊實(shí)例中,每類都選取56 863個(gè)。
表4 CICDDOS2019 數(shù)據(jù)集實(shí)例分析Table 4 Example analysis in CICDDOS2019 dataset 單位:個(gè)
模型的訓(xùn)練和測(cè)試在Intel?CoreTMi7-1165 處理器、16 GB RAM、Win10 64 位操作系統(tǒng)上完成,編程環(huán)境為Jupyter Notebook 6.52,編程框架為Python 3.8和TensorFlow 2.11,1D-CNN 的卷積核大小為3,通道數(shù)為64。
TCA1C 模型的對(duì)比實(shí)驗(yàn)選取DT 模型[13]、極限學(xué)習(xí)機(jī)(ELM)模型[25]、LSTM 模型[26]和1D-CNN 模型[27],本文采用準(zhǔn)確率、召回率、精確率、F1 值和每步平均耗時(shí)作為評(píng)估TCA1C 模型性能的指標(biāo)。
準(zhǔn)確率是陽性和陰性樣本被正確區(qū)分的比例,表示對(duì)整體樣本的分類能力,如式(7)所示;召回率是在真實(shí)的陽性樣本中預(yù)測(cè)為陽性樣本所占的比例,表示正確預(yù)測(cè)陽性樣本全度的能力,如式(8)所示;精確率是在預(yù)測(cè)的陽性樣本中真實(shí)陽性樣本所占的比例,表示正確預(yù)測(cè)陽性樣本精度的能力,如式(9)所示;F1 值是召回率和精確率的加權(quán)調(diào)和平均,可平衡單維度指標(biāo)的缺陷,如式(10)所示。
其中:TP表示預(yù)測(cè)和實(shí)際都是陽性的樣本數(shù)量;FP表示將陰性誤判為陽性的樣本數(shù)量;TN表示預(yù)測(cè)和實(shí)際都是陰性的樣本數(shù)量;FN表示將陽性誤判為陰性的樣本數(shù)量。
對(duì)于卸載任務(wù)分類處理模塊,本文采用計(jì)算任務(wù)安全卸載概率K來評(píng)估模塊的有效性。
當(dāng)終端設(shè)備的計(jì)算任務(wù)在一定的攻擊概率Kattack下進(jìn)行卸載時(shí),采用任務(wù)分類處理時(shí),各個(gè)卸載任務(wù)的安全概率相互獨(dú)立,表示為:
其中:Ksecure為采用任務(wù)分類處理時(shí)的計(jì)算任務(wù)安全卸載概率;Kattack為計(jì)算任務(wù)受到攻擊的概率。
當(dāng)不采用任務(wù)分類時(shí),各個(gè)卸載任務(wù)的安全概率取決于信道中所有卸載任務(wù)的安全情況,每個(gè)需要卸載任務(wù)的安全概率相互影響,表示為:
模型訓(xùn)練的準(zhǔn)確率收斂情況如圖6 所示。DT 在訓(xùn)練10 輪時(shí),準(zhǔn)確率從0.500 0 上升到0.913 0,在10 輪以后迅速收斂并穩(wěn)定在0.993 3 附近。ELM 收斂的波動(dòng)幅度較小,從0.954 6 穩(wěn)定收斂到0.965 8 附近。TCA1C 與LSTM、1D-CNN 的收斂趨勢(shì)大致相同,但TCA1C 和LSTM 比1D-CNN 收斂得更快,在訓(xùn)練10 輪時(shí),TCA1C 和LSTM 可以達(dá)到0.993 0 以上的準(zhǔn)確率,而1D-CNN 在訓(xùn)練40 輪時(shí)才能接近0.993 0。TCA1C 在訓(xùn)練10 輪以后,準(zhǔn)確率穩(wěn)定接近0.997 5,而LSTM 波動(dòng)幅度很大,準(zhǔn)確率最高為0.993 5,最低為0.955 0。從收斂速度和結(jié)果來看,TCA1C 明顯優(yōu)于其他對(duì)比模型。
圖6 5 種模型準(zhǔn)確率的收斂性Fig.6 Convergence of accuracy for five models
5 種模型訓(xùn)練過程中每步平均耗時(shí)如圖7 所示。LSTM 在訓(xùn)練過程中學(xué)習(xí)的參數(shù)比其他模型更多,每步平均耗時(shí)最長(zhǎng)且波動(dòng)幅度大,最短為11 ms,最長(zhǎng)為209 ms。ELM 在10 輪以后每步平均耗時(shí)明顯變長(zhǎng),在20~60 ms 之間波動(dòng)。DT、1D-CNN 和TCA1C 每步平均耗時(shí)均在15 ms 以下,由于TCA1C在訓(xùn)練過程中,通過CA 和SA 機(jī)制減少了冗余特征的學(xué)習(xí),因此TCA1C 比1D-CNN 在耗時(shí)方面更占優(yōu)勢(shì),90%以上的每步平均耗時(shí)低于1D-CNN,在準(zhǔn)確率高于DT 情況下,每步平均耗時(shí)與DT 基本一致,穩(wěn)定在4~8 ms 之間。
圖7 5 種模型每步平均耗時(shí)Fig.7 Average time consuming per step of five models
5 種模型在精確率、召回率、F1 值上的表現(xiàn)情況如圖8 所示。各模型對(duì)數(shù)據(jù)集里11 類DDoS 攻擊進(jìn)行檢測(cè),對(duì)各類攻擊檢測(cè)的性能取平均值進(jìn)行比較。DT 的綜合表現(xiàn)為:精確率0.993 43,召回率0.993 51,F(xiàn)1 值0.993 45。ELM 的綜合表現(xiàn)為:精確率0.960 74,召回率0.960 31,F(xiàn)1 值0.960 12。LSTM 綜合表現(xiàn)為:精確率0.995 50,召回率0.995 42,F(xiàn)1 值0.995 39。1D-CNN 綜合表現(xiàn)為:精確率0.996 86,召回率0.996 80,F(xiàn)1 值0.996 82。TCA1C 綜合表現(xiàn)為:精確率0.997 28,召回率0.997 27,F(xiàn)1 值0.997 25。TCA1C 整體上優(yōu)于DT、ELM、LSTM 和1D-CNN 模型,并得到了更好的分類結(jié)果。
圖8 5 種模型性能對(duì)比Fig.8 Performance comparison of five models
當(dāng)邊緣網(wǎng)絡(luò)中進(jìn)行卸載的計(jì)算任務(wù)受到攻擊概率為20%和40%時(shí),各計(jì)算任務(wù)安全卸載概率如圖9 所示。需要卸載的計(jì)算任務(wù)經(jīng)過任務(wù)分類處理,安全卸載概率相互獨(dú)立,能保持較高水平。未經(jīng)任務(wù)分類處理時(shí),不同卸載任務(wù)的安全卸載概率互相影響,最終的安全卸載概率隨著卸載任務(wù)數(shù)量的增加而快速降低,嚴(yán)重影響了卸載任務(wù)的安全性。
圖9 計(jì)算任務(wù)安全卸載概率Fig.9 Computing task security unloading probability
基于以上仿真結(jié)果和分析可知,TCA1C 模型在DDoS 檢測(cè)方面具有明顯優(yōu)于ELM、LSTM 和1D-CNN的準(zhǔn)確率和時(shí)間性能,雖然時(shí)間性能與DT 相當(dāng),但準(zhǔn)確率明顯優(yōu)于DT 模型,通過在線流量處理,可以解耦不同卸載任務(wù)的關(guān)聯(lián)性,有效保障終端設(shè)備在進(jìn)行計(jì)算卸載時(shí)整體的安全性。
本文針對(duì)邊緣網(wǎng)絡(luò)中防御DDoS 攻擊時(shí)資源受限的特點(diǎn),研究和分析當(dāng)前邊緣網(wǎng)絡(luò)DDoS 防御方法存在的問題,提出了一種基于任務(wù)分類的Attention-1D-CNN DDoS 檢測(cè)模型TCA1C。該模型通過卸載任務(wù)分類處理機(jī)制對(duì)混雜在通信鏈路中的流量數(shù)據(jù)按任務(wù)分類并處理為可以直接輸入到檢測(cè)模塊的數(shù)據(jù)樣式;通過Attention-1D-CNN 模塊對(duì)每個(gè)計(jì)算任務(wù)進(jìn)行DDoS 檢測(cè),正常數(shù)據(jù)進(jìn)入邊緣服務(wù)進(jìn)行處理,異常數(shù)據(jù)被丟棄或?qū)⒃摃?huì)話關(guān)閉。實(shí)驗(yàn)結(jié)果表明,TCA1C 模型對(duì)DDoS 攻擊在降低整體用時(shí)的情況下,具有較高的檢測(cè)準(zhǔn)確率,當(dāng)卸載任務(wù)面臨一定攻擊概率時(shí),能使計(jì)算任務(wù)的卸載保持較高的安全性。TCA1C 模型的優(yōu)異性能表明,該模型是一種適合邊緣網(wǎng)絡(luò)環(huán)境的DDoS 攻擊檢測(cè)方法。下一步工作將在此基礎(chǔ)上,研究邊緣網(wǎng)絡(luò)中攻擊強(qiáng)度、入侵響應(yīng)策略對(duì)計(jì)算任務(wù)安全卸載的影響,尋求能夠降低計(jì)算任務(wù)安全卸載所需成本的高效檢測(cè)方案。