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

?

面向SSL VPN加密流量的識別方法

2022-01-22 07:46:26王宇航姜文剛翟江濤史正爽
計算機工程與應(yīng)用 2022年1期
關(guān)鍵詞:網(wǎng)絡(luò)流量指紋加密

王宇航,姜文剛,翟江濤,史正爽

1.江蘇科技大學(xué)電子信息學(xué)院,江蘇 鎮(zhèn)江 212003

2.南京信息工程大學(xué)智能網(wǎng)絡(luò)與信息系統(tǒng)研究院,南京 210000

3.愛丁堡大學(xué)信息學(xué)研究院,愛丁堡 EH8 9YL

互聯(lián)網(wǎng)技術(shù)的高速發(fā)展,在為人們生活帶來便利的同時,也會被一些犯罪分子用于不法傳輸,這對網(wǎng)絡(luò)空間的穩(wěn)定性及安全性產(chǎn)生了極大的影響,使得網(wǎng)絡(luò)安全問題越來越受到人們的關(guān)注,因此,全球加密網(wǎng)絡(luò)流量不斷飆升。雖然流量經(jīng)過加密后再傳輸,使得傳輸數(shù)據(jù)的安全性得到保障,但也為流量的審計增加了難度。

常用的VPN 技術(shù)有MPLS VPN、IPSEC VPN、SSL VPN三種。MPLS VPN主要應(yīng)用在路由器和交換機等設(shè)備上,IPSEC VPN 是IPSec 協(xié)議在VPN 上的一種應(yīng)用,SSL VPN 屬于應(yīng)用層VPN 技術(shù)。相比于前兩種在使用上更加便捷,這使得SSL VPN 在安全傳輸中得到了廣泛使用,但這也使得一些惡意流量有了可乘之機。一些非法應(yīng)用利用SSL VPN來繞過防火墻等安全設(shè)施的檢測。因此,對SSL VPN 加密流量的有效識別對網(wǎng)絡(luò)信息安全具有重要意義。

Shen等人[1]通過增加Markov鏈的狀態(tài)多樣性,來建立二階Markov 鏈模型從而對HTTPS 應(yīng)用進行識別。程光等人[2]采用相對熵區(qū)和蒙特卡洛仿真方法結(jié)合實現(xiàn)加密流量和非加密流量的識別,取得了不錯的識別效果。Lotfollahi 等人[3]采用卷積神經(jīng)網(wǎng)絡(luò)模型對流量進行分類。趙博等人[4]利用加密數(shù)據(jù)的隨機性特點,對網(wǎng)絡(luò)報文逐一實施累積和檢驗,最終,實現(xiàn)了對加密流量的普適識別。目前,對加密流量分類的相關(guān)文獻取得不錯的成果。

針對SSL 流量的識別常采用機器學(xué)習(xí)的方法和指紋識別的方法,文獻[5]對SSH 流量的識別問題展開研究,提出了一種SSH 流量識別方法。該方法基于SSH協(xié)議建立連接階段的特征,對使用SSL 協(xié)議的流量進行識別。文獻[6]采用簽名和統(tǒng)計相結(jié)合的方法,選擇了13 個特征字段和14 個流屬性,通過C4.5,Naive Bayesian 和SVM 等多種機器學(xué)習(xí)算法,對SSL 協(xié)議流進行識別。

流量識別研究大多圍繞對某種協(xié)議流量的識別展開,針對VPN 流量識別的研究尚不足。西佛羅里達大學(xué)[7]的研究人員對文獻[8]發(fā)布的數(shù)據(jù)集開展深一步的研究,比較了Logistic回歸、樸素貝葉斯、SVM、KNN、RF和GBT 方法的識別效果,并對算法參數(shù)進行了相應(yīng)的優(yōu)化,最終VPN 流量達到了90%以上識別率。王琳等人[9]提出一種將指紋識別與機器學(xué)習(xí)方法相結(jié)合識別SSL VPN流量,雖然取得了91%以上的識別率,但是該方法需要手工提取流的特征。

