多跳网络数据传输前如何发起路由发现?

How to initiate route discovery before data transmission in multihop network?

我正在研究多跳传感器网络中的 X-MAC。我使用 AODV 作为路由协议。在 运行 时间内,一开始,我可以看到传感器节点在任何路由发现之前开始发送前导码。因此,在建立任何路由之前,这些前导码都是免费发送的。 我也研究过和csma/ca同一个网络,先建立路由,再由节点发起传输

根据OmNET++组的建议,我尝试了以下方法,但没有解决问题。

**.useHelloMessages = true

请教如何配置X-MAC,使仿真开始时,节点先建立路由,再发送preamble进行数据通信?

谢谢。

模拟开始时,没有路线。因此,当其中一个节点有一些数据要发送时(例如,它们包含生成 TCP 数据包的 TCP 应用程序),AODV 会启动到数据目的地(TCP 数据包)的路由发现。 Aodv 通过发送 Aodv 路由请求消息 (AodvRreq) 来完成此路由发现。该消息表明该节点想要发现到数据目的地的路由。

Aodv 在 INET 中作为应用程序实现,它发送封装在 UDP 数据包中的路由请求(和其他)消息。

数据包(aodv 或数据)沿着协议栈向下传输到 XMAC 进行传输。

因此,从 XMAC 的角度来看,Aodv 路由请求消息(由想要发送 TCP 数据的节点触发)本身被视为数据(因为它使用 UDP)。为了发送数据,XMAC 首先发送前导码。

(已编辑答案以获得更多详细信息)