在ns2.35下完成柯老师lab18实验

说明:柯志亨老师《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

时间: 2024-11-08 05:52:33

在ns2.35下完成柯老师lab18实验的相关文章

ubuntu下做柯老师lab19-lab20实验问题总结

前两篇文章告诉了大家如何将无线封包传输遗失模型和myevalvid添加到ns2.35中,已经成功验证了,这个没有问题.但是本人在做lab19和lab20实验时又发现了一些关于myevalvid工具集的问题,主要有ffmpeg.MP4trace,mp4box,etmp4等工具.其中ffmpeg问题最大,解决了一天没有任何进展,最终放弃了,改用了老柯给的ffmpeg.exe在windows下边做通了.汗吧,做个试验,扯了两个平台,ubuntu+windows.其实也不能怪别人,只能怪自己太菜了. 大

ns-2.35下mflood协议的完美移植

Step1 首先需要下载mflood协议,其中包括两个文件夹:一个是mflood协议(还有文件把mflood.cc,mflood.h,mflood-seqtable.cc,mflood-seqtable.h,mflood-packet.h),一个是用于mflood测试的文件夹. Step2 在ns-2.34目录下建立mflood文件夹,把上述的(mflood.cc,mflood.h,mflood-seqtable.cc,mflood-seqtable.h,mflood-packet.h)文件放在

ubuntu16.04下安装NS-2.35以及对simple例的理解

本人是在VMWare上安装的ubuntu16.04版本,然后安装NS2.35. 1.下载ns2的安装包,这里我选择的是ns-allinone-2.35.tar.gz压缩格式的all in one安装包,all in one 安装包包含所有的组件,比较方便,另附下载地址: http://www.isi.edu/nsnam/ns/ns-build.html 2.安装前要先进行一些准备工作进行配置环境,输入如下代码: $sudo apt-get install build-essential $sud

在ns2.35中添加myevalvid框架

在用ns2进行网络视频通信仿真的时候,先要为我们自己的ns2添加evalvid或者myevalvid框架.其中myevalvid框架是由柯志亨老师整合evalvid和ns2之后得出的新框架,笔者建议大家安装该框架,而不要安装原生的evalvid框架.这样就可以结合柯志亨老师的<ns2仿真实验-----多媒体和无线网络通信>这本书,做配套的实验,比较方便. 网上关于myevalvid框架的安装文章很多,大家可以参考去做,笔者会在本文最后给出相关的链接.本文主要是对myevalvid框架源码中的错

ubuntu 14.04 ns2.35 ***buffer overflow detected **: ns terminated解决办法

1.按照如下教程安装 Install With Me !: How to Install NS-2.35 in Ubuntu-13.10 / 14.04 (in 4 easy steps) 2.运行一个例子程序时出现 ***buffer overflow detected **: ns terminated 3.参考现有方案出现,gcc error:4.4没有那个文件或目录 sudo apt-get intall gcc-4.4 sudo apt-get intall g++-4.4 修改tcl

ns2.35安装过程中出现错误ns.exe找不到

cd ns-allinone-2.35/ns.2.35 ./configure make ... linkstate/ls.cc:396:28:   required from here linkstate/ls.h:137:58: 错误:'erase' was not declared in this scope, and no decl                                                                              

Ubuntu 16——安装——ns2.35和nam

Ubuntu 16.04 安装ns2.35+nam 总结出以下安装步骤 1: 更新源 sudo apt-get update #更新源列表 sudo apt-get upgrade #更新已经安装的包 sudo apt-get dist-upgrade #更新软件,升级系统2:安装ns2需要的包 sudo apt-get install build-essential sudo apt-get install tcl8.5 tcl8.5-dev tk8.5 tk8.5-dev #for tcl

classifier.cc-recv() [ns2.35]

1 void Classifier::recv(Packet* p, Handler*h)//original 2 { 3 NsObject* node = find(p); 4 if (node == NULL) { 5 /* 6 * XXX this should be "dropped" somehow. Right now, 7 * these events aren't traced. 8 */ 9 Packet::free(p); 10 return; 11 } 12 13

linux 3.0.35下globalmem 字符设备驱动实现

1.Makefile KDIR=/home/xxx/s-linux-3.0.35 PWD:=$(shell pwd) # kernel modules obj-m := globalmem.o modules: make -C $(KDIR) M=$(PWD) modules clean: rm -rf *.o *.ko *.mod.c *.markesr *.order *.symvers .PHONY:modules clean 2.globalmem.c #include <linux/m