IxChariot使用方法.docx
- 文档编号:7002695
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:30
- 大小:2.32MB
IxChariot使用方法.docx
《IxChariot使用方法.docx》由会员分享,可在线阅读,更多相关《IxChariot使用方法.docx(30页珍藏版)》请在冰点文库上搜索。
IxChariot使用方法
IxChariot
使用手册
V0.4-2011-01-28
一、IxChariot软件的介绍
IxChariot是美国IXIA公司的推出的针对应用层性能测试的一款软测试工具。
IxChariot在应用层性能测试领域已得到业界的广泛认可。
IxChariot能够评估网络应用的性能和容量,对网络和设备进行压力测试,得到设备及网络在不同应用、不同参数下的吞吐量、时延、丢包、反应时间等性能参数。
1、软件功能
利用IxChariot可以进行网络维护,性能测试和故障定位:
1)支持多种网络业务,内置超过120个业务脚本,如FTP,HTTP,IPTV,Netmeeting,RealAudio等。
2)支持IPTOS,GQoS,DiffServ。
3)能实现单个主机可以模拟超过2000个主机。
4)支持组播业务。
VoIP网络测试与业务质量评估:
1)支持6种VOIPCodec(G.711a,G.711a,G.723.1-ACELP,G.723.1-MPMLQ,G.726,G.729)。
2)支持MOS评分,便于对VOIP网络进行实时分析。
能够对电信终端进行性能测试和评估:
1)能够测试网卡(10/100/1G/无线/蓝牙),xDSL调制解调器,CableModem,ISDN。
终端,普通调制解调器,GPRS手机,CDMA手机。
2)测试防火墙及应用网关。
2、软件内容
IxChariot由两部分组成:
控制端Console和终端Endpoint,两者都可安装在普通PC或者服务器上,控制端Console安装在Windows操作系统上,终端Endpoint支持各种主流的操作系统。
如:
CompaqTru64UNIX、FreeBSDUNIX、HP-UX、IBMAIX、IBMMVS、IBMOS/2、Linux、MicrosoftWindows3.1、MicrosoftWindows95/98/Me/NT/2000/XP/XP(64-bit)、NovellNetware、ScoUNIXWare、SGIIRIX、SpirentCommunicationsTeraMetrics、SunSolaris。
控制端Console为该产品的核心部分,控制界面(也可采用命令行方式)、测试设计界面、脚本选择及编制、结果显示、报告生成以及API接口等都由控制端提供。
终端Endpoint可根据实际测试的需要安装在单个或者多个终端处,负责从控制端接收指令、完成测试并将测试数据上报到控制端。
IxChariot通过内置的脚本,由控制端控制终端相互主动发包,对设备进行功能、压力和性能等测试,测试结果包括吞吐量、时延、抖动、丢包、错包等等,它能够得到定量的数据并提供详尽的测试报告,从而使得用户可以主动地把握设备的性能状况,并及时地发现问题并采取措施。
IxChariot通过各种机制可以仿真任意的应用。
首先,通过内置的脚本,IxChariot发送不同的数据流,可以模拟现在常见的125种应用,而且这种数据流是双向的,真正与协议栈进行交互。
IxChariot对各种应用的支持是基于在Endpoint之间发送的多种数据流,数据流的传送可基于多种协议,包括TCP、UDP、RTP、SPX、IPX和SNA,目前也已经支持IPv6。
IxChariot还支持Multicast、QoS等多种先进技术,而且将一直保持同步。
IxChariot允许对脚本进行定制,改变数据流的各种参数,比如起始的启动间隔、发送窗口、接受窗口的大小,发送文件的大小,发送的速率、发送的比特流类型、使用端口等等,而且这些参数不但可以是一个由用户指定的典型数值,而且还能选用在最大、最小值之间符合平均分布、正态分布、泊松分布或者指数分布的随机值,从而真正地仿真网络中各种特定的数据流,全面地测试网络或者网络设备在复杂的网络环境下的性能。
IxChariot已经成为业界公认的性能测试软件,所有熟悉和熟练的掌握IxChariot的使用,就显得尤为重要,接下来我们就来具体研究一下如何使用这个功能强大的软件。
二、IxChariot软件的使用
1、初始界面
运行桌面上的IxChariotConsole,进入IxChariot界面,如图:
IxChriot主界面中,有四个选项,分别是“New”、“Open”、“Design”、“Help”。
选项
说明
New
新建一个测试
Open
打开一个已保存的测试
Design
自己设计测试环境拓扑
Help
查看帮助文档
点击“New”进入“IxChariotTest”界面,这里是我们控制观察整个测试过程的地方,如图:
点击“Open”进入“OpenaTestFile”界面,我们可以选择打开之前保存过的测试文件,文件类型为“.tst”如图:
点击“Design”首先弹出的是“GettingStart”界面,这是一个提示窗口,告诉我们每一个图标都代表什么,如果不想在每次进入绘制拓扑的时候看到这个界面,可以将“Showthisonstartup”的勾去掉即可。
如图:
点击“OK”按钮,进入“VisualTestDesigner”界面,在这里我们可以自由设计希望搭建的拓扑结构,如图:
搭建成功后,我们可以点击鼠标右键,在弹出的快捷菜单里,选择“ExporttoIxChariotTest”,将本次搭建的拓扑直接保存为一次空白的测试结果,然后点击“Open”打开后,点击“Run”运行即可得出真正的测试结果;或者选择“ExportandLaunchIxChariot”直接导出保存后运行本次测试。
除此之外,我们还可以对本次所搭建的拓扑进行直接保存,选择文件菜单“File”下的“Save”或者“Saveas”,将本次的拓扑保存为一个“.xml”格式的文件,这个文件允许我们再次的打开拓扑,进行编辑修改等操作。
点击“Help”进入“ChariotHelp”界面,通过目录,我们可以查询到希望了解到的帮助信息,如图:
2、软件使用说明
2.1控制台界面
对于初始界面的几个选项,我们已经基本了解,下面我们就来具体看一下IxChariot软件是如何使用的:
点击“New”进入“IxChariotTest”界面后,这里是整个测试的核心控制观察部分,我们将这个界面分为三部分,分别是红色的控制部分、黄色和蓝色的观察部分,如图:
界面上方红色的区域:
如上图,这部分是我们对整个测试进行选择和控制的区域,每一部分的功能如下表所示:
区域
选项
说明
1
Save:
保存
Print:
打印
Run:
运行
Stop:
停止
Poll:
调查(向终端发送一个请求,返回当前已运行到的测试的记录数)
Cut:
剪切
Copy:
复制
Paste:
粘贴
Delete:
删除
2
AddPair:
增加一条测试
AddMulticastGroup:
增加一条多点测试
AddVoIPPair:
增加一条IP语音测试
AddHardwarePerformancePair:
增加硬件性能测试
AddVoIPHardwarePerformancePair:
增加IP语音硬件性能测试
Edit:
编辑一条测试
Replicate:
复制一条测试
SwapEndpoints:
交换终端信息
RenumberPair:
重新按顺序排列所有测试
3
NoGrouping:
按队列显示所有
GroupbyNetworkProtocal:
按网络协议排序
GroupbyScriptFilename:
按脚本文件排序
GroupbyEndpoint1:
按终端1排序
GroupbyEndpoint2:
按终端2排序
GroupbyServiceQuality:
按服务质量排序
GroupbyPairGroupName:
按组名排序
GroupbyPairComment:
按名称排序
4
ExpandsGroups:
扩展列表
CollapseGroups:
收缩列表
Help:
查看帮助文档
IxiaHomePage:
访问官方网站
界面中的黄色区域:
“TestSetup”区域,这里显示的是整个测试所添加的全部Pairs的情况,在我们还没有点击“Run”前,我们可以从这里查看到“Group”Pairs所属的组、“RunStatus”运行状态、“TimingRecordsofCompleted”记录完成的比例情况等等。
在一次测试结束后,这里会显示全部的测试结果,包括:
“Throughput”、“TransactionRate”、“ResponseTime”、“RawDataTotals”、“EndpointConfiguration”,点击相应模块即可查看结果信息。
如图:
界面中的蓝色区域:
在整个运行过程中以图表的形式实时显示测试结果,对应于黄色区域中的选择,例如我在黄色区域中选择了“Throughput”选择,那么这里显示的就是“Throughput”图表,如图:
2.2应用实例
我们以测试吞吐量为例来看一下如何使用IxChariot软件。
测试拓扑:
测试环境:
Server1:
CPU:
Inter(R)Pentium(R)4CPU2.40GHz(2CPUs)
内存:
1024MB
网卡:
Inter(R)PRO/1000CTNetworkConnection(WAN10.9.21.71/16100Mbps)
Inter(R)PRO/1000MTNetworkConnection(LAN1.1.1.2/241Gbps)
Server2:
CPU:
Inter(R)Pentium(R)4CPU2.40GHz(2CPUs)
内存:
1024MB
网卡:
Inter(R)PRO/1000CTNetworkConnection(WAN10.9.21.70/16100Mbps)
Inter(R)PRO/1000MTNetworkConnection(LAN2.1.1.2/241Gbps)
NG-5020GS:
*********************************************
WelcometoLinkTrustSecurityGateway!
DeviceType:
NG-5020GS
DeviceName:
LinkTrustSecurityGateway
Manufacturer:
LinkTrustTechnologiesDevelopmentCo.,Ltd.
OurURL:
SerialNumber:
Egq+RexnqK1Go+CAmuv+Kw==
AppVersion:
8.2.0.001038(2010-10-2018:
05)
KernelVersion:
1.2.0
*********************************************
CPU:
Intel(R)Core(TM)2QuadCPUQ8400@2.66GHz
内存:
1024MB
测试前的准备工作:
我们设置server1和server2运行Endpoint终端程序,server1上运行IxChariotConsole控制台程序。
server1的LAN口与NG-5020GS的eth1口相连,server2的LAN口与NG-5020GS的eth2口相连。
IP的配置如图所示,将server1的LAN口网关指为1.1.1.1,server2的LAN口网关指为2.1.1.1,NG-5020GS上配置相应策略,保证server1和server2的LAN口之间可以互相通信。
Console控制台的运行参考前面的讲解。
Endpoint终端的运行,在server1和server2上双击endpoint.exe即可。
如图:
那么,我们如何确认本机已经成功运行了Endpoint呢?
如果在双击endpoint.exe后弹出如图提示的对话框,即表示已经成功运行了endpoint终端程序,如图:
或者在任务管理器中找到endpoint进程就证明已经运行成功了。
如图:
测试步骤:
进入“IxChariotTest”界面,选择控制区域的“AddPair”,由于测试环境是两台服务器与防火墙直连,所以选择一对一这种模式,如图:
弹出“AddanEndpointPair”对话框,这里我们主要设置如下5个方面:
1.Paircomment:
Pair的名称
2.Endpoint1networkaddress:
终端1的IP地址
3.Endpoint2networkaddress:
终端2的IP地址
4.Networkprotocol:
使用的网络协议
5.SelectScript:
选择测试脚本
这里我们还需要注意一点的就是“Endpoint1toEndpoint2”,已经为我们指定了本次测试是由哪个终端发起,发向哪个终端。
本例中,我们设置Paircomment为test,Endpoint1的地址为1.1.1.2,Endpoint2的地址为2.1.1.2,Networkprotocol为TCP,Script脚本为throughput.scr,如图:
点击OK按钮后,可以看到我们新添加的一条单向测试连接就已经成功了,也就是我们只检测server1到server2的带宽吞吐量。
但吞吐量的测试应该是双向的,所以我们必须再添加一条从server2到server1的测试连接,设置Endpoint1的IP地址为2.1.1.2,Endpoint2的IP地址为1.1.1.2,其余选项不变。
建立一对两条双向的测试连接,这样一组比较符合吞吐量测试的用例就完成了。
如图:
点击“Run”按钮,运行本次测试,得出测试结果,如图:
得出测试结果后,我们可以选择将结果导出为一份报告,可选类型有:
HTML、Text、CSV格式(三种不同格式的报告结果请参见附件),为便于浏览测试结果,我们需要将结果导出为HTML格式文件,如图:
除了对测试结果进行导出操作外,我们还可以将本次测试的全部内容进行保存,可以当作是一个测试用例模板,方便以后操作。
选择文件File菜单下的Save或SaveAs,进行保存,如图:
3、测试脚本分析
通过以上的介绍,我们基本上了解了IxChariot软件的使用方法,接下来,我们对其中两个比较重要的部分进行具体分析,一个是对脚本分析,一个是对结果分析。
编写脚本:
在IxChariot中,为我们内置了很多脚本,这在前面已经介绍过了,其实IxChariot还提供了脚本编写的功能,如果我们对网络协议及脚本编写比较熟悉的话,我们可以选择自己编写合适的脚本进行测试。
点击桌面上的“IxChariotConsole”图标,在IxChariot界面中选择菜单栏里的“Tools”下的“EditScripts”选项,进入脚本编辑界面,如图:
界面中的黑色区域,是命名区域,我们要在这里填写本次编辑的脚本的名称。
界面中的黄色区域,代表我们可以向脚本中插入的内容,比如循环结构、终端发送数据的大小等,全部可以插入的内容都可以从菜单栏的“Insert”下找到,如图:
界面中的红色区域,是整个脚本的代码区域。
“Line”表示代码行数,“Endpoint1”和“Endpoint2”分别表示代码中各终端所包含的内容。
我们可以在任意适当的位置进行插入代码、删除代码、修改代码中的参数等等操作。
界面中的蓝色区域,对应于代码区域中所有带有“()”括号标志的部分,这里所有选项都是我们可以手工更改的,比如:
“initial_delay”休眠时间、“number_of_timing_records”发送的总的记录数等等。
每一列代表的含义如下:
VariableName:
变量名称;
CurrentValue:
当前值;
DefaultValue:
默认值;
Comment:
代表内容。
(注意:
在需要更改这些参数的时候,我们只需要修改“CurrentValue”当前值,而“DefaultValue”默认值不要修改。
)
脚本编写完成后,点击菜单栏“File”下的“Save”或“SaveAs”进行保存即可。
脚本分析:
其实IxChariot内置的脚本已经很丰富并且实用,我们可以直接进行使用,对于不同的测试环境,我们只需要改变其中的一些参数值即可,在本例中我们选择的是用来测试吞吐量的Throughput.scr脚本。
下面我们就具体分析一下Throughput.scr脚本。
首先我们来大致看一下Throughput.scr的内容,如图:
我们可以看到,Throughput.scr脚本里的内容主要就是循环结构,其中带“()”的参数都是我们可以手工修改的。
Throughput.scr脚本中主要包含以下几个参数:
在实际性能测试中,我们可以根据情况对这些参数进行修改。
参数
说明
Initial_delay
Pausebeforethefirsttranscation控制终端的在第一次传输前的休眠时间
Number_of_timing_records
Howmanytimingrecordstogenerate控制测试的总的记录数
Transcations_per_record
Transactionspertimingrecord每一条记录内的发包数
File_size
Howmanybytesinthetransferredfile每一个包中数据的大小
Send_buffer_size
HowmanybytesofdataineachSEND设置发送缓冲区的大小
Receive_buffer_size
HowmanybytesofdataineachRECEIVE设置接收缓冲区的大小
Transcation_delay
Millisecondstopause设置每一条记录之间的时间间隔,单位是微秒
Send_datatype
Whattypeofdatatosend设置发送数据的类型
Send_datarate
Howfasttosenddata设置发送数据的速率
Destination_port
WhatporttouseforEndpoint2设置目的端口
Close_type
Howcollectionareterminated设置连接的终止
Source_port
WhatporttouseforEndpoint1设置源端口
虽然一个Throughput.scr脚本中包含如此多的参数,但具体应用中,主要设置的参数也只有以下几个:
Number_of_timing_records、Transcations_per_record和File_size。
其余选项均可以选择默认即能完成测试任务。
例如:
我们将Number_of_timing_records设置为100(默认值100),也就是说我们这一次的测试记录总计会执行100次,这个数值会反应在“TestSetup”中的“TimingRecordsCompleted”里,如果我们将这个数值更改为200,则“TimingRecordsCompleted”的显示如图:
Transcations_per_record设置为100(默认值1),设置为100的意思也就是说在每一条测试记录(即Number_of_timing_records)中会执行100次传输。
Number_of_timing_records和Transcations_per_record的乘积将会反应在“RawDataTotals”中的“TransactionCount”里。
例如我们将Number_of_timing_records设置为200,Transcations_per_record设置为10,则结果如图:
File_size设置为512(默认值100000),这个数值的大小即决定每次发送的一个数据包所包含的数据的大小,而Number_of_timing_records、Transcations_per_record和File_size这三项的乘积也就是我们在这一次Throughput测试中,我们将总共发送100×100×512bytes的数据。
这个数值将反应在“RawDataTotals”中的“BytesSentbyE1/E2”中,如图:
Transcation_delay设置为100(默认值0)。
这个参数意味着,而每一条记录中间的间隔时间是1秒。
而Number_of_timing_records和Transcations_per_record这两项的乘积再加上Transcation_delay的时间将决定一次测试所需的时间。
如何指定数据帧长?
通过使用Wireshark抓包分析,指定过滤条件为“ip.addreq2.1.1.2andip.addreq1.1.1.2”,显示的抓包结果,数据大小是512bytes,也就是我们设置的File_size大小。
而整个数据帧的大小包括20bytes的tcp包头,20bytes的ip包头,14bytes的数据链路层包头,再加上512bytes的数据,在实际中传输的帧长度是566bytes,源地址是2.1.1.2,目的地址是1.1.1.2,如图:
再随便设定一个数值比如700bytes,其余选项不变,我们再抓包看一下是否生效,如图:
我们可以看到File_size的设置已经生效。
通过这个参数,我们就可以用不同大小的数据进行吞吐量的测试。
但有两点需要我们注意:
一是,当我们设置的File_size的大小超过1460的时候,IxChariot会对数据报进行分片处理,比如我们将数据的大小设置为1600,再通过抓包分析,我们会看到数据已经被分割为两个数据报,一个数据报的数据大小是1460,一个数据报的数据大小是140,如图:
二是,如果我们要按照RFC2544的标准,进行64、128、256、512、1518bytes不同大小的数据帧进行吞吐量测试,我们就需要计算一个数据帧中除去54bytes的包头后数据的大小应设置为多大,也就是File_size的大小。
以64bytes大小的数据帧为例,一个64bytes的数据帧=54bytes(包头)+10bytes(数据),所以我们应该在脚本中将File_size的大小设置为10bytes。
4、测试结果分析
接下来,我们再对测试出来的结果报告进行分析。
对报告的分析,我们可以从“IxChariotTest”界面中的黄色区域,也就是我们刚才提到的用来观察整个测试过程的那一部分来介绍,如图:
图中所示的红色区域中的每一个选项,都与我们导出的报告(格式为HTML、Text)是一样的,所以通过这
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IxChariot 使用方法
文档标签
- 使用方法
- Alcohol120使用方法120使用方法
- VC60使用方法
- IxChariot使用方法
- USBOverNetwork使用方法
- Debug使用方法
- Itables使用方法
- Mci使用方法
- ANSYSBEAM188使用方法
- share使用方法
- emmet使用方法
- WTC使用方法
- PythonIDLE使用方法IDLE使用方法
- STM32USB使用方法
- eviews使用方法
- fortran95使用方法
- AWK使用方法
- JavaDateCalender使用方法
- ArcGIS101使用方法101使用方法
- 使用jquery
- word使用方法
- 使用
- CASTEP使用
- 使用TestDriven
- VC60使用
- wincc使用使用方法
- 退磁使用方法