找回密码
 注册
关于网站域名变更的通知
查看: 276|回复: 1
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-12-27 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
浅析FPGA在安全产品中的应用& U8 R% h; M& O' \

0 w- q! a4 {3 J$ _: N% O在安全产品中,X86、NP、ASIC、FPGA各自代表了不同的体系架构。然而,无论是媒体还是厂商,都难以将一种架构的差异与产品的优劣捆绑在一起,不过面对FPGA在IPS中的“杀手”级优势,以及针对市场上愈演愈烈的架构之争,《网络世界》有必要与读者一起分享技术上的来龙去脉。
: M% K" g5 }" B. O  y" k. o- M0 p
  写在讨论之前 # Q; `% P! W' D' L

6 W6 H8 f: [0 d$ R  在阅读本文之前,我们请读者牢记产业经济学上的三个要素:技术、成本与市场需求。因为在FPGA在安全产品的应用进程中,始终离不开这三个支点。
0 }, e7 a5 B* S" u4 k$ M+ d" U1 u. z1 ?
  另外,我们也需要明确以下问题:
# |( S: Q3 X3 l7 U: A; _9 X' c5 Z- {3 ]4 y
  第一,FPGA(Field-Programmable Gate Array,现场可编程门阵列)在现代数字电路设计中发挥着越来越重要的作用。从设计简单的接口电路到设计复杂的状态机,甚至设计“System On Chip”(片上系统),FPGA所扮演的角色已经不容忽视。   N0 ]7 u' [! z
% w0 o0 S6 Y0 [) N0 o
  第二,FPGA正越来越多地作为现代电子系统的核心部分。因为FPGA硬件可重新配置且可用性、精密性不断提高,可以轻易配合系统规格随时改变的要求,这样可以为用户带来充足的灵活性。