本文在現(xiàn)有研究基礎(chǔ)上,提出一種基于Bit 級DPI和深度學(xué)習(xí)的檢測方法,分兩步實現(xiàn)SSL VPN 流量的識別。先使用本文提出的一種新的基于Bit級DPI的指紋生成技術(shù)——位編碼,通過將流的少量初始位與生成的位指紋匹配,來判斷當(dāng)前數(shù)據(jù)包是否使用SSL 協(xié)議、當(dāng)前數(shù)據(jù)流是否為SSL 流。對于第二階段的SSL VPN 流量識別,本文提出了一種基于注意力機制的改進的CNN網(wǎng)絡(luò)流量識別模型,并與一般的CNN模型進行比較。實驗結(jié)果表明,本文提出的方法不僅有效解決了SSL 加密流量指紋識別方法存在的漏識別率較高的問題,同時改進后的深度學(xué)習(xí)模型,能提取網(wǎng)絡(luò)流量中具有非常顯著性的細(xì)粒度的特征,從而更加有效地捕捉網(wǎng)絡(luò)流量中存在的依賴性,識別模型具有良好的實驗效果。

1 相關(guān)工作

1.1 DPI識別技術(shù)

深度包檢測技術(shù)(deep packet inspection,DPI)采用匹配特征字段對網(wǎng)絡(luò)流量進行識別[10]。許多基于DPI的檢測方法使用有效負(fù)載內(nèi)容生成特定于應(yīng)用程序的指紋。DPI可快速準(zhǔn)確地識別指紋庫存在的流量,但也存在著致命的缺陷,DPI 識別依賴于應(yīng)用協(xié)議特征字段,無法識別協(xié)議交互階段加密數(shù)據(jù)和私有協(xié)議[11]。但本文提出了一種基于Bit 級DPI 的指紋生成技術(shù),用于快速篩選識別SSL協(xié)議流量,發(fā)揮了DPI識別速度快的優(yōu)點,對識別模型預(yù)處理過程有很大的作用。

1.2 SSL協(xié)議

SSL(安全套接字協(xié)議)在傳輸層與應(yīng)用層之間對網(wǎng)絡(luò)連接進行加密,是一種為主機間通信提供安全的協(xié)議。SSL 協(xié)議由握手協(xié)議、記錄協(xié)議、更改密文協(xié)議和警報協(xié)議組成,如圖1所示。

圖1 SSL協(xié)議位置與組成Fig.1 SSL protocol location and composition

握手協(xié)議是SSL協(xié)議中十分重要的協(xié)議,是在應(yīng)用程序的數(shù)據(jù)傳輸之前使用的。該協(xié)議允許服務(wù)器和客戶機通過握手相互驗證,在這一過程中雙方需要確認(rèn)密鑰和算法,同時還要協(xié)商信息摘要算法、數(shù)據(jù)壓縮算法等。在握手協(xié)議結(jié)束后,雙方開始加密數(shù)據(jù)的傳輸。握手協(xié)議的通信流程如圖2所示。

圖2 握手協(xié)議的通信流程Fig2 Flow of handshake protocol communication

1.3 卷積神經(jīng)網(wǎng)絡(luò)

卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN),是深度學(xué)習(xí)的代表算法之一,提供了一種端到端的學(xué)習(xí)模型。這一深度學(xué)習(xí)網(wǎng)絡(luò)模型相較于傳統(tǒng)的其他模型存在以下優(yōu)點:

網(wǎng)絡(luò)中的神經(jīng)元采用稀疏連接的方式,而非像一般神經(jīng)網(wǎng)絡(luò)的神經(jīng)元采取全連接的方式。達到了降低參數(shù)的數(shù)量的目的,方便網(wǎng)絡(luò)結(jié)構(gòu)模型的擴展和模型的訓(xùn)練。

采用參數(shù)共享,其過程就是針對每個神經(jīng)元與前面層次的所有連接都貢獻權(quán)重值,這樣也能夠進一步的減少訓(xùn)練的參數(shù)數(shù)量[12]。

