HTTP作為當(dāng)下使用最為廣泛的協(xié)議之一,但隨著物聯(lián)網(wǎng)行業(yè)的發(fā)展,MQTT在過去的幾年也受到了大量物聯(lián)網(wǎng)開發(fā)人員的青睞。下面我們就分別對HTTP及MQTT進(jìn)行比較分析,揭秘誰才是物聯(lián)網(wǎng)開發(fā)的上上之選。
MQTT & HTTP 是什么?
首先我們先簡單的了解一下MQTT、HTTP協(xié)議是什么?
MQTT(消息隊列遙測傳輸)是ISO標(biāo)準(zhǔn)(ISO/IEC PRF 20922)下基于發(fā)布/訂閱范式的消息協(xié)議。該協(xié)議建立在TCP/IP協(xié)議之上,在1999年由IBM公司發(fā)布,目前已經(jīng)更新到V5.0版本。
發(fā)布/訂閱型消息協(xié)議模型為用戶提供彼此相互獨立的設(shè)備,也因此增加了整個系統(tǒng)的穩(wěn)定性。當(dāng)其中有一個客戶端出現(xiàn)故障時,整個系統(tǒng)依然可以正常工作。如圖1-1所示:
圖1-1
超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)是一個簡單的請求-響應(yīng)協(xié)議,該協(xié)議一般在TCP上運行。該協(xié)議指定了客戶端可能發(fā)送給服務(wù)器什么樣的消息以及得到什么樣的響應(yīng)。請求和響應(yīng)消息的頭以ASCII形式給出;而消息內(nèi)容則具有一個類似MIME的格式。
MQTT & HTTP 特性分析
01應(yīng)用場景分析
MQTT相對于HTTP而言,MQTT協(xié)議是為那些計算機(jī)性能低下受限,且工作在低帶寬,網(wǎng)絡(luò)不可靠的遠(yuǎn)程傳感器和控制設(shè)備通訊而設(shè)計的協(xié)議。而HTTP是適用于那些性能好一些的終端上,對設(shè)備的要求相對較高,所以并不適合M2M的場景。
02傳輸和速度分析
MQTT擁有更快的數(shù)據(jù)吞吐量,同時MQTT協(xié)議還確保了傳輸質(zhì)量。分別有三個級別的服務(wù)質(zhì)量提供:
一是:最多一次,保證盡力交付;
二是:至少一次,保證消息至少傳輸一次,但消息也可以多次傳輸;
三是:恰好一次,保證每一個消息只被對方接收一次。
MQTT協(xié)議簡潔、小巧、省電,開銷很?。ü潭ㄩL度的頭部是 2 字節(jié)),協(xié)議交換最小化,降低了網(wǎng)絡(luò)流量,這些都是HTTP所不具備的。
MQTT & HTTP 功能
下面我們用一張表來總結(jié)MQTT協(xié)議與HTTP協(xié)議的功能。如表1-1所示:
功能 | HTTP協(xié)議 | MQTT協(xié)議 |
低協(xié)議開銷 | 否 | 是 |
不穩(wěn)定網(wǎng)絡(luò)兼容性 | 否 | 是 |
低功耗功能 | 否 | 是 |
大連接 | 否 | 是 |
推送通知 | 是 | 是 |
客戶平臺差異 | 是 | 是 |
防火墻容錯 | 是 | 是 |
保密性 | 是 | 是 |
表1-1
綜上所述,在物聯(lián)網(wǎng)開發(fā)中,MQTT協(xié)議更加適合。主要原因是:MQTT速度快、開銷小省流量、擁有更低的功耗和硬件及帶寬要求,這些都是與物聯(lián)網(wǎng)開發(fā)完美契合的要點。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2900文章
44067瀏覽量
370263
發(fā)布評論請先 登錄
相關(guān)推薦
評論