应用层设备性能测试方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、最大HTTP新建连接速率(Maximum Connection per Second)
由于TCP拆连接有多种方法,所以有多种途径来测试最大HTTP新建连接速率。
(1)首先TCP连接建立(SYN,SYN-ACK,ACK),然后是一个完整的包括请求和回应的7层交易过程,最后为TCP拆除连接(FIN,ACK)。
(2)首先TCP连接建立(SYN,SYN-ACK,ACK),然后是一个部分或者不完整的7层交易请求,最后为TCP拆除连接(FIN,ACK)。
(3)首先TCP连接建立(SYN,SYN-ACK,ACK),然后是一个部分或者不完整的7层交易请求,最后为TCP连接直接复位(Reset)。
最为理想的方式为第一种,因为其包含了完整的成功7层协议交互过程。但是对于仅关心4层TCP性能的设备来说,第二种方式比较合适。第三种方式常用于强制拆除TCP连接下被测设备的压力测试。该测试至少需要客户端和服务器端各一个端口,HTTP客户端流量通过被测设备到达HTTP 服务器端,图1是测试连接的示意。
图1 应用层设备测试示意图
表1是进行HTTP新建连接速率测试时通常设置的参数表,这些典型参数设置仿真了网络中典型的HTTP应用情况,可以在实验室里面验证被测设备在网络中的HTTP新建连接速率性能表现。表2总结了一些典型的应用场景,根据被测设备的类型以及不同的工作模式,用上述参数进行设置并进行测试。
表1 HTTP新建连接速率测试时建议IxLoad参数设置
表2 被测设备典型的工作模式与建议配置
具体采用IxLoad进行测试设置的步骤,可以联络IXIA公司得到操作指导书,测试的目的是能够得到预期的结果并能够对出现的各种异常或者问题提供分析和帮助,表3是HTTP新建连接数测试所关注的关键指标。在测试过程中或者测试结束后,如果观察到测试结果和预期的不一致,可能是参数配置的问题,需要通过一些途径进行分析,表4是该测试任务可能遇到的问题以及建议性的解决办法。
表3 HTTP新建连接数测试所关注的关键指标
表4 可能遇到的问题与建议的解决办法
3.2 最大HTTP并发连接数量(Maximum Concurrent Connection)
该指标主要用于测试被测设备能够维持的最大激活的TCP Session的数量,该过程是首先通过SYN,SYN-ACK,ACK的TCP三次握手建立TCP连接,然后执行7层的数据交互过程,最后拆除TCP连接。一般情况下,设备的最大并发连接数和设备的存储空间有关,该值越大,能够维持的连接数就越多。测试连接见图1,表5是在进行该项目测试时推荐的参数设置值。被测设备有多种工作模式,表2中列出来的参数同样适用于该测试。同样,表3中列出来的也是并发连接数测试所需要的关键指标。
表5 最大HTTP并发连接数量建议IxLoad参数设置
为了验证被测设备是否达到最大HTTP新建速率的限制,可以在IxLoad 时延的统计结果里面TTFB(Time to First Byte)参数,在图2的例子中,TTFB在“Ramp Up”阶段能够处理大量的连接请求,随后连接时间(Connection Time)和TTFB值的增大反应了被测设备处理速度的减缓。表6是该测试任务可能遇到的问题以及建议解决办法。
图2 IxLoad测试结果中TTFB测试示意
表6 可能遇到的问题与建议的解决办法
3.3 最大HTTP 事务交易速率(Maximum Transactions per Second)
该测试是验证被测设备能够支持的最大事务交易速率,一个交易是指一个请求以及相应的回应。比如通过浏览器访问某网站,首先通过三次TCP握手建立TCP连接,所请求的页面包括多个对象:网页、图像、Flash或者内嵌对象等通过浏览器并行或者串行下载。
对于HTTP 1.0采用Keep-alive特性和HTTP1.1,TCP可以支持多个Transaction。对于大多数操作系统和浏览器来说,一个TCP包括多少个Transaction都是可配置的。在进行该指标测试时,一般情况下尽可能减少TCP连接的数量,这样可以保证尽可能多的应用层Transaction的数量。IxLoad支持该功能的灵活设置。该测试项目的测试拓扑见图1,相应IxLoad的参数设置见表7,被测设备有多种工作模式,表2中列出来的参数同样适用于该测试。同样,表3中列出来的也是并发连接数测试所需要的关键指标。
表7 最大事务交易速率测试建议的IxLoad参数设置
3.4 最大吞吐量(Maximum Throughput)
首先需要明确的是,应用层的吞吐量和通常理解的2层吞吐量计算方法是不同的,图3是相关计算方法的解释,2层吞吐量是对整个2层数据帧进行计算的,包括链路上所有的Bits数。应用层吞吐量(Goodput)只对有效数据进行计算,对于重传的数据包也不考虑在有效数据中。该测试项目的测试拓扑参见图1,相应IxLoad的参数设置参见表8。被测设备有多种工作模式,表2中列出来的参数同样适用于该测试。同样,表3中列出来的也是并发连接数测试所需要的关键指标。表9是该测试任务可能遇到的问题以及建议解决办法。
图3 应用层吞吐量和2层吞吐量解释
表8 最大事务交易速率测试建议的IxLoad参数设置
表9 可能遇到的问题与建议的解决办法
3.5 在有DDoS攻击流量下的性能(Application Forwarding Performance under DoS Attacks)
防火墙和具有DPI功能的设备都具有保护当前正在运行的用户不受攻击的能力,该能力增加了系统的处理开销,会对系统的性能造成一定的下降。该测试项目主要验证被测设备在有拒绝服务(DDoS)攻击的情况下被测设备转发性能所受到的影响。
通常有多种方法测试设备在攻击情况的性能表现,在这里以设备受到SYN Flood攻击为例,同
时以多种应用层流量FTP,SMTP,RTSP,SIP作为背景对HTTP流量正常转发性能的影响。表10是测试工具所需要的参数设置。相应的结果分析、对于HTTP协议,同样可以参考表3,对于其他类型的业务流量和DoS攻击流量,可以参见表11。
表10 最大事务交易速率测试建议的IxLoad参数设置
表11 DoS攻击流量结果统计信息
IXIA独有的数据包监测(Packet Monitor)统计功能,可以实时分类统计合法的业务流量与攻击流量,这样就可以在测试工具中实时查看被测设备是否对非法流量进行了有效拦截,并确认是否对合法流量造成性能上的影响。表12是该测试任务可能遇到的问题以及建议解决办法。