常見的物聯網通信協議

1 TCP

TCP 是一種面向連接的、可靠的、基於字節流的傳輸層通信協議。

特點:

  • 面向連接
  • 可靠通信方式
  • 基於流的方式

缺點:

  • 花銷大
  • 設備必須時刻保持連接狀態(功耗大)
  • 消耗時間比較久

2 UDP

用戶數據報協議(UDP,User Datagram Protocol)支持一個無連接的傳輸協議。

特點:

  • 不需要連接
  • 速度快
  • 不需要應答

缺點:

  • 不可靠

TCP和UDP比較:
在這裏插入圖片描述
UDP更適合對功耗要求低、可靠性要求不算高的場合。


3 HTTP

HTTP是基於客戶/服務器模式,且面向連接的(建立在TCP之上)。典型的HTTP事務處理有如下的過程:

  • 客戶與服務器建立連接;
  • 客戶向服務器提出請求;
  • 服務器接受請求,並根據請求返回相應的文件作爲應答;
  • 客戶與服務器關閉連接。

缺點:

  • 必須由客戶端主動向服務器發送請求,服務器無法主動通知客戶端。
  • 要實現HTTP需要更多的硬件資源(硬件成本更高)。

結論: 不適合物聯網。


4 MQTT

MQTT是一個基於客戶端-服務器的消息發佈/訂閱傳輸協議(TCP)。

機器與機器(M2M)通信和物聯網(IoT)。其在,通過衛星鏈路通信傳感器、偶爾撥號的醫療設備、智能家居、及一些小型化設備中已廣泛使用。

特點:

  • 特別適合於網絡代價昂貴,帶寬低、不可靠的環境。
  • 能在處理器和內存資源有限的嵌入式設備中運行。
  • 使用發佈/訂閱消息模式,提供一對多的消息發佈,從而解除應用程序耦合。
  • 使用 TCP/IP 提供網絡連接。
  • 提供Last Will 和 Testament 特性通知有關各方客戶端異常中斷的機制。

5 CoAP

CoAP(Constrained Application Protocol)是一種在物聯網世界的類web協議,名字翻譯來就是“受限應用協議”。

  1. COAP協議網絡傳輸層爲UDP。
  2. 它基於REST,server的資源地址和互聯網一樣也有類似url的格式,客戶端同樣有POST,GET,PUT,DELETE方法來訪問server,對HTTP做了簡化。
  3. COAP是二進制格式的,HTTP是文本格式的,COAP比HTTP更加緊湊。
  4. 輕量化,COAP最小長度僅僅4B,一個HTTP的頭都幾十個B了。
  5. 支持可靠傳輸,數據重傳,塊傳輸。 確保數據可靠到達。
  6. 支持IP多播, 即可以同時向多個設備發送請求。
  7. 非長連接通信,適用於低功耗物聯網場景。

COAP和MQTT的比較:
在這裏插入圖片描述
MQTT協議是保持連接的,所以及時性相對很好;
CoAP協議是無連接響應式通訊,因此不能主動推送,要等客戶端訪問纔可以攜帶回去,及時性相對較差。


6 LwM2M

LwM2M的全稱是Lightweight Machine-To-Machine,它的名稱裏面包含了這麼兩個重要含義:
1)這個協議是輕量級的;
2)這個協議適用於物聯網設備。

LwM2M是適用於資源有限的終端設備管理的輕量級物聯網協議。

在這裏插入圖片描述


參考資料:

  1. 5G物聯網雲平臺智能家居項目30天搞定
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章