揭穿高性能测试数据后的谎言_晓河流水||U jump I jump_百度空间
令人振奋的网络产品测试结果,厂商技术人员对于网络产品的热情介绍。 是不是其中暗藏玄机?是否掩盖了什么技术陷阱?

厂商在向用户介绍本公司的产品时,往往拿着第三方测试机构的产品测试结果或者产品手册,谈论自己产品的高性能参数。在灿烂的性能测试数据下,是否也有暗流 汹涌,用高深的技术误导用户的行为?2006年6月6日,《网络世界》评测实验室联手思博伦通信公司在北京举办了网络测试技术研讨会,解答了以上问题。国 际知名测试专家David  Newman和评测实验室主任荣钰和一起带领用户,逐一剖析了通过篡改测试方法而达到高性能的种种玄机。

Network Test公司的David Newman是国际网络测试圈最知名的“网络毁灭者”,一个爱与网络产品和厂商较劲儿的人,他曾经说人生一大乐趣就是把那些网络产品放到阳光下,想尽办法 去折磨他们。在测试领域里David Newman享有很高的声誉,对于网络测试有着独到的见解,揭穿了测试中篡改实验方法的各种玄机。

                            玄 机一 更改测试仪数据包转发速率
 
数据包转发速率测试,是我们经常见到的性能指标之一。一些常用的网络设备,比如交换机、路由器都会包括这个测试指标。厂商通常都会宣称他们的产品可以达到 “线速”,然而这个线速后面却大有门道。通常说来,以太网上传送数据包的速率会有些偏差,可能会快些,也可能会慢些。David Newman讲到,在数据包转发速率测试中,厂商可能会通过固定测试仪发送数据包的速率来适应被测设备的接收数据包速率,从而通过测试,使被测设备成功达 到“线速”。笔者就曾经有过这样的一段经历,在笔者进行交换机测试时,有些交换机的测试结果不尽如人意,有的厂商就会抱怨测试仪的发包速率和交换机接收包 的速率不一致,所以被测设备不能达到线速。

  David Newman认为这种做法是自欺欺人的,这是因为在真实的网络世界里,用户设备发送数据包的速率可能会比线速率高一些,也可能会比线速率低一些,并不会有 一个标签贴在那里,告诉设备必须按照这个速率来发送数据包,否则就不能称作一个真正的以太网了。设备制造商则必须要适应这种情况,从而做到适应真正的用户 环境。

                                玄 机二 测试包长含糊其辞

在网络设备测试中,测试仪会发送大量的数据包来验证设备性能。然而测试用的数据包会对设备最终的测试结果影响很大。例如在转发速率测试项目中,有的厂商会 宣称设备是700Mbps的转发速率,有的则会说达到了900Mbps,更有的厂商则会说,达到了1Gbps的转发速率。在实际测试中,这些设备确实达到 了标称的转发速率,厂商没有骗你!然而,David Newman和荣钰异口同声的提醒您,要注意测试包长!!为什么测试包长是一个关键因素呢?荣钰举了一个形象的例子,比如说在邮局里,邮局要求分拣员{yt} 要完成一吨的邮件分拣量,如果今天来的都是300公斤的邮包,那么这个邮件分拣员会很容易的完成今天分拣任务。但是,如果今天来的都是重量1克的邮件包, 分拣员则会很辛苦,说不定今天就会完不成任务。类似于转发速率测试来说,如果被测设备测试的都是中型数据包,那么转发测试结果会很好,大部分设备都会达到 “线速”。但如果测试的是大包、小包,对于交换机路由器等设备来说,压力会很大,同样的设备测试结果也可能会很不好。服务器系统测试也一样,处理的不同文 件压力也会不一样。所以在看测试报告时,您一定要明眼看清楚测试包长是多少。

  David Newman对于测试包长上所耍的小花招,则给出了一个很好的解决办法,他建议{zh0}用包转发速率(pps)来询问厂商设备的测试结果,不要以比特的转发速 率(bps)作为结果,因为设备每秒钟转发了多少个数据包就是多少个数据包,厂商无法做手脚。同时,他还建议在测试防火墙时,包转发速率是{zh0}的描述方 法。

                                玄机三 测试时间

  测试时间在网络产品测试中是一个非常关键的因素,测试时间的不同,可能会导致大相径庭的结果。荣钰在谈到他的测试经历时,提到有的设备在测试时,1分钟的 测试时间还非常好,但超过了这个时间,设备就开始了丢包,这是因为有的交换设备是靠缓存来存储数据包,但超过一分钟以后,缓存就满了,所以出现了丢包情 况。

  David Newman也谈到,有的厂商会宣称有1Gbps的转发速率。但是没告诉你他用了多长的测试时间,他认为网络测试并没有一个标准的测试时间。但RFC里有 一个建议,是30秒的时间,但却不是必须做到的。测试里,可能会用60秒,300秒,或者可以用更长的时间。测试时间越长,测试结果越xx。David Newman曾在美国遇到这样一个例子。第三方实验室在测试一家生产厂商的设备时,开始用的是60秒的测试,有丢包。30秒的还是有丢包。实验室重复测试 时间,最终发现28.5秒测试时间是不丢包的测试时间。于是厂商会在美国《网络世界》杂志中宣称,他们的产品达到了线速,没有丢包,但厂商是不会注明测试 时间是28.5秒的。通过以上荣钰和David Newman的举例来看,我们关注测试时间是非常必须的。

                            玄 机四 对网络名词偷梁换柱
 
