999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于混合模式匹配算法的網(wǎng)絡(luò)入侵檢測

2022-12-01 01:06:12琰,馬
計算機測量與控制 2022年11期
關(guān)鍵詞:檢測

周 琰,馬 強

(國家氣象信息中心,北京 100081)

0 引言

隨著計算機網(wǎng)絡(luò)入侵技術(shù)的快速發(fā)展,防火墻、用戶身份驗證和數(shù)據(jù)加密等傳統(tǒng)安全技術(shù)已無法充分保障網(wǎng)絡(luò)安全[1]。網(wǎng)絡(luò)入侵檢測系統(tǒng)(NIDS)作為對網(wǎng)絡(luò)傳輸進行即時監(jiān)視的防御機制,可以有效提高網(wǎng)絡(luò)系統(tǒng)的安全性[2]。NIDS可分為兩類[3]:基于異常的檢測和基于模式的檢測。其中,基于異常的檢測將入侵者不同于正常網(wǎng)絡(luò)的異常行為識別為惡性攻擊,從而可以檢測到未知和已知攻擊,但檢測結(jié)果假陽性率高[4];基于模式的檢測通過匹配預(yù)定義的攻擊模式來檢測異常,具有操作簡單、誤報率低的優(yōu)點,但無法檢測新型入侵攻擊模式[5]。

通常,當數(shù)據(jù)包有效載荷中識別出任何異常模式,NIDS將發(fā)出警告并攔截該數(shù)據(jù)包,從而保護網(wǎng)絡(luò)中的正常資源[6]。當采用基于模式的檢測設(shè)計NIDS時,模式匹配過程占NIDS執(zhí)行時間約70%[7],設(shè)計出高效的模式匹配算法對模式識別至關(guān)重要。模式匹配消耗系統(tǒng)執(zhí)行時間的70%,是影響NIDDS系統(tǒng)整體性能的關(guān)鍵因素。模式匹配算法可以分為單模式匹配和多模式匹配。其中,單模式匹配是在一個字符串內(nèi)找到單一模式,例如,字符串查找(KMP)算法[8]和字符串匹配(BM)算法[9];多模式匹配可以同時識別一個字符串中的多個模式,例如,Wu-Manber(WM)算法[10]和Aho-Corasick匹配(AC)算法[22]。

利用硬件處理的模式匹配算法主要通過可編程門陣列(FPGA)[11]、內(nèi)容可尋址存儲器(CAM)[12]和特定應(yīng)用集成電路(ASIC)[13],從而實現(xiàn)高效匹配速度。然而相比硬件實現(xiàn)算法相比,在通用處理器(GPP)[14]上通過軟件實現(xiàn)算法具有成本低、可擴展性強的優(yōu)點。目前,單獨利用中央處理器(CPU)運算能力無法滿足高速網(wǎng)絡(luò)條件下模式識別速度,現(xiàn)有研究側(cè)重于在軟件平臺部署具有更高并行處理能力的圖形處理單元(GPU)來實現(xiàn)模式匹配算法[15]。盡管GPU比CPU具有更強的處理能力,但基于GPU的模式匹配算法在內(nèi)核啟動和數(shù)據(jù)傳輸方面具有延遲,導致整體性能受到限制[16]。此外,CPU所支持的單指令多數(shù)據(jù)(SIMD)操作可用于加速模式匹配。因此,在CPU和GPU之間設(shè)計高效的協(xié)同模式匹配算法已成為研究熱點。文獻[17]提出了基于拋物線Radon變換的CPU/GPU協(xié)同模式匹配算法,通過CPU多線程與多個GPU協(xié)同并行提高網(wǎng)絡(luò)流量檢測的吞吐量。文獻[18]利用基于隊列的混合調(diào)度策略設(shè)計了CPU/GPU協(xié)同模式匹配算法,縮短了CPU與GPU完成各自計算任務(wù)后的等待時間,加快了網(wǎng)絡(luò)流量檢測的整體延遲。文獻[19]和文獻[20]根據(jù)CPU處理后的數(shù)據(jù)包加載到GPU平臺的移植過程,分別設(shè)計了非確定性有窮自動機(NFA)和確定性有窮自動機(DFA),優(yōu)化了網(wǎng)絡(luò)接口與CPU和GPU的并行性,從而提高了僵尸網(wǎng)絡(luò)檢測處理性能。文獻[21]設(shè)計了基于CPU/GPU混合模式匹配算法(HPMA)的NIDS,實現(xiàn)CPU與GPU任務(wù)分配平衡,但具有不同長度的輸入流量數(shù)據(jù)包會導致GPU并行處理多線程執(zhí)行時間的增加,從而導致網(wǎng)絡(luò)流量檢測的吞吐量下降。

