移动Ad Hoc网络路由协议仿真实验设计

2012-11-15 10:47姜恩华窦德召淮北师范大学物理与电子信息学院安徽淮北235000
关键词:脚本数据包路由

姜恩华, 窦德召(淮北师范大学 物理与电子信息学院,安徽 淮北 235000)

借助NS2和NSG2软件完成移动Ad hoc网络路由协议DSDV、DSR和AODV[1]的仿真实验设计,仿真实验操作过程简单、直观和方便,不但能够降低实验成本,帮助学生掌握和理解移动Ad hoc网络路由协议的原理和概念,而且能够培养学生从事无线网络路由协议研究的兴趣。

1 仿真实验平台的组成及仿真实验过程

1.1 NS2网络仿真软件

NS2网络仿真软件主要由事件调度器、网络组件和TCLCL机制等部分组成,可以在windows xp环境下通过安装Cygwin软件,模拟一个unix环境,借助这个unix环境安装NS2-allinone-2.29软件[2],NS2-2.29仿真软件实现了DSDV、DSR和AODV等移动Ad hoc网络路由协议[3]。

1.2 NSG2网络脚本生成器

NSG2是采用JAVA开发的一个图形化的网络脚本生成器,能够根据建立的网络拓扑结构,生成TCL脚本文件,运行NSG2需要在windows xp环境下安装jdk-7-windows-i586.exe软件建立JDK环境,NSG2支持TCP、UDP和NULL代理,支持CBR和FTP应用,支持移动Ad hoc网络路由协议DSDV、DSR和AODV,采用NSG2网络脚本生成器可以搭建DSDV、DSR和AODV路由协议仿真实验的网络场景并生成TCL脚本文件,供NS2仿真使用。

1.3 仿真实验过程

通过NS2仿真实验,生成nam文件和trace文件,nam文件供nam.exe调用,以NAM动画演示路由协议的运行过程, 编写AWK程序对trace文件中的数据进行统计,本仿真实验主要统计发送和接收的封包个数、端到端的延时和第一个包的接收时间等数据,借助这些数据分析DSDV、DSR和AODV路由协议的效果[4]。采用NS2和NSG2进行移动Ad hoc网络路由协议仿真实验过程步骤如下:

1)采用NSG2搭建路由协议DSDV、DSR和AODV的网络仿真场景并生成TCL文件。

2)通过TCL文件进行NS2仿真实验,生成nam文件和trace文件。

3)通过NAM动画观察实验现象和通过实验数据分析路由协议效果。

4)如果实验现象不明显,可以修改网络仿真场景,即重复1)~3)步骤。

2 移动Ad hoc网络路由协议仿真实验设计

2.1 仿真实验设计目的

在NSG2软件下配置移动Ad hoc网络路由协议DSDV、DSR和AODV仿真实验的网络场景并生成TCL脚本文件;在NS2环境对TCL脚本文件仿真并以NAM动画演示路由协议DSDV、DSR和AODV的动态运行过程;分析路由协议DSDV、DSR和AODV的效果;帮助学生掌握和理解移动Ad hoc网络路由协议DSDV、DSR和AODV的概念和原理。

2.2 仿真实验的网络拓扑结构设计

根据移动Ad hoc网络路由协议DSDV、DSR和AODV的原理和概念设计路由协议仿真实验的网络拓扑结构[5],此网络结构一方面要能完全演示路由协议DSDV、DSR和AODV动态运行过程,另一方面网络结构不能太复杂以节约仿真实验时间,根据DSDV、DSR和AODV路由协议的原理与要求,充分考虑到仿真实验过程可能出现的问题,采用如图1所示的网络拓扑结构,各节点位置坐标如下:源节点n3处于坐标(400,464),目的节点n4处于坐标(753,604),节点n0处于坐标(441,543),节点n1处于坐标(542,545),节点n2处于坐标(788,549),源节点n3连接udp1代理,udp1代理连接流量发生器cbr1,目的节点n4连接null1代理,假设源节点n3以每秒10米的速度向右平移,节点n0、n1、n2和n4都处于静止状态,仿真实验时间为40s.

图1 移动Ad hoc网络路由协议仿真实验的网络场景

2.3 仿真实验的内容及操作步骤

仿真实验的内容主要包括:熟悉DSDV路由协议维护和更新路由表的过程,熟悉AODV和DSR协议的路由发现和路由维护过程;通过NAM动画观察节点n3移动时,节点n3到节点n4的路由的变化;通过统计trace 文件中的数据,分析路由协议DSDV、DSR和AODV的效果。

仿真实验操作步骤主要包括:

1)按照图1所示网络拓扑结构在NSG2软件的节点Node模式下建立网络仿真场景,节点n3设置为移动节点,以每秒10米的速度向右平移,节点n0、n1、n2和n4为静止节点。

2)在代理Agent 模式下对节点3添加udp1代理,对节点4添加null1代理,连接udp1和null1.

3)在应用Application下对代理udp1添加流量发生器cbr1,设置起止时间、数据包速率等。

4)在参数Parameters模式下,在仿真Simulation属性页设置仿真时间、trace 文件名和nam 文件名,在无线Wireless属性页选择路由协议DSDV、DSR或AODV并保存。

5)在TCL模式下,生成的TCL脚本文件并保存。

6)在Cygwin的绘图窗口下,进行NS2仿真,生成trace file和nam file.

7)通过NAM动画观察实验现象和通过实验数据分析路由协议DSDV、DSR和AODV的效果。

3 仿真实验操作过程及实验现象观察

