基于硬件的防火墙在硬件方面一般采用了主流的三种架构:X86、ASIC和NP。ASIC和NP是专门设计的实现防火墙必要功能的量身定制的硬件,由于操作系统需要兼容这些定制的硬件,因此其操作系统往往也是专门设计的。除此之外,还有采用MIPS和ARM架构的硬件防火墙。
X86架构
灵活性高,扩展性好,性能差,小包速率低(30%-40%)。
X86架构是一种通用的“CPU+Linux”操作系统的架构。其处理机制是,数据从网卡到CPU之间的传输是依靠“中断”实现,这导致了不可逾越的性能瓶颈,尤其在传送小包的情况下(如64 Bytes的小包),数据包的通过率只能达到30%~40%左右,并且它的设计是必须依靠CPU计算,因此,很占CPU资源,这也是为什么X86防火墙性能上不去的原因。基于通用CPU的X86架构的安全网关,一般采用Intel或AMD公司的芯片,X86在架构系统时还需要北桥和南桥芯片,采用该种硬件架构,软硬件配套资源比较多,便于快速推出产品,企业投资少。
Intel提出了解决方案,可以把32位的PCI总线升级到PCI-E总线,即:PCI-Express,这样,PCI-E 4X的总线的速度就可以达到 2000MB Bytes/S,即:16Gbits/S,并且PCI-E各个PCI设备之间互相独立不共享总线带宽,所以基于PCI-E 4X的X86从系统带宽上来说,做为千兆防火墙是没有任何问题的。但是,基于PCI-E的防火墙数据从网卡到CPU之间传输同样使用“中断”机制来传输数据,所以小包(64 Bytes)的通过率仍然为:30-40%,基于X86的防火墙,其最高性能只能达到2Gbps!同时CPU和外围芯片组发热比较大,产品寿命和稳定性难以保证。
ASIC架构
性能高,灵活性低,扩展性差。
ASIC防火墙通过专门设计的ASIC芯片逻辑进行硬件加速处理。国外的大部分防火墙设计都采用了ASIC架构,以Juniper和Fortinet的产品为首,因为它的性能高,并且开发门槛高,一度成为国际国内厂商的技术分水岭。ASIC通过把指令或计算逻辑固化到芯片中,获得了很高的处理能力,因而明显提升了防火墙的性能。新一代的高可编程ASIC采用了更灵活的设计,能够通过软件改变应用逻辑,具有更广泛的适应能力。基于ASIC架构的防火墙从架构上改进了中断机制,数据通过网卡进入系统后,不需经过主CPU处理,而是由集成在系统中的芯片直接处理,完成防火墙的功能,如路由、NAT、防火墙规则匹配等,因此,其性能得到了大幅度的提升: 性能可以达到万兆,并且64 Bytes的小包都可以达到线速。
但是,ASIC的缺点也同样明显,它的灵活性和扩展性不够,开发费用高,开发周期太长,一般耗时接近2年。这种防火墙在设计时,就必须将安全功能固化进ASIC芯片中,所以它的灵活性不够,如果想要增添新的功能或进行系统升级,开发周期较长,对技术的要求也很高。此外,用ASIC开发复杂的功能,如垃圾邮件过滤、网络监控、病毒防护等,其开发比较复杂,对技术要求很高。
因此,ASIC架构非常适用于功能简单,对吞吐量和时延指标要求较高的电信级大流量的处理。
NP架构
相比X86性能更高,相比ASIC灵活性和扩展性更好.
国内许多厂商为了弥补防火墙性能的不足,在不断进行技术研发,推出了基于“NP+ASIC”的防火墙架构,以解决X86架构性能不足和ASIC架构不够灵活的问题。
NP是专门为网络设备处理网络流量而设计的处理器,其体系结构和指令集对于数据处理都做了专门的优化,同时辅助一些协处理器完成搜索、查表等功能,可以对网络流量进行快速的并发处理。硬件结构设计采用高速的接口技术和总线规范,具有较高的I/O能力。这是一种硬件加速的完全可编程的架构,软硬件都易于升级,因此产品的生命周期更长。
NP最大的优点在于它是通过专门的指令集和配套的软件开发系统提供强大的编程能力,因而便于开发应用,可扩展性强,而且研制周期短,成本较低。但是,相比于x86架构,由于应用开发、功能扩展受到NP的配套软件的限制,基于NP技术的防火墙的灵活性要差一些。采用微码编程,在性能方面NP不如ASIC。NP开发的难度和灵活性都介于ASIC和x86构架之间,应该说NP是x86架构和ASIC之间的平衡方案。
MIPS(多核)架构
性能、灵活性高,扩展性好。
MIPS是RISC精简指令集处理器。MIPS是高性能,低功耗嵌入式系统处理器,广泛应用于网络,通讯,无线,储存和控制应用等领域的安全产品。
多核技术则是近年来新出现的处理器技术,它一出现,就被认为是解决信息安全产品功能与性能之间矛盾的一大硬件法宝。国外许多厂商,如SonicWall等,都推出了其多核产品。多核是在同一个硅晶片上集成了多个独立物理核心,每个核心都具有独立的逻辑结构,包括缓存、执行单元、指令级单元和总线接口等逻辑单元,通过高速总线、内存共享进行通信。在实际工作中,每个核心都可以达到1Ghz的主频。因此,多核技术无论在性能、灵活性还是在开发的成本和难度方面,都是其他架构不能比拟的。
目前各种芯片厂商推出的多核芯片共分三种: 一种是Intel、AMD推出的2核、4核的通用处理器,适用于桌面笔记本电脑等通用领域; 一种是IBM、SUN分别推出的cell和SPARC架构的多核处理器,主要用于图形处理和运算; 第三种是RMI和Cavium推出的基于MIPS架构的嵌入式多核处理器,主要应用于数据通信领域,它最适合用于信息安全产品的开发。