分类:
2009-02-12 14:07:50
CHARIOT测试网络吞吐量
CHARIOT产生并模拟真实的流量,采用End to End的方法测试网络设备或网络系统在真实环境中的性能。能够广泛应用在交换机、路由器建立的有线网络以及无线网络,甚至是VOIP等高新技术中,测量这些网络各个方面的功能和性能。
它可提供端到端、多操作系统、多协议测试、多应用模拟测试,应用范围包括有线网、无线网、广域网及各种网络设备。可以进行网络故障定位、用户投诉分析、系统评估、网络优化等,能从用户角度测试网络或网络参数(吞吐量、反应时间、延时、抖动、丢包等)。
以下用实例说明一下chariot的使用:
运行平台: PCA:Windows XP
PCB:Windows XP (虚拟机上安装)
PCB:Windows XP (虚拟机上安装)
注:Chariot支持多操作系统,比如XP/2000/20003等,其客户端软件Endpoint甚至能够在Linux等平台运行。
基本组成:包括CHARIOT控制台和Endpoint。CHARIOT控制台主要负责监视和统计工作,Endpoint负责流量测试工作,实际操作时Endpoint执行CHARIOT控制台发布的脚本命令,从而完成需要的测试(具体的工作流程图见图1)。
图1
实例1:测量网络中任意两个节点间的带宽
任务描述:假设我们要测量网络中B计算机192.168.4.112与C计算机192.168.4.113之间的实际带宽。
操作步骤:
第一步:首先在B、C计算机上运行CHARIOT的客户端软件Endpoint。运行 endpoint.exe 后,任务管理器中多了一个名为endpoint的进程。
第二步:被测量的机器已经准备好了,这时需要运行控制端CHARIOT,我们可以选择网络中的其他计算机,也可以在B或C计算机上直接运行CHARIOT(图2)。本实例CHARIOT运行在A计算机(192.168.4.82上)
图2
第三步:在主界面中点击“New”按钮,进行基本的设置。如图
图3
第四步: 接着点击“ADD PAIR”,在“Add an Endpoint Pair”窗口中输入Pair名称,然后在Endpoint1处输入B计算机的IP地址192.168.4.112,在Endpoint2处输入C计算机的IP地址192.168.4.113。按“select script”按钮并选择一个脚本,由于我们是在测量带宽,所以可选择软件内置的Throughput.scr脚本(图4)。
图4
提示:CHARIOT可以测量包括TCP、RTP、UDP、IPX、SPX在内的多种网络传输层协议,我们在测量带宽时选择默认的TCP即可。
第五步:点击主菜单中的“RUN”启动测量工作。,如图5所示
第六步:软件会测试100个数据包从B计算机发送到C计算机的情况。由于软件默认的传输数据包很小所以测量工作很快就结束了。在结果中点击“Throughput”可以查看具体测量的带宽大小。图6显示了B与C计算机之间的实际最大带宽为97.800Mbps。
图6
由于计算机B、C均是在A的虚拟机上安装的,所以带宽值很高,本例中得到的97.800Mbps基本可以说明去除损耗,A、B计算机之间可以达到90多Mbps的传输速率。
注:因为本实例中计算机A是虚拟机安装的,本例旨在介绍Chariot,故实际测试还是应该取真实计算机为好。
实例2:一次性测量两个方向
任务描述:实例1中为大家介绍了单向测量的方法,也就是只检测A到B的带宽。然而,实际工作中,网络是单工或双工工作也是影响网络速度的主要因素,因此用CHARIOT进行测量时应该尽量建立双向PAIR而不是单向的,测量结果会显示出B到C的速度以及C到B的速度。
针对问题:B到C的传输速度很快,但C到B的速度却很慢,特别是在B、C同时从对方计算机复制文件到本机时最为明显。
操作步骤:
第一步:首先在B、C计算机上运行CHARIOT的客户端软件Endpoint。
第二步:被测量的机器已经准备就绪,这时需要运行控制端CHARIOT,在B或C计算机上直接运行CHARIOT。 (本例中CHARIOT运行在A计算机)
提示:为保证测量成功,需要在B计算机和C计算机上关闭防火墙。
第三步:在主界面中点击“New”按钮,接着点击“ADD PAIR”。
第四步:在“Add an Endpoint Pair”窗口中输入Pair名称,然后在Endpoint1处输入B计算机的IP地址192.168.4.112,在Endpoint2处输入C计算机的IP地址192.168.4.113。按“select script”按钮并选择一个脚本,由于是测量带宽所以选择软件内置的Throughput.scr脚本。
第五步:现在,我们建立了从B到C的单向测量。由于要求测量网络双向吞吐量,所以还要添加一个从C到B的单向测量,这样结果显示的就是双向数据了。方法与第四步相同,在Endpoint1处输入C计算机的IP地址192.168.4.113,在Endpoint2处输入B计算机的IP地址192.168.4.112,同样选择Throughput.scr脚本。
第六步:现在,两对PAIR已经建立起来了(图7),点击主菜单中的“RUN”启动测量工作。
图7
第七步:软件会将100个数据包从B计算机发送到C计算机,还会测量100个数据包从C发送到B的情况。在结果页面中点击“Throughput”标签可以查看具体测量的带宽大小。如图8所示在下方图表中,绿色曲线表示Browan Test2的数值,而红色曲线代表的是Browan Test1的数值,从这个图中我们可以看出B到C的带宽比C到B的带宽要大。在上方的速度中也可以看出B到C的平均带宽为27.014Mbps,而C到B的带宽只有20.472Mbps。
图8
这说明什么呢?通过CHARIOT测量B、C之间的双向带宽可以得出以下结论:B到C的带宽和C到B的带宽是不同的。在实际的局域网中,计算机与计算机之间数据传输还有路由器、交换机、网线等介质,所以传输速率会有正常损耗,两点之间的相互传输速率是不等的。
注:由于环境因素,本实例中的数据存在很大误差,请实际测试应用实际的计算机客户端。
任务描述:对于网络情况不稳定、经常出现速度波动的情况来说,在某一时刻测量速度存在一定的不确定因素,如何将误差降低到最小呢?我们可以采用科学测量法来解决这个问题,即采用平均值的方法。将所有测量值汇总在一起可以得到更接近真实数值的结果。
针对问题:网络传输速度非常不稳定,经常一会儿十几MB/s,一会儿只有几MB/s。
操作步骤:
第一步:按照上面提到的方法安装CHARIOT并将客户端程序Endpoint安装在B与C计算机上。启动CHARIOT,点击“New”按钮。
第二步:点击“ADD PAIR”按钮建立一个新的Endpoint Pair。输入PAIR名称,然后在Endpoint1处输入B计算机的IP地址192.168.4.112,在Endpoint2处输入C计算机的IP地址192.168.4.113。按“select script”按钮选择Throughput.scr脚本。
第三步:在Pair 1上点鼠标右键选择Copy将该测量项复制(图9),然后连续向下粘贴9个这样的测量项(图10)。
图9
图10
第四步:点击“RUN”启动测量工作。
在现实中网络的连接速度往往存在着不稳定的因素,例如某一时间可能因为广播数据包或其他原因造成带宽异常,而另一时间速度恢复正常。对于这种带宽不稳定的情况我们就可以通过多项测量来保证在一定程度上减少误差,使我们的测量结果更加有效、更加准确。
实例4:VOIP的测试
任务描述:现型的网络环境非常复杂,VOIP应用也很普遍,那么我们也可以用Chariot对VOIP的一些性能进行测试,本例我们就以Browan的FreePP通话时测试两台计算机的一些参数。
针对问题:VOIP通话时的一些参数测试。
操作步骤:
第一步:按照上面提到的方法安装CHARIOT并将客户端程序Endpoint安装在B与C计算机上。启动CHARIOT,点击“New”按钮。
第二步:点击“Add VoIP Pair”按钮(如图11所示)建立一个新的Endpoint Pair。输入PAIR名称,然后在Endpoint1处输入B计算机的IP地址192.168.4.112,在Endpoint2处输入C计算机的IP地址192.168.4.113。(如图12所示)。
图11
图12
第三步:点击“Advanced”按钮,弹出详细的参数设置筐。(如图13所示)
图13
第四步:点击“OK”按钮,运行”RUN”。(如图14所示)通过运行结果,可以看出网络吞吐量Throughput、VoIP MOS值、One-Way Delay、Jitter等
图14
第五步:重复1-3步骤,在运行”RUN”前,进行简单的参数设置(如图15),并在B、C计算机都运行FreePP软件,使得B计算机和C计算机进行VOIP通话。
图15
第六步:运行”RUN”,看结果。(如图16)
图16
第七步:通过VoIP MOS值对比,可以看出进行VOIP通话前后MOS值的变化。(如图17、18所示)
图17 未进行VOIP通话前MOS值
图18 进行VOIP通话时的MOS值
当然Chariot所给出的结果并非MOS值一个,还有Jitter等,本例旨在说明Chariot在网络测试方面的强大功能,简单的说明怎么去应用它。
总结:Chariot的功能强大,远不止这些,关于更多更深入的功能,需要我们去深入学习、挖掘。本文的几个例子虽然有些粗浅,但是足以看出Chariot在网络测试领域的强大功能,关于该工具的更深入、强大的功能,希望大家共同去研究探讨,以便于我们的测试工作能够做得更好。
CHARIOT可以测量包括TCP,UDP,SPX在内的多种网络传输层协议,我们在测量带宽时选择默认的TCP即可。
第五步:确定后我们点主菜单的RUN启动测量工作,当然直接点上面一排里的RUN按钮也是可以的。
第六步:之后软件会测试100个数据包从A计算机发送到B计算机。由于软件默认的传输数据包很小所以很快测量工作就结束了。在结果中我们点THROUGHPUT标签可以查看具体测量的带宽大小。如图6显示了A与B计算机之间的实际最大带宽为83.6Mbp s。
图6
小提示:
由于交换机和网线的损耗,往往真实带宽达不到100Mbps,所以本例得到的83.6Mbps基本可以说明AB计算机之间的最大带宽为100Mbps,去除损耗可以达到80多Mbps的传输速度。
任务2:一次性测量两个方向
操作方法:
环境描述:任务1中为大家介绍了单向测量的方法,也就是只检测A到B的带宽。然而,实际工作中,网络是单工或双工工作也是影响网络速度的主要因素,因此用CHARIOT进行测量时应该尽量建立双向PAIR而不是单向的,测量结果会显示出A到B的速度以及B到A的速度。
操作方法:
第一步:首先在A、B计算机上运行CHARIOT的客户端软件Endpoint。
第二步:被测量的机器已经准备就绪,这时需要运行控制端CHARIOT,在A或B计算机上直接运行CHARIOT。
提示:为保证测量成功,需要在A计算机和B计算机上关闭防火墙。
第三步:在主界面中点击“New”按钮,接着点击“ADD PAIR”。
第四步:在“Add an Endpoint Pair”窗口中输入Pair名称,然后在Endpoint1处输入A计算机的IP地址10.91.30.45,在Endpoint2处输入B计算机的 IP地址10.91.30.42。按“select script”按钮并选择一个脚本,由于是测量带宽所以选择软件内置的Throughput.scr脚本。
第五步:现在,我们建立了从A到B的单向测量。由于要求测量网络双向吞吐量,所以还要添加一个从B到A的单向测量,这样结果显示的就是双向数据 了。方法与第四步相同,在Endpoint1处输入B计算机的IP地址10.91.30.42,在Endpoint2处输入A计算机的IP地址 10.91.30.45,同样选择Throughput.scr脚本。
第六步:现在,两对PAIR已经建立起来了(图7),点击主菜单中的“RUN”启动测量工作。(图7)
第七步:软件会将100个数据包从A计算机发送到B计算机,还会测量100个数据包从B发送到A的情况。在结果页面中点击“THROUGHPUT”标签可 以查看具体测量的带宽大小。如图8所示在下方图表中,绿色曲线表示带宽检测2的数值,而红色曲线代表的是带宽检测1的数值,从这个图中我们可以看出A到B 的带宽比B到A的带宽要大。在上方的速度中也可以看出A到B的平均带宽为72Mbps,而B到A的带宽只有42Mbps。这说明什么呢?通过 CHARIOT测量A、B之间的双向带宽可以得出以下结论:A到B的带宽是100Mbps(去除损耗真实带宽为72Mbps),而B到A的带宽只有 50Mbps。此时,我们应该检查网络连接设备,特别是网线,很可能是网线制作上出现了问题才造成B到A的速度不是100Mbps而是50Mbps。(图 8)
四、地址测试
前置知识:在一个TCP/IP网络中,每一台计算机都至少要有一个唯一确定的IP地址,否则无法进行通信。管理员为客户机分配IP地址有两种方 法:自动分配和手工分配。若网络中配置了DHCP服务器,我们在客户机上一般采用自动获取IP地址的方式配置IP地址,客户机启动后会自动向网络中 DHCP服务器发出IP地址的租用申请,DHCP服务器响应后会分配给客户机所需的IP地址。可在MS—DOS命令提示符下输入“ip config”命令查看从DHCP服务器的地址池中租用的IP地址,若显示的IP地址为169.254.*.*(*为1到254之间的任意数字)则说明 DHCP服务器未启用或已损坏,客户机的IP地址是通过APIPA 自动随机生成的私有地址。若没有配置DHCP服务器,就需要在客户机上指定IP地址,当我们在局域网的计算机上配置IP地址后,就需要验证和测试IP的配 置是否正确,这可以通过下面的步骤来测试网络的连通性,迅速判定问题所出位置。
操作过程:
(1)用IPCONFIG命令查看本机正在使用的地址,在MS—DOS命令提示符下输入IPCONFIG命令,可显示出本机正在使用的IP的设置,若显示IP地址为0.0.0.0则说明所设地址在局域网中已被使用而发生了冲突,可改用其他地址试一下。
(2)PING 127.0.0.1测试TCP/IP协议初始化是否正常,如PING不通则说明TCP/IP协议栈被损坏,需重新安装TCP/IP协议。
(3)PING本机IP地址,用来测试网卡的工作情况及网卡与协议绑定情况,若PING不通说明网卡的驱动没有安装好或协议绑定有问题,而出现这种毛病大多数都是网卡驱动有问题,重新装网卡驱动就可解决。
(4)PING同一子网的另一台机器,测试网线或集线器是否正常,若PING不通则有可能是网线断了或RJ-45头接线有问题,还有可能是集线器坏了。
(5)PING网关IP,若PING不通,有可能是本机的子网掩码配置错误或网关地址错误,或路由器端口有问题。
(6)PING远程主机IP,若PING不通,可能是路由器上的配置错误或远程主机的问题所引起。根据笔者的实践经验,在配置静态IP地址时如 果出错,按以上步骤基本可找出原因,但注意在启用了安全策略的网络里,PING不通并不一定说明网络出现故障,而有可能是在安全策略里设置了禁止PING 对方计算机的功能。(图9)