由SUMO场景生成NS2/NS3需要的踪迹文件

1.前提是你已经有一个sumo的场景实例了;你也可以使用sumo自带的场景实例;

   假设已经有circles.net.xml,  circles.rou.xml,   circles.sumocfg文件,并且该场景能够正常执行;

2.利用sumo工具输出场景的移动trace文件;

sumo -c circles.sumocfg --fcd-output sumoTrace.xml

3.使用traceExporter.py(在sumo安装路径sumo/tools目录里)把第二步中的trace文件转换为ns2/ns3能够使用的.tcl文件;

 ./traceExporter.py --penetration 1 --fcd-input /home/nh/sumo_try/shishi1/circlesTrace.xml --ns2mobility-output /home/nh/sumo_try/shishi1/circles_ns2mobility.tcl

 

 

4.在ns3中测试一下trace文件circles_ns2mobility.tcl的可用性;

   (1)把src/mobility/examples路径下的ns2-mobility-trace.cc文件复制到ns-3.25/scratch的目录下;

   (2)在ns2-mobility-trace.cc中添加头文件语句,添加如下语句:

                 #include "ns3/netanim-module.h";

   (3)在ns2-mobility-trace.cc中的Simulator::Stop (Seconds (duration));语句后添加如下语句:

                 AnimationInterface("animation1.xml");

  (4)然后在命令行执行如下命令,对ns2-mobility-trace.cc文件进行测试:

           nh@servernh:~/workspace/ns-3.25$ ./waf --run "ns2-mobility-trace --traceFile=/home/nh/workspace/ns-     

            3.25/circles_ns2mobility.tcl --nodeNum=1 --duration=100 --logFile=/home/nh/workspace/ns-3.25/scratch/shishi1.log"

  (5)在/home/nh/workspace/ns-3.25/build/scratch下会找到ns2-mobility-trace的可执行文件,然后执行该文件:

nh@servernh:~$ ./ns2-mobility-trace --traceFile=/home/nh/workspace/ns-3.25/circles_ns2mobility.tcl --nodeNum=1 --duration=100 --logFile=/home/nh/workspace/ns-3.25/scratch/shishi1.log

会在/home/nh/workspace/ns-3.25/build/scratch目录下生成animation1.xml文件;

  (6)最后执行nh@servernh:~$ NetAnim,启动NetAnim,然后打开animation1.xml文件,可以对模拟的网络场景进行查看;

你可能感兴趣的:(life)