利用池化操作獲取更具代表性的特征值,同時降低了參數(shù)的數(shù)據(jù)量信息。有利于后面模型的訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)能自動從學(xué)習(xí)樣本中很好的學(xué)習(xí)原始數(shù)據(jù)中的特征,并完成對數(shù)據(jù)特征的提取與分類,無需像機器學(xué)習(xí)那樣人工設(shè)計特征。

1.4 注意力機制

注意力模型最近幾年在圖像處理、語音識別、自然語言處理等領(lǐng)域得到廣泛應(yīng)用,其核心目標(biāo)是從眾多信息中選擇出對當(dāng)前任務(wù)目標(biāo)更關(guān)鍵的信息,增加感興趣區(qū)域,抑制無用信息。因此,本文將注意力機制引入到CNN 模型當(dāng)中,用來提取序列中非常顯著性的細(xì)粒度的特征,實現(xiàn)短期的有效提取。從而優(yōu)化輸入信息,達到提升模型分類能力的目的。

注意力機制可分為,硬注意力(hard attention)及軟注意力(soft attention)。硬注意力核心的原理在于直接限制深度學(xué)習(xí)模型當(dāng)中輸入內(nèi)容的這種處理方法,但是在時序預(yù)測的相關(guān)領(lǐng)域相對來說并不是完全適合[13]。同時硬注意力是一個隨機的預(yù)測過程,更強調(diào)動態(tài)變化。其訓(xùn)練過程往往是通過增強學(xué)習(xí)來完成的,且后期模型訓(xùn)練難度較大,導(dǎo)致模型的通用性比較差。與硬注意力機制不同,軟注意力是確定性的注意力。學(xué)習(xí)完成后,可以通過神經(jīng)網(wǎng)絡(luò)得到注意力的權(quán)重,直接加權(quán)全局上的信息作為輸入特征。軟注意力機制更關(guān)注區(qū)域或者通道,最關(guān)鍵的地方是軟注意力是可微的,可以很好地與一種端到端的學(xué)習(xí)方式相結(jié)合。

基于以上分析,本文將軟注意力機制引入到一維卷積神經(jīng)網(wǎng)絡(luò)當(dāng)中。采取對輸入特征逐個加權(quán)的方式,達到關(guān)注特定空間和通道目的。最終,對時間序列上細(xì)粒度的顯著性特征進行提取,從而完成對網(wǎng)絡(luò)流量中存在的依賴性的有效捕捉。

2 基于Bit級DPI的SSL加密流量識別

SSL握手協(xié)議采用明文傳輸?shù)男问?,因此可以利用解析PCAP文件得到的數(shù)據(jù)包的頭部信息,判斷出當(dāng)前數(shù)據(jù)包為何種SSL 握手協(xié)議的消息類型。一個完整的握手協(xié)議,其通信過程一定包含ClientHello、SeverHello、SeverHelloDone、ClientKeyExchange、ChangeCipherSpec類型的消息?;趥鹘y(tǒng)的DPI 檢測技術(shù)若某數(shù)據(jù)流中未能全部包含以上5 種類型的消息,則判斷為非SSL流。當(dāng)數(shù)據(jù)流中只檢測到部分類型信息時,可能是自身握手協(xié)議建立不成功,或者是抓取數(shù)據(jù)包時存在漏包的情況。然而在實際抓取數(shù)據(jù)包時,設(shè)置確定截斷時間,會存在一個流雖然是SSL 流,但并不是從開始截取的,而是從其他傳輸階段截取的。這時,基于傳統(tǒng)的DPI檢測技術(shù)會因為沒有檢測到SSL握手協(xié)議的消息,將其判定為非SSL 流,因此,會產(chǎn)生漏識別的情況。為了解決這一問題,本文提出一種基于Bit 級DPI 的SSL 加密流量識別。

