Ubuntu下的NS3安装与入门

    NS3的开发旨在为网络研究和教育提供开放,可扩展的网络仿真平台。简而言之,NS3提供了分组数据网络如何工作和执行的模型,并为用户提供了进行模拟实验的模拟引擎。使用ns-3的一些原因包括进行更难或不可能用真实系统执行的研究,在高度可控的,可重现的环境中研究系统行为,以及了解网络如何工作。用户将注意到NS3中的可用模型集侧重于建模Internet协议和网络的工作方式,但NS3不仅限于Internet系统;一些用户正在使用ns-3来建模非基于互联网的系统。

    官方提供了相应的文档https://www.nsnam.org/ns-3-28/documentation/

Ubuntu下的NS3安装与入门_第1张图片
官方文档

安装NS3

1、安装依赖库

在安装NS3前需要安装一些依赖库,在安装库之前可以先更新一下apt

sudo apt-get update

安装依赖库

sudo apt-get install gcc g++ python python-dev   C++和python

sudo apt-get install mercurial   NS3代码维护使用的源码版本控制管理系统

sudo apt-get install bzr   运行python绑定ns-3-dev需要bazaar这个组件

sudo apt-get install gdb valgrind   调试工具

sudo apt-get install gsl-bin libgsl-dev libgsl23   支持更多精确WIFI模块的GNU Scientific Library (GSL)

sudo apt-get install flex bison libfl-dev  仿真必需的词法分析器和语法分析生成器

sudo apt-get install g++-3.4 gcc-3.4  Network Simulation Cradle (nsc) stacks需要gcc-3.4

sudo apt-get install tcpdump   读取pcap的packet traces

sudo apt-get install sqlite sqlite3 libsqlite3-dev   支持统计特性的数据库软件

sudo apt-get install libxml2 libxml2-dev   xml的配置存储软件

sudo apt-get install libgtk2.0-0 libgtk2.0-dev   基于GTK的配置系统

sudo apt-get install vtun lxc   在虚拟机and ns-3上测试

sudo apt-get install uncrustify   支持utils/check-style.py 代码风格检查程序

sudo apt-get install doxygen graphviz imagemagick   文档生成器

sudo apt-get install texlive texlive-extra-utils texlive-latex-extra

sudo apt-get install python-sphinx dia

sudo apt-get install python-pygraphviz python-kiwi python- - pygoocanvas libgoocanvas-dev   Gustavo’s ns-3-pyviz的可视化软件

sudo apt-get install libboost-signals-dev libboost-filesystem-dev   支持openflow 模块

sudo apt-get install openmpi*   支持基于 MPI的分布式仿真

2、安装NS3

    NS3可通过Tarballs和Bake两种方式进行安装,以下将以Tarballs为例:创建Tarballs目录、进入目录、下载压缩包、解压

mkdir tarballs

cd tarballs

wget http://www.nsnam.org/release/ns-allinone-3.28.tar.bz2

tar xjf ns-allinone-3.28.tar.bz2

解压完成以后目录如图所示:

Ubuntu下的NS3安装与入门_第2张图片
NS3目录

3、编译NS3

cd ns-allinone-3.28

./build.py 

cd ns-3.28

./waf distclean (清除整个build目录)

./waf configure --build-profile=debug --enable-examples --enable-tests(打开debug并开启例子及帮助)

./waf build 

Ubuntu下的NS3安装与入门_第3张图片
编译

4、测试

可通过运行./test.py -c core来进行测试

Ubuntu下的NS3安装与入门_第4张图片
测试


Ubuntu下的NS3安装与入门_第5张图片
测试

5、运行hello-simulator

hello-simulator相当于hello world程序

通过输入./waf --run hello-simulator运行


Ubuntu下的NS3安装与入门_第6张图片
运行结果

6、ERROR

6.1如果看不到输出

    如果看到Waf消息指示构建已成功完成,但未看到“Hello Simulator”输出,则可能是在Building with Waf部分中将构建模式切换为优化,但错过了更改回调试模式。 如果未看到“Hello Simulator”输出,请键入以下内容:

$ ./waf configure --build-profile=debug --enable-examples --enable-tests

6.2如果遇见program 'hello-simulator' not found的错误

Ubuntu下的NS3安装与入门_第7张图片
错误截图

    原因可能是没有启用示例,运行命令./waf configure --enable-examples --enable-tests

Ubuntu下的NS3安装与入门_第8张图片
启用示例

再次运行hello-simulator时会进行build,并输出结果。

Ubuntu下的NS3安装与入门_第9张图片
运行时需要build的情况

在接下来的章节中需要进行代码的编写,在此推荐使用VS Code来作为编写代码的IDE。具体的在Ubuntu上的安装方法,请参见VS Code安装。

你可能感兴趣的:(Ubuntu下的NS3安装与入门)