內(nèi)蒙古德明電子科技有限公司產(chǎn)品解決方案 聯(lián)系電話:15384841043張工
誕生時(shí)間
TCP協(xié)議誕生于1974年冷戰(zhàn)期間。
MQTT誕生于1999年互聯(lián)網(wǎng)初期,TCP協(xié)議比MQTT協(xié)議誕生早了25年。
Ashton提出IoT概念也是在1999年,因此MQTT協(xié)議生逢其時(shí)。當(dāng)時(shí)MIT Auto-ID Labs的Kevin Ashton為了把寶潔的供應(yīng)鏈上的RFID標(biāo)簽和互聯(lián)網(wǎng)連接起來,在1999年第一個(gè)提出了IoT這個(gè)概念。
協(xié)議位置
TCP是OSI第四層的傳輸層協(xié)議。
MQTT是基于TCP的七層應(yīng)用層協(xié)議。
6.jpg
協(xié)議定位
TCP設(shè)計(jì)考慮的是面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。
MQTT則是在低帶寬高延遲不可靠的網(wǎng)絡(luò)下進(jìn)行數(shù)據(jù)相對可靠傳輸?shù)膽?yīng)用層協(xié)議。
設(shè)計(jì)思想
TCP的核心思想是分組交換。
MQTT的核心思想是簡單并適應(yīng)物聯(lián)網(wǎng)環(huán)境。
傳輸單位
TCP的傳輸單位是packet,當(dāng)應(yīng)用層向TCP層發(fā)送用于網(wǎng)間傳輸?shù)?、?位字節(jié)表示的數(shù)據(jù)流,TCP則把數(shù)據(jù)流分割成適當(dāng)長度的報(bào)文段,最大傳輸段大?。∕SS)通常受該計(jì)算機(jī)連接的網(wǎng)絡(luò)的數(shù)據(jù)鏈路層的最大傳送單元(MTU)限制。
MQTT的傳輸單位是消息,每條消息字節(jié)上限在MQTT Broker代理服務(wù)器上進(jìn)行設(shè)置,可以設(shè)置超過1M大小的消息上限。這樣,就可以用一條消息就發(fā)送上千條采集的數(shù)據(jù),或者比較大的設(shè)備陰影文件。
技術(shù)挑戰(zhàn)
TCP需要解決的問題是在IP包傳輸過程中,處理異構(gòu)網(wǎng)絡(luò)環(huán)境下的網(wǎng)絡(luò)擁塞、丟包、亂序、重復(fù)包等多種問題。
MQTT解決的問題是,在低帶寬高延遲不可靠的網(wǎng)絡(luò)下和資源有限的硬件環(huán)境內(nèi),進(jìn)行相對可靠的數(shù)據(jù)傳輸。
服務(wù)質(zhì)量
TCP是一個(gè)可靠的流傳輸服務(wù),通過ACK確認(rèn)和重傳機(jī)制,能夠保證發(fā)送的所有字節(jié)在接收時(shí)是完全一樣的,并且字節(jié)順序也是正確的。
MQTT提供三種可選的消息發(fā)布的QoS服務(wù)等級(jí)。MQTT客戶端和MQTT代理服務(wù)器通過session機(jī)制保證消息的傳輸可靠性。開發(fā)人員可以根據(jù)業(yè)務(wù)需要選擇其中一種。
no form by the id.
聲明:本文內(nèi)容及配圖由作者撰寫及網(wǎng)上轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,文章及其配圖僅供學(xué)習(xí)之用,如有內(nèi)容圖片侵權(quán)或者其他問題,請聯(lián)系本站作侵刪。