六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

首頁 > 電腦資訊 > 網站建設SEO

攻防戰-ip黑白名單防火墻frdev的原理與實現

作者:佚名   來源:本站   時間:2018-01-01  點擊:84次

 ·實現方案選擇:

  硬件實現或者軟件實現?

  在面對諸如大量畸形包這樣的攻擊時,硬件實現將會是非常好的選擇,這是因為在進行此類型的封包過濾時,系統需要記憶的狀態很少(對于FPGA、ASIC諸多硬件實現方案來講,記憶元件的成本決不可忽視,寄存器與靜態RAM都非常昂貴,所以當需要記憶的信息很少時,純硬件方案的速度優勢使得其完勝軟件方案)。

  但是,當狀態機需要處理龐大的記憶信息時,我們就需要選擇廉價的存儲器——動態隨機存儲器(如SDRAM中的DDR3)來作為系統狀態機的存儲介質,以降低系統的成本和復雜度。這時,軟件實現更勝一籌。盡管純硬件實現的速度會比軟件的方式高出很多,但我們也從第一篇文章《DDoS攻防戰 (一) : 概述》中lvs性能的測試結果中看到,軟件實現的、作為服務器前端均衡調度器的lvs,性能理想并且能勝任實際生產環境中的、龐大的用戶請求處理,可見,如果設計合理,軟件實現的性能無需過多擔憂。

  最終,我們決定采用軟件的方法來實現所需的ip黑白名單模塊。

 

·最終系統鳥瞰:

  筆者花費大約二十天的時間,使用C語言實現了這一模塊,其中,內核空間的核心代碼約2300行,用戶空間管理工具的代碼總行數約為700行。下為系統的鳥瞰:

 

·用戶空間管理工具fripadm,通過ioctl與工作于內核態的frdev模塊進行通信

  ·frdev維護兩個double_hash_table的實例,并提供了一個掛在NF_INET_PRE_ROUTING的鉤子函數,其通過操作這兩個double_hash_table的實例以分別實現ip黑名單、白名單的功能

  ·frdev通過內核中設備驅動的ioctl機制,向用戶空間提供這兩個double_hash_table實例的操作函數,而我們的用戶空間管理工具fripadm正是基于此而實現的

 

struct fr_ip_hash_array的功能:
  精確ip查詢;
  模糊ip查詢;
  自定義hash表的長度;
  自定義hash function,其輸入散列隨機數為rnd;
  維護精確ip的哈希表;
  維護模糊ip的鏈表;
  維護精確ip與模糊ip的諸統計信息;

·為什么使用雙哈希表緩沖?

  請考慮如下場景:

  情況1:來自應用層的DDoS攻擊常常是瞬間涌入大量非法ip請求,例如數萬個非法ip,所以,對于防火墻黑白名單功能的要求至少有如下:能在很短的時間內更新大量數據項,且不能造成系統服務停頓。

 

  分析:如果只使用一個全局的哈希表,當在短時間內進行大量的數據項增刪時,例如,成千上萬個,此時,即使采用多把讀寫鎖分割哈希表的策略,對共享資源的競爭也依然將嚴重影響系統響應速度,嚴重時系統可能會停頓或者更糟,對于生產環境中的高負載服務器,這是無法容忍的。

推薦游戲

換一換
主站蜘蛛池模板: 亚洲综合色播 | 日韩成人在线视频 | 人人精品 | 天天射天天操天天 | 日本乱中文字幕系列在线观看 | 日韩视频在线精品视频免费观看 | 一二三四免费高清观看在线观看 | 热99这里有精品综合久久 | 手机看片午夜 | 一二三四社区在线高清3 | 中文字幕在线导航 | 天堂在线资源网 | 视频在线免费高清 | 天天影视色香欲性综合网网站 | 手机看片日韩 | 欧美一区二区三区久久综合 | 青青草华人| 一级做a爰片久久毛片一 | 中文字幕成人免费高清在线 | 日韩经典欧美精品一区 | 啪啪噜噜 | 特黄十八岁大片 | 在线观看精品国产福利片100 | 青娱乐福利 | 日本视频在线免费播放 | 四虎影院免费在线 | 日韩欧美综合在线二区三区 | 日韩啪啪片 | 日日噜噜噜夜夜爽爽狠狠视频 | 亚洲成人播放 | 在线高清h视频在线观看 | 色视频在线观看免费 | 四虎最新永久免费网址 | 在线天堂中文新版www | 在线免费观看日本 | 日韩在线观看视频免费 | 日韩视频在线一区 | 日本v片免费一区二区三区 日本vs欧美一区二区三区 | 中日韩欧美风情视频 | 亚洲爱视频 | 天天干在线影院 |