MQTT,全名為( Message Queuing Telemetry Transport ),是一種年代并不算久遠(yuǎn)的通訊協(xié)議,起初就是為了網(wǎng)絡(luò)條件受限的環(huán)境而研發(fā)出來,所以本身就具備著低帶寬低開銷的特性,而且代碼量也小,而且本身MQTT是建立在TCP協(xié)議之上,并且對(duì)信息傳輸?shù)目煽啃赃M(jìn)行了更深度的保護(hù)。
所以,在嵌入式領(lǐng)域,MQTT通信協(xié)議已經(jīng)占據(jù)著無法替代的分量了,因?yàn)榇蠖鄶?shù)的嵌入式設(shè)備,都需要這樣的協(xié)議進(jìn)行數(shù)據(jù)交互,嵌入式設(shè)備的可用資源并不多,并且外掛的各種入網(wǎng)的手段,也比不得尋常的手機(jī)個(gè)人電腦,屬于是低網(wǎng)速的通信手段,并且對(duì)于消耗流量的4G/NB-IOT類設(shè)備,大量的流量消耗也是吃不消。
下面應(yīng)該說說MQTT協(xié)議深層的特性了。
1、一對(duì)多信息發(fā)布
首先,他是基于訂閱與發(fā)布的一種協(xié)議,所以他可以一對(duì)多地進(jìn)行消息發(fā)布,這樣的功能應(yīng)用場(chǎng)景非常多,局限性廣播能夠讓服務(wù)器靈活控制想要控制的那個(gè)設(shè)備,并且服務(wù)器可以提供多個(gè)可以訂閱的主題,這是極為關(guān)鍵的。
因?yàn)閷?duì)于服務(wù)器而言,接收數(shù)據(jù)并處理是核心任務(wù),但是當(dāng)設(shè)備的增多、設(shè)備功能行的增多,服務(wù)器處理邏輯將會(huì)幾何倍數(shù)增長(zhǎng),同樣是接收的數(shù)據(jù),也許是完全不同類設(shè)備上傳的完全不一樣的信息,所以當(dāng)可以提供多個(gè)訂閱主題與發(fā)布主題時(shí),這種邏輯上的差異性就能被區(qū)分開,給開發(fā)者帶來了很大的便利。
MQTT協(xié)議的第二個(gè)特性其實(shí)就是他基于了TCP/IP而生,注定它是靠上層的一個(gè)協(xié)議,現(xiàn)在接觸的其實(shí)大多都是基于TCP協(xié)議而開發(fā)的,但它其實(shí)是有基于UDP版本的,名為MQTT-SN,但大家都知道,TCP面向連接,而UDP不面向連接,所以基于不同的底層協(xié)議類型,MQTT展現(xiàn)的特性肯定也是不同的。
對(duì)于常用的MQTT(基于TCP)協(xié)議,他有一個(gè)很重要的保證消息可靠性的特性:QoS。
QoS分為三個(gè)等級(jí):
QoS 0其實(shí)相當(dāng)于MQTT沒有做額外信息保護(hù),因?yàn)楸旧硎腔?/span>TCP協(xié)議的,所以其消息可靠性完全依賴于TCP協(xié)議。而QoS 1,則是代表至少承諾會(huì)有一次發(fā)送給接收者,這是在MQTT層進(jìn)行的信息保護(hù),而不只是依靠TCP協(xié)議層。最后QoS 2,則是保證消息僅僅傳送到目的地一次。
因?yàn)閷?duì)于QoS 1,可能會(huì)因?yàn)橄]有反饋而多次發(fā)送,而接收方也可能收到多次消息,為此,QoS 2傳輸?shù)南в形ㄒ坏?/span>ID,帶有唯一消息 ID 的消息會(huì)存儲(chǔ)兩次,首先來自發(fā)送者,然后是接收者QoS 級(jí)別2 在網(wǎng)絡(luò)中具有最高的開銷,因?yàn)樵诎l(fā)送方和接收方之間需要兩個(gè)流。
目前MQTT協(xié)議應(yīng)用其實(shí)已經(jīng)十分廣泛,無論是嵌入式農(nóng)業(yè)、工業(yè)、基建設(shè)備領(lǐng)域,都有它的身影,但其本身是一種協(xié)議。
其實(shí)身為物聯(lián)網(wǎng)應(yīng)用中的數(shù)據(jù)傳輸一環(huán),和數(shù)據(jù)的無線傳輸手段有著同樣舉足輕重的作用,無論是4G無線模塊還是NB-IOT模塊還是WiFi模塊、lora模塊、藍(lán)牙模塊、zigbee模塊等,數(shù)據(jù)傳輸歸數(shù)據(jù)傳輸,協(xié)議卻是上層的靈魂,不同的協(xié)議有著不同的應(yīng)用場(chǎng)景,也承擔(dān)著不同的作用。
億佰特人每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的官網(wǎng)行了解,還有客服小姐姐在線答疑哦!
7 X 24 銷售服務(wù)熱線
4000-330-990深圳辦事處柯經(jīng)理:18218726658 南京辦事處葛經(jīng)理:17626012283
成都總部銷售經(jīng)理:
秦 科(無線模塊):18884314654 馮子恒(無線模塊):18884314734
蔡友銀(無線模塊):13882211021 葛宇龍(通信設(shè)備):19138800613
胡兵(外貿(mào)銷售經(jīng)理):18584911141、 [email protected]
業(yè)務(wù)郵箱:[email protected] 全國(guó)銷售投訴電話:19934352316
地址:四川省成都市高新西區(qū)西區(qū)大道199號(hào)B5棟(前臺(tái)座機(jī):028-61543675)
?? 成都億佰特電子科技有限公司【版權(quán)所有】 蜀ICP備13019384號(hào)