IoT中的WiFi Mesh 網絡


https://mp.weixin.qq.com/s/3LtD0u2HlJieL-KLwVXrbQ

 

 

4 針對IoT應用的WiFi mesh網絡

 

4.1 通過多路由器擴展出的mesh網絡

 

 

這種網絡架構剛剛已經列出,也可以部署給IoT節點來使用,有三部分組成,gateway(由其中一個wifi  mesh路由器充當),mesh 路由器(即WiFi mesh路由器),以及 IoT節點(client)。

也有人使用這種方式做過實驗,結果如下:

  • 硬件:TP-LINKMR3020

  • WiFi 客戶端使用的模塊:ESP8266

  • 測試:將采集到的數據通過MQTT發送到internet以及通過手機訪問Web來產生流量。

 

測試10次,連續發送數據4分鍾,結果如下:

 傳輸速率測試(gateway附近以及較原距離)

 

延時以及丟包統計

 

 4.2  樂鑫 WiFi Mesh方案

 ESP-Mesh方案

 

 

 網絡由根節點,中間節點和葉子節點組成:

 

 

  • 根節點:根節點是網絡中的最高節點,並且是ESP-MESH網絡和外部IP網絡之間的唯一接口。根節點連接到常規Wi-Fi路由器,並將去往/來自外部IP網絡的數據包中繼到ESP-MESH網絡內的節點。ESP-MESH網絡中只能有一個根節點,並且根節點的上游連接只能與路由器建立。參考上圖,節點A是網絡的根節點。

  • 葉子節點:葉子節點是不允許具有任何子節點(無下游連接)的節點。因此,葉節點只能發送或接收自己的數據包,而不能轉發其他節點的數據包。如果一個節點位於網絡的最大允許層上,則將其分配為葉節點。這樣可以防止節點形成任何下游連接,從而確保網絡不會增加額外的層。由於任何下游連接都需要softAP接口,因此某些沒有softAP接口的節點(僅工作站)也將被分配為葉節點。參考上面的圖,節點L / M / N位於網絡最大允許層上,因此已經被分配為葉節點。

  • 中間父節點:既不是根節點也不是葉節點的連接節點是中間父節點。中間父節點必須具有單個上游連接(單個父節點),但可以具有零個到多個下游連接(零個到多個子節點)。因此,中間父節點可以發送和接收數據包,但也可以轉發從其上游和下游連接發送的數據包。參考上圖,節點B到J是中間父節點。沒有下游連接的中間父節點(例如節點E / F / G / I / J)不等同於葉節點,因為將來仍允許它們形成下游連接。

  • 空閑節點:尚未加入網絡的節點被分配為空閑節點。空閑節點將嘗試在適當的情況下與中間父節點形成上游連接,或嘗試成為根節點(請參閱自動根節點選擇)。參考上圖,節點K和O是空閑節點。

 

路由表

ESP-MESH網絡中的每個節點都將維護其單獨的路由表,該表用於將ESP-MESH數據包(請參閱ESP-MESH Packet)正確路由到正確的目標節點。特定節點的路由表將由特定節點的子網內所有節點的MAC地址(包括特定節點本身的MAC地址)組成。每個路由表在內部被划分為多個子表,每個子表對應於每個子節點的子網。

 

 

ESP-MESH路由表示例

以上面的圖為例,節點B的路由表將由節點B到I的MAC地址組成(即相當於節點B的子網)。節點B的路由表在內部分為兩個子表,兩個子表包含節點C到F和節點G到I(即分別相當於節點C和G的子網)。

 

ESP-MESH根據以下規則利用路由表確定是應向上游還是向下游轉發ESP-MESH數據包。

1.如果數據包的目標MAC地址在當前節點的路由表中,而不是當前節點,則選擇包含目標MAC地址的子表,並將數據包向下游轉發到與該子表相對應的子節點。

2.如果目標MAC地址不在當前節點的路由表之內,則將數據包向上游轉發到當前節點的父節點。重復這樣做將導致數據包到達根節點,路由表應包含網絡內的所有節點。

 

雙向數據流

下圖說明了ESP-MESH雙向數據流中涉及的各個網絡層。

 

由於使用路由表,ESP-MESH能夠完全在網狀層上處理數據包轉發。

 

ESP-Mesh性能:

測試條件:

  • 測試節點個數: 100

  • 最大下行可連接數6

  • 最大級聯層數: 6

 

 

以上性能是樂鑫官網的數據,也有人測試了使用10個和16個節點組成的ESP8266 mesh網絡的性能:

網絡拓撲結構如下:

 

傳輸速率結果如下:

 

表1列出了平均數據速率測量結果。

例如,在有效載荷為1500字節時,發送方程序設定為每秒發送200條消息。實際上,它只能每秒發送149.6條消息。這是因為載荷太大,ESP8266資源受限,無法處理應有的任務。

 

最后結論:

  • 只要兩個節點的網絡,1跳的延遲是2.49ms,節點增多延遲會增大

  •    在16個節點的網絡中,當有效數據分別是10和4400字節時,接收端最大傳輸速率461字節/秒和58字節/秒
  •    當payload大於4400字節時,數據會損壞和不完整。
  • ESP8266可以應用於IoT。

 

5 未來

盡管WiFi Mesh有很多缺陷,以及沒有統一的標准,但WiFi mesh網絡在IoT應用中仍然非常值得期待。

 

關注公眾號


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM