CN112787997A - 一种基于网关作为服务器端实现内网ip通信的方法 - Google Patents
一种基于网关作为服务器端实现内网ip通信的方法 Download PDFInfo
- Publication number
- CN112787997A CN112787997A CN202011568484.1A CN202011568484A CN112787997A CN 112787997 A CN112787997 A CN 112787997A CN 202011568484 A CN202011568484 A CN 202011568484A CN 112787997 A CN112787997 A CN 112787997A
- Authority
- CN
- China
- Prior art keywords
- data
- gateway
- server
- intranet
- cloud
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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/10—Protocols in which an application is distributed across nodes in the network
-
- 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
Abstract
一种基于网关作为服务器端实现内网IP通信的方法,涉及网关作为服务器的技术领域,包括以下步骤:S1:将网关初始化,等待手机客户端的连接;S2:解析数据包;S3:开启多线程;S4:当判断为内网数据时,手机终端通过Zigbee将数据传输到智能锁设备;S5:当判断为云端MQ服务器数据时,通过外网数据端口实现智能锁设备、网关和手机移动端的数据通信;该基于网关作为服务器端实现内网IP通信的方法的网关通过在出现断网、服务器故障或者网络故障等情况时,将网关作为服务器,通过手机连接内网,连接到网关内置的服务器上,进而实现内网通信,有效的节约资源,省去了架设服务器的资源。
Description
技术领域
本发明涉及基于网关作为服务器的技术领域,尤其是一种基于网关作为服务器端实现内网IP通信的方法。
背景技术
随着科技的进步,时代的发展,物联网应用在不断的发展壮大,智能家居、智能门锁的应用更离不开安全网关的保护。加上手机的普及,手机直接控制智能门锁也越来越广泛。安全网关是通过Zigbee无线网络实现智能门锁联网功能的,智能门锁作为终端连接到网关组建的Zigbee网络里,通过网关将消息推送到云端服务器,这样我们就可以在手机上实时监控智能门锁的状态,确保家里的安全。网关的稳定、高效、不间断是至关重要的。
现有的技术只是通过单一的手机移动端来连接架设的服务器系统,从而与通过网关联网的智能锁设备实现通信、控制。一旦出现断网、服务器故障,或者出现网络故障,手机移动端将无法和智能门锁实现数据的交互,也无法控制家中的智能设备。如果需要杜绝这种情况,就需要架设一台备用的服务器,但是这种备用的服务器相应的维护成本太高,不利于普及。走云端通信也会出现网络阻塞,导致用户体验效果不好,手机移动端的控制命令无法实时控制,智能门锁的状态会出现上传数据丢失。
鉴于这些问题,如何提供一种即使出现断网、服务器故障或者网络故障等情况,也不会出现手机移动端将无法和智能门锁实现数据的交互,也无法控制家中的智能设备现象,同时维护成本低且网络不会出现阻塞是本领域技术人员需要解决的技术问题。
发明内容
为解决上述技术问题,本发明所采用的技术方案是:一种基于网关作为服务器端实现内网IP通信的方法,包括以下步骤:
S1:将网关初始化,初始化IP地址、端口号;开辟动态内存,监听数据,等待手机客户端的连接;
S2:解析数据包,判断该数据包是内网数据,还是云端MQ服务器数据;
S3:开启多线程,若是内网数据,切换内网数据传输端口,若是云端MQ服务器数据则切换到外网数据端口;
S4:当判断为内网数据时,手机终端通过Zigbee将数据传输到智能锁设备,同时对于挂载在网关下的若干个智能锁设备的数据上传到服务器,或者直接推送给手机移动端显示;
S5:当判断为云端MQ服务器数据时,通过外网数据端口实现智能锁设备、网关和手机移动端的数据通信。
作为优选,在所述步骤S3中,当切换内网数据传输端口时,创建网关TCP CLIENT客户端处理线程;当切换外网数据端口时,创建网关TCP SERVER服务器端处理线程。
作为优选,在所述步骤S2中,通过以下三种方式判断网关是否与云端MQ服务器处于连通状态:1、获取所述网关内部的以太网PHY芯片状态;2、与云端MQ服务器的TCP连接是否发生TCP断开或中断;3、判断与云端MQ服务器的心跳包是否存在。
作为优选,当与云端MQ服务器的TCP连接发生断开或中断时,所述网关分配一个socket信息表,并分配对应的缓冲区用来处理所述手机客户端的tcp连接事件。
作为优选,在所述步骤S5中,当判断为云端MQ服务器数据且在通讯过程时,网关实时查询当前网络状态,若是通过外网连通,建立标志位切换处理流程,优先处理外网的所述云端MQ服务器数据,同时不处理所述内网数据传输端口的数据;若通讯过程中,外网断开,则重置标志位切换到所述内网数据处理流程,不处理外网数据端口的数据,同时建立与所述收集客户端的连接,所述动态内存刷新路由器的路由表,与手机用户通信。
作为优选,所述云端MQ服务器数据处理流程优先级高于所述内网数据处理流程优先级。
作为优选,所述监听数据为通过网关TCP服务器应用程序端口的数据。
作为优选,所述网关系统配网与智能锁设备连接,智能锁设备接入网关后,网关发送zigbee广播指令,获取当前在线的智能锁设备的MAC地址,进而获取在线的智能锁设备的设备信息。
与现有技术相比,本发明的网关通过在出现断网、服务器故障或者网络故障等情况时,将网关作为服务器,通过手机连接内网,连接到网关内置的服务器上,进而实现内网通信,有效的节约资源,省去了架设服务器的资源,同时,内网通信里面网关作为整个物联网的核心,对于设备端,组建Zigbee网络,允许智能锁设备连接到Zigbee网络里;对于手机端,手机通过路由器接入内网,连接到网关服务器。网关作为一个核心与智能设备数据交换,同时与手机端进行数据通信,实现人机交互的功能。
附图说明
图1为本发明基于网关作为服务器端实现内网IP通信的方法的检测装置的流程框图;
图2为本发明基于网关作为服务器端实现内网IP通信的方法的检测装置的线框图。
具体实施方式
为了使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施例对本发明作进一步的详细说明。
如图1-2所示,一种基于网关作为服务器端实现内网IP通信的方法,包括以下步骤:
S1:将网关初始化,初始化IP地址、端口号;开辟动态内存,监听数据,等待手机客户端的连接;
具体地,所述监听数据为通过网关TCP服务器应用程序端口的数据。
在内网通信时,网关初始化创建TCP SERVER服务器应用程序,初始化网关IP(域名)和端口号。网关系统分配动态内存,开启端口监听,监听通过网关TCP服务器应用程序端口的数据。等待tcp连接断开或中断之后分配一个socket信息表,并分配对应的缓冲区用来处理手机客户端tcp的连接事件。同时网关系统配网连接智能锁设备,智能锁设备接入网关后,发送zigbee广播指令,获取当前在线智能锁设备的Mac地址,获取在线的智能锁设备终端设备的信息。
手机通过WiFi连接上路由器后,手机客户端创建TCP CLIENT客户端初始化,准备连接到网关系统。网关与手机客户端处于同一局域网中,手机客户端通过TCP协议,使用网关端TCP SERVER服务器的IP和端口号发起请求链接到网关服务器端,网关端产生TCP中断为手机客户端分配socket信息表以及缓冲区来进行通信,同时保存手机端设备信息IP和端口号在动态内存里,通过此种方式将网关和手机客户端建立连接。网关与手机客户端通过自定义的通信协议即可通过IP和端口号获取到对应的手机客户端的Mac地址,此时手机客户端和网关连接建立完成。
S2:解析数据包,判断该数据包是内网数据,还是云端MQ服务器数据;
具体地,通过网关初始化不同的通信端口号来区分是内网数据还是MQ服务器数据。
当网关与云端MQ服务器通信的时是作为TCP CLIENT客户端,其通过MQTT协议连接到云端MQ服务器,当网关作为内网通信的中心时作为的是TCP SERVER服务器,初始化两种通信的端口号的方式均不同。
网关连接到云端MQ服务器,手机客户端连接到云端MQ服务器,网关和手机客户端通过外网通信,网关处理数据是云端MQ服务器数据,网关接收到智能锁设备的zigbee数据,通过TCP CLIENT客户端的端口1将zigbee数据发送到云端MQ服务器来处理,网关通过三种方式可以判断是否与云端MQ服务器连通:1、获取所述网关内部的以太网PHY芯片状态;2、与云端MQ服务器的TCP连接是否发生TCP断开或中断;3、判断与云端MQ服务器的心跳包是否存在。
手机端通过内网连接到网关TCP SERVER服务器,使用端口2来进行数据通信。
网关实时查询网络状态,若是外网连通,建立标志位切换处理流程,优先处理外网云端MQ服务器数据,同时不处理内网端口的数据。若是外网断开,则重置标志位切换到内网数据处理流程,同时不处理外网端口数据。建立与手机客户端的连接,动态内存刷新路由列表,与手机用户通信。
S3:开启多线程,若是内网数据,切换内网数据传输端口,若是云端MQ服务器数据则切换到外网数据端口;
具体地,在所述步骤S3中,
当切换内网数据传输端口时,作为线程一,创建网关TCP CLIENT客户端处理线程,开启端口1套接字,分配动态内存,用来处理外网MQ服务器数据;
当切换外网数据端口时,作为线程二,创建网关TCP SERVER服务器端处理线程,开启端口2套接字,分配动态内存,用来处理内网通信数据,与手机客户端通信。
S4:当判断为内网数据时,手机终端通过Zigbee将数据传输到智能锁设备,同时对于挂载在网关下的若干个智能锁设备的数据上传到服务器,或者直接推送给手机移动端显示;
具体地,智能锁设备作为zigbee网络的终端节点,网关作为zigbee主机,网关初始化zigbee主机(即初始化网关),组网zigbee网络,开启允许zigbee子设备入网命令,允许智能锁设备接入到网关,智能锁设备接入zigbee网络后,上传网络标志和Mac地址作为终端设备的身份识别,网关作为一个信息处理中心,处理智能锁的zigbee数据,并且对接云端MQ服务器,建立通信连路,处理数据。
S5:当判断为云端MQ服务器数据时,通过外网数据端口实现智能锁设备、网关和手机移动端的数据通信。
当与云端MQ服务器的TCP连接发生断开或中断时,所述网关分配一个socket信息表,并分配对应的缓冲区用来处理所述手机客户端的tcp连接事件。
在所述步骤S5中,当判断为云端MQ服务器数据且在通讯过程时,网关实时查询当前网络状态,若是通过外网连通,建立标志位切换处理流程,优先处理外网的所述云端MQ服务器数据,同时不处理所述内网数据传输端口的数据;若通讯过程中,外网断开,则重置标志位切换到所述内网数据处理流程,不处理外网数据端口的数据,同时建立与所述收集客户端的连接,所述动态内存刷新路由器的路由表,与手机用户通信。
所述云端MQ服务器数据处理流程优先级高于所述内网数据处理流程优先级。与云端MQ服务器通信优先级高于内网通信,优先处理外网数据,实现网关与手机客户端进行数据通信,外网断开即使用内网通信。
所述网关系统配网与智能锁设备连接,智能锁设备接入网关后,网关发送zigbee广播指令,获取当前在线的智能锁设备的MAC地址,进而获取在线的智能锁设备的设备信息。
本发明的网关通过在出现断网、服务器故障或者网络故障等情况时,将网关作为服务器,通过手机连接内网,连接到网关内置的服务器上,进而实现内网通信,有效的节约资源,省去了架设服务器的资源,同时,内网通信里面网关作为整个物联网的核心,对于设备端,组建Zigbee网络,允许智能锁设备连接到Zigbee网络里;对于手机端,手机通过路由器接入内网,连接到网关服务器。网关作为一个核心与智能设备数据交换,同时与手机端进行数据通信,实现人机交互的功能。
上述的实施例仅为本发明的优选技术方案,而不应视为对于本发明的限制,本发明的保护范围应以权利要求记载的技术方案,包括权利要求记载的技术方案中技术特征的等同替换方案为保护范围。即在此范围内的等同替换改进,也在本发明的保护范围之内。
Claims (8)
1.一种基于网关作为服务器端实现内网IP通信的方法,其特征在于:包括以下步骤:
S1:将网关初始化,初始化IP地址、端口号;开辟动态内存,监听数据,等待手机客户端的连接;
S2:解析数据包,判断该数据包是内网数据,还是云端MQ服务器数据;
S3:开启多线程,若是内网数据,切换内网数据传输端口,若是云端MQ服务器数据则切换到外网数据端口;
S4:当判断为内网数据时,手机终端通过Zigbee将数据传输到智能锁设备,同时对于挂载在网关下的若干个智能锁设备的数据上传到服务器,或者直接推送给手机移动端显示;
S5:当判断为云端MQ服务器数据时,通过外网数据端口实现智能锁设备、网关和手机移动端的数据通信。
2.根据权利要求1所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:在所述步骤S3中,当切换内网数据传输端口时,创建网关TCP CLIENT客户端处理线程;当切换外网数据端口时,创建网关TCP SERVER服务器端处理线程。
3.根据权利要求1所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:在所述步骤S2中,通过以下三种方式判断网关是否与云端MQ服务器处于连通状态:1、获取所述网关内部的以太网PHY芯片状态;2、与云端MQ服务器的TCP连接是否发生TCP断开或中断;3、判断与云端MQ服务器的心跳包是否存在。
4.根据权利要求3所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:当与云端MQ服务器的TCP连接发生断开或中断时,所述网关分配一个socket信息表,并分配对应的缓冲区用来处理所述手机客户端的tcp连接事件。
5.根据权利要求4所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:在所述步骤S5中,当判断为云端MQ服务器数据且在通讯过程时,网关实时查询当前网络状态,若是通过外网连通,建立标志位切换处理流程,优先处理外网的所述云端MQ服务器数据,同时不处理所述内网数据传输端口的数据;若通讯过程中,外网断开,则重置标志位切换到所述内网数据处理流程,不处理外网数据端口的数据,同时建立与所述收集客户端的连接,所述动态内存刷新路由器的路由表,与手机用户通信。
6.根据权利要求1-5任意一项权利要求所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:所述云端MQ服务器数据处理流程优先级高于所述内网数据处理流程优先级。
7.根据权利要求1所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:所述监听数据为通过网关TCP服务器应用程序端口的数据。
8.根据权利要求1所述的基于网关作为服务器端实现内网IP通信的方法,其特征在于:所述网关系统配网与智能锁设备连接,智能锁设备接入网关后,网关发送zigbee广播指令,获取当前在线的智能锁设备的MAC地址,进而获取在线的智能锁设备的设备信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011568484.1A CN112787997A (zh) | 2020-12-26 | 2020-12-26 | 一种基于网关作为服务器端实现内网ip通信的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011568484.1A CN112787997A (zh) | 2020-12-26 | 2020-12-26 | 一种基于网关作为服务器端实现内网ip通信的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112787997A true CN112787997A (zh) | 2021-05-11 |
Family
ID=75752557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011568484.1A Pending CN112787997A (zh) | 2020-12-26 | 2020-12-26 | 一种基于网关作为服务器端实现内网ip通信的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112787997A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363418A (zh) * | 2022-01-07 | 2022-04-15 | 北京金山云网络技术有限公司 | 访问内网数据库的方法、装置、存储介质以及电子设备 |
CN114430357A (zh) * | 2022-01-17 | 2022-05-03 | 深圳市欧朗博科技有限公司 | 一种基于云管理的智能网关系统管理方法 |
CN115767454A (zh) * | 2022-10-31 | 2023-03-07 | 深圳市丰润达科技有限公司 | 物联网服务系统及方法 |
CN116828014A (zh) * | 2023-08-25 | 2023-09-29 | 菲尼克斯(南京)智能制造技术工程有限公司 | 基于物联网网关的云连接系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530672A (zh) * | 2016-02-17 | 2016-04-27 | 海信集团有限公司 | 一种移动终端与智能家居通信网络的切换方法和切换系统 |
CN106534198A (zh) * | 2016-12-22 | 2017-03-22 | 深圳市艾森魏尔科技有限公司 | 一种智能家居网关和控制端在局域网多对多的通信系统及算法 |
WO2017119539A1 (ko) * | 2016-01-08 | 2017-07-13 | 디노플러스(주) | 스마트 홈 구현을 위한 통합 게이트웨이장치 |
CN108769009A (zh) * | 2018-05-28 | 2018-11-06 | 深圳和而泰数据资源与云技术有限公司 | 数据通信方法、智能设备及智能网关 |
CN111565384A (zh) * | 2020-05-20 | 2020-08-21 | 江苏联宏智慧能源股份有限公司 | 一种可防止断网的智能家居网关及实现方法 |
CN111741538A (zh) * | 2020-07-22 | 2020-10-02 | 北京自如信息科技有限公司 | 基于网关的通信链路建立方法、设备控制方法及装置 |
-
2020
- 2020-12-26 CN CN202011568484.1A patent/CN112787997A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017119539A1 (ko) * | 2016-01-08 | 2017-07-13 | 디노플러스(주) | 스마트 홈 구현을 위한 통합 게이트웨이장치 |
CN105530672A (zh) * | 2016-02-17 | 2016-04-27 | 海信集团有限公司 | 一种移动终端与智能家居通信网络的切换方法和切换系统 |
CN106534198A (zh) * | 2016-12-22 | 2017-03-22 | 深圳市艾森魏尔科技有限公司 | 一种智能家居网关和控制端在局域网多对多的通信系统及算法 |
CN108769009A (zh) * | 2018-05-28 | 2018-11-06 | 深圳和而泰数据资源与云技术有限公司 | 数据通信方法、智能设备及智能网关 |
CN111565384A (zh) * | 2020-05-20 | 2020-08-21 | 江苏联宏智慧能源股份有限公司 | 一种可防止断网的智能家居网关及实现方法 |
CN111741538A (zh) * | 2020-07-22 | 2020-10-02 | 北京自如信息科技有限公司 | 基于网关的通信链路建立方法、设备控制方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363418A (zh) * | 2022-01-07 | 2022-04-15 | 北京金山云网络技术有限公司 | 访问内网数据库的方法、装置、存储介质以及电子设备 |
CN114430357A (zh) * | 2022-01-17 | 2022-05-03 | 深圳市欧朗博科技有限公司 | 一种基于云管理的智能网关系统管理方法 |
CN115767454A (zh) * | 2022-10-31 | 2023-03-07 | 深圳市丰润达科技有限公司 | 物联网服务系统及方法 |
CN116828014A (zh) * | 2023-08-25 | 2023-09-29 | 菲尼克斯(南京)智能制造技术工程有限公司 | 基于物联网网关的云连接系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112787997A (zh) | 一种基于网关作为服务器端实现内网ip通信的方法 | |
CN107800621B (zh) | 一种支持多种接入协议的新型智能家居网关 | |
CN104735001B (zh) | 软件定义网络中的链路发现方法、装置及系统 | |
WO2013134937A1 (zh) | 发送建立连接请求的方法、交换机、服务器及系统 | |
US20070195804A1 (en) | Ppp gateway apparatus for connecting ppp clients to l2sw | |
Pham et al. | Management architecture for heterogeneous IoT devices in home network | |
CN103873472A (zh) | 一种自动连接网络的方法 | |
WO2020125168A1 (zh) | 基于心跳报文数据发送和接收方法、存储介质及处理器 | |
CN109067633B (zh) | 基于以太网菊花链通讯网络拓扑的电源管理系统及方法 | |
CN103096300B (zh) | 基站虚拟局域网识别号自动获取方法及系统 | |
Morato et al. | The Fail Safe over EtherCAT (FSoE) protocol implemented on the IEEE 802.11 WLAN | |
US20120099574A1 (en) | Communication device, computer readable medium and relay method using same | |
CN106850784A (zh) | 智能主机与云服务之间的通信方法 | |
US7385966B2 (en) | Method for the automatic configuration of a IP telephony device and/or data, system and device implementing same | |
CN113300800B (zh) | 一种多模式确定性数据处理装置及方法 | |
CN107888711B (zh) | 一种跨网段设备搜索及通讯方法 | |
CN106533934A (zh) | 一种适用于全互联制造网络的边界网关 | |
CN102983988A (zh) | 一种设备代理装置以及网络管理装置 | |
CN111585791B (zh) | 一种数据同步配置方法、系统及存储介质 | |
CN101938386A (zh) | 一种会话监控方法及服务节点设备 | |
US11240138B2 (en) | Management of network connections | |
CN112995038A (zh) | Profinet协议在工业sdn中的接入方法 | |
CN114143904B (zh) | 一种基于5g融合网络分流器的cpe管理方法 | |
JP2002118570A (ja) | パケット通信方法および装置 | |
CN103312600B (zh) | 一种基于广域网应用实现i/o级别控制的工业总线网关装置 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210511 |