本文提出了一種具有長度約束的CPU/GPU混合模式匹配算法(LHPMA)來設(shè)計NIDS。當傳入數(shù)據(jù)包加載到CPU時,LHPMA根據(jù)預(yù)先設(shè)定的有效載荷長度約束對數(shù)據(jù)包進行提前分類。長度超過約束的數(shù)據(jù)包直接分配給CPU進行快速預(yù)過濾;否則,數(shù)據(jù)包直接分配給GPU進行全模式匹配。通過減少有效載荷長度的多樣性,提升了CPU/GPU協(xié)同檢測網(wǎng)絡(luò)入侵的性能。

1 CPU/GPU混合模式匹配算法(HPMA)

文獻[21]提出的HPMA將網(wǎng)絡(luò)入侵檢測任務(wù)分為兩部分:數(shù)據(jù)包預(yù)過濾和全模式匹配。利用CPU執(zhí)行預(yù)過濾對“正常”和“可疑”數(shù)據(jù)包進行分類,結(jié)合GPU對可疑數(shù)據(jù)包進行全模式匹配。HPMA的整體架構(gòu),如圖1所示。

圖1 HPMA的整體架構(gòu)

首先,傳入數(shù)據(jù)包發(fā)送至CPU的主存儲器中,CPU訪問數(shù)據(jù)包并根據(jù)查找表(表名、基本信息表、間接尋址表和字段說明)對數(shù)據(jù)包進行預(yù)過濾。當表的大小足夠小時,可以降低內(nèi)存訪問延遲并減少預(yù)過濾時間,從而提高過濾率并降低數(shù)據(jù)傳輸延遲。然后,將預(yù)過濾后的可疑數(shù)據(jù)包發(fā)送至GPU進行全模式匹配。由于GPU紋理內(nèi)存的訪問延遲比設(shè)備內(nèi)存的訪問延遲低得多,采用AC算法[22]對GPU紋理內(nèi)存中存儲的可疑數(shù)據(jù)包進行全模式匹配,并將查找表(狀態(tài)轉(zhuǎn)換表、接受狀態(tài)表和失敗狀態(tài)表)復制到GPU紋理內(nèi)存中,從而加快檢測速度。最后,當全模式匹配完成后,將數(shù)據(jù)包匹配結(jié)果復制并返回CPU主存儲器。

通過在HPMA中使用預(yù)過濾方法,CPU可以進行快速的預(yù)過濾并達到較高的過濾率,從而減少GPU的延遲,提升網(wǎng)絡(luò)流量檢測效率。然而,在以下條件下,HPMA性能會受到限制:①所有傳入數(shù)據(jù)包最終都傳送至GPU,造成多余操作[23];②網(wǎng)絡(luò)流量由不同長度的數(shù)據(jù)包組成,造成GPU并行處理中每個線程的執(zhí)行時間不一致[24]。針對限制①,文獻[25]提出了基于性能的CPU/GPU混合模式匹配算法(CHPMA),CHPMA首先估計系統(tǒng)的CPU和GPU處理能力,在運行期間,CHPMA根據(jù)CPU的歷史過濾率和GPU處理能力自動進行處理選擇。針對限制②,本文提出了LHPMA來提升CPU/GPU協(xié)同檢測網(wǎng)絡(luò)入侵的性能。

2 具有長度約束的HPMA(LHPMA)

2.1 整體架構(gòu)和程序

與文獻[21]中的HPMA不同,本文提出的LHPMA在CPU對數(shù)據(jù)包進行預(yù)過濾期間,增加了長度約束分離算法(LBSA),即傳入數(shù)據(jù)包發(fā)送至CPU主存儲器之前,通過LBSA處理后進入預(yù)過濾緩沖區(qū)。LBSA主要用于檢查數(shù)據(jù)包有效載荷長度并對數(shù)據(jù)包進行分類。在經(jīng)過LBSA處理后,部分數(shù)據(jù)包存儲在CPU主存儲器中的預(yù)過濾緩沖區(qū)中,從而直接交付給CPU作預(yù)過濾的準備;剩余數(shù)據(jù)包則直接發(fā)送至CPU主存儲器中的全匹配緩沖區(qū),用于存儲要由GPU處理的全模式匹配數(shù)據(jù)包。LHPMA的整體架構(gòu),如圖2所示。

