許多小型合作5g工業(yè)互聯(lián)網應用互聯(lián)網推進伙伴可能聽說過術語mqtt協(xié)議,但有多少小型合作伙伴知道m(xù)qtt是如何產生的?讓我們今天來了解一下。
Mqtt(消息隊列遙測傳輸)是一種基于發(fā)布/訂閱模式的“輕量級”通信協(xié)議。該協(xié)議建立在TCP/IP協(xié)議之上,由IBM于1999年發(fā)布。mqtt的最大優(yōu)點是,它可以用很少的代碼和有限的帶寬為連接的遠程設備提供實時可靠的消息服務。作為一種低開銷、低帶寬占用的即時通信協(xié)議,它廣泛應用于物聯(lián)網、小型設備、移動應用等領域。

Mqtt是一種基于客戶機-服務器的消息發(fā)布/訂閱傳輸協(xié)議。Mqtt協(xié)議輕量級、簡單、開放且易于實現。這些特點使其具有廣泛的適用性。在許多情況下,包括受限環(huán)境,如機器對機器(M2M)通信和物聯(lián)網(IOT)。它已廣泛應用于通過衛(wèi)星鏈路的通信傳感器、偶爾的撥號醫(yī)療設備、智能家居和一些小型設備。
Mqtt是一種基于客戶機-服務器的消息發(fā)布/訂閱傳輸協(xié)議。Mqtt協(xié)議輕量級、簡單、開放且易于實現。這些特點使其適用范圍廣泛,包括受限環(huán)境,如機器對機器(M2M)通信和物聯(lián)網(IOT)。它已廣泛應用于衛(wèi)星鏈路通信傳感器、偶爾使用的撥號醫(yī)療設備、智能家居和一些小型設備。
mqtt(消息隊列遙測傳輸)體系結構的一個關鍵方面涉及在數據更改時使用中間服務器從連接的設備收集數據。然后,它將這些數據點發(fā)布到從訂閱者收集特定數據源的其他系統(tǒng)或應用程序。由于訂閱系統(tǒng)或應用程序不直接連接到它們監(jiān)視的設備,因此mqtt消息傳遞結構本質上提供了某種級別的安全性。
然而,與任何安全措施一樣,將該設備與訂閱設備系統(tǒng)分離并不能解決所有潛在的網絡安全問題。除了服務器提供的直接斷開連接外,mqtt基礎設施還支持多種使用廣泛使用的互聯(lián)網安全方法的選項,如在線銀行中使用的、由NIST(國家標準與技術研究所)推薦的方法。
cirruslink總裁兼首席技術官、mqtt聯(lián)合創(chuàng)始人阿倫·尼珀(Arlennipper)表示,mqtt邊緣和企業(yè)客戶端使用相同的安全模型?!懊總€人都使用傳輸層安全性(TLS)和來自證書頒發(fā)機構(CA)的安全證書憑據,通過TCP/IP網絡啟動出站連接,”他說。
由于mqtt服務器在企業(yè)服務總線中提供消息傳遞機制,nipper指出mqtt服務器“必須符合3.1.1oasis標準?!眂irruslink為此提供了mqtt分發(fā)服務器和chariotmqtt服務器。該公司還為多個mqtt服務器冗余提供chariotmqtt服務器,并為本地或云連接應用程序提供更多連接的客戶端。
由于物聯(lián)網的環(huán)境非常特5g工業(yè)互聯(lián)網應用互聯(lián)網推進殊,
mqtt需要遵循以下設計原則:
精簡和不增加可有可無的功能,
發(fā)布/訂閱(Pub/sub)模式,以促進傳感器之間的消息傳輸,
允許用戶動態(tài)創(chuàng)建主題,零運維成本,
將傳輸容量降至最低,以提高傳輸效率,
考慮了低帶寬、高延遲、網絡不穩(wěn)定等因素,
支持連續(xù)會話控制,
了解客戶機的計算能力可能非常低,
提供服務質量管理,
假設數據未知,則不需要傳輸數據的類型和格式來保持靈活性。
MQTT協(xié)議優(yōu)點
1.MQTT的獨特功能是每個消息頭都可以縮短為2個字節(jié)。對于HTTP,為每個新請求消息重新建立HTTP連接會產生可觀的開銷。 MQ和MQTT使用的持久連接可以大大減少這種開銷;
2.包容不穩(wěn)定的網絡,MQTT和MQ可以從諸如斷開連接之類的故障中恢復,無需進一步的代碼要求。但是,HTTP本身無法實現此目標,并且客戶端必須重試編碼,這會增加身份問題;
3.低功耗MQTT專為低功耗目標而設計。HTTP設計未考慮此因素,這會增加功耗;
4.在連接數百萬個客戶端的情況下,在HTTP堆棧中維護數百萬個并發(fā)連接,需要大量工作才能提供支持。盡管這種支持是可行的,但大多數商業(yè)產品都經過優(yōu)化以處理此訂單上的持久連接。 IBM提供了IBM MessageSight,這是一種單機架安裝服務器,已經過測試,可以通過MQTT處理多達一百萬個并發(fā)設備。相反,MQ不是為許多同時進行的客戶設計的;
5.推送通知。能夠及時向客戶發(fā)送通知,以常規(guī)的輪詢或推送方法。從電池、系統(tǒng)負載、帶寬而言,推送是最佳解決方案;
6.客戶端平臺的差異。 HTTP和MQTT客戶端都在許多平臺上實現。 MQTT的簡單性可幫助以最少的努力在其他客戶端上實施MQTT;
7.防火墻容錯能力。某些公司防火墻將出站連接限制到某些預定義的端口,這些端口通常僅限于HTTP(端口80),HTTPS(端口443)等,HTTP在這種情況下顯然可以工作。 MQTT封裝在WebSockets連接中,并顯示為HTTP升級請求,因此可以在這種情況下運行;
什么是 MQTT - MQTT 的用例
· 汽車
BMW Mobility Services(汽車共享應用)已經使用 HiveMQ 和 MQTT 超過 4 年。HiveMQ 支持超過 80,000 個并發(fā)連接的軟件客戶端,每分鐘生成超過 90,000 條消息。BMW Mobility Services 使用 HiveMQ 作為內部消息總線,在后端微服務之間移動數據。
· 后勤
Matternet 正在制造無人機,以減少在醫(yī)院和測試實驗室之間運輸醫(yī)療樣本所需的時間。通過使用 HiveMQ,Matternet 可以實時跟蹤航班狀態(tài)。MQTT 消息通過運行在 Matternet 平臺上的 HiveMQ 傳輸。這些消息在飛行期間在無人機之間發(fā)送到著陸站。
· 制造業(yè)
MQTTRoute 是一個傳輸消息的平臺,Celikler Holding 使用它來監(jiān)控多個發(fā)電廠的發(fā)電量。MQTT 的使用提供了發(fā)電廠之間的安全通信。
· 消費產品
CASO Design 打造智能廚房電器。例如,CASCO WineComfort Smart,一款酒柜,保證了葡萄酒的品質。該應用程序會在幾秒鐘內監(jiān)控并報告任何錯誤消息,例如,如果溫度發(fā)生任何變化,您將收到通知。通過這種方式,它可以確保葡萄酒儲存在合適的條件下。