IoT網(wǎng)關(guān)協(xié)議的HTTP和MQTT有什么區(qū)別?

在物聯(lián)網(wǎng)世界中,典型的網(wǎng)絡(luò)架構(gòu)如下。首先,終端設(shè)備或傳感器收集信號(hào)或信息。對(duì)于無(wú)法訪問(wèn)Internet或Intranet網(wǎng)絡(luò)的設(shè)備,傳感器首先將檢測(cè)到的信息發(fā)送到IoT網(wǎng)關(guān),然后網(wǎng)關(guān)將信息發(fā)送到服務(wù)器。某些設(shè)備具有自己的訪問(wèn)網(wǎng)絡(luò)功能,例如可以直接連接到服務(wù)器的手機(jī)。

IoT網(wǎng)關(guān)協(xié)議的HTTP和MQTT有什么區(qū)別?

有時(shí),為了解壓縮服務(wù)器,我們可以選擇一些輕量級(jí)的通信協(xié)議,例如MQTT代替HTTP,那么為什么選擇MQTT代替HTTP?由于HTTP協(xié)議的標(biāo)頭相對(duì)較大,并且每次發(fā)送數(shù)據(jù)時(shí),都會(huì)發(fā)送一個(gè)數(shù)據(jù)包以連接/斷開(kāi)TCP,因此發(fā)送的數(shù)據(jù)越多,總數(shù)據(jù)流量就越大。

MQTT的標(biāo)頭相對(duì)較小,它還可以在保持TCP連接的同時(shí)發(fā)送和接收下一個(gè)數(shù)據(jù),因此與HTTP相比,它可以抑制總數(shù)據(jù)流量。

另外,在使用MQTT時(shí),還應(yīng)注意這一點(diǎn),在保持MQTT的TCP連接的同時(shí),應(yīng)發(fā)送和接收數(shù)據(jù)。因?yàn)镸QTT通過(guò)維護(hù)TCP連接來(lái)減少通信量,所以如果每次執(zhí)行數(shù)據(jù)通信時(shí)都斷開(kāi)TCP連接,則MQTT將在每次發(fā)送數(shù)據(jù)時(shí)執(zhí)行連接和斷開(kāi)處理,就像HTTP一樣,但是結(jié)果會(huì)增加通信量。