* ]0 I8 _8 Y0 \. C; d% C0 \$ J% h, D5 x) A0 N. {" I8 M! d
  第三,FPGA是一种高速可编程电子器件,并非“职业杀手”,其自身的物理特性决定了,有些工作容易发挥其设计优势,而有些则适得其反。
4 F9 Y9 Q2 P; [- m! n6 ^, S1 ?; t) t& e; Z
  在明确了上述三个特征之后,接下来记者将会与读者一起分享FPGA在网络安全市场中的故事。同时,我们也非常感谢为本次专题提供芯片技术支持的Xilinx公司,以及我们的合作伙伴:Juniper、神州数码、SINFOR、SonicWall、TipingPoint、WatchGuard。 , @7 m6 M& n5 l3 B% k% T5 y& e
- y' {2 z% ?0 V& k
  FPGA的灵活魅力
) F7 b  [( Q7 M% O( b: F! F* k* K  l# Y% ~* Y
  在网络安全产品设计的时候,可以采用多种半导体解决方案,相对来讲,目前主要采用的体系架构包括了X86、NP、ASIC、FPGA四种。相对来讲,CPU与NP的联系更紧密,而ASIC与FPGA的关系更相似。
: t) d+ M- ]8 Q/ _3 Q% V/ A1 s, G* Q7 V' j
  不过,若从器件角度分析,传统上大多广义地归结为ASIC和可编程器件两类。在安全产品中,两种类别的主要原理与应用并无多大区别。传统上认为,ASIC可以为固定功能提供较高性能,但灵活度相当恶劣。
. t- ~% s2 ], s
% L3 M  e- u; ^1 U2 m  而可编程解决方案可提供较高的系统速率,包括复杂功能(特殊和异常处理)、灵活性。目前在安全产品设计中使用的可编程解决方案主要有两类:NP和FPGA。NP可提供以处理器为中心(即以软件为中心)的可编程特性,而FPGA则提供以硬件为中心的可编程特性。 . l; _+ {9 `, e0 s/ D- Z; |
. R) n- p6 i6 I: ?* S
  Xilinx公司提供的报告指出,NP最初被用于设计网络设备中的现成器件,这些器件在各方面提供灵活性和扩展性的同时,还提供了充分的性能。大多数NP均带有多种经过优化的嵌入式RISC CPU以及适用于通用分组处理功能的类ASIC硬件电路。每个RISC引擎经过优化以执行特定任务。 6 Z4 R; W5 I$ T% e- h; |' I. T
) [/ f3 E9 F3 F# j5 ?. }, r
  相对于NP,FPGA是对数据进行高速并行处理的器件,具有更强的灵活性和扩展性。TippingPoint公司技术经理李臻表示,在其公司IPS产品中采用的 Virtex-II Pro FPGA芯片,已经包含了高性能的可编程架构、嵌入式PowerPC处理器和3.125Gbps收发器。通过增强网络特性,FPGA可提供高性能的数据和安全控制处理功能。目前,网络处理内核和分组处理参考设计均适合于采用FPGA平台设计。此外,FPGA还支持所有的通用并行(单端和差动)和串行系统接口标准,以使其轻松地与任何协议进行接口并与线路卡上的任何器件相连。
4 V0 Y# p2 }  {5 P2 j' s& i5 r* H- g+ J5 I3 Z& g' m2 R" C7 R
  Xilinx公司的FPGA解决方案专家Anil认为,在网络安全产品的开发中,尽管二层和三层处理在ASIC中很容易实现,但为了在类似的传输流中区分不同的优先级,还需要在四层和五层中进行更深层的分组处理。而FPGA仅仅需要一块芯片就可以更深入地处理这些分组,不仅降低了软件的复杂度,而且降低了功耗(相比于NP或ASIC)。这是因为FPGA中的硬件并行处理完全可以同RISC的处理方法相媲美。 3 q0 u: ~+ b; z/ c) Q- j4 e

6 B0 l- A- P( W1 B  另外,在网络安全产品设计中,升级性仍然是关键问题之一,而这包括了产品体系结构的软、硬两个方面。“事实上,相对于NP开发中的软件难以移植问题,无疑增加了设计上的风险。” Anil表示,“FPGA拥有标准化的基于平台和工具集方法的工具,可以实现软件在各代FPGA中的无缝移植。而在硬件方面,NP只在处理器中提供可编程特性,其类似ASIC的定制硬件并不能直接进行编程,而FPGA则要轻松许多。” 3 a' Z4 F$ r. c1 A8 C0 q3 K
  W# }8 w$ Z( l, _, C
IPS上的奇葩
5 Y$ E+ n6 J- G, {  L
3 P% q. b2 _" t* x# y+ e+ p; d* M" S3 m8 l. s" j
  基于FPGA的特性,在IPS上采用的FPGA技术最为有代表。TippingPoint的技术经理李臻表示,在IPS中FPGA擅长把一些安全特征转化成逻辑,在实现过程中能够同时配批上千条规则,其并行速度超过普通CPU,而且相对于并行ASIC,其灵活性占有较大优势。毕竟,各种安全攻击的变化很快,也许今天写的过滤器一个月后就要改写了。
, ^; f: ]+ [# g5 Z( n- D( }) m# j9 `8 a+ @5 J/ n
  同时,对于IPS这种采用In Line模式的设备,必须保证最小的误报与漏报率,而基于FPGA实现的移动偏移量检测,则是必须的手段。因为对攻击来说,一般都是混合在正常的网络流量中。换句话说,其在一个IP包里面的位置(偏移量)是不固定的。
' g1 N+ x; n: ?9 I, c( M) H
" V7 C0 b- o2 H" T% e  一般IPS需要在流量中不断寻找可疑特征,以便引起触发机制,但要注意,这个可疑特征不一定就是攻击行为。因此IPS必须抓到大量的可疑特征,然后交给CPU进行验证,以便判断是否为攻击。但在这个过程中,最关键的一点就是,这个抓取可疑特征的速度一定要快,否则就会导致漏报。因此如果仅靠CPU做所有的工作,其速度无法保证。而利用FPGA的高速度帮助进行基层筛选,然后交由CPU确认,就可以最大限度地确保设备架构的优化。
8 {5 w8 I8 ]/ a* J0 v2 B: @2 }2 E. J, ^6 V2 q2 I# [- {% B3 G1 @- d8 D
  “在整个特征抓取过程中,偏移量可以是不定的,比如内容字节的不定长度。而NP一般只能进行固定偏移量的抓取,比如从IP包头结束开始56个字节地方有特征,然后去查找。但如果需要对整个PageLoad里面1500个字节都扫描一便,NP的开销太大。FPGA利用哈希算法来控制,从PageLoad中取片断,然后做算法,再到表里面去查。”李臻说。 ! U9 V4 g; p( K2 ^4 x
, }: t0 v2 J" m6 N) L: {; k
  另外,他觉得在IPS中采用FPGA,可以最大程度保护用户投资。这个投资保护分为两个方面:第一,FPGA的性能优势具有良好的抗小包攻击能力。因为对于X86架构来讲,基于中断的CPU处理方式在对抗小包的时候性能损耗太大。其实这个也很好理解,一般安全设备保护的多为服务器,而服务器的CPU往往要比安全设备中用的好,如果服务器都挡不住小包,安全设备又如何防范?为此,用户往往需要购买单独的防御DDoS的设备,增加了安全成本。而相对于CPU,FPGA在这方面具备很强的性能优势。 ! Y. @( S5 ]- [* {

6 O$ F- [- G" n1 }* Y  第二,FPGA的扩展性较好。在的IPS中使用的FPGA往往有一定的预留性,比如一个常见的800万门的FPGA芯片,一般实际使用仅为200万门左右。预留的部分就是为了安全设备日后升级所用(甚至可以进行不用重起的FPGA升级)。虽然使用CPU的安全产品也可以做到低利用率,但其压力的承受与升级会有挑战。比如在4G左右的吞吐率情况下,打开500条安全规则,配置2颗CPU。如果用户线路的流量逐年增加,而微软每月发布的漏洞也超过5个,其他的系统漏洞也不断更新,而新的攻击也会出现,在这个情况下,一般不到一年就会增加到800条规则。而CPU利用率的预留很难在安全算法不断变化的情况下界定,同时一旦CPU需要增加或者升级,其往往要带动软件设计的升级,以便更好的负载均衡或者任务分担,其复杂度也要超过FPGA。
) x0 W# t: [" L. J( p- e( v+ M9 J+ \5 M% ^, Y" f) x# e
  到期的契约? 7 e& _# {  F- g' J5 H3 i

* n& z9 B3 w, g) e% b  正如本文开头所讲的,FPGA并非职业杀手,其高速、灵活的特征在IPS上具有杀手级潜力,但在其他的安全领域则未必如此。对于目前发展如火如荼的UTM以及高端防火墙市场,体系架构的争论还是很激烈。
" u+ k$ R! p- Q  P& G0 O4 a
1 V1 |1 D; ]/ v* S7 D1 M! Q  WatchGuard亚太区技术总监叶建辉认为,ASIC的发展速度一定不及通用CPU,用来发展新一代ASIC的时间,通用CPU可能已经经历三至四代。相应的,FPGA的问题也是如此。所以公司决定采取通用CPU作为发展UTM安全平台的架构。从目前的情况看,通用CPU对比专用器件在处理一般安全功能方面没有很大的性能差距,近期更有双核这类高性价比技术的出现,进一步提升了CPU的性能。 2 r& e1 T) \6 s* Q( M, k- H

" f7 @% `) B! g+ P+ W  虽然FPGA与ASIC相比相对灵活,可以比较灵活地处理IDS/IPS及防病毒所需更新的签名功能(Signature),但对如今市场对UTM的需求期望,无论是ASIC或FPGA都显得无法灵活处理。 9 P! O- y' P- {
; x7 |$ S* s0 }' z
  他指出,在安全产品只提供防火墙及VPN功能的时代,ASIC的设计已经足够。虽然ASIC不够灵活,但它可提供快速处理包过滤这类特定的功能。然后安全产品又加入了IDS/IPS及防病毒等需要快速模式匹配及更新签名的功能,此时FPGA比较灵活的架构就可派上用场。但如今UTM安全平台除了以上的功能,还有防垃圾邮件、防间谍软件及URL/内容过滤等只有通用CPU来架构会才能实现的功能。这些UTM功能不同防火墙/VPN/IDS/IPS,不是单一特定功能或模式匹配,所以用FPGA不能实现大幅提高性能的目的,而在通用CPU架构上同时使用软件可实现更高的整体性能。
) R, _& ?" O( T1 `4 f- S
9 B% ]9 O0 a. L! T2 T! K- s  利用CPU架构,WatchGuard的智能分层安全引擎(ILS)在安全操作系统和软件上整合了多种UTM功能。由于有很多攻击并不针对某一项安全功能,智能分层安全引擎能在不同安全层面上互相沟通,所以更能有效的捍卫受保护的网络。 8 f. f2 A! p, E  W: ~
- Y+ c. A! ?/ h' }; t
  SINFOR的技术经理叶宜斌认为,X86架构是实现UTM最好的平台。因为大多数的网关型产品都采用这种模式。毕竟UTM的发展趋势是一个设备中集中越来也多的功能,这个是要求需要很高的扩展性,而内容过滤也是目前CPU的强项。但他不排除今后会在中高端UTM产品中加入FPGA芯片。 7 Y5 D# B7 H4 X6 o4 D- q4 f. Q4 d

