[發明專利]一種物聯網關中MQTT主題的快速匹配方法及系統在審
| 申請號: | 202010419171.3 | 申請日: | 2020-05-18 |
| 公開(公告)號: | CN111651476A | 公開(公告)日: | 2020-09-11 |
| 發明(設計)人: | 張強強;魏志強;宋憲明;姜善宸;賈東寧;桂琳 | 申請(專利權)人: | 青島海洋科學與技術國家實驗室發展中心 |
| 主分類號: | G06F16/245 | 分類號: | G06F16/245;G06F16/22 |
| 代理公司: | 青島聯信知識產權代理事務所(普通合伙) 37227 | 代理人: | 潘晉祥 |
| 地址: | 266200 山東*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 聯網 關中 mqtt 主題 快速 匹配 方法 系統 | ||
本發明提出一種物聯網關中MQTT主題的快速匹配方法及系統,屬于物聯網技術領域。本發明所提出的MQTT主題的快速匹配方法基于分層主題樹,通過將訂閱主題進行分層并作為key構成多層有序二叉樹從而形成分層主題樹,再將消息主題與和分層主題樹上的訂閱主題進行匹配達到MQTT主題快速匹配的效果。本發明還設計利用該方法實現一種MQTT主題的快速匹配系統。本發明的有益效果:相較于傳統字符串逐個比較的主題匹配方式,該發明提出的主題匹配方式能夠快速高效的進行MQTT主題匹配,簡化用戶程序,節省物聯網關的資源。
技術領域
本發明涉及物聯網技術領域,具體是涉及一種物聯網關中MQTT主題的快速匹配方法及系統。
背景技術
近幾年來,隨著物聯網技術的飛速發展,萬物互聯已經成為了一種趨勢。萬物互聯的關鍵是物聯網通信,而物聯網通信協議則是物聯網通信的基礎,在這其中又以MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸)協議最為流行。工作在TCP協議之上的基于發布/訂閱模式的MQTT協議在設計之初就充分考慮了控制器內存有限、網絡帶寬低以及網絡不可靠情況下的數據傳輸問題,是實現物聯網架構的理想選擇。
MQTT協議是基于主題(Topic)來進行訂閱和發布消息的。對于一個客戶端而言,當收到一個消息時首先要對消息主題和本設備訂閱主題進行匹配,匹配上了才會對消息進行處理。某些功能比較簡單的客戶端(如各種傳感器)通常只關心幾個主題,主題匹配采用簡單的字符串比較就可以。而物聯網關作為數據匯集的設備,通常會訂閱成千上萬的主題,并且受限于其緊缺的資源,繼續采用效率低下的字符串逐個比較方式無法滿足性能要求。另一方面,MQTT主題是以“/”為符號進行層級分隔的,并且還有“+”和“#”兩種通配符,傳統的哈希、樹等數據結構無法直接應用于主題匹配,需要針對MQTT主題特點設計出一種專門高效的主題匹配方法。
發明內容
本發明的目的在于提供一種物聯網關中MQTT主題的快速匹配方法及系統,能夠快速高效的進行MQTT主題匹配。
本發明提供一種物聯網關中MQTT主題的快速匹配方法,所述物聯網關中 MQTT主題的快速匹配方法是一種基于分層主題樹的方法,包括以下步驟:
S1:客戶端創建分層主題樹;
S2:客戶端獲得消息主題,根據主題層級分隔符“/”將消息主題分層并與分層主題樹匹配。
作為本發明的進一步優化,S1進一步包括:
S10、客戶端創建分層主題樹第一層樹根;
S11、客戶端在向MQTT broker訂閱一個MQTT主題時,根據主題層級分隔符“/”將訂閱主題分割成若干層,然后分別將每層主題添加到對應層次的主題樹中,若該主題此時不存在于相應層次的主題樹當中,則自動創建,如果是最后一層主題,該主題節點還負責匹配結果的輸出,需將主題回調函數同步保存到該節點。
作為本發明的進一步優化,S2進一步包括:
S20、客戶端等待消息到達,當有消息到達時,解析消息獲得消息主題,將消息主題分層并與分層主題樹進行匹配,若匹配成功,則直接執行該訂閱主題的主題回調函數,若匹配失敗,則丟棄該消息;
S21、本次匹配完成,繼續回到S20等待下一次匹配。
作為本發明的進一步優化,S11的具體步驟為:
S110、確定當前步驟的訂閱主題和當前樹根;
S111、查找訂閱主題中的第一個“/”,若找到,則“/”之前的部分即為該層要添加的層主題,執行S1110;若沒找到,則整個傳入的訂閱主題為該層要添加的層主題,執行S1111;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于青島海洋科學與技術國家實驗室發展中心,未經青島海洋科學與技術國家實驗室發展中心許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010419171.3/2.html,轉載請聲明來源鉆瓜專利網。





