浅析FPGA在安全产品中的应用

技术分类: 可编程器件  | 2008-02-28
来源:与非网

  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利用哈希算法来控制,从PageLoa

d中取片断,然后做算法,再到表里面去查。”李臻说。

  另外,他觉得在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。

  到期的契约?

  正如本文开头所讲的,FPGA并非职业杀手,其高速、灵活的特征在IPS上具有杀手级潜力,但在其他的安全领域则未必如此。对于目前发展如火如荼的UTM以及高端防火墙市场,体系架构的争论还是很激烈。

  WatchGuard亚太区技术总监叶建辉认为,ASIC的发展速度一定不及通用CPU,用来发展新一代ASIC的时间,通用CPU可能已经经历三至四代。相应的,FPGA的问题也是如此。所以公司决定采取通用CPU作为发展UTM安全平台的架构。从目前的情况看,通用CPU对比专用器件在处理一般安全功能方面没有很大的性能差距,近期更有双核这类高性价比技术的出现,进一步提升了CPU的性能。

  虽然FPGA与ASIC相比相对灵活,可以比较灵活地处理IDS/IPS及防病毒所需更新的签名功能(Signature),但对如今市场对UTM的需求期望,无论是ASIC或FPGA都显得无法灵活处理。

  他指出,在安全产品只提供防火墙及VPN功能的时代,ASIC的设计已经足够。虽然ASIC不够灵活,但它可提供快速处理包过滤这类特定的功能。然后安全产品又加入了IDS/IPS及防病毒等需要快速模式匹配及更新签名的功能,此时FPGA比较灵活的架构就可派上用场。但如今UTM安全平台除了以上的功能,还有防垃圾邮件、防间谍软件及URL/内容过滤等只有通用CPU来架构会才能实现的功能。这些UTM功能不同防火墙/VPN/IDS/IPS,不是单一特定功能或模式匹配,所以用FPGA不能实现大幅提高性能的目的,而在通用CPU架构上同时使用软件可实现更高的整体性能。

  利用CPU架构,WatchGuard的智能分层安全引擎(ILS)在安全操作系统和软件上整合了多种UTM功能。由于有很多攻击并不针对某一项安全功能,智能分层安全引擎能在不同安全层面上互相沟通,所以更能有效的捍卫受保护的网络。

  SINFOR的技术经理叶宜斌认为,X86架构是实现UTM最好的平台。因为大多数的网关型产品都采用这种模式。毕竟UTM的发展趋势是一个设备中集中越来也多的功能,这个是要求需要很高的扩展性,而内容过滤也是目前CPU的强项。但他不排除今后会在中高端UTM产品中加入FPGA芯片。

1】【2】【3
加载中

对文章的评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销