说明:柯志亨老师《ns2仿真实验-----多媒体和无线网络通信》这本书lab18实验为“无线网络封包传输遗失模型”的实验。该无线传输遗失模型是柯老师自己开发的,原始的ns-allinone-2.35(也包括其他版本)中是没有该模型的。所以实验的第一步就是要先为ns2.35添加该模型。
步骤:
1.将柯老师所给的ns-allinone-2.29包中ns-2.29/mac/wireless-phy.cc和ns-2.29/mac/wireless-phy.h两个文件复制到你自己安装的ns-allinone-2.35/ns-2.35/mac/目录下。复制前先备份ns-2.35/mac中的这两个文件。
具体的安装路径因人而异,不可照搬我的~
2.在ns-allinone-2.35/ns-2.35/目录下执行sudo make clean;sudo make命令。
执行完该步后,会出现如下错误:
3.修改2中出现的错误,修改完后重新make。具体如下:
在当前目录中打开mac/wireless-phy.cc文件,在61行添加MIN声明。
在当前目录中打开common/packet-stamp.h文件,在58行添加double InterferencePr。
然后重新在当先目录下执行sudo make。图略。
make之后,会出现如下错误:
4.修改3中错误,然后重新make。
在当前目录中打开mac/wireless-phy.h文件,在99行添加T_sleep的定义
然后重新执行sudo make,大功告成!
5.经过上边几个步骤,柯老师的无线网络封包传输遗失模型就在咱们自己的ns2.35中添加完成了。但是要想做lab18的实验,在这里还要修改下lab18所给出的lab18.tcl文件,原因就不说明了。大家照做即可。
打开lab18/lab18.tcl文件,注释掉142-146行代码(具体的行号可能略有不同,大家看下,不过很好找的)。然后在140行添加ns_ connect $udp0 $null0。
6.大功告成。去做lab18的实验吧。
友情提示:柯老师给出的ns-allinone-2.29包下载地址:http://pan.baidu.com/s/1qWmDmwc
标准的ns-allinone-2.35包下载地址:http://pan.baidu.com/s/1o6jt1we
在ns2.35下完成柯老师lab18实验,布布扣,bubuko.com