网络模拟器3的新功能

时间:2016-06-21 16:28:13

标签: networking wifi simulation ns-3

我最近开始学习NS3,所以我在website阅读了教程,但是我遇到了一些问题。

例如,我尝试创建一个小型模拟,其中有一些节点,使用wifi,以不同的速度向同一方向移动(基本上是一些带有一些汽车的道路),但我发现只是一些随机模型。是否有一个模型可以帮助我解决这个问题(或者我必须自己改变位置)?

另一个是创建一个小协议。每个节点必须向其他节点发送某个消息(带有一些额外字段的自定义标头),但是节点应该只读取第一个消息并回复,而它必须忽略其他消息。我该怎么办?

2 个答案:

答案 0 :(得分:0)

欢迎来到NS3 :)

一个好的起点可能是检查NS3源文件中的可用示例。

在ns3基目录中有一个包含多个方案的“example”文件夹。 “ns3 / src / [module] / examples”目录中的每个模块也有多个示例。

答案 1 :(得分:0)

您可以使用SUMO(模拟城市机动性)跟踪文件来创建车辆运动。然后在您的代码中包含SUMO跟踪文件,如下所示:

  #include "ns3/ns2-mobility-helper.h"
...
   std::string tracefile= "/home/mert/repos/vanet/highway_s/mobility.tcl";                
...
   // Create nodes and install mobility to all created nodes
   ueVeh.Create (numVeh);
   ueAllNodes.Add (ueVeh);

   Ns2MobilityHelper ns2 = Ns2MobilityHelper(tracefile);
   ns2.Install();

如果您不想使用SUMO,请使用计划的定期函数将新位置加载到节点。

对于第二个问题: 过滤收到的数据包取决于您的应用程序。在示例目录中有很多示例,在ns3 googlegroups中也有类似的问题。如果您指定示例,那么我可以指导。