圖2 LHPMA的整體架構(gòu)

當CPU主存儲器中的預(yù)過濾緩沖區(qū)變滿時,則由CPU訪問數(shù)據(jù)包并根據(jù)查找表(表名、基本信息表、間接尋址表和字段說明)對數(shù)據(jù)包進行預(yù)過濾,預(yù)過濾的數(shù)據(jù)包也發(fā)送至全匹配緩沖區(qū);當全匹配緩沖區(qū)變滿時,緩沖區(qū)內(nèi)的數(shù)據(jù)包就會轉(zhuǎn)移到GPU設(shè)備內(nèi)存中,采用AC算法[22]對GPU紋理內(nèi)存中存儲的可疑數(shù)據(jù)包進行全模式匹配,并將查找表(狀態(tài)轉(zhuǎn)換表、接受狀態(tài)表和失敗狀態(tài)表)復制到GPU紋理內(nèi)存中,從而加快檢測速度。最后,當全模式匹配完成后,將數(shù)據(jù)包匹配結(jié)果復制并返回CPU主存儲器。LHPMA的整體過程,如圖3所示。

圖3 LHPMA整體過程

2.2 長度約束分離算法(LBSA)

LBSA的偽代碼,如算法1所示。LBSA算法根據(jù)預(yù)先設(shè)定的有效載荷長度約束對傳入數(shù)據(jù)包進行分類,從而減少GPU并行處理的有效載荷長度多樣性。給定數(shù)據(jù)包有效載荷集P和長度約束Lb,LBSA算法可以用Lb確定P中的有效載荷。

算法1:長度約束分離算法(LBSA)

輸入:數(shù)據(jù)包有效載荷集P和長度約束Lb

輸出:數(shù)據(jù)包有效載荷匹配結(jié)果

1)TPB←空;//預(yù)過濾緩沖區(qū)

2)TFB←空;//全匹配緩沖區(qū)

3)Pf←空;//預(yù)過濾有效載荷

4)idxPB←0;//預(yù)過濾緩沖區(qū)的索引

5)for每個Pido

6)Li←Pi的有效載荷長度

7)ifLi>Lbthen

8)TPB[idxPB]←Pi;//將Pi存儲在預(yù)過濾緩沖區(qū)中

9)idxPB←idxPB+1;

10)else

11)TFB←TFB∪Pi;//將Pi存儲在全匹配緩沖區(qū)中

12)end

13)

14)ifTPB變滿時then

15)Pf←預(yù)過濾的TPB;//執(zhí)行預(yù)過濾算法

16)TFB←TFB∪Pf;//將Pf存儲在全匹配緩沖區(qū)中

17)Pf←空;

18)TPB←空;

19)idxPB←0;

20)end

21)

22)ifTFB變滿時then

23) 結(jié)果←全匹配的TFB;//執(zhí)行全匹配算法

24)TFB←空;//匹配結(jié)果復制并返回

25)end

26)end

最初,預(yù)過濾緩沖區(qū)TPB和全匹配緩沖區(qū)TFB為空。同時,設(shè)置有效載荷集Pf用于臨時存儲預(yù)過濾結(jié)果,也是空(第1~3行)。預(yù)過濾緩沖區(qū)的索引idxPB設(shè)置為0(第4行)。對于P中的每個有效載荷,LBSA測量數(shù)據(jù)包Pi的有效載荷長度Li,從而與長度約束Lb進行比較(第5~6行)。如果有效載荷長度Li超過長度約束Lb,則系統(tǒng)將數(shù)據(jù)包Pi存儲在預(yù)過濾緩沖區(qū)TPB中,并等待CPU執(zhí)行預(yù)過濾過程(第7~8行)。在數(shù)據(jù)包Pi存儲在TPB后,預(yù)過濾緩沖區(qū)的索引idxPB將增加 (第9行)。否則,數(shù)據(jù)包Pi將存儲在全匹配緩沖區(qū)TFB中,并等待GPU執(zhí)行全模式匹配(第10~11行)。