/ `  J5 k  J/ d/ z  SonicWall北方区技术经理蔡永生认为,由于UTM的环境影响,很可能多内核的安全处理器会更加有优势。因为为安全应用而设计的多内核安全处理器比FPGA有更大的灵活性。只要通过软件升级,安全设备可以不断地更新以防御最新的安全威胁,而且性能不比PFGA差。在此基础上,利用一套高性能的DPI深度包检测引擎,实现病毒,入侵和间谍软件的扫描。
1 y5 u( g1 _0 }7 ~; O1 d
( B0 _1 X; I/ M+ H& _1 f  另外,他始终认为,对于大量部署的设备而言,让客户升级FPGA是有难度的,而且存在烧写限制。不过在这一点上,TippingPoint指出其数字疫苗方式(类似Signature)非常便于用户下载、升级,且每周一次的疫苗发布不会突破FPGA的寿命。 7 ~7 m5 h& {9 [* J5 y
2 U+ E" S! M$ B$ q' ?
  作为近两年在安全领域突飞猛进的本土企业代表,神州数码网络的安全技术经理王景辉认为,在不同的需求和不同的环境下,安全厂商会根据自己的产品定位来选择相应的技术手段。不过对于不同的技术本身,他觉得也许不存在好与坏的差异。 9 C4 d2 g1 }& a

; n& Y' E. j" b% ?' A据悉,在神州数码网络最新推出的UTM产品中,采用的也是X86架构,其核心在于保证性能与多功能的前提下,实现最丰富的应用。他认为对于安全产品,特别是具有内容控制的产品,必须提供灵活与使用便利的能力,同时还要为用户提供优秀的性价比。在目前情况下,FPGA的高成本与低功能集成特征,无法满足UTM的需要。
- K1 J8 ^, O1 T8 o
4 Z3 a) B' `1 a; I2 k' |& t; D5 t. U# e+ A5 `4 j' ~
  同时,他也指出,目前国内市场上的UTM产品主要集中在中低端的100M左右产品,在这个吞吐率下,使用X86架构不会带来瓶颈,相反还可以提供更加灵活的部署方案。而如果今后随着双核技术以及CPU技术的进一步发展,加上对吞吐率要求的提高,不排除会在相关产品中加入FPGA的可能性,但这还是要看市场的发展。
