`

ns2安装详细过程与网络仿真

阅读更多

简单的说,NS-2是一个网络模拟器,所以经常被用到网络课的教学中。

NS-2是OpenSource的,最早的版本是在linux/unix下运行的,后来有了windows下用vc编译运行的版本,但从2.26以后就放弃了对vc的支持,所以现在装NS2只有两条路,要么装个linux,要么就在windows下装个cygwin,然后再在cygwin上装ns2.

为了一个ns2(完成安装后不过100M)而安装linux(RH9完全安装大概在5G左右)实在不值,所以我决定用cygwin
先去
http://www.cygwin.com/setup.exe
下载setup.exe,运行,得到这个界面:

点击查看原始大小图片~

点下一步,出现这个界面:
点击查看原始大小图片~
选择“Install from Internet”,当然,如果本地已经下载了你所需要的package,也可以选“Install from Local Directory”

接下来选择安装位置:
点击查看原始大小图片~
可以自己选择一个目录安装。现在(10/13/05)的cygwin版本跟NTFS完全兼容,所以不用担心,可以放心的把它装在NTFS分区。至于Test File Type,建议最好设成unix,虽然我没试过用dos格式,但是鉴于OpenSource的软件原本都是linux/unix下的,所以最好还是用unix

继续下一步
点击查看原始大小图片~
选择一个保存package的地方,我们要用到的package大小大概是60M。当然,如果选择的是Install From Local Directory,那么这一步就会变成“指定package所在的位置”

下一步
点击查看原始大小图片~
指定代理服务器。教育网内的机器是没办法直接上国外网的,所以要指定代理。最该死的是它的 mirror list放在国外,所以即使你知道一个国内的ftp地址(可以下载package的地址,比如ftp://ftp.sjtu.edu.cn/cygwin),你也得指定代理服务器,要不然你就没办法获得mirror list,安装就进行不下去。清华校内的话,除实验室之外推荐使用代理,强烈建议不要直接连国外,要知道国际流量可是 1元/MB,安装一次就需要60RMB!

下一步
点击查看原始大小图片~
选择镜像站点。cygwin有很多镜像站点(但是上面列的都是国外的),可以选择其中一个下载package。也可以自己指定一个站点。比如,如果要用ftp://ftp.sjtu.edu.cn/cygwin,可以在User URL中填这个地址,然后点add,就能将这个地址加到上面的镜像列表中,然后可以选择这个镜像进行安装。

下一步
点击查看原始大小图片~
选择要安装的软件包。这里我只列出ns2需要的包,其中不包括安装程序默认安装的包:
gcc
gcc-g++
gnuplot
make
patch
perl
tar

libxmu-dev

X-startup-scripts
xorg-x11-base
xorg-x11-bin
xorg-x11-devel
xorg-x11-bin-dlls
xorg-x11-bin-lndir
xorg-x11-etc
xorg-x11-fenc
xorg-x11-fnts
xorg-x11-libs-data
xorg-x11-xwin
点右上角的view,使它旁边的状态显示为Full,你就能看到按字母顺序排序的package列表,在这些包前点鼠标,使它们处于非“Skip”的状态.另外要去掉左下角的hide复选框中的√。


下一步
点击查看原始大小图片~
开始下载文件,准备安装。下载过程会比较慢,因为总文件有60多M,且分成很多小文件。如果是代理服务器,可能还会更慢,推荐早上开机安装,然后去上自习,估计中午就能下完了 :-P

下载完成后,系统会自动开始安装
点击查看原始大小图片~
安装过程还是比较慢的,耐心等待就是了

安装完成
点击查看原始大小图片~

让人高兴的提示


到这里,cygwin安装完成,这时桌面上应该出现了一个cygwin的图标,点击运行,就能看到cygwin的界面了


接下来就是安装ns2了
先去
http://www.isi.edu/nsnam/dist/ns-allinone-2.28.tar.gz
下载ns-allinone安装包。当然也可以选择下载单独的包,然后一个一个安装,不过真的不推荐,因为太麻烦了

下载完后,用winrar(我确定winzip能不能解压tar格式的文件,谁试试,告诉我一声)把里面的文件都解压到 cygwin安装目录下的 home目录的子目录下,比如在我这里就是 c:\cygwin\home\hct 。

启动cygwin,
cd /home/hct/ns-allinone-2.28
./install
安装过程就开始了。由于目录不一样,上面的命令可能不太一样。

安装过程是很漫长的,因为我们下载的是源文件,机器还得先编译,等吧……

安装完后会出现这个提示:
点击查看原始大小图片~

这时还需要修改路径信息,把可执行文件的路径加到PATH环境变量中
打开 c:\cygwin\home\hct\.bashrc (当然,根据安装路径不同,这个文件所处的位置也不同),在文件末尾加入这些信息:

export NS_HOME=/home/hct/ns-allinone-2.28
export PATH=$NS_HOME/nam-1.11:$NS_HOME/tcl8.4.5/unix:$NS_HOME/tk8.4.5/unix:$NS_HOME/bin:$PATH
export LD_LIBRARY_PATH=$NS_HOME/tcl8.4.5/unix:$NS_HOME/tk8.4.5/unix:$NS_HOME/otcl-1.9:$NS_HOME/lib:$LD_LIBRARY_PATH
export TCL_LIBRARY=$NS_HOME/tcl8.4.5/library

.bashrc文件可以用记事本打开,不过最好用UE,因为它是unix格式的文本
加入后的文件像这样:
http://www.sinzy.net/Test/i1/20051013132448_1dwgbc45_.bashrc

现在我们的工作就基本完成了。
保存.bashrc,打开cygwin,运行 startxwin.bat
这时应该出现这样的窗口:
点击查看原始大小图片~

运行
cd /home/hct/ns-allinone-2.28/ns-2.28/ns-tutorial/examples
ns example2.tcl

应该会出现这样的窗口:
点击查看原始大小图片~
这就表示ns2安装圆满完成了!


Problems & Solutions

P: 运行 startxwin.bat 时提示“No Such File or Directory”
S: 可能是没有安装X-Startup-Scripts,重新运行setup.exe,然后选择安装就行了
也可能是环境变量没有设置好,按上面的设置再检查一遍,注意要把 hct 改成你相应的名字
另外,应该运行 startxwin.bat ,不能只打 startxwin

P: 运行 ns examples2.tcl 时提示" no such file or directory"
S: 如果是找不到 examples2.tcl 那就是你打 cd /home/hct/ns-allinone-2.28/ns-2.28/ns-tutorial/examples 的时候出了错
如果是找不到ns,那就是环境变量没设置好

P: 运行 ns examples2.tcl 时提示“nam: no such file or directory”
S: 看看你的 /home/hct/ns-allinone-2.28/nam-1.11 目录下有没有 nam.exe 文件,有的话就是你的环境变量设置错了,注意要把 nam-1.11 这个目录加到PATH中
如果没有nam.exe,那就是编译nam时出错了。运行 gcc -dumpversion 看看你的gcc版本,如果是3.4.x,那就好办了。找到 nam-1.11/agent.h ,把它的第73行中的NULL改成0,然后回到nam-1.11目录,运行 ./configure 然后运行 make,等运行完毕,再试试 ns example2.tcl 就应该没问题了
如果gcc版本不是3.4.x,那就不知道是什么问题了,不过可以肯定是编译出了错,所以换个nam版本试试吧


References:
http://x.cygwin.com/docs/ug/setup-cygwin-x-installing.html
http://140.116.72.80/~smallko/ns2/setup.htm

 

转自:http://hi.baidu.com/kevin_wei/blog/item/97b538f51df41ee97609d71c.html/cmtid/890ca91772b6205df3de3215

分享到:
评论

相关推荐

    ns2安装详细过程ns2安装详细过程

    ns2安装详细过程.docns2安装详细过程.docns2安装详细过程.docns2安装详细过程.docns2安装详细过程.docns2安装详细过程.docns2安装详细过程.doc

    NS-2安装详细过程与网络仿真

    WINDOWS下的NS-2安装详细过程与网络仿真 非常的详细

    ns2网络仿真工具使用介绍

    一般而言,对于ns2的初学者而言,总是会遇到一个问题,就是网络仿真程序跑完后,接下来该如何分析。这是非常重要的一个过程,所以希望ns2的初学者能好好的研究此章节的内容,相信一定会对大家的研究有相当的帮助。

    NS2仿真实验源代码

    《NS2仿真实验:多媒体和无线网络通信》一书以实验为基础,兼顾教学需要,介绍了NS2及TCL语言,...《NS2仿真实验:多媒体和无线网络通信》适合从事网络研究的教学科研人员以及工程人员阅读,也可作为网络仿真的培训教程。

    NS2仿真软件详细介绍

    然而,对初学者来说,NS是非常难于掌握的,一般人从学习NS到上手至少 需要半年多...对利用ns2进行网络拓扑的输入、结构定义、运行仿真、动态观察仿真过程、仿真数据处理进行了分析,同时用一个例对仿真过程进行了说明。

    ns2仿真工具的使用和仿真过程

    用一个例子介绍了NS2的仿真工具的使用和仿真参数的设置!非常适合新手入门(简体中文)。

    网络仿真模拟 NS2无师自通 七天速学

    这个是我在网上下载的“NS网络仿真无师自通系列”资料,原资料编排较乱并且内容不详实,本人在学习的过程中,对其进行了必要的补充和重新编排,为word形式,文档目录结构索引阅读方便!

    NS2网络模拟器的原理和应用_part2

    本书要介绍的是由UC Berkeley设计、起初由VINT Project团队维护的一套网络仿真软件NS2(Network Simulator-Version 2,简称NS2)。NS2是一个面向对象的、用离散事件驱动的、利用C++语言和OTcl语言编写的网络模拟器,...

    无线传感器网络仿真的NS2实现

    无线传感器网络仿真的NS2实现 论文,本文通过例子,介绍了基于IEEE802.15.4协议的无线传感器网络仿真的实现。并且结合该实例详细说明了NS2中随机场景的生成和tcl脚本编写方法,以及仿真结果的分析过程。

    网络仿真NS2简单工具介绍

    N网络仿真工具 NS2 的简单介绍 一般而言,对于ns2的初学者而言,总是会遇到一个问题,就是网络仿真程序跑完后,接下来该如何分析。这是非常重要的一个过程,所以希望ns2的初学者能好好的研究此章节的内容,相信一定...

    NS仿真机制及协议扩展

    网络仿真是网络研究的重要方法和手段, 网络仿真软件在网络仿真领域中占有十分重要的 位置. 文中探讨和分析了N S 的工作原理和仿真机制, 阐明了基于N S 的协议开发过程及协议性能 的测评方法, 并提供了一种研究网络...

    NS2网络模拟器的原理和应用_part5

    本书要介绍的是由UC Berkeley设计、起初由VINT Project团队维护的一套网络仿真软件NS2(Network Simulator-Version 2,简称NS2)。NS2是一个面向对象的、用离散事件驱动的、利用C++语言和OTcl语言编写的网络模拟器,...

    NS2网络模拟器的原理和应用_part3

    本书要介绍的是由UC Berkeley设计、起初由VINT Project团队维护的一套网络仿真软件NS2(Network Simulator-Version 2,简称NS2)。NS2是一个面向对象的、用离散事件驱动的、利用C++语言和OTcl语言编写的网络模拟器,...

    基于NS的无线网络仿真

    掌握NS仿真软件的安装方法和基本使用方法,包括仿真环境和仿真过程。 掌握以太网和无线网络的仿真技术,要求学生学会分析仿真数据,从中找出网络故障的原因并提出合理的解决方案。 学会利用C++联调仿真过程中出现的...

    信息网络建模与仿真.docx

    另外,本实验借助Netanim实现仿真网络的可视化,旨在直观地学习和掌握网络的结构和变化过程,以更好地理解信息网络建模与仿真的过程。对于仿真结果,可以采用stats或者trace文件进行结果分析和统计。最终,用可视化...

    ns网络仿真及其分析

    介绍了ns仿真的过程,希望对初学者对ns2的认识有一定的帮助

    NS2网络模拟器的原理和应用_part4

    本书要介绍的是由UC Berkeley设计、起初由VINT Project团队维护的一套网络仿真软件NS2(Network Simulator-Version 2,简称NS2)。NS2是一个面向对象的、用离散事件驱动的、利用C++语言和OTcl语言编写的网络模拟器,...

    NS2网络模拟器的原理和应用_part1

    本书要介绍的是由UC Berkeley设计、起初由VINT Project团队维护的一套网络仿真软件NS2(Network Simulator-Version 2,简称NS2)。NS2是一个面向对象的、用离散事件驱动的、利用C++语言和OTcl语言编写的网络模拟器,...

    ns2自定义协议示例

    基于ns2自定义协议仿真示例,一个简单宿主udp协议,可以在日志中观测到数据包的乱序

Global site tag (gtag.js) - Google Analytics