當預(yù)過濾緩沖區(qū)TPB變滿時,則緩沖區(qū)中的所有數(shù)據(jù)包由CPU執(zhí)行預(yù)過濾得到有效載荷集Pf,并將其存儲在全匹配緩沖區(qū)TFB中(第14~16行),系統(tǒng)清除存儲在Pf、TPB和idxPB中的數(shù)據(jù)并繼續(xù)處理下一批傳入數(shù)據(jù)包(第17~19行)。同時,當全匹配緩沖區(qū)TFB變滿時,緩沖區(qū)中的所有數(shù)據(jù)包將復制到GPU設(shè)備內(nèi)存中并由GPU執(zhí)行全模式匹配過程。最后,將數(shù)據(jù)包匹配結(jié)果復制并返回CPU主存儲器,系統(tǒng)會清除存儲在TFB的數(shù)據(jù)(第22~24行)。

在本文設(shè)計的LBSA算法中,較短的數(shù)據(jù)包有效載荷由GPU處理,從而提高整體效率。由于使用較短數(shù)據(jù)包是一種典型的攻擊方式,大量的數(shù)據(jù)包可以在較短的時間內(nèi)生成并發(fā)送,如果將此類數(shù)據(jù)包直接發(fā)送至GPU,則可以減少由此類數(shù)據(jù)包引起的CPU預(yù)過濾的冗余操作。此外,GPU可以對較短數(shù)據(jù)包進行較強的并行處理。同時,較長數(shù)據(jù)包由CPU進行預(yù)過濾而不發(fā)送至GPU進行全模式匹配檢測,從而減輕了GPU處理負擔并減少數(shù)據(jù)傳輸延遲。

3 實驗分析

3.1 實驗設(shè)置

本文設(shè)計的預(yù)過濾和全模式匹配分別基于CPU和GPU組成的通用并行計算架構(gòu)(CUDA)平臺實現(xiàn)多線程并行處理。實驗的硬件規(guī)格,如表1所示。

表1 實驗的硬件規(guī)格

CUDA平臺中配置的GPU塊數(shù)和每塊的線程數(shù)分別為128和64。同時,設(shè)置的預(yù)過濾緩沖區(qū)和全匹配緩沖區(qū)分別為1 MB和256 MB。利用文獻[21]中的HPMA算法的源代碼創(chuàng)建LHPMA算法的源代碼,結(jié)合算法1創(chuàng)建LBSA算法的源代碼,所有源代碼采用GCC4.8.4進行編譯,操作系統(tǒng)利用64位的Ubuntu14.04(內(nèi)核版本3.13)。

本文從Snort入侵檢測系統(tǒng)提取并生成實驗所需的模式集。Snort構(gòu)成的模式集包含的模式數(shù)量最多,但字符數(shù)最少。模式集中的數(shù)據(jù)包長度從1到208 bytes不等,平均為13.8 bytes。如果輸入數(shù)據(jù)流中的字符串是模式集中任何模式的重要前綴字符串,則視為惡意攻擊。如果前綴字符串覆蓋了整個字符串的80%以上,則視為正常流量。對于每個輸入數(shù)據(jù)流量,根據(jù)匹配率,從模式集中隨機選擇適當?shù)那熬Y,并嵌入正常流量中。對于Snort構(gòu)成的模式集采用HTML格式,并在Linux服務(wù)器中的/usr/bin下的所有文件連接起來作為正常數(shù)據(jù)流。同時,利用模式集生成預(yù)過濾和全模式匹配的查詢表,并加載到檢測系統(tǒng)中。從谷歌、亞馬遜和雅虎的門戶網(wǎng)站提取的網(wǎng)絡(luò)流量中選取真實的數(shù)據(jù)包檢測作為傳入數(shù)據(jù)包的輸入。輸入流量中的數(shù)據(jù)包有效載荷長度信息,如表2所示。

表2 輸入流量的數(shù)據(jù)包有效載荷長度信息

3.2 CPU與GPU之間的數(shù)據(jù)傳輸性能

在分析LHPMA的結(jié)果之前,還需分析影響GPU處理性能的因素。不同全匹配緩沖區(qū)中CPU和GPU之間的數(shù)據(jù)平均傳輸速率,如圖4所示。其中,x軸表示全匹配緩沖區(qū)的大小,y軸表示以Gbps為單位的數(shù)據(jù)平均傳輸速率,AC-GPU表示利用GPU通過AC算法檢測數(shù)據(jù)包的匹配方法。

