Flying Adhoc Network Simulation (FANET) using NS3
上述网站已经给了很完整的教程和源代码,但示例教程是以ns3.31为运行环境的,对于之前搭建的3.38版本会有一些报错。
首先进入目录
cd ns-allinone-3.38/ns-3.38
1. 网站上使用
./waf run scratch/fanetex.cc
我也曾尝试使用这个./waf,差了很多资料失败了,还是使用./ns3、
./ns3 run scratch/fanetex.cc
2. 出现报错:
大概意思有两处发生报错,一个是“WIFI_PHY_STANDARD_80211b",另一处是”Default“部分。
原因在于3.31版本的语法与3.38的有所出入:
(1)WIFI协议的表示方法发生改变
源代码
wifi.SetStandard (WIFI_PHY_STANDARD_80211b);
修改为
wifi.SetStandard (WIFI_STANDARD_80211b);
(2)创建Yans和PHY对象不需要原代码那样一长串的定义
源代码
YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default ();
YansWifiChannelHelper wifiChannel = YansWifiChannelHelper::Default ();
修改为
YansWifiPhyHelper wifiPhy;
YansWifiChannelHelper wifiChannel;
3. 再次运行
./ns3 run scratch/fanetex.cc
运行完毕目录中会生成.tr、.cap 、.xml文件,其中.tr数据量较大,tracemetrics分析会很费时间按,cap文件使用wireshark观察,xml使用NetAnim打开
4. 我将生成的xml文件命名为Fanetex2D和Fanetex3D,以2D为例
cd ..
cd netanim-3.109
./NetAnim