近年来随着千兆网络开始在国内大规模推广应用,用户对千兆防火墙的需求已逐渐升温。在很多网络环境下,传统的基于X86体系结构的防火墙已不能满足千兆防火墙高吞吐量、低时延的要求,因此,两种新的技术,即网络处理器(Network Processor)和专用集成电路(ASIC)技术成为众多国内厂家实现千兆防火墙的主要选择。可以说,防火墙的硬件体系结构正面临着一次变革。
百兆防火墙的不足
在百兆防火墙时代,国内防火墙厂商普遍采用的是通用CPU配合软件的技术方案。虽然很多厂家也把它称之为硬件防火墙,但实际上都是基于X86架构的服务器或工控机。这类防火墙一般运行在经过裁减的操作系统上(通常是Linux或BSD),所有的数据包解析和审查工作都由软件来完成。虽然这种技术方案在百兆防火墙市场取得了很大的成功,但由于CPU处理能力和PCI总线速度的制约,在实际应用中,尤其在小包情况下,这种结构的千兆防火墙远远达不到千兆的转发速度(64字节包长时,双向转发速率一般为百分之二十以下),难以满足千兆骨干网络的应用要求。
千兆防火墙的两种技术实现
要实现真正的千兆防火墙,目前的技术途径基本上有两条:一种是采用网络处理器,另一种是采用ASIC。下面我们来分析一下这两种技术架构各自的特点。
网络处理器是专门为处理数据包而设计的可编程处理器,它的特点是内含了多个数据处理引擎,这些引擎可以并发进行数据处理工作,在处理2到4层的分组数据上比通用处理器具有明显的优势。网络处理器对数据包处理的一般性任务进行了优化,如TCP/IP数据的校验和计算、包分类、路由查找等。同时硬件体系结构的设计也大多采用高速的接口技术和总线规范,具有较高的I/O能力。这样基于网络处理器的网络设备的包处理能力得到了很大的提升。它具有以下几个方面的特性:完全的可编程性、简单的编程模式、最大化系统灵活性、高处理能力、高度功能集成、开放的编程接口、第三方支持能力。基于网络处理器架构的防火墙与基于通用CPU架构的防火墙相比,在性能上可以得到很大的提高。网络处理器能弥补通用CPU架构性能的不足,同时又不需要具备开发基于ASIC技术的防火墙所需要的大量资金和技术积累,最近在国内信息安全厂商中备受关注,成为国内厂商实现高端千兆防火墙的热门选择。
第二种方案是采用基于ASIC技术的架构。Netscreen是采用该技术的代表厂家。采用ASIC技术可以为防火墙应用设计专门的数据包处理流水线,优化存储器等资源的利用,是公认的使防火墙达到线速千兆,满足千兆环境骨干级应用的技术方案。Netscreen公司也因此取得了令人瞩目的成功。但ASIC技术开发成本高、开发周期长且难度大,一般的防火墙厂商难以具备相应的技术和资金实力。
哪种方案更适合用户应用
网络处理器与ASIC方案哪种更适合千兆防火墙的应用是目前争论的一个热点。用户可以从性能、灵活性、功能完备性、成本、开发难度、技术成熟性等方面来进行比较。从性能上说,由于基于网络处理器的防火墙本质是基于软件的解决方案,它在很大的程度上依赖于软件设计的性能,而ASIC由于是将算法固化在硬件中,因而在性能上有比较明显的优势。
目前国内基于ASIC技术的首信防火墙已可达到4个千兆网口的全线速包转发速率,而一般基于网络处理器的防火墙在小包情况下还不能完全作到2网口的千兆线速转发。反过来说,网络处理器的软件色彩使它具有更好的灵活性,在升级维护方面有较大的优势。纯硬件的ASIC防火墙缺乏可编程性,这使得它缺乏灵活性从而跟不上防火墙功能的快速发展。
特别声明:本站注明稿件来源为其他媒体的文/图等稿件均为转载稿,本站转载出于非商业性的教育和科研之目的,并不意味着赞同其观点或证实其内容的真实性。如转载稿涉及版权等问题,请作者在两周内速来电或来函联系。