1
我想模擬一個簡單的TDMA協議,用於水下通信網絡,其中每個節點定期發送數據。我如何在UnetStack中執行此操作?在UnetStack中實現TDMA
UnetStack document on MAC給出了簡單和節流MAC協議的例子,但我怎樣才能讓節點定期傳輸?
我想模擬一個簡單的TDMA協議,用於水下通信網絡,其中每個節點定期發送數據。我如何在UnetStack中執行此操作?在UnetStack中實現TDMA
UnetStack document on MAC給出了簡單和節流MAC協議的例子,但我怎樣才能讓節點定期傳輸?
使用UnetStack編寫的典型代理可以添加new behaviors to itself。
爲了按照TDMA協議中節點的要求定期傳輸,您的代理可以指示PHY agent定期傳輸。這可以使用股票行爲來實現。
A TickerBehavior以調用之間的指定延遲重複運行。一個TickerBehavior可以添加到您的代理與此代碼:
add new TickerBehavior(1000*slotlength, {
phy << new TxFrameReq(to: nodeAddress, type: Physical.DATA)
})
其中slotlength
爲秒,nodeAddress
是你正試圖將信息傳送到該節點的地址。有關TxFrameReq you can check out the documentation的更多信息。