CN105049363A - 一种路由器组播功能检测方法及装置 - Google Patents
一种路由器组播功能检测方法及装置 Download PDFInfo
- Publication number
- CN105049363A CN105049363A CN201510482901.3A CN201510482901A CN105049363A CN 105049363 A CN105049363 A CN 105049363A CN 201510482901 A CN201510482901 A CN 201510482901A CN 105049363 A CN105049363 A CN 105049363A
- Authority
- CN
- China
- Prior art keywords
- router
- agreement
- thread
- service
- request 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 12
- 238000000034 method Methods 0.000 claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 31
- 238000012544 monitoring process Methods 0.000 claims abstract description 19
- 230000005540 biological transmission Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 11
- 230000002452 interceptive effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 101000826116 Homo sapiens Single-stranded DNA-binding protein 3 Proteins 0.000 description 3
- 102100023008 Single-stranded DNA-binding protein 3 Human genes 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000931705 Cicada Species 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/201—Multicast operation; Broadcast operation
- H04L49/203—ATM switching fabrics with multicast or broadcast capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/60—Router architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种路由器组播功能检测方法及装置。该方法中,终端使用第一发现协议发送服务查询请求消息;创建并执行第一线程和第二线程,第一线程用于监听路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对路由器发出的广播消息的响应消息;若在设定时间内第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定路由器支持所述第一发现协议对应的组播协议;若在设定时间内第一线程未接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定路由器不支持所述第一发现协议所对应的组播协议。本发明可实现对路由器组播功能的检测,提高服务发现效率。
Description
技术领域
本发明涉及通信领域,尤其涉及一种路由器组播功能检测方法及装置。
背景技术
多屏互动随着智能设备的发展,得到了越来越广泛的应用。
多屏互动是指,基于DLNA(DigitalLivingNetworkAlliance数字生活网络联盟)、AirPlay(苹果公司制定的无线通讯技术)等协议或者私有协议,通过无线局域网络连接,在不同的多媒体终端上,进行多媒体(如音频、视频、图片等)内容的传输、展示等操作。
其中,提供服务发现功能的发现协议是非常重要的一部分,其主要功能是发现本地网络中提供多屏互动服务的智能设备的地址,从而与所发现的智能设备建立连接,接受该智能设备提供的多屏互动服务。
发现协议基本都是基于网络组播原理实现的,即通过本地网络路由器实现数据包在组成员之间广播。目前,几乎所有发现协议都基于客户端默认认为路由器支持组播,没有有效的措施去检测路由器是否支持组播。因而导致在无法连接提供多屏互动服务的设备时,无法定位连接失败的原因,进而无法采取相应措施来解决问题。
不仅智能设备的多屏互动服务的实现过程存在上述问题,其他场景下的其他类型服务的实现过程也存在类似问题,比如物联网场景下的服务实现过程。
发明内容
本发明实施例提供了一种路由器组播功能检测方法及装置,用以实现对路由器组播功能进行检测。
本发明的一个实施例提供的路由器组播功能检测方法,包括:
终端使用第一发现协议发送服务查询请求消息;
所述终端创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定所述路由器不支持所述第一发现协议对应的组播协议;
若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定所述路由器支持所述第一发现协议所对应的组播协议。
本发明的一个实施例提供的路由器组播功能检测装置,包括:
发送模块,用于使用第一发现协议发送服务查询请求消息;
监听模块,用于创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
判断模块,用于在设定时间长度内所述第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定所述路由器不支持所述第一发现协议对应的组播协议;若在设定时间长度内所述第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定所述路由器支持所述第一发现协议所对应的组播协议。
由于路由器在支持组播协议的情况下,能够将终端发送的服务查询请求消息在相应组播组内进行传播,因此如果终端在发送服务查询请求消息后能够从路由器接收到该服务查询请求消息,则可确认该路由器支持相应的组播协议,否则可确认该路由器不支持相应的组播协议。根据以上原理,本发明的上述实施例中,终端使用第一发现协议发送服务查询请求消息后,通过第一线程监听所述路由器针对所述服务查询请求消息发出的广播消息,通过第二线程听组播组成员针对所述路由器发出的广播消息的响应消息,若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定所述路由器支持所述第一发现协议对应的组播协议,若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定所述路由器不支持所述第一发现协议所对应的组播协议,从而可以检测路由器是否支持组播功能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种典型网络架构示意图;
图2为本发明实施例提供的组播功能检测流程示意图;
图3为本发明实施例提供的服务发现流程示意图;
图4为现有技术中组播组正常工作流程图;
图5为现有技术中组播组中没有可以提供服务的组成员时工作流程图;
图6为现有技术中路由器不支持组播功能时工作流程图;
图7为本发明实施例提供的终端的结构示意图;
图8为本发明另一实施例提供的终端的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1示例性地示出了一种可应用本发明实施例提供的服务发现方案的典型网络架构。
如图1所示,该网络架构中包括可提供服务的智能设备、能够使用服务的终端和实现设备间通信的路由器。
智能设备的数量可以是多个,智能设备的类型可以有多种,比如,所述智能设备可以包括能够提供多屏互动的电视设备。终端的数量可以是多个,终端的种类也可以有多种,比如,所述终端可以包括手机、平板电脑等。当然,图1中的智能设备也可由其他能够提供服务的电子设备代替,本发明实施例不再对该种能够提供服务的设备一一列举。
智能设备与终端之间可通过路由器进行信息交互,所述路由器可以是无线路由器。
图1中,路由器可以是支持组播功能的路由器,也可以是不支持组播功能的路由器。如果路由器是支持组播功能的路由器,则进一步地还可以支持多种发现协议。对于支持组播功能的路由器来说,其组播功能可由生成厂商默认配置,也可在出厂后允许用户自行修改,比如,可在路由器上配置多种发现协议,并开启其中的所有或部分发现协议。
本发明支持多发现协议,包括标准发现协议及私有发现协议,其原因为不同的发现协议对应的组播组不同,例如常见的标准发现协议SSDP(SimpleServiceDiscoveryProtocol,简单服务发现协议)对应于组播地址为239.255.255.250:1900的组播组,mDNS(multicastDomainNameSystem,组播DNS)对应于组播地址为224.0.0.251:5353的组播组。
在服务发现过程中,首先由终端使用某种发现协议发起服务查询请求消息,在路由器支持相应发现协议的情况下,将该服务查询请求消息组播给相应组播组内的成员,该组播组内能够提供所请求的服务的成员根据该服务查询请求消息返回服务查询响应给该终端,从而使该终端与发送该服务查询响应的组成员建立连接,从而从该组成员获得所请求的服务。
通过上述服务发现过程可以看出,采用组播技术的发现协议依赖路由器对组播的支持。如果路由器不具有支持组播的功能或者该功能未开启,则会导致服务发现过程受阻,从而使得终端不能及时发现并获得服务,因此,为了解决现有技术中的不足,本发明实施例在此网络架构基础上提供了一种路由器组播功能检测方法以及一种新的服务发现方法。
参见图2,为本发明实施例提供的路由器组播功能检测流程示意图,如图所示,该流程可包括如下步骤:
步骤201:终端使用第一发现协议发送服务查询请求消息。
该服务查询请求消息的内容和格式根据具体发现协议的不同而不同。一般地,该服务查询请求消息中包含所请求的服务的名称等信息,该服务查询请求消息的源地址为该终端的地址,目的地址为该第一发现协议对应的组播地址,目的端口号为该第一发现协议对应的组播端口号。
步骤202:所述终端创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
步骤203:若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则转入步骤204,否则,转入步骤205;
步骤204:终端终止第一线程,并确定所述路由器支持所述第一发现协议对应的组播协议;
步骤205:终端终止第一线程和第二线程,并确定所述路由器不支持所述第一发现协议对应的组播协议。
上述流程中,所述设定时间长度的取值可根据网络拓扑、网络性能、路由器性能等因素来设置,在网络规模较大或者终端与路由器之间的通信时延较大时,可将该设定时间长度的取值设置的大一些。通常,该设定时间长度的取值可根据终端与路由器之间的通信时延、路由器的消息处理时延来设置。
步骤201中终端所发送的服务查询请求消息被发送到路由器。如果路由器支持第一发现协议对应的组播协议,比如,路由器上配置有第一发现协议对应的组播协议且该组播协议被启动,则路由器可将接收到的该服务查询请求消息在对应的组播组内发送,路由器在该组播组内发送的该服务查询请求消息的源IP地址为该终端的IP地址、源端口号为第一发现协议对应的组播端口号,这样,终端可确定路由器支持第一发现协议对应的组播协议。
进一步地,在路由器支持第一发现协议对应的组播协议的情况下,路由器将接收到的该服务查询请求消息在对应的组播组内广播。如果该组播组内有成员能够提供终端所请求的服务,则在接收到该服务查询请求消息后,向该终端返回服务查询响应消息,终端可丢弃接收到的服务查询响应消息,或者向用户提示是否与该服务查询响应消息的发送设备建立连接。
如果路由器不支持第一发现协议对应的组播协议,比如,路由器上没有配置有第一发现协议对应的组播协议或者该组播协议未被启动,则路由器丢弃接收到的该服务查询请求消息,这样,终端无法从路由器接收到该服务查询请求消息,这种情况下终端可确定路由器不支持第一发现协议对应的组播协议。
上述步骤203中,在设定时间长度内所述终端的第一线程从路由器接收到消息后,可通过以下方式判断接收到的消息是否为路由器针对所述服务查询请求消息发出的广播消息:若消息中携带的源地址为所述终端的地址、端口号为所述第一发现协议所对应的组播端口号,即
SourceIP=本机IP
SourcePort=组播Port
则判定接收到的消息是路由器针对所述服务查询请求消息发出的广播消息。
考虑到允许多发现协议并存的情况,在上述实施例的基础上,还可以允许终端在确定路由器不支持当前发现协议对应的组播协议时,能够自动切换到另一种发现协议再次发起服务查询请求。
比如,基于图2所示的流程,若终端确定路由器不支持第一发现协议所对应的组播协议之后,使用第二发现协议发送服务查询请求消息,所述第二发现协议与所述第一发现协议不同。终端使用第二发现协议再次发送服务查询请求消息之后,其处理过程与该终端使用第一发现协议发送服务查询请求消息之后的处理流程类似,在此不再赘述。
上述流程中的第一发现协议和第二发现协议可以是以下发现协议中的一种:如SSDP发现协议,mDNS发现协议等。
进一步地,如果终端使用第二发现协议再次发送服务查询请求消息之后,在设定时间长度内所述第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则可以使用另一种发现协议再次发送服务查询请求消息,以此类推,直到满足结束条件为止时才停止切换发现协议来发送服务查询请求消息。所述结束条件可包括但不限于以下之一或组合:
-终端在发送服务查询请求消息后,在设定时间长度内从路由器接收到该服务查询请求消息对应的服务查询响应消息;
-终端已经切换完成其所支持的发现协议;
-终端切换发现协议的次数已经达到规定的最大次数;
-终端切换发现协议的过程所耗费的时间长度已经达到规定的最大时间长度。
上述本发明实施例的流程步骤中,优选地,终端发送服务查询请求消息之前,可根据预先设置的发现协议的使用顺序,确定服务查询请求消息需要使用的发现协议。发现协议的排序情况可根据需要来设置,比如可根据发现协议的效率的高低或者根据发现协议的通用性来设置。一种优选的实施例中,排列在前的发现协议的效率高于排列在后的发现协议的效率,从而使得按照从前到后的顺序,发现协议的效率呈降低趋势。由于预先设置发现协议的切换顺序,可以使得终端在需要切换协议更有效率的寻找到有效的发现协议。
优选地,终端确定路由器支持第一发现协议所对应的组播协议之后,可输出该路由器支持当前的发现协议(比如第一发现协议)对应的组播协议的提示信息;和/或,终端在确定路由器不支持当前的发现协议(比如第一发现协议)所对应的组播协议之后,可输出该路由器不支持该发现协议对应的组播协议的提示信息。其中,输出提示信息的方式包括但不限于文字提示、语音提示等。这样,可以是使用该终端的用户知道该路由器是否支持组播协议,并可进一步知道该路由器支持哪种组播协议。
上述流程中,可通过一个定时器对所述设定时间长度进行计时。
具体地,在上述流程步骤203中,终端创建第一线程和第二线程之后,启动定时器,该定时器的计时长度为所述设定时间长度。若该定时器超时,则说明终端在该时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则使用第二发现协议再次发送服务查询请求消息,创建第一线程和第二线程后再次启动该定时器。
上述路由器组播功能检测的流程可通过软件方式来实现。在具体实施时,可在终端上安装能够实现上述流程的应用程序,该应用程序为用户提供操作界面,当用户通过操作界面提交检测指令后,该应用程序可触发上述流程的执行,最终在操作界面上显示路由器是否支持组播协议以及支持哪种组播协议。
由于路由器在支持组播协议的情况下,能够将终端发送的服务查询请求消息在相应组播组内进行传播,因此如果终端在发送服务查询请求消息后能够接收到路由器针对所述服务查询请求消息发出的广播消息,则可确认该路由器支持相应的组播协议,否则可确认该路由器不支持相应的组播协议。根据以上原理,本发明的上述实施例中,若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则确认路由器支持与当前发送协议对应的组播协议;否则,确认路由器不支持与当前发送协议对应的组播协议,从而可以检测路由器是否支持组播功能。
参见图3,为本发明实施例提供的服务发现流程示意图,如图所示,该流程可包括如下步骤:
步骤301:终端使用第一发现协议发送服务查询请求消息。
该服务查询请求消息的内容和格式根据具体发现协议的不同而不同。一般地,该服务查询请求消息中包含所请求的服务的名称等信息,该服务查询请求消息的源地址为该终端的地址,目的地址为该第一发现协议对应的组播地址,源端口号为该第一发现协议对应的组播端口号。
步骤302:所述终端创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
步骤303:若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则转入步骤304,否则转入步骤305。
其中,终端在步骤301中所发送的服务查询请求消息被发送到路由器,如果路由器支持第一发现协议对应的组播协议,比如,路由器上配置有第一发现协议对应的组播协议且该组播协议被启动,则路由器可将接收到的该服务查询请求消息在对应的组播组内广播,这样,终端的第一线程可以接收到路由器针对所述服务查询请求消息发出的广播消息,这种情况下转入步骤305。
如果路由器不支持第一发现协议对应的组播协议,比如,路由器上没有配置有第一发现协议对应的组播协议或者该组播协议未被启动,则路由器丢弃接收到的该服务查询请求消息,这样,终端的第一线程无法接收到路由器针对所述服务查询请求消息发出的广播消息,这种情况下转入步骤304。
其中,一般情况下,终端通过检测接收到的消息中所包含的IP地址和端口号来判断该消息是否为路由器针对所述服务查询请求消息发出的广播消息,如果消息中包含的源IP地址与自己的IP地址相同,且源端口号与组播端口号相同,则判断本消息即为路由器针对所述服务查询请求消息发出的广播消息。
步骤304:终端使用第二发现协议再次发送服务查询请求消息,所述第二发现协议与所述第一发现协议不同。
可选地,启用第二发现协议时,终端返回步骤301,重新向路由器发送使用第二发现协议的服务查询请求,并提示用户本次使用第二协议发送服务查询请求。
优选地,终端发送服务查询请求消息之前,可根据预先设置的发现协议的使用顺序,确定服务查询请求消息需要使用的发现协议。发现协议的排序情况可根据需要来设置,比如可根据发现协议的效率的高低或者根据发现协议的通用性来设置。一种优选的实施例中,排列在前的发现协议的效率高于排列在后的发现协议的效率,从而使得按照从前到后的顺序,发现协议的效率呈降低趋势。由于预先设置发现协议的切换顺序,可以使得终端在需要切换协议更有效率的寻找到有效的发现协议。
上述流程的步骤304中,终端使用第二发现协议再次发送服务查询请求消息之后,其处理过程与该终端使用第一发现协议发送服务查询请求消息之后的处理流程类似,在此不再赘述。其中,上述流程的结束条件如路由器组播功能检测所述条件一致。
步骤305:若在设定时间长度内所述终端的第二线程接收到组播组成员针对所述路由器发出的广播消息的响应消息,则转入步骤306,否则结束本流程。
如果路由器支持第一发现协议对应的组播协议,则路由器将接收到的该服务查询请求消息在对应的组播组内广播。如果该组播组内有成员能够提供终端所请求的服务,则在接收到该服务查询请求消息后,向该终端返回针对所述路由器发出的广播消息的响应消息,其中携带该组播成员的服务地址,包括监听的地址和端口号,终端将与此地址和端口号建立连接。
步骤306:终端从第二线程接收到的组播组成员针对所述路由器发出的广播消息的响应消息中获取提供服务的地址,从而与该组播组成员建立连接。
优选地,在上述流程步骤303中,若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则输出路由器不支持第一发现协议对应的组播协议的提示信息。其中,输出提示信息的方式包括但不限于文字提示、语音提示等。
优选地,在上述步骤305中,若在设定时间长度内所述终端的第二线程接收到组播组成员针对所述路由器发出的广播消息的响应消息,则输出路由器支持所述第一组播协议对应的组播协议但组播组内没有成员能够提供所请求的服务的提示信息。其中,输出提示信息的方式包括但不限于文字提示、语音提示等。
通过在终端显示关于服务未发现或路由器不支持组播的具体情况的信息,使得服务发现流程对于用户更加透明化,使得用户可以在服务发现失败的情况下,区分失败的原因,进而采用相应的措施,提高了用户体验。
由于路由器在支持组播协议的情况下,能够将终端发送的服务查询请求消息在相应组播组内进行传播,因此如果终端在发送服务查询请求消息后能够从路由器接收到针对所述服务查询请求消息发出的广播消息,则可确认该路由器支持相应的组播协议,否则可确认该路由器不支持相应的组播协议。根据以上原理,本发明的上述实施例中,终端使用第一发现协议向路由器发送服务查询请求消息,若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,并且在设定时间长度内所述终端的第二线程接收到组播组成员针对所述路由器发出的广播消息的响应消息,则与发送所述响应消息的组播组成员建立连接;若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终端切换发现协议重新发送服务查询请求消息,从而一方面可以在服务发现过程中检测路由器的组播功能,另一方面在确定路由器不支持当前发现协议对应的组播协议时,使用其他发现协议再次发起服务发现过程,以尽可能发现到能够提供服务的组成员。
为了更清楚地理解本发明的上述实施例,下面结合图4至图6描述以下3种情况的信令交互过程:
场景1:组播组正常工作时,即路由器支持组播功能,提供服务的电视正常工作且已经加入组播组,如图4所示;手机发送服务请求消息,路由器接收后将服务请求消息组播给各个组成员,电视收到路由器发送到服务请求消息后将服务响应消息发送给路由器,路由器再将服务响应消息返回给手机。
场景2:组播组中没有可以提供服务的组成员时,如图5所示;手机发送服务请求消息,路由器接收后将服务请求消息组播给各个组成员,但是电视没有开机或开机但没有加入组播组,则路由器不会接收到服务响应消息,手机也就不会接收到服务响应消息。
场景3:路由器不支持组播功能或组播功能关闭时,如图6所示;手机发送服务请求消息,但路由器不能将服务请求消息组播给组成员,则手机不会接收到任何服务消息。
基于相同的技术构思,本发明实施例还提供了一种终端,该终端可用于对路由器是否支持组播功能以及支持哪些组播端口进行检测。
参见图7,为本发明实施例提供的终端的结构示意图,该终端包括:
发送模块701,用于使用第一发现协议发送服务查询请求消息;
监听模块702,用于创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
判断模块703,用于在设定时间长度内所述第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定所述路由器不支持所述第一发现协议对应的组播协议;若在设定时间长度内所述第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定所述路由器支持所述第一发现协议所对应的组播协议。
优选地,判断模块703还可用于:
在设定时间长度内所述第一线程从路由器接收到消息后,若判断接收到的消息中携带的源地址为所述终端的地址、端口号为所述第一发现协议所对应的组播端口号,则判定接收到的消息是路由器针对所述服务查询请求消息发出的广播消息。
优选地,判断模块703在确定所述路由器不支持所述第一发现协议所对应的组播协议之后,指示发送模块使用第二发现协议发送服务查询请求消息,所述第二发现协议与所述第一发现协议不同。
优选地,判断模块703在确定所述路由器支持所述第一发现协议所对应的组播协议之后,输出所述路由器支持所述第一发现协议对应的组播协议的提示信息;和/或,在确定所述路由器不支持所述第一发现协议所对应的组播协议之后,输出所述路由器不支持所述第一发现协议对应的组播协议的提示信息。
基于相同的技术构思,本发明实施例还提供了一种终端,该终端可以发起服务发现过程。
参见图8,为本发明实施例提供的终端的结构示意图,该终端可包括:
发送模块801,用于使用第一发现协议发送服务查询请求消息;
监听模块802,用于创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
判断模块803:用于在设定时间长度内所述第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息的情况下,指示所述发送模块801使用第二发现协议再次发送服务查询请求消息,所述第二发现协议与所述第一发现协议不同;以及用于在设定时间长度内所述终端的第二线程接收到组播组成员针对所述路由器发出的广播消息的响应消息的情况下,指示连接模块804与发送所述响应消息的组播组成员建立连接;
连接模块804,用于根据所述判断模块的指示与发送所述响应消息的组播组成员建立连接。
优选地,判断模块803还可用于:若确定所述路由器不支持所述第一发现协议所对应的组播协议,则输出所述路由器不支持所述第一发现协议对应的组播协议的提示信息。
优选地,判断模块803还可用于:在设定时间长度内所述第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,但在设定时间长度内所述第二线程没有接收到的组播组成员针对所述路由器发出的广播消息的响应消息,则输出所述路由器支持所述第一组播协议对应的组播协议但组播组内没有成员能够提供所请求的服务的提示信息。
优选地,发送模块801还可在使用第一发现协议发送服务查询请求消息以及使用第二发现协议发送服务查询请求消息之前,根据预先设置的发现协议的使用顺序,确定服务查询请求消息需要使用的发现协议;其中,排列在前的发现协议的效率高于排列在后的发现协议的效率。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种路由器组播功能检测方法,其特征在于,包括:
终端使用第一发现协议发送服务查询请求消息;
所述终端创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定所述路由器支持所述第一发现协议对应的组播协议;
若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定所述路由器不支持所述第一发现协议所对应的组播协议。
2.如权利要求1所述的方法,其特征在于,还包括:
若在设定时间长度内所述终端的第一线程从路由器接收到消息后,若判断接收到的消息中携带的源地址为所述终端的地址、端口号为所述第一发现协议所对应的组播端口号,则判定接收到的消息是路由器针对所述服务查询请求消息发出的广播消息。
3.如权利要求1所述的方法,其特征在于,还包括:
确定所述路由器不支持所述第一发现协议所对应的组播协议之后,使用第二发现协议发送服务查询请求消息,所述第二发现协议与所述第一发现协议不同。
4.如权利要求3所述的方法,其特征在于,所述终端使用第一发现协议发送服务查询请求消息以及使用第二发现协议发送服务查询请求消息之前,还包括:
根据预先设置的发现协议的使用顺序,确定服务查询请求消息需要使用的发现协议;其中,排列在前的发现协议的效率高于排列在后的发现协议的效率。
5.如权利要求1至4中任一项所述的方法,其特征在于,还包括:
若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则输出所述路由器支持所述第一发现协议对应的组播协议的提示信息;或者
若在设定时间长度内所述终端的第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则输出所述路由器不支持所述第一发现协议对应的组播协议的提示信息;或者
若在设定时间长度内所述终端的第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,但第二线程没有接收到组播组成员对所述路由器发出的广播消息的响应消息,则输出所述路由器支持所述第一发现协议对应的组播协议但组播组内没有成员能够提供所请求的服务的提示信息。
6.一种路由器组播功能检测装置,其特征在于,包括:
发送模块,用于使用第一发现协议发送服务查询请求消息;
监听模块,用于创建并执行第一线程和第二线程,第一线程用于监听所述路由器针对所述服务查询请求消息发出的广播消息,第二线程用于监听组播组成员针对所述路由器发出的广播消息的响应消息;
判断模块,用于在设定时间长度内所述第一线程接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程,并确定所述路由器不支持所述第一发现协议对应的组播协议;若在设定时间长度内所述第一线程没有接收到路由器针对所述服务查询请求消息发出的广播消息,则终止第一线程和第二线程,并确定所述路由器支持所述第一发现协议所对应的组播协议。
7.如权利要求6所述的路由器组播功能检测装置,其特征在于,所述判断模块还用于:
在设定时间长度内所述第一线程从路由器接收到消息后,若判断接收到的消息中携带的源地址为所述终端的地址、端口号为所述第一发现协议所对应的组播端口号,则判定接收到的消息是路由器针对所述服务查询请求消息发出的广播消息。
8.如权利要求6所述的路由器组播功能检测装置,其特征在于,所述判断模块还用于:
确定所述路由器不支持所述第一发现协议所对应的组播协议之后,指示所述发送模块使用第二发现协议发送服务查询请求消息,所述第二发现协议与所述第一发现协议不同。
9.如权利要求8所述的路由器组播功能检测装置,其特征在于,所述发送模块还用于:
使用第一发现协议发送服务查询请求消息以及使用第二发现协议发送服务查询请求消息之前,根据预先设置的发现协议的使用顺序,确定服务查询请求消息需要使用的发现协议;其中,排列在前的发现协议的效率高于排列在后的发现协议的效率。
10.如权利要求6至10中任一项所述的路由器组播功能检测装置,其特征在于,所述判断模块还用于:
若在设定时间长度内所述第一线程接收到路由器针对所服务述查询请求消息发出的广播消息,则输出所述路由器支持所述第一发现协议对应的组播协议的提示信息;或者
若在设定时间长度内所述第一线程没有接收到路由器针对所服务述查询请求消息发出的广播消息,则输出所述路由器不支持所述第一发现协议对应的组播协议的提示信息;或者
若在设定时间长度内所述第一线程接收到路由器针对所服务述查询请求消息发出的广播消息,但所述第二线程没有接收到组播组成员发出的广播消息的响应消息,则输出所述路由器支持所述第一发现协议对应的组播协议但组播组内没有成员能够提供所请求的服务的提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510482901.3A CN105049363B (zh) | 2015-08-07 | 2015-08-07 | 一种路由器组播功能检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510482901.3A CN105049363B (zh) | 2015-08-07 | 2015-08-07 | 一种路由器组播功能检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105049363A true CN105049363A (zh) | 2015-11-11 |
CN105049363B CN105049363B (zh) | 2018-11-30 |
Family
ID=54455578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510482901.3A Expired - Fee Related CN105049363B (zh) | 2015-08-07 | 2015-08-07 | 一种路由器组播功能检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105049363B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030876A (zh) * | 2007-04-06 | 2007-09-05 | 中兴通讯股份有限公司 | 一种PPPoE实现组播业务的方法 |
CN101321077A (zh) * | 2008-07-18 | 2008-12-10 | 华为技术有限公司 | 可靠组播的方法、运营商边缘上层设备及系统 |
CN101771938A (zh) * | 2008-12-31 | 2010-07-07 | 中兴通讯股份有限公司 | 组播检测装置及方法 |
-
2015
- 2015-08-07 CN CN201510482901.3A patent/CN105049363B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030876A (zh) * | 2007-04-06 | 2007-09-05 | 中兴通讯股份有限公司 | 一种PPPoE实现组播业务的方法 |
CN101321077A (zh) * | 2008-07-18 | 2008-12-10 | 华为技术有限公司 | 可靠组播的方法、运营商边缘上层设备及系统 |
CN101771938A (zh) * | 2008-12-31 | 2010-07-07 | 中兴通讯股份有限公司 | 组播检测装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105049363B (zh) | 2018-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104113458A (zh) | 一种移动终端与智能家电设备互联的方法及装置 | |
CN110636483A (zh) | 一种配网方法及系统 | |
US9998298B2 (en) | Data transmission method, apparatus, and computer storage medium | |
CN112468529B (zh) | 一种会话管理方法及设备 | |
RU2010136044A (ru) | Управление беспроводными ретрансляционными узлами с использованием индентификаторов | |
CN106961426B (zh) | 智能设备的通讯方法及装置 | |
US20130104116A1 (en) | Method and apparatus for upgrading wireless repeater | |
CN104735001A (zh) | 软件定义网络中的链路发现方法、装置及系统 | |
US20120198054A1 (en) | Method and apparatus for determining gateway and method and system for sending message | |
CN105337814A (zh) | 一种网络设备的连接方法、设备及系统 | |
WO2022082724A1 (en) | Method and apparatus for multicast service support in time sensitive network | |
CN105141450A (zh) | 物联设备wifi模块配置方法及装置 | |
WO2018053894A1 (zh) | 物联网基于传输速率的接入点切换方法及装置 | |
CN105187387A (zh) | 一种服务发现方法及终端 | |
CN111107605A (zh) | 一种家电设备的配网方法和家电设备 | |
CN102186029A (zh) | 一种电视机的入网方法、装置及电视机 | |
CN113573381A (zh) | 非ip类型数据的传输处理方法、设备、装置及介质 | |
CN113765795A (zh) | 组网方法及装置、系统和存储介质 | |
CN107528788B (zh) | 实现网络设备之间自动堆叠的方法和装置 | |
KR101341470B1 (ko) | 서비스 품질 파라미터를 구성하기 위한 방법, 원격 액세스 서버 및 시스템 | |
CN105246128A (zh) | 一种智能终端的组网方法及装置 | |
CN105049363A (zh) | 一种路由器组播功能检测方法及装置 | |
EP3258654B1 (en) | Method and system for reducing pim protocol dr change | |
JP2006185095A (ja) | サーバ選択方法およびサーバ選択方式およびサーバおよびクライアント端末 | |
CN112533304A (zh) | 自组网络管理方法、装置、系统、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181130 |