communication - 在 UnetStack 中实现 TDMA

标签 communication unetstack

我想为水下通信网络模拟一个简单的 TDMA 协议(protocol),其中每个节点定期进行传输。我如何在 UnetStack 中实现这一点?

UnetStack document on MAC给出了简单和节流 MAC 协议(protocol)的示例,但如何让节点定期传输?

最佳答案

使用 UnetStack 编写的典型代理可以添加 new behaviors to itself .

为了按照类似 TDMA 协议(protocol)的节点的要求定期进行传输,您的代理可以指示 PHY agent定期传送。这可以使用股票行情来实现。

一个TickerBehavior在调用之间以指定的延迟重复运行。可以使用以下代码将 TickerBehavior 添加到您的代理:

add new TickerBehavior(1000*slotlength, {
   phy << new TxFrameReq(to: nodeAddress, type: Physical.DATA)
})

其中slotlength 以秒为单位,nodeAddress 是您尝试将信息传输到的节点的地址。欲了解更多信息TxFrameReq you can check out the documentation .

关于communication - 在 UnetStack 中实现 TDMA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41753544/

相关文章:

audio - 集成视频/音频的服务或解决方案

java - 尝试使用 eclipse 从 Arduino 读取数据时收到不完整的消息?

unetstack - 使用代理将路由添加到路由表中

java - 使用 UnetSocket 在 unetstack 中创建客户端和服务器节点之间的通信

unetstack - 使用 JSON 远程访问 Unet 调制解调器

intellij-idea - 在 Intellij IDEA 中配置 UnetStack

communication - 管理数字干扰的有效方法

wcf - 如何: Responsive available Wcf duplex communication

javascript - 通信 JQuery 和 C#

python - UnetSocket send() 返回一个 Nonetype 对象