SSL 加密的數(shù)據(jù)包根據(jù)其消息類型的不同,有不同的消息格式,但其前5 個字節(jié)的格式是固定的,分別表示通信的階段(握手(Handshake)、開始加密傳輸(ChangeCipherSpec)還是正常通信(Application)等),SSL 協(xié)議版本號和剩余包長度[2],如表1 所示。基于位級DPI的SSL加密流量識別方法,僅使用來自TCP數(shù)據(jù)段的少量初始位,并將不變位標(biāo)識為位指紋。隨后,對這些指紋進行編碼,將其轉(zhuǎn)換為狀態(tài)轉(zhuǎn)換機,用來識別SSL流量。這種方法擴大了SSL流識別的范圍,不僅能夠識別SSL握手階段的流,同時也能識別數(shù)據(jù)傳輸階段的SSL流。

表1 協(xié)議前5個字節(jié)格式Table 1 First five bytes of protocol format

整個識別過程分為以下幾個部分:

(1)重構(gòu)流

網(wǎng)絡(luò)流由兩個主機之間交換的一系列數(shù)據(jù)包組成。這兩個主機由兩個唯一的IP 地址標(biāo)識。共享相同5 元組的所有包都是流的一部分,依據(jù)相同的5元組信息對流進行重構(gòu),從而將所有數(shù)據(jù)包(流內(nèi))的有效載荷數(shù)據(jù)都被獲取并連接起來,用作后續(xù)指紋生成階段的輸入。

(2)位指紋生成

位編碼使用前一階段選擇的有效載荷的不變位集生成應(yīng)用程序特定的位指紋。假設(shè)訓(xùn)練集中存在L(L∈I)個SSL流,它從SSL的L個流中各收集前n位,并為SSL流生成n位位指紋。第h個流(1 ≤h≤L)的前n位為f1h,f2h,…,fnh。L個流都被提取都用于生成如下位指紋。每個流提取的第k位[1,n]位置用來決定SSL流的第k個指紋位。指紋創(chuàng)建過程如下所示,其中每個Si是一個指紋位:

如果每個流的第k位(1 ≤k≤L)的值都為0,k指紋位設(shè)置為0,如果每個流的第k位(1 ≤k≤L)的值為1,k指紋位設(shè)置為1。如果這些位的位置中有0位和1位,則第k個指紋位設(shè)置為“^”。圖3 顯示了SSL 流的位指紋生成過程,在這個示例中,有3 個流,每個流有15 位,用于指紋生成。

圖3 生成位指紋Fig.3 Generate bit signature

(3)運行長度編碼

指紋位由1 位、0 位和^位組成,每個指紋為n位。為了有效地表示、存儲和比較,對這n位進行了運行長度編碼(RLE)。RLE 是一種用于無損數(shù)據(jù)壓縮的技術(shù)。RLE 通過指定重復(fù)次數(shù)來減少重復(fù)字符串的大小。在RLE中,數(shù)據(jù)的運行是指在許多連續(xù)數(shù)據(jù)元素中具有相同數(shù)據(jù)值的序列存儲為單個值,并存儲該數(shù)據(jù)值重復(fù)的次數(shù)計數(shù)。例如,它的位值是1111111000000^^^^111,在使用RLE編碼之后,它被轉(zhuǎn)換為7O6Z4^3O顯示狀態(tài)。

(4)狀態(tài)轉(zhuǎn)換機器創(chuàng)建

經(jīng)過第(3)步驟之后生成一個編碼指紋,將經(jīng)過編碼的位指紋轉(zhuǎn)換成狀態(tài)轉(zhuǎn)換機。然后與需要的網(wǎng)絡(luò)流量流進行比較,以識別應(yīng)用程序。狀態(tài)轉(zhuǎn)換機的定義如下:

