一種兼容多種協議的物聯網虛擬網關及節點接入認證方法與流程
2023-07-02 19:33:36 2

本發明屬於物聯網技術領域,尤其涉及一種兼容多種協議的物聯網虛擬網關及節點接入認證方法。
背景技術:
目前,隨著物聯網技術的廣泛應用,接入的物聯網感知設備的種類、數量越來越多,各區域甚至同一區域的感知設備採用的傳輸協議、通信協議、以及數據傳輸的格式也各不相同,但目前的物聯網接入技術對於各類感知設備的接入兼容性仍然存在著不足,只能對特定類型的物聯網感知設備進行接入,支持幾種主流的數據傳輸協議,解析特定的數據格式,難以整合種類繁雜的物聯網感知設備,使得物聯網數據支撐平臺對各類物聯網感知設備的接入不夠靈活和方便,對於一個普通用戶而言,當需要更換一個損壞的感知設備時必須購買同一廠家、同一型號的感知設備,限制了用戶自由選擇產品的權利,嚴重影響用戶體驗。因此如何抽象各類物聯網感知設備的共同點,屏蔽各類物聯網感知設備的差異性,實現各類物聯網感知設備靈活方便的接入,這是物聯網數據支撐平臺發展的關鍵問題,並仍然存在。
綜上所述,現有技術存在的問題是:由於各廠商生產的物聯網感知設備使用的數據傳輸協議和數據格式不同,使得目前物聯網接入技術難以兼容海量類型的感知設備,各物聯網數據支撐平臺只能接入特定廠商生產的感知設備,使得對於某一平臺的普通用戶而言,不能在購買任意廠家的設備後實現即插即用,嚴重影響用戶體驗。
技術實現要素:
針對現有技術存在的問題,本發明提供了一種兼容多種協議的物聯網虛擬網關及節點接入認證方法。
本發明是這樣實現的,一種兼容多種協議的物聯網虛擬網關及節點接入認證方法,所述兼容多種協議的物聯網虛擬網關及節點接入認證方法包括以下步驟:
步驟一,適配虛擬網關:
1:每個虛擬網關開發人員首先需要在物聯網數據支撐平臺申請開發者帳號,進行實名認證,由管理員審核通過後分配開發者身份唯一標識token;
2:合法的虛擬網關開發人員向物聯網數據支撐平臺發送虛擬網關創建請求,支撐平臺驗證開發人員身份標識token合法後,根據時間戳為虛擬網關生成唯一身份標識序列號sn以及數據上傳令牌apikey,並將序列號sn以及數據上傳令牌apikey返回給開發人員;
3:開發人員為一類設備適配,開發虛擬網關,並將平臺所生成虛擬網關唯一身份標識序列號sn以及數據上傳令牌apikey寫入虛擬網關。
4:將開發完成的虛擬網關部署到所適配感知設備所在的區域網,正式投入使用。
步驟二,感知設備註冊:
1:每類物聯網感知設備均有唯一身份標識並且支持信息寫入,唯一身份標識可以是mac地址或者是長字符串等任意形式,感知設備攜帶唯一身份標識id以及其適配該物聯網感知設備的虛擬網關的唯一身份標識序列號sn向物聯網數據支撐平臺發起設備註冊請求;
2:物聯網數據支撐平臺根據物聯網感知設備id、虛擬網關序列號sn以及時間戳生成物聯網感知設備的認證密鑰key,並將該key返回給物聯網感知設備並寫入設備;
3:將註冊成功的物聯網感知設備id以及認證密鑰key同步到所屬虛擬網關;
步驟三,數據上傳過程:
1:物聯網感知設備採集到數據後上傳到所對應的虛擬網關,虛擬網關首先驗證節點是否註冊成功,並驗證節點id以及key,確定節點的合法性;
2:虛擬網關將所收到的原始數據解析後根據按照物聯網數據支撐平臺規範進行格式化,並將格式化後的數據上傳到物聯網數據支撐平臺;
3:物聯網數據支撐平臺首先驗證虛擬網關序列號sn以及數據上傳令牌apikey是否合法,若合法則解析數據,將數據按照平臺規範存儲到資料庫;
步驟四,命令下發:
1:第三方物聯網應用調用物聯網數據支撐平臺的接口下發命令時,物聯網數據支撐平臺將下發的命令廣播給所有虛擬網關;
2:虛擬網關接收到命令後首先確認命令發送對象是否屬於該虛擬網關管理,若屬於則將命令轉換為所適配感知設備能識別的形式,下發到感知設備;若不屬於則不作響應。
進一步,虛擬網關註冊的方法包括:
(1)平臺開發人員向雲平臺發送虛擬網關創建請求,請求包括開發人員用戶名、令牌的認證材料,唯一標識開發人員身份並可作為驗證開發人員合法性的依據;
(2)物聯網數據支撐平臺對開發人員身份進行驗證,若合法,則允許該開發人員基於平臺開發虛擬網關,並根據時間戳、開發人員身份id的信息生成虛擬網關的唯一身份標識序列號sn和數據上傳令牌apikey;
(3)物聯網數據支撐平臺將虛擬網關的唯一身份標識序列號sn和數據上傳令牌apikey返回給平臺開發人員,開發人員開始虛擬網關的開發,並將序列號sn和數據上傳令牌apikey寫入虛擬網關;
(4)虛擬網關申請接入物聯網數據支撐平臺,在物聯網數據支撐平臺驗證虛擬網關的合法性後與虛擬網關建立連接,保持通信。
進一步,物聯網感知設備註冊的方法包括:
(1)物聯網感知設備向物聯網數據支撐平臺發送註冊請求,註冊請求包括物聯網感知設備出廠內置的唯一身份標識id以及物聯網數據支撐平臺開發人員為感知設備適配的虛擬網關序列號sn;
(2)物聯網數據支撐平臺首先根據虛擬網關序列號sn驗證該虛擬網關是否已經註冊成功,若驗證失敗,則不予註冊,若驗證通過,則根據設備唯一身份標識id以及時間戳的信息生成驗證信息key;
(3)物聯網數據支撐平臺將生成的驗證信息返回給物聯網感知設備;
(4)物聯網數據支撐平臺將註冊成功的物聯網感知設備唯一身份標識id以及生成的驗證信息key同步到物聯網感知設備所對應的虛擬網關。
進一步,所述步驟三中數據上傳的方法包括:
(1)各類型物聯網感知設備將採集到的數據上傳到所對應的虛擬網關,攜帶物聯網感知設備唯一身份標識id以及驗證信息key;
(2)所對應虛擬網關接收到數據先根據物聯網感知設備唯一身份標識id以及驗證信息key驗證該設備是否合法,若不合法,拒絕接收數據,若合法,則解析數據,將數據解析為符合平臺規範的數據格式;
(3)虛擬網關將解析好的數據上傳到物聯網數據管理系統,攜帶虛擬網關的唯一身份標識序列號sn、數據上傳令牌apikey以及物聯網感知設備的唯一身份標識id;
(4)物聯網數據管理系統首先根據虛擬網關的唯一身份標識序列號sn、數據上傳令牌apikey驗證虛擬網關是否合法,若合法,則將數據存儲。
進一步,所述步驟四中命令下發的方法包括:
(1)當有第三方物聯網應用調用物聯網數據管理系統的接口時,物聯網數據管理系統則將所下發的命令以廣播的形式下發到已經成功接入到物聯網數據支撐平臺的所有虛擬網關,命令包括命令體以及發送對象的唯一身份標識id;
(2)虛擬網關接收到物聯網數據管理系統的下發的命令後則按照規範對命令進行解析,若發送對象不屬於該虛擬網關,則停止執行,若發送對象屬於虛擬網關,則按照所適配的物聯網感知設備協議、命令格式將命令體轉換為物聯網感知設備可識別的形式;
(3)虛擬網關將轉換好的命令下發到命令發送對象所對應的物聯網感知設備。
本發明的另一目的在於提供一種應用所述的兼容多種協議的物聯網虛擬網關及節點接入認證方法的物聯網感知設備。
本發明的優點及積極效果為:當有一類新的物聯網感知設備需要接入物聯網數據支撐平臺時,只需要開發人員遵循平臺定義的規範、向下根據該類感知設備的傳輸協議和數據格式進行開發適配,而物聯網數據支撐平臺已有的代碼不需要做任何改變,以最小的代價接入了一種新類型的物聯網感知設備;同時虛擬網關對物聯網感知設備進行認證,雲平臺只需要對虛擬網關認證,可以規避認證風暴,通過層層認證,保證數據安全合法。
附圖說明
圖1是本發明實施例提供的兼容多種協議的物聯網虛擬網關及節點接入認證方法流程圖。
圖2是本發明實施例提供的一個總體架構的示意圖。
圖3是本發明實施例提供的一個虛擬網關註冊方法的示意圖。
圖4是本發明實施例提供的一個物聯網感知設備註冊方法的示意圖。
圖5是本發明實施例提供的數據上傳過程的示意圖。
圖6是本發明實施例提供的命令下發的流程示意圖。
具體實施方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。
下面結合附圖對本發明的應用原理作詳細的描述。
如圖1所示,本發明實施例提供的兼容多種協議的物聯網虛擬網關及節點接入認證方法包括以下步驟:
s101:開發人員在實名認證通過後,向物聯網數據支撐平臺發送虛擬網關創建請求,雲平臺驗證開發人員身份的合法後,根據時間戳等信息為虛擬網關生成唯一身份標識序列號sn以及數據上傳令牌apikey;並將序列號sn以及數據上傳令牌apikey返回給開發人員,由開發人員寫入虛擬網關;
s102:物聯網感知設備攜帶唯一身份標識id以及其適配該物聯網感知設備的虛擬網關的唯一身份標識序列號sn向物聯網數據支撐平臺發起設備註冊請求,物聯網數據支撐平臺根據物聯網感知設備id、虛擬網關序列號sn以及時間戳生成該物聯網感知設備的認證密鑰key,並將該key返回給物聯網感知設備,同時將物聯網感知設備id以及認證密鑰key同步到所屬虛擬網關;
s103:物聯網感知設備採集到數據後上傳到所對應的虛擬網關,虛擬網關首先驗證節點是否註冊成功,並驗證節點的合法性;虛擬網關將格式符合物聯網數據支撐平臺規範的數據上傳到物聯網數據支撐平臺,物聯網數據支撐平臺首先驗證虛擬網關序列號sn以及數據上傳令牌apikey是否合法,若合法則解析數據,將數據按照平臺規範存儲到資料庫;
s104:當第三方物聯網應用調用物聯網數據支撐平臺的接口下發命令時,物聯網數據支撐平臺將下發的命令廣播給所有虛擬網關,虛擬網關接收到命令後首先確認命令發送對象是否屬於該虛擬網關管理;若屬於則將命令轉換為所適配感知設備能識別的形式,下發到感知設備;若不屬於則不作響應。
下面結合附圖對本發明的應用原理作進一步的描述。
本發明可以兼容多種設備、多種協議、多種數據格式的物聯網虛擬網關,增加虛擬網關層後可以在不修改物聯網數據支撐平臺已有代碼的前提下實現以最小的代價接入的更多類型的物聯網感知設備,對各類物聯網感知設備進行統一管理。
如圖2所示,該架構圖分為四層,基於物聯網數據支撐平臺開發的第三方物聯網應用構成的應用層、物聯網數據支撐平臺、虛擬網關層以及由各類物聯網感知設備構成的底層硬體層。物聯網感知設備收集到的數據通過虛擬網關的數據收集模塊上傳到虛擬網關,虛擬網關驗證該物聯網感知設備的合法性後對收集到的數據按照物聯網數據支撐平臺的規範進行數據的格式化,然後通過平臺通信模塊將符合物聯網數據支撐平臺數據格式規範的數據上傳到物聯網數據支撐平臺,物聯網數據支撐平臺的虛擬網關通信模塊收到數據後由數據管理模塊進行解析存儲,以方便接口提供模塊為第三方物聯網應用提供數據支持。
當第三方物聯網應用通過接口提供模塊下發命令時,物聯網數據支撐平臺在數據管理模塊查詢下發命令所需的信息權限,通過虛擬網關通信模塊下發到虛擬網關,虛擬網關的平臺通信模塊接收到命令後,交由與物聯網感知設備適配的下發命令模塊處理,下發命令模塊將該命令轉換為物聯網感知設備可識別的命令形式,然後給物聯網感知設備下發命令。
任意一個虛擬網關通信模塊、平臺通信模塊的協議和數據格式均相同,但是虛擬網關的下發命令模塊和數據收集模塊則是對不同物聯網感知設備適配,在各個虛擬網關中這兩個模塊可能是不相同的。
本發明基於物聯網數據支撐平臺,用於為第三方物聯網應用與物聯網感知設備建立通信連接;以及管理各類物聯網感知設備收集到的數據。
所述虛擬網關可以是軟體程序,也可以是硬體設備,用於為物聯網感知設備與物聯網數據支撐平臺建立通信連接,屏蔽各類物聯網感知設備的差異性。所述虛擬網關包括:數據收集模塊、平臺通信模塊、命令下發模塊。所述命令下發模塊用於與物聯網感知設備保持連接,給物聯網感知設備發送命令,該模塊根據物聯網感知設備的種類、協議、數據格式進行適配,不同的虛擬網關該模塊也不相同;所述數據收集模塊用於接收物聯網感知設備收集到的數據,通過適配某類物聯網感知設備將該類的物聯網感知設備收集到的數據轉換為符合平臺規範的數據格式,不同的虛擬網關該模塊也不相同;所述平臺通信模塊用於上傳數據收集模塊格式化後的合法數據到物聯網數據支撐平臺,接收物聯網數據支撐平臺的下發的命令並轉發到所述命令下發模塊,該模塊遵循物聯網數據支撐平臺規範,任何一個虛擬網關的平臺通信模塊均相同。虛擬網關擁有唯一身份標識序列號sn和數據上傳令牌apikey。
所述物聯網感知設備泛指各類能接入網絡的傳感器設備,每個設備有一個出廠時寫入的設備唯一身份標識id,以及物聯網數據支撐平臺生成的認證密鑰key。
本發明實施例提供的兼容多種協議的物聯網虛擬網關及節點接入認證方法包括以下步驟:
步驟一、虛擬網關由物聯網數據支撐平臺開發人員開發,首先開發人員向物聯網數據支撐平臺發送虛擬網關創建請求,雲平臺驗證開發人員身份的合法後,根據時間戳等信息為虛擬網關生成唯一身份標識序列號sn以及數據上傳令牌apikey;並將該序列號sn以及數據上傳令牌apikey返回給開發人員,由開發人員寫入虛擬網關。
步驟二、物聯網感知設備攜帶唯一身份標識id以及其適配該物聯網感知設備的虛擬網關的唯一身份標識序列號sn向物聯網數據支撐平臺發起設備註冊請求,物聯網數據支撐平臺根據物聯網感知設備id、虛擬網關序列號sn以及時間戳生成該物聯網感知設備的認證密鑰key,並將該key返回給物聯網感知設備,同時將物聯網感知設備id以及認證密鑰key同步到所屬虛擬網關。
一個物聯網感知設備對應一個虛擬網關,一個虛擬網關對應多個物聯網感知設備,不同種類的感知設備對應不同的虛擬網關,同一個虛擬網關對應的感知設備種類均相同。
步驟三、物聯網感知設備採集到數據後上傳到所對應的虛擬網關,虛擬網關首先驗證節點是否註冊成功,並驗證節點的合法性,若該設備為合法設備則解析數據,將數據轉換為符合物聯網數據支撐平臺規範的數據格式。虛擬網關將格式符合物聯網數據支撐平臺規範的數據上傳到物聯網數據支撐平臺,該數據包括物聯網感知設備採集到的數據、物聯網感知設備唯一身份標識id、虛擬網關唯一身份標識序列號sn、虛擬網關數據上傳令牌apikey,物聯網數據支撐平臺首先驗證虛擬網關序列號sn以及數據上傳令牌apikey是否合法,若合法則解析數據,將數據按照平臺規範存儲到資料庫。
步驟四、當第三方物聯網應用調用物聯網數據支撐平臺的接口下發命令時,物聯網數據支撐平臺將下發的命令廣播給所有虛擬網關,該命令包括命令體和物聯網感知設備的唯一身份標識id,虛擬網關接收到命令後首先確認命令發送對象是否屬於該虛擬網關管理,若是,則將命令體解析為所適配的物聯網感知設備能夠識別的形式,下發給物聯網感知設備。
如圖3所示,是本發明步驟一中虛擬網關註冊的流程示意圖:
步驟s201,平臺開發人員向雲平臺發送虛擬網關創建請求,該請求包括開發人員用戶名、令牌等認證材料,可以唯一標識開發人員身份並可作為驗證開發人員合法性的依據;
步驟s202,物聯網數據支撐平臺對開發人員身份進行驗證,若合法,則允許該開發人員基於該平臺開發虛擬網關,並根據時間戳、開發人員身份id等信息生成虛擬網關的唯一身份標識序列號sn和數據上傳令牌apikey;
步驟s203,物聯網數據支撐平臺將虛擬網關的唯一身份標識序列號sn和數據上傳令牌apikey返回給平臺開發人員,開發人員開始虛擬網關的開發,並將序列號sn和數據上傳令牌apikey寫入虛擬網關。
步驟s204,虛擬網關申請接入物聯網數據支撐平臺,在物聯網數據支撐平臺驗證該虛擬網關的合法性後與虛擬網關建立連接,保持通信。
如圖4所示,是本發明步驟二中物聯網感知設備註冊的流程示意圖:
步驟s301,物聯網感知設備向物聯網數據支撐平臺發送註冊請求,該註冊請求包括該物聯網感知設備出廠內置的唯一身份標識id以及物聯網數據支撐平臺開發人員為該類感知設備適配的虛擬網關序列號sn;
步驟s302,物聯網數據支撐平臺首先根據虛擬網關序列號sn驗證該虛擬網關是否已經註冊成功,若驗證失敗,則不予註冊,若驗證通過,則根據該設備唯一身份標識id以及時間戳等信息生成驗證信息key;
步驟s303,物聯網數據支撐平臺將生成的驗證信息返回給該物聯網感知設備;
步驟s304,物聯網數據支撐平臺將註冊成功的物聯網感知設備唯一身份標識id以及生成的驗證信息key同步到該物聯網感知設備所對應的虛擬網關。
如圖5所示,是本發明步驟三中數據上傳的流程示意圖:
步驟s401,各類型物聯網感知設備將採集到的數據上傳到所對應的虛擬網關,攜帶該物聯網感知設備唯一身份標識id以及驗證信息key;
步驟s402,所對應虛擬網關接收到數據先根據物聯網感知設備唯一身份標識id以及驗證信息key驗證該設備是否合法,若不合法,拒絕接收數據,若合法,則解析數據,將數據解析為符合平臺規範的數據格式;
步驟s403,虛擬網關將解析好的數據上傳到物聯網數據管理系統,攜帶虛擬網關的唯一身份標識序列號sn、數據上傳令牌apikey以及物聯網感知設備的唯一身份標識id;
步驟s404,物聯網數據管理系統首先根據虛擬網關的唯一身份標識序列號sn、數據上傳令牌apikey驗證虛擬網關是否合法,若合法,則將數據存儲,因為虛擬網關已經對物聯網感知設備進行認證了,所以此時不再重複驗證物聯網感知設備合法性。
如圖6所示,是本發明步驟四中命令下發的流程示意圖:
步驟s501,當有第三方物聯網應用調用物聯網數據管理系統的接口時,物聯網數據管理系統則將所下發的命令以廣播的形式下發到已經成功接入到物聯網數據支撐平臺的所有虛擬網關,該命令包括命令體以及發送對象(物聯網感知設備)的唯一身份標識id;
步驟s502,虛擬網關接收到物聯網數據管理系統的下發的命令後則按照規範對命令進行解析,若發送對象不屬於該虛擬網關,則停止執行,若發送對象屬於該虛擬網關,則按照所適配的物聯網感知設備協議、命令格式將命令體轉換為物聯網感知設備可識別的形式。
步驟s503,虛擬網關將轉換好的命令下發到命令發送對象所對應的物聯網感知設備。
綜上所述,本發明在傳統物聯網數據支撐平臺基礎上增加虛擬網關後,物聯網數據支撐平臺對第三方物聯網應用屏蔽物聯網感知設備的差異性,而虛擬網關對物聯網數據支撐平臺屏蔽掉物聯網感知設備的差異性,當有新類型的物聯網感知設備需要接入物聯網數據支撐平臺時,只需要為該類型感知設備適配新的虛擬網關,在不修改物聯網數據支撐平臺已有代碼的前提下以最小的代價使物聯網數據支撐平臺兼容該類物聯網感知設備,滿足未來物聯網發展的需要,有效的解決物聯網數據支撐平臺對未來新類型物聯網感知設備的兼容問題。
以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。