按照图1所示的网络拓扑结构在NSG2软件环境下建立网络仿真场景,由于在参数Parameters模式下的无线Wireless属性页可以选择路由协议DSDV或DSR或AODV,需要对每一个路由协议生成一个TCL脚本文件,通过NS2执行TCL脚本文件得到trace 文件和nam 文件,通过NAM.exe执行nam 文件演示DSDV、DSR和AODV的动态运行过程,仿真实验操作过程如下。

3.1 DSDV路由协议仿真实验操作过程及实验现象观察

对DSDV路由协议仿真实验,按照实验步骤利用NSG2软件生成DSDV路由协议仿真的TCL脚本文件,通过NS2执行TCL脚本文件生成trace 文件和nam 文件,通过NAM动画演示DSDV路由协议的动态运行过程,主要观察网络中各个节点发出广播包,随着节点n3移动,节点n3到达节点n4的路由是否发生变化?通过NAM动画演示可以观察到仿真开始时网络各节点发送广播包,随着路由表的更新,找到节点n3到达节点n4的路由如图2所示,当节点n3继续移动时,随着路由表的更新,找到节点n3到达节点n4的路由如图3所示。

图2 开始找到从n3到达n4的路由 图3 重新找到从n3到达n4的路由

通过观察实验现象,发现DSDV路由协议在源节点n3移动24秒时,才找到从n3经过n2到达n4路由,随着路由表的更新,节点n3到达节点n4路由会发生变化。

3.2 DSR或AODV路由协议仿真实验操作过程及实验现象观察

对DSR或AODV路由协议仿真实验,观察路由发现和路由维护过程,以DSR路由协议仿真实验为例,按照实验步骤利用NSG2软件生成DSR路由协议仿真的TCL脚本文件,通过NS2执行TCL脚本文件得到trace file和nam file,通过NAM动画动态演示DSR路由协议的运行过程,主要观察路由发现和路由维护过程,随着节点n3移动,节点n3到达节点n4的路由是否发生变化?通过NAM动画演示可以观察到仿真开始时通过路由发现过程找到节点n3经过n1到达n4的路由如图4所示,当节点n3移动到节点n1的右下方时,节点n3和n4不能再经过n1传送数据,路由中断,这时路由维护过程启动路由发现过程,重新寻找新的路由,重新找到节点n3到达n4的路由如图5所示,AODV路由协议的仿真实验观察到的现象和DSR路由协议类似。

图4 开始找到从n3到达n4的路由 图5 重新找到从n3到达n4的路由

通过观察实验现象,发现DSR和AODV路由协议在源节点n3移动开始时,就能通过路由发现过程找到合适的路由,如果此路由被断开,路由维护过程能够启动路由发现过程重新找到新的路由。

4 DSDV、DSR和AODV路由协议效果分析

4.1 仿真实验数据统计

通过编写AWK程序对trace文件中的数据进行统计,trace文件主要记录发送、接收、丢弃和转发的数据包的信息[6],本实验主要统计数据包送达的比率,端到端的延时和第一个包的接收时间,借助仿真实验数据分析DSDV、DSR和AODV路由协议的效果。

流量发生器cbr1速率设置为1MB、2MB和3MB,DSR路由协议仿真实验时,interface queue type采用CMUPriQueue,DSDV和AODV路由协议仿真实验时,interface queue type采用Queue/DropTail/PriQueue,统计到的实验数据如表1所示。

表1 仿真实验数据统计表

4.2 仿真实验数据分析

从仿真实验数据统计可以看出,当cbr1速率增大时,每个路由协议的数据包送达的比率减少,端到端的平均延时增加,第一个数据包的接收时间不变;当cbr1速率恒定时,使用DSDV路由协议收到第一个包的接收时间较长,数据包送达的比率较低,使用DSR和AODV路由协议收到第一个包的接收时间较短,数据包送达的比率较高。可见DSDV路由协议不适合网络拓扑结构动态变化的网络场景,DSR和AODV路由协议适合网络拓扑结构动态变化的网络场景。

5 结 论

借助NS2和NSG2软件完成了移动Ad hoc网络路由协议DSDV、DSR和AODV的仿真实验设计。通过NSG2软件产生供NS2仿真使用的TCL脚本文件。通过NAM动画观察实验现象,通过trace 文件统计的实验数据包括:数据包送达的比率、端到端的平均延时和第一个包的接收时间,借助实验数据分析DSDV、DSR和AODV路由协议的效果。通过仿真实验,帮助学生掌握和理解移动Ad hoc网络路由协议的原理和概念,培养学生从事无线网络路由协议研究的兴趣。

[1]汪 涛.无线网络技术导论[M].北京:清华大学出版社,2009.

[2]ns-allinone-2.29[EB/OL]. http://sourceforge.net/projects/nsnam/files/allinone/,2006—11—20.

[3]The ns Manual[EB/OL]. http://www.isi.edu/nsnam/ns/ns-documentation.html,2010—08—21.

[4]柯志享,程荣祥,邓德隽. NS2仿真试验——多媒体和无线网络通信[M].北京:电子工业出版社,2009.

[5]安辉耀,王新安,李 挥.移动自组网中的先进路由算法与路由协议[M].北京:科学出版社,2009.

[6]NS-2 Trace Formats[EB/OL]. http://nsnam.isi.edu/nsnam/index.php/NS-2_Trace_Formats,2010—08—18.

猜你喜欢
脚本数据包路由
酒驾
安奇奇与小cool 龙(第二回)
SmartSniff
探究路由与环路的问题
快乐假期
小编的新年愿望
基于预期延迟值的扩散转发路由算法
PRIME和G3-PLC路由机制对比
eNSP在路由交换课程教学改革中的应用
视觉注意的数据包优先级排序策略研究