圖4 全匹配緩沖區(qū)中CPU和GPU之間的數(shù)據(jù)平均傳輸速率

由圖4可以看出,當全匹配緩沖區(qū)較小時,數(shù)據(jù)傳輸率非常低,即傳輸?shù)臄?shù)據(jù)包有效載荷很少。例如,當全匹配緩沖區(qū)為0.25 MB時,數(shù)據(jù)傳輸速率為1.95 Gbps。當全匹配緩沖區(qū)較大時,更多的數(shù)據(jù)包有效載荷在同一時間被傳輸,GPU執(zhí)行的數(shù)據(jù)傳輸速率會更高。例如,當全匹配緩沖區(qū)為256 MB時,數(shù)據(jù)傳輸速率為35.1 Gbps。最佳方案的并不是將全匹配的緩沖區(qū)大小設(shè)置的越大越好,這是由于過大的緩沖區(qū)會導致數(shù)據(jù)包有效載荷等待時間過長,從而影響整體性能。因此,選擇位于數(shù)據(jù)傳輸速率收斂的轉(zhuǎn)折點作為全匹配緩沖區(qū)的臨界值,本文選取全匹配緩沖區(qū)為256 MB。

3.3 GPU處理性能

不同全匹配緩沖區(qū)中GPU性能,如圖5所示。其中,x軸表示全匹配緩沖區(qū)的大小,y軸表示以Gbps為單位的平均吞吐量,AC-GPU-100和AC-GPU-1460分別表示較短(100 bytes)和較長(1 460 bytes)數(shù)據(jù)包有效載荷集。

圖5 全匹配緩沖區(qū)中GPU性能

由圖5可以看出,在全匹配緩沖區(qū)中,AC-GPU-1460比AC-GPU-100的吞吐量低,較長的數(shù)據(jù)包有效載荷集在全匹配緩沖區(qū)的吞吐量較小,這是由于LBSA算法將較長的數(shù)據(jù)包過濾后直接發(fā)送至全匹配緩沖區(qū),等待GPU的處理,造成了GPU性能降低。當全匹配緩沖區(qū)較小時,GPU性能較低,尤其是在全匹配緩沖區(qū)為2 MB的AC-GPU-1460情況下。數(shù)據(jù)包有效載荷的數(shù)量很少,導致GPU線程利用率低,從而降低了整體性能。即輸入有效載荷集的長度也會影響GPU效率。較短的數(shù)據(jù)包可收集成更多的數(shù)據(jù)包,有利于GPU的并行處理能力。因此,AC-GPU-100的效率表現(xiàn)為5.37 Gbps到9.03 Gbps,高于 AC-GPU-1460從2.71 Gbps到6.10 Gbps的效率。

不同有效載荷長度中GPU性能,如圖6所示。

圖6 有效載荷長度中GPU性能

由圖6可以看出,較短的數(shù)據(jù)包有利于GPU效率。這是由于GPU具有較強的并行處理能力,可將較短的數(shù)據(jù)包中的有效載荷集在GPU紋理內(nèi)存中集中收集狀態(tài)轉(zhuǎn)換表并做統(tǒng)一識別處理,加速了并行處理較短的數(shù)據(jù)包的能力。當有效載荷集長度為250 bytes時,GPU最多可以完成高達8.0 Gbps的吞吐量。隨著有效載荷長度的增加,GPU的吞吐量逐漸下降。這是由于GPU設(shè)備內(nèi)存中較短的有效載荷數(shù)量多于較長的有效載荷數(shù)量,同時,GPU內(nèi)核的數(shù)量遠大于CPU內(nèi)核的數(shù)量,從而GPU利用多線程并行處理提高檢測流量的吞吐量。

3.4 LHPMA性能

不同有效載荷長度約束中LHPMA性能,如圖7所示。其中,x軸表示有效載荷長度約束Lb,y軸表示以Gbps為單位的平均吞吐量,LHPMA-AC表示LHPMA通過AC算法檢測數(shù)據(jù)包的匹配方法。

圖7 有效載荷長度約束中LHPMA性能

