所需环境:Ubuntu16.04
一、相关软件的下载
1.1 NS2的安装与使用
sudo apt install ns2
源码下载地址:https://www.isi.edu/nsnam/ns/
使用时在终端直接输入ns+××.tcl即可
1.2 nam的下载与安装
nam 可以将仿真结果可视化进行演示
$ sudo apt-get purge nam
$ wget --user-agent="Mozilla/5.0 (Windows NT 5.2; rv:2.0.1) Gecko/20100101 Firefox/4.0.1" "http://technobytz.com/wp-content/uploads/2015/11/nam_1.14_amd64.zip"
unzip nam_1.14_amd64.zip
$ sudo dpkg -i nam_1.14_amd64.deb
$ sudo apt-mark hold nam
使用时在终端直接输入nam,打开界面后选择要打开的nam文件即可
1.3 NSG2的安装
NSG2可以可视化的构建网络结构,并直接生成TCL代码
下载地址:http://linux.linuxidc.com/
具体路径:/2012年资料/6月/25日/NSG2
打开NSG2需要java环境,先配置JAVA环境
$ sudo apt install default-jre
$ sudo apt install gcj-5-jre-headless
$ sudo apt install openjdk-8-jre-headless
验证安装结果:
$ java -version
将下载地址下载的压缩包解压后得到NSG2.jar
使用时需在该目录下输入
java -jar NSG2.jar
1.4 GAWK的安装
GAWK是对仿真结果数据进行分析时需要用到的
$ sudo apt install gawk
1.5 gnuplot的安装
gnuplot是对分析结果进行绘图时需要用到的
$ sudo apt install gnuplot-x11
二、仿真TCL源码分析
#全局变量
set opt(rate) 0
proc getopt{argc argv} {
global opt
set opt(rate) [lindex $argv 0]
}
#无线节点参数
set val(chan) Channel/WirelessChannel ;#信道类型:无线信道
set val(prop) Propagation/TwoRayGround ;#无线传输模型:TwoRayGround
set val(netif) Phy/WirelessPhy ;#网络接口类型:无线物理层
set val(mac) Mac/Tdma ;#MAC层协议:TDMA
#set val(mac) Mac/802_11 ;#MAC层协议:802.11
set val(ifq) Queue/DropTail/PriQueue ;#接口队列类型