CN110635942A - 设备发现方法、物联网设备、物联网服务器 - Google Patents
设备发现方法、物联网设备、物联网服务器 Download PDFInfo
- Publication number
- CN110635942A CN110635942A CN201910821074.4A CN201910821074A CN110635942A CN 110635942 A CN110635942 A CN 110635942A CN 201910821074 A CN201910821074 A CN 201910821074A CN 110635942 A CN110635942 A CN 110635942A
- Authority
- CN
- China
- Prior art keywords
- internet
- network
- things
- equipment
- information
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- 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/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种设备发现方法、物联网设备、物联网服务器,包括至少一个物联网设备,所述物联网设备与物联网服务器进行信息传递、物联网设备属于一子网络,所述子网络属于一NAT网络,方法包括:发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成NAT网络的邻居表,以根据所述邻居表建立连接;其中,所述设备信息关联的物联网设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络由NAT设备隔离形成的局域网。本发明提供的技术方案可以发现不同局域网子网中的设备。
Description
技术领域
本发明涉及通信技术领域,具体地涉及一种设备发现方法、物联网设备、物联网服务器。
背景技术
随着物联网(Internet of things,IOT)设备越来越普及,如餐饮店、超市等单个主体空间内会存在大量的IOT设备。部分需要相互协作的IOT设备往往需要先进行设备发现,然后建立连接,进而进行数据通信。进行连接和数据通信的前提在于各个IOT设备能够相互发现对方,能够获取到对方的IP地址。
目前的一些标准设备采用的发现协议都是通过多播或者广播来发现设备的。比如零配置联网协议Bonjour或者其他大部分私有发现协议都是基于多播或广播实现的。但是,如果各个IOT设备跨局域网子网,位于不同局域网和/或子网,则通常无法发现彼此。然而,在大型商场或超市内的局域网中,却往往存在多个子网。在这种情况下,如何发现不同子网内的设备,还需进一步研究。
发明内容
本发明解决的技术问题是如何发现不同子网内的设备。
为解决上述技术问题,本发明实施例提供一种设备发现方法,包括至少一个物联网设备,所述物联网设备与物联网服务器进行信息传递、所述物联网设备属于一子网络,所述子网络属于一NAT网络,所述方法包括:发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;其中,所述设备信息关联的物联网设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
可选的,所述上报信息包括:所述物联网设备关联的用户账户信息及所述子网络的IP地址,所述用户账户信息用于标识所述NAT网络。
可选的,在发送上报信息至物联网服务器之前,所述物联网设备发现方法还包括:与所述物联网服务器建立消息队列遥测传输协议连接;或者,与所述物联网服务器建立TCP连接;或者,与所述物联网服务器建立UDP连接。
可选的,所述设备信息包括以下一项或多项:所述NAT网络的网络标识、设备类型、设备标识、所述子网络的IP地址及其掩码。
为解决上述技术问题,本发明实施例还提供一种设备发现方法,包括至少一个物联网服务器、所述物联网服务器控制的至少一个NAT网络,所述NAT网络包含至少一个子网络,所述子网络包含至少一个物联网设备,所述方法包括:接收所述物联网设备的上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立连接;其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
可选的,在接收物联网设备的上报信息之前,所述物联网设备发现方法还包括:与所述物联网设备建立消息队列遥测传输协议连接;或者,与所述物联网设备建立TCP连接;或者,与所述物联网设备建立UDP连接。
可选的,所述设备信息包括以下一项或多项:所述NAT网络的网络标识、设备类型、设备标识、所述子网络的IP地址及其掩码。
为解决上述技术问题,本发明实施例还提供一种物联网设备,所述物联网设备与物联网服务器进行信息传递、所述物联网设备属于一子网络,所述子网络属于一NAT网络,所述物联网设备包括:发送模块,用于发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;接收模块,用于接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;其中,所述设备信息关联的物联网设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
为解决上述技术问题,本发明实施例还提供一种物联网服务器,所述物联网服务器控制至少一个NAT网络,所述NAT网络包含至少一个子网络,每一所述子网络包含至少一个物联网设备,所述物联网服务器包括:接收模块,用于接收物联网设备的上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;下发模块,用于向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立连接;其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
为解决上述技术问题,本发明实施例还提供一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述方法的步骤。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
本发明实施例提供一种设备发现方法,包括至少一个设备,所述物联网设备进行信息传递的物联网服务器、所述物联网设备属于一子网络,所述子网络属于一NAT网络,以及,所述方法包括:发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。本发明实施例将属于同一NAT网络的各个设备的设备信息存储在物联网服务器,由物联网服务器集中控制同一NAT网络的设备信息,并将设备信息告知该NAT网络内的各个设备,由设备通过邻居表保存。本发明实施例可以发现不同子网中的设备,且无需对网关或设备本身进行复杂配置,简化了跨子网的设备发现过程,为跨网络设备建立通信连接提供了一种简单的可行方案。
进一步,所述上报信息包括:所述物联网设备关联的用户账户信息及所述子网络的IP地址,所述用户账户信息用于标识所述NAT网络。本发明实施例利用设备关联的用户账户信息标识网络,使得各个物联网设备和物联网服务器可以得知哪些物联网设备属于同一账户。
进一步,所述设备信息包括以下一项或多项:所述NAT网络的网络标识、设备类型、设备标识、所述子网络的IP地址及其掩码。本发明实施例通过物联网服务器下发的设备信息,使得所述物联网设备可以得知其他物联网设备的主要信息,为建立通信连接提供可能。
附图说明
图1是本发明实施例的一种网络结构示意图;
图2是本发明实施例的一种设备发现方法的流程示意图;
图3是本发明实施例的又一种设备发现方法的流程示意图;
图4是本发明实施例的一种设备发现装置的结构示意图;
图5是本发明实施例的又一种设备发现装置的结构示意图。
具体实施方式
本领域技术人员理解,如背景技术所言,现有技术中的设备发现方案存在缺陷,难以发现跨子网设备,不利于跨子网设备通信。
本申请的发明人经仔细研究发现,常规配置下,Bonjour无法跨子网工作,如果需要达到跨子网的目的,需要对网关及物联网设备进行很复杂的配置,这需要用户具备一定的网络配置能力。此外,在大部分场景下,用户可能没有权限对其所在网络内的网关设备进行配置。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
本文中的NAT网络可以包括一个局域网子网或多个局域网子网。所述NAT网络内的物联网设备的IP地址网段可以相同,也即物联网设备的IP地址与子网掩码相与之后的结果相同,此时所述NAT网络内的物联网设备可以使用多播及广播帧进行通信;所述NAT网络内的物联网设备的IP地址网段也可以不同,此时所述NAT网络内的物联网设备无法使用多播及广播帧进行通信。
例如,一个沃尔玛超市只拥有一个出口网关,超市内部所有设备同属于一个局域网(即本文中的NAT网络),超市商品陈列区属于子网络A,网段为172.16.0.1/24;超市办公室属于子网络B,网段为172.16.1.1/24;通常意义上来讲子网络A和子网络B属于沃尔玛超市这一个大的局域网,但子网络A和子网络B内的设备的网段是不同的,也无法使用多播或广播进行通信。
本文中的子网指的是局域网子网,每一子网内的物联网设备的IP地址网段相同,也即物联网设备的IP地址与子网掩码相与之后的结果相同。子网内可以使用多播及广播帧进行通信。
本文中的广播域是计算机网络中抽象出的设备集合的概念,指的是网络中能接收任一设备发出的广播帧的所有IOT设备的集合。通常情况下,同一交换机内部属于同一个广播域。多播、广播无法跨广播域进行传播。
本文中的NAT网络实质上是一个由NAT设备圈定的局域网。在一个NAT网络内部可能同时有多个交换机隔离的广播域。比如一个公司具有两个大的办公室,每个办公室各自使用一个交换机,且这两个交换机连接同一出口网关,此时称该公司内部属于同一个NAT网络,两个办公室分别属于不同的广播域;同一个NAT网络内部的两个设备可以互相建立IP连接。
图1是本发明实施例的一种网络结构示意图。参考图1,所述网络包括NAT网络10和物联网服务器20。每一NAT网络10可以包括子网101、子网102,局域网NAT设备103。所述子网101包括非NAT 设备1011(图示为设备1011)、所述子网102包括非NAT设备1021(图示为设备1021)。NAT网络10通过局域网NAT设备103经因特网30与物联网服务器20连接。
本领域技术人员理解,在实际应用中,所述网络1可以包括一个或多个物联网服务器20,每一物联网服务器20可以连接多个NAT网络10。每一子网101或子网102可以分别包括多个非NAT设备1021。
图2是本发明实施例的一种设备发现方法的流程示意图。所述物联网设备发现方法可用于设备侧。具体而言,网络可以包括至少一个物联网设备,所述物联网设备与物联网服务器进行信息传递、所述物联网设备属于一子网络,所述子网络属于一NAT网络。所述物联网设备发现方法可以包括以下步骤:
步骤S201:发送上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络至物联网服务器;
步骤S202接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;
其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
更具体而言,所述物联网设备可以与所述物联网服务器建立通信连接。在具体实施中,所述物联网设备可以与所述物联网服务器建立消息队列遥测传输协议(MessageQueuing Telemetry Transport,MQTT)连接;或者,与所述物联网服务器建立TCP连接;或者,与所述物联网服务器建立UDP连接。
之后,在步骤S201中,物联网设备可以上报信息。所述物联网设备可以为所述NAT网络下任一子网络内的物联网设备。在一个非限制性的例子中,所述物联网设备在加入一子网络之后,可以发送所述上报信息至物联网服务器。所述物联网服务器可以通过因特网连接所述NAT网络,存储所述NAT网络内的子网信息以及子网包含的设备信息。
在一个实施例中,所述上报信息可以包括所述物联网设备所属子网络的IP地址和所述子网络所属的NAT网络。在具体实施中,所述上报信息可以包括所述物联网设备关联的用户账户信息及所述物联网设备所属子网络的IP地址,所述用户账户信息用于标识所述NAT网络。所述用户账号信息可以看做所述NAT网络的网络标识,表示所述NAT网络。例如,同一用户账号信息下的所有物联网设备包含在同一NAT网络内。同一NAT网络内的所有物联网设备均可以采用同一用户账户信息表示该NAT网络。
在另一个实施例中,所述上报信息除了包括所述物联网设备所属子网络的IP地址和所述子网络所属的NAT网络以外,还可以包括所述物联网设备的设备类型、所述物联网设备的设备标识、所述物联网设备所属子网络的掩码等与设备关联的信息或设备属性信息,这里不再一一列举。
例如,所述物联网设备向物联网服务器进行注册,注册的消息主题(topic)为"/DEVICES/register/pub",信息字段为{"msg_id":1, "params":{"shop_id":"0x01", "device_type":"sunmi_printer","device_id";"ab1234", "subnet_ip":"192.168.1.100", "subnet_mask":"255.255.255.0"}}。其中,msg_id 表示消息标识,params 表示所述消息标识指向的消息的参数,shop_id表示所述物联网设备所绑定的用户账号信息,也即所述NAT网络;device_type 表示设备类型,device_id 表示设备标识,subnet_ip表示所述物联网设备获取到的子网的IP地址,subnet_mask表示子网掩码。
之后,物联网服务器接收到所述物联网设备的上报信息之后,可以得知所述物联网设备所属NAT网络。所述物联网服务器可以将该NAT网络内的各个设备信息发送至所述物联网设备。
在一个非限制性的例子中,每一所述设备信息可以包括以下一项或多项:所述NAT网络的网络标识、设备类型、设备标识、所述子网络的IP地址及其掩码。需要说明的是,所述NAT网络标识可以由所述物联网设备的用户账户信息标识。
在一个非限制性的例子中,所述物联网服务器可以向所述物联网设备发送所述NAT网络内的所有子网络中的全部物联网设备的设备信息。
在另一个非限制性的例子中,如果所述物联网服务器可以向所述物联网设备发送所述NAT网络内所有子网络中,除发送所述上报信息的物联网设备以外的其余全部物联网设备的设备信息。
在另一个非限制性的例子中,如果所述物联网服务器可以区分所述物联网设备所属子网络与非所属子网络的其他子网络,那么所述物联网服务器可以不发送所述NAT网络内与所述物联网设备属于同一子网络的物联网设备的设备信息,仅发送所述NAT网络内的其他子网络包含的物联网设备的设备信息,以减少数据传输,节约设备能耗。其中,所述其他子网络指的是所述NAT网络中,除发送所述上报信息的物联网设备所属子网络以外的子网络。
在步骤S202中,所述物联网设备可以接收所述物联网服务器发出的各个设备信息,并记录各个设备信息。例如,所述物联网服务器向所述物联网设备推送两条设备信息,一台设备类型为sunmi_printer,其内网IP地址为192.168.1.100,另一台设备类型为sunmi_pos,其内网IP地址为192.168.1.101。具体实施时,所述物联网服务器发给所述物联网设备的设备信息可以为"/DEVICES/neighbor_update/sub",数据字段为{"msg_id":2, "params": [{"shop_id":"0x01", "device_type":"sunmi_printer",device_id"; "ab1234", "subnet_ip":"192.168.1.100","subnet_mask":"255.255.255.0"}, {"shop_id":"0x01", "device_type":"sunmi_pos", "device_id";"cd5678", "subnet_ip":"192.168.1.101", "subnet_mask":"255.255.255.0"}]}。
其中,msg_id 表示消息标识,params 表示所述消息标识指向的消息的参数,shop_id表示所述物联网设备所绑定的用户账号信息,也即所述NAT网络;device_type 表示设备类型,device_id 表示设备标识,subnet_ip表示所述物联网设备获取到的子网的IP地址,subnet_mask表示子网掩码。
在一个非限制性的实施例中,所述物联网设备可以具有邻居表,初始化时,所述邻居表可以为空。所述物联网设备加入局域网子网后,可以通过收发广播包或组播包获得其所在局域网子网内的其余物联网设备的设备信息,并可以存储在所述邻居表中。
在具体实施中,所述邻居表可以记录所述物联网设备所属NAT网络内的其他物联网设备的设备信息。具体而言,所述物联网设备可以在加入所述子网络后,向周边物联网设备发送广播包。所述广播包可以携带设备类型和/或IP地址。所述物联网设备可以通过发送所述广播包发现同一子网络内的其他物联网设备。在发现所述其他物联网设备后,所述物联网设备可以将所述其他物联网设备的相关信息记录在所述邻居表中。
进一步,所述物联网设备可以发送上报信息,并在接收到所述物联网服务器发出的各个设备信息后,所述物联网设备可以将接收到的各个物联网设备的设备信息记录在所述邻居表中,以根据所述邻居表建立跨子网的通信连接。具体而言,存在连接需求时,所述物联网设备可以根据所述邻居表中记录的各个设备信息,直接向相应设备的IP地址建立连接。
在另一个非限制性的实施例中,所述物联网设备可以具有邻居表,初始化时,所述邻居表可以为空。所述物联网设备作为局域网子网内的唯一设备,即使发送广播包也无法得到该局域网子网内的其余物联网设备的设备信息。进一步,所述物联网设备可以发送上报信息,并在接收到所述物联网服务器发出的各个设备信息后,所述物联网设备可以将接收到的各个物联网设备的设备信息记录在所述邻居表中,以根据所述邻居表建立跨子网的通信连接。具体而言,存在连接需求时,所述物联网设备可以根据所述邻居表中记录的各个设备信息,直接向相应设备的IP地址建立连接。
在一个非限制性的例子中,一个NAT网可以包括多个子网,每个子网中包括多个物联网设备,所述邻居表可以包括该NAT网络内的每一子网内,已连接物联网服务器的各个物联网设备的设备信息。所述邻居表可以包括:物联网设备的设备标识、NAT网络标识、设备类型、子网络内的IP地址、子网掩码等。在具体实施中,所述NAT网络标识为用户账户信息。例如,假设所述邻居表中包括4个物联网设备,其设备信息具体如表1所示。其中,设备标识为1、4、7的各个物联网设备属于同一个子网络,设备标识为2属于另一个子网络,上述物联网设备属于同一个NAT网络。
表1
图3是本发明实施例的又一种设备发现方法的流程示意图。所述物联网设备发现方法可以应用于服务器一侧。在具体实施中,网络可以包括至少一个物联网服务器、所述物联网服务器控制的至少一个NAT网络,所述NAT网络包含两个以上子网络,每一所述子网络包含至少一个物联网设备。具体地,参考图3,所述物联网设备发现方法可以包括如下步骤:
步骤S301:接收物联网设备的上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;
步骤S302:向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立连接。
其中,所述设备信息关联的物联网设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
具体而言,在接收设备的上报信息之前,所述物联网服务器可以与所述物联网设备建立通信连接。在具体实施中,所述物联网服务器可以与所述物联网设备建立MQTT连接;或者,所述物联网服务器可以与所述物联网设备建立TCP连接;或者,所述物联网服务器可以与所述物联网设备建立UDP连接。
之后,在步骤S301中,所述物联网服务器可以接收所述物联网设备的上报信息。所述上报信息可以包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络。
在一个非限制性的例子中,所述物联网设备的上报信息可以包括所述物联网设备关联的用户账户信息及所述子网络的IP地址。所述用户账户信息可以用于表示所述NAT网络,所述用户账户信息用于标识所述NAT网络。
在步骤S302中,所述物联网服务器可以向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立通信连接。
在一个实施例中,所述设备信息可以包括以下一项或多项:物联网设备所属子网络的IP地址及其掩码、所述子网络所属的NAT网络标识、物联网设备的设备类型、物联网设备的设备标识。需要说明的是,所述NAT网络标识可以由所述物联网设备的用户账户信息表示。
本领域技术人员理解,所述步骤S301至步骤S302可以视为与上述图2所示实施例所述步骤S201至步骤S202相呼应的执行步骤,两者在具体的实现原理和逻辑上是相辅相成的。因而,关于服务器侧的设备发现方法可以参考图2所示实施例的相关描述,这里不再赘述。
下面以一个典型应用场景为例,对本发明实施例的设备发现方法的具体流程进行阐述。
在一个典型应用场景下,对于一个物联网设备而言,首先,在同一子网内,该物联网设备可以采用UDP广播的形式进行物联网设备的相互发现。具体而言,假设设备A进入局域网后,可以利用UDP协议发出255.255.255.255:10001的广播探测报文发现请求(discovery request),该广播探测报文发现请求可以携带自身的设备类型和/或IP地址等信息。
对于同一子网内的其他物联网设备,在收到此广播探测报文发现请求后可以向设备A回复发现响应(discovery response)报文,所述发现响应报文可以携带自身设备类型和/或IP地址等信息。并且,每一所述其他设备还可以记录设备A的IP地址和/或设备类型等设备信息,所述设备信息可以记录在该其他设备的邻居表内。类似地,各个其他设备都可以采用相同或相似的方式获得同一子网内的其他设备的信息,进而可以在整个子网内的所有设备上形成邻居表。此时,该邻居表内仅包含同一子网内的物联网设备的设备信息。
进一步,对于跨子网的情况,可以事先为物联网设备绑定账户,并保证每一账户下的所有物联网设备在同一个NAT网络内。如果不满足该条件,则可以通过创建更多的关联子账户以满足该条件。
进一步,所述物联网设备可以与物联网服务器建立MQTT连接。连接注册时,所述物联网设备可以将其绑定的账户信息、设备类型、物联网设备的IP地址等信息作为上报信息传递给物联网服务器。物联网服务器会将同一个账户的所有已连接的物联网设备的信息存储起来,形成设备信息表。每当新物联网设备通过MQTT注册或者有已连接物联网设备掉线时均更新此设备信息表。并且,物联网服务器还会以设备信息表的形式将各个设备信息下发至关联账户下的每个物联网设备。
进一步,物联网设备在连接物联网服务器注册或重新注册后,会将物联网服务器下发的设备信息表与自身已有的邻居表进行合并,更新、完善整个网络的邻居信息,也即更新完成设备自身的邻居表。已注册的设备也会随时监听物联网服务器下发的设备信息表以更新其自身存储的邻居表。如此往复,整个网络(例如,NAT网络)内的设备都可以保存一完整邻居表,有连接需求时直接向相应设备的IP地址建立连接即可。
本领域技术人员理解,采用MQTT协议的物联网设备每次上线连接服务器时都会采用注册的消息告知物联网服务器,并获取所述物联网服务器下发的各种信息文件。
由上,通过本发明实施例提供的技术方案,可以使得在同一个NAT网络内部的多个子网之间的设备均能相互发现,并且建立连接。
图4是本发明实施例的一种物联网设备的结构示意图。所述物联网设备可以应用于终端设备侧,本领域技术人员理解,本发明实施例可以用于实施上述图2所示方法技术方案。
在具体实施中,所述物联网设备与物联网服务器进行信息传递、所述物联网设备属于一子网络,所述子网络属于一NAT网络,所述物联网设备可以包括:发送模块41,用于发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;接收模块42,用于接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
关于所述物联网设备的工作原理、工作方式的更多内容,可以参照上述图2中的相关描述,这里不再赘述。
图5是本发明实施例的一种物联网服务器的结构示意图。所述物联网服务器可以应用于服务器侧,本领域技术人员理解,本发明实施例可以用于实施上述图3所示方法技术方案。
在具体实施中,所述物联网服务器控制至少一个NAT网络,所述NAT网络包含至少一个子网络,每一所述子网络包含至少一个物联网设备。
在具体实施中,所述物联网服务器可以包括:接收模块51,用于接收设备的上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;下发模块52,用于向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立连接;其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
关于所述物联网服务器的工作原理、工作方式的更多内容,可以参照上述图3中的相关描述,这里不再赘述。
进一步地,本发明实施例还公开一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述图2和图3所示实施例中的方法技术方案。优选地,所述存储介质可以包括计算机可读存储介质。优选地,所述存储介质可以包括诸如非挥发性(non-volatile)存储器或者非瞬态(non-transitory)存储器等计算机可读存储介质。所述计算机可读存储介质可以包括ROM、RAM、磁盘或光盘等。
进一步地,本发明实施例还公开一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述图2所示实施例中所述方法技术方案。优选地,所述终端可以是个人计算机,可以是打印机、传真机等能够进行无线或有线通信的设备。
进一步地,本发明实施例还公开一种服务器,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述图3所示实施例中所述方法技术方案。具体而言,所述服务器可以为物联网服务器。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (10)
1.一种设备发现方法,其特征在于,包括至少一个物联网设备,所述物联网设备与物联网服务器进行信息传递、所述物联网设备属于一子网络,所述子网络属于一NAT网络,所述方法包括:
发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;
接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;
其中,所述设备信息关联的物联网设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
2.根据权利要求1所述的设备发现方法,其特征在于,所述上报信息包括:
所述物联网设备关联的用户账户信息及所述子网络的IP地址,所述用户账户信息用于标识所述NAT网络。
3.根据权利要求1所述的设备发现方法,其特征在于,在发送上报信息至物联网服务器之前,所述物联网设备发现方法还包括:
与所述物联网服务器建立消息队列遥测传输协议连接;或者,与所述物联网服务器建立TCP连接;或者,与所述物联网服务器建立UDP连接。
4.根据权利要求1至3任一项所述的设备发现方法,其特征在于,所述设备信息包括以下一项或多项:所述NAT网络的网络标识、设备类型、设备标识、所述子网络的IP地址及其掩码。
5.一种设备发现方法,其特征在于,包括至少一个物联网服务器、所述物联网服务器控制的至少一个NAT网络,所述NAT网络包含至少一个子网络,所述子网络包含至少一个物联网设备,所述方法包括:
接收所述物联网设备的上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;
向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立连接;
其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
6.根据权利要求5所述的设备发现方法,其特征在于,在接收物联网设备的上报信息之前,所述物联网设备发现方法还包括:
与所述物联网设备建立消息队列遥测传输协议连接;或者,与所述物联网设备建立TCP连接;或者,与所述物联网设备建立UDP连接。
7.根据权利要求5或6所述的设备发现方法,其特征在于,所述设备信息包括以下一项或多项:所述NAT网络的网络标识、设备类型、设备标识、所述子网络的IP地址及其掩码。
8.一种物联网设备,其特征在于,所述物联网设备与物联网服务器进行信息传递、所述物联网设备属于一子网络,所述子网络属于一NAT网络,所述物联网设备包括:
发送模块,用于发送上报信息至物联网服务器,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;
接收模块,用于接收所述物联网服务器发出的各个设备信息,并记录各个设备信息以形成所述NAT网络的邻居表,以根据所述邻居表建立连接;
其中,所述设备信息关联的物联网设备归属于所述NAT网络,且至少一个所述设备信息关联的物联网设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
9.一种物联网服务器,其特征在于,所述物联网服务器控制至少一个NAT网络,所述NAT网络包含至少一个子网络,每一所述子网络包含至少一个物联网设备,所述物联网服务器包括:
接收模块,用于接收物联网设备的上报信息,所述上报信息包括所述物联网设备所属子网络的IP地址以及所述子网络所属的NAT网络;
下发模块,用于向所述物联网设备下发属于所述NAT网络的各个设备信息,以使得所述物联网设备记录各个设备信息以形成所述NAT网络的邻居表,并使所述物联网设备根据所述邻居表建立连接;
其中,所述设备信息关联的设备归属于所述NAT网络,且至少一个所述设备信息关联的设备不属于所述子网络,所述NAT网络指的是由NAT设备隔离形成的局域网。
10.一种存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821074.4A CN110635942B (zh) | 2019-09-02 | 2019-09-02 | 设备发现方法、物联网设备、物联网服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821074.4A CN110635942B (zh) | 2019-09-02 | 2019-09-02 | 设备发现方法、物联网设备、物联网服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110635942A true CN110635942A (zh) | 2019-12-31 |
CN110635942B CN110635942B (zh) | 2022-11-04 |
Family
ID=68969778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910821074.4A Active CN110635942B (zh) | 2019-09-02 | 2019-09-02 | 设备发现方法、物联网设备、物联网服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110635942B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114679485A (zh) * | 2022-03-28 | 2022-06-28 | 深圳市思为软件技术有限公司 | 一种网络连接方法及装置 |
WO2023000726A1 (zh) * | 2021-07-21 | 2023-01-26 | 广州地铁集团有限公司 | 一种设备反向集成的接入、管理方法、***和计算机设备 |
CN115834202A (zh) * | 2020-05-27 | 2023-03-21 | Oppo广东移动通信有限公司 | 信息处理方法及装置、设备、计算机存储介质 |
WO2023184263A1 (zh) * | 2022-03-30 | 2023-10-05 | 北京小米移动软件有限公司 | 一种建立用户数据报协议udp传输通道的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6393488B1 (en) * | 1999-05-27 | 2002-05-21 | 3Com Corporation | System and method for supporting internet protocol subnets with network address translators |
CN101951597A (zh) * | 2010-08-13 | 2011-01-19 | 北京邮电大学 | 不同类型的网络之间通信的方法、装置和*** |
CN103516567A (zh) * | 2012-06-26 | 2014-01-15 | 腾讯科技(深圳)有限公司 | 设备发现方法、***及服务器 |
CN106453678A (zh) * | 2016-09-29 | 2017-02-22 | 北京东土科技股份有限公司 | Ip地址配置方法和*** |
CN108200567A (zh) * | 2018-01-18 | 2018-06-22 | 浙江大华技术股份有限公司 | 一种设备发现方法及设备 |
-
2019
- 2019-09-02 CN CN201910821074.4A patent/CN110635942B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6393488B1 (en) * | 1999-05-27 | 2002-05-21 | 3Com Corporation | System and method for supporting internet protocol subnets with network address translators |
CN101951597A (zh) * | 2010-08-13 | 2011-01-19 | 北京邮电大学 | 不同类型的网络之间通信的方法、装置和*** |
CN103516567A (zh) * | 2012-06-26 | 2014-01-15 | 腾讯科技(深圳)有限公司 | 设备发现方法、***及服务器 |
CN106453678A (zh) * | 2016-09-29 | 2017-02-22 | 北京东土科技股份有限公司 | Ip地址配置方法和*** |
CN108200567A (zh) * | 2018-01-18 | 2018-06-22 | 浙江大华技术股份有限公司 | 一种设备发现方法及设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115834202A (zh) * | 2020-05-27 | 2023-03-21 | Oppo广东移动通信有限公司 | 信息处理方法及装置、设备、计算机存储介质 |
WO2023000726A1 (zh) * | 2021-07-21 | 2023-01-26 | 广州地铁集团有限公司 | 一种设备反向集成的接入、管理方法、***和计算机设备 |
CN114679485A (zh) * | 2022-03-28 | 2022-06-28 | 深圳市思为软件技术有限公司 | 一种网络连接方法及装置 |
WO2023184263A1 (zh) * | 2022-03-30 | 2023-10-05 | 北京小米移动软件有限公司 | 一种建立用户数据报协议udp传输通道的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110635942B (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110635942B (zh) | 设备发现方法、物联网设备、物联网服务器 | |
US9798572B2 (en) | Virtual machine migration method, switch, and virtual machine system | |
US11070633B2 (en) | Pre-association discovery of services | |
US20200059976A1 (en) | IoT DEVICE CONNECTIVITY, DISCOVERY, AND NETWORKING | |
US8898268B2 (en) | Method and apparatus for network management | |
EP2874359B1 (en) | Extended ethernet fabric switches | |
WO2019184752A1 (zh) | 网络设备的管理方法、装置及*** | |
EP2252093B1 (en) | Method for enabling mobility of client devices in large scale unified networks | |
CN100493033C (zh) | 一种穿越网络地址转换的方法 | |
EP2922246B1 (en) | Method and data center network for cross-service zone communication | |
CN104427010A (zh) | 应用于动态虚拟专用网络的网络地址转换方法和装置 | |
CN109246008A (zh) | 网络设备、***和发送bgp信息的方法 | |
CN110572808B (zh) | 蓝牙Mesh网络***、建立方法、配网器、设备及介质 | |
JP2007158594A (ja) | データ通信システム、端末装置およびvpn設定更新方法 | |
US20090113043A1 (en) | Network location service | |
CN108123912B (zh) | 一种支持p2p的微服务*** | |
US20210367926A1 (en) | Methods and Apparatus for Operating and Managing a Constrained Device within a Network | |
WO2015070763A1 (zh) | X2接口的自建立方法及装置 | |
WO2019056918A1 (zh) | 一种通用型跨路由域互通装置及方法 | |
EP3866421B1 (en) | Profinet protocol-based access method in industrial sdn | |
WO2011116614A1 (zh) | 一种访问网络设备的方法、***及装置 | |
CN110753135A (zh) | 一种ip地址配置方法、配置设备及存储介质 | |
EP3817341B1 (en) | Bulk configuration of devices behind a network address translation device | |
JP6002642B2 (ja) | 通信ノード及びネットワークシステム及び機器制御方法 | |
Asaamoning et al. | A study for a name-based coordination of autonomic IoT functions |
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 |