防火墙性能测试综述_第1页
防火墙性能测试综述_第2页
防火墙性能测试综述_第3页
防火墙性能测试综述_第4页
防火墙性能测试综述_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、防火墙性能测试综述摘要作为应用最广泛的网络安全产品,防火墙设备本身的性能如何将对最终网络用户得到的实际带宽有决 定性的影响。本文从网络层、传输层和应用层三个层面对防火墙的常用性能指标及测试方法进行了分析与 总结,并提出了建立包括网络性能测试、IPSec VPN性能测试及安全性测试在内的完整测试体系及衡量标 准的必要性。1引言防火墙是目前网络安全领域广泛使用的设备,其主要目的就是保证对合法流量的保护和 对非法流量的抵御。众所周知,在世界范围内网络带宽(包括核心网络及企业边缘网络)总 的趋势是不断的提速升级,然而从网络的整体结构上看,防火墙恰处于网络的末端。显而易 见,防火墙的网络性能将对最终网络

2、用户得到的实际带宽有决定性的影响,特别是骨干网上 使用的千兆防火墙,性能的高低直接影响着网络的正常应用。所以,目前防火墙的网络性能 指标日益为人们所重视,地位也越来越重要。因此,在防火墙测试工作中性能测试是极其重 要的一部分。作为网络互联设备,参考RFC1242/2544对其在二、三层的数据包转发性能进行考量, 是大部分网络设备性能测试的基本手段和方法,同时进行二、三层的测试也可以帮助确定性 能瓶颈是存在于下层的交换转发机制还是在上层协议的处理,并检测所采用的网卡及所改写 的驱动程序是否满足性能要求,它有利于故障的定位。作为防火墙来说,最大的特点就是可 以对47层的高层流量进行一定的控制,这就

3、必然对性能造成一定的影响,而这种影响有多 大,会不会成为整个网络的瓶颈,就成为人们所关心的问题。据此,我们认为完整的防火墙 网络性能测试应该由网络层测试、传输层测试和应用层测试三部分组成。2网络层性能测试网络层性能测试指的是防火墙转发引擎对数据包的转发性能测试,RFC1242/2544是进 行这种测试的主要参考标准,吞吐量、时延、丢包率和背对背缓冲4项指标是其基本指标。 这几个指标实际上侧重在相同的测试条件下对不同的网络设备之间作性能比较,而不针对仿 真实际流量,我们也称其为“基准测试”(Base Line Testing)0 2.1吞吐量指标定义网络中的数据是由一个个数据帧组成,防火墙对每个

4、数据帧的处理要耗费资源。吞吐量 就是指在没有数据帧丢失的情况下,防火墙能够接受并转发的最大速率。IETF RFC1242中 对吞吐量做了标准的定义:“The Maximum Rate at Which None of the Offered Frames are Dropped by the Device.”,明确提出了吞吐量是指在没有丢包时的最大数据帧转发速率。吞吐 量的大小主要由防火墙内网卡及程序算法的效率决定,尤其是程序算法,会使防火墙系统进 行大量运算,通信量大打折扣。测试方法在RFC2544中给出了该项测试的步骤过程及测试方法:在测试进行时,测试仪表的发 送端口以一定速率发送一定数量

5、的帧,并计算所发送的字节数和分组数,在接收端口也计算 所接收的字节数和分组数,如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重 新测试;如果接收帧少于发送帧则降低发送速率重新测试,直至得出最终结果。一般测试仪 表都采用二分法来找到最大的转发速率。吞吐量测试结果以bit/s或fit/s表示。SPIRENT 公司的 SmartApplications 和 IXIA 公司的 IxAutomate 都是对 RFC1242/2544 指 标测试的自动化测试软件。在对防火墙吞吐量的测试中,我们遵照RFC建议,采用64, 128, 256, 512,1024,1280和1518字节等7种不同长度的数

