CN109218436A - 一种基于双端口备份技术的局域网设备发现方法 - Google Patents
一种基于双端口备份技术的局域网设备发现方法 Download PDFInfo
- Publication number
- CN109218436A CN109218436A CN201811168761.2A CN201811168761A CN109218436A CN 109218436 A CN109218436 A CN 109218436A CN 201811168761 A CN201811168761 A CN 201811168761A CN 109218436 A CN109218436 A CN 109218436A
- Authority
- CN
- China
- Prior art keywords
- port
- data message
- sdk
- information
- dual
- 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
Classifications
-
- 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/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- 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/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- 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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- 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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种基于双端口备份技术的局域网设备发现方法,包括步骤:A.初始化SDK当前运行的信息;B.创建两个套接字分别对主端口和备用端口进行套接字绑定;C.启动两个线程分别接受主端口和备用端口的数据报文;D.对数据报文的内容进行校验,判断数据报文的内容是否符合SDK内部协议;E.若符合SDK内部协议则进入步骤F,否则丢弃数据报文;F.根据数据报文中携带的服务信息进行判断是否为对端服务信息,若是则提取其中的对端服务IP和端口,建立TCP连接;G.连接成功后发送获取设备信息请求,收到设备信息回复后,SDK即可发现设备。本发明的方法可保证在主端口无法绑定或被其他应用占用的情况下,不影响本地SDK的功能。
Description
技术领域
本发明涉及物联网通信技术领域,特别涉及一种基于双端口备份技术的局域网设备发现方法。
背景技术
随着mDNS(multicast DNS,组播DNS)在苹果公司产品(iphone、ipad、Mac等)的广泛应用,以及越来越多的硬件和软件厂商对其设备中mDNS协议的支持,mDNS协议基本已经成为局域网内设备和服务互相发现的业界标准,mDNS的使用场景最多的情况是在局域网内。
通过5353端口,每个进入局域网内的主机,如果开启了mDNS服务的话,都会向局域网内的所有主机组播一个消息,例如,我是谁以及我的IP地址是多少等,然后其他开启mDNS服务的主机就会发出响应,例如,我是谁以及我的IP地址是多少等。mDNS使用5353端口,在内网没有DNS服务器时,就会出现此组播信息。
组播DNS是IETF零配置网络(zeroconf)的参与者和DNS扩展(dnsext)工作组共同努力的结果。Zeroconf工作组提出了需求,DNSEXT组受到特许进行细节实现。即mDNS主要实现了在没有传统DNS服务器的情况下使局域网内的主机实现相互发现和通信。
局域网设备发现,基于mDNS协议的局域网网络服务发现。自定义端口组播或者广播发现设备,发现成功率不高,而采用mDNS协议虽然可以提高设备发现成功率,但有可能遇到mDNS专用端口5353被其他应用占用的情况。
同时,由于到mDNS采用固定端口5353,而各个芯片上方案不同,有的芯片上内置支持到mDNS,但是由于这些硬件平台系统内核虽然已经内置了到mDNS功能模块,但是没有将到mDNS默认端口5353配置为端口复用,导致其他到mDNS程序在移植时,会无法使用5353端口,于是移植本地SDK时会导致SDK初始化不成功。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种基于双端口备份技术的局域网设备发现方法,可有效解决主端口5353端口无法绑定的场景,且采用将9393端口作为备用端口,确保在5353端口被其他应用占用的情况下,不影响本地SDK的功能。
为了达到上述的技术效果,本发明采取以下技术方案:
一种基于双端口备份技术的局域网设备发现方法,具体包括以下步骤:
A.初始化SDK当前运行的信息;
B.创建两个套接字分别对主端口和备用端口进行套接字绑定,在主端口和备用端口均绑定成功时进入步骤C;
C.启动两个线程分别接受主端口和备用端口的数据报文;
D.汇总收到的数据报文,并对数据报文的内容进行校验,判断数据报文的内容是否符合SDK内部协议;
E.若数据报文的内容符合SDK内部协议则进入步骤F,否则直接丢弃采集到的数据报文;
F.处理数据报文,根据数据报文中携带的服务信息进行判断是否为对端服务信息,对判定为属于对端服务信息的数据报文信息则提取其中的对端服务IP和端口,建立TCP连接;
G.TCP连接建立成功后,发送获取设备信息请求,收到设备信息回复后,SDK即可发现设备,设备即可上线;
H.设备上线后即进入设备管理和控制的模块常规流程。
进一步地,所述步骤A中初始化SDK当前运行的信息具体包括:启动发现、启动被发现,设备SN配置。
进一步地,所述步骤C中启动两个线程分别接受主端口和备用端口的数据报文的同时还对主端口和备用端口分别进行监听。
进一步地,所述主端口为5353端口,所述备用端口为9393端口。
本发明与现有技术相比,具有以下的有益效果:
本发明的基于双端口备份技术的局域网设备发现方法中,采用双端口备份技术,将另一个端口9393作为备用端口,采用5353和9393双端口同时进行收发包技术,9393端口作为5353端口的备用端口,从而在已经开发完成的一套本地SDK模块需要移植到一个全新的平台上时,即在存在新的芯片方案或者新的操作系统时,也可实现设备的局域网发现和管理,而无需担心新的平台上特定端口是否被占用。
同时,在本地SDK模块没有实现双端口备份技术又需要移植到新平台上时,一旦发现设备的发现和管理功能失效,也可以应用本发明的基于双端口备份技术的局域网设备发现方法,从而保证在主端口5353端口无法绑定或被其他应用占用的情况下,不影响本地SDK的功能。
附图说明
图1是本发明的基于双端口备份技术的局域网设备发现方法的流程示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
如图1所示,一种基于双端口备份技术的局域网设备发现方法,采用双端口备份技术,将另一个端口9393作为备用端口,采用5353和9393双端口同时进行收发包技术,9393端口作为5353端口的备用端口,具体包括以下步骤:
S1.初始化SDK当前运行的信息,如启动发现、启动被发现,设备SN配置等;
B.创建两个套接字分别对主端口和备用端口进行套接字绑定,在主端口和备用端口均绑定成功时进入步骤C;其中,主端口为5353端口,所述备用端口为9393端口。
C.启动两个线程分别接受主端口和备用端口的数据报文,并同时对主端口和备用端口分别进行监听;
D.汇总收到的数据报文,并对数据报文的内容进行校验,判断数据报文的内容是否符合SDK内部协议;
E.若数据报文的内容符合SDK内部协议则进入步骤F,否则直接丢弃采集到的数据报文;
F.处理数据报文,根据数据报文中携带的服务信息进行判断是否为对端服务信息,对判定为属于对端服务信息的数据报文信息则提取其中的对端服务IP和端口,建立TCP连接;
G.TCP连接建立成功后,发送获取设备信息请求,收到设备信息回复后,SDK即可发现设备,设备即可上线;
H.设备上线后即进入设备管理和控制的模块常规流程。
综上所述,本发明的基于双端口备份技术的局域网设备发现方法中,采用双端口备份技术,将另一个端口9393作为备用端口,采用5353和9393双端口同时进行收发包技术,9393端口作为5353端口的备用端口,从而在已经开发完成的一套本地SDK模块需要移植到一个全新的平台上时,即在存在新的芯片方案或者新的操作系统时,也可实现设备的局域网发现和管理,而无需担心新的平台上特定端口是否被占用。
同时,在本地SDK模块没有实现双端口备份技术又需要移植到新平台上时,一旦发现设备的发现和管理功能失效,也可以应用本发明的基于双端口备份技术的局域网设备发现方法,从而保证在主端口5353端口无法绑定或被其他应用占用的情况下,不影响本地SDK的功能。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (4)
1.一种基于双端口备份技术的局域网设备发现方法,其特征在于,具体包括以下步骤:
A.初始化SDK当前运行的信息;
B.创建两个套接字分别对主端口和备用端口进行套接字绑定,在主端口和备用端口均绑定成功时进入步骤C;
C.启动两个线程分别接受主端口和备用端口的数据报文;
D.汇总收到的数据报文,并对数据报文的内容进行校验,判断数据报文的内容是否符合SDK内部协议;
E.若数据报文的内容符合SDK内部协议则进入步骤F,否则直接丢弃采集到的数据报文;
F.处理数据报文,根据数据报文中携带的服务信息进行判断是否为对端服务信息,对判定为属于对端服务信息的数据报文信息则提取其中的对端服务IP和端口,建立TCP连接;
G.TCP连接建立成功后,发送获取设备信息请求,收到设备信息回复后,SDK即可发现设备,设备即可上线;
H.设备上线后即进入设备管理和控制的模块常规流程。
2.根据权利要求1所述的一种基于双端口备份技术的局域网设备发现方法,其特征在于,所述步骤A中初始化SDK当前运行的信息具体包括:启动发现、启动被发现,设备SN配置。
3.根据权利要求1所述的一种基于双端口备份技术的局域网设备发现方法,其特征在于,所述步骤C中启动两个线程分别接受主端口和备用端口的数据报文的同时还对主端口和备用端口分别进行监听。
4.根据权利要求1至3中任一所述的一种基于双端口备份技术的局域网设备发现方法,其特征在于,所述主端口为5353端口,所述备用端口为9393端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811168761.2A CN109218436A (zh) | 2018-10-08 | 2018-10-08 | 一种基于双端口备份技术的局域网设备发现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811168761.2A CN109218436A (zh) | 2018-10-08 | 2018-10-08 | 一种基于双端口备份技术的局域网设备发现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109218436A true CN109218436A (zh) | 2019-01-15 |
Family
ID=64983221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811168761.2A Pending CN109218436A (zh) | 2018-10-08 | 2018-10-08 | 一种基于双端口备份技术的局域网设备发现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109218436A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274066A (zh) * | 2020-02-03 | 2020-06-12 | 北京淳中科技股份有限公司 | 数据备份方法、装置和系统 |
CN112235192A (zh) * | 2020-10-10 | 2021-01-15 | 盛科网络(苏州)有限公司 | 堆叠设备Linkagg端口切换方法及基于Linkagg的堆叠设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587351A (zh) * | 2009-05-15 | 2009-11-25 | 深圳市康必达控制技术有限公司 | 智能电子设备可靠通讯的方法 |
US20160028596A1 (en) * | 2014-07-25 | 2016-01-28 | Cable Television Laboratories, Inc. | Network Service Discovery |
CN106102033A (zh) * | 2016-06-15 | 2016-11-09 | 北京众享比特科技有限公司 | 一种基于Android平台的设备通信方法和装置 |
CN106412050A (zh) * | 2016-09-26 | 2017-02-15 | 美的智慧家居科技有限公司 | 物联网中的设备、客户端及服务器及其通信方法 |
CN106791944A (zh) * | 2015-11-23 | 2017-05-31 | 北大方正集团有限公司 | 多屏互动方法、多屏互动装置及多屏互动系统 |
CN107483390A (zh) * | 2016-06-08 | 2017-12-15 | 成都赫尔墨斯科技股份有限公司 | 一种云渲染网络部署子系统、系统及云渲染平台 |
US20180013867A1 (en) * | 2013-11-18 | 2018-01-11 | Cable Television Laboratories, Inc. | Service discovery |
CN107800745A (zh) * | 2016-09-06 | 2018-03-13 | 北京京东尚科信息技术有限公司 | 基于mDNS进行服务宣告和服务发现的方法 |
-
2018
- 2018-10-08 CN CN201811168761.2A patent/CN109218436A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587351A (zh) * | 2009-05-15 | 2009-11-25 | 深圳市康必达控制技术有限公司 | 智能电子设备可靠通讯的方法 |
US20180013867A1 (en) * | 2013-11-18 | 2018-01-11 | Cable Television Laboratories, Inc. | Service discovery |
US20160028596A1 (en) * | 2014-07-25 | 2016-01-28 | Cable Television Laboratories, Inc. | Network Service Discovery |
CN106791944A (zh) * | 2015-11-23 | 2017-05-31 | 北大方正集团有限公司 | 多屏互动方法、多屏互动装置及多屏互动系统 |
CN107483390A (zh) * | 2016-06-08 | 2017-12-15 | 成都赫尔墨斯科技股份有限公司 | 一种云渲染网络部署子系统、系统及云渲染平台 |
CN106102033A (zh) * | 2016-06-15 | 2016-11-09 | 北京众享比特科技有限公司 | 一种基于Android平台的设备通信方法和装置 |
CN107800745A (zh) * | 2016-09-06 | 2018-03-13 | 北京京东尚科信息技术有限公司 | 基于mDNS进行服务宣告和服务发现的方法 |
CN106412050A (zh) * | 2016-09-26 | 2017-02-15 | 美的智慧家居科技有限公司 | 物联网中的设备、客户端及服务器及其通信方法 |
Non-Patent Citations (1)
Title |
---|
陈朋等: ""LXI仪器零配置发现机制的研究"", 《自动化仪表》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274066A (zh) * | 2020-02-03 | 2020-06-12 | 北京淳中科技股份有限公司 | 数据备份方法、装置和系统 |
CN111274066B (zh) * | 2020-02-03 | 2023-04-07 | 北京淳中科技股份有限公司 | 数据备份方法、装置和系统 |
CN112235192A (zh) * | 2020-10-10 | 2021-01-15 | 盛科网络(苏州)有限公司 | 堆叠设备Linkagg端口切换方法及基于Linkagg的堆叠设备 |
CN112235192B (zh) * | 2020-10-10 | 2022-07-08 | 苏州盛科通信股份有限公司 | 堆叠设备Linkagg端口切换方法及基于Linkagg的堆叠设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100388739C (zh) | 实现dhcp地址安全分配的方法及系统 | |
WO2018121015A1 (zh) | 客户端连麦直播处理方法和装置 | |
CN110768817B (zh) | 视联网终端的升级方法和装置 | |
CN101141492B (zh) | 实现dhcp地址安全分配的方法及系统 | |
KR101236414B1 (ko) | 두 유형의 디바이스를 운영하기 위한 디바이스 및 방법 | |
US9832136B1 (en) | Streaming software to multiple virtual machines in different subnets | |
US11075980B2 (en) | Method for operating a node cluster system in a network and node cluster system | |
CN104468368B (zh) | 配置bgp邻居的方法及装置 | |
CN105847108B (zh) | 容器间的通信方法及装置 | |
CN103873472A (zh) | 一种自动连接网络的方法 | |
CN108965227B (zh) | 一种数据处理方法及视联网会议服务器 | |
CN106411924B (zh) | 一种创建会话转发表项的方法、转发报文的方法及装置 | |
CN102761534A (zh) | 实现媒体接入控制层透明代理的方法和装置 | |
CN103036875A (zh) | 一种用户身份处理装置及识别装置 | |
CN109218436A (zh) | 一种基于双端口备份技术的局域网设备发现方法 | |
CN105959188B (zh) | 一种控制用户终端上线的方法和装置 | |
CN107710634B (zh) | 基于光网络系统的通信方法与设备 | |
CN111669293B (zh) | Sd-wan系统及网络终端设备的远程管理方法和装置 | |
CN107483369B (zh) | 一种报文处理方法及虚拟交换机 | |
CN105323159B (zh) | 数据报文的处理方法及装置 | |
CN105721274A (zh) | 一种多种即时通讯的融合方法及装置 | |
CN104994071B (zh) | 宽带远程接入服务器设备的备份方法及装置 | |
CN106533700B (zh) | 一种接口功能的实现方法及装置 | |
CN106603743A (zh) | 一种基于dhcp协议定制的广播请求响应方法、系统及终端 | |
CN105939317B (zh) | Ssl握手报文的解析方法及装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190115 |