发明内容
为了节约网络资源和发现设备的电量,本发明提供了一种设备发现方法、装置及系统。所述技术方案如下:
根据本发明实施例的第一方面,提供一种设备发现方法,该方法包括:
在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
接收目标被发现设备发送的连接建立请求,该连接建立请求是该目标被发现设备在自身的设备信息与该发现信息中的设备信息匹配时,根据该通信协议信息发送的。
根据该连接建立请求,与该目标被发现设备建立连接。
在一个可能的实施例中,该在网络中定时广播发现信息,包括:
以与被发现设备事先约定的广播端口,以UDP广播形式定时广播该发现信息。
或以与被发现设备事先约定的组播IP地址段和端口,以UDP组播形式定时组播该发现信息。
在一个可能的实施例中,该根据该连接建立请求,与该目标被发现设备建立连接,包括:
在该连接建立请求为两个或者两个以上时,筛选出至少一个目标连接建立请求。
对于每个该目标连接建立请求,检测该目标连接建立请求是否符合该通信协议信息所约定的协议类型和协议参数。
若符合该协议类型和该协议参数,则与对应的该目标被发现设备建立点对点连接。
根据本发明实施例的第二方面,提供一种设备发现方法,该方法包括:
在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
从该发现信息中解析出被发现设备的设备信息和通信协议信息。
检测自身的设备信息与该发现信息中的设备信息是否匹配。
若匹配,则根据该通信协议信息生成连接建立请求。
向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
在一个可能的实施例中,该在网络中监听和接收发现信息,包括:
以与发现设备事先约定的广播端口,监听和接收以UDP广播形式发送的该发现信息,或以与发现设备事先约定的组播IP地址段和端口,监听和接收以UDP组播形式发送的该发现信息。
在一个可能的实施例中,该根据该通信协议信息生成连接建立请求,包括:
根据该通信协议信息所约定的协议类型和协议参数,生成连接建立请求。
根据本发明实施例的第三方面,提供一种设备发现装置,该设备发现装置包括:
广播模块,用于在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
第一接收模块,用于接收目标被发现设备发送的连接建立请求,该连接建立请求是该目标被发现设备在自身的设备信息与该发现信息中的设备信息匹配时,根据该通信协议信息发送的。
连接模块,用于根据该连接建立请求,与该目标被发现设备建立连接。
在一个可能的实施例中,该广播模块包括:
约定广播子模块,用于以与被发现设备事先约定的广播端口,以UDP广播形式定时广播该发现信息,或以与被发现设备事先约定的组播IP地址段和端口,以UDP组播形式定时组播该发现信息。
在一个可能的实施例中,该连接模块包括:
目标筛选子模块,用于在该连接建立请求为两个或者两个以上时,筛选出至少一个目标连接建立请求。
检测子模块,用于对于每个该目标连接建立请求,检测该目标连接建立请求是否符合该通信协议信息所约定的协议类型和协议参数。
连接建立子模块,用于在符合该协议类型和该协议参数时,与对应的该目标被发现设备建立点对点连接。
根据本发明实施例的第四方面,提供一种设备发现装置,该设备发现装置包括:
第二接收模块,用于在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
解析模块,用于从该发现信息中解析出被发现设备的设备信息和通信协议信息。
检测模块,用于检测自身的设备信息与该发现信息中的设备信息是否匹配。
请求生成模块,用于在匹配的情况下,根据该通信协议信息生成连接建立请求。
请求发送模块,用于向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
在一个可能的实施例中,该第二接收模块包括:
约定接收子模块,用于以与发现设备事先约定的广播端口,监听和接收以UDP广播形式发送的该发现信息,或以与发现设备事先约定的组播IP地址段和端口,监听和接收以UDP组播形式发送的该发现信息。
在一个可能的实施例中,该请求生成模块包括:
请求生成子模块,用于根据该通信协议信息所约定的协议类型和协议参数,生成连接建立请求。
根据本发明实施例的第五方面,提供一种设备发现系统,该设备发现系统包括:第一设备发现装置和第二设备发现装置。
该第一设备发现装置为本发明实施例的第三方面或其可选实施方式中的设备发现装置。
该第二设备发现装置为本发明实施例的第四方面或其可选实施方式中的设备发现装置。
本发明的实施例提供的技术方案可以包括以下有益效果:
通过在网络中定时广播带有设备信息的发现信息,并根据被发现设备发送的连接建立请求与之建立连接。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题,达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是本发明本发明各个实施例提供的设备发现方法所涉及的实施环境的示意图,如图1所示,该实施环境可以包括发现设备120和被发现设备140。
发现设备120与被发现设备140之间通过WIFI(WIreless-Fidelity,无线保真)或蓝牙或网线等IP网络相连。
本文中的“发现设备”可以是指智能手机、平板电脑等手持设备。“被发现设备”可以是无线音箱、路由器、智能手机和平板电脑等终端。
图2是根据一示例性实施例示出的一种设备发现方法的流程图,如图2所示,本实施例以该设备发现方法应用于图1所示的发现设备来举例说明,该设备发现方法包括以下步骤:
在步骤201中,在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
设备信息包括但不限于设备名、设备类型、设备序列号或设备所支持的功能、参数等要求。
通信协议信息可以是任意IP网络的点对点通讯协议类型,以及建立该点对点通讯连接所必须的参数。包括但不限于UDP、TCP、RTP等通讯协议类型,以及IP地址、端口号、用户名、密码等参数。
UDP协议的主要作用是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。
每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。
IP地址方式的特点是给每个终端分配一个网络地址,每个分组均携带这个地址,作为网络结点转发分组的依据。
在步骤202中,接收目标被发现设备发送的连接建立请求,该连接建立请求是目标被发现设备在自身的设备信息与发现信息中的设备信息匹配时,根据通信协议信息发送的。
在步骤203中,根据连接建立请求,与目标被发现设备建立连接。
该与目标被发现设备建立连接的方式为点对点连接。
综上所述,本发明实施例中提供的设备发现方法,通过在网络中定时广播带有被发现设备信息的发现信息,并根据被发现设备发送的连接建立请求与之建立连接。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图3是根据另一示例性实施例示出的一种设备发现方法的流程图,如图3所示,本实施例以该设备发现方法应用于图1所示的被发现设备来举例说明,该设备发现方法包括以下步骤:
在步骤301中,在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
在步骤302中,从该发现信息中解析出被发现设备的设备信息和通信协议信息。
在步骤303中,检测自身的设备信息与该发现信息中的设备信息是否匹配。
在匹配时,进入步骤304;在不匹配时,进入步骤305。
在步骤304中,若匹配,则根据该通信协议信息生成连接建立请求。
在步骤305中,若不匹配,则不进行任何处理。
被发现设备抛弃该广播信息,不对其进行响应。对该被发现设备而言,发现设备流程结束。
在步骤306中,向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
综上所述,本发明实施例中提供的设备发现方法,通过在网络中监听和接收发现设备广播的发现信息,并根据匹配结果发送连接建立请求。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图4是根据又一示例性实施例示出的一种设备发现方法的流程图,如图4所示,本实施例以该设备发现方法应用于图1所示的实施环境中来举例说明,该设备发现方法包括以下步骤:
在步骤401中,发现设备在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
设备信息包括但不限于设备名、设备类型、设备序列号或设备所支持的功能、参数等要求。
通信协议信息可以是任意IP网络的点对点通讯协议类型,以及建立该点对点通讯连接所必须的参数。包括但不限于UDP、TCP、RTP等通讯协议类型,以及IP地址、端口号、用户名、密码等参数。
在步骤402中,被发现设备在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
在网络中监听和接收发现信息,包括:
以与发现设备事先约定的广播端口,监听和接收以UDP广播形式发送的该发现信息,或以与发现设备事先约定的组播IP地址段和端口,监听和接收以UDP组播形式发送的该发现信息。
UDP协议的主要作用是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。
每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。
IP地址方式的特点是给每个终端分配一个网络地址,每个分组均携带这个地址,作为网络结点转发分组的依据。
广播是指网络上的一个主机向网络上的所有其他主机发送数据。
组播是指网络上的一个主机向网络上的一组主机发送数据。
在步骤403中,被发现设备从该发现信息中解析出被发现设备的设备信息和通信协议信息。
在步骤404中,被发现设备检测自身的设备信息与该发现信息中的设备信息是否匹配。
在步骤405中,若匹配,则被发现设备根据该通信协议信息生成连接建立请求。
该根据该通信协议信息生成连接建立请求,包括:
根据该通信协议信息所约定的协议类型和协议参数,生成连接建立请求。
若不匹配,则不进行任何处理。
被发现设备抛弃该广播信息,不对其进行响应。对该被发现设备而言,发现设备流程结束。
在步骤406中,被发现设备向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
在步骤407中,发现设备接收目标被发现设备发送的连接建立请求,该连接建立请求是该目标被发现设备在自身的设备信息与该发现信息中的设备信息匹配时,根据该通信协议信息发送的。
在步骤408中,发现设备根据该连接建立请求,与该目标被发现设备建立连接。
该根据该连接建立请求,与该目标被发现设备建立连接,包括:
发现设备在该连接建立请求为两个或者两个以上时,筛选出至少一个目标连接建立请求。
发现设备对于每个该目标连接建立请求,检测该目标连接建立请求是否符合该通信协议信息所约定的协议类型和协议参数。
若符合该协议类型和该协议参数,则发现设备与对应的该目标被发现设备建立点对点连接。
综上所述,本发明实施例中提供的设备发现方法,通过发现设备定时在网络中广播带有被发现设备信息的发现信息,并根据被发现设备发送的连接建立请求与之建立连接。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图5是根据一示例性实施例示出的一种设备发现装置的结构图,如图5所示,本实施例中的设备发现装置可以通过软件、硬件或者两者的结合实现成为图1所示的实施环境中的第一设备发现装置的全部或者一部分。
该发现设备包括但不限于:
广播模块520,用于在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
设备信息包括但不限于设备名、设备类型、设备序列号或设备所支持的功能、参数等要求。
通信协议信息可以是任意IP网络的点对点通讯协议类型,以及建立该点对点通讯连接所必须的参数。包括但不限于UDP、TCP、RTP等通讯协议类型,以及IP地址、端口号、用户名、密码等参数。
UDP协议的主要作用是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。
每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。
IP地址方式的特点是给每个终端分配一个网络地址,每个分组均携带这个地址,作为网络结点转发分组的依据。
第一接收模块540,用于接收目标被发现设备发送的连接建立请求,该连接建立请求是该目标被发现设备在自身的设备信息与该发现信息中的设备信息匹配时,根据该通信协议信息发送的。
连接模块560,用于根据该连接建立请求,与该目标被发现设备建立连接。
综上所述,本发明实施例中提供的发现设备,通过定时在网络中广播带有被发现设备信息的发现信息,并根据被发现设备发送的连接建立请求与之建立连接。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图6是根据另一示例性实施例示出的一种设备发现装置的结构图,如图6所示,本实施例中的设备发现装置可以通过软件、硬件或者两者的结合实现成为图1所示的实施环境中的第一设备发现装置的全部或者一部分。
该发现设备包括但不限于:
广播模块520,用于在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
设备信息包括但不限于设备名、设备类型、设备序列号或设备所支持的功能、参数等要求。
通信协议信息可以是任意IP网络的点对点通讯协议类型,以及建立该点对点通讯连接所必须的参数。包括但不限于UDP、TCP、RTP等通讯协议类型,以及IP地址、端口号、用户名、密码等参数。
UDP协议的主要作用是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。
每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。
IP地址方式的特点是给每个终端分配一个网络地址,每个分组均携带这个地址,作为网络结点转发分组的依据。
该广播模块包括:
约定广播子模块522,用于以与被发现设备事先约定的广播端口,以UDP广播形式定时广播该发现信息,或以与被发现设备事先约定的组播IP地址段和端口,以UDP组播形式定时组播该发现信息。
广播是指网络上的一个主机向网络上的所有其他主机发送数据。
组播是指网络上的一个主机向网络上的一组主机发送数据。
第一接收模块540,用于接收目标被发现设备发送的连接建立请求,该连接建立请求是该目标被发现设备在自身的设备信息与该发现信息中的设备信息匹配时,根据该通信协议信息发送的。
连接模块560,用于根据该连接建立请求,与该目标被发现设备建立连接。
目标筛选子模块562,用于在该连接建立请求为两个或者两个以上时,筛选出至少一个目标连接建立请求。
检测子模块564,用于对于每个该目标连接建立请求,检测该目标连接建立请求是否符合该通信协议信息所约定的协议类型和协议参数。
连接建立子模块566,用于在符合该协议类型和该协议参数时,与对应的该目标被发现设备建立点对点连接。
综上所述,本发明实施例中提供的发现设备,通过定时在网络中广播带有被发现设备信息的发现信息,并根据被发现设备发送的连接建立请求与之建立连接。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图7是根据一示例性实施例示出的一种设备发现装置的结构图,如图7所示,本实施例中的设备发现装置可以通过软件、硬件或者两者的结合实现成为图1所示的实施环境中的第二设备发现装置的全部或者一部分。
该设备发现装置包括但不限于:
第二接收模块710,用于在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
解析模块730,用于从该发现信息中解析出被发现设备的设备信息和通信协议信息。
检测模块750,用于检测自身的设备信息与该发现信息中的设备信息是否匹配。
请求生成模块770,用于在匹配的情况下,根据该通信协议信息生成连接建立请求。
请求发送模块790,用于向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
综上所述,本发明实施例中提供的被发现设备,通过定时监听和接收发现设备在网络中广播带有被发现设备信息的发现信息,并根据匹配结果向发现设备发送连接建立请求。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图8是根据另一示例性实施例示出的一种设备发现装置的结构图,如图8所示,本实施例中的设备发现装置可以通过软件、硬件或者两者的结合实现成为图1所示的实施环境中的第二设备发现装置的全部或者一部分。
该设备发现装置包括:
第二接收模块710,用于在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
该第二接收模块包括:
约定接收子模块712,用于以与发现设备事先约定的广播端口,监听和接收以UDP广播形式发送的该发现信息。或以与发现设备事先约定的组播IP地址段和端口,监听和接收以UDP组播形式发送的该发现信息。
广播是指网络上的一个主机向网络上的所有其他主机发送数据。
组播是指网络上的一个主机向网络上的一组主机发送数据。
解析模块730,用于从该发现信息中解析出被发现设备的设备信息和通信协议信息。
检测模块750,用于检测自身的设备信息与该发现信息中的设备信息是否匹配。
请求生成模块770,用于在匹配的情况下,根据该通信协议信息生成连接建立请求。
该请求生成模块包括:
请求生成子模块772,用于根据该通信协议信息所约定的协议类型和协议参数,生成连接建立请求。
请求发送模块790,用于向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
综上所述,本发明实施例中提供的被发现设备,通过定时监听和接收发现设备在网络中广播带有被发现设备信息的发现信息,并根据匹配结果向发现设备发送连接建立请求。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
图9是根据另一示例性实施例示出的一种设备发现系统的结构图,如图9所示,本实施例中的设备发现系统可以通过软件、硬件或者两者的结合实现成为图1所示的实施环境中的全部或者一部分。
该设备发现系统包括:
广播模块910,用于在网络中定时广播发现信息,该发现信息携带有被发现设备的设备信息和通信协议信息。
设备信息包括但不限于设备名、设备类型、设备序列号或设备所支持的功能、参数等要求。
通信协议信息可以是任意IP网络的点对点通讯协议类型,以及建立该点对点通讯连接所必须的参数。包括但不限于UDP、TCP、RTP等通讯协议类型,以及IP地址、端口号、用户名、密码等参数。
UDP协议的主要作用是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。
每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。
IP地址方式的特点是给每个终端分配一个网络地址,每个分组均携带这个地址,作为网络结点转发分组的依据。
该广播模块包括:
约定广播子模块912,用于以与被发现设备事先约定的广播端口,以UDP广播形式定时广播该发现信息,或以与被发现设备事先约定的组播IP地址段和端口,以UDP组播形式定时组播该发现信息。
第二接收模块920,用于在网络中监听和接收发现信息,该发现信息是发现设备在网络中广播的。
该第二接收模块包括:
约定接收子模块922,用于以与发现设备事先约定的广播端口,监听和接收以UDP广播形式发送的该发现信息。或以与发现设备事先约定的组播IP地址段和端口,监听和接收以UDP组播形式发送的该发现信息。
解析模块930,用于从该发现信息中解析出被发现设备的设备信息和通信协议信息。
检测模块940,用于检测自身的设备信息与该发现信息中的设备信息是否匹配。
请求生成模块950,用于在匹配的情况下,根据该通信协议信息生成连接建立请求。
该请求生成模块包括:
请求生成子模块952,用于根据该通信协议信息所约定的协议类型和协议参数,生成连接建立请求。
请求发送模块960,用于向该发现设备发送该连接建立请求,该连接建立请求用于与该发现设备建立连接。
第一接收模块970,用于接收目标被发现设备发送的连接建立请求,该连接建立请求是该目标被发现设备在自身的设备信息与该发现信息中的设备信息匹配时,根据该通信协议信息发送的。
连接模块980,用于根据该连接建立请求,与该目标被发现设备建立连接。
目标筛选子模块982,用于在该连接建立请求为两个或者两个以上时,筛选出至少一个目标连接建立请求。
检测子模块984,用于对于每个该目标连接建立请求,检测该目标连接建立请求是否符合该通信协议信息所约定的协议类型和协议参数。
连接建立子模块986,用于在符合该协议类型和该协议参数时,与对应的该目标被发现设备建立点对点连接。
综上所述,本发明实施例中提供的设备发现系统,通过发现设备定时在网络中广播带有被发现设备信息的发现信息,被发现设备根据匹配结果向发现设备发送连接建立请求。解决了现有技术中被发现设备持续广播存活信息造成的浪费网络资源,发现设备监听和处理所有存活信息,消耗发现设备的大量资源和电量的技术问题。达到了在不存在发现需求时,节约网络资源和发现设备的电量的技术效果。
需要说明的是:上述实施例提供的设备发现方法在互联网应用时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。