. b+ I& d. `+ Y+ q, [  ]! ~
6 G. d) i0 E! _  另外,神州数码网络的产品经理杨雁群表示,利用X86架构不仅可以获得高功能集成,而且可以利用软件确保与周围设备的联动配合。目前神州数码网络打算将UTM产品部署到自己的全网安全解决方案当中,以便获得最佳的安全性与易用性。
2 j' r: i. I; G  O& o( J6 b4 V
6 \( _1 l$ v8 N$ h  作为在众多安全领域都有涉足的Juniper,其产品线涵盖了防火墙、VPN、IPS/IDS、UTM等多个领域,而在不同的产品中,CPU、NP、ASIC、FPGA也都有使用。 : {# [. [, \! O3 g
1 z5 w0 I1 b- Z' I+ ~- m/ b* U
  Juniper技术经理王卫对于不同技术在安全产品中的应用看得十分清楚,他觉得各种技术、体系架构就像一个个名词,本身没有优劣之分,只有在不同环境下,不同产品中,采用最适合技术的选择。
8 |# O5 J' i% [8 I4 t( m# d: I3 A1 e+ {1 I. n2 P
  比如高端防火墙的吞吐率可以达到30G,而在这个模式下,没有用户会去考虑其防病毒的特点,因此用ASIC来实现无疑是合适的。如果用X86架构做,也许满满一机箱的CPU也能做到,但是成本、功耗都是大问题。同样的道理,如果仅仅是一款百兆防火墙,纯粹的CPU可以获得最佳的性价比。
5 x' R9 O# u0 E! z( M' H' p, @; o0 o3 d* z
  但他觉得目前争论的焦点在于百兆防火墙和千兆防火墙的入口,多种技术会有交叉。因此出现CPU+NP+ASIC的架构就不足以为怪。而FPGA也是同样的道理,对于千兆以上,万兆以下的产品,FPGA有可能,但前提是成本。其实很多高端产品在设计模拟阶段用FPGA,但是固定下来后会烧成ASIC。不过到达万兆甚至更高,则很难说了。 ' c, j  C1 p+ P5 p* n  Z8 e
2 P8 v7 a. z# `6 N2 g
  总而言之,他觉得在安全产品中,变化可能性较高的产品用FPGA比较合适,而UTM则基本与FPGA无缘,因为相对来说,这么多年来查病毒就是CPU做的比较好。 - R2 ^$ F* ?5 F8 L6 U% H

