网络仿真技术是一种通过建立网络设备和网络链路的统计模型,并模拟网络流量的传输,从而猎取网络设计或优化所需要的网络性能数据的仿真技术由于仿真不是基于数学计算,而是基于统计模型,因此,统计复用的随机性被精确地再现网络仿真技术具有以下特点:一,全新的模拟试验机理使其具有在高度简单的网络环境下得到高可信度结果的特点二,网络仿真的猜测功能是其他任何方法都无法比拟的;三,使用范围广,既可以用于现有网络的优化和扩容,也可以用于新网络的设计,而且特殊适用于中大型网络的设计和优化;四,初期应用成本不高,而且建好的网络模型可以连续使用,后期投资还会不断下降OPNET产品性能简介:OPNET产品主要面对专业人士,挂念客户进行网络结构、设备和应用的设计、建设、分析和管理OPNET的产品主要针对三类客户,分成四个系列三类客户是指:网络服务供应商;网络设备制造商和一般企业四个系列产品核心包括:I.ServiceProviderGuru:面对网络服务供应商的智能化网络管理软件是OPNET公司的最新产品2.OPNET Modeler:为技术人员(工程师)供应一个网络技术和产品开发平台可以挂念他们设计和分析网络、网络设备和通信协议。
3.ITGuru:挂念网络专业人士猜测和分析网络和网络应用的性能,诊断问题,查找影响系统性能的瓶颈,提出并验证解决方案4.WDM Guru,用于波分复用光纤网络的分析、评测我使用的是PNET Modeled. 1,所以就它和其他的网络仿真软件进行比较OPNETTechnology公司的仿真软件OPNET具有下面的突出特点,使其能够满足大型简单网络的仿真需要:1. 供应三层建模机制,最底层为Process模型,以状态机来描述协议;其次为Node模型,由相应的协议模型构成,反映设备特性;最上层为网络模型三层模型和实际的网络、设备、协议层次完全对应,全面反映了网络的相关特性;2. 供应了一个比较齐全的的基本模型库,包括:路由器、交换机、服务器、客户机、ATM设备、DSL设备、ISDN设备等等;3. 接受离散大事驱动的模拟机理(discrete event driven),与时间驱动相比,计算效率得到很大提高4. 接受混合建模机制,把基于包的分析方法和基于统计的数学建模方法结合起来,既可得到格外细节的模拟结果,也大大提高了仿真效率5. OPNET具有丰富的统计量收集和分析功能它可以直接收集常用的各个网络层次的性能统计参数,能够便利地编制和输出仿真报告。
6. 供应了和网管系统、流量监测系统的接口,能够便利的利用现有的拓扑和流量数据建立仿真模型,同时还可对仿真结果进行验证OPNET的缺点:1. 价钱昂贵.OPNET的单使用者授权费超过2万5千美金.价格的因素使得盗版猖獗NS2 (NETWORK SIMULATOR), NS2是一个由UC Berkeley开发的用于仿真各种IP网络的为主的优秀的仿真软件该软件的开发最初是针对基于UNIX系统下的网络设计和仿真而进行的 NS2的设计实现了使用两种程序设计语言,C++和Otcl这两种程序设计语言都是面向对象的C++程序模块的运行速度非常快,是强制类型的程序设计语言,容易实现精确的,复杂的算法,但是修改和发现,修正bug所花费的时间较长,因为它比较殳杂Otcl是脚木程序编写语言,是无强制类型的,比较筒单,容易实现和修改,容易发现的修正bug,虽然它的运行速度和C++的模块相比要慢很多NS2-NS2设计的出发点是基于网络仿真,它集成了多种网络协议,业务类型,路由排队管理机制,路由算法此外,NS还集成了组播业务和应用于局域网仿其有关的部分、MAC层协议其仿真主要针对路由层,传输层,数据链路层展开,因此NS可以进行对固定,无线,卫星以及混合等多种网络的仿真。
NS的特点是源代码公开;可扩展性强;速度和效率优势明显NS与OPNET比较・OPNET与NS的关系有点象windows和linux的关系而它们也分别是在这两个环境下(OPNET在win, NS在linux)安装使用最匹配OPNET是商业软件,所以界面非常好功能上很强大,界面错落有致,统一严格操作也很方便,对节点的修改主要就是对其属性的修改是优点也是其缺点,如果你需要特殊的节点或很适合自己的节点就不如NS方便同时,由于是商业软件所以版木推出不如NS快NS是自由软件,免费,这是与OPNET相比最大的优势,因此它的普及度较高,是OPNET强有力的竞争对手NS界面不如OPNET,虽然功能也很强大,但不容易上手2. 学习的进入障碍很高,通过特地培训而达到较为娴熟程度至少需一个多月的时间.3. 仿真网络规模和流量很大时,仿真的效率会降低目前解决方法:接受分层的建模方法,汇聚网络流量,简化网络模型;背景流量和前景流量相协作;流量比例压缩方法;优化调整仿真参数设计;路由流量的简化;结果分析;如何针对不同的统计参数,选择合适的结果收集和处理方法来源:(广东省电信科学技术争辩院)4. 软件所供应的模型库是有限的,因此某些特殊网络设备的建模必需依靠节点和过程层次的编程方能实现。
A.网络仿真软件供应的标准的结果参数,往往不能满足实际用户的全部需要,假如用户需要收集网络设备的某些特殊参数时,必需通过过程层次上的编程来收集自己感爱好的网络参数B.一般,厂家供应的网络协议的模型都滞后于标准颁布之日数月甚至一年,假如急需使用厂家模型库中没有供应的新协议、新标准时,就只有通过编程的方法,开发自己的协议模型C.对于大型网络的仿真,有时需要依据实际状况,通过编程转变模型的某些特性来提高仿真计算效率涉及底层编程的网元建模具有较高的技术难度,由于需要对协议和标准及其实现的细节有深化的了解、并把握网络仿真软件简单的建模机理因此,一般需要经过特地培训的专业技术人员才能完成编程的难度限制了 OPNET的普及与推广此外,建立在OPNET上的仿真平台当前无法脱离OPNET环境,也是OPNET的一个局限性5. OPNET对路由协议的仿真比较适合,但是对链路的仿真好想就只能通过Pipelinestage 来做例如有用户试了把 pipeline stage 中 radio 的 propagation delay model 的传输速度(default值是光速)改为声波在海水中的速度1500m/s,但是仿真出来的propagationdelay结果竟然没太大的转变。
而依据使用阅历matlab或者spw就比较合适做链路层的仿真NS (NETWORK SIMULATOR)简介NS是一个由UC Berkeley开发的用于仿真各种IP网络的为主的优秀的仿真软件该软件的开发最初是针对基于UNIX系统下的网络设计和仿真而进行的Tel (Tool Command Language)与Tk是安装在UNIX/Linux环境下的两个包,他们一起构成了一套开发系统应用程序和图形用户界面接口(GUI)应用程序的环境Tk是Tel在XWindow环境下的扩展,它包含了 Tel的全部c库函数,以及支持X Window的窗口,控件等c库函数,为用户开发图形用户界面供应了便利NS的设计实现了使用两种程序设计语言,C++和OtcL这两种程序设计语言都是面对对象的C++程序模块的运行速度格外快,是强制类型的程序设计语言,简洁实现精确的,简单的算法,但是修改和发觉,修正bug所花费的时间较长,由于它比较简单Otcl是脚本程序编写语言,是无强制类型的,比较简洁,简洁实现和修改,简洁发觉的修正bug,虽然它的运行速度和C++的模块相比要慢很多NS的仿真原理■网络组件NSobject是全部基本网络组件的父类它本身的父类是TclObject类。
这个类的对象有一个基本功能,就是处理数据包(PACKET) o全部的基本网络组件可以划分为两类,分类器(Classifier)和连接器(Connector)它们都是NSobject、的直接子类,也是全部基本网络组件的父类分类器的派生类组件对象包括地址分类器和多播分类器等连接器的派生类组件对象包括队列,延迟,各种代理,和追踪对象类应用程序是建立在传输代理上的应用程序的模拟NS2中有两种类型的“应用程序”,数据源发生器和模拟的应用程序NS是离散大事驱动的网络仿真器它使用Event Scheduler对全部组件期望完成的工作和方案该工作发生的时间进行列表和维护NS的工作平台可以是Windows,Linux,Uinx,machitosh,还要求系统装有C++编译器NS的工作流程:NS代码使用OTCL语言编写,通过OTCL语言解释器解释,使用NS仿真库进行编译和仿真,输出仿真结果,依据仿真结果记录,可进一步进行相关内容分析,生成网络拓补图或者得到数据的可视化的图表使用帮助的NAMX具,在NS+可以清楚显示网络拓补图,使用X Graph I具,可以将NS的仿真结果用图表形式表示,NS设计的动身点是基于网络仿真,它集成了多种网络协议,业务类型,路由排队管理机制,路由算法。
此外,NS还集成了组播业务和应用于局域网仿真有关的部分、MAC层协议其仿真主要针对路由层,传输层,数据链路层开放,因此NS可以进行对固定,无线,卫星以及混合等多种网络的仿真但它最适用于TCP层以上的模拟NS的特点是源代码公开;可扩展性强;速度和效率优势明显NS与OPNET优缺点比较:1. OPNET与NS2的关系有点象windows和linux的关系而它们也分别是在这两个环境下(OPNET在win, NS2在linux)安装使用最匹配2. OPNET是商业软件,所以界面格外好功能上很强大,界面错落有致,统一严格操作也很便利,对节点的修改主要就是对其属性的修改是优点也是其缺点,假如你需要特殊的节点或很适合自己的节点就不如NS2便利同时,由于是商业软件所以版本推出不如NS2 快3. NS2是自由软件,免费,这是与OPNET相比最大的优势,因此它的普及度较高,是OPNET强有力的竞争对手4. NS2界面不如OPNET,虽然功能也很强大,但有很多零散的东西,刚学的时候很麻烦,不简洁上手操作上比较便利,但由于不是同一公司开发的,所以格式上不是很统一,说明手册的条理也不是很好没有现成的节点什么的你可以自己用C++编,可以依据自己的意图来构造你想要的节点。
MATLAB软件MATLAB软件是由美国Mathworks公司推出的用于数值计算和图形处理的科学计算系统环境MATLAB是英文MATrix LABoratory(短阵试验室)的缩写在MATLAB环境下,用户可以集成地进行程序设计、数值计算、图形绘制、输入输出、文件管理等各项操作MATLAB供应了一个人机交互的数学系统环境,该系统的基本数据结构是矩阵,在生成矩陈对象时,不要求作明确的维数说明与利用C语言或Fortran语言作数值计算的程序设计相比,利用MATLAB可以节省大量的编程时间MATLAB的良好的开放性和运行的牢靠性使原先把握领域里的封闭式软件包(如英国的UMIST,瑞典的LUND和SIMNON,德国的KEDDC)纷纷淘汰,而改以MATLAB为平台加以重建MathWorks公司于2001年推出MATLAB6.0版本,6.x版在继承和进展其原有的数值计算和图形可视力量的同时,消。