用20 位指紋(11111111000000^^^111,編碼指紋為8O6Z3^3O)生成的示例狀態(tài)轉(zhuǎn)換機如圖4 所示。在狀態(tài)轉(zhuǎn)換機中有5種狀態(tài),從q0到q4,q0是開始狀態(tài),q4是結(jié)束狀態(tài)。每個狀態(tài)都有一個計數(shù)器(C0到C4),每次轉(zhuǎn)換訪問該狀態(tài)時,該計數(shù)器都會被初始化為一個新值。機器在q0狀態(tài)下啟動,將q0的計數(shù)器設(shè)置為0,從測試流中讀取比特,并進行允許的轉(zhuǎn)換以達到最終狀態(tài)。狀態(tài)轉(zhuǎn)換機的轉(zhuǎn)換有一個輸入符號(位值)和一個對計數(shù)器值的約束,計數(shù)器值充當(dāng)保護,只有當(dāng)約束被滿足(評估為true)時,才允許轉(zhuǎn)換。

圖4 生成狀態(tài)轉(zhuǎn)換機Fig.4 Transition machine of generating state

在圖4中,狀態(tài)q0在輸入1上定義了一個到自身的轉(zhuǎn)換。這個轉(zhuǎn)換對C0的計數(shù)器值有一個約束,它在0到8之間。這個約束映射了在開始時在流中讀取8個連續(xù)的1 要求。從q0到q1的轉(zhuǎn)換是在輸入0 上,只有當(dāng)C0處的計數(shù)器值為8時才有效(已經(jīng)讀取了8個連續(xù)的1),并將q1處的計數(shù)器C1設(shè)置為1(在8 個連續(xù)的1 之后讀取0)才有效。無論何時在指紋中有^,它將有兩個轉(zhuǎn)換,一個是輸入0,另一個是輸入1,這兩個轉(zhuǎn)換都將增加計數(shù)器值。

(5)識別SSL流

與狀態(tài)轉(zhuǎn)換機匹配的簽名過程如圖5 所示。與簽名生成過程類似,在這個階段也存在重構(gòu)該流,數(shù)據(jù)流的前n位被提取出來作為輸入(從第一個位到最后一個位,每次一個位),來自測試流的n位將提供給SSL狀態(tài)轉(zhuǎn)換機。SSL狀態(tài)轉(zhuǎn)換機進行了允許的轉(zhuǎn)換,如果數(shù)據(jù)流能達到SSL 狀態(tài)轉(zhuǎn)換機最終狀態(tài),則流被標(biāo)記SSL流;如果沒有達到最終狀態(tài),則標(biāo)記為非SSL流。

圖5 匹配狀態(tài)轉(zhuǎn)換機Fig.5 Transition machine of matching state

以位序列11111111000000101111 和001111110000 00101111。第一個序列作為輸入提供11111111000000 101111 給圖4 狀態(tài)轉(zhuǎn)換機,很容易看到它到達最終狀態(tài),因為它以8個1開始,接下來是6個0,隨后三位0或1都行,最后三位數(shù)是1。然而,第二個序列不被狀態(tài)轉(zhuǎn)換機接受,因為它從0開始,并且當(dāng)計數(shù)器C0在狀態(tài)q0下為0時,不存在與輸入0的轉(zhuǎn)換。

3 基于注意力機制的改進CNN 網(wǎng)絡(luò)流量分類識別模型

3.1 基于注意力機制的CNN結(jié)構(gòu)

在本文中注意力機制模塊引入到一維CNN 中,包含特征的聚合和尺度恢復(fù)兩個部分。特征聚合主要是采用多層次的卷積和池化層次的堆疊,從跨尺度的子序列中提取出細(xì)粒度的顯著性的特征,最后一層上則用來挖掘其中的線性關(guān)系。尺度恢復(fù)指是將關(guān)鍵性的特征直接恢復(fù)到與網(wǎng)絡(luò)模型中的CNN模塊的輸出保持一致。為將數(shù)值直接保持在0~1 之間,采用Sigmoid 函數(shù)。最后將獲得的上下文特征,作為實際的基礎(chǔ)性的顯著性特征。

令xi∈Rk,也就是用k維向量表示數(shù)據(jù)流中的第i個流量字節(jié),一個長度為n的數(shù)據(jù)流的定義如下:

