自组网路由协议仿真平台说明文档 - 图文 联系客服

发布时间 : 星期一 文章自组网路由协议仿真平台说明文档 - 图文更新完毕开始阅读4a84e4fe192e45361166f585

3.5拓扑模型配置

拓扑模型配置在拓扑场景文件中实现,主要配置节点的位置及移动状态。 节点初始位置的配置:

$node_(0) set X_ 42.43 ;配置节点0的X轴坐标为42.43m $node_(0) set Y_ 545.14 ;配置节点0的Y轴坐标为545.14m $node_(0) set Z_ 0.00 ;配置节点0的Z轴坐标为0.00m 节点移动状态的配置:

$ns_ 50.0 ―$node_(0) setdest 496.7 672.89 10.00‖ ;

上述命令表示在50s时节点0以10m/s的速度移动到X轴坐标为496.7、Y轴坐标为672.89的位置处。

4. 仿真步骤

本次实验的仿真过程及步骤严格遵循NS网络仿真的架构,详细步骤如下图所示:

移植OLSR路由协议安装NS2-2.35OTCL脚本场景拓扑脚本数据流生成脚本throughput.awkdelay.awk?编写仿真脚本编写Awk脚本运行仿真并用Awk脚本分析跟踪文件awk.shnam文件动态观测仿真过程gnuplot制图分析结果

图 2 仿真步骤

如图所示,首先,完成仿真前的准备工作,即安装NS2-2.35,并移植OLSR协议。然后,编写仿真脚本,包括OTCL脚本文件、拓扑场景文件及数

14

据流生成文件。编写awk文件对跟踪文件进行分析。运行仿真后,生成跟踪文件及动画演示文件。最后,对分析结构制图比较。详细步骤如下。 4.1仿真前准备工作

根据1.2节所述方法成功安装NS2-2.35; 根据2节所述方法成功移植OLSR路由协议。 4.2编写仿真脚本

仿真所需脚本包括三个:OTCL脚本文件、场景拓扑文件及数据流生成文件。项目组所使用的命名方式为:

OTCL脚本文件——olsr_xinagmu.tcl 场景拓扑文件——cbr_n16_m4_r2_s1 数据流生成文件——scen_n16_r20

其中,数字部分根据场景不同可变。OTCL脚本文件在后文中会有详细介绍。

三种文件可以完全手动编写,也可使用NS2中的仿真工具获取。 ?OTCL脚本的生成

OTCL脚本的通用基础部分可以由脚本生成工具NSG2获取。下载NSG2并解压缩,进入到NSG2所在目录,使用以下命令打开:

$java -jar NSG2.jar

生成基础部分的OTCL脚本,在此基础上进行改进与完善,生成最终OTCL脚本。

NSG2的环境如下:

15

图 3 OTCL脚本生成工具NSG2的仿真环境

?拓扑场景文件的生成

当节点数目较少、移动性较弱时,可以手动完成节点位置的配置及移动性配置,但当节点数目较多、拓扑结构复杂时,使用拓扑生成工具setdest更方便快捷,且具有一般性与随机性。

NS2中的setdest在ns-allinone-2.35/ns-2.35/indep-utils/cmu-scen-gen/setdest目录下,为仿真便利,在仿真脚本所在目录下创建setdest的链接:

$ln -s /home/jenny/ns/ns-allinone-2.35/ns-2.35/indep-utils/cmu-scen-gen/setdest/setdest setdest

以26节点,速度50m/s为例。仿真时输入如下图所示的命令,产生文件名为scen_n16_r50-50的拓扑场景文件。

图 4 场景拓扑生成命令

16

命令的格式如1.3.3节所述,scen_n16_r50-50文件保存了生成的节点运动场

景描述,表示的是节点数为16,节点运动速度为50m/s,停留时间为0s,仿真时间为100s,运动范围为1000m*1000m的仿真场景。生成的文件描述部分如下所示。

图 5 场景拓扑文件截图

?数据流的生成

与setdest相似,NS2中的数据流生成工具cbrgen在ns-allinone-2.35/ns-2.35/indep-utils/cmu-scen-gen目录下,为仿真便利,在仿真脚本所在目录下创建cbrgen的链接:

$ln -s /home/jenny/ns/ns-allinone-2.35/ns-2.35/indep-utils/cmu-scen-

gen/cbrgen.tcl cbrgen.tcl

仿真时输入下图所示命令行,产生文件名为cbr_n16_m4_r2的数据流生成脚

本文件。

图 6 数据流生成命令

命令格式如1.3.4节所述,该命令生成的是16个节点,业务流为CBR业务流,随机数种子为1,节点间的最大连接数为4,每个连接间的最大数据流速率为2packets/s的数据流生成文件。文件截图如下所示。

图 7 数据流生成文件截图

拓扑场景文件及数据流生成文件引入到OTCL脚本文件的方式为: Source ―scen_n16_r50-50‖ Source ―cbr_n16_m4_r2‖

4.3编写Awk分析文件

对仿真出来的跟踪文件进行分析,则需要借助Awk分析文件。这一次仿真

17