MQTT 是一種用于連接物聯(lián)網(wǎng) (IoT) 的流行協(xié)議。但它與窄帶物聯(lián)網(wǎng)(NB-IoT)不兼容,后者是大多數(shù)物聯(lián)網(wǎng)項目越來越流行的通信標(biāo)準(zhǔn)。它在原型設(shè)計期間工作正常,給公司一個錯誤的印象,即MQTT是正確的協(xié)議選擇。
但是,使用 MQTT 的產(chǎn)品在現(xiàn)場時很有可能會遇到性能問題或完全出現(xiàn)故障。許多制造商和系統(tǒng)集成商沒有意識到隨之而來的風(fēng)險,這一事實加劇了這個問題:高費用的支持工作,需要重新吸引開發(fā)團(tuán)隊,將固件更新分發(fā)到設(shè)備組的問題以及產(chǎn)品召回。
NB-IoT是一種蜂窩技術(shù),適用于受限的(通常)電池供電設(shè)備,屬于低功耗廣域網(wǎng)(LPWA)網(wǎng)絡(luò)類別。與LTE等更傳統(tǒng)的標(biāo)準(zhǔn)相比,它承諾成本低,電池壽命長,覆蓋范圍更廣。它是資產(chǎn)跟蹤、智能計量、智能城市和其他需要很少數(shù)據(jù)(如地理定位、傳感器數(shù)據(jù)或錯誤代碼)的連接設(shè)備的理想選擇,并且已經(jīng)用于部署與日俱增的實際應(yīng)用中。
NB-IoT網(wǎng)絡(luò)目前在64個國家(包括美國,中國,澳大利亞和歐洲大部分地區(qū))運營,全球166家運營商正在投資擴(kuò)大這一覆蓋范圍。但是,盡管它有好處,但仍然存在一個未被宣傳的潛在障礙,如果它沒有在產(chǎn)品開發(fā)早期被發(fā)現(xiàn),可能會阻止10年或更長時間的穩(wěn)定產(chǎn)品生命周期。
NB-物聯(lián)網(wǎng)的工作方式與互聯(lián)網(wǎng)的其余部分不同
NB-IoT針對用戶數(shù)據(jù)報協(xié)議(UDP)進(jìn)行了優(yōu)化,但大多數(shù)互聯(lián)網(wǎng)使用傳輸控制協(xié)議(TCP)進(jìn)行基本通信。TCP是某些項目(如網(wǎng)站,文件下載和電子郵件)的不錯選擇,因為它可以保證數(shù)據(jù)到達(dá),按正確的順序排列,并允許在損壞的情況下進(jìn)行錯誤檢測和重新傳輸。
但是TCP需要對設(shè)備本身有更多的處理能力,導(dǎo)致更多的能源消耗,并且消耗更多的流量。如果您的設(shè)備想要發(fā)送單個字節(jié)(例如,指示燈打開或關(guān)閉,以 1 或 0 的形式發(fā)送),則開銷 TCP 元數(shù)據(jù)是另一個 40 字節(jié)。在實踐中,數(shù)據(jù)很少以單個字節(jié)發(fā)送,但值得注意的是,因為蜂窩數(shù)據(jù)傳輸是一個沉重的能源消耗,必須在電池供電的設(shè)備上最小化。
更糟糕的是,如果來自其他設(shè)備的無線電干擾,如果設(shè)備位于地下室等接收較差的區(qū)域,或者數(shù)據(jù)丟失或損壞,則TCP的重傳機制將啟動并消耗更多數(shù)據(jù)。這些場景在蜂窩網(wǎng)絡(luò)中很常見,這意味著設(shè)備再次發(fā)送整個數(shù)據(jù)包,相當(dāng)于兩倍的流量和兩倍的能量。
這些特性使 TCP 成為電池供電設(shè)備或受限硬件的不良選擇。由于NB-IoT針對受限設(shè)備進(jìn)行了優(yōu)化,因此3GPP圍繞全局UDP對其進(jìn)行了標(biāo)準(zhǔn)化。
Traps When Using MQTT on NB-IoT
Many product manufacturers pick MQTT asthe data exchange protocol between device and cloud because it is widely supported by cloud providers and IoT application enablement platforms. They also often pick MQTT simply because they’ve used it when developing previous connected products using Wi-Fi or LTE.
但 MQTT 依賴于 TCP 的糾錯和重傳方案,并且與無線網(wǎng)絡(luò)、LTE 和以太網(wǎng)配合良好。這并不是說TCP與NB-IoT不兼容,但是當(dāng)公司試驗該技術(shù)時(例如,在構(gòu)建原型時),他們的工作條件并不反映設(shè)備在其部署生命周期的后期會遇到的情況。
因此,如果您有“足夠好”的網(wǎng)絡(luò)覆蓋范圍,MQTT和TCP可以很好地工作。而且,由于大多數(shù)辦公室不在地下和/或位于無線電覆蓋范圍很大的大城市,而這些問題很少,因此許多公司認(rèn)為MQTT將自動工作以用于其特定用途。畢竟,原型是成功的,所以他們在不知不覺中向市場發(fā)布了一個低于標(biāo)準(zhǔn)的產(chǎn)品。
然后,一旦部署,他們開始收到來自有問題的客戶的投訴,因為他們不知道將支持NB-IoT的設(shè)備放置在接收不良的地下室的后果。
像任何技術(shù)一樣,TCP連接可能會并且將會失敗,從而導(dǎo)致重復(fù)的數(shù)據(jù)重新傳輸。這導(dǎo)致流量浪費在實際業(yè)務(wù)數(shù)據(jù)以外的開銷上,電池壽命縮短,用戶體驗不佳。
對于使用TCP的項目來說,還有另一個滴答作響的定時炸彈:NB-IoT網(wǎng)絡(luò)越擁擠,TCP連接失敗的頻率就越高。因此,即使公司針對不良的本地接收優(yōu)化其設(shè)備,性能也會隨著時間的推移而降低。
解決業(yè)務(wù)影響
起初似乎是一個好的產(chǎn)品發(fā)布,現(xiàn)在可能會帶來災(zāi)難。高延遲會導(dǎo)致糟糕的用戶體驗,并且根據(jù)用例,可能會完全破壞項目。然后,最終用戶理所當(dāng)然地抱怨他們的設(shè)備無法按預(yù)期工作。
因此,必須重組開發(fā)團(tuán)隊,或者必須組建一個不了解系統(tǒng)的新團(tuán)隊進(jìn)行改進(jìn)。然后必須推出新的解決方案,這對于處于脫機狀態(tài)的設(shè)備來說是棘手的,因為這意味著客戶必須退回產(chǎn)品或必須將技術(shù)人員派遣到設(shè)備位置才能執(zhí)行升級。無論如何解決,此過程都會產(chǎn)生大量的時間和金錢費用。
這個復(fù)雜等式中的另一個小因素可能是與數(shù)據(jù)超額相關(guān)的成本,但使用的流量可能會超過合同約定的限制,并觸發(fā)運營商的額外費用。金額取決于合同,運營商和設(shè)備組的大小,但這也不能被忽視。
但最大的成本是不滿意的客戶群。很難衡量這種情況對他們的忠誠度或品牌印象的影響,但它可能會產(chǎn)生長期的影響。
針對 NB-物聯(lián)網(wǎng)實際優(yōu)化的協(xié)議
公平地說,上述大多數(shù)要點適用于所有連接的設(shè)備,而不僅限于NB-IoT上的MQTT。然而,這是一個更大的問題,因為企業(yè)只是沒有意識到風(fēng)險 - 他們只是對MQTT太滿意了,不知道他們錯過了什么。
產(chǎn)品制造商和系統(tǒng)集成商應(yīng)選擇 UDP 友好型協(xié)議,如 CoAP 或輕量級 M2M (LwM2M)。這些協(xié)議針對蜂窩物聯(lián)網(wǎng)進(jìn)行了優(yōu)化,并將TCP的大部分優(yōu)勢帶到了UDP。這些協(xié)議都支持?jǐn)?shù)據(jù)重傳、錯誤檢測和訂單保證。此外,LwM2M 在構(gòu)建互聯(lián)產(chǎn)品,尤其是受限設(shè)備方面,提供了比 MQTT 更廣泛的功能。
通過設(shè)計這些NB-IoT友好協(xié)議,公司和工程團(tuán)隊可以開始進(jìn)行廣泛的測試,以檢查設(shè)備在現(xiàn)場的各種操作方式。此測試必須涵蓋許多環(huán)境,并且計劃在每個國家/地區(qū)進(jìn)行部署,但無論如何,這可能是用于調(diào)試MQTT通過NB-IoT問題的時間和資源。
-
傳感器
+關(guān)注
關(guān)注
2578文章
55567瀏覽量
794224 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2950文章
48147瀏覽量
418852 -
廣域網(wǎng)
+關(guān)注
關(guān)注
1文章
264瀏覽量
22869
發(fā)布評論請先 登錄
如何用 MQTT 實現(xiàn)設(shè)備間通信(超簡單實操版)
基于LuatOS的MQTT物聯(lián)網(wǎng)通信全解
MQTT協(xié)議為什么成為物聯(lián)網(wǎng)協(xié)議
北向MQTT工業(yè)物聯(lián)網(wǎng)網(wǎng)關(guān)是什么
MQTT網(wǎng)關(guān)對接到物聯(lián)網(wǎng)平臺快速開發(fā)應(yīng)用
學(xué)習(xí)物聯(lián)網(wǎng)怎么入門?
【教程】必看!手把手教你學(xué)會MQTT工作模式下阿里云物聯(lián)網(wǎng)平臺的配置
窄帶物聯(lián)網(wǎng)上的MQTT如何毀掉您的項目
評論