什么是基于物聯(lián)網(wǎng)的物聯(lián)網(wǎng)協(xié)議?在回答這個問題之前,最好先看一下物聯(lián)網(wǎng)的概述。
物聯(lián)網(wǎng)現(xiàn)在越來越受到關(guān)注,投資也越來越傾向于此。物聯(lián)網(wǎng)一直再說這是一個工業(yè),隕石,能源等任何我們工作生活能接觸到領(lǐng)域的技術(shù)革命。就像我們之前文章所說,很多物聯(lián)網(wǎng)項目的解決方案在不同的領(lǐng)域顯現(xiàn)出來。
物聯(lián)網(wǎng)能把所有的設(shè)備鏈接在一起,像可穿戴設(shè)備,家庭設(shè)備,智能設(shè)備,他們之前能夠交換信息,所有的這些信息最終匯聚起來并通過分析來改善我們的生活。
但是,這些設(shè)備如何發(fā)送和接收數(shù)據(jù)?我們都知道HTTP協(xié)議使瀏覽網(wǎng)站,打開網(wǎng)頁成為可能。那么這個協(xié)議對物聯(lián)網(wǎng)是否仍然有用?
嗯,答案是肯定的,但也有其他可以更有效,更適合于低功率設(shè)備的物聯(lián)網(wǎng)協(xié)議。

物聯(lián)網(wǎng)協(xié)議
下面,你會發(fā)現(xiàn)在物聯(lián)網(wǎng)生態(tài)系統(tǒng)中使用的最“重要”的物聯(lián)網(wǎng)協(xié)議列表:
MQTT
COAP
AMQP
Rest
XMPP
Stomp
MQTT
MQTT代表消息隊列遙測傳輸(Message Queuing Telemetry Trasport )。它是一種發(fā)布/訂閱消息的輕量級協(xié)議。它是一個面向M2M(機(jī)器對機(jī)器)的協(xié)議?,F(xiàn)在,它是一個開放的標(biāo)準(zhǔn),由OASIS組織維護(hù)。其參考架構(gòu)非常簡單,它是基于客戶機(jī)/服務(wù)器架構(gòu)。客戶端一般是一個傳感器,用來"發(fā)布"消息給服務(wù)器,服務(wù)器接收消息并且分派給每個訂閱者。底層的通信是基于TCP協(xié)議。

通常來講,MQTT協(xié)議被用在多對多模型中,通過消息路由把發(fā)布者和訂閱者解耦。這個協(xié)議也實現(xiàn)了QoS,安全通訊,長鏈接等特性。這個協(xié)議還有一個版本叫做MQTT-SN(或者M(jìn)QTT-S),這個是專門為傳感器網(wǎng)絡(luò)設(shè)計的。Eclipse有個開元的MQTT實現(xiàn)叫 Mosquitto 。
COAP
COAP是一個應(yīng)用受限協(xié)議。這個協(xié)議是IETF設(shè)計,也是一個多對多的協(xié)議。協(xié)議的內(nèi)容在 RFC7252 并且這是個WEB傳輸協(xié)議。這個協(xié)議非常像HTTP,并且所有的設(shè)計都是基于文本傳輸模型。通常用在請求/響應(yīng) 模型同時自帶服務(wù)發(fā)現(xiàn)功能。不同于HTTP,COAP的數(shù)據(jù)包更小,協(xié)議更加輕量級。
COAP是基于UDP的,這也是個C/S協(xié)議,客戶端發(fā)送請求然后服務(wù)器返回響應(yīng)就像HTTP一樣,所以COAP的使用方法和HTTP一樣。
AMQP
AMQP 是高級消息隊列協(xié)議,像MQTT一樣他維護(hù)了OASIS。AMQP是多對多通訊的開放標(biāo)準(zhǔn)交換協(xié)議。換句話說,這是一個提供了路由,查詢等功能的面向消息的協(xié)議。AMQP的關(guān)鍵指標(biāo)是:
開放
可互相操作
安全
穩(wěn)定
REST
我們都知道REST。它能表述狀態(tài)的轉(zhuǎn)移。通常用在不同程序之間交換數(shù)據(jù),或者不同域名下的應(yīng)用整合。他是基于HTTP的,采用C/S模型,不僅在物聯(lián)網(wǎng)生態(tài)系統(tǒng),互聯(lián)網(wǎng)上使用也非常廣泛。我們之前討論過如何用REST整合Arduino和Android。
XMPP
XMPP (可擴(kuò)展消息和表述協(xié)議)是一個開放的消息和表述協(xié)議,采用XML描述消息。XMPP-IoT是物聯(lián)網(wǎng)環(huán)境下的一個特定版本。這個協(xié)議允許用戶實時的發(fā)送消息處理狀態(tài)(在線,離線,忙碌)。物聯(lián)網(wǎng)版本允許用戶從機(jī)器上發(fā)送和接收。除此之外他的擴(kuò)展性非常的好。關(guān)鍵特性是:
可擴(kuò)展
開放
靈活
Stomp
Stomp 是一個面向文本的協(xié)議。非常易用??蛻舳送ㄟ^一個代理連接交換信息。
就是這么多了!現(xiàn)在你已經(jīng)知道了一些物聯(lián)網(wǎng)世界里普遍使用的協(xié)議了。