由圖7可以看出,當Lb=0時,所有傳入數(shù)據(jù)包都以12.7 Gbps的吞吐量通過預(yù)過濾緩沖區(qū),即數(shù)據(jù)包通過LBSA算法后所有數(shù)據(jù)包都沒有通過預(yù)過濾緩沖區(qū)就被發(fā)送至CPU。隨著Lb的增加,吞吐量提升至14.0 Gbps。當Lb=750時,這與圖6的結(jié)果相對應(yīng)。即通過LBSA算法將較長的數(shù)據(jù)包存儲在CPU主存儲器中的預(yù)過濾緩沖區(qū)中,CPU訪問較長的數(shù)據(jù)包并根據(jù)查找表(表名、基本信息表、間接尋址表和字段說明)對數(shù)據(jù)包進行預(yù)過濾,降低內(nèi)存訪問延遲并減少預(yù)過濾時間,同時,較短的數(shù)據(jù)包存儲在CPU主存儲器中的全匹配緩沖區(qū)中,當全匹配緩沖區(qū)變滿時,全匹配緩沖區(qū)內(nèi)的數(shù)據(jù)包就會轉(zhuǎn)移到GPU設(shè)備內(nèi)存中,采用AC算法對GPU紋理內(nèi)存中存儲的可疑數(shù)據(jù)包進行全模式匹配,AC算法通過插入許多模式,從前往后遍歷數(shù)據(jù)包的整個字符串,要插入的字符其節(jié)點再先前已經(jīng)建成,直接去考慮下一個字符即可,當發(fā)現(xiàn)當前要插入的字符沒有再其前一個字符所形成的樹下沒有節(jié)點,就要創(chuàng)建一個新節(jié)點來表示這個字符,接下往下遍歷其他的字符。并將查找表(狀態(tài)轉(zhuǎn)換表、接受狀態(tài)表和失敗狀態(tài)表)復制到GPU紋理內(nèi)存中,使得有效載荷長度的多樣性減少,從而提高過濾率并降低數(shù)據(jù)傳輸延遲。LHPMA提高了檢測流量的吞吐量。當Lb=1 460時,吞吐量下降至5.9 Gbps,這是由于AC算法從數(shù)據(jù)包的根節(jié)點開始,每次根據(jù)讀入的字符沿著自動機向下移動。當讀入的字符,在分支中不存在時,遞歸走失敗路徑。如果走失敗路徑走到了根節(jié)點,則跳過該字符,處理下一個字符。因為AC自動機是沿著輸入文本的最長后綴移動的,所以在讀取完所有輸入文本后,最后遞歸走失敗路徑,直到到達根節(jié)點,這樣可以檢測出所有的模式。所有傳入數(shù)據(jù)包都沒有通過預(yù)過濾緩沖區(qū)就被發(fā)送至GPU,從而數(shù)據(jù)傳輸延遲和有效載荷長度多樣性導致LHPMA性能的下降。

將本文提出的LHPMA與HPMA[21]、僅使用CPU[26]、僅使用GPU[27]的性能進行對比,如圖8所示。其中,HPMA-AC和AC-CPU分別表示HPMA和CPU通過AC算法檢測數(shù)據(jù)包的匹配方法,同時,LHPMA-AC選擇的長度約束Lb=750。

圖8 LHPMA與其他方法的性能對比

由圖8可以看出,LHPMA-AC、HPMA-AC、AC-GPU和AC-CPU的吞吐量分別為13.8、12.7、5.9和4.6 Gbps,表明LHPMA-AC比HPMA-AC增強了性能。這是由于LHPMA-AC比HPMA-AC增加了LBSA算法,根據(jù)預(yù)先設(shè)定的有效載荷長度約束對傳入數(shù)據(jù)包進行分類,較長的數(shù)據(jù)包分配至CPU主存儲器中的預(yù)過濾緩沖區(qū)中,憑借CPU更強的處理能力可以對較長的數(shù)據(jù)包進行檢測,而較短的數(shù)據(jù)包分配至CPU主存儲器中的全匹配緩沖區(qū)中,憑借GPU更強的多線程并行處理能力可以對較短的數(shù)據(jù)包進行檢測,從而減少GPU并行處理的有效載荷長度多樣性。同時,LHPMA-AC分別比僅適用GPU-AC和僅適用CPU-AC方法高出了2.3和3.0倍。這是由于LHPMA-AC綜合了CPU較強的處理能力和GPU并行處理能力,提升了CPU/GPU協(xié)同檢測網(wǎng)絡(luò)入侵的性能。

