[發(fā)明專(zhuān)利]一種基于MQTT多層級(jí)聯(lián)的消息路由方法有效
| 申請(qǐng)?zhí)枺?/td> | 201710495388.0 | 申請(qǐng)日: | 2017-06-26 |
| 公開(kāi)(公告)號(hào): | CN107231262B | 公開(kāi)(公告)日: | 2021-05-14 |
| 發(fā)明(設(shè)計(jì))人: | 劉發(fā)貴;彭妙霞;馮煒君 | 申請(qǐng)(專(zhuān)利權(quán))人: | 華南理工大學(xué) |
| 主分類(lèi)號(hào): | H04L12/24 | 分類(lèi)號(hào): | H04L12/24;H04L12/44;H04L12/28;H04L29/08;H04L12/66;H04L12/741 |
| 代理公司: | 廣州粵高專(zhuān)利商標(biāo)代理有限公司 44102 | 代理人: | 何淑珍 |
| 地址: | 510640 廣*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 mqtt 多層 級(jí)聯(lián) 消息 路由 方法 | ||
1.一種基于MQTT多層級(jí)聯(lián)的消息路由方法,包括基于MQTT的多網(wǎng)關(guān)組網(wǎng),路由下行和路由上行;其特征在于:
將新網(wǎng)關(guān)添加到原有網(wǎng)絡(luò)中,在新網(wǎng)關(guān)上添加新的家電設(shè)備,新網(wǎng)關(guān)與其他網(wǎng)關(guān)相連形成基于MQTT的多層級(jí)聯(lián)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu);
所述路由下行指由MQTT控制端發(fā)送的消息路由到家電設(shè)備,路由下行是在基于MQTT的多層級(jí)聯(lián)的網(wǎng)絡(luò)中查找網(wǎng)關(guān)的下一級(jí)路由規(guī)則,并將消息轉(zhuǎn)發(fā)至下一級(jí)網(wǎng)關(guān);
所述路由上行指家電設(shè)備的反饋消息路由到MQTT控制端,其中包括家電設(shè)備的反饋消息路由到所有MQTT控制端和家電設(shè)備的反饋消息路由到其中一個(gè)MQTT控制端;
所述基于MQTT的多網(wǎng)關(guān)組網(wǎng)的步驟包括:
(1)、網(wǎng)關(guān)啟動(dòng)時(shí)先查詢(xún)本地?cái)?shù)據(jù)庫(kù)是否存在自身的UID;若不存在,則根據(jù)Snowflake算法生成UID,UID用于標(biāo)識(shí)網(wǎng)關(guān),網(wǎng)關(guān)自動(dòng)訂閱主題“/UID/#”;
(2)、接著查詢(xún)本地?cái)?shù)據(jù)庫(kù),用戶(hù)通過(guò)web頁(yè)面配置所在網(wǎng)關(guān)的上一級(jí)網(wǎng)關(guān)的IP地址;
(3)、然后UID網(wǎng)關(guān)與上一級(jí)網(wǎng)關(guān)UID0進(jìn)行連接;獲得上一級(jí)網(wǎng)關(guān)的路由規(guī)則“.../UID0/#”,更新本地路由表中上一級(jí)網(wǎng)關(guān)的路由規(guī)則為“.../UID0/#”,當(dāng)前自身的路由規(guī)則為“.../UID0/UID/#”;
(4)、上一級(jí)網(wǎng)關(guān)接收到UID網(wǎng)關(guān)連接后,在自身的下一級(jí)網(wǎng)關(guān)路由規(guī)則中添加一條“.../UID/#”;
(5)、UID網(wǎng)關(guān)啟動(dòng)設(shè)備發(fā)現(xiàn)程序、將搜索到且信息匹配的家電設(shè)備的SID與自身的UID,以UID/SID的格式作為家電設(shè)備的全局唯一標(biāo)識(shí)USID,同時(shí)網(wǎng)關(guān)在自身的設(shè)備列表中記錄“SID”和路由規(guī)則;
(6)、UID網(wǎng)關(guān)將USID上報(bào)給上一級(jí)網(wǎng)關(guān),上一級(jí)網(wǎng)關(guān)在自身的設(shè)備列表中記錄“UID/SID”和路由規(guī)則;
(7)、每一級(jí)網(wǎng)關(guān)遞歸執(zhí)行上一步操作,直到USID上報(bào)到智能家居服務(wù)平臺(tái)為止。
2.根據(jù)權(quán)利要求1所述的基于MQTT多層級(jí)聯(lián)的消息路由方法,其特征在于所述步驟(5)中,網(wǎng)關(guān)在自身的設(shè)備列表中記錄“SID”和路由規(guī)則具體操作如下:
由于當(dāng)前網(wǎng)關(guān)搜索到SID的家電設(shè)備直連到網(wǎng)關(guān)上,因此路由規(guī)則填寫(xiě)網(wǎng)關(guān)自己的UID,并且后綴添加該設(shè)備接到網(wǎng)關(guān)設(shè)備的哪個(gè)硬件接口,則設(shè)備列表中記錄“SID”,路由規(guī)則“UID/UART0”。
3.根據(jù)權(quán)利要求1所述的基于MQTT多層級(jí)聯(lián)的消息路由方法,其特征在于步驟(6)中,UID網(wǎng)關(guān)將USID上報(bào)給上一級(jí)網(wǎng)關(guān),上一級(jí)網(wǎng)關(guān)在自身的設(shè)備列表中記錄“UID/SID”和路由規(guī)則具體操作如下:
UID網(wǎng)關(guān)查找路由表中上一級(jí)網(wǎng)關(guān)的路由規(guī)則為“.../UID0/”,路由規(guī)則作為發(fā)布主題的前綴,包括網(wǎng)關(guān)發(fā)布通知消息,主題為“.../UID0/DEVINFO_NOTIFY”,內(nèi)容為USID;標(biāo)識(shí)為UID0的上一級(jí)網(wǎng)關(guān)默認(rèn)自動(dòng)訂閱主題為“.../UID0/#”的消息,便能接收到主題前綴為“.../UID0/”的所有與自身相關(guān)的消息;標(biāo)識(shí)為UID0的上一級(jí)網(wǎng)關(guān)接收到USID后在自身原有的設(shè)備列表中添加記錄“SID”,路由規(guī)則為下一級(jí)網(wǎng)關(guān)“UID”。
4.根據(jù)權(quán)利要求1所述的基于MQTT多層級(jí)聯(lián)的消息路由方法,其特征在于所述基于MQTT的路由下行步驟包括:
(1)、在所組成的多層級(jí)聯(lián)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,任意一個(gè)網(wǎng)關(guān)接收到來(lái)自MQTT控制端的消息時(shí),先提取消息中的被控對(duì)象;
(2)、接著查詢(xún)本地設(shè)備列表;
(3)、若被控對(duì)象不存在于本地設(shè)備列表中,則上報(bào)上一級(jí)網(wǎng)關(guān),最終上報(bào)到服務(wù)平臺(tái),服務(wù)平臺(tái)將此消息丟棄;
(4)、若被控對(duì)象存在于本地設(shè)備列表中,查詢(xún)路由規(guī)則,直接發(fā)送該消息給路由規(guī)則中的下一級(jí)網(wǎng)關(guān),如果下一級(jí)是自身,則通過(guò)相應(yīng)透?jìng)髂K將消息發(fā)送給家電設(shè)備。
5.根據(jù)權(quán)利要求1所述的基于MQTT多層級(jí)聯(lián)的消息路由方法,其特征在于UID0網(wǎng)關(guān)收到MQTT控制消息主題為“.../UID0/COTROL/SID”,先提取出被控對(duì)象SID,接著查詢(xún)本地設(shè)備列表存在SID,路由規(guī)則為下一級(jí)網(wǎng)關(guān)“UID”,修改主題中UID0為UID,轉(zhuǎn)發(fā)該消息到下一級(jí)網(wǎng)關(guān)。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于華南理工大學(xué),未經(jīng)華南理工大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710495388.0/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 數(shù)據(jù)發(fā)送、設(shè)備連接方法、裝置和系統(tǒng)
- 一種認(rèn)證方法和裝置
- 一種基于nbiot網(wǎng)絡(luò)的mqtt數(shù)據(jù)處理方法和裝置
- 一種基于MQTT的遠(yuǎn)程監(jiān)控方法及系統(tǒng)
- 基于MQTT協(xié)議的消息推送方法及系統(tǒng)
- 一種基于MQTT協(xié)議的配電物聯(lián)系統(tǒng)
- 一種高可用無(wú)限MQTT消息服務(wù)擴(kuò)容的系統(tǒng)
- 基于MQTT云平臺(tái)的Modbus通信方法及系統(tǒng)
- 一種基于MQTT框架的遠(yuǎn)程車(chē)載控制系統(tǒng)
- 管理平臺(tái)與機(jī)器人MQTT協(xié)議測(cè)試方法、系統(tǒng)、設(shè)備及介質(zhì)
- 一種LED芯片級(jí)聯(lián)信號(hào)的單線傳輸方法
- 圖像信號(hào)處理器,圖像信號(hào)處理系統(tǒng)和圖像傳輸級(jí)聯(lián)器
- 一種業(yè)務(wù)管理系統(tǒng)級(jí)聯(lián)操作的處理方法和裝置
- 級(jí)聯(lián)式LED驅(qū)動(dòng)器
- 處理器級(jí)聯(lián)方法和系統(tǒng)
- 一種MCU級(jí)聯(lián)結(jié)構(gòu)及其控制方法和控制系統(tǒng)
- 一種框式設(shè)備內(nèi)部級(jí)聯(lián)口故障檢查方法及裝置
- 刀箱、刀箱級(jí)聯(lián)管理方法及裝置
- 一種級(jí)聯(lián)裝置、籠車(chē)及籠車(chē)組件
- 一種多功能級(jí)聯(lián)的離線燒錄方法和系統(tǒng)





