为什么 DemoBaseApplLayer::myId 在 Veins 版本 4.7.1 和 5.0 中不同?

Why is DemoBaseApplLayer::myId different in Veins versions 4.7.1 and 5.0?

在 Veins 5.0 中,可从 TraCIDemo11p::initialize(int stage) 访问的 myId 成员指的是 NIC 的 OMNeT++ 模块 ID(例如 node[0].nic)。

在 Veins 4.7.1 中,myId 用于指代主机的 OMNeT++ 模块 ID(例如,node[0])。

为什么要更改?

由于 Veins 现在支持多个 NIC(以及通过 802.11p 的单播通信),因此使用每个 NIC 标识符来寻址应用层上的主机是有意义的。因此,这已成为 Veins 5.0 中的新默认设置。

确切的更改(以及如何还原它,如果需要)记录在版本历史记录中。可以访问它,例如,通过 https://github.com/sommer/veins/blame/veins-5.0/src/veins/modules/application/ieee80211p/DemoBaseApplLayer.cc#L83