6、据帧来进行。为了全面衡量防火墙 的吞吐能力,一般采用双向测试,测试时长为120s。在测试过程中我们还应该考虑防火墙处理规则时要占用一定的系统资源,为了比较安全 策略规则对转发性能的影响,我们在防火墙上加载多条规则和一条规则,分别测试其吞吐量。 在有些厂商提供的测试数据中指出吞吐量测试是在“Acceptable Loss即允许丢包率为多少 下的吞吐量测试结果。这其实不是吞吐量的结果,因为哪怕数据流丢失一个数据帧也会引起 明显的延迟。测试的吞吐量是允许丢包率为0的情况下得到的结果,即使丢包率设为万分之 一,所得到的结果也可能产生很大的差距。2.2时延网络的应用种类非常复杂,许多应用对时延非常敏感(

7、例如音频、视频等),而网络中 加入防火墙必然会增加传输时延,所以较低的时延对防火墙来说是不可或缺的。测试时延是 指测试仪表发送端口发出数据包经过防火墙后到接收端口收到该数据包的时间间隔,时延有 存储转发时延和直通转发时延两种。因为直通转发技术不管数据包的整体大小,而只根据目的地址来决定转发方向,所以它 的时延是固定的,取决于设备解读数据包前6个字节中目的地址的解读速率。设备只要检查 到帧头中所包含的目的地址就立即转发该帧,而无需等待帧全部被接收,也不进行错误校验。 存储转发技术是计算机网络领域应用最为广泛的转发方式,它把输入端口的数据包先存储起 来,然后进行CRC检查,在对错误包处理后才取出数

8、据包的目的地址,通过查找表转换成 输出端口送出数据包。采用存储转发技术的设备由于必须要接收完整的数据包后才开始转 发,所以它的时延与数据包大小有关。数据包大,则时延大;数据包小,则时延小。IETF RFC1242中对时延也做出了定义和计算方法。对存储转发设备,时延按照LIFO 的方法计算,即从数据帧的最后一位进入输入端口开始计时,到数据帧的第一位出现在输出 端口结束,这期间的时间间隔。而对直通转发设备,时延按照FIFO的方法计算,即从数据 帧的第一位进入输入端口开始计时,到数据帧的第一位出现在输出端口结束,这期间的时间 间隔。由于防火墙工作在第三层,数据包转发机制都采用的是存储转发机制。所以,

9、我们考察 在给定的速率下(保证防火墙在此速率下不丢包),防火墙存储转发的时延。IETF RFC2544 中给出了该项测试的步骤过程,首先测定防火墙在每种数据帧长下的吞吐量大小。以一定数 据帧长在测定的对应发送吞吐量速率下发送数据流穿过防火墙,测试过程一般延迟120s, 测试重复至少20次取平均值。2.3丢包率在IETF RFC1242中对丢包率作出了定义,是指在正常稳定的网络状态下,应该被转发, 但由于缺少资源而没有被转发的数据包占全部数据包的百分比。较低的丢包率,意味着防火 墙在强大的负载压力下,能够稳定地工作,以适应各种网络的复杂应用和较大数据流量对处 理性能的高要求。在IETF RFC2

10、544中给出了丢包率的计算方法:以一定的发送速率发送特定数量的数据 帧穿过防火墙,测试并统计被防火墙转发的数据帧。丢包率由以下等示计算:(输入数据 帧统计输出数据帧统计)X100/输入数据帧统计。在实际测试过程中,一般要测试防火墙 在不同负荷下丢弃包占收到包的比例,这里的不同负荷通常指从吞吐量测试到线速,步长一 般使用线速的10%。即第一次测试应按照输入媒介帧速率的100%来运行,然后依次以90%, 80%重复以上测试,直到没有丢包产生。2.4背靠背缓冲背靠背缓冲是测试防火墙设备在接收到以最小帧间隔传输的网络流量时,在不丢包条件 下所能处理的最大包数。该项指标是考察防火墙为保证连续不丢包所具备