网络设备吞吐量这个词很流行,因为他很容易理解网络设备到底有多快,但同时,他也是被厂商偷梁换柱最多的一个专业名词。吞吐量在RFC中只有一个定义:即 不丢失任何一个帧的情况下的{zd0}转发速率。就是每秒输入X个报文,输出也是X个报文。

  David Newman认为吞吐量实际上是一个速率,是一个xx的速率,不是{bfb},就是80%。他常常能听到市场人员宣传比如说{zd0}吞吐量、零丢包吞吐量或者是 可以接受的小于百分之零点几丢包下的吞吐量。然而实际上,就没有以上市场人员所宣传的说法。再有就是市场宣传人员常常会两倍或者三倍的多估算某项性能 值,David Newman举例说比如有两个千兆端口连接测试仪,双向发送流量,那么对于这两个端口的吞吐量则有很多种说法。有人说是1Gbps,有人说是2Gbps, 更有人说是4Gbps,市场人员常常会说是4Gbps的吞吐量,其实更好的说法是1Gbps双向的吞吐量,只有一种情况说我们双向发送是对的,那就是在你 测试交换矩阵时是对的,市场人员常常多估算性能值来迷惑用户其产品的高性能。

                                           玄机五 测试拓扑

  基准测试中是必须要有压力测试的,如果不这么做的话,我们就不会知道这个设备的极限值是多少。如果使用简单的流量就不会测试出网络设备的真实性能。

  荣钰曾经遇到过一家网吧的网管向他咨询能不能买一个小型路由器来管理网吧,{zh1},他执著的买了一台小型的路由器管理网吧,但是{zh1}用不了多久设备就会死机 重起。荣钰认为这种小型的路由器,管理只有几台电脑的网络还是没有问题的,但对于大型网络就非常勉强的。同样对于压力测试来说,小型的接入路由器和骨干路 由器在简单流量下,性能值可能会非常相似,但如果通过压力极限测试,则结果可能会大相径庭。

  英雄所见略同,David Newman同时也强调了压力测试的必需性。他举例说,假如有个测试设备具有两个ASIC芯片共4个端口,后面是背板。厂商会设计这样一个测试,他们会让 所有的流量通过一个ASIC芯片进行转发。这是一个不好的测试方案设计,因为背板并不会有任何的流量压力。好的测试应该是测试流量要穿过所有ASIC芯 片,并也可穿过背板,从而可考验背板能力。每一个交换机都有自己的架构,要考验设备的真实性能,一个简单的方法是发送越来越多的流量,经过交换矩阵,这样 会给交换机带来更大的压力。David Newman又举了另外一个例子,来举证厂商通常没有用到压力测试,那就是他们会用简单的流量内容来测试设备,这样也不会用到所有的ASIC芯片。

                                       测试报告要量 体裁衣

  作为用户,您的测试报告一定要符合自己网络的实际情况。有些厂商提供的测试报告数据并不够全面,例如数据包延迟情况他们就不会列举出来,但延迟往往又影响 到了最终用户的使用感受。作出一份自己的测试报告,则先要对自己的网络架构有充分的了解。

  此外,David Newman提出了测试要有意义的观点。测试有意义就是我们在定义测试参数时,一定是要基于你的网络,而不是基于其他人的网络。为了使测试有意义,就必须 在测试前衡量自己的网络流量。{dy}个就是包的长度,包长度的分布都是不一样的。另外就是网络协议的流量分布,有没有组播,有多少TCP流量有多少UDP流 量。那么自己网络的应用是什么样的,是VOIP还是数据等。往返时间是多少。不管怎样,一定要根据自己的网络实际情况进行测试。

  举例来说,就设置测试时间参数来说,David Newman和荣钰提出来:测试时间越长,测试结果也就越xx。但David Newman也表示,到底规定用多长的时间也没有xx的定义。这时用户就应该对网络采样,来确定自己网络的流量模型。比如说在你的网络应用中,收发邮件应 用比较多,那么流量时间非常短,就没有必要设置很长的测试时间。如果像其他的流量应用,比如P2P,VOIP等,他们的流量时间就会持续很长时间,相对应 来说,网络设备就需要很长的测试时间。此外,荣钰谈到了他身边的一位朋友,他的朋友看到万兆交换机有许多宣称值,他想亲自做一个满端口测试,以验证这些性 能,然而对于目前的网络应用状况来说,在数据中心的交换机是不可能插满所有端口的,所以并没有实际的意义进行满端口测试,所以从测试角度来说,贴近自己的 需求也是十分必要的。

  测试报告量身打造,才更符合您的实际利益!



郑重声明:资讯 【揭穿高性能测试数据后的谎言_晓河流水||U jump I jump_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——