2007年2月26日星期一

关于网络仿真

网络仿真软件

一、网络仿真技术
网络仿真技术是一种通过建立网络设备和网络链路的统计模型, 并模拟网络流量的传输, 从而获取网络设计或优化所需要的网络性能数据的仿真技术。由于仿真不是基于数学计算, 而是基于统计模型,因此,统计复用的随机性被精确地再现。

二、网络仿真技术具有以下特点:
1、 全新的模拟实验机理使其具有在高度复杂的网络环境下得到高可信度结果的特点;
2、 网络仿真的预测功能是其他任何方法都无法比拟的;
3、使用范围广, 既可以用于现有网络的优化和扩容,也可以用于新网络的设计,而且特别适用于中大型网络的设计和优化;
4、初期应用成本不高, 而且建好的网络模型可以延续使用, 后期投资还会不断下降。

三、OPNET 产品性能简介
http://www.opnet.com
OPNET产品主要面向专业人士,帮助客户进行网络结构、设备和应用的设计、建设、分析和管理。其产品主要针对三类客户,分成四个系列。
1、三类客户:网络服务提供商;网络设备制造商和一般企业。
2、四个系列产品核心:
①.ServiceProviderGuru:面向网络服务提供商的智能化网络管理软件。是OPNET公司的最新产品。
②.OPNET Modeler:为技术人员(工程师)提供一个网络技术和产品开发平台。可以帮助他们设计和分析网络、网络设备和通信协议。
③.ITGuru:帮助网络专业人士预测和分析网络和网络应用的性能,诊断问题,查找影响系统性能的瓶颈,提出并验证解决方案。
④.WDM Guru,用于波分复用光纤网络的分析、评测。

四、OPNET之优劣

(一)、优点:OPNET具有下面的突出特点,使其能够满足大型复杂网络的仿真需要:

1. 提供三层建模机制,最底层为Process模型,以状态机来描述协议;其次为Node模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。三层模型和实际的网络、设备、协议层次完全对应,全面反映了网络的相关特性;

2. 提供了一个比较齐全的的基本模型库,包括:路由器、交换机、服务器、客户机、ATM设备、DSL设备、ISDN设备等等;

3. 采用离散事件驱动的模拟机理(discrete event driven),与时间驱动相比,计算效率得到很大提高。

4. 采用混合建模机制,把基于包的分析方法和基于统计的数学建模方法结合起来,既可得到非常细节的模拟结果,也大大提高了仿真效率。

5. OPNET具有丰富的统计量收集和分析功能。它可以直接收集常用的各个网络层次的性能统计参数,能够方便地编制和输出仿真报告。

6. 提供了和网管系统、流量监测系统的接口,能够方便的利用现有的拓扑和流量数据建立仿真模型,同时还可对仿真结果进行验证。

(二)、缺点:

1. 价钱昂贵.OPNET的单使用者授权费超过2万5千美金. 价格的因素使得盗版猖獗。

2. 学习的进入障碍很高,通过专门培训而达到较为熟练程度至少需一个多月的时间.

3. 仿真网络规模和流量很大时, 仿真的效率会降低。

目前解决方法:

  • 采用分层的建模方法,汇聚网络流量,简化网络模型;
  • 背景流量和前景流量相配合;
  • 流量比例压缩方法;
  • 优化调整仿真参数设计;
  • 路由流量的简化;
  • 结果分析:如何针对不同的统计参数,选择合适的结果收集和处理方法。

来源:(广东省电信科学技术研究院)

4. 软件所提供的模型库是有限的,因此某些特殊网络设备的建模必须依靠节点和过程层次的编程方能实现。

A.网络仿真软件提供的标准的结果参数,往往不能满足实际用户的全部需要,如果用户需要收集网络设备的某些特殊参数时,必须通过过程层次上的编程来收集自己感兴趣的网络参数。

B.一般,厂家提供的网络协议的模型都滞后于标准颁布之日数月甚至一年,如果急需使用厂家模型库中没有提供的新协议、新标准时,就只有通过编程的方法,开发自己的协议模型。

C.对于大型网络的仿真,有时需要根据实际情况,通过编程改变模型的某些特性来提高仿真计算效率。)涉及底层编程的网元建模具有较高的技术难度,因为需要对协议和标准及其实现的细节有深入的了解、并掌握网络仿真软件复杂的建模机理。因此,一般需要经过专门培训的专业技术人员才能完成。编程的难度限制了OPNET的普及与推广。此外,建立在OPNET上的仿真平台当前无法脱离OPNET环境,也是OPNET的一个局限性。

5. OPNET对路由协议的仿真比较适合,但是对链路的仿真好想就只能通过Pipeline stage来做。例如有用户试了把pipeline stage中radio的propagation delay model的传输速度(default值是光速)改为声波在海水中的速度1500m/s,但是仿真出来的propagation delay结果居然没太大的改变。而根据使用经验matlab或者spw就比较合适做链路层的仿真。

0 评论: