2007-09-18
使用工控机和NetIQ Chariot软件测试交换机
【摘要】本文介绍了一种切实可行的以太网交换机测试方法,该方案在硬件成本上比传统的多机测试或专用仪表测试更具优势。
【关键词】工控机、Chariot、测试、交换机
[Abstract]
Industrial Computer,Chariot,test,switch
[Key words]
一、引言
以太网交换机类似传统的桥接器,提供了网络互联功能。交换机能经济地将网络分成小的冲突网域,为每个工作站提供更高的带宽;协议的透明性使得交换机在软件配置简单的情况下直接安装在多协议网络中;拥有管理开销低廉,可根据需要方便改变网络节点的优势,在小区、楼宇、校园接入等都有广泛的应用。我公司作为以太网交换机的生产厂家,为保证产品的质量,使资源配置合理运用,现通过模拟交换机的实际应用环境,提出一种较为合理的测试方法。此测试方法比起专业的仪表测试,拥有更加低廉的硬件成本,且可以根据终端用户实际情况选择合适的网络接口进行环境模拟测试等优势。
二、测试系统软、硬件简要说明
此测试主要使用Chariot软件和安装有多网卡的工控机:
Chariot是一个独特的测试工具,能够评估网络应用的性能和容量,对网络和设备进行压力测试,根据设备及网络在不同应用、不同参数下的吞吐量、时延、反应时间等性能参数,得到定量的数据,提供相应详尽的测试报告。
该软件由两部分组成:控制端Console和远端Endpoint,两者完全分开,允许控制台同时操作多远端,各远端可使用不同网段的ip地址。控制台和远端都可安装在普通PC或者服务器上,但控制端目前仅支持Windows操作系统,远端支持各种主流的操作系统。Chariot软件现在最多可支持10000个远端的协同测试。
主要硬件部分选用支持超线程CPU的工控机与多个10/100Mbps网卡构成,现测试用机使用主频3.0G支持超线程技术的奔腾4中央处理器,512M DDR内存;工作平台选用RedHat Linux 9.0,并安装chariot的Endpoint端,作为比较,选用多台不同配置的兼容机作为其余Endpoint端。
三、测试系统环境的搭建与软件选择使用
按照系统设计构想,在同一CPU内,有多个Endpoint的进程“同时”进行,如果系统的时间约束条件得不到满足,测试结果可能出现较大的偏差。这就要求整个软件工作在一个实时的操作系统平台(RTOS)上,同时还要兼顾考虑系统的稳定性、安全性、可靠性等实际使用因素。
常见的实时操作系统有: LynxOS、QNX、Unix、VxWorks、eCos、μC/OS-II等。出于成本考虑,并没有对系统设计专用的硬件,而使用常用x86架构下的工控机和普通以太网卡,因此选用了RedHat Linux。
在实时Linux系统中,采用的是多级反馈轮转调度法,即系统为进程分配一个时间片,当时间片结束时,重新动态计算该进程的优先级,如果有优先级高于当前进程的“内存就绪态进程”时,调度优先级高的进程执行,并把被报先的进程反馈到相应的优先级队列中。
Linux作为一个开放的系统,以往已在各领域得到了许多应用,如家庭娱乐、文字处理、远程通讯等,“Linux操作系统前景是被看好的,……,注定要进入工业领域,在这一领域与微软的操作系统和其他拥有自主版权的操作系统进行竞争。” [1] 而且目前已在工业数据监控、视频采集等实际应用中占有一席之地。
Console为该产品的核心部分,图形化控制界面(也可采用命令行方式)、测试设计界面、脚本选择及编制、结果显示、报告生成以及API接口等都由Console提供。Endpoint可根据实际测试的需要安装在单个或者多个终端处,负责从Console接收指令、完成测试并将测试数据上报到Console,在Console上能够使用不同脚本可获取不同性质相关报表。
该系统可同时测试吞吐量、带宽分配、时延等,测试结果以图形化表示(曲线、饼图等),以下组图为使用控制台作为其中一个Endpoint(其ip为10.18.123.123)与工控机的以太网接口(10个Endpoint,ip为10.18.123.1~10.18.123.10)连接时,按照某自行编写脚本的测试结果,图1~图3分别为吞吐量、带宽比、时延(抖动)。
图1 吞吐量
图2 速率饼图
图3 响应时间
在实际测试中发现,受计算机网卡硬件限制,以太网接口无法以线速发送数据;据上例,若带宽不受限制,10块网卡同时工作,工控机上CPU利用率100%(2.4G的奔4处理器 ,400MHz总线,未使用超线程功能),物理内存使用约360M(总512M)。实践证明,该测试方案基本可行,系统功能上基本可满足测试需求,但在硬件上略有欠缺。
另外,在使用该系统测试时注意到,若仅使用一台工控机的网卡作为Endpoint,测试结果可能会出现较大偏差(怀疑数据通过工控机内部总线传递),使用多台计算机(或计算机与工控机的多块网卡分别作为Endpoint时),测试结果基本与实际情况相符合。建议在实际应用中,可使用两台工控机互相作为Endpoint或使用一台计算机作为Endpoint与工控机各网卡分别连接使用。
建议在使用该系统时,工控机的硬件选择应从实际需求出发,综合功能、服务、价格等多方面考虑。
[1] 《Linux正在敲打工业控制的大门》(Control Engineering,Frank.J.Bartos)
作者简介:-------------------------------------------------。
评论2
楼主 2007/9/17 17:14:37
楼主 2007/9/18 15:27:42