本站分享:AI、大数据、数据分析师培训认证考试,包括:Python培训Excel培训Matlab培训SPSS培训SAS培训R语言培训Hadoop培训Amos培训Stata培训Eviews培训

NS2和OPNET的讨论_MATLAB软件

matlab培训 cdadata 3231℃

NS2和OPNET的讨论

关键词:opnet和ns2,opnet ns2,基于opnet的毕业设计

OPNET

产品性能简介:OPNET产品主要面向专业人士,帮助客户进行网络结构、设备和应用的设计、建设、分析和管理。OPNET的产品主要针对三类客户,分成四个系列。三类客户是指:网络服务提供商;网络设备制造商和一般企业。

四个系列产品核心包括:1.ServiceProviderGuru:面向网络服务提供商的智能化网络管理软件。是OPNET公司的最新产品。2.OPNET Modeler:为技术人员(工程师)提供一个网络技术和产品开发平台。可以帮助他们设计和分析网络、网络设备和通信协议。3.ITGuru:帮助网络专业人士预测和分析网络和网络应用的性能,诊断问题,查找影响系统性能的瓶颈,提出并验证解决方案。 4.WDM Guru,用于波分复用光纤网络的分析、评测。

我使用的是OPNET Modeler8.1,所以就它和其他的网络仿真软件进行比较。OPNET Technology公司的仿真软件OPNET具有下面的突出特点,使其能够满足大型复杂网络的仿真需要:

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

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

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

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

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

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

OPNET的缺点:

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就比较合适做链路层的仿真。

NS (NETWORK SIMULATOR)简介

NS是一个由UC Berkeley开发的用于仿真各种IP网络的为主的优秀的仿真软件。该软件的开发最初是针对基于UNIX系统下的网络设计和仿真而进行的。

Tcl(Tool Command Language)与Tk是安装在UNIX/Linux环境下的两个包,他们一起构成了一套开发系统应用程序和图形用户界面接口(GUI)应用程序的环境。Tk是Tcl在X Window环境下的扩展,它包含了Tcl的全部c库函数,以及支持X Window的窗口,控件等c库函数,为用户开发图形用户界面提供了方便。

NS的设计实现了使用两种程序设计语言,C++和Otcl。这两种程序设计语言都是面向对象的。C++程序模块的运行速度非常快,是强制类型的程序设计语言,容易实现精确的,复杂的算法,但是修改和发现,修正bug所花费的时间较长,因为它比较复杂。Otcl是脚本程序编写语言,是无强制类型的,比较简单,容易实现和修改,容易发现的修正bug,虽然它的运行速度和C++的模块相比要慢很多。

NS的仿真原理-网络组件。NSobject是所有基本网络组件的父类它本身的父类是TclObject类。这个类的对象有一个基本功能,就是处理数据包(PACKET)。所有的基本网络组件可以划分为两类,分类器(Classifier)和连接器(Connector)。它们都是NSobject、的直接子类,也是所有基本网络组件的父类。分类器的派生类组件对象包括地址分类器和多播分类器等。连接器的派生类组件对象包括队列,延迟,各种代理,和追踪对象类。应用程序是建立在传输代理上的应用程序的模拟。NS2中有两种类型的“应用程序”,数据源发生器和模拟的应用程序。NS是离散事件驱动的网络仿真器。它使用Event Scheduler对所有组件希望完成的工作和计划该工作发生的时间进行列表和维护。

NS的工作平台可以是Windows,Linux,Uinx,machitosh,还要求系统装有C++编译器。NS的工作流程:NS代码使用OTCL语言编写,通过OTCL语言解释器解释,使用NS仿真库进行编译和仿真,输出仿真结果,根据仿真结果记录,可进一步进行相关内容分析,生成网络拓补图或者得到数据的可视化的图表。使用辅助的NAM工具,在NS中可以清晰显示网络拓补图,使用X Graph工具,可以将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版在继承和发展其原有的数值计算和图形可视能力的同时,出现了以下几个重要变化:(1)推出了SIMULINK。这是一个交互式操作的动态系统建模、仿真、分析集成环境。它的出现使人们有可能考虑许多以前不得不做简化假设的非线性因素、随机因素,从而大大提高了人们对非线性、随机动态系统的认知能力。(2)开发了与外部进行直接数据交换的组件,打通了MATLAB进行实时数据分析、处理和硬件开发的道路。(3)推出了符号计算工具包。1993年MathWorks公司从加拿大滑铁卢大学购得Maple的使用权,以Maple为“引擎”开发了Symbolic Math Toolbox 1.0。MathWorks公司此举加快结束了国际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算的互补发展新时代。(4)构作了Notebook 。MathWorks公司瞄准应用范围最广的Word ,运用DDE和OLE,实现了MATLAB与Word的无缝连接,从而为专业科技工作者创造了融科学计算、图形可视、文字处理于一体的高水准环境。

MTALAB系统由五个主要部分组成,下面分别加以介绍。 (1)MATALB语言体系MATLAB是高层次的矩阵/数组语言.具有条件控制、函数调用、数据结构、输入输出、面向对象等程序语言特性。利用它既可以进行小规模端程,完成算法设计和算法实验的基本任务,也可以进行大规模编程,开发复杂的应用程序。 (2)MATLAB工作环境 这是对MA丁LAB提供给用户使用的管理功能的总称.包括管理工作空间中的变量据输入输出的方式和方法,以及开发、调试、管理M文件的各种工具。 (3)图形句相系统 这是MATLAB图形系统的基础,包括完成2D和3D数据图示、图像处理、动画生成、图形显示等功能的高层MATLAB命令,也包括用户对图形图像等对象进行特性控制的低层MATLAB命令,以及开发GUI应用程序的各种工具。 (4)MATLAB数学函数库这是对MATLAB使用的各种数学算法的总称.包括各种初等函数的算法,也包括矩阵运算、矩阵分析等高层次数学算法。 (5)MATLAB应用程序接口(API) 这是MATLAB为用户提供的一个函数库,使得用户能够在MATLAB环境中使用c程序或FORTRAN程序,包括从MATLAB中调用于程序(动态链接),读写MAT文件的功能。 可以看出MATLAB是一个功能十分强大的系统,是集数值计算、图形管理、程序开发为一体的环境。除此之外,MA丁LAB还具有根强的功能扩展能力,与它的主系统一起,可以配备各种各样的工具箱,以完成一些特定的任务。

在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。 在设计研究单位和工业部门,MATLAB被认作进行高效研究、开发的首选软件工具。如美国National Instruments公司信号测量、分析软件LabVIEW,Cadence公司信号和通信分析设计软件SPW等,或者直接建筑在MATLAB之上,或者以MATLAB为主要支撑。又如HP公司的VXI硬件,TM公司的DSP,Gage公司的各种硬卡、仪器等都接受MATLAB的支持。

MATLAB的缺点:

1.      MATLAB的缺点是它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。

2.      MATLAB另一个缺点是不能实现端口操作和实时控制,但结合C++Builder运用,实现优势互补就可以克服这一缺点。

3.      MATLAB还有一个缺点就是这个软件太大,按现在流行的版本5.2,自身有400多兆,占硬盘空间近1个G,一般稍早些的计算机都安装不下。

转载请注明:数据分析 » NS2和OPNET的讨论_MATLAB软件

喜欢 (1)or分享 (0)