/ X2 O6 Q8 ]' ?( `3 C/ z  最后,王卫提出了一个非常有意思的观点:可编程器件的界限会越来越模糊,ASIC已经可以编程,NP和FPGA更加加强了这方面的能力,未来可变化的能力各种体系都有,将来任何一种手段都可以实现灵活的能力。因此未来在体系结构选择中,依然会是:在什么环境下,什么吞吐能力下,选择最合适的技术。 ( o+ v1 K7 O9 {
# t1 n4 j# h5 r8 a8 A5 @
  百家争鸣的体系架构设计 ! l8 K6 S* G8 u( K- E) j- B) @4 M

7 S% q6 q7 j# {* S  Juniper " F# T3 C# s' F  t& B5 L9 L  s/ X

  W6 {" I. }* |! Q6 j" d  c  CPU、NP、ASIC、FPGA各种体系架构都有使用,认为安全产品可以分为100M、100M--1G、1G--10G、10G以上四个阶段,每个阶段的芯片选择与架构设计具有明显的特点。
9 j9 D& m, F( {; a  j( |
* B1 S$ g5 X( Q+ q( _  神州数码 3 n, H8 U% W0 K4 r

# {% w; m4 D& t0 {  另一家具有全系列产品的网络厂商,希望借自身的全网安全方案将防火墙、VPN、IDS、UTM以及桌面保护系统进行整合,同时将在多种架构中进行最适合的取舍,确保整体安全方案的联动与优化。 # d, @+ {# @" A' v2 r& M9 Z, G

. U% {$ s  A1 S  {  SINFOR * _* S! n/ t, H5 z. m2 F+ t7 k' _4 |

* t- A+ M7 M! x2 w/ N5 g  在UTM与VPN中颇有实力的本土厂商,分别拥有X86架构和NP+ASIC架构两条线的产品,并对FPGA很感兴趣。
0 p5 o0 j) ~, H/ W
" Q1 p- J6 Z9 {1 o8 O+ X  SonicWall
4 N* P4 [* |6 T0 b
# D$ G  C4 l4 n0 S  出色的防火墙及UTM厂商,对双核技术分析得很透彻,认为多内核安全处理器将会促使FPGA的杀手契约到期,同时拥有专利的DPI技术。
7 G4 \. N' n0 z( [: ]0 ?5 W9 ~* z! s. [9 X# K' [8 C/ E' m
  TipingPoint ; M; _+ x4 L0 X6 Q

( x# K7 {0 X- h( e0 P, |, r( y$ W  业界公认的最强IPS制造商,唯一获得NSS评测金奖的IPS厂商,凭借在FPGA上的技术优势,取得了很大的轰动效应,据悉即将推出基于FPGA的万兆IPS。 % u( `$ {) t) {4 I

( c" f: i# ^" J  WatchGuard
$ \8 D+ P( w; ~6 `. K/ Z! e
! @+ S2 q! ^6 B% T2 u6 g0 `  一家优秀的UTM厂商,而且一直表示将进军国内的高端应用市场,因此非常关注UTM在应用上的全功能性,有专利的ILS技术。

$ ^& |+ \4 q$ ?4 C' O' Y
; `9 d7 s2 e  s" y% S- G3 B  P* U& \1 T9 G: P; o
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-24 09:28 , Processed in 0.140625 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表