NetAnim参考链接:
https://www.nsnam.org/wiki/NetAnim_3.108
1.生成结点路由表部分
文档说的很明白,用法如下:
(1).导入头文件 ,在程序头部添加以下代码
#include "ns3/netanim-module.h"
在 Simulator::Stop ()语句前添加以下代码
AnimationInterface anim ("udpclientserver.xml"); //生成动画文件
anim.EnableIpv4RouteTracking ("udpcs.xml", Time(Seconds(1)), Time(Seconds(totalTime)), n); //默认每隔5秒生成一次路由表
解释: n表示结点容器,totaltime表示总仿真时间,程序运行后会生成一个udpcs.xml文件。其中的内容:从1s开始,每隔5s生成一次各结点的路由表,结束于totaltime(总仿真时间)
(2). 用NetAnim打开
使用过程:切换到Stats-->下拉列表选择Routing-->点击打开文件按钮(类似于文件夹的按钮)
选中udpcs.xml文件,成功导入后会看到类似以下界面-->拖动sim Time 会看到不同时
刻的结点路由表
2. 解析Flow-monitor文件部分
官方链接:Flow Monitor — Model Library
本部分是对*/ns-3.29/examples/tutorial目录下的third.cc作改动,生成flow-monitor文件third.xml
(1) 导入头文件 ,在程序头部添加以下代码
#include "ns3/flow-monitor.h"
#include "ns3/flow-monitor-module.h"
(2)在 Simulator::Stop ()语句前添加以下代码
Ptr<FlowMonitor> flowMonitor;
FlowMonitorHelper flowHelper;
flowMonitor = flowHelper.InstallAll();
(3)在 Simulator::Run ()语句后添加以下代码
flowMonitor->SerializeToXmlFile("third.xml", true, true);
(4)使用过程:
切换到Stats-->下拉列表选择Flow-monitor-->点击打开文件按钮(flowMonfile)选中third.xml文件,成功导入后会看到类似以下界面