dzyjc7 发表于 2012-4-29 10:35

IPS上的奇葩

  基于FPGA的特性,在IPS上采用的FPGA技术最为有代表。TippingPoint的技术经理李臻表示,在IPS中FPGA擅长把一些安全特征转化成逻辑,在实现过程中能够同时配批上千条规则,其并行速度超过普通CPU,而且相对于并行ASIC,其灵活性占有较大优势。毕竟,各种安全攻击的变化很快,也许今天写的过滤器一个月后就要改写了。

  同时,对于IPS这种采用In Line模式的设备,必须保证最小的误报与漏报率,而基于FPGA实现的移动偏移量检测,则是必须的手段。因为对攻击来说,一般都是混合在正常的网络流量中。换句话说,其在一个IP包里面的位置(偏移量)是不固定的。

  一般IPS需要在流量中不断寻找可疑特征,以便引起触发机制,但要注意,这个可疑特征不一定就是攻击行为。因此IPS必须抓到大量的可疑特征,然后交给CPU进行验证,以便判断是否为攻击。但在这个过程中,最关键的一点就是,这个抓取可疑特征的速度一定要快,否则就会导致漏报。因此如果仅靠CPU做所有的工作,其速度无法保证。而利用FPGA的高速度帮助进行基层筛选,然后交由CPU确认,就可以最大限度地确保设备架构的优化。

  “在整个特征抓取过程中,偏移量可以是不定的,比如内容字节的不定长度。而NP一般只能进行固定偏移量的抓取,比如从IP包头结束开始56个字节地方有特征,然后去查找。但如果需要对整个PageLoad里面1500个字节都扫描一便,NP的开销太大。FPGA利用哈希算法来控制,从PageLoad中取片断,然后做算法,再到表里面去查。”李臻说。

  另外,他觉得在IPS中采用FPGA,可以最大程度保护用户投资。这个投资保护分为两个方面:第一,FPGA的性能优势具有良好的抗小包攻击能力。因为对于X86架构来讲,基于中断的CPU处理方式在对抗小包的时候性能损耗太大。其实这个也很好理解,一般安全设备保护的多为服务器,而服务器的CPU往往要比安全设备中用的好,如果服务器都挡不住小包,安全设备又如何防范?为此,用户往往需要购买单独的防御DDoS的设备,增加了安全成本。而相对于CPU,FPGA在这方面具备很强的性能优势。

  第二,FPGA的扩展性较好。在的IPS中使用的FPGA往往有一定的预留性,比如一个常见的800万门的FPGA芯片,一般实际使用仅为200万门左右。预留的部分就是为了安全设备日后升级所用(甚至可以进行不用重起的FPGA升级)。虽然使用CPU的安全产品也可以做到低利用率,但其压力的承受与升级会有挑战。比如在4G左右的吞吐率情况下,打开500条安全规则,配置2颗CPU。如果用户线路的流量逐年增加,而微软每月发布的漏洞也超过5个,其他的系统漏洞也不断更新,而新的攻击也会出现,在这个情况下,一般不到一年就会增加到800条规则。而CPU利用率的预留很难在安全算法不断变化的情况下界定,同时一旦CPU需要增加或者升级,其往往要带动软件设计的升级,以便更好的负载均衡或者任务分担,其复杂度也要超过FPGA。
页: [1]
查看完整版本: IPS上的奇葩