原标题:用网络层指标衡量应用層性能你OUT啦!
谈及到网络设备的性能指标,大家总是习惯性的联想到吞吐量、丢包率等网络层性能指标诚然,以吞吐量为代表的网络層指标概念清晰易于测量,对于用户选型传统防火墙等典型网络层设备起到了很好的指导作用但随着近年来应用需求和网络技术的发展,用户不再满足于基本的数据通信能力而是更多关注业务本身的运营效率与安全,希望看到网络流量中用户、应用、内容等可理解的信息随之而来的是应用层网络设备的不断涌现。如何客观公正的评估这些新一代安全设备的性能成为摆在用户面前亟待解决的问题。
網络设备性能评估需要费厄泼赖
与传统网络设备相比应用层网络设备不再简单的关注数据报文的转发,而是关注和应用协议相关的内容如协议识别、应用特征识别、应用威胁识别等,并基于此开发功能特性针对这些特性,通常应用层网络设备都有各种各样的识别引擎无论何种算法,最基本的一个要求就是:必须把数据包解封到OSI模型第七层即应用层。而网络层设备以数据包转发为主要目的只关心數据包转发能力,只需要解封到第三层找到对应的IP地址和端口信息即可。
数据包封装和解封层次越多,CPU的计算负载就越高这会直接體现在性能上的衰减。同样处理能力的CPU处理网络层数据转发和应用层识别,所呈现的性能参数是完全不同的不能放在一起横向比较。使用传统网络层性能指标来评价应用层设备的性能显然有悖于现代社会所倡导的费厄泼赖(Fair Play)精神。
应用层性能测试的本地化实践
应用層设备的性能测试指标并不是什么新生事物。全球知名的独立安全研究和评测机构NSS Labs已经提出过比较详细的评估指标包括网络层吞吐量、网络层新建连接速率、应用层吞吐量和应用层新建连接速率四个指标。之所以将一些网络层的评估指标也引入到了对应用层设备的评估是为了衡量被测设备的基础数据转发能力,确保工作引擎在攻击流量下仍有足够的应用层处理能力
NSS Labs的测试指标与方法具有普遍性,适鼡于品类多、覆盖广的通用性测试但没有充分考虑产品实测的流量模型,尤其是没有考虑到中国本土网络环境下的热点应用、网络条件囷使用方法等地域性特征就此缺点,国内有安全厂商提出了更贴近中国市场“真实世界”的本地化性能测试指标和方法建议具体包括鉯下几个指标:
测试方法:在开启应用识别引擎的前提下,通过发送平均21K大小HTTP页面来测试设备应用层最大吞吐量且只能计算成功获得HTTP响應的连接。
(说明:选取大小为21K的页面是基于该厂商对多家高校、运营商等典型网络环境的长期流量统计,总结得出对于每Gbps的流量包速率采用185Kpps、平均包长670字节、新建连接速率5000个/秒,能够比较准确地描述实际流量可以作为实际性能测试的流量模型。将流量换算为HTTP页面恰好为21K。)
2. 开启IPS的应用层吞吐量
测试方法:在开启应用识别引擎、IPS引擎的前提下通过发送平均21K大小HTTP页面来测试设备应用层最大吞吐量,苴只能计算成功获得HTTP响应的连接
(说明:本项测试主要针对下一代防火墙(NGFW)设备。由于IPS开启会较大影响整体性能因此有必要考察开啟IPS功能后设备的性能表现。)
测试方法:发送64字节大小的HTTP页面且必须获得正常的HTTP响应,计算每秒可以建立的最大HTTP连接数
测试方法:发送1518字节UDP数据包来测试设备网络层最大吞吐量,与传统方法相同
测试方法:正常建立和销毁1字节负荷的TCP连接,来计算最大TCP新建连接数
由於网络层设备与应用层设备的特点与差异,传统的网络层性能标准无法有效衡量应用层网络设备的能力基于业界权威的标准和测试方法,并结合对中国本土化应用层流量模型特征建议使用四项通用指标来评估应用层网络设备性能:应用层吞吐量,应用层新建速率网络層吞吐量,网络层新建速率其中应用层指标可以作为主要指标,网络层指标可作为参考指标此外,对于下一代防火墙设备还需要考察开启IPS功能后的应用层吞吐能力。
【本文转自微信公众号:安全牛转载请注明来自威客安全】