Avalanche安捷伦培训教材.doc
《Avalanche安捷伦培训教材.doc》由会员分享,可在线阅读,更多相关《Avalanche安捷伦培训教材.doc(33页珍藏版)》请在冰点文库上搜索。
Avalanche培训教材整理
目录
1 Avalanche概述 4
1.1 Avalanche可以做什么?
4
1.2 Avalanche的基本特性 4
1.3 AvalancheSmartbits的基本特性 5
1.4 AvalancheSmartbits支持的协议 5
1.5 AvalancheSmartbits的组成 6
2 安装Avalanche 6
3 Avalanche界面介绍 8
3.1 Avalanche的主界面 8
3.2 测试项目导航栏 8
3.3 测试项目配置栏 9
3.4 菜单栏 11
3.5 工具栏 11
4 连接Avalanche 11
4.1 确定机箱的IP地址 11
4.2 连接到机箱 12
4.3 保留测试卡 13
4.4 配置测试卡 13
4.5 查看机框的信息 14
4.6 应用配置 15
5 使用测试样本 15
5.1 创建测试样本 15
6 Client标签配置 19
6.1 Load配置 19
6.2 Actions配置 21
6.3 Profiles配置 21
6.3.1 UserBehavior配置 21
6.3.2 StreamingProtocol配置 22
6.3.3 BroswerEmulation配置 22
6.3.4 ProtocolLevel配置 23
6.4 Network配置 23
6.4.1 MiscellaneousParameters配置 24
6.4.2 ProxyParameters配置 24
6.4.3 TCPParameters配置 24
6.4.4 IPParameters配置 26
6.5 Subnets配置 26
6.5.1 基本配置 26
6.5.2 StaticRouting配置 26
6.5.3 IPFramentation配置 27
6.6 Ports配置 27
6.6.1 VirtualRouter概述 28
6.7 Associations配置 28
7 Server标签配置 29
7.1 ServerType配置 29
7.1.1 FTP配置 29
7.1.2 Streaming服务器配置 30
7.1.3 MMS服务器 30
7.1.4 Mcast服务器配置 31
7.1.5 ServerTransactions配置 31
7.2 ServerNetworks配置 32
7.3 ServerSubnets配置 32
7.4 ServerPorts配置 32
7.5 ServerAssociations配置 32
8 RunConfigure配置 32
9 开始测试 33
1Avalanche概述
1.1Avalanche可以做什么?
Avalanche是思博伦推出的用于进行4-7层测试的工具,它可以分为AvalancheSmartbits和专用硬件组成的Avalanche和Reflector设备。
它可以用于模拟大型的应用网络环境来对测试设备进行测试。
Avalanche可以用于以下设备的测试:
lSSL加速设备
l代理服务器
l防火墙和入侵检测系统
lweb服务器
Avalanche的基本组成如下图所示:
Internet
MeasureLatency
DoS
处理
图1Avalanche的基本组成
如上图,我们可以看到,Avalanche的基本思想就是使用Smartbits测试卡来模拟客户端和服务器及它们的交互过程,通过产生大量的连接和背景流量来测试被测设备的性能和稳定性。
1.2Avalanche的基本特性
1.Avalanche可以模拟客户端每秒建立成千上万的连接。
2.Reflector可以模拟大量的应用服务器,与Avalanche配合对于DUT进行相应的测试。
3.Avalanche可以模拟一个用户连接所作出的反应,如在HTTP测试中的UserBehavior选项。
4.建立第七层连接的同时,产生二,三层的背景流量,这可用于以下测试:
l对DoS攻击抵抗程度。
lQoS。
l产生高强度的背景流量。
1.3AvalancheSmartbits的基本特性
1.AvalancheSmartBitsCommanderNE是为用户设计的图形用户界面应用程序,包含客户端(Avalanche)和服务器端(Reflector)。
2.Avalanche模拟客户端每秒钟建立数千个用户事务处理。
Reflector模拟数百个应用web服务器。
3.包含AfterBurner特性。
4.使用Avalanche时,可以使用样本测试来熟悉测试过程。
5.综合的图形用户界面(GUI),它可以用来做以下工作:
l进行测试的配置。
l将2-7层测试整合到一个应用程序中。
l查看测试结果。
6.可以模拟DdoS。
7.对于IP报文可以分片和重组。
8.支持VLAN标签。
9.可以模拟多个用户子网。
1.4AvalancheSmartbits支持的协议
Avalanche支持以下协议的测试:
lHTTP1.0/1.1 SecureHTTP(SSL)
lFTP RTP/RTSP
lRealNetworks的RealSystem Apple的QuickTime
lMicrosoftMediaServer(MMS) VoDMulticasting
lPOP3MailProtocol SMTPMailProtocol
lTelnetProtocol DNSProtocol
1.5AvalancheSmartbits的组成
1. 600/6000B/6000C机箱(2.50)结合以下2端口TeraMetrics模块:
2. 可使用的测试卡种类:
lLAN-3301A10/100/1000Base-TEthernet
lLAN-3302A10/100Base-TEthernet
lLAN-3311A1000Base-XEtherne
lLAN-3321A10/100/1000MbpsandGigabitEthernetFiber
lLAN-3321A10/100/1000MbpsandGigabitEthernetFiber
lLAN-3325A10/100/1000MbpsandGigabitEthernetFiber
lLAN-3327A10/100/1000MbpsandGigabitEthernetFiber
lXLW-3721A10GBaseEthernet
以上的所有模块都必须有256MB以上的内存
3. 使用以下的操作系统:
lWindows2000
lWindowsXP-ProfessionalEdition
4. 以下的第三方软件
lMicrosoftExcel(推荐但不是必需的)
lInternetExplorer5.5,ServicePack2
lInternetExplorer6.0,ServicePack1
lNetscape4.79
lAdobeAcrobatReader4.0或更高版本
lJavaVirtualMachine(JVM)1.4.1或更高版本
2安装Avalanche
1.首先安装的时候检测本机上是否安装了JAVA虚拟机,如果没有就安装JAVA虚拟机
图2安装JAVA虚拟机
2.安装的时候,需要输入安装密码:
图3输入安装密码
3.输入使用的许可证
Avalanche使用时,需要输入许可证,可以有两种方法来输入安装许可证:
(1)在Avalanche启动的时候输入:
图4在启动时输入许可证
(2)在Avalanche启动后输入:
图5在启动后输入许可证
3Avalanche界面介绍
3.1Avalanche的主界面
如下图:
图6Avalanche的主界面
在Avalanche的主界面上可以分为以下几个部分:
1.左边的测试项目导航栏
2.右边的测试配置栏
3.最上方的菜单栏
4.工具栏
下面依次介绍以上所列的基本功能:
3.2测试项目导航栏
如下图:
c
图7测试项目导航栏
这个选项是用于进行测试项目的选择和运行的,在这个选项里显示了由Avalanche自动创建的和用户手工创建的全部测试项目。
3.3测试项目配置栏
图8测试项目配置栏
测试项目配置栏的涵义很好理解,就是为了配置测试中使用的Avalanche和Reflector,配置的结果可以保存下来,便于以后使用,配置界面如上图所示,又分为了以下几个选项:
1.Client配置选单,用于配置Client端(Avalanche)的参数:
lLoad:
测试规格/测试类型、负载,等
lActions:
用户行为或URL列表
lProfiles:
用户属性/行为、浏览器类型、协议、密码
lNetwork:
IP、TCP和网络参数
lSubnets:
每个子网的网络真实性设置、IPFragmentation、LinkProperties,以及Routingconfiguration
lPPP:
PPP协议(PointtoPointProtocol)配置
lPPPoE:
PPPoE协议(PointtoPointProtocoloverEthernet)配置
lPorts:
虚拟路由器(VirtualRouter)、免费ARP、激活AfterBurner、DDOS配置
lAssociations:
与先前配置的标签相关联:
Actions、Profiles、Network、Subnet、Ports
2.Server配置选单,用于配置Server端(Reflector)的参数:
lProfiles:
配置server属性
lTransactions:
配置server事务处理(transactions)
lNetwork:
配置网络TCP参数
lSubnets:
配置子网属性
lPorts:
为reflector配置硬件端口
lAssociations:
配置相关的serverIP地址、Profiles、Subnets和Ports
3.ContentFiles配置选单
l添加测试时需要使用的任何种类的文件
l在测试开始前,选中的文件会被上传到SMARTBITS卡上
4.Run配置选单
图9Run配置选单
Run配置选单如上图所示,由两部分组成:
lConfigure:
配置PerformanceMode、SSLAcceleration、SLBBinning、DDOS、Afterburner
lMonitor:
查看测试进程、测试状态、测试时间、事件和错误消息等信息
5.Result配置选单
图10Result配置选单
如上图所示,Result选单显示了先前测试的结果列表。
3.4菜单栏
图11菜单栏
菜单栏的主要作用是可以对于Avalanche的测试卡进行配置,可以添加新的测试项目。
3.5工具栏
图12工具栏
工具栏的主要作用是添加新的测试工程和测试项目并且可以使用工具栏的开始按钮来开始测试。
4连接Avalanche
在开始使用Avalanche前,像所有的Smartbits的软件一样,需要对机箱和测试卡进行配置,然后才可以进行接下来的测试工作,基本步骤如下:
l确定机箱的IP地址
l连接到机箱
l保留用于测试的卡
l配置卡(模块)和端口
4.1确定机箱的IP地址
图13确定机箱IP地址
(1)
图14确定机箱的IP地址
(2)
如上图所示,根据以下的步骤来配置一个要使用的机箱的地址:
l选择“Administration”
l选择“SmartBitsChassis”
l选择“AddChassis”
l输入机箱IP地址
l点击‘OK’
4.2连接到机箱
图15连接到机箱
一旦输入了机箱的IP地址,Commander将开始连接过程,如果先前已经配置了机框的IP地址,从Administration菜单项选择“SmartBitsChassis”时,连接过程将自动开始。
4.3保留测试卡
图16保留测试卡
连接上机箱之后,在“ChassisList”下会显示可用的卡的列表,选择需要配置的卡。
通过选中卡左边的复选框,保留该测试卡。
4.4配置测试卡
对于测试卡的配置可以分为配置测试卡和配置测试用端口两个部分:
1.配置测试卡
图17配置测试卡
如上图所示,配置以下选项:
lIPAddress:
必须是合法的、与机箱和控制PC同在一个子网上唯一的IP地址
lGateway:
必须配置成与机箱和控制PC相同的网关
lSubnetMask:
必须与机框和控制PC的掩码相同
lDNS:
用于IP转发的DNS服务器地址
lSslAccel:
是否存在硬件SSL加速卡
2.配置测试端口
如下图所示:
图18配置测试用端口
lPortConfiguration屏幕用来配置测试中将要使用的端口。
需要配置MACAddress、Speed、Media、Duplex和AutoNegotiation选项
lPortName是只读域,由卡自身提供
4.5查看机框的信息
图19查看机框信息
如上图所示,点击ViewChassisinfo可以查看机框信息,包括如下信息:
lIP
lName
lMACAddress
lSerialNumber
lFirmwareVersion
点击ViewRpmList可以查看目前测试卡上面的RPM文件,上面提到,只有在TeraMetics卡上面才可以使用Avalanche,但是另外的一个限制就是需要将Avalanche相对应的RPM文件上传到测试卡上,至于上传的步骤,大家可以参考如何升级机框的Firmware,将对应的Avalanche的RPM包上传到Avalanche上面就可以了。
如下图,注意其中的avalanchexd-6.22.31487-0这就是Avalanche需要的RPM文件了。
图20查看RPM文件
4.6应用配置
图21应用配置
通过点击Test按钮,来下载配置参数到测试卡上,在SettingUpCardsResults弹出式窗口中显示关于链接和卡配置的状态消息,如果这个过程中的任意一步失败,都会弹出告警窗口。
5使用测试样本
5.1创建测试样本
测试样本是用来验证背靠背连接时使用的预先录制的测试,它可以帮助初次使用Avalanche的用户更快的熟悉Avalanche的功能。
以下步骤提供创建SampleTest的基本概述:
l选择GenerateSampleTest
l选择TestType
l选择想要创建的Tests
l配置Avalanche
l配置Reflector
l编辑必需的测试配置
(1)选择GenerateSampleTest
如下图:
图22选择GenerateSampleTest
如上图所示,在弹出的菜单里面选择在哪个工程里面生成测试样本,这样,当测试样本生成之后,可以进入本工程来查看生成的测试样本。
(2)选择TestType
在这个步骤中,选择测试的种类,这有两种方式,其一是GenericApplication,仅生成Client的配置,第二种是GenericDevice,它生成Client端的配置和Server端的配置,参考下图:
图23选择TestType
(3)选择想要创建的测试
在这个步骤中,列出了测试样本可以创建的测试的类型,选择相应的类型然后进入下一步的设置,如下图:
图24选择想要创建的测试
(4)配置Avalanche
在这个步骤中,界面上会显示所有配置完成的卡,在这里选择作为Avalanche的端口,如下图所示:
图25选择作为Avalanche的端口
(5)配置Reflector
在这个步骤中,界面上会显示所有配置完成的卡,在这里选择作为Reflector的端口,如下图所示:
图26选择作为Reflector的端口
(6)编辑配置
点击Finish就进入了生成脚本的阶段,在生成了测试项目之后,我们可以对生成的测试进行编辑,让它符合我们的要求。
6Client标签配置
Client标签是用于客户端的配置,也是使用这个软件中最为复杂的部分。
6.1Load配置
使用主屏幕的ClientLoad标签,配置TestType和Load的测试规格
1.TestType的配置
可以有两种测试的类型:
SIMPLE和CLASSIC类型
SIMPLE类型:
SIMPLE类型的配置相当的简单,只需要选择最大的会话数量和负载类型就可以了,这表示在指定的负载类型下可以进行的最大的强度的测试,参考下图:
图27SIMPLE类型配置
CLASSIC类型:
CLASSIC类型测试配置较为复杂,在CLASSIC类型的测试中,整个的测试过程被分为了四个阶段:
RampUp,Stepping,Sustained,RampDown
这四个阶段的具体涵义如下:
lPhaseI可以在短时间发送大量的连接,制造大量的数据流量,这是有可能对被测设备造成的压力过大,使之崩溃,所以建议可以先使用较小流量,然后在阶段2逐步增大
lPhaseII是周期性增加流量的过程,在每个ramptime增加height个连接,保持steadytime时间,进行numberofsteps次
lPhaseIII用于流量的保持
lPhaseIV用于流量的撤销
参考下图:
图28CLASSIC测试类型
2.Load的配置
在Load的配置中,比较重要的概念是Connection,Session,Transacion这三种设置的区别,如下:
lConnection:
是指对于每个URL的TCP连接。
lSession:
是指从建立第一个URL列表中的连接开始,到建立最后一个URL列表中的连接为止的所有TCP连接。
lTransaction:
是指在HTTP或HTTPS中的一个操作,比如GET。
Transaction只对HTTP和HTTPS有效,如果使用FTP或者其他种类的server,只能使用Session。
可以参考下图:
图29Session,Connection,Transaction
3.LoadConstraints
l如果已知系统的性能极限,Constraints是有用的
l例如,如果已知设备的能力,但是想确定其速率
这时可以使用LoadConstraints来限制测试中的最高负载,如下图:
图30LoadConstraints配置
6.2Actions配置
在这个步骤中配置URL列表,这些是在测试期间使用的目标URL,对于不同的SERVER,URL也不同,对于一个使用域名来定义的URL来说,一定要在配置测试卡的时候,配置一个有效的能够解析这个域名的DNS服务器。
如下图所示:
图31Actions配置选项
如上图所示,在URL前有一位数字,这个数字表示:
l1:
表示用户点击的一个URL
l2:
表示在LEVEL-1的URL中内嵌的一个对象
需要注意的是:
如果不明确的指出LEVEL-2的对象,Avalanche不会下载LEVEL-1中的对象。
6.3Profiles配置
这个选单用于配置模拟用户浏览Internet站点的行为。
6.3.1UserBehavior配置
这个选项模拟用户如何发送HTTP请求到服务器
lUserThinkTime:
控制在每个URL之间延迟的秒数。
lAbort:
指定abort事件的百分率,即在页面载入过程中,终止页面
如果发生在第1级URL,则所有嵌入的第2级对象都将被中止。
lTimeBeforeAbort:
指定用户在离开此页面之前等待的秒数。
参考下图:
图32UserBehavior配置
6.3.2StreamingProtocol配置
StreamingProtocol定义了实现流媒体设置和数据传输的传输协议。
选择3种协议中的一个:
UDP、TCP或HTTP,这三种选择的解释如下:
lUDP:
控制连接使用TCP,使用UDP上进行数据传输。
lTCP:
控制连接使用TCP,使用TCP上进行数据传输。
lHTTP:
使用HTTP传输控制数据,在HTTP上进行数据传输。
如果选择了HTTP,则要在HTTPPort域中指定端口号,默认值设置是80。
参考下图:
图33StreamingProtocol配置
6.3.3BroswerEmulation配置
BrowserEmulation选项模拟用户如何与目标网络进行通信,这个选项的配置参数如下:
lPreloadValuesFrom选择模拟的浏览器。
lFollowredirects使得Avalanche进行“movedtemporarily”或者“movedpermanently”响应。
lUseCookies激活对Cookies的使用。
lReusePreloadedCookies使得在后续的测试中使用预载cookie。
lCloseConnection导致HTTP协议引擎指示TCP协议栈关闭连接。
如下图:
图34BrowserEmulation选项
6.3.4ProtocolLevel配置
ProtocolLevel参数定义用于测试的HTTP协议的特性:
lMaximumConnectionsPerServer定义稳定状态期间并发连接的总数,最大为100k。
lMaximumConnectionsperSession限制每个会话的连接总数,不管在URL列表中。
有多少个服务器。
lMaximumRequestsperConnection定义稳定状态期间每个连接所尝试的并发请求的总数。
lkeep-alive:
激活KeepAlive特性,在接受了初始的请求后保持TCP连接。
lPersistent:
为了使多个请求使用同一连接,允许使用PersistentConnection。
lHTTP1.0keep-alive,HTTP1.1persistence模式都是模拟一个用户发送多个GET到一台服务器,为了使用同一连接得到多个对象。
l为了使用keep-alive或persistence,必须有多个URL访问同一服务器。
参考下图:
图35ProtocolLevel配置
6.4Network配置
ClientNetwork标签用来配置客户端的网