您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术浅析FPGA在安全产品中的应用 正文
浅析FPGA在安全产品中的应用

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

点击数:7554 次   录入时间:03-04 11:44:18   整理:http://www.55dianzi.com   DSP/FPGA技术

  在 安全产品 中,X86、NP、ASIC、 FPGA 各自代表了不同的体系架构。然而,无论是媒体还是厂商,都难以将一种架构的差异与产品的优劣捆绑在一起,不过面对FPGA在 IPS 中的“杀手”级优势,以及针对市场上愈演愈烈的架构之争,《 网络 世界》有必要与读者一起分享技术上的来龙去脉。

  写在讨论之前

  在阅读本文之前,我们请读者牢记产业经济学上的三个要素:技术、成本与市场需求。因为在FPGA在安全产品的应用进程中,始终离不开这三个支点。

  另外,我们也需要明确以下问题:

  第一,FPGA(FiELD-Programmable Gate Array,现场可编程门阵列)在现代数字电路设计中发挥着越来越重要的作用。从设计简单的接口电路到设计复杂的状态机,甚至设计“System On Chip”(片上系统),FPGA所扮演的角色已经不容忽视。

  第二,FPGA正越来越多地作为现代电子系统的核心部分。因为FPGA硬件可重新配置且可用性、精密性不断提高,可以轻易配合系统规格随时改变的要求,这样可以为用户带来充足的灵活性。

  第三,FPGA是一种高速可编程电子器件,并非 “职业杀手”,其自身的物理特性决定了,有些工作容易发挥其设计优势,而有些则适得其反。

  在明确了上述三个特征之后,接下来记者将会与读者一起分享FPGA在网络安全市场中的故事。同时,我们也非常感谢为本次专题提供芯片技术支持的Xilinx公司,以及我们的合作伙伴:Juniper、神州数码、SINFOR、SonicWall、TiPINgPoint、WatchGuard。

  FPGA的灵活魅力

  在网络安全产品设计的时候,可以采用多种半导体解决方案,相对来讲,目前主要采用的体系架构包括了X86、NP、ASIC、FPGA四种。相对来讲,CPU与NP的联系更紧密,而ASIC与FPGA的关系更相似。

  不过,若从器件角度分析,传统上大多广义地归结为ASIC和可编程器件两类。在安全产品中,两种类别的主要原理与应用并无多大区别。传统上认为,ASIC可以为固定功能提供较高性能,但灵活度相当恶劣。

  而可编程解决方案可提供较高的系统速率,包括复杂功能(特殊和异常处理)、灵活性。目前在安全产品设计中使用的可编程解决方案主要有两类:NP和FPGA。NP可提供以处理器为中心(即以软件为中心)的可编程特性,而FPGA则提供以硬件为中心的可编程特性。

  Xilinx公司提供的报告指出,NP最初被用于设计网络设备中的现成器件,这些器件在各方面提供灵活性和扩展性的同时,还提供了充分的性能。大多数NP均带有多种经过优化的嵌入式RISC CPU以及适用于通用分组处理功能的类ASIC硬件电路。每个RISC引擎经过优化以执行特定任务。

  相对于NP,FPGA是对数据进行高速并行处理的器件,具有更强的灵活性和扩展性。TippingPoint公司技术经理李臻表示,在其公司IPS产品中采用的 Virtex-II Pro FPGA芯片,已经包含了高性能的可编程架构、嵌入式PowerPC处理器和3.125Gbps收发器。通过增强网络特性,FPGA可提供高性能的数据和安全控制处理功能。目前,网络处理内核和分组处理参考设计均适合于采用FPGA平台设计。此外,FPGA还支持所有的通用并行(单端和差动)和串行系统接口标准,以使其轻松地与任何协议进行接口并与线路卡上的任何器件相连。

  Xilinx公司的FPGA解决方案专家Anil认为,在网络安全产品的开发中,尽管二层和三层处理在ASIC中很容易实现,但为了在类似的传输流中区分不同的优先级,还需要在四层和五层中进行更深层的分组处理。而FPGA仅仅需要一块芯片就可以更深入地处理这些分组,不仅降低了软件的复杂度,而且降低了功耗(相比于NP或ASIC)。这是因为FPGA中的硬件并行处理完全可以同RISC的处理方法相媲美。

  另外,在网络安全产品设计中,升级性仍然是关键问题之一,而这包括了产品体系结构的软、硬两个方面。“事实上,相对于NP开发中的软件难以移植问题,无疑增加了设计上的风险。” Anil表示,“FPGA拥有标准化的基于平台和工具集方法的工具,可以实现软件在各代FPGA中的无缝移植。而在硬件方面,NP只在处理器中提供可编程特性,其类似ASIC的定制硬件并不能直接进行编程,而FPGA则要轻松许多。”



www.55dianzi.com

   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芯片。

www.55dianzi.com

  SonICWall北方区技术经理蔡永生认为,由于UTM的环境影响,很可能多内核的安全处理器会更加有优势。因为为安全应用而设计的多内核安全处理器比 FPGA 有更大的灵活性。只要通过软件升级,安全设备可以不断地更新以防御最新的安全威胁,而且性能不比PFGA差。在此基础上,利用一套高性能的DPI深度包检测引擎,实现病毒,入侵和间谍软件的扫描。

[1] [2]  下一页


本文关键字:产品  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术

上一篇:65nm FPGA博弈

《浅析FPGA在安全产品中的应用》相关文章>>>