11、的缓冲能力,因为 当网络流量突增而防火墙一时无法处理时,它可以把数据包先缓存起来再发送。单从防火墙 的转发能力上来说,如果防火墙具备线速能力,则该项测试没有意义。因为当数据包来得太 快而防火墙处理不过来时,才需要缓存一下。如果防火墙处理能力很快,那么缓存能力就没 有什么用,因此当防火墙的吞吐量和新建连接速率指标都很高时,无论防火墙缓存能力如何, 背靠背指标都可以测到很高,因此在这种情况下这个指标就不太重要了。但是,由于以太网 最小传输单元的存在,导致许多分片数据包的转发。由于只有当所有的分片包都被接受到后 才会进行分片包的重组,防火墙如果缓存能力不够将导致处理这种分片包时发生错误,丢失 一个分

12、片都会导致重组错误。可见,背靠背缓冲这一性能指标还是有具体意义的。在IETF RFC2544中给出了背靠背缓冲的计算方法:从空闲状态开始,测试仪表以给定 的传输媒介最小合法间隔极限的传输速率向待测防火墙发送相当数量的固定长度的帧并计 算由防火墙转发的数据帧数,如果发送数据帧数等于转发数据帧数,则增加发送数据帧的数 量重复测试。如果转发数据帧数少于发送数据帧数时,则减少发送帧数重复测试。它的值是 一定大小的帧数,该帧数是防火墙在没有丢包情况下的最长突发数,即当出现第一个帧丢失 时,所统计发送的帧数。在RFC2544中推荐每次测试至少运行2s并且应该重复至少50次 得到平均值。3传输层性能测试传输

13、层性能测试指的是测试与防火墙状态相关的性能和扩展性,它主要包括TCP并发 连接数(Concurrent TCP Connection Capacity)和最大 TCP 连接建立速率(Max TCP Connection Establishment Rate)两项指标的测试。3.1 TCP并发连接数并发连接数是衡量防火墙性能的一个重要指标。在IETF RFC2647中给出了并发连接数 (Concurrent connections)的定义,它是指穿越防火墙的主机之间或主机与防火墙之间能同 时建立的最大连接数。它表示防火墙对其业务信息流的处理能力,反映出防火墙对多个连接 的访问控制能力和连接状态跟

14、踪能力,这个参数的大小直接影响到防火墙所能支持的最大信 息点数。像路由器的路由表存放路由信息一样,并发连接表存放防火墙的并发连接信息,它可在 防火墙系统启动后动态分配进程的内存空间,其大小也就是防火墙所能支持的最大并发连接 数。大的并发连接表可以增大防火墙最大并发连接数,允许防火墙支持更多的客户终端。尽 管看上去防火墙的并发连接数似乎是越大越好。但是与此同时,过大的并发连接表也会带来 一定的负面影响:首先并发连接数的增大意味着对系统内存资源的消耗。其次,并发连接数 的增大应当充分考虑CPU的处理能力,CPU的主要任务是把网络上的流量从一个网段尽可 能快速地转发到另外一个网段上,并且在转发过程中

15、对此流量按照防火墙的访问控制策略进 行许可检查、流量统计和访问审计等操作,这都要求防火墙对并发连接表中的相应表项进行 不断地更新读写操作。如果不顾CPU的实际处理能力而贸然增大系统的并发连接表,势必 影响防火墙对连接请求的处理延迟。IXIA公司的IxLoad测试软件有对防火墙并发连接数的测试套件。在做并发连接数测试 的时候,所采用的参数不同,得出的测试结果也会有较大差距。例如,选用的传输文件大小 就会对测试结果有一定的影响。因为如果在传输中高层流量很大的话,被测设备将会占用很 大的系统资源去处理包检查,导致无法处理新请求的连接,引起测试结果偏小。反之,测试 结果会大一些。所以,没有测试条件而只

