细看网络仿真工具
作者:
细看网络仿真工具
简单的问题不一定有简单的答案。比如一个企业网络主管会面对这样的问题:我们能够增加到分支机构的带宽吗?能够增加重要链路的冗余性,并同时减少网络投资吗?这样的问题将是难以回答的,在网络发生变化的情况下,仍能使网络的各个部分高效地运转并保持最小的投资不是一件易事。
幸运的是,网络仿真工具的出现使得人们可以在实际部署之前测试网络拓扑变化所带来的影响。最近,美国《Network World》测试了三款这样的产品:Opnet的IT Guru 10.5, Analytical Engines的NetRule 6.0以及 Shunra 的Shunra/ Storm 3.1。通过它们来预知拓扑变化对加州大学旧金山分校校园网的影响。
经测试发现,IT Guru是参测产品中最多才多艺的,它具有良好的可扩展性,可以容易地适应全部生产网络,并且拥有强大的工具用来分析网络问题。NetRule很容易进行配置和学习,它提供很好的仿真工具,特别是在局域网环境中。而Shunra/ Storm在针对广域网的仿真中表现相当优异。尽管这几款产品各有所长,它们在通用分析工具和能力上还是有很多共性。
如何测试
仿真加州大学旧金山分校(UCSF)校园网不是个小任务,UCSF有一个包含30000个主机的城域网,超过1000个交换机和100个路由器。通过专线接入到骨干网与遍布在加州的194个远程站点相连。
测试者将IT Guru和NetRule安装在一台运行Windows 2000 Pro的Dell 2.0GHz至强服务器上。Shunra/ Storm与四台用于产生流量的Dell笔记本电脑相连。另外,根据需要在第五台Dell笔记本上运行了Visio并通过控制台端口与Shunra/ Storm相连。
测试者使用了两个独立的网络仿真。一个是从生产网中的CiscoWorks导入的实际网络配置,这包括由70台路由器和50台交换机所组成的生产网核心。另一个是在生产网的基础上手工创建的由12个路由器组成的全网状拓扑。
仿真的准确性
仿真的关键是生成的网络仿真要接近实际网络的情况,测试者对参测产品是否能对以下事件进行准确的仿真进行了考察,如:链路失败及调整、设备故障、负载变化、路由改变和链路过载。
IT Guru可以泰然地处理这些问题。使用它可以轻松地对网络变化进行仿真。可以改变诸如OSPF链路耗费、OSPF或HSRP定时器等要素,并且能够立即看到这些变化带给网络的影响。IT Guru能够响应测试者的每个要求,并能够准确预知路由协议和拓扑发生改变时的行为。
准确的仿真也需要测试人员操作正确。比如,测试者打算仿真两台HSRP路由器,他们在两台路由器中输入了所有HSRP属性,但是仿真器就是不工作,经检查,测试者发现自己忘了给路由器设置缺省网关,没有这项参数,IT Guru拒绝建立HSRP会话,这与真实网络中的情况是完全吻合的。仿真器这种特性令人“感动”。
NetRule可以准确预知多种网络拓扑变化带来的影响,但它也表现出一些局限性。比如在使用OSPF进行负载均衡测试中,高带宽低耗费的链路却没能成为流量传输的首选。
在NetRule的库中,有适量的厂商和产品可以选择,它允许针对任何仿真的仿真,但它却对配置或设备错误不予检查,不检查IP地址冲突或协议错误,它假设用户不会错误配置,而这是一个不切实际的假设。
Shunra/ Storm有一个非常好的特性,它可以记录网络条件并回放,它使真实的应用运行在网络仿真上。比如,我们可以在连接了Shunra/ Storm工具的设备间传送语音数据或视频流。当在仿真里加入延迟、丢包和抖动,或是减少了网络带宽,我们可以看到语音或视频通信质量的下降。这个特性可以帮助人们极其容易地确定某个应用在不同链路上运行所能接受的最低条件。IT Guru 和NetRule也支持类似的功能,但都只是用数字来表示这些内容。
配置和性能
使用可选的MVI(Multi-Vendor Import)模块,IT Guru可以从Cisco和Juniper的设备中直接导入配置。对于其他厂商的设备,就需要可选的VNE(Virtual Network Environment)服务器的支持,这无疑增加了投入,最好能从所有的设备中直接导入配置。除了导入配置的方法外,还可以手工创建网络对象。IT Guru用了不到3分钟就从CiscoWorks中导入了骨干网中120台Cisco设备的配置。由于IT Guru对语法错误非常敏感,当对Foundry设备进行手工配置时就耗费了很长时间,糟糕的是,IT Guru不会针对语法错误发出告警,仿真器只是简单地拒绝正常工作。IT Guru非常灵活并可扩展,它提供了许多可定制的特性,允许用户对多种网络拓扑进行拖拽操作。
NetRule可以快速简便地构造一个网络仿真,在它的“调色板”里有包括Cisco产品在内的常见网络设备。仿真的生成非常直接,从库里取出并拖拽相应设备,再加入适当的链路和路由信息,接着定义IP地址以及优先级、包长、延迟和流量类型等要素就可以了。不幸的是,NetRule不能和管理软件如OpenView和CiscoWorks接口,尽管它可以读CiscoWorks的文本文件,但还是不如IT Guru直接。这个文本文件必须符合NetRule所预定的格式,这使得复制一个大型网络的配置信息变成了一次体力劳动。结果是,测试者没能简单地将这个具有120个网络设备的拓扑导入到NetRule中,而是手工创建了一个具有12个路由器的生产网的仿真,共花费了30分钟。不过,NetRule的报告机制非常好,它可以以图形方式显示网络利用率、延迟和数据流等信息。它的性能还可以接受,应用程序启动较慢,一旦运转起来,NetRule不管测试者是否进行了改动都能比较快地显示结果。
Shunra/ Storm也不能从网管中直接导入网络配置。对配置的改动通过在某个链路或设备上点击右键并选择下拉菜单实现,它还具备一个内置的类似Sniffer的协议分析仪。它的报告功能可以生成实时图表来显示吞吐量、排队和延迟数据。Shunra/ Storm是一个基于硬件的网络仿真产品。在多数场合,它的性能等同于或高于其他产品的表现。但它有一个非常讨厌的问题,即每次改变仿真的参数,它都要重新启动。
除了上述两方面内容,测试者还对这类产品的安装和文档,从易用性角度对产品进行了评估。
文章录入:csh 责任编辑:csh