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