网络仿真软件的分析探讨

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网络仿真软件的分析探讨
范红艳,周彩根,樊昀
北京邮电大学计算机科学与技术学院,北京 (100876)
E-mail:fanicy@
摘要:网络仿真是进行网络研究的重要方法,随着网络的发展,目前有多种网络仿真软件,不同的仿真软件适用于网络不同方面的研究,本文主要介绍了OPNET和NS2两种目前比较流行的仿真软件的特点及主要技术,然后针对一个实例比较了两种仿真软件的仿真效果。

关键词:网络仿真,仿真软件,OPNET,NS2
中图分类号:TP 391.09
1.引言
随着网络的快速发展,对于网络性能和新技术的研究也越来越重要,但是如果在现实网络中进行性能研究和新技术的设计开发,是不太现实的。

因此,网络仿真软件的出现大大提高了网络研究的效率,也减少了网络新技术开发的费用。

网络仿真是一种利用数学建模和统计分析的方法来模拟网络行为,从而获取特定的网络特性参数的技术。

网络仿真软件通过在计算机上建立一个虚拟的网络平台,来实现真实网络环境的模拟。

网络技术开发人员在这个平台上不仅可以对网络通信,网络设备,协议以及网络应用进行研究设计,还可以对网络的性能进行分析和评估。

本文接下来主要阐述了两种仿真软件的特点及主要技术,最后针对一个实例对两种仿真软件的仿真效果进行了比较。

2.网络仿真软件
2.1 OPNET介绍
OPNET是一种优秀的网络仿真和建模的工具,支持面向对象的建模方式,并提供图形化的编辑界面,更便于用户使用。

它强大的功能和全面性几乎可以模拟任何网络设备、支持各种网络技术,除了能够模拟固定通信模型外,OPNET的无线建模器还可用于建立分组无线网和卫星通信网的模型。

同时,OPNET在新网络的设计以及对现有网络的分析方面都有卓越表现。

它为通信协议和路由算法的研究提供与真实网络相同的环境。

此外,功能完善的结果分析器为网络性能的分析提供了有效又直观的工具。

OPNET的 Modeler是专门用于可视化原型设计的软件,它的使用既方便了网络模型的建立,又减少了编程的工作量。

Modeler 中提供多种编辑器帮助用户完成网络建模和仿真运行,产品核心包括[1]:
1) Service Provider Guru,面向网络服务提供商的智能化网络管理软件,是OPNET公司的最新产品。

2) OPNET Modeler,为技术人员提供一个网络技术和产品开发平台。

可以帮助设计和分析网络、网络设备和通信协议。

3) IT Guru,帮助网络专业人士预测和分析网络和网络应用的性能,诊断问题,查找影响系统性能的瓶颈,提出并验证解决方案。

4) WDM Guru,用于波分复用光纤网络的分析、评测。

OPNET的Modeler是专门用于可视化原型设计的软件,它的使用既方便了网络模型的建立,又减少了编程的工作量。

Modeler中提供多种编辑器帮助用户完成网络建模和仿真运
行,包括:
网络编辑器( Network Editor )。

网络编辑器用于编辑网络的拓扑结构,它具有图形化的编辑界面,并且提供由各种通信实体组成的模型库,如hub、路由器等。

用户可以通过简单的拖放操作在网络编辑器的工作区中快速、方便的配置起自己的网络拓扑,也可以对网络中各种设备的属性进行设置。

用户还可以建立新的模型或在已有模型的基础上进行修改。

OPNET引入了子网的概念,这里的子网被视为一个独立的对象,子网内节点的数目和子网中的设备可由用户自行设定。

同时,OPNET还支持子网的无限嵌套。

节点编辑器( Node Editor )。

节点编辑器用于定义网络中节点的结构和描述节点中(软件或硬件)模块间的数据流。

节点编辑器描述了协议的层次结构,并通过描述功能模块之间的数据流来实现一个网络器件或系统的体系结构。

进程编辑器( Process Editor )。

进程编辑器定义了节点内功能模块中各事件之间的控制流,使用符合工业标准的状态图描述功能模块内的状态和状态间的控制流。

进程模型在进程编辑器中用Proto—C语言描述,Proto—C语言是OPNET为协议和算法的开发而设计的,它基于状态转换图( STD)的组合,是一个类似于内核程序( Kernel Procedures ) 的高级命令库,同时具有c/c+ + 程序语言的基本功能。

另外,OPNET自带400多个内核程序( Kernel Procedure ) 方便协议和算法开发与实现。

包格式编辑器( Packet Format Editor )。

包格式编辑器用于创建用户定义的各种类型的包。

探针编辑器( Probe Editor )。

探针编辑器可以收集内置的统计数据,也可以根据用户的要求收集数据,还可以将统计数据以动画的形式表现出来。

另外,OPNET还提供了交互式的运行调试工具、功能强大的结果分析器和能够实时观察。

模型动态行为的动态观察器。

用户可以在运行前设定运行中使用的参数,并且能随时中断运行。

结果分析器用图形的方式显示仿真软件过程中得到的统计数据,还能将多次仿真的结果进行比较,为用户的决策提供有力的依据。

2.2 NS2介绍
NS2[2](Network Simulation, Version 2)是面向对象的、开源的离散事件模拟器。

其本身有一个虚拟时钟,所有的仿真都是由离散事件驱动的。

NS2的功能强大,模块丰富,是目前网络研究领域应用最广泛的仿真软件之一。

NS2可以用于仿真各种不同的IP网,同时也为进行局域网的仿真而实现了多播以及一些MAC子层协议。

NS2为包级仿真,只研究链路层及以上协议,它提供对协议的多级抽象,以满足对不同协议层的研究。

