2017-05-29 110 views
-1

我們怎樣才能知道哪個節點和哪個節點接收到哪條消息?當一輛汽車播放信息時,我想知道誰收到了它。有什麼方法可以瞭解全球知識嗎? 我確實看到了數據包流量的日誌,但我怎麼能包含更多的信息到相同的?以及如何在Express模式下啓用它?如何知道每個節點的狀態/統計om veins/omnet?

回答

2

這在廣播環境中很難確定,但是最好的機會是創建一個額外的模擬模塊(或只是一個類)。

PacketMonitor可以表現得像一個甲骨文如果你提供packetSent()packetReceived()方法。

分別在發送和接收消息時,您需要爲每個消息分配ID,然後使用上述方法在PacketMonitor的表格式數據結構中「註冊」消息。

這不是一個非常複雜的解決方案,但它需要適當的設計和一些額外的想法來捕捉所有潛在的情況。

+0

謝謝您的評論。我也想過類似的東西,但是在發送消息超過10000時存儲消息ID,我正在考慮像在數據包通信窗口中顯示發送和接收的消息ID一樣。另外,有沒有辦法在快速模式下啓用某些日誌? – Sam1324

+0

正如[手冊](https://omnetpp.org/doc/omnetpp/manual/#sec:simple-modules:signal-based-statistics)所述,最好的方法是使用OMNeT ++統計框架。這允許您爲任何模擬生成輸出,並且它將比手動記錄快幾個數量級。儘管如此,這取決於你想要對結果做什麼。 OMNeT ++已經爲您提供了唯一的消息標識符('beacon-> getTreeId()')。 –

+0

@RensvanderHeijden你使用哪種版本的OMNeT ++,要求'getTreeId()'。爲了將來的參考:我已經使用了在創建時嵌入到每個AirFrame消息中的'getId()':'frame-> setId(world-> getUniqueAirFrameId());''''''' – user4786271

相關問題