CentOS 5.0下安装NS-2

背景:
      最近完成了一套sip系统,想要测试通话语音质量。运用实际网络来测试很好,但是这个需要很大的成本。这时就需要一套能够仿真实际网络传输的软件来帮忙!
 
实施:
      最后找到两款软件能够胜任:NIST net和NS-2。但是,它们都是运行在linux下的,而且NIST net 还要求重新编译内核,NS-2绝大多数介绍都是安装在RedHat 9.0下,要不就在Windows下安装一个系统仿真器Cygwin,这个Cygwin的安装受到从各个站点下载安装包的影响。安装速度奇慢!最后选择在现有的CentOS 5.0下安装。
 
步骤:
1.从 http://www.isi.edu/nsnam/dist/下载ns-allinone-X.XX.tar.gz
2.以root登录CentOS,解压 ns-allinone-2.27.tar.gz:tar xvfz ns-allinone-2.29.tar.gz,即生成/home/ns2/ ns-allinone-2.9。
3.修改文件:
   (1)修改/home/ns2/ ns-allinone-2.9/nam-1.11/agent.h中的第73行,将NULL改为0。
   (2)在ns-allinone-2.29目录下
 文件名  行数  修改或删除
 ns-2.29/sctp/sctp.c  705  删除SctpAgent::
 ns-2.29/mobile/god.h  88.93.98.101  删除Vector::
 ns-2.29/tcp/tcp-sack-rh.cc 68  删除SackRHTcpAgent::
 ns-2.29/pgm/pgm_agent.cc 307   删除PgmAgent::
 ns-2.29/pgm/pgm_sender.cc 189   删除PgmSender::
 ns-2.29/pgm/pgm_receiver.cc 186   删除PgmReceiver::
 nam-1.11/parser.h  97.98  删除Parser::
 nam-1.11/node.h  226  删除Node::
 nam-1.11/netgraph.h    删除NetGraph:
 ns-2.29/indep-utils/cmu-scen-gen/setdest/setdest.h  26.31.36.39  删除vector::
 ns-2.29/dsr/dsrgent.cc  219  添加void XmitFlowFailureCallback(Packet *pkt, void *data);
void XmitFailureCallback(Packet *pkt, void *data);
 ns-2.29/diffsuion/diffsuion.cc  400  添加void XmitFailedCallback(Packet *pkt, void *data);
 ns-2.29/diffsuion/omai_mcast.cc  361  添加void OmniMcastXmitFailedCallback(Packet *pkt, void *data);
     
  (3)再修改一下ENV,,将下面的加到/etc/profile的最后
NSPATH=$HOME/ns-allinone-2.29
PATH=$NSPATH/bin:$NSPATH/tcl8.4.11/unix:$NSPATH/tk8.4.11/unix:$PATH
LD_LIBRARY_PATH=$NSPATH/otcl-1.11:$NSPATH/lib
TCL_LIBRARY=$NSPATH/tcl8.4.11/library
export NSPATH PATH LD_LIBRARY_PATH TCL_LIBRARY
4. 在ns-allinone-2.29目录下运行安装:./install 。
 
使用:
NS-2的使用要学习tcl脚本的编写,而且没有个把月是看不懂的,接下来的测试部分正在学习中...

你可能感兴趣的:(CentOS 5.0下安装NS-2)