基于FPGA上實(shí)現(xiàn)硬件入侵檢測(cè)系統(tǒng)的設(shè)計(jì)_第1頁(yè)
基于FPGA上實(shí)現(xiàn)硬件入侵檢測(cè)系統(tǒng)的設(shè)計(jì)_第2頁(yè)
基于FPGA上實(shí)現(xiàn)硬件入侵檢測(cè)系統(tǒng)的設(shè)計(jì)_第3頁(yè)
基于FPGA上實(shí)現(xiàn)硬件入侵檢測(cè)系統(tǒng)的設(shè)計(jì)_第4頁(yè)
基于FPGA上實(shí)現(xiàn)硬件入侵檢測(cè)系統(tǒng)的設(shè)計(jì)_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于FPGA上實(shí)現(xiàn)硬件入侵檢測(cè)系統(tǒng)的設(shè)計(jì)1引言隨著互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡(luò)流量不斷增大、網(wǎng)絡(luò)攻擊類型層出不窮。入侵檢測(cè)的高速度、低漏檢率、低誤報(bào)率等要求,使傳統(tǒng)的以軟件為核心的IDS面臨著越來(lái)越大的壓力。僅靠模式匹配算法的改進(jìn)對(duì)入侵檢測(cè)速度的提高是有限的,不是解決問(wèn)題的根本策略。通過(guò)對(duì)入侵檢測(cè)系統(tǒng)中檢測(cè)速度瓶頸及模式匹配算法的分析,提出了基于硬件實(shí)現(xiàn)入侵檢測(cè)的策略。在系統(tǒng)中用硬件代替?zhèn)鹘y(tǒng)入侵檢測(cè)系統(tǒng)中的軟件實(shí)現(xiàn)主要部件功能:如數(shù)據(jù)采集和過(guò)濾、多模式匹配及數(shù)據(jù)包調(diào)度等,硬件實(shí)現(xiàn)比軟件實(shí)現(xiàn)的速度能顯著提高。2系統(tǒng)設(shè)計(jì)系統(tǒng)原型的設(shè)計(jì)基于SOPC技術(shù),采用了多處理器并行處理結(jié)構(gòu)、可擴(kuò)充指令集和協(xié)處理器加速算法等設(shè)計(jì)思想。其核心內(nèi)容是采用多級(jí)并行處理技術(shù)和專用功能部件代替復(fù)雜費(fèi)時(shí)算法,以獲得極大的數(shù)據(jù)包處理性能。1.系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)原型系統(tǒng)的主要部件有數(shù)據(jù)采集模塊、報(bào)文分派器、軟核處理單元、模式匹配協(xié)處理器、自定義指令、主控通路接口及響應(yīng)輸出等。系統(tǒng)的體系結(jié)構(gòu)如圖1所示。為了解決高速網(wǎng)絡(luò)環(huán)境下入侵檢測(cè)系統(tǒng)的檢測(cè)速度瓶頸問(wèn)題,在入侵檢測(cè)過(guò)程的各個(gè)環(huán)節(jié)中,各處理器部件都必須能線速處理數(shù)據(jù)包。本系統(tǒng)中采用硬件模塊實(shí)現(xiàn)數(shù)據(jù)采集功能,對(duì)數(shù)據(jù)包的分析檢測(cè)模塊采用并行處理的方法來(lái)提速;另外還采用協(xié)處理器來(lái)加速完成模式匹配過(guò)程?;贔PGA協(xié)處理器能夠加速多種不同的算法,其獲得的性能是軟件實(shí)現(xiàn)性能的幾十倍。2.?dāng)?shù)據(jù)采集部件傳統(tǒng)的網(wǎng)絡(luò)數(shù)據(jù)截獲用軟件實(shí)現(xiàn),通過(guò)函數(shù)拷貝MAC緩沖區(qū)內(nèi)的數(shù)據(jù)包來(lái)實(shí)現(xiàn)數(shù)據(jù)采集,運(yùn)行速度低,丟包率高。本系統(tǒng)中的數(shù)據(jù)采集和過(guò)濾模塊直接用硬件實(shí)現(xiàn)。當(dāng)輸入端口有數(shù)據(jù)進(jìn)來(lái)時(shí),過(guò)濾單元選擇性的把需要的數(shù)據(jù)拷貝到Buffer中,具有很高的采集速度,在千兆環(huán)境下丟包率很低。報(bào)文分派器按照公平的輪詢策略依次從輸入通路上讀取IP報(bào)文,然后根據(jù)輸入緩沖中FIFO的空閑狀況,將IP報(bào)文分派到軟核處理器的輸入緩沖FIFO中。3.軟核處理器單元使用SOPCBuilder定義網(wǎng)絡(luò)處理器原型芯片中的并行處理單元——AlteraNiosⅡ處理器軟核。定義中需要設(shè)置各種硬件參數(shù),包括工作頻率、cache選項(xiàng)、加電引導(dǎo)方式、中斷寄存器設(shè)置、內(nèi)存大小、Flash基地址以及各種的訪問(wèn)模式和地址映射等。依次對(duì)多個(gè)處理器軟核進(jìn)行描述,并因此生成每個(gè)處理器軟核的邏輯符號(hào)和軟件編程接口,生成.elf文件。對(duì)芯片原型中的其他硬件邏輯設(shè)計(jì)采用硬件描述語(yǔ)言,生成的硬件配置數(shù)據(jù)與處理器軟核的.elf文件合成用于配置芯片原型FPGA的.hex文件。本系統(tǒng)芯片原型內(nèi)的多個(gè)PE采用并行結(jié)構(gòu),各個(gè)PE有自己的數(shù)據(jù)和指令存儲(chǔ)器,共享模式匹配協(xié)處理器模塊。PE之間的通信使用并行通信接口PIO來(lái)實(shí)現(xiàn)。其中NiosⅡ是微處理器軟核,RAM和Cache存放指令和數(shù)據(jù),Load_Header和Send_Header是報(bào)文頭輸入/輸出邏輯,LookupControllor是多模式匹配協(xié)處理器接口邏輯,Cam_updateControllor是規(guī)則表管理邏輯接口,PIO是并行通信接口。4.協(xié)處理器設(shè)計(jì)盡管有軟件模式匹配算法的改進(jìn),模式匹配仍然是高速流量分析的限制。我們通過(guò)下載所有模式匹配任務(wù)到可重配置的FPGA協(xié)處理器來(lái)消除這個(gè)瓶頸。FPGA能對(duì)Snort規(guī)則中每種模式與包內(nèi)容進(jìn)行比較,整個(gè)規(guī)則集裝入在一個(gè)低端FPGA設(shè)備上。本系統(tǒng)中處理器軟核NiosⅡ共享匹配查表協(xié)處理器,采用總線仲裁器共享機(jī)制。每個(gè)處理器軟核有一個(gè)匹配查表協(xié)處理器的接口控制器Lookup,它作為自定義指令邏輯包含在處理器軟核內(nèi)部。匹配查表協(xié)處理器與處理器軟核并行工作,通過(guò)查詢方式判斷協(xié)處理器工作是否結(jié)束。協(xié)處理器使用CAM存放規(guī)則表。3系統(tǒng)關(guān)鍵技術(shù)及實(shí)現(xiàn)1.多處理器技術(shù)PE(ProcessorElement)是網(wǎng)絡(luò)處理器的核心部件,承擔(dān)系統(tǒng)內(nèi)主要計(jì)算任務(wù),每個(gè)PE實(shí)際上是一個(gè)微處理器核。網(wǎng)絡(luò)處理器通常包括多個(gè)PE,PE之間有兩種主要連接方式:并行連接和串行連接。2.多級(jí)并行處理技術(shù)網(wǎng)絡(luò)數(shù)據(jù)包處理存在本質(zhì)上的并行性,為了昀大限度地提高報(bào)文處理速度,滿足網(wǎng)絡(luò)應(yīng)用的需求,網(wǎng)絡(luò)處理器實(shí)現(xiàn)不同層次并行處理:實(shí)現(xiàn)處理器級(jí)并行處理、通過(guò)硬件多線程實(shí)現(xiàn)線程級(jí)的并行處理、通過(guò)指令流水線實(shí)現(xiàn)指令級(jí)的并行處理。處理器間的并行還可以分為PE之間的并行運(yùn)行及PE與協(xié)處理器之間的并行。3.硬件線程和“0開(kāi)銷”切換技術(shù)PE內(nèi)部采用硬件多線程技術(shù),每個(gè)PE中有多個(gè)硬件線程,硬件線程是指享有獨(dú)立的程序計(jì)數(shù)器、寄存器和存儲(chǔ)空間的線程?!?”延遲切換原理是:硬件線程在進(jìn)行線程切換時(shí),既不需要保存將要停止運(yùn)行的線程的現(xiàn)場(chǎng)信息,也不需要恢復(fù)即將運(yùn)行的就緒進(jìn)程的現(xiàn)場(chǎng)信息,因此不消耗PE資源,能做到“0開(kāi)銷”切換。NP利用硬件線程掩蓋了線程切換的延遲,提高了PE的運(yùn)行效率。一般地,通過(guò)合理設(shè)計(jì)調(diào)度策略,PE運(yùn)行效率可接近。4.分布式數(shù)據(jù)存儲(chǔ)技術(shù)存儲(chǔ)器也是網(wǎng)絡(luò)處理器的關(guān)鍵,其存取速度和帶寬是影響網(wǎng)絡(luò)處理器性能的重要因素。按照存儲(chǔ)轉(zhuǎn)發(fā)的思想,所有報(bào)文進(jìn)入網(wǎng)絡(luò)處理器后必須緩存。要線速處理報(bào)文,報(bào)文的輸出速度必須與輸入速度一致,既存儲(chǔ)器帶寬是端口速度的兩倍以上,這對(duì)目前存儲(chǔ)器是一個(gè)巨大的挑戰(zhàn)。一方面,NP采用數(shù)據(jù)分布式存儲(chǔ)結(jié)構(gòu)。NP內(nèi)設(shè)置多級(jí)存儲(chǔ)器:片上快速存儲(chǔ)器和片外慢速存儲(chǔ)器。另一方能,網(wǎng)絡(luò)處理器采用數(shù)據(jù)預(yù)取、塊傳送、高速數(shù)據(jù)通路等技術(shù)來(lái)解決高速計(jì)算和高速數(shù)據(jù)傳送的問(wèn)題。5.系統(tǒng)實(shí)現(xiàn)本系統(tǒng)是面向入侵檢測(cè)的網(wǎng)絡(luò)處理器原型,入侵檢測(cè)的流程包括數(shù)據(jù)采集、數(shù)據(jù)包預(yù)處理、數(shù)據(jù)包檢測(cè)、及響應(yīng)四個(gè)步驟。原型系統(tǒng)將入侵檢測(cè)的主要工作,如數(shù)據(jù)采集及過(guò)濾、多模式匹配、數(shù)據(jù)包在多處理單元上的分派等用硬件實(shí)現(xiàn),而數(shù)據(jù)包的分析檢測(cè)也用多個(gè)處理單元進(jìn)行并行處理。該原型系統(tǒng)包括:一個(gè)主控模塊、一個(gè)硬件數(shù)據(jù)采集模塊、八個(gè)軟核并行處理單元、一個(gè)多模式匹配協(xié)處理器。系統(tǒng)采用報(bào)文分派器完成IP報(bào)文到核處理器的分派任務(wù),軟核微處理器對(duì)報(bào)文做入侵檢測(cè)。每個(gè)軟核微處理器都擁有一個(gè)輸入緩沖FIFO和輸出緩沖FIFO,用于緩沖需要處理的報(bào)文。響應(yīng)和輸出控制模塊根據(jù)報(bào)文的檢查結(jié)果,決定是否作為非法包丟棄還是作為正常包轉(zhuǎn)發(fā)到相應(yīng)的輸出數(shù)據(jù)通路上。4系統(tǒng)測(cè)試及性能分析為了進(jìn)行系統(tǒng)測(cè)試,開(kāi)發(fā)了如圖2所示的驗(yàn)證平臺(tái)。系統(tǒng)原型驗(yàn)證平臺(tái)使用多片F(xiàn)PGA實(shí)現(xiàn)各種功能接口,同時(shí)將網(wǎng)絡(luò)處理器的核心功能在單個(gè)FPGA芯片中實(shí)現(xiàn),用于支持網(wǎng)絡(luò)處理器控制功能和系統(tǒng)管理功能的主控模塊也采用一個(gè)獨(dú)立的FPGA實(shí)現(xiàn)。系統(tǒng)性能測(cè)試在系統(tǒng)驗(yàn)證平臺(tái)下進(jìn)行。通過(guò)JTAG接口將驗(yàn)證平臺(tái)與微機(jī)相連,使用IDE開(kāi)發(fā)環(huán)境進(jìn)行軟件調(diào)試。報(bào)文生成器是FPGA內(nèi)的一個(gè)模塊,使用它能產(chǎn)生變長(zhǎng)的連續(xù)報(bào)文。網(wǎng)絡(luò)處理器芯片的輸入端接收33位數(shù)據(jù)(32位數(shù)據(jù)和1位標(biāo)志位),經(jīng)報(bào)文分派器分配給多個(gè)PE進(jìn)行處理。每個(gè)PE對(duì)報(bào)文頭進(jìn)行解析,并查找規(guī)則表,產(chǎn)生11位轉(zhuǎn)發(fā)控制信息用于輸出控制。在FPGA上進(jìn)行模式匹配的重要性能指標(biāo)是吞吐率。我們通過(guò)輸入不同大小的數(shù)據(jù)包進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表1所示。PE讀取第一個(gè)報(bào)文頭到讀取第二個(gè)報(bào)文頭的時(shí)間為246個(gè)時(shí)鐘周期,報(bào)文處理延遲為4920ns,實(shí)驗(yàn)測(cè)量值與計(jì)算值基本符合。實(shí)驗(yàn)中系統(tǒng)每秒處理330K個(gè)報(bào)文,系統(tǒng)的吞吐率與報(bào)文長(zhǎng)度有關(guān),總的吞吐率理論上可達(dá)到14Gbps,但理論值只有在PE與協(xié)處理器滿負(fù)荷運(yùn)行下才有可能獲得。從表1還可看出,在FPGA內(nèi)部隨著資源使用的增加,內(nèi)部延遲會(huì)增加,吞吐率稍有降低。5小結(jié)通過(guò)對(duì)入侵檢測(cè)系統(tǒng)中檢測(cè)速度瓶頸的分析,設(shè)計(jì)了一個(gè)基于硬件的入侵檢測(cè)系統(tǒng)原型。該原型采用基于網(wǎng)絡(luò)處理器的硬件策略取代傳

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論