xi:j為流量字節(jié)的連接結(jié)果,卷積操作由一個過濾器或卷積核構(gòu)成,w∈Rhk,過濾器的窗口寬度為h,過濾器對一組流量字節(jié)操作一次,就輸出一個新的特征CI。具體操作如下:

其中,Patt為注意力機制的權(quán)重,b為偏置項,f是ReLU的非線性函數(shù)。過濾器將在每個可能的流量字節(jié)窗口進行操作,產(chǎn)生一個特征映射。時序最大池化操作,在特征映射上找到最大值,最終輸出對應(yīng)輸入在每一類輸出上的概率分布。

基于注意力機制的CNN 結(jié)構(gòu),由于將原本的CNN的輸入替換為注意力模塊支路輸入,并采用堆疊深層卷積和池化層的方式,所以擴大了特征對應(yīng)的輸入感受野。這樣有利于捕捉網(wǎng)絡(luò)流量中存在的依賴性,從而學(xué)習(xí)當(dāng)前局部序列特征的重要程度。通過引入注意力模塊,能夠提高重要時序特征的影響權(quán)重,抑制非重要特征時序的干擾,因而有效解決了模型無法區(qū)分時間序列數(shù)據(jù)重要程度的差異性的問題。

3.2 基于注意力機制的改進CNN 網(wǎng)絡(luò)流量分類識別模型

本文提出的基于注意力機制的改進CNN網(wǎng)絡(luò)流量分類識別模型如圖6所示。模型包含數(shù)據(jù)預(yù)處理、模型訓(xùn)練和模型測試3個階段。

圖6 改進的CNN網(wǎng)絡(luò)流量分類識別模型Fig.6 Improved traffic classification and recognition model of CNN network

數(shù)據(jù)預(yù)處理階段:將數(shù)據(jù)集中的原始流量進行預(yù)處理,得到CNN 模型輸入所需的數(shù)據(jù)格式文件。這里使用的王偉博士開發(fā)的USTC-TK2016,包括流量切分、流量清理、圖片生成、IDX轉(zhuǎn)換4個步驟[13]。流程全過程如圖7所示。

圖7 網(wǎng)絡(luò)流量數(shù)據(jù)預(yù)處理流程圖Fig.7 Flow chart of network traffic data preprocessing

訓(xùn)練階段:使用上一階段處理得到的流量數(shù)據(jù)(IDX3 格式)和標(biāo)簽數(shù)據(jù)(IDX1 格式)訓(xùn)練改進的CNN模型,訓(xùn)練方法是最小批隨機梯度下降技術(shù)。為使模型具有良好的泛化能力,訓(xùn)練采用10 折交叉驗證技術(shù)。最終,得到的改進CNN 模型作為測試階段使用的模型。

測試階段:使用訓(xùn)練階段得到改進的CNN模型數(shù),對數(shù)據(jù)預(yù)處理階段輸出的IDX3格式的測試數(shù)據(jù)進行類別預(yù)測,得出最終分類結(jié)果。

其中,在數(shù)據(jù)預(yù)處理階段的圖片生成步驟,每個流量結(jié)果樣本可以表示成28×28 像素的灰度圖,結(jié)果如圖8 所示。從流量可視化的結(jié)果看,大部分圖片之間還是很容易區(qū)分的。SSL VPN 流量的黑色部分主要集中在底下部分,而非SSL VPN 流量的黑色部分主要集中在底部1/4 處。因此二者之間的區(qū)分度較為明顯,可以推測,使用CNN 模型對其進行分類應(yīng)該能夠取得良好效果。

圖8 可視化結(jié)果Fig8 Visualization results

4 實驗結(jié)果及分析

4.1 實驗數(shù)據(jù)集

本文采用的數(shù)據(jù)集是Lashkai等人[14]在2016年發(fā)布的VPN-nonVPN數(shù)據(jù)集,共包含28 GB數(shù)據(jù)。該實驗室的官網(wǎng)對數(shù)據(jù)集進行了詳細(xì)介紹,并提供下載,不同類別的流量生成方式如表2所示。

