資源描述:
《基于mqtt物聯(lián)網(wǎng)消息推送系統(tǒng)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、基于MQTT物聯(lián)網(wǎng)消息推送系統(tǒng)*姜妮張宇趙志軍(中國科學院聲學研究所高性能網(wǎng)絡(luò)實驗室北京100190)摘要:隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展和移動終端的普及,人們更加希望能夠隨時隨地方便地獲取信息和服務(wù)。本文旨在研究一種物聯(lián)網(wǎng)消息推送系統(tǒng),選用適合物聯(lián)網(wǎng)的消息協(xié)議———MQTT,通過消息中間件,采用發(fā)布/訂閱機制實現(xiàn)消息推送。相比于傳統(tǒng)拉取方式,基于MQTT的物聯(lián)網(wǎng)消息推送系統(tǒng)更加及時、高效、省流量、省資源。關(guān)鍵詞:物聯(lián)網(wǎng),消息推送,MQTT,消息中間件,發(fā)布/訂閱AMessagePushingSystemofIOTBasedonMQTTJIANGNi,ZHANGYu,ZHAOZhiju
2、n(InstituteofAcoustics,ChineseAcademyofSciences,Beijing,100190,China)Abstract:WiththerapiddevelopmentofIoTtechnology,aswellasthepopularityofmobileterminals,peoplehopetobemoreeasilyaccesstoinformationandservicesanytimeandanywhere.ThispaperaimstostudyamessagepushingsystemofIOT,choosingames-sa
3、geprotocolwhichissuitableforIOT———MQTT,bytheMessageOrientedMiddleware,Usingpublish/subscribemechanismtohavethemessagepushed.Comparedtothetraditionalpullmode,themessagepushingsystemofIOTbasedonMQTTismoretimely,effi-cient,savingflowrateandresources.Keywords:IOT,messagepushing,MQTTprotocol,Mes
4、sageOrientedMiddleware,Publish/Subscribe1MQTT簡介MQTT(MessageQueuingTelemetryTransport———消息隊列遙測傳輸),是一項為物聯(lián)網(wǎng)而設(shè)計的消息傳遞技術(shù),它是一種開放、精簡、輕量級和容易實現(xiàn)的協(xié)議,特別適用于低帶寬,網(wǎng)絡(luò)不穩(wěn)定,網(wǎng)絡(luò)代價昂貴以及處理器和存儲器資源有限的嵌入式設(shè)備和移動終端上。MQ協(xié)議特點如下:(1)開放:由IBM和Eurotech公司聯(lián)合研制,開放公開的協(xié)議專門為“設(shè)備”網(wǎng)絡(luò)專業(yè)定制。(2)輕巧:傳輸格式的最小化,無應(yīng)用消息頭,最小的數(shù)據(jù)包只有2個比特;復雜度降低,所需容量小。(3)可
5、靠:三種不同的服務(wù)質(zhì)量:“至多一次”,消息發(fā)布完全依賴底層TCP/IP網(wǎng)絡(luò)。會發(fā)生消息丟失或重復。這一級別可用于如下情況,環(huán)境傳感器數(shù)據(jù),丟失一次讀記錄無所謂,因為不久后還會有第二次發(fā)送?!爸辽僖淮巍?,確保消息到達,但消息重復可能會發(fā)生?!爸挥幸淮巍?,確保消息到達一次。這一級別可用于如下情況,在計費系統(tǒng)中,消息重復或丟失會導致不正確的結(jié)果。②如果客戶端意外掉線,使用“遺愿”發(fā)布一條消息。③帶狀態(tài)的語義,以及“持久的”訂閱[1]。本文于2014-07-11收到。*基金項目:工信部重大專項(編號:2012ZX03005007)。姜妮等:基于MQTT物聯(lián)網(wǎng)消息推送系統(tǒng)6期63(4)
6、簡單:簡單體積小的發(fā)布/訂閱消息模式,異步“推送”傳輸,簡單的使用方式———連接、發(fā)布、訂閱、斷開。MQTT在移動應(yīng)用中的優(yōu)勢(1)可靠傳輸:可靠安全的信息交互;大規(guī)模、高可用性的支持;與企業(yè)服務(wù)建議集成。(2)消息推送:實時通知;豐富的推送內(nèi)容;靈活的發(fā)布/訂閱;消息存儲與過濾。(3)低帶寬、低耗能、低成本:占用移動應(yīng)用程序空間小;帶寬利用率高;耗電量少;比SMS便宜。2消息中間件概述2.1消息中間件概念消息中間件利用高效可靠的消息傳遞機制進行平臺無關(guān)的數(shù)據(jù)交流,并基于數(shù)據(jù)通信來進行分布式系統(tǒng)的集成。通過提供消息傳遞和消息排隊模型,它可以在分布式環(huán)境下擴展進程間的通信,尤其
7、適合處理網(wǎng)絡(luò)變化頻繁、網(wǎng)絡(luò)環(huán)境復雜的通信過程。2.2消息中間件的消息傳遞模式消息中間件提供了兩種最普遍的消息傳遞模式:點對點模式(Point-to-Point,PTP)和發(fā)布/訂閱模式(Publish/Subscribe)。(1)點對點模式。PTP模式用于消息發(fā)布者和消息接收者一對一的通信,消息發(fā)布者發(fā)布消息到消息隊列中,消息接收者從消息隊列讀取消息。PTP模式的最大優(yōu)點是實現(xiàn)簡單,缺點也是顯而易見,數(shù)據(jù)通信雙方的耦合度太高、擴展性較差,通信雙方任一方發(fā)生變化時,另一方的應(yīng)用程序都會作相應(yīng)并更,不利于多