CN110233909B - 一种无线网关及网络设备的地址码分配方法及装置 - Google Patents
一种无线网关及网络设备的地址码分配方法及装置 Download PDFInfo
- Publication number
- CN110233909B CN110233909B CN201910522521.6A CN201910522521A CN110233909B CN 110233909 B CN110233909 B CN 110233909B CN 201910522521 A CN201910522521 A CN 201910522521A CN 110233909 B CN110233909 B CN 110233909B
- Authority
- CN
- China
- Prior art keywords
- gateway
- address code
- data list
- address
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000004891 communication Methods 0.000 claims abstract description 80
- 230000004044 response Effects 0.000 claims description 60
- 230000001172 regenerating effect Effects 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 10
- 238000009826 distribution Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/26—Network addressing or numbering for mobility support
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种无线网关及网络设备的地址码分配方法和装置,该方法包括:第一网关向第一通信范围内的至少一个网关发送网关上线消息,该网关上线消息包括第一网关的第一网关地址码;第一网关接收第二网关发送的网关消息,该网关消息携带第一网关数据列表;第一网关根据第一网关数据列表重新生成第一网关地址码,重新生成的第一网关地址码与第一网关数据列表中的各个网关地址码均不相同;第一网关将重新生成的第一网关地址码加入第一网关数据列表,以生成第二网关数据列表,将第二网关数据列表发送给至少一个网关。本发明通过与已有地址id进行对比,解决无唯一地址码的设备间地址分配重复问题,减少产品的生产周期,降低管理成本和难度。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种无线网关及网络设备的地址码分配方法及装置。
背景技术
随着智能设备的普及,很多工业及家居电气产品都增加了通信单元,原有的有线通信已经难以满足现在的工业及家居电气产品的管理需求,因此无线通信的应用开始逐渐增加。现在的物联网(Internet of Things,IoT,又称传感网)产品常用的无线通信技术有多种,例如无线宽带(Wireless-Fidelity,WiFi)通信技术、蓝牙通信技术、zigbee通信技术、433MHz通信技术、2.4G通信技术等,其中,WiFi通信技术和蓝牙通信技术中通过通信标准约定每台设备具备唯一的MAC码(即地址码或地址id),在进行无线通信时不存在通信地址冲突的问题,而其他无线通信技术由于没有约定每台设备具备唯一地址id,可能会导致在同一地点通信时采用这些通信技术的通信设备因地址id重复而产生通信冲突,这就导致在工业及家居电气产品使用过程中如何防止通信地址冲突成为一个极其重要的问题。
现在,在部署利用这些无线通信技术来进行通信的通信环境时,一般会在为采用这些无线通信技术的设备的控制单元(Microcontroller Unit,MCU)烧录固件后,将唯一的地址id烧录至MCU的程序存储空间中,为该MCU对应的设备分配唯一的地址id。但是,通过这种方式防止通信地址冲突需要增加烧录工序,从而延长了生产周期,而且需要对已经烧录的地址id进行记录整理,否则可能会出现地址id重复烧录或丢失的情况,从而增加管理成本和难度。
发明内容
基于此,为解决上述提到的传统技术中需要增加烧录工序,并对已烧录的地址id进行记录整理,从而延长了生产周期,增加管理成本和难度等的技术问题,本发明提供了一种无线网关及网络设备的地址码分配方法及装置,以便在无需对地址id进行烧录的情况下,解决采用无线模组通信技术进行通信的设备的地址id分配重复问题,减少产品的生产周期,而且无需对烧录的地址id进行记录整理,从而降低了管理成本和难度。
本发明实施例第一方面提供了一种无线网关及网络设备的地址码分配方法,所述方法包括:
第一网关向第一通信范围内的至少一个网关发送网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码;
所述第一网关接收第二网关发送的网关消息,所述网关消息携带第一网关数据列表,所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括所述至少一个网关各自对应的网关地址码,所述第二网关为所述至少一个网关中的其中一个网关;
所述第一网关根据所述第一网关数据列表重新生成第一网关地址码,其中,重新生成的第一网关地址码与所述至少一个网关各自对应的网关地址码均不相同;
所述第一网关将所述重新生成的第一网关地址码加入所述第一网关数据列表,以生成第二网关数据列表,并将所述第二网关数据列表发送给所述至少一个网关,以使所述至少一个网关将所述第二网关数据列表设置为当前存储的网关数据列表。
其中,所述第二网关发送的网关消息为网关上线响应;
所述第一网关根据所述第一网关数据列表重新生成第一网关地址码包括:
所述第一网关对比所述第一网关数据列表中的网关地址码和所述第一网关地址码;
若所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码,则所述第一网关根据所述第一网关数据列表重新生成第一网关地址码。
可选的,所述第一网关发送的所述网关上线消息还包括第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述第二网关发送的网关消息为地址码更新消息,所述地址码更新消息为所述第二网关在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,将所述第一网络设备地址集与第二网络设备地址集进行比较后,确定由所述第一网关重新生成第一网关地址码后生成得到的,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码;
所述第一网关根据所述地址码更新消息重新生成第一网关地址码。
其中,所述方法之后还包括:
所述第一网关在接收到第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与第一网络设备地址集中的各个设备地址码均不相同,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码,所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
其中,所述第一网关根据所述第一网关数据列表重新生成第一网关地址码包括:
所述第一网关获取所述第一网关数据列表中处于第一预设地址范围内的网关地址码的数量,若所述第一网关数据列表中处于所述第一预设地址范围内的网关地址码的数量不大于第一数量阈值,则所述第一网关根据所述第一网关数据列表在所述第一预设地址范围内重新生成第一网关地址码;
若所述第一网关数据列表中处于所述第一预设地址范围内的网关地址码的数量大于第一数量阈值,则所述第一网关根据所述第一网关数据列表在第二预设地址范围内重新生成第一网关地址码,所述第一网关数据列表中处于所述第二预设地址范围内的网关地址码的数量不大于所述第一数量阈值。
本发明实施例是从第一网关的角度对由第一网关进行网关地址码更新的这种情况进行描述,该第一网关为上线网关,通过接收第二网关发送的网关消息,该网关消息携带第一网关数据列表,第一网关数据列表包括至少一个网关各自对应的网关地址码,且该至少一个网关间可以直接或间接通信,当第一网关数据列表中存在与第一网关的第一网关地址码相同的网关地址码,则生成一个新的网关地址码,该新的网关地址码与至少一个网关各自对应的网关地址码均不相同,从而使得第一网关与至少一个网关间不存在网关地址码冲突的情况,进而解决网关地址id重复分配的问题。
本发明实施例第二方面提供了一种无线网关及网络设备的地址码分配方法,所述方法包括:
第二网关接收第一网关发送的网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码;
所述第二网关向所述第一网关发送网关消息,所述网关消息包括第一网关数据列表,所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括至少一个网关各自对应的网关地址码,所述至少一个网关包括所述第二网关;
所述第二网关接收所述第一网关发送的第二网关数据列表,将所述第二网关数据列表设置为当前存储的网关数据列表,其中,所述第二网关数据列表为所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到,所述当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,根据所述第一网关数据列表重新生成的。
其中,所述第二网关发送的所述网关消息为网关上线响应;
所述第一网关当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,根据所述第一网关数据列表重新生成的。
其中,所述第一网关发送的网关上线消息还包括第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述第二网关向所述第一网关发送网关消息包括:
所述第二网关将所述第一网关当前的第一网关地址码与所述第一网关数据列表中的网关地址码进行比对;
在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码,并通过将所述第一网络设备地址集与所述第二网关的第二网络设备地址集进行比较,确定由所述第一网关重新生成第一网关地址码的情况下,向所述第一网关发送网关消息,所述网关消息为地址码更新消息,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码。
本发明实施例从第二网关的角度对由第一网关进行网关地址码更新的这种情况进行描述,该第二网关为已经在线的网关,该第二网关在接收到第一网关发送的网关上线消息时,向第一网关发送网关消息,该网关消息包括第一网关数据列表,用于记录与第二网关可以直接或间接通信的网关的网关地址码,使得第一网关生成的第一网关地址码与第一网关数据列表中的各个网关地址码均不相同,从而避免网关地址码冲突情况的发生。且第二网关接收第一网关发送的第二网关数据列表,该网关数据列表是第一网关将无冲突的第一网关地址码加入接收到的第一网关数据列表中得到的,第二网关将第二网关数据列表设置为当前存储的网关数据列表,即将存储的第一网关数据列表替换为第一网关发送的第二网关数据列表,从而实现对网关地址码的实时同步更新,与第一网关建立通信连接。由于第一网关地址码是根据第一网关数据列表生成的无冲突网关地址码,而第一网关数据列表包括可以直接或间接通信的至少一个网关各自对应的网关地址码,使得第二网关数据列表中的网关地址码没有出现重复,从而解决了这些网关地址码对应的网关间的地址id冲突问题,进而避免了可以直接或间接通信的网关间通信时出现消息误发。
本发明实施例第三方面提供了一种无线网关及网络设备的地址码分配方法,所述方法包括:
第二网关接收网关消息,所述网关消息包括当前上线的第一网关的第一网关地址码和第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
在确定所述第二网关的第二网关地址码与所述第一网关地址码相同,并通过对比所述第一网络设备地址集和所述第二网关的第二网络设备地址集确定由所述第二网关重新生成第二网关地址码的情况下,所述第二网关重新生成第二网关地址码,重新生成的第二网关地址码与所述第二网关当前存储的第一网关数据列表中的各个网关地址码以及所述第一网关地址码均不相同,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码;
所述第二网关将所述第二网关当前存储的第一网关数据列表中所述第二网关的第二网关地址码替换为重新生成得到的第二网关地址码,得到更新后的第一网关数据列表,并向所述第一网关发送网关上线响应,所述网关上线响应携带所述更新后的第一网关数据列表;
所述第二网关接收所述第一网关发送的第二网关数据列表,将所述第二网关数据列表设为当前存储的网关数据列表,其中,所述第二网关数据列表是所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到。
本发明实施例第四方面提供了一种无线网关及网络设备的地址码分配装置,所述装置包括:
发送模块,用于向第一通信范围内的至少一个网关发送网关上线消息,所述网关上线消息包括第一网关的第一网关地址码;
接收模块,用于接收第二网关发送的网关消息,所述网关消息携带第一网关数据列表,所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括所述至少一个网关各自对应的网关地址码,所述第二网关为所述至少一个网关中的其中一个网关;
生成模块,用于根据所述第一网关数据列表重新生成第一网关地址码,其中,重新生成的第一网关地址码与所述至少一个网关各自对应的网关地址码均不相同;
创建模块,用于将所述重新生成的第一网关地址码加入所述第一网关数据列表,以生成第二网关数据列表;
所述发送模块,还用于将所述第二网关数据列表发送给所述至少一个网关,以使所述至少一个网关将所述第二网关数据列表设置为当前存储的网关数据列表。
本发明实施例第五方面提供了一种无线网关及网络设备的地址码分配装置,所述装置包括:
接收模块,用于接收第一网关发送的网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码;
发送模块,用于向所述第一网关发送网关消息,所述网关消息包括第一网关数据列表,所述第一网关数据列表为第二网关当前存储的网关数据列表,所述第一网关数据列表包括至少一个网关各自对应的网关地址码,所述至少一个网关包括所述第二网关;
所述接收模块,还用接收所述第一网关发送的第二网关数据列表,其中,所述第二网关数据列表为所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到,所述当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,根据所述第一网关数据列表重新生成的;
创建模块,用于将所述第二网关数据列表设置为当前存储的网关数据列表。
本发明实施例第七方面提供了一种电子设备,包括处理器、存储器及收发器;
所述处理器分别与所述存储器和所述收发器相连,其中,所述收发器用于网关及设备间的数据交互,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如本发明实施例第一方面、第二方面或第三方面所提供的一种无线网关及其网络设备的地址码分配方法。
本发明实施例第八方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如本发明实施例第一方面、第二方面或第三方面所提供的一种无线网关及其网络设备的地址码分配方法。
本发明实施例中,具有如下有益效果:无需对地址id进行烧录就可以实现对无线网关及网络设备的地址id分配,解决了地址id重复分配问题,从而可以减少产品的生产周期和降低了管理成本和难度。
附图说明
图1为本发明实施例提供的一种可能的网关及网络设备的架构示意图;
图2为本发明实施例提供的第一种一方面的网关地址码分配流程图;
图3为本发明实施例提供的第一种二方面的网关地址码分配流程图;
图4为本发明实施例提供的第二种网关地址码分配流程图;
图5为本发明实施例提供的一种设备地址码分配方法流程图;
图6a是本发明实施例提供的一种网关地址码分配场景示意图;
图6b是本发明实施例提供的另一种网关地址码分配场景示意图;
图7是本发明实施例提供的一种可能的网关群示意图;
图8是本发明实施例提供的一种设备地址码分配场景示意图;
图9是本发明实施例提供的第一种无线网关及网络设备的地址码分配装置的结构示意图;
图10是本发明实施例提供的第二种无线网关及网络设备的地址码分配装置的结构示意图;
图11是本发明实施例提供的第三种无线网关及网络设备的地址码分配装置的结构示意图;
图12是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例适用于采用zigbee技术、433MHz通信技术等未明确约定通信设备的地址唯一的通信技术进行组网的物联网系统,其具体适用于对采用前述通信技术的物联网系统中的智能设备的通信管理。其中,该物联网系统中的智能设备可包括网关和网络设备,其中,网关是一种可以用于进行无线网络互连的设备,网关与网关之间可以实现无线网络互连,网络设备可以通过网关访问无线网络,网关可以对连接在该网关下的网络设备进行管理,网络设备可以通过网关与该物理网系统中的连接在其他网关下的其他网络设备通信。具体的,而网络设备只有通过绑定网关,才能访问无线网络,实现与绑定网关的其他网络设备及绑定网关的可通信范围内的其他网关或网络设备间的网络通信。物联网系统中的设备具体为网关还是网络设备可以由烧录在该设备的无线模组的固件上的程式决定。举例来说,网关例如可以为智能控制中心,网络设备可以为由改智能控制中心管理的智能家居设备,如智能冰箱、智能空调等。当一个通信范围内可以包括多个智能控制中心和多个智能家居设备。在智能控制中心开始工作或智能家居设备开始进行工作时可以通过本发明实施例提供的方法进行地址码生成。上述仅为一种可能的应用场景,其他基于zigbee技术、433MHz通信技术等组建的物联网也可以使用本发明实施例的技术方案提供的地址码生成方法,以防止地址码冲突。
具体参见图1,图1是本发明实施例提供的一种可能的网关及网络设备的架构示意图。在第一通信范围内,可以包括至少一个网关,每个网关可以包括零个或至少一个网络设备,每个网关及网络设备之间都可以进行直接或间接通信,其中,第一通信范围为以网关400为中心,该网关的发送的消息可以到达的最远通信距离所确定的通信范围。举例来说,若该网关400发送的消息可以到达的最远通信距离为100米,则该网关400对应的第一通信范围为与该网关400间的距离不超过100米的范围,可以认为该第一通信范围为一个以网关400为中心,半径为100米的圆形区域。
如图1所示,该第一通信范围内包括了至少一个在线网关,该至少一个在线网关包括网关100、网关200及网关300,其中,在线网关为处于工作状态的网关,该至少一个网关间可以通过无线网络进行直接或间接通信,可以用于进行无线网络互连,并绑定网络设备,为该网络设备提供访问无线网络的无线通信方式。以图1为例,网关100绑定了网络设备100a和网络设备100b,网关200绑定了网络设备200a、网络设备200b及网络设备200c,网关300绑定了网络设备300a。在该第一通信范围内所包括的各个网关间可以通过已经建立的通信连接关系,实现直接或间接通信,多个网关组成了一个在线网关群,网络设备可以通过绑定的网关与该绑定的网关绑定的其他网络设备或其他网关或其他网关绑定的网络设备间实现间接通信。
具体的,对于每个在线网关群来说,所包括的各个网关间均可以进行直接或间接通信,各个网关绑定的网络设备可以通过绑定的网关与其他网关及其他网络设备进行间接通信。对于同一个在线网关群中,每个网关都记录有网关数据列表和网络设备地址集,且每个网关记录的网关数据列表均相同。对于任一网关来说,该网关的网关数据列表包括该网关所在的在线网关群中所有网关的网关地址码,可以通过该网关数据列表来避免网关地址码冲突,具体是通过确保网关数据列表中的各个网关地址码互不相同,来确保该在线网关群中的各个在线网关的网关地址码互不相同。由于在同一个在线网关群中,网关地址码与在线网关是一一对应的关系,可以说网关地址码是对应的网关的唯一标识,用于在网关接收消息时基于该网关地址码判断自己是否为该消息的接收方,以确定读取或丢弃该消息;或者在该网关发送消息时作为该网关的发送方信息。其中,在线网关指的是处于工作状态的网关。同理,对于任一网关来说,该网关记录的网络设备地址集包括该网关绑定的所有网络设备的设备地址码,通过确保该网络设备地址集中包括的各个设备地址码互不相同,以确保该网关绑定的网络设备的设备地址码互不相同,从而避免网络设备间的设备地址码冲突,由于同一网关的设备地址码与网络设备一一对应,使得在网络设备发送或接收消息时,设备地址码可以表示该消息的唯一发送方或唯一接收方,避免消息误发等。
以图1为例,网关100、网关200及网关300的网关地址码互不相同;网关100所绑定的网络设备100a和网络设备100b的设备地址码不相同,网络设备100a的设备地址码和网络设备100b的设备地址码记录于网关100的网络设备地址集中,该网关100的网络设备地址集可以用于当网关100为请求绑定的网络设备生成设备地址码时,确保该设备地址码与网络设备地址集中所包含的各个设备地址码均不相同,从而使得请求绑定的网络设备的设备地址码与网关100已经绑定的网络设备的设备地址码均不相同;同理,网关200所绑定的网络设备200a、网络设备200b及网络设备200c的设备地址码均不相同,网络设备200a的设备地址码、网络设备200b的设备地址码及网络设备200c的设备地址码记录于网关200的网络设备地址集中,该网关200的网络设备地址集用于确保与网关200绑定的各个网络设备的设备地址码互不相同;同理,网关300所绑定的网络设备300a的设备地址码记录于网关300的网络设备地址集中,该网关300的网络设备地址集用于确保与网关300绑定的各个网络设备的设备地址码互不相同。网关100、网关200及网关300的网关数据列表相同,用于记录网关100的网关地址码、网关200的网关地址码及网关300的网关地址码,通过确保该网关数据列表中所包含的各个网关地址码互不相同,以使得网关100、网关200及网关300的网关地址码互不相同,可以认为,在同一个通信范围或在线网关群中,网关和网关地址码是一一对应的,因此,在有新的网关上线时,只要确保该上线网关的网关地址码与网关数据列表中所包含的网关地址码均不相同,便可以保障该上线网关的网关地址码与第一通信范围内所包括的网关100、网关200及网关300的网关地址码均不相同。
在一个实施例中,当网关400上线时,即网关400由关机状态变为工作状态,向上述第一通信范围内的各个网关发送网关上线消息,该网关上线消息包括网关400的网关地址码和网络设备地址集,网关400的网关地址码用于指示该网关上线消息的发送方,网络设备地址集用于指示网关400绑定了网络设备。若网关100或网关200或网关300当前存储的网关数据列表中所包括的网关地址码与网关400的网关地址码发生冲突,则发生冲突的网关地址码对应的网关与网关400间进行对比,确定需要重新生成网关地址码的网关,此处的当前存储的网关数据列表为网关100或网关200或网关300在接收到网关400发送的网关上线消息时获取的存储的网关数据列表。具体的,重新生成指生成一个新的,若某一网关重新生成网关地址码,指的是该网关生成一个新的网关地址码,以替换在生成该新的网关地址码之前所使用的网关地址码。以图1来说,由于该网关数据列表中包括的各个网关地址码为网关100、网关200及网关300的网关地址码,因此网关数据列表中包括的各个网关地址码与网关400发生冲突,就表示网关100、网关200及网关300中存在网关地址码与网关400的网关地址码相同的网关。若网关400需要重新生成网关地址码,则网关400根据网关数据列表生成一个新的网关地址码,该网关400生成的新的网关地址码与网关数据列表中所包含的各个网关地址码均不相同,该网关400将生成的新的网关地址码加入网关数据列表中,以使得该网关400的网关地址码与网关100、网关200及网关300的网关地址码均不相同,并将更新后的网关数据列表广播给第一通信范围内的所有网关,以使第一通信范围内的所有网关的网关数据列表被替换为更新后的网关数据列表,使得网关400加入上述在线网关群中,从而避免第一通信范围内的各个网关间发生地址冲突;若网关100、网关200和网关300中与网关400发生冲突的是网关200,且网关200需要重新生成网关地址码,则网关200生成一个新的网关地址码,该网关200生成的新的网关地址码与网关100、网关300及网关400的网关地址码均不相同,并将当前存储的网关数据列表中网关200的网关地址码替换为网关200生成的新的网关地址码,将更新后的网关数据列表发送给在线网关群中的其他网关及网关400。具体来说,网关在生成网关地址码或判断网关地址码冲突时,均是通过与网关数据列表中包含的各个网关地址码进行对比,只要网关地址码与网关数据列表中包含的各个网关地址码均不相同,则表示该网关地址码与该网关数据列表对应的在线网关群中的各个网关均无地址冲突。
在另一个实施例中,当网关400上线时,即网关400由关机状态变为工作状态,向上述第一通信范围内的各个网关发送网关上线消息,该网关上线消息包括网关400的网关地址码,网关400的网关地址码用于指示该网关上线消息的发送方,当网关400未绑定网络设备时,网关上线消息不用包括网络设备地址集。当网关400接收到网关100或网关200或网关300发送的网关消息时,该网关消息包括网关100或网关200或网关300当前存储的网关数据列表,根据该网关数据列表确定是否重新生成网关地址码,其中,当前存储的网关数据列表为网关100或网关200或网关300发送网关消息时所存储的网关数据列表,包括网关100、网关200及网关300的网关地址码。若网关400的网关地址码与网关数据列表中包含的各个网关地址码中的其中一个网关地址码发生冲突,则生成一个新的网关地址码,该新的网关地址码与网关数据列表中包含的各个网关地址码均不相同,以使新的网关地址码与网关100、网关200及网关300的网关地址码均不相同,将新的网关地址码加入网关数据列表中,将更新后的网关数据列表广播给网关100、网关200及网关300;若网关400的网关地址码与网关数据列表中包含的网关地址码不冲突,则将该网关400的网关地址码加入网关数据列表中,将更新后的网关数据列表广播给网关100、网关200及网关300。从而使得网关100、网关200及网关300更新记录的网关数据列表。
在又一个实施例中,当第一通信范围内的网络设备100c上线时,即该网络设备100c开机启动时,向该第一通信范围内的网关发送网关绑定请求,若网关100接收到网络设备100c的网关绑定请求,根据网关100当前存储的网络设备地址集为网络设备100c生成一个设备地址码,该设备地址码与该网络设备地址集中包含的各个设备地址码均不相同,以使该设备地址码与网络设备100a和网络设备100b的设备地址码均不相同,并将生成的设备地址码加入网关100的网络设备地址集中,以记录绑定的所有网络设备的设备地址码,从而避免网络设备100c与网络设备100a及网络设备100b间发生地址冲突,即确保该网关100绑定的所有网络设备的设备地址码互不相同。其中,若是网关200或网关300接收到该网络设备100c的网关绑定请求,为该网络设备100c生成设备地址码的过程与网关100所示过程相同。
以上结合系统架构介绍了本发明实施例的应用场景,接下介绍实现上述应用场景的技术方案。
请参见图2,图2是本发明实施例提供的第一种一方面的网关地址码分配流程图,该方法为第一网关对自身的第一网关地址码进行更新的一种方法说明,其中,此处的第一网关指当前上线的网关,该方法是从当前上线的网关角度进行描述,该当前上线的网关记为第一网关。
具体该方法包括如下步骤:
步骤S101,向第一通信范围内的至少一个网关发送网关上线消息。
本发明实施例中,第一网关向第一通信范围内的至少一个网关发送网关上线消息,该网关上线消息包括第一网关的第一网关地址码。具体来说,当第一网关上线时,在自身存在第一网关地址码的情况下,根据自身的第一网关地址码生成网关上线消息,若不存在,则在第一预设地址范围内随机生成一个第一网关地址码,根据随机生成的第一网关地址码生成网关上线消息,向第一通信范围内的至少一个网关发送该网关上线消息,其中,第一通信范围为该第一网关可以发送消息的最大通信距离。其中,若第一网关的第一网络设备地址集不为空,则生成的网关上线消息还包括第一网关的第一网络设备地址集。其中,该网关上线消息携带的第一网关地址码用于表示发送方信息,该网关上线消息为广播消息。
其中,一种可能的方式中,在其他网关对该第一网关的网关上线消息进行响应时,在其他网关生成的消息为单播消息,因此第一网关在发送的网关上线消息上添加第一消息标识,该第一消息标识用于指示网关上线消息,以区分其他类消息,可以在接收方的网关地址码出现冲突时,发生冲突的网关地址码对应的网关通过该第一消息标识确定接收或者丢弃该网关上线消息。
步骤S102,接收第二网关发送的网关消息。
具体的,第一网关接收第二网关发送的网关消息,该网关消息携带第一网关数据列表,第一网关数据列表是第二网关当前存储的网关数据列表,该第一网关数据列表包括至少一个网关各自对应的网关地址码,第二网关是第一网关的第一通信范围内的至少一个网关中的其中一个网关。其中,该第一网关数据列表中所包含的各个网关地址码对应的网关可以认为组成了一个在线网关群,该在线网关群中的各个网关之间可以直接或间接通信。其中,在第一网关更新第一网关地址码的情况下,包括如下两种情况:
在第一种可能的情况下,第一网关的第一网络设备地址集为空,此时第一网关发送的网关上线消息只包括第一网关地址码,第二网关发送的网关消息是网关上线响应,此时由于第一网关没有绑定的网络设备,因此第一网关在重新生成第一网关地址码后不需更改其他的数据,使得该种情况下,第一网关所接收的第二网关发送的网关消息为网关上线响应,为一个简单的响应消息,第二网关没有进行其他操作。
在第二种可能的情况下,第一网关的网络设备地址集不为空,在该情况下,第一网关发送的网关上线消息还包括第一网络设备地址集,以使接收到网关上线消息的网关获取到该第一网关的网络设备地址集,此时第二网关发送的网关消息为地址码更新消息,该地址码更新消息为第二网关将第一网关当前的第一网关地址码与第一网关数据列表中的网关地址码进行比对,确定第一网关数据列表中存在与第一网关地址码相同的网关地址码后,且第二网关为网关地址码与第一网关的第一网关地址码相同的网关,根据第一网络设备地址集与第二网关的第二网络设备地址集进行比较,进而确定由第一网关重新生成第一网关地址码后生成得到的。
具体的,当第一网关接收到第二网关发送的网关消息后,获取该网关消息携带的接收方信息为第一网关地址码,且该网关消息携带第一消息标识作为第一消息标识对应消息的响应消息。例如,假定第一网关与第三网关的网关地址码相同时,第一网关发送了携带第一消息标识的网关上线消息,则当第一网关和第三网关接收到携带第一消息标识的网关消息,第一网关根据该第一消息标识接收该网关消息,第三网关根据该第一消息标识丢弃该网关消息。
步骤S103,根据第一网关数据列表重新生成第一网关地址码。
具体的,在执行步骤S103之前,第一网关的网关地址为第一网关地址码,在第一网关接收到步骤S102中的网关消息之后,将该第一网关地址码与第一网关数据列表中的各个网关地址码进行对比,若第一网关数据列表中不存在与第一网关地址码相同的网关地址码,则将该第一网关地址码设为第一网关当前存储的第一网关地址码;若找到相同的网关地址码,则再次在第一预设地址范围内随机生成一个第一网关地址码,直至该第一网关地址码与第一网关数据列表中的各个网关地址码均不相同。
其中,可以通过预设的网关地址码生成规则直接生成一个第一网关地址码,该第一网关地址码与至少一个网关各自对应的网关地址码均不相同。该预设的网关地址码生成规则,可以为按序生成或其他预设规则,使得每次生成的网关地址码与前一个生成的网关地址码不同。如若已经依次生成了1,2,3,4四个网关地址码,通过变量记录4,下一次生成网关地址码时根据该变量生成网关地址码5,从而使得每次生成的网关地址码均不相同。
还可以通过在预设地址范围内随机生成一个网关地址码,在生成后与接收到的网关数据列表中的各个网关地址码进行遍历对比,若网关数据列表中存在与生成的网关地址码相同的网关地址码时,再次随机生成一个网关地址码,直至得到的网关地址码与网关数据列表中的各个网关地址码均不相同。
其中,上述网关地址码的生成方式同样适用于其他网关生成网关地址码或为网络设备生成设备地址码。
其中,在步骤S102中第一种可能的情况下,第一网关接收到第二网关发送的网关上线响应后,对比第一网关数据列表中的网关地址码和第一网关地址码,若在第一网关数据列表中查找到与第一网关地址码相同的网关地址码,则第一网关根据第一网关数据列表重新生成第一网关地址码;
在步骤S102中第二种可能的情况下,第一网关接收到第二网关发送的地址码更新消息,该地址码更新消息用于指示第一网关为需要重新生成第一网关地址码的网关,第一网关根据该地址码更新消息重新生成第一网关地址码。
可选的,第一网关可以获取第一网关数据列表中处于第一预设地址范围内的网关地址码的数量,若第一网关数据列表中处于第一预设地址范围内的网关地址码的数量不大于第一数量阈值,则该第一网关根据第一网关数据列表在第一预设地址范围内重新生成第一网关地址码;若第一网关数据列表中处于第一预设地址范围内的网关地址码的数量大于第一数量阈值,则第一网关根据第一网关数据列表在第二预设地址范围内重新生成第一网关地址码,第一网关数据列表中处于第二预设地址范围内的网关地址码的数量不大于第一数量阈值。其中,第一预设地址范围为预设的网关地址码的取值范围,该第一预设地址范围可以指定网关地址码为一个字节(0~255)或多个字节,也可以是预先设定的其他范围。可选的,可以预先设置多个预设地址范围,第一网关数据列表中在第一预设地址范围内的网关地址码的数量大于第一数量阈值,则重新选取第二预设地址范围,从而使得每个预设地址范围内的网关地址码的数量控制在一个第一数量阈值范围内,减少生成重复的网关地址码的次数。
步骤S104,将重新生成的第一网关地址码加入第一网关数据列表中,生成第二网关数据列表,将第二网关数据列表发送给至少一个网关。
具体的,第一网关将重新生成的第一网关地址码加入第一网关数据列表中,生成第二网关数据列表,将第二网关数据列表发送给至少一个网关,具体将第二网关数据列表进行广播,以使至少一个网关将第二网关数据列表设置为当前存储的网关数据列表。即可以认为将该第一网关加入上述在线网关群中,并将该第二网关数据列表设置为该在线网关群中各个网关当前存储的网关数据列表,从而保障该在线网关群中的各个网关的网关数据列表均相同。
请参见图3,图3是本发明实施例提供的第一种二方面的网关地址码分配流程图,该方法为第一网关对自身的第一网关地址码进行更新的一种方法说明,其中,此处的第一网关指当前上线的网关,该方法是从已经在线的网关角度进行描述,该已经在线的网关记为第二网关,且该第二网关的第二网关地址码与第一网关的第一网关地址码相同,该方法包括如下步骤:
步骤S201,接收第一网关发送的网关上线消息。
具体的,在第一网关向第一通信范围内的至少一个网关广播网关上线消息后,第一通信范围内的至少一个网关中的第二网关接收到第一网关发送的网关上线消息,该网关上线消息包括第一网关的第一网关地址码。其中,当第一网关的第一网络设备地址集不为空时,该网关上线消息还包括第一网络设备地址集。
步骤S202,向第一网关发送网关消息。
具体的,第二网关获取到网关上线消息后,向第一网关发送网关消息,该网关消息包括第一网关数据列表,第一网关数据列表为第二网关当前存储的网关数据列表,第一网关数据列表包括至少一个网关各自对应的网关地址码。其中,该网关消息可以携带第一消息标识,用于指示只有发送带有第一消息标识的网关上线消息的网关可以接收该网关消息,该网关消息为第一消息标识对应的消息的响应,其中,结合步骤S201可以理解为可以接收该网关消息的网关为第一网关。具体的,当第一网关发送的网关上线消息包括第一网关的第一网关地址码时,表示第一网关的第一网络设备地址集为空,第二网关根据第一网关数据列表生成网关上线响应,即第二网关发送的网关消息为网关上线响应;当第一网关发送的网关上线消息包括第一网关地址码及第一网关的第一网络设备地址集时,表示第一网关的第一网络设备地址集不为空,则第二网关将第一网关当前的第一网关地址码与第一网关数据列表中的网关地址码进行比对后,确定该第一网关数据列表中存在与第一网关地址码相同的网关地址码,第二网关根据第一网络设备地址集与第二网关的第二网络设备地址集进行比较,从而确定由第一网关重新生成第一网关地址码后,向第一网关发送网关消息,该网关消息为地址码更新消息,该地址码更新消息用于指示接收方更新网关地址码。
其中,由于第二网关为网关地址码与第一网关地址码相同的网关,当第二网关的第二网络设备地址集不为空,且第二网关的第二网络设备地址集所包含的设备地址码的数量大于第一网关的第一网络设备地址集所包含的设备地址码的数量,则确定由第一网关重新生成第一网关地址码,并向该第一网关发送网关消息。此为一种可能的确定由第一网关重新生成第一网关地址码的方式,其他对第一网关和第二网关进行对比并确定由第一网关重新生成第一网关地址码的方式,也可以包含于本发明实施例中,如第一网关和第二网关的信号强度等,此时上述发送的网关数据列表中也需携带进行对比时所需的数据,在此不再进行赘述。
步骤S203,接收第一网关发送的第二网关数据列表。
具体的,第二网关接收第一网关发送的第二网关数据列表,将第二网关数据列表设置为当前存储的网关数据列表,其中第二网关数据列表是第一网关将当前存储的第一网关地址码加入第一网关数据列表得到,当前存储的第一网关地址码为第一网关在接收到网关消息后,根据第一网关数据列表重新生成的,具体是第一网关在接收到第二网关发送的网关消息后,对比第一网关数据列表中的网关地址码和第一网关地址码,在第一网关数据列表中查找到与第一网关地址码相同的网关地址码后,根据第一网关数据列表重新生成的。该第一网关地址码及第二网关数据列表的生成过程具体参见图2中步骤S103和步骤S104所示。
请参见图4,图4是本发明实施例提供的第二种网关地址码分配流程图,该方法为第二网关对自身的第二网关地址码进行更新的一种方法说明,其中,此处的第二网关指已经在线的网关,即为可以接收第一网关发送的网关上线消息的网关,其中,该第二网关的第二网关地址码与第一网关上线时使用的第一网关地址码相同,该方法从已经在线的网关角度进行描述,包括如下步骤:
步骤S301,接收网关消息。
具体的,第二网关接收网关消息,该网关消息包括当前上线的第一网关的第一网关地址码和第一网络设备地址集,第一网络设备地址集包括与第一网关绑定的各个网络设备的设备地址码。其中,该网关消息可以携带第二网关地址码作为接收方信息或者不携带接收方信息以表示该网关消息为广播消息。由于本发明实施例是在第二网关对自身的第二网关地址码进行更新的角度进行描述,因此接收到的网关消息包括第一网关的第一网络设备地址集,以指示该第一网关的第一网络设备地址集不为空,从而第二网关才可能会需要更新自身的第二网关地址码。
具体的,第一种可能的情况下,该网关消息为第一网关发送的网关上线消息,该网关上线消息携带发送方信息,其中,发送方信息为第一网关的第一网关地址码。且该网关上线消息携带第一消息标识,用于指示该网关上线消息,从而第一网关根据该第一消息标识接收该网关上线消息的响应消息。
第二种可能的情况下,该网关消息为第三网关发送的地址码冲突消息,该地址码冲突消息是第三网关在接收到第一网关发送的网关上线消息后,将第一网关地址码与第三网关当前存储的第三网关数据列表中的网关地址码进行比对,确定第三网关当前存储的第三网关数据列表中存在与第一网关地址码相同的网关地址码后,第三网关根据第三网关数据列表中与第一网关地址码相同的网关地址码生成的,且生成的地址码冲突消息包括第三网关接收到的第一网关的第一网关地址码及第一网络设备地址集,其中网关上线消息携带第一消息标识。其中,与所述第一网关地址码相同的网关地址码对应的网关可以认为是第二网关。该地址码冲突消息用于指示接收方的网关地址码与第一网关的第一网关地址码相同,其中,该地址码冲突消息携带的发送方信息为第三网关的第三网关地址码,接收方信息为第一网关地址码。具体的,该地址码冲突消息携带第二消息标识,用于指示发送携带第一消息标识消息的网关不需接收该消息,根据本情况中的描述可以认为该不需接收地址码冲突消息的网关为第一网关,即当第一网关接收到该地址码冲突消息后,根据第二消息标识将地址码冲突消息丢弃,从而避免由于第一网关地址码和第二网关地址码相同时造成的地址码冲突消息接收方不明的情况。
步骤S302,重新生成第二网关地址码。
具体的,由于第二网关的第二网关地址码与第一网关地址码相同,第二网关通过对比第一网络设备地址集和第二网关的第二网络设备地址集确定由第二网关重新生成第二网关地址码。
当接收到的网关消息为第一网关发送的网关上线消息时,由于第二网关的第二网关地址码与第一网关地址码相同,则第二网关通过对比第一网络设备地址集和第二网关的第二网络设备地址集确定由第二网关重新生成第二网关地址码。具体的,第二网关的第二网关地址码与第一网关地址码相同是第二网关在对比第一网关的第一网关地址码与第一网关数据列表,在第一网关数据列表中查找到与第一网关地址码相同的网关地址码,且与第一网关地址码相同的网关地址码对应的网关为第二网关后得到的。或者,第二网关在接收到第一网关发送的网关上线消息后,先对比第一网关地址码与当前存储的第二网关地址码,从而确定第二网关的第二网关地址码与第一网关的第一网关地址码相同。其中,若第二网关的网络设备地址集为空,或者第二网关的第二网络设备地址集中所包含的设备地址码数量小于第一网关的第一网络设备地址集中所包含的设备地址码数量,则确定由第二网关重新生成第二网关地址码。第二网关重新生成第二网关地址码,重新生成的第二网关地址码与第二网关当前存储的第一网关数据列表中的各个网关地址码及第一网关地址码均不相同。
当接收到的网关消息为第三网关发送的地址码冲突消息,该地址码冲突消息表示接收方的网关地址码与第一网关的第一网关地址码相同,则第二网关通过对比第一网络设备地址集和第二网关的第二网络设备地址集确定由第二网关重新生成第二网关地址码,第二网关重新生成第二网关地址码,重新生成的第二网关地址码与第二网关当前存储的第一网关数据列表中的各个网关地址码及第一网关地址码均不相同。
步骤S303,更新第一网关数据列表,向第一网关发送网关上线响应。
具体的,第二网关将当前存储的第一网关数据列表中第二网关的第二网关地址码替换为重新生成得到的第二网关地址码,得到更新后的第一网关数据列表,并向第一网关发送网关上线响应,该网关上线响应携带更新后的第一网关数据列表。其中,该网关上线响应还携带第一消息标识,用于指示该消息为网关上线消息的响应消息。
步骤S304,接收第一网关发送的第二网关数据列表。
具体的,第二网关接收第一网关发送的第二网关数据列表,将该第二网关数据列表设为当前存储的网关数据列表,其中,该第二网关数据列表是第一网关将当前存储的第一网关地址码加入第一网关数据列表中得到的。
其中,在第二网关接收到第三网关发送的地址码冲突消息之前,该第三网关执行如下过程:
当第三网关接收到第一网关发送的网关上线消息,获取到该网关上线消息包括的第一网关的第一网关地址码和第一网络设备地址集,将该第一网关地址码与第三网关的第三网关数据列表中的各个网关地址码进行对比,若在该第三网关数据列表中查找到与第一网关地址码相同的网关地址码,且与该第一网关地址码相同的网关地址码对应的网关不是第三网关,则第三网关根据网关上线消息生成地址码冲突消息,该地址码冲突消息包括第一网关的第一网关地址码和第一网络设备地址集,且该地址码冲突消息携带发送方信息和接收方信息,该发送方信息为第三网关的第三网关地址码,接收方信息为与第一网关地址码相同的网关地址码,并为该地址码冲突消息添加第二消息标识,用于指示发送网关上线消息的网关不需接收该消息,以使在第一网关接收到该地址码冲突消息后,检测到接收方是第一网关地址码,也会由于第二消息标识将该地址码冲突消息丢弃。其中,第三网关的第三网关数据列表与第二网关的第二网关数据列表的内容相同。
其中,上述图2至图4中所示方法,当接收方信息指定唯一接收方,但存在相同网关地址码时,则通过对发送消息添加消息标识实现指定该发送消息由某一个网关接收或某一个网关不需要接收。
其中,当网关发送的消息为广播消息时,可以不为该广播消息添加接收方信息,或者为该广播消息添加广播地址码作为接收方信息,以指示接收到该广播消息的所有网关均获取该广播消息的内容,而不丢弃消息。
本发明实施例中,通过第一网关发送网关上线消息,将第一网关的第一网关地址码与可以接收到该网关上线消息的网关群中的各个网关的网关数据列表中的各个网关地址码进行对比,在没有重复情况时,直接将第一网关地址码加入网关数据列表,并将更新后的网关数据列表发送给网关群中的各个网关,以使各个网关将更新后的网关数据列表设为当前存储的网关数据列表,若出现重复网关地址码,则对比第一网关与第二网关的网络设备地址集,确定重新生成网关地址码的网关,将重新生成的网关地址码加入网关数据列表或替换网关数据列表中的对应网关地址码,其中,第二网关为网关地址码与第一网关的第一网关地址码相同的网关,从而使得第一网关的第一网关地址码与接收到的网关数据列表中的各个网关地址码均不相同,进而该第一网关的第一网关地址码与可以进行通信的网关的网关地址码均不相同,避免地址id分配重复问题。无需对地址id进行烧录,就可以解决地址id分配重复问题,减少了产品的生产周期,降低了管理成本和难度。
请参见图5,图5是本发明实施例提供的一种设备地址码分配方法流程图,该方法从网关的角度对网关为网络设备分配设备地址码的过程进行描述,此处的第一网关为在线网关中接收到第一网络设备发送的网关绑定请求的网关,该方法包括如下步骤:
步骤S401,接收第一网络设备的网关绑定请求。
具体的,第一网关接收第一网络设备发送的网关绑定请求,该网关绑定请求是一个广播消息,即接收方信息为接收到该网关绑定请求的所有网关,该网关绑定请求携带第三消息标识,该第三消息标识用于指示第一网络设备需要与网关进行绑定,从而通过该第三消息标识接收网关的绑定消息。
步骤S402,生成第一设备地址码。
具体的,第一网关在接收到上述网关绑定请求后,生成第一设备地址码,将第一设备地址码与第一网关的第一网络设备地址集中所包含的各个设备地址码进行对比,若第一网络设备地址集中存在与第一设备地址码相同的设备地址码,则第一网关重新生成第一设备地址码,其中,重新生成的第一设备地址码与第一网络设备地址集中的各个设备地址码均不相同。
其中,第一网关在第一预设设备地址范围内随机生成第一设备地址码,该第一预设地址范围可以为一个字节(0~255)或者多个字节,也可以是其他的一个预设范围。其中,设备地址码所处的第一预设地址范围可以与网关地址码所处的预设地址范围相同,也可以不同。
步骤S403,向第一网络设备发送网关绑定响应。
具体的,第一网关向第一网络设备发送网关绑定响应,该网关绑定响应包括第一设备地址码及第一网关的第一网关地址码,用于为第一网络设备分配地址id为第一设备地址码,并绑定到第一网关上。其中,该网关绑定响应携带第三消息标识,作为第一网络设备发送的网关绑定请求的响应消息。
步骤S404,接收第一网络设备的绑定确认消息。
具体的,第一网关接收第一网络设备发送的绑定确认消息,该绑定确认消息包括第一设备地址码,该绑定确认消息携带的发送方信息为第一设备地址码,接收方信息为第一网关地址码。第一网关将第一设备地址码加入第一网络设备地址集中,以将第一网络设备绑定到第一网关中。
其中,对于本方法中从第一网络设备的角度来说,过程如下:
第一网络设备上线后,发送网关绑定请求,该网关绑定请求的接收方为能够接收到该网关绑定请求的所有网关,当第一网络设备接收到任一网关的网关绑定响应,将该网关绑定响应包括的第一设备地址码设为当前存储的设备地址码,并向发送该网关绑定响应的网关发送绑定确认消息,以使该网关与第一网络设备进行绑定。其中,该网关在此处为第一网关。若第一网络设备接收到多个网关发送的网关绑定响应,则获取第一个接收到的网关绑定响应,或者根据其他规则进行确定要接收的网关绑定响应,在此不做限定。
其中,为了提高网关和网络设备绑定的准确性,进行绑定的网关和网络设备可以进行多次绑定确认,以减少网关和网络设备绑定信息出现误差的情况。
本发明实施例通过第一网关在接收到第一网络设备的网关绑定请求,通过与第一网关的第一网络设备地址集中包含的各个设备地址码进行对比,随机生成一个与第一网关所绑定的各个网络设备的设备地址码均不相同的第一设备地址码,将该第一设备地址码发送给第一网络设备,实现对第一网关和第一网络设备的绑定,并避免设备地址码冲突的情况。
请参见图6a,图6a是本发明实施例提供的一种网关地址码分配场景示意图,这里假定该场景下存在一个在线网关群50,该在线网关群50包括第二网关502、第三网关503及第四网关504,该在线网关群50中所包括的各个网关当前存储的网关数据列表相同,记作第一网关数据列表,假定生成网关地址码的第一预设地址范围为0~255。该网关地址码分配过程具体如下:
第一网关501广播网关上线消息,该网关上线消息包括第一网关的第一网关地址码,假定为202,该第一网关的第一通信范围内存在的网关为在线网关群50中的各个网关,当在线网关群50中的第二网关502接收到第一网关发送的网关上线消息,对比第一网关地址码与第一网关数据列表中的各个网关地址码。假定第二网关502的第二网关地址码为202,第三网关503的第三网关地址码为15,第四网关504的第四网关地址码为65,则该第一网关数据列表中包括{202,15,65}。
第一种可能的情况中,若第一网关501发送的网关上线消息不包括第一网关501的第一网络设备地址集,表示该第一网关501未绑定网络设备,则第二网关502直接向第一网关501发送网关消息,该网关消息为网关上线响应,该网关上线响应包括第一网关数据列表。当第一网关501接收到第一网关数据列表后,将第一网关地址码202与第一网关数据列表{202,15,65}中的各个网关地址码进行对比,发现与第一网关地址码202相同的网关地址码,则重新生成第一网关地址码为30,再次对比第一网关地址码202与第一网关数据列表中的各个网关地址码,未发现相同的网关地址码,则将重新生成的第一网关地址码30加入第一网关数据列表,生成第二网关数据列表{202,15,65,30},并将该第二网关数据列表广播给在线网关群50中的各个网关,以使各个网关将第二网关数据列表设为当前存储的网关数据列表,同时第一网关将第二网关数据列表设为当前存储的网关数据列表。
第二种可能的情况中,若第一网关501发送的网关上线消息包括第一网关501的第一网络设备地址集,表示该第一网关501绑定网络设备,第二网关502接收到该网关上线消息,将第一网关地址码与第一网关数据列表{202,15,65}中的各个网关地址码进行对比,发现与第一网关地址码相同的网关地址码202,且该网关地址码为第二网关502的第二网关地址码,第二网关502对比第二网关502的第二网络设备地址集与第一网络设备地址集,确定需要重新生成网关地址码为第一网关501或第二网关502,该确定方式参见上述图2至图5中所述,在此不再赘述。第二网关502向第一网关501发送网关消息,该网关消息包括第一网关数据列表,若确定由第一网关501重新生成网关地址码,则该网关消息为地址码更新消息,第一网关501根据该地址码更新消息重新生成第一网关地址码30,并将该第一网关地址码加入第一网关数据列表生成第二网关数据列表{202,15,65,30},将第二网关数据列表发送给在线网关群50中的各个网关,使得第一网关加入该在线网关群,该在线网关群中的各个网关的网关数据列表为第二网关数据列表{202,15,65,30}。
请参见图6b,图6b是本发明实施例提供的另一种网关地址码分配场景示意图,这里假定该场景下存在一个在线网关群50,该在线网关群50包括第二网关502、第三网关503及第四网关504,该在线网关群50中所包括的各个网关当前存储的网关数据列表相同,记作第一网关数据列表,假定生成网关地址码的第一预设地址范围为0~255。该网关地址码分配过程具体如下:
第一网关501广播网关上线消息,该网关上线消息包括第一网关的第一网关地址码和第一网络设备地址集,第一网关地址码假定为202,该第一网关的第一通信范围内存在的网关为在线网关群50中的各个网关,当在线网关群50中的第三网关503接收到第一网关发送的网关上线消息,对比第一网关地址码与第一网关数据列表中的各个网关地址码。假定第二网关502的第二网关地址码为202,第三网关503的第三网关地址码为15,第四网关504的第四网关地址码为65,则该第一网关数据列表中包括{202,15,65}。
第三网关503对比第一网关地址码和第一网关数据列表中的各个网关地址码,发现与第一网关地址码相同的网关地址码,且该网关地址码对应的网关不为第三网关503,则根据该网关地址码202向第二网关502发送地址码冲突消息,该地址码冲突消息包括第一网关地址码和第一网络设备地址集,当第二网关接收到地址码冲突消息,则对比第二网关502的第二网络设备地址集与第一网络设备地址集,确定需要重新生成网关地址码为第一网关501或第二网关502,执行如图6a中第二种可能的情况中所述过程,在此不再进行赘述。
根据上述图6a或图6b所述的过程,可以得到如图7所示的一种可能的网关群示意图。这里假定的是第一网关绑定第二网络设备5011,第二网关绑定第三网络设备5021和第四网络设备5022,第四网关绑定第五网络设备5041。该在线网关群50包括第一网关501、第二网关502、第三网关503及第四网关504,在该在线网关群中的各个网关及其每个网关绑定的网络设备间都可以直接或间接进行通信。
请参见图8,图8是本发明实施例提供的一种设备地址码分配场景示意图,该方法从网关角度对设备地址码分配过程进行描述,该过程具体如下所示:
第一网络设备5012广播网关绑定请求,当第一网关501接收到网关绑定请求后,生成第一设备地址码,并向第一网络设备5012发送网关绑定响应,该网关绑定响应包括第一设备地址码,第一网络设备5012接收到网关绑定响应后,将该第一设备地址码设为当前存储的设备地址码,并将绑定的网关的网关地址码设为第一网关501的第一网关地址码。第一网络设备5012向第一网关501发送绑定确认消息,以使第一网关501获取到第一网络设备的绑定消息,并与该第一网络设备绑定,将第一设备地址码加入第一网关501的第一网络设备地址集。具体过程参见图5中所述描述。
请参见图9,图9是本发明实施例提供的第一种无线网关及网络设备的地址码分配装置的结构示意图。如图9所示,该无线网关及网络设备的地址码分配装置80可以用于执行上述图2和图5对应实施例中的步骤,该装置从上线网关的角度进行描述,用于当前上线网关进行网关地址码更新,该装置包括:
发送模块801,用于向第一通信范围内的至少一个网关发送网关上线消息,所述网关上线消息包括第一网关的第一网关地址码;
接收模块802,用于接收第二网关发送的网关消息,所述网关消息携带第一网关数据列表,所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括所述至少一个网关各自对应的网关地址码,所述第二网关为所述至少一个网关中的其中一个网关;
生成模块803,用于根据所述第一网关数据列表重新生成第一网关地址码,其中,重新生成的第一网关地址码与所述至少一个网关各自对应的网关地址码均不相同;
创建模块804,用于将所述重新生成的第一网关地址码加入所述第一网关数据列表,以生成第二网关数据列表;
上述发送模块801,还用于将所述第二网关数据列表发送给所述至少一个网关,以使所述至少一个网关将所述第二网关数据列表设置为当前存储的网关数据列表。
其中,在所述第二网关发送的网关消息为网关上线响应方面,上述生成模块803,具体用于:
第一网关对比第一网关数据列表中的网关地址码和第一网关地址码;
若第一网关数据列表中存在与第一网关地址码相同的网关地址码,则第一网关根据第一网关数据列表重新生成第一网关地址码。
其中,在所述第一网关发送的所述网关上线消息还包括第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码,所述第二网关发送的网关消息为地址码更新消息方面,上述生成模块803具体用于:
第一网关根据地址码更新消息重新生成第一网关地址码;
所述第二网关发送的网关消息为地址码更新消息,所述地址码更新消息为第二网关在确定第一网关数据列表中存在与第一网关地址码相同的网关地址码的情况下,将第一网络设备地址集与第二网络设备地址集进行比较后,确定由第一网关重新生成第一网关地址码后生成得到的,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码。
其中,所述装置80适用于所有在线网关时,还包括:
上述接收模块802,还用于接收第一网络设备的网关绑定请求;
上述生成模块803,还用于所述第一网关在接收到所述网关绑定请求后,为所述第一网络设备生成第一设备地址码,第一设备地址码与所述第一网络设备地址集中的各个设备地址码均不相同,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
上述发送模块801,还用于所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
上述接收模块802,还用于所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码;
上述创建模块804,还用于所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
其中,上述生成模块803包括:
获取单元8031,用于获取所述第一网关数据列表中处于第一预设地址范围内的网关地址码的数量;
生成单元8032,用于若所述第一网关数据列表中处于所述第一预设地址范围内的网关地址码的数量不大于第一数量阈值,则所述第一网关根据所述第一网关数据列表在所述第一预设地址范围内重新生成第一网关地址码;
上述生成单元8032,还用于若所述第一网关数据列表中处于所述第一预设地址范围内的网关地址码的数量大于第一数量阈值,则所述第一网关根据所述第一网关数据列表在第二预设地址范围内重新生成第一网关地址码,所述第一网关数据列表中处于所述第二预设地址范围内的网关地址码的数量不大于所述第一数量阈值。
请参见图10,图10是本发明实施例提供的第二种无线网关及网络设备的地址码分配装置的结构示意图。如图10所示,该无线网关及网络设备的地址码分配装置90可以用于执行上述图3对应实施例中的步骤,该装置从已经在线的角度进行描述,用于当前上线网关进行网关地址码更新,该装置包括:
接收模块901,用于接收第一网关发送的网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码;
发送模块902,用于向所述第一网关发送网关消息,所述网关消息包括第一网关数据列表,所述第一网关数据列表为第二网关当前存储的网关数据列表,所述第一网关数据列表包括至少一个网关各自对应的网关地址码,所述至少一个网关包括所述第二网关;
上述接收模块901,还用接收所述第一网关发送的第二网关数据列表,其中,所述第二网关数据列表为所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到,所述当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,根据所述第一网关数据列表重新生成的;
创建模块903,用于将所述第二网关数据列表设置为当前存储的网关数据列表。
其中,在所述第二网关发送的所述网关消息为网关上线响应方面,所述第一网关当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,根据所述第一网关数据列表重新生成的。
其中,在所述第一网关发送的网关上线消息还包括第一网络设备地址集方面,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码,上述发送模块902包括:
对比单元9021,用于将所述第一网关当前的第一网关地址码与所述第一网关数据列表中的网关地址码进行比对;
确定单元9022,用于确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码;
上述对比单元9021,还用于将所述第一网络设备地址集与所述第二网关的第二网络设备地址集进行比较;
上述确定单元9022,还用于将所述第一网络设备地址集与所述第二网关的第二网络设备地址集进行比较,确定由所述第一网关重新生成第一网关地址码;
发送单元9023,用于向所述第一网关发送网关消息,所述网关消息为地址码更新消息,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码。
请参见图11,图11是本发明实施例提供的第三种无线网关及网络设备的地址码分配装置的结构示意图。如图11所示,该无线网关及网络设备的地址码分配装置110可以用于执行上述图4对应实施例中的步骤,该装置从已经在线的角度进行描述,用于已经在线网关进行网关地址码更新,该装置包括:
接收模块1101,用于接收网关消息,所述网关消息包括当前上线的第一网关的第一网关地址码和第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
确定模块1102,用于确定第二网关的第二网关地址码与所述第一网关地址码相同,并通过对比所述第一网络设备地址集和所述第二网关的第二网络设备地址集确定由所述第二网关重新生成第二网关地址码;
生成模块1103,用于重新生成第二网关地址码,重新生成的第二网关地址码与所述第二网关当前存储的第一网关数据列表中的各个网关地址码以及所述第一网关地址码均不相同,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码;
创建模块1104,用于将所述第二网关当前存储的第一网关数据列表中所述第二网关的第二网关地址码替换为重新生成得到的第二网关地址码,得到更新后的第一网关数据列表;
发送模块1105,用于向所述第一网关发送网关上线响应,所述网关上线响应携带所述更新后的第一网关数据列表;
上述接收模块1101,还用于接收所述第一网关发送的第二网关数据列表,其中,所述第二网关数据列表是所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到;
上述创建模块1104,还用于将所述第二网关数据列表设置为当前存储的网关数据列表。
其中,所述网关消息为所述第一网关发送的网关上线消息;或者,
所述网关消息为第三网关发送的地址码冲突消息方面,所述地址码冲突消息为所述第三网关在接收到所述第一网关发送的网关上线消息后,在确定所述第三网关当前存储的第三网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,所述第三网关根据所述第三网关数据列表中与所述第一网关地址码相同的网关地址码生成的,与所述第一网关地址码相同的网关地址码为所述第二网关地址码。
本发明实施例从当前上线网关及已经在线网关的不同方面,对当前在线网关进行网关地址码更新或者已经在线网关进行网关地址码更新进行了描述,具体通过无线网关及网络设备的地址码分配装置在网关上线时,生成一个随机的网关地址码,并接收已经在线网关的网关数据列表,通过对比随机生成的网关地址码与网关数据列表中的各个网关地址码,出现网关地址码重复情况下通过对比确定重新生成网关地址码的网关,该网关重新生成网关地址码,使得最终得到的网关地址码在网关数据列表中不会重复,从而避免了网关地址码冲突导致的通信消息交付错误的情况。同时,网关随机生成一个设备地址码,为需要进行绑定的网络设备分配设备地址码,该随机生成的设备地址码与网关的网络设备地址集中各个设备地址码均不相同,从而避免了网络设备的设备地址码冲突情况。由于本发明实施例中所提到的网关数据列表及网络设备地址集均为网关进行自动化生成或更新,无需对地址id进行烧录,就可以解决地址id分配重复问题,减少了产品的生产周期,降低了管理成本和难度。
请参见图12,图12是本发明实施例提供的一种电子设备的结构示意图。如图12所示,本发明实施例中的电子设备可以包括:一个或多个处理器1201、存储器1202和收发器1203。上述处理器1201、存储器1202和收发器1203通过总线1204连接。
具体的,处理器1201可用于调用存储于存储器1402中的程序,例如本发明实施例的一个或多个实施例提供的无线网关及网络设备的地址码分配方法在第一网关侧、第二网关侧或网络设备侧的实现程序,并执行该程序包含的指令。
存储器1202与处理器1201耦合,用于存储各种软件程序和/或多组指令。具体实现中,存储器1202可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器1202中内置有操作系统,例如Linux、Windows等操作系统。存储器1202还可以内置网络通信程序,该网络通信程序可用于与其他设备进行通信。
在本申请的一些实施例中,存储器1202可用于存储本发明实施例的一个或多个实施例提供的无线网关及网络设备的地址码分配方法在第一网关侧、第二网关侧或网络设备侧的实现程序。关于本发明实施例提供的无线网关及网络设备的地址码分配方法的实现,请参考前述方法实施例。
收发器1203可用于电子设备与其他设备通信,例如网关、网络设备等。
具体实现中,上述电子设备可通过其内置的各个功能模块执行如上述图2至图5中各个步骤所提供的实现方式,具体可参见上述图2至图5中各个步骤所提供的实现方式,在此不再赘述。
本发明实施例通过提供一种电子设备,包括:处理器、收发器、存储器,通过处理器获取存储器中的计算机指令,执行上述图2至图5中所示方法的各个步骤,进行无线网关及网络设备的地址码分配操作。通过存储器中的计算机指令,处理器执行对网关或网络设备的地址码的随机生成过程,且随机生成的网关地址码与网关数据列表中的各个网关地址码均不相同,设备地址码与网络设备地址集中的各个设备地址码均不相同,从而避免网关地址码或设备地址码重复分配的情况。由于网关数据列表和网络设备地址集是网关自动进行生成或更新的,无需人工进行记录和管理,并且不需要在产品出厂阶段进行地址码的烧录,从而减少了产品的生产周期,并降低了管理成本和难度。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (14)
1.一种无线网关及网络设备的地址码分配方法,其特征在于,所述方法包括:
第一网关向第一通信范围内的至少一个网关发送网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码及第一消息标识;所述第一消息标识用于指示所述网关上线消息;
若第二网关发送的网关消息包括所述第一消息标识,则所述第一网关接收所述第二网关发送的网关消息,所述网关消息携带第一网关数据列表,所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括所述至少一个网关各自对应的网关地址码,所述第二网关为所述至少一个网关中的其中一个网关;
所述第一网关根据所述第一网关数据列表重新生成第一网关地址码,其中,重新生成的第一网关地址码与所述至少一个网关各自对应的网关地址码均不相同;
所述第一网关将所述重新生成的第一网关地址码加入所述第一网关数据列表,以生成第二网关数据列表,并将所述第二网关数据列表发送给所述至少一个网关,以使所述至少一个网关将所述第二网关数据列表设置为当前存储的网关数据列表;
所述方法还包括:
所述第一网关在接收到第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与第一网络设备地址集中的各个设备地址码均不相同,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码,所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
2.如权利要求1所述的方法,其特征在于,所述网关消息为网关上线响应;
所述第一网关根据所述第一网关数据列表重新生成第一网关地址码包括:
所述第一网关对比所述第一网关数据列表中的网关地址码和所述第一网关地址码;
若所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码,则所述第一网关根据所述第一网关数据列表重新生成第一网关地址码。
3.如权利要求1所述的方法,其特征在于,所述第二网关发送的网关消息为地址码更新消息,所述地址码更新消息为所述第二网关在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,将所述第一网络设备地址集与第二网络设备地址集进行比较后,确定由所述第一网关重新生成第一网关地址码后生成得到的,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码。
4.如权利要求1所述的方法,其特征在于,所述第一网关根据所述第一网关数据列表重新生成第一网关地址码包括:
所述第一网关获取所述第一网关数据列表中处于第一预设地址范围内的网关地址码的数量,若所述第一网关数据列表中处于所述第一预设地址范围内的网关地址码的数量不大于第一数量阈值,则所述第一网关根据所述第一网关数据列表在所述第一预设地址范围内重新生成第一网关地址码;
若所述第一网关数据列表中处于所述第一预设地址范围内的网关地址码的数量大于第一数量阈值,则所述第一网关根据所述第一网关数据列表在第二预设地址范围内重新生成第一网关地址码,所述第一网关数据列表中处于所述第二预设地址范围内的网关地址码的数量不大于所述第一数量阈值。
5.一种无线网关及网络设备的地址码分配方法,其特征在于,所述方法包括:
第二网关接收第一网关发送的网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码及第一消息标识;所述第一消息标识用于指示所述网关上线消息;
所述第二网关向所述第一网关发送网关消息,所述网关消息包括第一网关数据列表及所述第一消息标识,以使所述第一网关基于所述第一消息标识接收所述网关消息;所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括至少一个网关各自对应的网关地址码,所述至少一个网关包括所述第二网关;
所述第二网关接收所述第一网关发送的第二网关数据列表,将所述第二网关数据列表设置为当前存储的网关数据列表,其中,所述第二网关数据列表为所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到,所述当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,根据所述第一网关数据列表重新生成的;
所述方法还包括:
所述第一网关在接收到第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与第一网络设备地址集中的各个设备地址码均不相同,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码,所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
6.如权利要求5所述的方法,其特征在于,所述第二网关发送的所述网关消息为网关上线响应;
所述第一网关当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,根据所述第一网关数据列表重新生成的。
7.如权利要求5所述的方法,其特征在于,所述第二网关向所述第一网关发送网关消息包括:
所述第二网关将所述第一网关当前的第一网关地址码与所述第一网关数据列表中的网关地址码进行比对;
在确定所述第一网关数据列表中存在与所述第一网关地址码相同的网关地址码,并通过将所述第一网络设备地址集与所述第二网关的第二网络设备地址集进行比较,确定由所述第一网关重新生成第一网关地址码的情况下,向所述第一网关发送网关消息,所述网关消息为地址码更新消息,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码。
8.一种无线网关及网络设备的地址码分配方法,其特征在于,所述方法包括:
第二网关接收网关消息,所述网关消息包括当前上线的第一网关的第一网关地址码、第一消息标识和第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;所述第一消息标识用于指示所述网关上线消息;
在确定所述第二网关的第二网关地址码与所述第一网关地址码相同,并通过对比所述第一网络设备地址集和所述第二网关的第二网络设备地址集确定由所述第二网关重新生成第二网关地址码的情况下,所述第二网关重新生成第二网关地址码,重新生成的第二网关地址码与所述第二网关当前存储的第一网关数据列表中的各个网关地址码以及所述第一网关地址码均不相同,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码;
所述第二网关将所述第二网关当前存储的第一网关数据列表中所述第二网关的第二网关地址码替换为重新生成得到的第二网关地址码,得到更新后的第一网关数据列表,并向所述第一网关发送网关上线响应,所述网关上线响应携带所述更新后的第一网关数据列表;
所述第二网关接收所述第一网关发送的第二网关数据列表,将所述第二网关数据列表设置为当前存储的网关数据列表,其中,所述第二网关数据列表是所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到;
所述方法还包括:
所述第一网关在接收到第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与所述第一网络设备地址集中的各个设备地址码均不相同;
所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码,所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
9.如权利要求8所述的方法,其特征在于,所述网关消息为所述第一网关发送的网关上线消息;或者,
所述网关消息为第三网关发送的地址码冲突消息,所述地址码冲突消息为所述第三网关在接收到所述第一网关发送的网关上线消息后,在确定所述第三网关当前存储的第三网关数据列表中存在与所述第一网关地址码相同的网关地址码的情况下,根据所述与所述第一网关地址码相同的网关地址码生成的,所述与所述第一网关地址码相同的网关地址码为所述第二网关地址码。
10.一种无线网关及网络设备的地址码分配装置,其特征在于,所述装置包括:
发送模块,用于向第一通信范围内的至少一个网关发送网关上线消息,所述网关上线消息包括第一网关的第一网关地址码及第一消息标识;所述第一消息标识用于指示所述网关上线消息;
接收模块,用于若第二网关发送的网关消息包括所述第一消息标识,则接收所述第二网关发送的网关消息,所述网关消息携带第一网关数据列表,所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括所述至少一个网关各自对应的网关地址码,所述第二网关为所述至少一个网关中的其中一个网关;
生成模块,用于根据所述第一网关数据列表重新生成第一网关地址码,其中,重新生成的第一网关地址码与所述至少一个网关各自对应的网关地址码均不相同;
创建模块,用于将所述重新生成的第一网关地址码加入所述第一网关数据列表,以生成第二网关数据列表;
所述发送模块,还用于将所述第二网关数据列表发送给所述至少一个网关,以使所述至少一个网关将所述第二网关数据列表设置为当前存储的网关数据列表;
所述接收模块,还用于接收第一网络设备的网关绑定请求;
所述生成模块,还用于所述第一网关在接收到所述第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与第一网络设备地址集中的各个设备地址码均不相同,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述发送模块,还用于所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述接收模块,还用于所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码;
所述创建模块,还用于所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
11.一种无线网关及网络设备的地址码分配装置,其特征在于,所述装置包括:
第二网关所对应的接收模块,用于接收第一网关发送的网关上线消息,所述网关上线消息包括所述第一网关的第一网关地址码及第一消息标识;所述第一消息标识用于指示所述网关上线消息;
所述第二网关所对应的发送模块,用于向所述第一网关发送网关消息,所述网关消息包括第一网关数据列表及所述第一消息标识,以使所述第一网关基于所述第一消息标识接收所述网关消息;所述第一网关数据列表为所述第二网关当前存储的网关数据列表,所述第一网关数据列表包括至少一个网关各自对应的网关地址码,所述至少一个网关包括所述第二网关;
所述第二网关所对应的接收模块,还用于接收所述第一网关发送的第二网关数据列表,其中,所述第二网关数据列表为所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到,所述当前存储的第一网关地址码为所述第一网关在接收到所述网关消息后,根据所述第一网关数据列表重新生成的;
所述第二网关所对应的创建模块,用于将所述第二网关数据列表设置为当前存储的网关数据列表;
所述第一网关所对应的接收模块,还用于接收第一网络设备的网关绑定请求;
所述第一网关所对应的生成模块,用于所述第一网关在接收到第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与第一网络设备地址集中的各个设备地址码均不相同,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;
所述第一网关所对应的发送模块,用于所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述第一网关所对应的接收模块,还用于所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码;
所述第一网关所对应的创建模块,用于所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
12.一种无线网关及网络设备的地址码分配装置,其特征在于,所述装置包括:
第二网关所对应的接收模块,用于接收网关消息,所述网关消息包括当前上线的第一网关的第一网关地址码、第一消息标识和第一网络设备地址集,所述第一网络设备地址集包括与所述第一网关绑定的各个网络设备的设备地址码;所述第一消息标识用于指示所述网关上线消息;
所述第二网关所对应的确定模块,用于确定所述第二网关的第二网关地址码与所述第一网关地址码相同,并通过对比所述第一网络设备地址集和所述第二网关的第二网络设备地址集确定由所述第二网关重新生成第二网关地址码;
所述第二网关所对应的生成模块,用于重新生成第二网关地址码,重新生成的第二网关地址码与所述第二网关当前存储的第一网关数据列表中的各个网关地址码以及所述第一网关地址码均不相同,所述第二网络设备地址集包括与所述第二网关绑定的各个网络设备的设备地址码;
所述第二网关所对应的创建模块,用于将所述第二网关当前存储的第一网关数据列表中所述第二网关的第二网关地址码替换为重新生成得到的第二网关地址码,得到更新后的第一网关数据列表;
所述第二网关所对应的发送模块,用于向所述第一网关发送网关上线响应,所述网关上线响应携带所述更新后的第一网关数据列表;
所述第二网关所对应的接收模块,还用于接收所述第一网关发送的第二网关数据列表,其中,所述第二网关数据列表是所述第一网关将当前存储的第一网关地址码加入所述第一网关数据列表得到;
所述第二网关所对应的创建模块,还用于将所述第二网关数据列表设置为当前存储的网关数据列表;
所述第一网关所对应的接收模块,还用于接收第一网络设备的网关绑定请求;
所述第一网关所对应的生成模块,用于所述第一网关在接收到第一网络设备的网关绑定请求后,为所述第一网络设备生成第一设备地址码,所述第一设备地址码与所述第一网络设备地址集中的各个设备地址码均不相同;
所述第一网关所对应的发送模块,用于所述第一网关向所述第一网络设备发送网关绑定响应,所述网关绑定响应包括所述第一设备地址码及所述第一网关的第一网关地址码;
所述第一网关所对应的接收模块,用于所述第一网关接收所述第一网络设备的绑定确认消息,所述绑定确认消息包括所述第一设备地址码;
所述第一网关所对应的创建模块,用于所述第一网关将所述第一设备地址码加入所述第一网络设备地址集中。
13.一种电子设备,其特征在于,包括处理器、存储器及收发器;
所述处理器分别与所述存储器和所述收发器相连,其中,所述收发器用于网关及设备间的数据交互,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-4任一项所述的方法或如权利要求5-7任一项所述的方法或如权利要求8-9任一项所述的方法。
14.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-4任一项所述的方法或如权利要求5-7任一项所述的方法或如权利要求8-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910522521.6A CN110233909B (zh) | 2019-06-17 | 2019-06-17 | 一种无线网关及网络设备的地址码分配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910522521.6A CN110233909B (zh) | 2019-06-17 | 2019-06-17 | 一种无线网关及网络设备的地址码分配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110233909A CN110233909A (zh) | 2019-09-13 |
CN110233909B true CN110233909B (zh) | 2022-08-09 |
Family
ID=67860080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910522521.6A Active CN110233909B (zh) | 2019-06-17 | 2019-06-17 | 一种无线网关及网络设备的地址码分配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110233909B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101990004A (zh) * | 2010-11-05 | 2011-03-23 | 中国科学院声学研究所 | 一种基于物联网家庭网关的虚拟id和虚拟ip分配方法 |
CN102932491A (zh) * | 2011-08-12 | 2013-02-13 | 中兴通讯股份有限公司 | 地址配置方法和系统 |
CN103312546A (zh) * | 2013-06-14 | 2013-09-18 | 杭州沃云科技有限公司 | 一种自动配置管理ZigBee网络的方法 |
-
2019
- 2019-06-17 CN CN201910522521.6A patent/CN110233909B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101990004A (zh) * | 2010-11-05 | 2011-03-23 | 中国科学院声学研究所 | 一种基于物联网家庭网关的虚拟id和虚拟ip分配方法 |
CN102932491A (zh) * | 2011-08-12 | 2013-02-13 | 中兴通讯股份有限公司 | 地址配置方法和系统 |
CN103312546A (zh) * | 2013-06-14 | 2013-09-18 | 杭州沃云科技有限公司 | 一种自动配置管理ZigBee网络的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110233909A (zh) | 2019-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10204072B2 (en) | Method for automatically allocating addresses to similar bus users | |
CN107104836A (zh) | Zigbee设备的固件升级方法和装置 | |
CN105392181A (zh) | 一种智能设备的联网方法、装置及系统 | |
CN113114545B (zh) | 设备自组网方法、装置及空调系统 | |
JP5341080B2 (ja) | 通信システムにおけるパイロット擬似乱数のノイズ符号競合を解決するための方法および装置 | |
CN110708400B (zh) | 网络地址分配方法、装置、节点设备及存储介质 | |
CN105578594A (zh) | 一种资源分配方法及装置 | |
CN113114792A (zh) | 设备自组网方法、装置及空调系统 | |
CN110233909B (zh) | 一种无线网关及网络设备的地址码分配方法及装置 | |
CN109803470B (zh) | 路灯控制方法、路灯及路灯控制系统 | |
CN104363581A (zh) | 一种关联终端的确定方法及相关设备 | |
CN113381916A (zh) | Can总线智能家居管理方法、装置、设备及存储介质 | |
CN111935726B (zh) | 通信处理方法、主节点、从节点、存储介质及系统 | |
CN105045224A (zh) | 数据传输的方法和装置 | |
CN112243042B (zh) | 分配方法、安全通信方法、检测装置、网关模块及系统 | |
CN113438781B (zh) | 控制方法、控制装置及照明系统 | |
CN108134858B (zh) | 组网方法、服务器、客户机和网络系统 | |
CN111698342A (zh) | 温控器通信地址分配方法及系统 | |
CN116938712A (zh) | 设备升级方法、设备升级装置以及计算机可读存储介质 | |
CN105578453B (zh) | 一种寻址方法及设备 | |
CN106028303B (zh) | 一种智能设备的发现方法及装置 | |
CN112888063B (zh) | 远端机入网方法、系统、电子装置及存储介质 | |
CN105207811B (zh) | 一种替换非AllJoyn设备的方法及装置 | |
CN113395366A (zh) | 一种网络地址分配方法及装置 | |
CN113259928A (zh) | Ota升级方法、装置、电子设备、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 518000 Guangdong science and technology innovation and Research Institute, Shenzhen, Shenzhen, Nanshan District No. 6, science and technology innovation and Research Institute, Shenzhen, D 10, 1004, 10 Patentee after: Shenzhen Hetai intelligent home appliance controller Co.,Ltd. Address before: 518000 Guangdong science and technology innovation and Research Institute, Shenzhen, Shenzhen, Nanshan District No. 6, science and technology innovation and Research Institute, Shenzhen, D 10, 1004, 10 Patentee before: SHENZHEN H&T DATA RESOURCES AND CLOUD TECHNOLOGY Ltd. |
|
CP01 | Change in the name or title of a patent holder |