16、谈并发连接数是难以定断的。从宏观上来看,这个 测试的最终目的是比较不同设备的“资源”,也就是说处理器资源和存储资源的综合表现。尽 管并发连接数仅仅用于描述一个状态而不需要数据的传输,但并发连接也假定所有存在的连 接实际上均有能力传输数据。如果数据在一个连接上不能被发送,则这个连接不应该被计算 在并发连接数中。IxLoad测试软件是按照二分法找出系统所能承受的最大并发性能指标,并且给出简单 明了的测试报告,图1是一台并发连接数为19万的防火墙利用IxLoad测试的结果。图1 一台并发连数为19万的防火墙利用IxLoad测试结果3.2最大TCP连接建立速率该项指标是测试防火墙维持的最大TCP连接建

17、立速度,本测试用以体现防火墙更新状 态表的最大速率,考察CPU的资源调度状况。这个指标主要体现了被测防火墙对于连接请 求的实时反应能力。对于中小用户来讲,这个指标就显得更为重要。可以设想一下,当被测 防火墙每秒可以更快地处理连接请求,而且可以更快地传输数据的话,网络中的并发连接数 就会倾向于偏小,防火墙的压力也会减小,用户看到的防火墙性能也就越好,所以TCP连 接建立速率的确是个很重要的指标。理想的测试工具可以帮助使用者搜索到被测防火墙能够处理的峰值。IXIA公司的 IxLoad测试软件有对新建连接速率的测试套件,它是按照二分法找出系统所能承受的最大 性能指标,图2是一台新建连接速率为每秒16

18、00个的防火墙利用IxLoad测试的结果。X JxLoac Sjnirjiry ReportTeslHTTF 1_Q_ALM_CR取网.4 Trat,:fWQWwiConnection Rate图2 一台新建连接速率为每秒1600个的防火墙利用IxLoad测试的结果4应用层性能测试参照IETF RFC2647/3511,应用层测试指的是获得处理HTTP应用层流量的防火墙基准 性能,主要包括HTTP传输速率(HTTP Transfer Rate)和最大HTTP事务处理速率(Max HTTP Transaction Rate)。4.1 HTTP传输速率该测试指标主要是测试防火墙在应用层的平均传输速

19、率,是被请求的目标数据通过防火 墙的平均传输速率。该算法是从所传输目标数据首个数据包的第一个比特到最末数据包的最 后一个比特来进行计算,平均传输速率的计算公式为:传输速率(bit/s)=目标数据包数x 目标数据包大小x8bit/测试时长。其中,目标数据包数是指在所有连接中成功传输的数据包 总数,目标数据包大小是指以字节为单位的数据包大小。统计时只能计算协议的有效负载, 不包括任何协议头部分。同样,也必须将与连接建立、释放,以及安全相关或维持连接所相 关的比特排除在统计之外。由于面向连接的协议要求对数据进行确认,传输负载会因此有所 波动,则应该取测试中转发的平均速率。该项指标的测试也是我们常说的

20、有效吞吐量(Goodput)测试。当我们谈起吞吐量时, 大多都是指二/三层的测试结果。但是随着测试面向的流量转为四层以上,有效吞吐量的概 念就显得重要起来了。这个概念通俗点讲,就是除掉TCP因为丢包和超时重发的数据,实 际的每秒传输有效速率。通过这个测试我们能够得到什么信息呢?首先,我们可以知道测试 中的时延和丢包对最终用户的影响有多大。因为最终用户是不关心二/三层的,他们的大部 分应用都是运行在四层以上。如果有效吞吐量性能不好,即使二/三层的转发性能很好,仍 会导致整个主机看起来运行缓慢。其次,这个测试也有助于帮助厂商定位问题及找到系统的 未来发展空间。可以将此结果和基准测试中的结果作一对比,确定是第三层的转发引擎还是 第四层的状态检查影响了系统性能。4.2最大HTTP事务

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论