omn​​et - Inet - 哪个因素决定节点的传输顺序

时间:2015-04-16 12:08:49

标签: omnet++ transmission inet

我对传输顺序有一般性的疑问。在INET - > exapmles-> manetrouting-> dynamicNodeCreation中,它如何决定哪个节点应该启动信标传输。以及如何选择下一个节点进行传输。

我试图通过tic-toc示例,其中初始化函数中的getIndex()用于选择发送节点(例如txc10.cc)。但我还没有在INET示例中找到这样的功能。

有没有办法,我可以选择相应的信标传输节点作为我的信标占用地图矢量?

有没有办法,我可以选择信标传输的相应节点作为我的信标占用地图矢量。

我请求原谅因为不能全面解决这个问题。

1 个答案:

答案 0 :(得分:0)

我将以INET - > examples-> manetrouting-> dynamicNodeCreation为例来回答我的问题。当我在omnet中运行这个例子时,初始化之后的第一个事件(在运行时)是' beaconTimer'对于一个fixhost(在我的例子中是meshtest.fixhost2 [4] .wlan [0] .magmt)所以基本上它从mgmt子模块开始。 (如果在运行时检查任何单个节点的层次结构,它将是: - Delayunit - > wlan0和wlan0中的mgmt-> mac-> radio。mgmt的代码用inet-> source来编写 - > linklayer-> ieee80211-> mgmt-> Ieee80211MgmtAP.cc

现在在这个类的initialize函数中,有一个代码行scheduleAt(simTime()+uniform(0,beaconInterval) , beaconTimer)。这里uniform是Omnet定义的均匀分布函数并给出一个随机值,beaconInterval是下一个超帧开始的时间,beaconTimer是一个消息。该功能调度用于发送所有节点的信标的随机时间(分别通过它们自己的mgmt模块)。因此,无论哪个设备通过此统一功能获得最低值,都将启动信标发送。其他设备应该遵循相应的。

现在,如果我想以预先安排的方式发送信标,那么我将在同一模块中更改handleTimer函数,因为它为下一个事件提供了scheduleAt()函数。