MQTT協(xié)議已經(jīng)成了物聯(lián)網(wǎng)通信中的一個(gè)熱詞,今天我們一起來(lái)協(xié)議一下關(guān)于MQTT協(xié)議的一些知識(shí)。
IBM公司的安迪·斯坦福-克拉克及Cirrus Link公司的阿蘭·尼普于1999年撰寫(xiě)了該協(xié)議的第一個(gè)版本。在2013年IBM公司向結(jié)構(gòu)化資訊標(biāo)準(zhǔn)促進(jìn)組織提交了MQTT 3.1版規(guī)范,并附有相關(guān)章程,以確保只能對(duì)規(guī)范進(jìn)行少量更改。
MQTT協(xié)議(消息隊(duì)列遙測(cè)傳輸)是ISO標(biāo)準(zhǔn)(ISO/IEC PRF 20922)下基于發(fā)布/訂閱范式的消息協(xié)議。MQTT工作在TCP/IP協(xié)議族上,是為硬件性能低下的遠(yuǎn)程設(shè)備以及網(wǎng)絡(luò)狀況糟糕的情況下而設(shè)計(jì)的發(fā)布/訂閱型消息協(xié)議。
MQTT協(xié)議是一個(gè)基于客戶(hù)端-服務(wù)器的消息發(fā)布/訂閱傳輸協(xié)議,MQTT協(xié)議是輕量、簡(jiǎn)單、開(kāi)放和易于實(shí)現(xiàn)的,這些特點(diǎn)使它適用范圍非常廣泛。如:機(jī)器與機(jī)器(M2M)通信和物聯(lián)網(wǎng)(IoT)。在通過(guò)衛(wèi)星鏈路通信傳感器、偶爾撥號(hào)的醫(yī)療設(shè)備、智能家居、及一些小型化設(shè)備中也被廣泛使用。
由于物聯(lián)網(wǎng)環(huán)境具有一定的特殊性,所以MQTT設(shè)計(jì)都需要遵守以下規(guī)范:
① 精簡(jiǎn),不添加可有可無(wú)的功能;
② 發(fā)布/訂閱(Pub/Sub)模式,方便消息在傳感器之間傳遞;
③ 允許用戶(hù)動(dòng)態(tài)創(chuàng)建主題,零運(yùn)維成本;
④ 把傳輸量降到最低以提高傳輸效率;
⑤ 把低帶寬、高延遲、不穩(wěn)定的網(wǎng)絡(luò)等因素考慮在內(nèi);
⑥ 支持連續(xù)的會(huì)話(huà)控制;
⑦ 理解客戶(hù)端計(jì)算能力可能很低;
⑧ 提供服務(wù)質(zhì)量管理;
⑨ 假設(shè)數(shù)據(jù)不可知,不強(qiáng)求傳輸數(shù)據(jù)的類(lèi)型與格式,保持靈活性。
MQTT協(xié)議工作在低帶寬、不可靠的網(wǎng)絡(luò)的遠(yuǎn)程傳感器和控制設(shè)備通訊而設(shè)計(jì)的協(xié)議,MQTT協(xié)議具有以下主要的幾項(xiàng)特性:
① 使用發(fā)布/訂閱消息模式,提供一對(duì)多的消息發(fā)布,解除應(yīng)用程序耦合。
② 對(duì)負(fù)載內(nèi)容屏蔽的消息傳輸。
③ 使用TCP/IP提供網(wǎng)絡(luò)連接。
④ 有“至多一次”“至少一次”“只有一次”三種消息發(fā)布服務(wù)質(zhì)量。
⑤ 小型傳輸,開(kāi)銷(xiāo)很?。ü潭ㄩL(zhǎng)度的頭部是2字節(jié)),協(xié)議交換最小化,以降低網(wǎng)絡(luò)流量。
⑥ 使用Last Will和Testament特性通知有關(guān)各方客戶(hù)端異常中斷的機(jī)制。
實(shí)現(xiàn)MQTT協(xié)議需要客戶(hù)端和服務(wù)器端通訊完成,在通訊過(guò)程中,MQTT協(xié)議中有三種身份:發(fā)布者(Publish)、代理(Broker)(服務(wù)器)、訂閱者(Subscribe)。其中,消息的發(fā)布者和訂閱者都是客戶(hù)端,消息代理是服務(wù)器,消息發(fā)布者可以同時(shí)是訂閱者。
MQTT協(xié)議傳輸?shù)南⒎譃椋褐黝}(Topic)和負(fù)載(payload)兩部分:
Topic,可以理解為消息的類(lèi)型,訂閱者訂閱(Subscribe)后,就會(huì)收到該主題的消息內(nèi)容(payload);
payload,可以理解為消息的內(nèi)容,是指訂閱者具體要使用的內(nèi)容。
MQTT客戶(hù)端是指使用MQTT協(xié)議的應(yīng)用程序或者設(shè)備,MQTT客戶(hù)端總是建立到服務(wù)器的網(wǎng)絡(luò)連接。MQTT客戶(hù)端可以是:
(1)發(fā)布其他客戶(hù)端可能會(huì)訂閱的信息;
(2)訂閱其它客戶(hù)端發(fā)布的消息;
(3)退訂或刪除應(yīng)用程序的消息;
(4)斷開(kāi)與服務(wù)器連接。
MQTT服務(wù)器協(xié)議以稱(chēng)為"消息代理"(Broker),可以是一個(gè)應(yīng)用程序或一臺(tái)設(shè)備。它是位于消息發(fā)布者和訂閱者之間,它可以接受來(lái)自客戶(hù)的網(wǎng)絡(luò)連接;接受客戶(hù)發(fā)布的應(yīng)用信息;處理來(lái)自客戶(hù)端的訂閱和退訂請(qǐng)求;還可以向訂閱的客戶(hù)轉(zhuǎn)發(fā)應(yīng)用程序消息。
億佰特人每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的官網(wǎng)http://twohalves.cn/行了解,還有客服小姐姐在線(xiàn)答疑哦!成都億佰特--物聯(lián)網(wǎng)應(yīng)用專(zhuān)家,隨時(shí)在身邊,時(shí)刻準(zhǔn)備為您服務(wù)!
7 X 24 銷(xiāo)售服務(wù)熱線(xiàn)
4000-330-990深圳辦事處柯經(jīng)理:18218726658 杭州辦事處戴經(jīng)理:17512568697
常州辦事處崔經(jīng)理:15906110783 南京辦事處葛經(jīng)理:17626012283
業(yè)務(wù)郵箱:support@cdebyte.com
全國(guó)銷(xiāo)售投訴電話(huà):19934352316
地址:四川省成都市高新西區(qū)西區(qū)大道199號(hào)B5棟(前臺(tái)座機(jī):028-61543675)
?? 成都億佰特電子科技有限公司【版權(quán)所有】 蜀ICP備13019384號(hào)-3