用网络层指标衡量下一代防火墙性能?你OUT啦!

转自安全牛

谈及到网络设备的性能指标,大家总是习惯性的联想到吞吐量、丢包率等网络层性能指标。但随着近年来应用需求和网络技术的发展,用户更希望看到网络流量中用户、应用、内容等可理解的信息,随之而来的是应用层网络设备的不断涌现,其中的典型代表是下一代防火墙(NGFW)。使用传统的网络层性能指标去衡量新一代应用层设备的性能,这事儿,靠谱吗?

性能评估需要费厄泼赖精神

640.webp

与传统网络设备相比,应用层网络设备不再简单的关注数据报文的转发,而是关注和应用协议相关的内容,如协议识别、应用特征识别、应用威胁识别等,这就对设备的协议识别引擎提出了一个最基本的要求:必须把数据包解封到OSI模型第七层,即应用层。而网络层设备以数据包转发为主要目的,只关心数据包转发能力,只需要解封到第三层,找到对应的IP地址和端口信息即可。

数据包封装和解封,层次越多,CPU的计算负载就越高,这会直接体现在性能上的衰减。同样处理能力的CPU,处理网络层数据转发和应用层识别,所呈现的性能参数是完全不同的,不能放在一起横向比较。使用传统网络层性能指标来评价应用层设备的性能,显然有悖于现代社会所倡导的费厄泼赖(Fair Play)精神。

国外的测试指标,适合本土化环境吗?

知名的独立安全研究和评测机构NSS Labs已经提出过比较详细的应用层性能评估指标,包括网络层吞吐量、网络层新建连接速率、应用层吞吐量和应用层新建连接速率四个指标。NSS Labs的测试指标与方法具有普遍性,适用于品类多、覆盖广的通用性测试,但没有充分考虑产品实测的流量模型,尤其是没有考虑到中国本土网络环境下的热点应用、网络条件和使用方法等地域性特征,生搬硬套的话,难免会“水土不服”。

网康推荐的应用层性能测试方法

针对国外测评标准的缺点,网康提出了更贴近中国市场“真实世界”的本地化性能测试指标和方法建议,具体包括以下几个指标:

1、应用层吞吐量

测试方法:在开启应用识别引擎的前提下,通过发送平均21K大小HTTP页面来测试设备应用层最大吞吐量,且只能计算成功获得HTTP响应的连接。

(说明:选取大小为21K的页面,是基于网康对多家高校、运营商等典型网络环境的长期流量统计,总结得出对于每Gbps的流量,包速率采用185Kpps、平均包长670字节、新建连接速率5000个/秒,能够比较准确地描述实际流量,可以作为实际性能测试的流量模型。将流量换算为HTTP页面,恰好为21K。)

2、开启IPS的应用层吞吐量

测试方法:在开启应用识别引擎、IPS引擎的前提下,通过发送平均21K大小HTTP页面来测试设备应用层最大吞吐量,且只能计算成功获得HTTP响应的连接。

(说明:本项测试主要针对下一代防火墙(NGFW)设备。由于IPS开启会较大影响整体性能,因此有必要考察开启IPS功能后设备的性能表现。)

3、应用层新建速率

测试方法:发送64字节大小的HTTP页面,且必须获得正常的HTTP响应,计算每秒可以建立的最大HTTP连接数。

4、网络层吞吐量

测试方法:发送1518字节UDP数据包来测试设备网络层最大吞吐量,与传统方法相同。

5、网络层新建速率

测试方法:正常建立和销毁1字节负荷的TCP连接,来计算最大TCP新建连接数。

(说明:对于应用层设备引入网络层指标,主要是衡量基础的数据转发能力,以确保工作引擎在攻击流量下仍然有足够的应用层处理能力。)

小结

由于网络层设备与应用层设备的特点与差异,传统的网络层性能标准无法有效衡量应用层网络设备的能力。基于业界权威的标准和测试方法,并结合对中国本土化应用层流量模型特征,网康建议使用四项通用指标来评估应用层网络设备性能:应用层吞吐量,应用层新建速率,网络层吞吐量,网络层新建速率。其中应用层指标可以作为主要指标,网络层指标可作为参考指标。此外,对于下一代防火墙设备,还需要考察开启IPS功能后的应用层吞吐能力。