用NP网络处理器设计千兆线速防火墙

发表于:2007-06-23来源:作者:点击数: 标签:
一、 NP的技术价值 目前在国内防火墙等安全产品市场上,千兆高端安全市场几乎被国外产品所垄断。因此 开发 防火墙等高性能、高稳定、具有自主知识产权的千兆线速安全产品,对于建设我国自主知识产权的信息保障基础设施和落实27号文件精神具有重要的战略意义

   

  一、 NP的技术价值

  目前在国内防火墙等安全产品市场上,千兆高端安全市场几乎被国外产品所垄断。因此开发防火墙等高性能、高稳定、具有自主知识产权的千兆线速安全产品,对于建设我国自主知识产权的信息保障基础设施和落实27号文件精神具有重要的战略意义。
  
  防火墙和VPN等网络安全产品发展中面临的一个重要问题是“如何在保持足够安全性的同时提供尽可能高的速率”。目前国内防火墙厂商基于Intel X86架构的千兆防火墙由于受CPU处理能力和PCI总线速度的制约,性能和功能不能达到网络安全和网络性能间的统一。所以,从纯软件技术向硬件技术发展是网络安全产品发展的必然趋势,中国信息化深度应用迫切需要贴近高性能、高灵活性、高可靠性的专用网络安全设备。
  
  国外厂商凭借在集成电路方面的技术优势已推出基于ASIC的千兆线速防火墙和VPN产品,因开发难度大、周期长、产品灵活性差等原因,不适合技术和资金积累较薄弱的国内厂商发展。
  
  如何突破技术垄断,提高国家网络安全的核心竞争力,是国内网络安全厂商必须迫切解决的问题!随着NP技术的成熟和发展,开发基于NP的网络安全产品可以使国内安全企业抓住产业更新换代机会,迅速打破国外企业基于ASIC技术控制高端安全产品市场的局面。
  
  二、 NP技术特点

  网络处理器(NP)是专门为处理数据包而设计的可编程处理器,能够直接完成网络数据处理的一般性任务。硬件体系结构大多采用高速的接口技术和总线规范,具有较高的I/O能力,包处理能力得到了很大提升。网络处理器一般具有以下特点:
  
  
  ● 并行处理器: 采用多内核并行处理器结构。片内处理器按任务大致分为核心处理器和转发引擎。
  
  ● 专用硬件协处理器: 对要求高速处理的通用功能模块采用专用硬件实现以提高系统性能。
  
  ● 专用指令集: 转发引擎通常采用专用的精简指令集,并针对网络协议处理特点优化。
  
  ● 分级存储器组织: NP存储器一般包含多种不同性能的存储结构,对数据进行分类存储以适应不同的应用目的。
  
  ● 高速I/O接口: NP具有丰富的高速I/O接口,包括物理链路接口、交换接口、存储器接口、PCI总线接口等。通过内部高速总线连接在一起,提供很强的硬件并行处理能力。
  
  ● 可扩展性: 多个NP之间还可以互连,构成网络处理器簇,以支持更为大型高速的网络处理。
  
  从网络处理器以上特点可以看出,与通用处理器相比,网络处理器在网络分组数据处理上具有明显的优势。
  
  三、 NP防火墙的体系架构

  1. 总体结构
  
  NP架构防火墙一般由主控单元和网络处理单元组成,网络处理单元是采用网络处理器芯片(NP)设计的专用网络处理板,主控单元是采用通用处理器设计的管理与协处理板,网络处理单元通过PCI 总线与主控单元通信。NP防火墙总体结构如图1所示。
  
  2. 网络处理单元
  
  网络处理单元采用网络处理器芯片设计专用网络处理板,内嵌微码运行实时性高的防火墙功能模块。其硬件结构如图2所示。
  
  网络处理单元包括网络处理器、存储器、网络接口、PCI接口、引导Flash,通过高速总线连接在一起。存储器包括快速存储器和慢速存储器。防火墙主要功能都在网络处理单元上完成,安全软件存放在网络处理器的指令存储器中,当网络接口收到数据包时,由网络处理器中的微引擎执行。安全软件主要包括包分类、攻击检查、状态检测、规则检查、内容扫描、地址转换和带宽控制等主要模块。流程如图3所示。
  
  3. 主控单元
  
  主控单元是采用通用CPU设计的主控板,用于配置管理网络处理板和运行其他非实时性的安全模块。包括CPU、存储器、Flash、串行接口、网络接口、PCI总线。通过串行接口或网络接口对防火墙进行配置管理。Flash中存放防火墙操作系统,主控单元上电后将防火墙操作系统装载到存储器中执行。主控单元通过PCI总线与网络处理单元通信。
  
  主控单元上软件包括控制管理软件和高级安全软件。控制管理软件接收从Web界面和命令行对防火墙传递的配置信息,并转换为网络处理器识别的信息,发送到网络处理单元的控制管理模块,同时接收从网络处理单元的控制管理模块返回的信息。高级安全软件主要是那些对实时性要求不高或在NP中实现会极大影响性能的功能。
  
  4. 特点
  
  防火墙安全过滤与其操作系统无关并与防火墙配置管理、控制分离,以网络处理器为主,网络处理器上的安全功能可以随时升级。系统在提供高安全性和高性能的同时,符合电信级网络设备高可靠、高稳定的要求。系统相对成本较低。由于具有自主知识产权,因此系统具有极强的功能和性能可扩展性等。
  
  四、 NP防火墙的关键技术

  在设计NP架构千兆线速防火墙过程中,为了确保防火墙的高安全、高性能、高可靠、高可控和高可扩,需要突破许多完全超越Intel X86架构防火墙的关键技术。包括线速安全过滤技术、可靠性设计技术、可扩展设计技术、精确流控技术等。
  
  1. 线速安全过滤技术
  
  为使防火墙在千兆环境下达到线速性能,需要采用以下技术:
  
  ● 三级并行处理技术:包括处理器级并行、线程级并行和指令级并行。从硬件到软件均采用并行处理机制,最大限度地提高数据帧的处理速度。
  
  快速查表技术:防火墙最主要的功能是状态检测和安全规则检查。为节约处理器资源和内存资源,在硬件上采用专用硬件查表协处理器提高查找速度;在软件上根据各自特点采用不同的分类算法优化,树形结构存储等技术来提高查表速度。并采用状态表倍速检测技术,针对已建立连接,对数据包(请求和回应的数据包)的状态检查一次完成。
  
  ● 全规则动态平衡存储技术:传统防火墙的处理性能受限于设置的安全规则数目,随着安全规则数的增加,其搜索增长速率呈线性递增。我们实现了基于专用处理器的非线性快速规则匹配算法,保证防火墙每一次发起的规则查找在极短的时间内完成。与快速状态表配合保证了防火墙线速处理的最小延时。
  
  2. 可靠性设计技术
  
  在千兆环境下对防火墙的高可靠性提出了更高的要求,我们通过以下技术在高可靠性方面取得突破;
  ● 硬件方面:网络处理器单元采用14层高速PCB设计和板级仿真,解决由于高频串扰带来的千兆线速丢包问题;电源、风扇冗余设计;独立硬件控制下的灾难自恢复机制,保证整机的可靠性。
  ● 软件方面:将网络安全处理功能运行在网络处理器中,避免操作系统带来的稳定性和安全隐患问题;防火墙监控系统包括防火墙状态监控,防火墙集群节点集中监控、统一日志等;采用冗余设计,保证防火墙一旦发生问题后,其负载可以迅速切换到其他防火墙上;实现负载均衡设计,通过动态的负载均衡技术解决单一防火墙负载过大的问题,与此同时采用集群防火墙的方式,从整体上提高防火墙处理网络信息的能力。
  
  3. 可扩展设计技术
  
  作为网络安全设备的防火墙,在系统的结构设计中,除突出高性能和高稳定性外,需要特别注重系统的可扩展性。其中包括将硬件按模块化设计和软件按模块分层,并逐层封装,其中,配置与控制层提供功能的扩展接口。
  
  4. 精确流控技术
  
  基于网络处理器提供的能力,实现高效的数据流分类算法;在队列调度方面,支持先进先出队列、定制队列、加权公平队列和基于类的加权公平队列调度算法; 在拥塞控制方面,实现业界流行的WRED 算法,准确的丢包算法保证当网络发生拥塞时,避免由于误丢包而带来流量震荡。
  
  五、 NP架构与Intel X86架构的性能对比分析

  以联想为例,联想集团采用IBM公司的NP3G4S-C网络处理器芯片,自主开发了“超五”千兆线速防火墙无阻塞系统,带宽(使用Smartbits 6000网络性能测试仪实测64字节小包)达到3.5Gbps,是基于Inter X86架构准千兆防火墙的十倍以上。在《计算机世界》报社组织的千兆防火墙横向评比中,吞吐量的各项测试都达到了100%的水平,用64字节的UDP包(480流)进行压力测试,仍然达到了100%。在抗攻击能力的测试中,在50%的Syn-flood攻击流量及5000次/s的连接速率下,10万次连接中有99.36%成功建立,受到攻击的影响非常弱。
  
  基于NP的防火墙无论在吞吐率还是延迟上都具有绝对优势。在传统Intel X86架构上开发高端网络安全产品灵活性强,可扩充能力好,但性能无法完全满足千兆骨干网络传输需求。开发专用于网络处理的ASIC芯片则费用高、时间长而且灵活性较差。在此情况下,利用网络处理器开发下一代高速网络安全产品是一个必然趋势,特别是对国内防火墙厂商而言,采用网络处理器可以快速缩短和国外厂商的差距,填补国内产品在高端市场上的空白。这对提高我国网络安全防护的整体水平,建设具有自主知识产权的信息安全基础设施具有战略意义。

原文转自:http://www.ltesting.net