|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
浅析FPGA在安全产品中的应用/ m# k4 O# j7 h" Z
3 s) _. q; h- T- P
在安全产品中,X86、NP、ASIC、FPGA各自代表了不同的体系架构。然而,无论是媒体还是厂商,都难以将一种架构的差异与产品的优劣捆绑在一起,不过面对FPGA在IPS中的“杀手”级优势,以及针对市场上愈演愈烈的架构之争,《网络世界》有必要与读者一起分享技术上的来龙去脉。 * Q" L( ?, B7 T7 o5 i. ]' S
- ?0 Z3 f% b Y; y7 L) K: ?* U 写在讨论之前
) `% y+ L% k( c4 M+ U2 s, V
7 X% l" C7 \9 o% h" N 在阅读本文之前,我们请读者牢记产业经济学上的三个要素:技术、成本与市场需求。因为在FPGA在安全产品的应用进程中,始终离不开这三个支点。
* }9 c9 I2 R/ O/ a0 p( D1 E/ m" y a' Y, n4 f% ]. f; M+ }
另外,我们也需要明确以下问题:
_- ]8 \( W+ C: M& A& s. `
0 M e. g2 a/ a. d$ U 第一,FPGA(Field-Programmable Gate Array,现场可编程门阵列)在现代数字电路设计中发挥着越来越重要的作用。从设计简单的接口电路到设计复杂的状态机,甚至设计“System On Chip”(片上系统),FPGA所扮演的角色已经不容忽视。 6 A+ ~8 R) `0 S6 n; f
+ L- S6 k: Q, q0 v 第二,FPGA正越来越多地作为现代电子系统的核心部分。因为FPGA硬件可重新配置且可用性、精密性不断提高,可以轻易配合系统规格随时改变的要求,这样可以为用户带来充足的灵活性。 9 i- f0 \ q8 ^5 J" J9 B) S% Z
0 P" T; a2 w: A* c- u( u
第三,FPGA是一种高速可编程电子器件,并非“职业杀手”,其自身的物理特性决定了,有些工作容易发挥其设计优势,而有些则适得其反。 ) u, e# i- \% u, U' O; F& K* V
, |& d6 N* B9 B7 P& u& y/ R 在明确了上述三个特征之后,接下来记者将会与读者一起分享FPGA在网络安全市场中的故事。同时,我们也非常感谢为本次专题提供芯片技术支持的Xilinx公司,以及我们的合作伙伴:Juniper、神州数码、SINFOR、SonicWall、TipingPoint、WatchGuard。 / ]( G8 w+ c- K6 ^4 ]4 }
4 O5 i8 [* @% G FPGA的灵活魅力
& I2 [# P/ \( T6 S2 k2 J, k% ]& [ T+ a: Q5 U- l
在网络安全产品设计的时候,可以采用多种半导体解决方案,相对来讲,目前主要采用的体系架构包括了X86、NP、ASIC、FPGA四种。相对来讲,CPU与NP的联系更紧密,而ASIC与FPGA的关系更相似。" U i) n; i9 X2 w( |
8 {1 U: P$ W# z+ @
不过,若从器件角度分析,传统上大多广义地归结为ASIC和可编程器件两类。在安全产品中,两种类别的主要原理与应用并无多大区别。传统上认为,ASIC可以为固定功能提供较高性能,但灵活度相当恶劣。
' n+ j0 L( t ^- h6 q* N X3 C. r# X5 e
而可编程解决方案可提供较高的系统速率,包括复杂功能(特殊和异常处理)、灵活性。目前在安全产品设计中使用的可编程解决方案主要有两类:NP和FPGA。NP可提供以处理器为中心(即以软件为中心)的可编程特性,而FPGA则提供以硬件为中心的可编程特性。 3 Y8 s" X1 I& i/ n; I' @) A/ M
9 E' M; ?, q$ \; X
Xilinx公司提供的报告指出,NP最初被用于设计网络设备中的现成器件,这些器件在各方面提供灵活性和扩展性的同时,还提供了充分的性能。大多数NP均带有多种经过优化的嵌入式RISC CPU以及适用于通用分组处理功能的类ASIC硬件电路。每个RISC引擎经过优化以执行特定任务。
' q% ]5 J3 D( M4 r Z" L' E: _/ v* D7 J3 k% v2 s* w
相对于NP,FPGA是对数据进行高速并行处理的器件,具有更强的灵活性和扩展性。TippingPoint公司技术经理李臻表示,在其公司IPS产品中采用的 Virtex-II Pro FPGA芯片,已经包含了高性能的可编程架构、嵌入式PowerPC处理器和3.125Gbps收发器。通过增强网络特性,FPGA可提供高性能的数据和安全控制处理功能。目前,网络处理内核和分组处理参考设计均适合于采用FPGA平台设计。此外,FPGA还支持所有的通用并行(单端和差动)和串行系统接口标准,以使其轻松地与任何协议进行接口并与线路卡上的任何器件相连。 4 J5 t" r( W* e% X& f
. `. V: `% H9 R1 e( M9 A Xilinx公司的FPGA解决方案专家Anil认为,在网络安全产品的开发中,尽管二层和三层处理在ASIC中很容易实现,但为了在类似的传输流中区分不同的优先级,还需要在四层和五层中进行更深层的分组处理。而FPGA仅仅需要一块芯片就可以更深入地处理这些分组,不仅降低了软件的复杂度,而且降低了功耗(相比于NP或ASIC)。这是因为FPGA中的硬件并行处理完全可以同RISC的处理方法相媲美。
+ R/ N* G3 M' U7 w5 Q4 S. U5 @' m: }7 ^9 S* k$ W7 h
另外,在网络安全产品设计中,升级性仍然是关键问题之一,而这包括了产品体系结构的软、硬两个方面。“事实上,相对于NP开发中的软件难以移植问题,无疑增加了设计上的风险。” Anil表示,“FPGA拥有标准化的基于平台和工具集方法的工具,可以实现软件在各代FPGA中的无缝移植。而在硬件方面,NP只在处理器中提供可编程特性,其类似ASIC的定制硬件并不能直接进行编程,而FPGA则要轻松许多。”
7 d( R0 R8 h* B$ M
) S, h% }1 D6 KIPS上的奇葩 % h0 C$ J, ~3 J- D$ u
0 @4 \- c0 @4 Y' o
/ O# r2 [' z: x5 }
基于FPGA的特性,在IPS上采用的FPGA技术最为有代表。TippingPoint的技术经理李臻表示,在IPS中FPGA擅长把一些安全特征转化成逻辑,在实现过程中能够同时配批上千条规则,其并行速度超过普通CPU,而且相对于并行ASIC,其灵活性占有较大优势。毕竟,各种安全攻击的变化很快,也许今天写的过滤器一个月后就要改写了。
0 P( l% M2 ?( }9 d8 r4 C1 C' S& R' I( g
同时,对于IPS这种采用In Line模式的设备,必须保证最小的误报与漏报率,而基于FPGA实现的移动偏移量检测,则是必须的手段。因为对攻击来说,一般都是混合在正常的网络流量中。换句话说,其在一个IP包里面的位置(偏移量)是不固定的。 9 g8 Q8 }3 C3 f% j+ q7 q' S
( h" v3 D, J1 }& c7 \! p: y 一般IPS需要在流量中不断寻找可疑特征,以便引起触发机制,但要注意,这个可疑特征不一定就是攻击行为。因此IPS必须抓到大量的可疑特征,然后交给CPU进行验证,以便判断是否为攻击。但在这个过程中,最关键的一点就是,这个抓取可疑特征的速度一定要快,否则就会导致漏报。因此如果仅靠CPU做所有的工作,其速度无法保证。而利用FPGA的高速度帮助进行基层筛选,然后交由CPU确认,就可以最大限度地确保设备架构的优化。
6 [. k" b4 \# I0 y1 y2 V7 Z* f& b: y1 e, ]' r# r( a0 u' ]9 d
“在整个特征抓取过程中,偏移量可以是不定的,比如内容字节的不定长度。而NP一般只能进行固定偏移量的抓取,比如从IP包头结束开始56个字节地方有特征,然后去查找。但如果需要对整个PageLoad里面1500个字节都扫描一便,NP的开销太大。FPGA利用哈希算法来控制,从PageLoad中取片断,然后做算法,再到表里面去查。”李臻说。 - d# J0 b/ G: ~0 _3 ^: ?" J: b
( m& c! n! c$ M/ C- h) [ 另外,他觉得在IPS中采用FPGA,可以最大程度保护用户投资。这个投资保护分为两个方面:第一,FPGA的性能优势具有良好的抗小包攻击能力。因为对于X86架构来讲,基于中断的CPU处理方式在对抗小包的时候性能损耗太大。其实这个也很好理解,一般安全设备保护的多为服务器,而服务器的CPU往往要比安全设备中用的好,如果服务器都挡不住小包,安全设备又如何防范?为此,用户往往需要购买单独的防御DDoS的设备,增加了安全成本。而相对于CPU,FPGA在这方面具备很强的性能优势。 7 {# x, u2 T; F6 W9 ^* ~3 _# A
9 k/ @3 F- Y1 k0 Y+ E( w) `
第二,FPGA的扩展性较好。在的IPS中使用的FPGA往往有一定的预留性,比如一个常见的800万门的FPGA芯片,一般实际使用仅为200万门左右。预留的部分就是为了安全设备日后升级所用(甚至可以进行不用重起的FPGA升级)。虽然使用CPU的安全产品也可以做到低利用率,但其压力的承受与升级会有挑战。比如在4G左右的吞吐率情况下,打开500条安全规则,配置2颗CPU。如果用户线路的流量逐年增加,而微软每月发布的漏洞也超过5个,其他的系统漏洞也不断更新,而新的攻击也会出现,在这个情况下,一般不到一年就会增加到800条规则。而CPU利用率的预留很难在安全算法不断变化的情况下界定,同时一旦CPU需要增加或者升级,其往往要带动软件设计的升级,以便更好的负载均衡或者任务分担,其复杂度也要超过FPGA。 . }! `8 u9 j: T5 w- y( `
. z+ U, b# g! q i8 v5 \ 到期的契约?
) c1 m8 ?2 }: B3 q( v
0 b& y( D8 P* z6 Q5 o; A 正如本文开头所讲的,FPGA并非职业杀手,其高速、灵活的特征在IPS上具有杀手级潜力,但在其他的安全领域则未必如此。对于目前发展如火如荼的UTM以及高端防火墙市场,体系架构的争论还是很激烈。
X' D2 Y0 ~4 M0 \: b
: x5 W) ^, Z! z4 v3 x WatchGuard亚太区技术总监叶建辉认为,ASIC的发展速度一定不及通用CPU,用来发展新一代ASIC的时间,通用CPU可能已经经历三至四代。相应的,FPGA的问题也是如此。所以公司决定采取通用CPU作为发展UTM安全平台的架构。从目前的情况看,通用CPU对比专用器件在处理一般安全功能方面没有很大的性能差距,近期更有双核这类高性价比技术的出现,进一步提升了CPU的性能。 % L3 e) v* G5 i' l
' J4 p0 p7 y3 } j, r 虽然FPGA与ASIC相比相对灵活,可以比较灵活地处理IDS/IPS及防病毒所需更新的签名功能(Signature),但对如今市场对UTM的需求期望,无论是ASIC或FPGA都显得无法灵活处理。 & Y' \. E# g7 j5 M% F9 h
2 o- b- x' d. [9 @7 e$ \: X$ p
他指出,在安全产品只提供防火墙及VPN功能的时代,ASIC的设计已经足够。虽然ASIC不够灵活,但它可提供快速处理包过滤这类特定的功能。然后安全产品又加入了IDS/IPS及防病毒等需要快速模式匹配及更新签名的功能,此时FPGA比较灵活的架构就可派上用场。但如今UTM安全平台除了以上的功能,还有防垃圾邮件、防间谍软件及URL/内容过滤等只有通用CPU来架构会才能实现的功能。这些UTM功能不同防火墙/VPN/IDS/IPS,不是单一特定功能或模式匹配,所以用FPGA不能实现大幅提高性能的目的,而在通用CPU架构上同时使用软件可实现更高的整体性能。 $ t# I# n) U( S0 R6 j2 l
1 R2 B; q/ n' K! t3 @8 ^
利用CPU架构,WatchGuard的智能分层安全引擎(ILS)在安全操作系统和软件上整合了多种UTM功能。由于有很多攻击并不针对某一项安全功能,智能分层安全引擎能在不同安全层面上互相沟通,所以更能有效的捍卫受保护的网络。
& T4 w9 p, G p; A
- ~! b1 U+ W {+ v9 b o SINFOR的技术经理叶宜斌认为,X86架构是实现UTM最好的平台。因为大多数的网关型产品都采用这种模式。毕竟UTM的发展趋势是一个设备中集中越来也多的功能,这个是要求需要很高的扩展性,而内容过滤也是目前CPU的强项。但他不排除今后会在中高端UTM产品中加入FPGA芯片。 # g0 I7 b" t& ^
9 z8 i2 s8 D2 N' q
SonicWall北方区技术经理蔡永生认为,由于UTM的环境影响,很可能多内核的安全处理器会更加有优势。因为为安全应用而设计的多内核安全处理器比FPGA有更大的灵活性。只要通过软件升级,安全设备可以不断地更新以防御最新的安全威胁,而且性能不比PFGA差。在此基础上,利用一套高性能的DPI深度包检测引擎,实现病毒,入侵和间谍软件的扫描。
# l U" H& f0 d9 `8 h' J( j4 ?0 Z( S: l* ?6 L
另外,他始终认为,对于大量部署的设备而言,让客户升级FPGA是有难度的,而且存在烧写限制。不过在这一点上,TippingPoint指出其数字疫苗方式(类似Signature)非常便于用户下载、升级,且每周一次的疫苗发布不会突破FPGA的寿命。 % m0 k0 U) [$ o- c: l: a
4 y5 ]9 u3 S( ] 作为近两年在安全领域突飞猛进的本土企业代表,神州数码网络的安全技术经理王景辉认为,在不同的需求和不同的环境下,安全厂商会根据自己的产品定位来选择相应的技术手段。不过对于不同的技术本身,他觉得也许不存在好与坏的差异。 ; H$ I4 R& w: n0 E2 g& \- |
8 C$ d' w. t3 s6 L/ [" z7 ]7 I2 O5 d
据悉,在神州数码网络最新推出的UTM产品中,采用的也是X86架构,其核心在于保证性能与多功能的前提下,实现最丰富的应用。他认为对于安全产品,特别是具有内容控制的产品,必须提供灵活与使用便利的能力,同时还要为用户提供优秀的性价比。在目前情况下,FPGA的高成本与低功能集成特征,无法满足UTM的需要。 6 k4 a& Y4 E/ b1 C. K
2 \8 D- l- g/ N" [. r
5 ?' y$ K0 H- K" D 同时,他也指出,目前国内市场上的UTM产品主要集中在中低端的100M左右产品,在这个吞吐率下,使用X86架构不会带来瓶颈,相反还可以提供更加灵活的部署方案。而如果今后随着双核技术以及CPU技术的进一步发展,加上对吞吐率要求的提高,不排除会在相关产品中加入FPGA的可能性,但这还是要看市场的发展。
# X/ d2 H; k" T8 K- B! [( p4 L1 D7 z$ C0 U3 n
另外,神州数码网络的产品经理杨雁群表示,利用X86架构不仅可以获得高功能集成,而且可以利用软件确保与周围设备的联动配合。目前神州数码网络打算将UTM产品部署到自己的全网安全解决方案当中,以便获得最佳的安全性与易用性。 + k0 u0 X" C3 r% G& g+ J
! N$ e9 R6 Z) L 作为在众多安全领域都有涉足的Juniper,其产品线涵盖了防火墙、VPN、IPS/IDS、UTM等多个领域,而在不同的产品中,CPU、NP、ASIC、FPGA也都有使用。
/ ~3 S5 h# p3 x5 s! P% }! q/ C% f! p: v( @& q
Juniper技术经理王卫对于不同技术在安全产品中的应用看得十分清楚,他觉得各种技术、体系架构就像一个个名词,本身没有优劣之分,只有在不同环境下,不同产品中,采用最适合技术的选择。
, Z6 d4 A7 C- ~7 r+ H2 @2 e, D- Y
比如高端防火墙的吞吐率可以达到30G,而在这个模式下,没有用户会去考虑其防病毒的特点,因此用ASIC来实现无疑是合适的。如果用X86架构做,也许满满一机箱的CPU也能做到,但是成本、功耗都是大问题。同样的道理,如果仅仅是一款百兆防火墙,纯粹的CPU可以获得最佳的性价比。
# q( D- g- c7 v/ F) T" f% n0 j* { B9 z
但他觉得目前争论的焦点在于百兆防火墙和千兆防火墙的入口,多种技术会有交叉。因此出现CPU+NP+ASIC的架构就不足以为怪。而FPGA也是同样的道理,对于千兆以上,万兆以下的产品,FPGA有可能,但前提是成本。其实很多高端产品在设计模拟阶段用FPGA,但是固定下来后会烧成ASIC。不过到达万兆甚至更高,则很难说了。 ! I5 A' G+ m/ @4 ?# Z ]9 T" p( W/ i
3 U) V5 r" |9 a7 [8 x1 e, w7 ] 总而言之,他觉得在安全产品中,变化可能性较高的产品用FPGA比较合适,而UTM则基本与FPGA无缘,因为相对来说,这么多年来查病毒就是CPU做的比较好。 0 Q- g0 n }" _ f
+ Z5 L4 L7 z4 C$ G, V 最后,王卫提出了一个非常有意思的观点:可编程器件的界限会越来越模糊,ASIC已经可以编程,NP和FPGA更加加强了这方面的能力,未来可变化的能力各种体系都有,将来任何一种手段都可以实现灵活的能力。因此未来在体系结构选择中,依然会是:在什么环境下,什么吞吐能力下,选择最合适的技术。
( ?$ V+ @& z% W3 \
% `/ P/ ]. u0 z# ?: Q3 ~ 百家争鸣的体系架构设计 / i0 W* r5 J! W8 W2 l! J8 f A5 {
( q. c0 H: X: j% r Juniper - D' n4 T$ R- O$ i- f
' E, z5 C& J) J- P6 f/ B CPU、NP、ASIC、FPGA各种体系架构都有使用,认为安全产品可以分为100M、100M--1G、1G--10G、10G以上四个阶段,每个阶段的芯片选择与架构设计具有明显的特点。 , W. K& i6 \, }) H
" Y9 q U" e" F
神州数码
- z4 p# Q' {3 r4 `1 I& e
3 j; t4 Q `4 q* r" K0 ~$ H 另一家具有全系列产品的网络厂商,希望借自身的全网安全方案将防火墙、VPN、IDS、UTM以及桌面保护系统进行整合,同时将在多种架构中进行最适合的取舍,确保整体安全方案的联动与优化。 ' I3 T+ q2 Q6 i- g) n' {& p- ~
2 x3 }6 E5 Z% N5 |3 V2 a
SINFOR ' C* A3 {: G; z P `6 _1 x: b
' V3 P) a: z3 f- ^ 在UTM与VPN中颇有实力的本土厂商,分别拥有X86架构和NP+ASIC架构两条线的产品,并对FPGA很感兴趣。
. Q' V# g2 E' [3 ~' \, o
0 ]( Z3 i. g" U+ x, C& ]% J SonicWall
! c" a J, b n& {! ?/ p2 M5 f: c4 W7 G
出色的防火墙及UTM厂商,对双核技术分析得很透彻,认为多内核安全处理器将会促使FPGA的杀手契约到期,同时拥有专利的DPI技术。 0 ]! `) v/ t8 ?7 S1 j
% [7 J" S2 _3 g% x8 Q, n h TipingPoint
) C0 M( Q7 a6 D
+ N2 p9 ]5 j1 B5 x 业界公认的最强IPS制造商,唯一获得NSS评测金奖的IPS厂商,凭借在FPGA上的技术优势,取得了很大的轰动效应,据悉即将推出基于FPGA的万兆IPS。 " w8 A) ?7 s- \) T
& K" `. M; e. |
WatchGuard & g' M% H* A v6 \, [
4 d9 q4 T/ x7 e( O
一家优秀的UTM厂商,而且一直表示将进军国内的高端应用市场,因此非常关注UTM在应用上的全功能性,有专利的ILS技术。 6 D3 a, A- l2 p2 G% @2 t
+ |1 a6 P+ `9 U) D0 F# Z2 P6 O. N$ B1 V" I' S3 `* Y, _& u
|
|