NS2更注重低级协议仿真,监视和分析包踪迹和队列行为。

NS2的架构严格遵循OSI七层网络模型,其内核源码用C语言完成,编程语言用C++ 和OTcl (面向对象的Tcl ) 。

C++是一个编译性语言,通过它可以有效地处理字节、包头等数据信息,实现各种算法,适用于具体协议的实现。

OTcl 是一个解释性语言,用于书写仿真脚本,只需修改网络的参数和配置,就可以对大量的场景进行比较。

两种语言的结合使用,满足了不同的需要。

同时,为了进一步增强编程的灵活性,提高程序的效率,NS2中利用TclCL机制把OTcl 和 C++结合起来,使得C++和OTcl 能够互相直接操作对方定义的数据,C++的类和OTcl 的类相对应。

通过这种机制,NS2达到了仿真配置灵活性和运行效率的统一。

NS2的每一次模拟均需要用类Simulator的一个简单实例来控制和执行模拟。

这个类提
供了一套接口用于配置一次模拟,并为这次模拟选择一个时间调度方案。

一个模拟脚本通常
以创建这个类的实例开始,然后调用各种方法创建节点,管理拓扑结构和设置模拟的其他方
面。

当一个新的模拟对象在Tcl脚本中创建时,初始化过程将执行以下操作:①初始化包
格式;②创建一个事件调度器;③创建一个空代理。

目前,NS2提供了大量仿真环境的元素,如仿真器、节点和分组转发、链路和延迟、队
列管理与分组调度、代理、时钟、分组头及其格式、局域网等;提供了丰富的数学支持,如
随机数产生、积分等;提供方便的追踪和监视方法等;同时也提供完整的路由支持,如单播
/组播路由、动态/静态路由、层次路由等。

NS2软件还配有仿真过程动态观察器,可以在
仿真运行结束后动态察看仿真的运行过程,观察跟踪数据。

软件还有图形显示器,显示从仿
真中得到的结果数据,直观而且清晰。

2.3 仿真软件的比较
NS2是免费的,其程序的源代码也是开放的,因此受到了学术界的欢迎。

OPENET是
商业软件,费用较贵,但其功能强大,仿真准确性也较高,主要为一些大型网络研发部门所
使用。

OPNET综合采用基于包的建模方法和数学分析的建模方法,可以获得较快的仿真速
度。

NS2则特别适用于TCP层以上的仿真,但是当仿真节点数较多时速度较慢。

表1[3]列出
了两款软件主要性能方面的比较。

表1 网络仿真软件的比较
OPNET NS2 模拟方法事件驱动事件驱动
面向对象建模是是
建模环境图形化编辑器命令符编辑器
使用c/c++语言编制新模型
模型扩展在已有模型上修改或使用c/c++语
言编制
动态观察模拟过程支持支持
仿真结果使用结果分析器输出使用图形显示器输出
主要面向网络协议研究
适用范围几乎所有网络和网络技术(包括无
线通信和卫星通信网)
运行环境Unix, HP-UX, Solaris, Windows Unix, Linux, Widows
价格十分昂贵免费
3.实例仿真效果的分析对比
3.1 场景描述
该实例场景为一个小型办公局域网,第一个场景是该局域网只有十个节点连接到server
上。

其网络拓扑结构如图1。

图1 初始网络拓扑结构
第二个场景是在原有网络上,增加十个节点,本实例的目的是通过节点的增加,看是否会使得网络的延时增加。

扩展后的网络拓扑结构如图2。

图2 扩展后的网络拓扑结构
3.2 仿真结果分析对比
具体的仿真实现过程这里就略过不再陈述了,以下是OPNET和NS2分别得到的网络延时图。

图3 初始网络得到的OPNET显示的延时统计图
图4 扩展后的网络得到的OPNET显示的延时统计图
图5 选择overlaid statistics模式得到的OPNET显示的延时统计图
图6 NS2得到的延时统计图
从整个仿真过程及仿真结果来看,我们可以得出以下结论。

OPNET仿真的速度和直观性要比NS2更好一些,功能也更加强大和丰富,只是其价格昂贵。

而NS2是免费的开源软件,功能虽然相对弱些,但是一直在不断完善增强。

4.结论
随着网络和通信技术的不断发展,网络仿真以其突出的优越性越来越受到网络研究人员的关注和重视。

专用的网络仿真软件也因此得到快速的发展和更为广泛的应用。

仿真软件的开发和完善不仅为网络技术开发、网络性能理论分析、网络设计方案评估及网络故障诊断等提供了强有力的工具,还大大缩减了开发时间,提供了研究效率。

不同仿真软件有不同的特点,我们应该根据我们研究的需要合理合适的选择仿真软件。

参考文献
[1]龙华.OPNET Modeler与计算机网络仿真[M].西安:西安电子科技大学出版社,2006.
[2] 徐雷鸣,庞博,赵耀.NS与网络模拟[M].北京:人民邮电出版社,2003.
[3] 杨路明,李谢华.网络仿真软件比较分析及仿真过程探讨[J].计算机技术与自动化,2002,21卷(4期):65-70.
The analysis of network simulators
Fan Hongyan,Zhou Caigen,Fan Yun
Beijing University of Posts and Telecommunications,Beijing (100876)
Abstract
Network Simulation is an important method of network research, with the development of network, there are many network simulators currently. Different simulator is suitable for different aspect of network research. This paper mainly discuss the characteristic and technology of two leading network simulator opnet and ns2, and then make a comparison on the simulation effects according to an example.
Keywords:Network Simulation,Network Simulator,OPNET,NS2。

相关文档
最新文档