表2 實驗數(shù)據(jù)集Table 2 Experimental data set

4.2 SSL流識別結(jié)果

SSL加密的數(shù)據(jù)包雖然有不同的消息格式,但其前5個字節(jié)的格式是固定的。分別表示通信的階段(握手(Handshake)、開始加密傳輸(ChangeCipherSpec)還是正常通信(Application)等)、SSL 協(xié)議版本號和剩余包長度[9]。因此,本文選定SSL流數(shù)據(jù)包的前40位生成指紋將壓縮后,生成狀態(tài)轉(zhuǎn)換機,用以識別SSL 流。由于傳統(tǒng)的SSL 加密流量指紋識別方法在沒有檢測到完整的SSL 握手協(xié)議的消息,就會將其判定為非SSL 流。本文在此基礎(chǔ)上提出了基于Bit級DPI的SSL加密流量識別技術(shù),有效地解決了傳統(tǒng)SSL 加密流量指紋識別方法存在的漏識別率較高的問題。除Vimeo 等少數(shù)流量識別率未到97%外,其余應(yīng)用的SSL 流識別率均達到99%以上,與傳統(tǒng)SSL 識別方法的實驗結(jié)果對比如圖9所示。

圖9 SSL流識別結(jié)果對比Fig.9 Comparison of SSL stream identification results

4.3 改進CNN模型識別VPN流量實驗結(jié)果

本文選擇精準(zhǔn)率P、召回率R和F1這3 項評分來評估基于注意力機制的改進CNN模型。其計算公式為:

式中,Tp真正表示加密流量的樣本被正確識別的個數(shù),F(xiàn)p假正表示真實是加密流量但被錯誤的標(biāo)識的個數(shù),F(xiàn)N假負(fù)表示未加密流量的樣本被正確識別的個數(shù)。

為了驗證本文提出的算法模型的有效性及優(yōu)越性,本文選擇了KNN(K近鄰)、PGA-RF(基于參數(shù)優(yōu)化的改進RF 算法)和CGA-RF(基于子分類器優(yōu)化的改進RF算法)進行比較。為驗證一維CNN 模型相比于二維CNN 模型更適合于流量分類,本文還設(shè)計了二維CNN模型與之對比,結(jié)果如表3所示。

從表3 可以看出,相比較于傳統(tǒng)的機器學(xué)習(xí)算法,本文提出的模型具有很好的識別效果,網(wǎng)絡(luò)流量的服務(wù)識別性能都有了大幅度的提升。本文方法的準(zhǔn)確率為97.6%,相比于文獻[7]中KNN 的83.7%提升了13.9個百分點。與文獻[9]中改進的方法PGA-RF 的91.6%相比,CGA-RF 的92.2%提升了0.6 個百分點。在精確率對比實驗中,本文方法的精確率為98%,相比于文獻[7]中KNN 的83.9%提升了14.1 個百分點,而參考文獻[9]中PGA-RF、CGA-RF 的精確度分別為92.1%、92.6%,本文方法精確率明顯高于參考文獻[9]。同時本實驗還對召回率進行了對比,召回率優(yōu)于文獻[7]中KNN的82.5%與文獻[9]中91.1%和91.9%。最后,本文方法與各方法的F1-score 進行對比,本文方法的F1-score 為97.8%,文獻[7]中KNN 為83%,參考文獻[9]的F1-score 分別為92.3%、92.1%,本文方法F1-score 上也是高于參考文獻[9],提升了5.7 個百分點。綜合4 項指標(biāo)對比實驗可以看出,本文模型優(yōu)于文獻[7]中使用的KNN 與文獻[9]中改進傳統(tǒng)機器學(xué)習(xí)方法PGA-RF 與CGA-RF。

表3 SSL VPN 流量識別結(jié)果對比Table 3 Comparison of SSL VPN traffic identification results