4 結(jié)束語

本文提出了一種具有數(shù)據(jù)包有效載荷長度約束的CPU/GPU混合模式匹配算法(LHPMA)來設(shè)計NIDS,提高了輸入流量中各種有效載荷長度情況下的入侵檢測效率。通過預(yù)先設(shè)定長度約束分離算法(LBSA)對傳入數(shù)據(jù)包進行分類,減少有效載荷長度的多樣性。將較長的數(shù)據(jù)包分配給CPU主存儲器的預(yù)過濾緩沖區(qū)中,直接由CPU訪問數(shù)據(jù)包并根據(jù)查找表對數(shù)據(jù)包進行預(yù)過濾,并將預(yù)過濾的數(shù)據(jù)包也發(fā)送至全匹配緩沖區(qū)。同時,將較短的數(shù)據(jù)包分配給CPU主存儲器的全匹配緩沖區(qū)中,并發(fā)送至GPU設(shè)備內(nèi)存中,結(jié)合AC算法對GPU紋理內(nèi)存中存儲的可疑數(shù)據(jù)包進行全模式匹配,提升了CPU/GPU協(xié)同檢測網(wǎng)絡(luò)入侵的性能。實驗結(jié)果表明,在LBSA算法中選擇適當?shù)拈L度約束,可以有效提升LHPMA的性能,并且LHPMA的性能優(yōu)于HPMA以及CPU和GPU的單獨處理方法。未來的研究中,將致力于分析輸入流量中不同有效載荷長度分布情況,改進 LHPMA方法對CPU/GPU協(xié)同處理網(wǎng)絡(luò)入侵的性能。

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數(shù)的乘除法”檢測題
“有理數(shù)”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 奇米精品一区二区三区在线观看| 在线观看亚洲人成网站| 国产成人高清亚洲一区久久| 亚洲一本大道在线| 欧美色综合久久| 亚洲制服中文字幕一区二区 | 麻豆精选在线| 国产精品无码AⅤ在线观看播放| 免费精品一区二区h| 99热这里都是国产精品| 亚洲第一成年人网站| 玩两个丰满老熟女久久网| 国产亚洲欧美日韩在线一区| 国产 在线视频无码| 久久综合伊人 六十路| 国产av剧情无码精品色午夜| 国产精品网址在线观看你懂的| 免费在线一区| 99热这里只有免费国产精品| 九九这里只有精品视频| 国产成人资源| www精品久久| 久久先锋资源| 国产精品久久久久久久久久久久| 亚洲香蕉伊综合在人在线| a在线观看免费| 久久国产V一级毛多内射| 亚洲精品桃花岛av在线| 亚洲国产成人综合精品2020| 国产精品欧美在线观看| 在线永久免费观看的毛片| 国产网站免费观看| 在线永久免费观看的毛片| 国产色爱av资源综合区| 亚洲一区二区三区在线视频| 在线99视频| 免费毛片a| 一区二区偷拍美女撒尿视频| 国产69精品久久| 亚洲福利片无码最新在线播放| 色男人的天堂久久综合| 夜夜操国产| 97在线免费| 亚洲一区二区视频在线观看| 激情在线网| 全色黄大色大片免费久久老太| 欧类av怡春院| 91青青视频| 国产中文在线亚洲精品官网| 欧美一区二区三区欧美日韩亚洲 | 伊人久久福利中文字幕| 欧美日韩国产系列在线观看| 亚洲狠狠婷婷综合久久久久| 无码又爽又刺激的高潮视频| 欧美国产日韩在线| 国产精品永久在线| 日日碰狠狠添天天爽| 四虎影视8848永久精品| 欧美啪啪精品| 日韩免费视频播播| 视频二区国产精品职场同事| 国产欧美日韩在线一区| 国产亚洲精| 国产女人在线| 中文字幕无码电影| 香蕉国产精品视频| 国产乱论视频| 亚洲中文字幕23页在线| 国产色爱av资源综合区| 99re热精品视频中文字幕不卡| 婷婷色婷婷| 国产va欧美va在线观看| 麻豆AV网站免费进入| 91av国产在线| 国产精品片在线观看手机版 | 国产成人91精品| 67194成是人免费无码| 99这里只有精品在线| 亚洲无码视频一区二区三区| 午夜爽爽视频| 亚洲视频影院| 国产成人91精品|