2種傳輸協(xié)議 HTTP協(xié)議是Web聯(lián)網(wǎng)的基礎(chǔ),也是應(yīng)用最為廣泛和流行的協(xié)議,HTTP連接最顯著的特點(diǎn)是客戶端發(fā)送的每次請(qǐng)求都需要服務(wù)器回送響應(yīng),在請(qǐng)求結(jié)束后,會(huì)主動(dòng)釋放連接。從建立連接到關(guān)閉連接的過程稱為“一次連接”。
MQTT是一種基于發(fā)布/訂閱模式的“輕量級(jí)”通訊協(xié)議,該協(xié)議構(gòu)建于TCP/IP協(xié)議上,由IBM在1999年發(fā)布。MQTT最大優(yōu)點(diǎn)在于,用極少的代碼和有限的帶寬,為連接遠(yuǎn)程設(shè)備提供實(shí)時(shí)可靠的消息服務(wù)。
2種傳輸協(xié)議的區(qū)別
● 吞吐量不同
根據(jù)3G網(wǎng)絡(luò)的測(cè)量結(jié)果MQTT的吞吐量比HTTP快93倍。此外,與HTTP相比,MQTT協(xié)議確保了高傳輸。
● 架構(gòu)不同
MQTT適用于發(fā)布、訂閱模型;HTTP適用于請(qǐng)求、響應(yīng)模型。
● 協(xié)議設(shè)計(jì)不同
MQTT協(xié)議的設(shè)計(jì)是以數(shù)據(jù)為中心的;HTTP協(xié)議的設(shè)計(jì)是以文檔為中心的。
● 復(fù)雜性和消息大小不同
MQTT具有相當(dāng)短的規(guī)范。只有CONNECT,PUBLISH,SUBSCRIBE,UNSUBSCRIBE和DISCONNECT類型對(duì)開發(fā)人員很重要。而HTTP規(guī)范要長(zhǎng)得多。
MQTT具有非常短的消息頭,并且最小的包消息大小為2個(gè)字節(jié)。通過HTTP協(xié)議使用文本消息格式允許它組成冗長(zhǎng)的標(biāo)題和消息。它有助于消除麻煩,因?yàn)樗梢员蝗祟愰喿x,但同時(shí)它對(duì)于資源受限的設(shè)備是不必要的。
● 標(biāo)頭大小、端口號(hào)不同
MQTT是2個(gè)字節(jié),適用于1883端口;HTTP有8個(gè)字節(jié),適用于80或8080端口。
● 數(shù)據(jù)安全不同
MQTT通過SSL/TLS提供數(shù)據(jù)安全;HTTP不提供安全性,但Https就是為此而構(gòu)建的。