怎么使用NS3和怎么使用NS3进行图形化模拟
先进入到ns-allinone-3.27的目录下,
netanim是用来图形仿真的,ns-3.27一般是用来写源文件和编译,输出文字结果的。
然后进入ns-3.27目录下,examples是官方给我们的一些例子,其中的tutorial是给我们辅助的例子。scratch就是脚本的意思,所有的文件都需要放到这个文件夹下才可以编译执行。编译的时候不能进入scratch里面去执行,因为我们需要用到waf.py这个文件。所有终端要在ns-3.27目录下打开。
这里我用first.cc来示例一下。
先将example/tutorial/first.cc文件copy到scratch/myfirst.cc下,才可以编译。
#赋值到scratch下
cp examples/tutorial/first.cc scratch/myfirst.cc
#进行整体的编译,尽量使用sudo因为可能会有一些权限问题
sudo ./waf
#开始运行文件,注意这里的myfirst文件不需要再加.cc后缀,因为是执行已经编译的文件
sudo ./waf --run scratch/myfirst
执行完毕可以看到以下结果。
接下来进行图形化的模拟。
先进入myfirst.cc进行修改,加上#include "ns3/netanim-module.h"
这个模块。
然后在文件最后的Run前面加上AnimationInterface anim("myfirst.xml");
因为模拟需要用到一个xml文件,我们需要把这个xml文件生成出来。保存。
然后重新编译,执行。可以看到该目录下已经生成了.xml文件。
然后进入netanim-3.108目录下,打开终端执行./NetAnim
就会打开仿真界面,打开我们刚刚生成的.xml文件。
然后就可以看到仿真结果。
可以把背后的网格线去掉
调节点的大小。
具体如何使用可以自行去了解。
模拟过程点击play
这就是用ns3的大致的模拟过程。