我们的静脉模拟存在问题。我们正在尝试在演示场景(TraCIDemo11p)中实现有关消息传播的算法,而我们的问题是发送WSM消息。我们想将特定消息从节点(例如汽车)发送到特定RSU。节点通过收集信标消息来了解其邻居,并将发送方的ID和类型存储到缓冲区中。问题是当我们要将消息发送到ID 7的RSU时,如果存在ID 7的节点,则会发送两条消息,因为它们都具有ID7。在哪里可以更改给定的ID隐式地,以便我们可以区分TraCIDemo11p.cc中的节点和RSU?
因为它们是两个不同的模块,所以节点存储在数组node []中,而RSU存储在数组rsu []中,这就是为什么它们可以具有相同的ID或索引的原因。
我们已经尝试通过在TraCIDemoRSU11p的initialize方法中更改myId属性来进行尝试,但是当消息即将发送时,收件人将不会接收到该消息。通过分析汽车收到的信标消息,我们可以知道RSU具有修改后的ID,例如50。然后,我们使用populateWSM方法并将rcvID参数设置为50,但是该消息从未在RSU上收到。
我们正在使用静脉4.7.1。和OmNet ++ 5.4.1。