防火墙X86、NP、ASIC、MIPS架构对比

x86性能最多只能达到2Gbps

长久以来,国内许多安全厂商的防火墙产品都采用基于x86的架构,而国外厂商的多数防火墙则采用ASIC架构。几年前,随着技术的更新换代,随着网络处理器(NP)技术的兴起,为了赶超国际上的先进水平,弥补国内防火墙性能上的不足,很多国内厂商开始采用“NP+ASIC”的架构。

x86架构是一种通用的“CPU+Linux”操作系统的架构。其处理机制是,数据从网卡到CPU之间的传输是依靠“中断”实现,这导致了不可逾越的性能瓶颈,尤其在传送小包的情况下(如64 Bytes的小包),数据包的通过率只能达到30%~40%左右,并且它的设计是必须依靠CPU计算,因此,很占CPU资源,这也是为什么x86防火墙性能上不去的原因。

虽然Intel提出了解决方案,将32位的PCI总线升级到了PCI-E ,总线速度最高可达16GBps,但是,小包传送问题依然没有解决。“如果用户在进行小包通过率测试时,性能出现大幅度的下滑,这种防火墙多半是x86架构。提醒用户一定不能被厂商的宣传忽悠了,基于x86的防火墙,其最高性能只能达到2Gbps!”

所以,目前市场上大多数的x86防火墙不能作为千兆防火墙使用,只能作为百兆防火墙。

ASIC架构灵活性不够

国外的大部分防火墙设计都采用了ASIC架构,以Juniper和Fortinet的产品为首,因为它的性能高,并且开发门槛高,一度成为国际国内厂商的技术分水岭。

基于ASIC架构的防火墙从架构上改进了中断机制,数据通过网卡进入系统后,不需经过主CPU处理,而是由集成在系统中的芯片直接处理,完成防火墙的功能,如路由、NAT、防火墙规则匹配等,因此,其性能得到了大幅度的提升: 性能可以达到万兆,并且64 Bytes的小包都可以达到线速。

但问题是,这种防火墙在设计时,就必须将安全功能固化进ASIC芯片中,所以它的灵活性不够,如果想要增添新的功能或进行系统升级,开发周期较长,对技术的要求也很高。此外,用ASIC开发复杂的功能,如垃圾邮件过滤、网络监控、病毒防护等,其开发比较复杂,对技术要求很高。因此,ASIC架构非常适用于功能简单的防火墙。

NP是平衡方案

国内许多厂商为了弥补防火墙性能的不足,在不断进行技术研发,推出了基于“NP+ASIC”的防火墙架构,以解决x86架构性能不足和ASIC架构不够灵活的问题。

NP是专门为网络设备处理网络流量而设计的处理器,其体系结构和指令集对于数据处理都做了专门的优化,同时辅助一些协处理器完成搜索、查表等功能,可以对网络流量进行快速的并发处理。硬件结构设计采用高速的接口技术和总线规范,具有较高的I/O能力。这是一种硬件加速的完全可编程的架构,软硬件都易于升级,因此产品的生命周期更长。

NP最大的优点在于它是通过专门的指令集和配套的软件开发系统提供强大的编程能力,因而便于开发应用,可扩展性强,而且研制周期短,成本较低。但是,相比于x86架构,由于应用开发、功能扩展受到NP的配套软件的限制,基于NP技术的防火墙的灵活性要差一些。采用微码编程,在性能方面NP不如ASIC。NP开发的难度和灵活性都介于ASIC和x86构架之间,应该说NP是x86架构和ASIC之间的平衡方案。

多核可实现性能和绿色双重设计

多核技术则是近年来新出现的处理器技术,它一出现,就被认为是解决信息安全产品功能与性能之间矛盾的一大硬件法宝。国外许多厂商,如SonicWall等,都推出了其多核产品。多核是在同一个硅晶片上集成了多个独立物理核心,每个核心都具有独立的逻辑结构,包括缓存、执行单元、指令级单元和总线接口等逻辑单元,通过高速总线、内存共享进行通信。在实际工作中,每个核心都可以达到1Ghz的主频。因此,多核技术无论在性能、灵活性还是在开发的成本和难度方面,都是其他架构不能比拟的。

目前各种芯片厂商推出的多核芯片共分三种: 一种是Intel、AMD推出的2核、4核的通用处理器,适用于桌面笔记本电脑等通用领域; 一种是IBM、SUN分别推出的cell和SPARC架构的多核处理器,主要用于图形处理和运算; 第三种是RMI和Cavium推出的基于MIPS架构的嵌入式多核处理器,主要应用于数据通信领域,它最适合用于信息安全产品的开发。

上一篇:利用Kali进行WiFi钓鱼测试实战

下一篇:Cavium和Tilera对比 深入浅出评多核