NS2仿真

1、建立脚本文件(只给出两个关键点的代码)

配置模拟属性:

set val(chan)  Channel/WirelessChannel   ;# 信道类型

set val(prop) Propagation/TwoRayGround   ;# 传播模型

set val(netif)   Phy/WirelessPhy         ;# 物理层

set val(mac)     Mac/802_11              ;# MAC类型

set val(ifq)     Queue/DropTail/PriQueue ;#

set val(ll)      LL                      ;# 链路层

set val(ant)     Antenna/OmniAntenna     ;# 天线类型

set val(ifqlen)   50                     ;# ifq中最大包数

set val(nn)       30                     ;# 移动节点个数

set val(rp)       AODV                   ;# 路由协议

set opt(cp)      "CBR"                   ;# 数据流类型

set opt(sc)      "scen"                  ;# 场景文件

配置移动节点:

# 构造节点

        $ns_ node-config -adhocRouting $val(rp) \

             -llType $val(ll) \

             -macType $val(mac) \

             -ifqType $val(ifq) \

             -ifqLen $val(ifqlen) \

             -antType $val(ant) \

             -propType $val(prop) \

             -phyType $val(netif) \

             -channelType $val(chan) \

             -topoInstance $topo \

             -agentTrace ON \

             -routerTrace OFF \

             -macTrace ON \

             -movementTrace OFF

2、生成场景文件

./setdest -v 1 -n 30 -p 0.0 -M 40 -t 500 -x 1000 -y 1000 >scen

注意:该场景文件在目录:ns-2.27\indep-utils\cmu-scen-gen\setdest下生成。

3、生成数据流文件

ns cbrgen.tcl -type cbr -nn 30 -seed 1 -mc 30 -rate 1.0 >cbr

注意:该数据流文件在目录:ns-2.27\indep-utils\cmu-scen-gen下生成。

4、把生成的场景文件数据流文件copy到和步骤1的脚本文件同一个目录下。

5、运行NS2软件进入脚本文件所在目录,运行命令:ns *.tcl。得到一个 *.tr文件和一个 *.nam文件。

6、编写awk脚本,对trace文件中数据进行统计。

7、运行命令:gawk –v src=1 –v dst=2 –v outfile=1-2 data –f *.awk *.tcl,生成文件 *.data。

8、编写gnuplot的plot脚本文件 *.plot。

9、运行命令:gnuplot *.plot,生成所要图形。

你可能感兴趣的:(NS2仿真)