本文提出了一種基于FPGA的硬件防火墻的實現方案,采用了FPGA來實現千兆線速的防火墻。傳統的基于X86等通用CPU的防火墻無法支撐快速增長的網絡速度,無法實現線速過濾和轉發。本文在采用FPGA可編程器件+通用CPU模式下,快速處理網絡數據。網絡數據在建立連接跟蹤后,直接由FPGA實現的快速處理板直接轉發,實現了網絡數據的線速處理,通用CPU在操作系統支持下,完成網絡數據的連接跟蹤的創建、維護,對網絡規則表的維護等工作。FPGA硬件板和CPU各司所長,實現快速轉發的目的。 本文設計了基于FPGA的硬件板的硬件規格,提出了硬件連接跟蹤表的存儲模式,以及規則表的存儲模式和定義等; 防火墻系統軟件采用NetBSD操作系統,完成了硬件板的NetBSD的驅動;在軟件系統完成了新建連接的建立、下發、老化等工作;在連接跟蹤上完成了規則的建立、刪除、修改等工作。 本文完成了防火墻的實現。實現了基于連接跟蹤的包過濾、地址轉換(NAT),設計了連接跟蹤的關鍵數據結構,包過濾的關鍵數據結構等,重用了NetBSD操作系統的路由。本文針對地址轉換應用程序的穿透問題,新增了部分實現。 在DoS攻擊是一種比較常見的攻擊網絡手段,本文采用了軟硬件結合的方法,不僅在軟件部分做了完善,也在硬件部分采取了相應的措施,測試數據表明,對常見的Syn洪水攻擊效果明顯。 在實踐過程中,我們發現了NetBSD操作系統內核的軟件缺陷,做了修正,使之更完善。 經過測試分析,本方案不僅明顯的優于X86方案,和基于NP方案、基于ASIC方案比較,具有靈活、可配置、易升級的優點。
標簽:
FPGA
硬件
防火墻
上傳時間:
2013-06-21
上傳用戶:zxh1986123