Chinaunix首页 | 论坛 | 博客
  • 博客访问: 18697866
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: 网络与安全

2008-03-22 15:21:01

NP(Network Processor)技术为中国等发展中国家跨越式发展信息安全高端产品提供了一个难得的机会。本文全面介绍了NP架构千兆线速防火墙的体系结构与关键技术,供计划采用NP芯片开发千兆线速安全产品的技术人员借鉴,供有关专家和用户参考,希望能对我国信息安全事业的长远发展提供帮助。

一、 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架构千兆防火墙与X86结构的千兆防火墙做了性能对比测试,测试结果如下表所示。

从上表可以看出基于NP的防火墙无论在吞吐率还是延迟上都具有绝对优势。在传统Intel X86架构上开发高端网络安全产品灵活性强,可扩充能力好,但性能无法完全满足千兆骨干网络传输需求。开发专用于网络处理的ASIC芯片则费用高、时间长而且灵活性较差。在此情况下,利用网络处理器开发下一代高速网络安全产品是一个必然趋势,特别是对国内防火墙厂商而言,采用网络处理器可以快速缩短和国外厂商的差距,填补国内产品在高端市场上的空白。这对提高我国网络安全防护的整体水平,建设具有自主知识产权的信息安全基础设施具有战略意义。

NP(Network Processor)技术为中国等发展中国家跨越式发展信息安全高端产品提供了一个难得的机会。本文全面介绍了NP架构千兆线速防火墙的体系结构与关键技术,供计划采用NP芯片开发千兆线速安全产品的技术人员借鉴,供有关专家和用户参考,希望能对我国信息安全事业的长远发展提供帮助。

一、 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架构千兆防火墙与X86结构的千兆防火墙做了性能对比测试,测试结果如下表所示。

从上表可以看出基于NP的防火墙无论在吞吐率还是延迟上都具有绝对优势。在传统Intel X86架构上开发高端网络安全产品灵活性强,可扩充能力好,但性能无法完全满足千兆骨干网络传输需求。开发专用于网络处理的ASIC芯片则费用高、时间长而且灵活性较差。在此情况下,利用网络处理器开发下一代高速网络安全产品是一个必然趋势,特别是对国内防火墙厂商而言,采用网络处理器可以快速缩短和国外厂商的差距,填补国内产品在高端市场上的空白。这对提高我国网络安全防护的整体水平,建设具有自主知识产权的信息安全基础设施具有战略意义。

阅读(395) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~