红联Linux门户
Linux帮助

虚拟机、LINUX、NS2

发布时间:2007-10-24 10:26:50来源:红联作者:lication
  磨叽了两天,终于在LINUX下把NS2给装上了,尔后自嘲的对自己说,现在越来越容易开心了,装上个软件都把我乐成这样。呵呵,不过,这5天时间,玩了下Linux,碰到不少问题,慢慢摸索,对这个操作系统也熟悉了很多。

  Linux是开源的操作系统,任何人都可以对其源代码进行修改,我理解为可以DIY的操作系统。课题需要对网络进行算法仿真,这个从年初通过看一些文献资料,知道了一些比较流行的仿真软件:OPNET,NS2。当然,在没人指导的情况下,无法辨别做无线网络的DIY协议的仿真,选择使用哪种软件进行仿真比较好。通过简单的交流和文献阅读之后,我选择了研究OPNET。OPNET的使用也是非常广泛的,学习过程中参考了两本书,一本是北邮的王文博老师的,另一本是清华的陈敏出的,具体书名忘了。OPNET里边的一些概念还是比较抽象的,对三层建模机制的理解需要一定的时间和精力,另外还有大量的原函数,因此精通OPNET还不是件容易的事。不过,值得庆幸的是,OPNET里边自带了很多常用的模型,这个对做一般的网络布局的仿真还是很便利的。可惜的是,到现在我还不知道怎么去写网络协议的代码,也不知道OPNET有没有这样扩展的功能。现在的OPNET的使用水平就是做个网络的布局,然后仿真,看结果。至于DIY协议就还欠点火候了,并且OPNET对WSN协议的支持并不是很友好(相对NS而言,最近才悟到的),所以现在又转过来搞NS2了。

  没人指导的缺点是时时刻刻在走弯路,优点是自己可以多学东西。像这样,弯路一走,把OPNET,NS2都学会了,并且还摸索出了学新东西的感觉和方法,也是很美妙的。

  转过来搞NS2的诱因是我看的文献上大部分的仿真都是用NS2做的,基本没有用OPNET,还有少量的用OMNET++,MATLAB等做的。NS在网络仿真界应该算是领军的了吧,参考书中说,NS在LINUX中运行稳定,并且可以任意修改源代码,这不正是DIY的特点吗,呵呵,想想LINUX也挺好玩的,就去学学,对以后找工作什么的,也会有很大的帮助。

  之前听说黄严玩过LINUX,就问他怎么装这个操作系统。我认为WINDOWS和LINUX肯定互不兼容,所以在同一台机器上装两个互不兼容的系统估计还有一些问题要解决。他建议我用虚拟机装,后来发现,用虚拟机装是目前比较流行的一种方法。嗯,看来,交流和信息共享还是很有用的。

  之前还没有听说过虚拟机的概念,不过用过虚拟光驱,所以也很好理解虚拟机了,经过一系列配置之后,就可以安装linux了,虚拟机的配置还是比较友好容易的,毕竟是WINDOWS下的产品。装linux时,按照提示进行操作即可,也不太困难,在磁盘配置时,一般分三个区:1)挂载点为/boot,系统文件为ext3,给200M的空间就可以了;2)挂载点为 <空>,系统文件为swap的分区,这个给800M的空间吧;3)挂载点为/,系统文件为ext3的root分区,这是个主分区,很多程序都放这里边,所以应该给足够大的空间,硬盘剩下来的全给它吧。另外装Linux的时候最好把开发工具和工程与科学的部分全部选上,特别是开发工具部分,因为在NS编译是要用到gcc c++等编译器,工程与科学部分有很多工具进行分析时会用到!

  安装好了,系统进入的是文字界面,输入帐号root,和密码,登录系统,输入命令 init 5,进入图形界面,开始配置该系统。首先调节分辨率,system-administration-display,配置hardware和Resolution,然后Preferences-Desktop Effects,就行了。其次,安装中文字库,如果没安装的话,那么中文就会出现乱码,流浪网页的时候也是这样。在fc6中自带有FONTS的RPM包,rpm一下就可以了。

  昨天一整天加上今天大半天整NS,都没装成功,碰到各种各样的问题,首先是报错说没有gcc,然后查了一下,发现还得先装这玩意才行,嗯,装之,这个费了个大半天。同时还检查aotoconfig,make之类的东东,结果no,没太在意,也不知道有什么影响。装了gcc之后,能安装了,不过由于某种原因,build failed,eixting,一直没成功。看了很多资料,试了各种办法,还是不行,几乎绝望了。可气的是,linux下网都上不了,并且关机都不正常了,怒气不打一处来,可能是瞎试瞎搞,把系统搞坏了吧,百感交集啊,想了一下,决定重装。

  现在看来重装效果还是很好的,后来再装gcc时,系统说already installed了,这个估计是在安装时得选择好。这时再装时,那些个aotoconfig,make之类的东东,都检查yes,这个也是在安装的时候配置好了的吧。具体的安装过程如下:

  打开终端:
  输入:cd /var/tmp..................................................到压缩包所在的文件夹

  然后在终端中输入:
  tar xvfz ns-allinone-2.31.tar.gz

  回车,就可以看到解压过程,Waiting........................

  解压完成后输入:
  ls

  回车,看看是不是多了一个叫做ns-allinone-2.28的文件夹!

  输入:cd ns-allinone-2.31

  输入:ls -a

  回车后就可以看到一个绿色的名字为install的文件.

  然后在终端中输入:./install

  OK,NS开始安装了

  然后waiting……我的celeron500Mhz+128M的机子还真不是一般的慢噢!不过现在的机子肯定要快很多了!

  在这个过程中,如果缺少了gcc等编译器,就会出错了,甚至NS根本就装不了,所以在本文的开头我一再强调一定要安装好开发工具里面的组件!NS安装的大部分问题都出现在这里的!

  OK,安装终于完成了!

  这时不要把窗口关了,仔细的看上面的提示,设置路径!上面都有提示,你可以把那些路径复制下来,省得手工输入的麻烦!

  安装基本上就快完成了。

  接下来还得设置好PATH等变量!

  新建一个终端,注意这个时候应该在root目录下,输入:gedit .bashrc

  回车。

  是不是出来了文件编辑了?

  然后在文末添加如下语句:
  export PATH="$PATH:/var/tmpj/ns-allinone-2.31/bin:/var/tmp/ns-allinone- 2.31/tcl8.4.5/unix:/var/tmp/ns-allinone-2.31/tk8.4.5/unix"

  export LD_LIBRARY_PATH="$LD_LIBRARY:/var/tmp/ns-allinone-2.31/otcl-1.9:/var/tmp/ns-allinone-2.31/lib"

  export TCL_LIBRARY="$TCL_LIBRARY:/var/tmp/ns-allinone-2.31/tcl8.4.5/library "

  我说明一下:gedit是一个文本编辑器,你也可以用其他的文本编辑器来编辑.编辑的文件是.bashrc是一个隐藏的文件.用gedit .bashrc就可以直接打开了,而不用显示隐藏文件再找.bashrc的文件,我在这个论坛上看到很多人就为找这个文件而花了很多时间.如果你没安装 gedit,那么请你用vi .bashrc代替.VI也是一个文本编辑器,绝大多数的Linux发行版本里面都带的。其实都差不多,我在这里就不介绍了。

  如果你想自己手工输入路径,那么请注意,两个路径之间请用:号,而不是,号。输路径的时候请仔细!

  好了,到这一步NS已经安装成功了,新建一个终端,输入NS并回车,如果出现%,那么恭喜NS is OK。
文章评论

共有 0 条评论