通過四項指標(biāo)對比實驗可以看出,一維CNN 模型在準(zhǔn)確率、精確率、和F1-score 上均優(yōu)于二維CNN 模型。這是由于網(wǎng)絡(luò)流量本質(zhì)上是一種時序數(shù)據(jù),是按照字節(jié)、幀、會話、整個流量層次化結(jié)構(gòu)組織起來的一維字節(jié)流,因此選擇一維CNN 網(wǎng)絡(luò)模型識別加密流量更符合數(shù)據(jù)流的特征。

此外,相比于其他普通的深度神經(jīng)網(wǎng)絡(luò)模型,本文所提模型在準(zhǔn)確率上提升了2.9 個百分點,精確率提升了2.9 個百分點,召回率提升了2.7 個百分點,F(xiàn)1-score則提升了3.2個百分點。這是由于注意力機制的引入能夠?qū)W(wǎng)絡(luò)流量中存在的依賴性的進行有效捕捉,從而提高重要時序特征的影響,抑制非重要特征時序的干擾,因而有效解決了模型無法區(qū)分時間序列數(shù)據(jù)重要程度的差異性的問題。

因此,本文還將改進前后的一維CNN 網(wǎng)絡(luò)模型進行了對比,分別選擇前5 輪訓(xùn)練的準(zhǔn)確率結(jié)果進行比較,如圖10。可以看出引入注意力機制的改進CNN 模型比普通的CNN 模型收斂速度快,且平均準(zhǔn)確率提升了0.3 個百分點以上。如圖11 展示了基于注意力機制的改進的CNN識別模型在實際訓(xùn)練過程中準(zhǔn)確率的變化趨勢;圖12 展示了是基于注意力機制的改進CNN 識別模型訓(xùn)練過程中的損失率變化的情況。

圖10 改進前后的一維CNN網(wǎng)絡(luò)實驗對比圖Fig.10 One-dimensional CNN network experimental comparison diagram of before and after improvement

圖11 模型訓(xùn)練過程中準(zhǔn)確率的變化Fig.11 Change of accuracy during model training

圖12 模型訓(xùn)練過程中損失率的變化Fig.12 Change of loss during model training

5 結(jié)語

本文提出了一種基于混合方法的SSL VPN 加密流量識別方法。本文的Bit 級DPI 技術(shù)識別SSL 流具有快速、準(zhǔn)確的優(yōu)點,極大地改善了流的漏識別問題,最大程度上發(fā)揮了DPI 的優(yōu)勢。所提基于注意力機制的改進CNN 網(wǎng)絡(luò)流量識別模型對SSL VPN 流量識別,其平均的精準(zhǔn)率、召回率和F1-score 分別達到了98.0%、96.9%和97.8%,與傳統(tǒng)的流量識別模型相比具有優(yōu)良的識別性能,實現(xiàn)了SSL VPN 加密流量的有效識別。

猜你喜歡
網(wǎng)絡(luò)流量指紋加密
基于多元高斯分布的網(wǎng)絡(luò)流量異常識別方法
基于神經(jīng)網(wǎng)絡(luò)的P2P流量識別方法
像偵探一樣提取指紋
為什么每個人的指紋都不一樣
一種基于熵的混沌加密小波變換水印算法
AVB網(wǎng)絡(luò)流量整形幀模型端到端延遲計算
基于自適應(yīng)稀疏變換的指紋圖像壓縮
認(rèn)證加密的研究進展
可疑的指紋
基于ECC加密的電子商務(wù)系統(tǒng)
长治市| 聂拉木县| 区。| 阜康市| 长乐市| 泗水县| 宁陕县| 仙桃市| 东乡族自治县| 阜平县| 翁源县| 贵南县| 恩平市| 玉树县| 黔南| 仪征市| 栖霞市| 绵竹市| 宁陕县| 贡嘎县| 驻马店市| 开封县| 西丰县| 阜城县| 民丰县| 临颍县| 屏东市| 怀集县| 南京市| 马龙县| 开原市| 册亨县| 昌江| 桂阳县| 玉溪市| 黄骅市| 和林格尔县| 冷水江市| 海口市| 东平县| 磐石市|