CN105245595B - 服务响应方法及装置 - Google Patents
服务响应方法及装置 Download PDFInfo
- Publication number
- CN105245595B CN105245595B CN201510642319.9A CN201510642319A CN105245595B CN 105245595 B CN105245595 B CN 105245595B CN 201510642319 A CN201510642319 A CN 201510642319A CN 105245595 B CN105245595 B CN 105245595B
- Authority
- CN
- China
- Prior art keywords
- service
- server
- ssdp
- client
- request
- 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.)
- Active
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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开是关于一种服务响应方法及装置,属于电子技术应用领域。所述方法包括:通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用;根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息;向该客户端发送服务响应消息,该服务响应消息包括该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。本公开解决了终端中安装有多个支持SSDP的服务端时的端口冲突的问题。本公开用于响应服务发现请求。
Description
技术领域
本公开涉及电子技术应用领域,特别涉及一种服务响应方法及装置。
背景技术
简单服务发现协议(英文:Simple Service Discovery Protocol;简称:SSDP)是一种应用层协议,SSDP为局域网络中的终端(英文:network client)提供了一种发现网络服务(英文:network services)的机制。若终端中安装有支持SSDP的客户端,则该客户端可以根据SSDP查询该客户端所在的局域网络中是否有提供该客户端所需服务的服务端;若终端中安装有支持SSDP的服务端,则该服务端也可以根据SSDP,接收相应客户端的服务发现请求。
相关技术中,当客户端需要获取指定的服务时,客户端可以向一个特定的多播地址端口,该端口称为SSDP端口,发送服务发现请求(英文:SSDP discover)消息。当占用该SSDP端口的服务端接收到该客户端发送的服务发现请求消息时,服务端可以分析该服务发现请求消息中,客户端所请求的服务类型,如果该服务端能够提供该客户端所请求的服务,则服务端可以通过该服务端所在终端中预设的数据通讯端口以单播的方式响应客户端的请求。在第四版互联网协议(英文:InternetProtocol version4;简称:IPv4)和IPv6中,客户端和服务端所使用的多播的IP地址和SSDP端口均为固定的,且一个终端中的SSDP端口仅允许一个服务端占用,例如在IPv4中,支持SSDP协议的服务端所在终端所使用的多播的IP地址为:239.255.255.250,SSDP端口的端口号为1900。
发明内容
为了解决相关技术中的问题,本公开提供了一种服务响应方法及装置。所述技术方案如下:
根据本公开实施例的第一方面,提供一种服务响应方法,该方法包括:
通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用;
根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端;
向该客户端发送服务响应消息,该服务响应消息包括该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
可选的,该方法还包括:
确定该SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端;
获取每个该支持SSDP的服务端的配置信息,该配置信息中包括该服务类型和服务端的地址信息;
根据每个该支持SSDP的服务端的配置信息建立该对应关系。
可选的,该方法还包括:
接收配置在该SSDP服务端的该对应关系。
可选的,该方法还包括:
根据预设的服务类型和版本信息的对应关系,获取该请求的服务类型对应的目标版本信息;
生成该服务响应消息,该服务响应消息包括该目标地址信息和该目标版本信息。
可选的,该服务发现请求还包括最长等待时长,该最长等待时长用于指示该客户端发送服务发现请求后,允许接收服务响应消息的时长,该方法还包括:
检测预设时间段内,通过该SSDP端口接收的服务发现请求的个数;
该向该客户端发送服务响应消息,包括:
当该服务发现请求的个数等于1时,向该服务发现请求对应的客户端发送服务响应消息;
当该服务发现请求的个数大于1时,按照该最长等待时长对该服务发现请求进行升序排序得到响应优先级列表;
按照该响应优先级列表向各个该服务发现请求对应的客户端发送服务响应消息。
可选的,该通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,包括:
通过该SSDP端口接收客户端发送的请求报文,该请求报文携带有该服务发现请求和该客户端的地址信息;
解析该请求报文得到该服务发现请求和该客户端的地址信息;
该向该客户端发送服务响应消息,包括:
根据该客户端的地址信息,向该客户端发送服务响应消息。
根据本公开实施例的第二方面,提供一种服务响应装置,该装置包括:
第一接收模块,被配置为通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用;
第一获取模块,被配置为根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端;
发送模块,被配置为向该客户端发送服务响应消息,该服务响应消息包括该第一获取模块获取的该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
可选的,该装置还包括:确定模块、第二获取模块和建立模块;
该确定模块,被配置为确定该SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端;
该第二获取模块,被配置为获取该确定模块确定的每个该支持SSDP的服务端的配置信息,该配置信息中包括该服务类型和服务端的地址信息;
该建立模块,被配置为根据该第二获取模块获取的每个该支持SSDP的服务端的配置信息建立该对应关系。
可选的,该装置还包括:第二接收模块;
该第二接收模块,被配置为接收配置在该SSDP服务端的该对应关系。
可选的,该装置还包括:第三获取模块、生成模块;
该第三获取模块,被配置为根据预设的服务类型和版本信息的对应关系,获取该请求的服务类型对应的目标版本信息;
生成模块,被配置为生成该服务响应消息,该服务响应消息包括该第一获取模块获取的该目标地址信息和该第三获取模块获取的该目标版本信息。
可选的,该第一接收模块接收的该服务发现请求还包括最长等待时长,该最长等待时长用于指示该客户端发送服务发现请求后,允许接收服务响应消息的时长;
该装置还包括:检测模块;
该检测模块,被配置为检测预设时间段内,该第一接收模块通过该SSDP端口接收的服务发现请求的个数;
该发送模块,包括:第一发送子模块、排序子模块和第二发送子模块;
该第一发送子模块,被配置为当该第一接收模块接收的该服务发现请求的个数等于1时,向该服务发现请求对应的客户端发送服务响应消息;
该排序子模块,被配置为当该第一接收模块接收的该服务发现请求的个数大于1时,按照该最长等待时长对该服务发现请求进行升序排序得到响应优先级列表;
第二发送子模块,被配置为按照该排序子模块得到的该响应优先级列表向各个该服务发现请求对应的客户端发送服务响应消息。
可选的,该第一接收模块,包括:接收子模块和解析子模块;
该接收子模块,被配置为通过该SSDP端口接收客户端发送的请求报文,该请求报文携带有该服务发现请求和该客户端的地址信息;
该解析子模块,被配置为解析该接收子模块接收的该请求报文得到该服务发现请求和该客户端的地址信息;
该发送模块,还包括:第三发送子模块;
该第三发送子模块,被配置为根据该解析子模块解析的该客户端的地址信息,向该客户端发送服务响应消息。
根据本公开实施例的第三方面,提供一种服务响应装置,该装置包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用;
根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端;
向该客户端发送服务响应消息,该服务响应消息包括该目标地址信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开实施例提供的一种服务响应方法及装置,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
为了更清楚地说明本公开的实施例,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据相关技术示出的一种服务响应方法所涉及的实施环境的示意图;
图2是根据一示例性实施例示出的一种服务响应方法的流程图;
图3-1是本公开实施例示出的一种服务响应方法所涉及的实施环境的示意图;
图3-2是根据一示例性实施例示出的另一种服务响应方法的流程图;
图3-3是根据一示例性实施例示出的一种SSDP服务端获取服务类型和服务端的地址信息的对应关系的方法流程图;
图3-4是根据一示例性实施例示出的另一种SSDP服务端获取服务类型和服务端的地址信息的对应关系的方法流程图;
图4-1是根据一示例性实施例示出的一种服务响应装置的框图;
图4-2是根据一示例性实施例示出的另一种服务响应装置的框图;
图4-3根据一示例性实施例示出的一种发送模块的框图;
图4-4根据一示例性实施例示出的一种第一接收模块的框图;
图4-5根据一示例性实施例示出的另一种发送模块的框图;
图5是根据一示例性实施例示出的又一种服务响应装置的框图。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
具体实施方式
为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述,显然,所描述的实施例仅仅是本公开一部份实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
图1是根据相关技术示出的一种服务响应方法所涉及的实施环境的示意图。该实施环境可以包括:位于同一局域网络中的至少两个终端10,例如,如图1所示,该实施环境可以包括两个终端101和102。该至少两个终端10可以为智能手机、电脑、多媒体播放器、电子阅读器、可穿戴式设备等。该至少两个终端10之间可以通过有线网络或无线网络建立连接。
其中,若终端101中安装有支持简单服务发现协议(英文:Simple ServiceDiscovery Protocol;简称:SSDP)的客户端,终端102中安装有支持SSDP的服务端,则该终端102中的服务端可以占用SSDP端口,并在该SSDP端口接收终端101中的客户端发送的服务发现请求。
但是,如果终端102中安装有多个支持SSDP的服务端,则该多个服务端都需要占用该SSDP端口来接收客户端发送的服务发现请求,因此会导致端口冲突。
图2是根据一示例性实施例示出的一种服务响应方法的流程图,如图2所示,该方法包括:
在步骤201中,通过SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用。
在步骤202中,根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端。
在步骤203中,向该客户端发送服务响应消息,该服务响应消息包括该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
综上所述,本公开实施例提供的一种服务响应方法,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
可选的,该方法还包括:
确定该SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端;
获取每个该支持SSDP的服务端的配置信息,该配置信息中包括该服务类型和服务端的地址信息;
根据每个该支持SSDP的服务端的配置信息建立该对应关系。
可选的,该方法还包括:
接收配置在该SSDP服务端的该对应关系。
可选的,该服务发现请求还包括最长等待时长,该最长等待时长用于指示该客户端发送服务发现请求后,允许接收服务响应消息的时长,该方法还包括:
检测预设时间段内,通过该SSDP端口接收的服务发现请求的个数;
该向该客户端发送服务响应消息,包括:
当该服务发现请求的个数等于1时,向该服务发现请求对应的客户端发送服务响应消息;
当该服务发现请求的个数大于1时,按照该最长等待时长对该服务发现请求进行升序排序得到响应优先级列表;
按照该响应优先级列表向各个该服务发现请求对应的客户端发送服务响应消息。
可选的,该通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,包括:
通过该SSDP端口接收客户端发送的请求报文,该请求报文携带有该服务发现请求和该客户端的地址信息;
解析该请求报文得到该服务发现请求和该客户端的地址信息;
该向该客户端发送服务响应消息,包括:
根据该客户端的地址信息,向该客户端发送服务响应消息。
综上所述,本公开实施例提供的一种服务响应方法,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
图3-1是本公开实施例示出的一种服务响应方法所涉及的实施环境的示意图,如图3-1所示,该实施环境包括:位于同一局域网络中的终端31和终端32,该终端31和终端32之间可以通过有线网络或无线网络建立连接。其中,终端31中可以安装有支持SSDP的客户端,终端32中可以安装有多个支持SSDP的服务端,且该终端32的SSDP端口由预设的SSDP服务端占用。该安装有客户端的终端31可以为手机、电脑、电子阅读器和智能电视等,该安装有服务端的终端32可以为智能手机、电脑和路由器等。示例的,如图3-1所示,终端31可以为电视,终端32可以为路由器,该电视中安装的客户端可以向路由器中安装的SSDP服务端发送服务发现请求,路由器中的SSDP服务端可以根据该客户端请求的服务类型,返回相应的目标地址信息和目标版本信息。
图3-2是根据一示例性实施例示出的另一种服务响应方法的流程图,该方法可以应用于图3-1所示的实施环境中,则如图3-2所示,该服务响应方法包括:
在步骤301中,客户端向SSDP服务端发送请求报文,该请求报文携带有服务发现请求和该客户端的地址信息。
在本公开实施例中,该SSDP服务端为终端32中预设的占用该终端32的SSDP端口的服务端,该SSDP服务端可以为终端32中安装的多个支持SSDP的服务端中的一个服务端,也可以为该终端32中设置的专用于占用该SSDP端口,但无需向客户端提供服务的服务端。示例的,假设终端32中安装的支持SSDP的服务端包括服务端A和服务端B,则该终端32中的SSDP端口可以由服务端A和服务端B中的任一服务端占用,例如可以由服务端A占用;该终端32的SSDP端口还可以由终端32中预设的服务端C占用,该服务端C为终端中设置的专用于占用SSDP端口并接收客户端发送的服务发现请求的服务端,该服务端C可以不具备向客户端提供服务的功能。
在步骤302中,SSDP服务端解析该请求报文得到该服务发现请求和该客户端的地址信息,该服务发现请求中包括请求的服务类型。
在本公开实施例中,该客户端的地址信息可以为该客户端的互联网协议(英文:Internet Protocol;简称:IP)地址。在SSDP中,客户端发送的服务发现请求的形式如下所示:
HOST:239.255.255.250:1900
MAN:"ssdp:discover"
ST:urn:schemas-upnp-org:device:MediaServer:1.0.0
MX:3
在上述代码中,Host、Man、ST、MX均为超文本传输协议(英文:HyperText TransferProtocol;简称:HTTP,)中的协议头,该各个协议头的含义为:
HOST:表示SSDP协议中保留的多播地址和端口,在IPv4中,该多播地址为:239.255.255.250,该多播端口的端口号为1900。
MAN:表示协议查询的类型,对于客户端发送的服务发现请求,该查询的类型为:ssdp:discover,即服务发现请求。
MX(全称:Maximum time;中文:最长等待时长):表示服务端响应最长等待时间。
ST(全称:Service Type;中文:服务类型):表示服务查询的目标,即客户端所查询的服务类型,在SSDP中,ST为下述类型中的任意一个类型:(1)ssdp:all,表示搜索所有服务端和服务;(2)upnp:rootdevice,表示仅搜索网络中的服务端;(3)uuid:device-UUID,表示查询通用唯一识别码(英文:Universally Unique Identifier;简称:UUID)标识的服务端;(4)urn:schemas-upnp-org:device:device-Type:version,表示查询device-Type字段指定的服务端类型,服务端类型由通用即插即用(英文:Universal Plug and Play;简称:UPNP)组织定义;(5)urn:schemas-upnp-org:service:service-Type:version,表示查询service-Type字段指定的服务类型,服务类型由UPNP组织定义。关于上述服务发现请求中各协议头的详细介绍,可以参考相关技术,本公开实施例在此不做赘述。
在步骤303中,SSDP服务端根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息。
在本公开实施例中,SSDP服务端所在的终端中可以存储有服务类型和服务端的地址信息的对应关系,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端。SSDP服务端可以从该对应关系中,获取客户端所请求的服务类型所对应的目标地址信息。进一步的,该SSDP服务端所在的终端中还可以存储有服务类型和服务端的版本信息的对应关系,SSDP服务端还可以从该对应关系中,获取客户端所请求的服务类型所对应的目标版本信息。因此,当终端中安装有多个支持SSDP的服务端时,该多个服务端不需要占用该终端的SSDP端口也能为客户端提供多种不同类型的SSDP服务。
在本公开实施例中,SSDP服务端可以通过两种方式获取该服务类型和服务端的地址信息的对应关系。图3-3是根据一示例性实施例示出的一种SSDP服务端获取服务类型和服务端的地址信息的对应关系的方法流程图,如图3-3所示,该方法包括:
在步骤3031a中,确定SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端。
在本公开实施例中,该终端中可以安装有多个服务端,SSDP服务端可以根据终端中安装的多个服务端的配置信息,确定该多个服务端中支持SSDP的服务端。
在步骤3032a中,获取每个该支持SSDP的服务端的配置信息,该配置信息中包括该服务类型和服务端的地址信息。
服务端在终端中安装后,终端中可以存储有每个服务端的配置信息,SSDP服务端可以从终端中存储的每个服务端的配置信息中,获取支持SSDP的服务端的配置信息。在实际应用中,该配置信息除了包括服务类型和服务端的地址信息,还可以包括服务的版本信息,其中,服务类型是指该支持SSDP的服务端能够提供的服务的类型,服务端的地址信息可以包括该支持SSDP的服务端所占用的数据通信端口,该数据通信端口用于和客户端以单播的形式进行数据通信;版本信息可以包括该支持SSDP的服务端所支持的操作系统的名称和版本信息,以及该服务端的产品名称和版本信息。示例的,假设终端中安装的支持SSDP的服务端包括服务端A和服务端B,占用该终端SSDP端口的服务端为服务端C,则服务端C获取的服务端A的配置信息可以为如下形式:
ST:urn:schemas-upnp-org:device:MediaServer:1.0.0
LOCATION:http://192.168.31.1:8200/rootDesc.xml
SERVER:Linux/3.0DLNADOC/1.50UPnP/1.0MINIDLNA/1.1.0
在上述代码中,LOCATION和SERVER为HTTP中的协议头,其中ST字段表示该服务端A所提供的服务类型;LOCATION(中文:地址)字段表示该服务端A的地址信息,其中192.168.31.1为服务端所在终端的IP地址,8200为该服务端A的占用的数据通信端口的端口号;SERVER(中文:服务)字段表示该服务端A的版本信息,其中Linux/3.0表示该服务端A支持的操作系统为Linux,操作系统的版本为3.0,MINIDLNA为该服务端A的产品名称,1.1.0为服务端A的版本信息。
在步骤3033a中,根据每个该支持SSDP的服务端的配置信息建立服务类型和服务端的地址信息的对应关系。
SSDP服务端获取到每个支持SSDP的服务端的配置信息后,即可根据该配置信息中的服务类型和服务端的地址信息,建立服务类型和服务端的地址信息的对应关系。进一步的,由于该配置信息还可以包括服务端的版本信息,则SSDP服务的还可以根据该配置信息中的服务类型和服务端的版本信息,建立服务类型和服务端的版本信息的对应关系。在实际应用中,该SSDP服务端建立的服务类型和服务端的地址信息的对应关系,以及服务类型和服务端的版本信息的对应关系,可以在一个总的服务类型、服务端的地址信息和版本信息的对应关系表中体现。示例的,假设终端中安装的支持SSDP的服务端为服务端A和服务端B,则占用该终端SSDP端口的SSDP服务端所建立的服务类型、服务端的地址信息和版本信息的对应关系表可以如表1所示,其中,服务端B的服务类型为urn:schemas-upnp-org:device:DataCenter:1.0.0,该服务类型所对应的地址信息和版本信息可以分别为:http://192.168.31.1:9000/rootDesc.xml,Linux/3.0DLNADOC/1.50UPnP/1.0TIMEMACHINE/1.0.0。
表1
图3-4是根据一示例性实施例示出的另一种SSDP服务端获取服务类型和服务端的地址信息的对应关系的方法流程图,如图3-4所示,在第二种实现方式中,该方法包括:
在步骤3031b中,接收配置在SSDP服务端的服务类型和服务端的地址信息的对应关系。
在本公开实施例中,开发人员在开发该用于占用SSDP端口的SSDP服务端时,可以直接将终端中其他多个支持SSDP的服务端的服务类型和服务端的地址信息的对应关系,以及服务类型和服务端的版本信息的对应关系写入该SSDP服务端的配置信息中,因此当该SSDP服务端通过SSDP端口接收到客户端发送的服务发现请求时,可以直接从配置信息中获取该服务类型和服务端的地址信息的对应关系,以及该服务类型和服务端的版本信息的对应关系,并根据该两个对应关系,分别获取客户端所请求的服务类型对应的目标地址信息和目标版本信息。在实际应用中,开发人员可以将该服务类型和服务端的地址信息的对应关系,以及服务类型和服务端的版本信息的对应关系写入至一个总的服务类型、服务端的地址信息和版本信息的对应关系表中,并将该服务类型、服务端的地址信息和版本信息的对应关系表写入至该SSDP服务端的配置信息中。示例的,开发人员在该SSDP服务端的配置信息中写入的对应关系可以如上述表1所示。
在本公开实施例中,当SSDP服务端接收到的服务发现请求中,客户端所请求的服务类型为:ST:urn:schemas-upnp-org:device:MediaServer:1.0.0时,SSDP服务端可以从表1所示的对应关系中,获取到该服务类型对应的目标地址信息:http://192.168.31.1:8200/rootDesc.xml和目标版本信息:Linux/3.0DLNADOC/1.50UPnP/1.0MINIDLNA/1.1.0。
在步骤304中,SSDP服务端检测预设时间段内,通过该SSDP端口接收的服务发现请求的个数。
该预设时间段是SSDP服务端中设置的并发时间段,在该预设时间段内接收到的服务发现请求,可以认为是同时接收到的。
在步骤305中,当该服务发现请求的个数等于1时,SSDP服务端向该服务发现请求对应的客户端发送服务响应消息。
当SSDP服务端检测到预设时间段内接收的服务发现请求的个数等于1时,SSDP服务端可以确定该服务发现请求所在的请求报文,解析该请求报文,并获取该请求报文中携带的客户端的地址信息,然后根据该客户端的地址信息,向该服务发现请求对应的客户端发送服务响应消息,该服务响应消息包括该目标地址信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息;该服务响应消息中还包括目标版本信息,以使得该客户端可以根据该目标版本信息,判断该客户端所在终端的操作系统是否能够该目标版本信息中的对操作系统的要求。示例的,假设SSDP服务端在预设时间段内只接收到1个服务发现请求,且该服务发现请求中所包括的请求的服务类型为:ST:urn:schemas-upnp-org:device:MediaServer:1.0.0,SSDP服务端通过解析该客户端发送的请求报文,获取到的该客户端的地址信息为:http://192.168.32.1:8000,则该SSDP服务端可以根据该地址信息,向该服务发现请求对应的客户端发送服务响应消息,该服务响应消息可以包括目标地址信息:http://192.168.31.1:8200/rootDesc.xml和目标版本信息:Linux/3.0DLNADOC/1.50UPnP/1.0MINIDLNA/1.1.0。
在步骤306中,当该服务发现请求的个数大于1时,SSDP服务端按照最长等待时长对该服务发现请求进行升序排序得到响应优先级列表。
在本公开实施例中,客户端发送的服务发现请求中还包括最长等待时长(MX),该最长等待时长的单位为秒(s),该最长等待时长用于指示该客户端发送服务发现请求后,允许接收服务响应消息的时长。当SSDP服务端检测到预设时间段内接收的服务发现请求的个数等大于1时,SSDP服务端可以按照该最长等待时长对该服务发现请求进行升序排序,并得到响应优先级列表,在该响应优先级列表中,最长等待时长越短的服务发现请求的响应优先级越高,即SSDP服务端可以最先响应最长等待时长最短的服务发现请求。示例的,假设SSDP服务端在预设时间段内接收到2个服务发现请求:请求1和请求2,该两个服务发现请求中的最长等待时长分别为:MX1=4s,MX2=3s,则SSDP服务端根据该两个最长等待时长对该服务发现请求进行升序排序,得到的响应优先级列表可以为:请求2,请求1。
在步骤307中,SSDP服务端按照该响应优先级列表向各个该服务发现请求对应的客户端发送服务响应消息。
SSDP服务端可以按照该响应优先级列表,依次向各个服务发现请求对应的客户端发送服务响应消息。示例的,对于响应优先级列表:请求2,请求1,SSDP服务端可以先向请求2对应的客户端发送服务响应消息,然后再向请求1对应的客户端发送服务响应消息。
在步骤308中,客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
客户端接收到服务响应消息后,即可根据该服务响应消息中的目标地址信息,以单播的形式,向该目标地址信息对应的服务端发送服务请求消息。示例的,客户端可以向目标地址信息:http://192.168.31.1:8200/rootDesc.xml发送服务请求消息。
需要说明的是,本公开实施例提供的服务响应方法的步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,示例的,步骤303可以在步骤304或者步骤306之后执行。任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本公开的保护范围之内,因此不再赘述。
需要说明的是,在实际应用中,该安装有客户端的终端31可以为电视,该安装有服务端的终端32可以为路由器,并且该路由器中可以安装有多个支持SSDP的服务端,例如MINIDLNA和TIME MACHINE(中文:时间机器),该路由器的SSDP端口可以由预设的SSDP服务端占用,在开发该SSDP服务端时,开发人员可以将MINIDLNA和TIME MACHINE的ST、LOCATION、SERVER字段写入至SSDP服务端的配置文件中。当路由器中的SSDP服务端通过SSDP端口接收到电视中的客户端发送的服务发现请求后,可以分析该客户端请求的服务类型,即分析该服务发现请求中的ST字段,并将配置文件中与该ST字段相同的ST字段所对应的LOCATION和SERVER字段返回至该客户端。之后,电视中的客户端可以根据该SSDP服务端返回的LOCATION,向该LOCATION对应的服务端发送服务请求消息,该对应的服务端可以根据该服务请求消息,以单播的方式向电视中的客户端提供图片、音频和视频等类型的数据。
综上所述,本公开实施例提供的一种服务响应方法,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
图4-1是根据一示例性实施例示出的一种服务响应装置的框图,如图4-1所示,该服务响应装置400包括:
第一接收模块401,被配置为通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用。
第一获取模块402,被配置为根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端。
发送模块403,被配置为向该客户端发送服务响应消息,该服务响应消息包括该第一获取模块获取的该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
综上所述,本公开实施例提供的一种服务响应装置,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
图4-2是根据一示例性实施例示出的另一种服务响应装置的框图,如图4-2所示,该服务响应装置400包括:
第一接收模块401,被配置为通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用。
第一获取模块402,被配置为根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端。
发送模块403,被配置为向该客户端发送服务响应消息,该服务响应消息包括该第一获取模块获取的该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
确定模块404,被配置为确定该SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端。
第二获取模块405,被配置为获取该确定模块确定的每个该支持SSDP的服务端的配置信息,该配置信息中包括该服务类型和服务端的地址信息。
建立模块406,被配置为根据该第二获取模块获取的每个该支持SSDP的服务端的配置信息建立该对应关系。
第二接收模块407,被配置为接收配置在该SSDP服务端的该对应关系。
第三获取模块408,被配置为根据预设的服务类型和版本信息的对应关系,获取该请求的服务类型对应的目标版本信息。
生成模块409,被配置为生成该服务响应消息,该服务响应消息包括该第一获取模块获取的该目标地址信息和该第三获取模块获取的该目标版本信息。
检测模块410,被配置为检测预设时间段内,该第一接收模块通过该SSDP端口接收的服务发现请求的个数。
可选的,该第一接收模块401接收的该服务发现请求还包括最长等待时长,该最长等待时长用于指示该客户端发送服务发现请求后,允许接收服务响应消息的时长。
图4-3根据一示例性实施例示出的一种发送模块的框图,如图4-3所示,该发送模块403,包括:第一发送子模块4031、排序子模块4032和第二发送子模块4033;
该第一发送子模块4031,被配置为当该第一接收模块接收的该服务发现请求的个数等于1时,向该服务发现请求对应的客户端发送服务响应消息。
该排序子模块4032,被配置为当该第一接收模块接收的该服务发现请求的个数大于1时,按照该最长等待时长对该服务发现请求进行升序排序得到响应优先级列表。
第二发送子模块4033,被配置为按照该排序子模块得到的该响应优先级列表向各个该服务发现请求对应的客户端发送服务响应消息。
图4-4根据一示例性实施例示出的一种第一接收模块的框图,如图4-4所示,该第一接收模块401,包括:接收子模块4011和解析子模块4012。
该接收子模块4011,被配置为通过该SSDP端口接收客户端发送的请求报文,该请求报文携带有该服务发现请求和该客户端的地址信息。
该解析子模块4012,被配置为解析该接收子模块接收的该请求报文得到该服务发现请求和该客户端的地址信息。
图4-5根据一示例性实施例示出的另一种发送模块的框图,如图4-5所示,该发送模块403,还可以包括:第三发送子模块4034;
该第三发送子模块4034,被配置为根据该解析子模块解析的该客户端的地址信息,向该客户端发送服务响应消息。
综上所述,本公开实施例提供的一种服务响应装置,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5是根据一示例性实施例示出的又一种服务响应装置500的框图。例如,装置500可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图5,装置500可以包括以下一个或多个组件:处理组件502,存储器504,电源组件506,多媒体组件508,音频组件510,输入/输出(I/O)的接口512,传感器组件514,以及通信组件516。
处理组件502通常控制装置500的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件502可以包括一个或多个处理器520来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件502可以包括一个或多个模块,便于处理组件502和其他组件之间的交互。例如,处理组件502可以包括多媒体模块,以方便多媒体组件508和处理组件502之间的交互。
存储器504被配置为存储各种类型的数据以支持在装置500的操作。这些数据的示例包括用于在装置500上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器504可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件506为装置500的各种组件提供电力。电源组件506可以包括电源管理系统,一个或多个电源,及其他与为装置500生成、管理和分配电力相关联的组件。
多媒体组件508包括在所述装置500和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件508包括一个前置摄像头和/或后置摄像头。当装置500处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件510被配置为输出和/或输入音频信号。例如,音频组件510包括一个麦克风(MIC),当装置500处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器504或经由通信组件516发送。在一些实施例中,音频组件510还包括一个扬声器,用于输出音频信号。
I/O接口512为处理组件502和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件514包括一个或多个传感器,用于为装置500提供各个方面的状态评估。例如,传感器组件514可以检测到装置500的打开/关闭状态,组件的相对定位,例如所述组件为装置500的显示器和小键盘,传感器组件514还可以检测装置500或装置500一个组件的位置改变,用户与装置500接触的存在或不存在,装置500方位或加速/减速和装置500的温度变化。传感器组件514可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件514还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件514还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件516被配置为便于装置500和其他设备之间有线或无线方式的通信。装置500可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件516经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件516还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置500可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器504,上述指令可由装置500的处理器520执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置500的处理器执行时,使得装置500能够执行一种服务响应方法,所述方法包括:
通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,该服务发现请求中包括请求的服务类型,该SSDP端口被预设的SSDP服务端占用;
根据预设的服务类型和服务端的地址信息的对应关系,获取该请求的服务类型对应的目标地址信息,该对应关系中记录的服务端为该SSDP服务端所在终端中安装的支持SSDP的服务端;
向该客户端发送服务响应消息,该服务响应消息包括该目标地址信息和目标版本信息,以使得该客户端根据该服务响应消息,向该目标地址信息对应的服务端发送服务请求消息。
可选的,该方法还包括:
确定该SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端;
获取每个该支持SSDP的服务端的配置信息,该配置信息中包括该服务类型和服务端的地址信息;
根据每个该支持SSDP的服务端的配置信息建立该对应关系。
可选的,该方法还包括:
接收配置在该SSDP服务端的该对应关系。
可选的,该服务发现请求还包括最长等待时长,该最长等待时长用于指示该客户端发送服务发现请求后,允许接收服务响应消息的时长,该方法还包括:
检测预设时间段内,通过该SSDP端口接收的服务发现请求的个数;
该向该客户端发送服务响应消息,包括:
当该服务发现请求的个数等于1时,向该服务发现请求对应的客户端发送服务响应消息;
当该服务发现请求的个数大于1时,按照该最长等待时长对该服务发现请求进行升序排序得到响应优先级列表;
按照该响应优先级列表向各个该服务发现请求对应的客户端发送服务响应消息。
可选的,该通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,包括:
通过该SSDP端口接收客户端发送的请求报文,该请求报文携带有该服务发现请求和该客户端的地址信息;
解析该请求报文得到该服务发现请求和该客户端的地址信息;
该向该客户端发送服务响应消息,包括:
根据该客户端的地址信息,向该客户端发送服务响应消息。
综上所述,本公开实施例提供的一种服务响应装置,终端通过SSDP端口接收客户端发送的服务发现请求后,可以根据预设的服务类型和服务端的地址信息的对应关系,获取该服务发现请求所请求的服务类型对应的目标地址信息,并向该客户端发送服务响应消息,因此当终端安装有多个支持SSDP的服务端时,该多个服务端除占用SSDP端口的服务端(即SSDP服务端)之外的其他服务端也能响应客户端发送的服务发现请求,解决了终端中端口冲突的问题。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (13)
1.一种服务响应方法,其特征在于,所述方法包括:
通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,所述服务发现请求中包括请求的服务类型,所述SSDP端口被预设的SSDP服务端占用;
根据预设的服务类型和服务端的地址信息的对应关系,获取所述请求的服务类型对应的目标地址信息,所述对应关系中记录的服务端为所述SSDP服务端所在终端中安装的多个支持SSDP的服务端;
向所述客户端发送服务响应消息,所述服务响应消息包括所述目标地址信息,以使得所述客户端根据所述服务响应消息,向所述目标地址信息对应的服务端发送服务请求消息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端;
获取每个所述支持SSDP的服务端的配置信息,所述配置信息中包括所述服务类型和服务端的地址信息;
根据每个所述支持SSDP的服务端的配置信息建立所述对应关系。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收配置在所述SSDP服务端的所述对应关系。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据预设的服务类型和版本信息的对应关系,获取所述请求的服务类型对应的目标版本信息;
生成所述服务响应消息,所述服务响应消息包括所述目标地址信息和所述目标版本信息。
5.根据权利要求1至4任一所述的方法,其特征在于,所述服务发现请求还包括最长等待时长,所述最长等待时长用于指示所述客户端发送服务发现请求后,允许接收服务响应消息的时长,所述方法还包括:
检测预设时间段内,通过所述SSDP端口接收的服务发现请求的个数;
所述向所述客户端发送服务响应消息,包括:
当所述服务发现请求的个数等于1时,向所述服务发现请求对应的客户端发送服务响应消息;
当所述服务发现请求的个数大于1时,按照所述最长等待时长对所述服务发现请求进行升序排序得到响应优先级列表;
按照所述响应优先级列表向各个所述服务发现请求对应的客户端发送服务响应消息。
6.根据权利要求1所述的方法,其特征在于,所述通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,包括:
通过所述SSDP端口接收客户端发送的请求报文,所述请求报文携带有所述服务发现请求和所述客户端的地址信息;
解析所述请求报文得到所述服务发现请求和所述客户端的地址信息;
所述向所述客户端发送服务响应消息,包括:
根据所述客户端的地址信息,向所述客户端发送服务响应消息。
7.一种服务响应装置,其特征在于,所述装置包括:
第一接收模块,被配置为通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,所述服务发现请求中包括请求的服务类型,所述SSDP端口被预设的SSDP服务端占用;
第一获取模块,被配置为根据预设的服务类型和服务端的地址信息的对应关系,获取所述请求的服务类型对应的目标地址信息,所述对应关系中记录的服务端为所述SSDP服务端所在终端中安装的多个支持SSDP的服务端;
发送模块,被配置为向所述客户端发送服务响应消息,所述服务响应消息包括所述第一获取模块获取的所述目标地址信息,以使得所述客户端根据所述服务响应消息,向所述目标地址信息对应的服务端发送服务请求消息。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:确定模块、第二获取模块和建立模块;
所述确定模块,被配置为确定所述SSDP服务端所在终端安装的多个服务端中支持SSDP的服务端;
所述第二获取模块,被配置为获取所述确定模块确定的每个所述支持SSDP的服务端的配置信息,所述配置信息中包括所述服务类型和服务端的地址信息;
所述建立模块,被配置为根据所述第二获取模块获取的每个所述支持SSDP的服务端的配置信息建立所述对应关系。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:第二接收模块;
所述第二接收模块,被配置为接收配置在所述SSDP服务端的所述对应关系。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:第三获取模块、生成模块;
所述第三获取模块,被配置为根据预设的服务类型和版本信息的对应关系,获取所述请求的服务类型对应的目标版本信息;
生成模块,被配置为生成所述服务响应消息,所述服务响应消息包括所述第一获取模块获取的所述目标地址信息和所述第三获取模块获取的所述目标版本信息。
11.根据权利要求7至10任一所述的装置,其特征在于,所述第一接收模块接收的所述服务发现请求还包括最长等待时长,所述最长等待时长用于指示所述客户端发送服务发现请求后,允许接收服务响应消息的时长;
所述装置还包括:检测模块;
所述检测模块,被配置为检测预设时间段内,所述第一接收模块通过所述SSDP端口接收的服务发现请求的个数;
所述发送模块,包括:第一发送子模块、排序子模块和第二发送子模块;
所述第一发送子模块,被配置为当所述第一接收模块接收的所述服务发现请求的个数等于1时,向所述服务发现请求对应的客户端发送服务响应消息;
所述排序子模块,被配置为当所述第一接收模块接收的所述服务发现请求的个数大于1时,按照所述最长等待时长对所述服务发现请求进行升序排序得到响应优先级列表;
所述第二发送子模块,被配置为按照所述排序子模块得到的所述响应优先级列表向各个所述服务发现请求对应的客户端发送服务响应消息。
12.根据权利要求7所述的装置,其特征在于,所述第一接收模块,包括:接收子模块和解析子模块;
所述接收子模块,被配置为通过所述SSDP端口接收客户端发送的请求报文,所述请求报文携带有所述服务发现请求和所述客户端的地址信息;
所述解析子模块,被配置为解析所述接收子模块接收的所述请求报文得到所述服务发现请求和所述客户端的地址信息;
所述发送模块,还包括:第三发送子模块;
所述第三发送子模块,被配置为根据所述解析子模块解析的所述客户端的地址信息,向所述客户端发送服务响应消息。
13.一种服务响应装置,其特征在于,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
通过简单服务发现协议SSDP端口接收客户端发送的服务发现请求,所述服务发现请求中包括请求的服务类型,所述SSDP端口被预设的SSDP服务端占用;
根据预设的服务类型和服务端的地址信息的对应关系,获取所述请求的服务类型对应的目标地址信息,所述对应关系中记录的服务端为所述SSDP服务端所在终端中安装的多个支持SSDP的服务端;
向所述客户端发送服务响应消息,所述服务响应消息包括所述目标地址信息,以使得所述客户端根据所述服务响应消息,向所述目标地址信息对应的服务端发送服务请求消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510642319.9A CN105245595B (zh) | 2015-09-30 | 2015-09-30 | 服务响应方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510642319.9A CN105245595B (zh) | 2015-09-30 | 2015-09-30 | 服务响应方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105245595A CN105245595A (zh) | 2016-01-13 |
CN105245595B true CN105245595B (zh) | 2018-07-31 |
Family
ID=55043093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510642319.9A Active CN105245595B (zh) | 2015-09-30 | 2015-09-30 | 服务响应方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105245595B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108476166B (zh) * | 2016-01-22 | 2021-05-04 | 荣耀终端有限公司 | 通信的方法、移动终端、发布终端与通信系统 |
CN113162996B (zh) * | 2017-06-02 | 2023-03-24 | 华为技术有限公司 | 服务发现的方法、注册中心和设备 |
CN107454141B (zh) * | 2017-06-29 | 2021-06-29 | 福建天泉教育科技有限公司 | 解决端口冲突的方法及计算机可读存储介质 |
CN108429794A (zh) * | 2018-02-12 | 2018-08-21 | 上海玄彩美科网络科技有限公司 | 基于蓝牙服务协议的ar服务发现方法和装置 |
CN110730499B (zh) | 2018-07-16 | 2021-06-15 | 华为技术有限公司 | 一种mec信息获取方法及装置 |
CN110875961A (zh) * | 2018-08-31 | 2020-03-10 | 阿里巴巴集团控股有限公司 | 数据服务的处理方法、装置及系统 |
CN109787866A (zh) * | 2019-02-18 | 2019-05-21 | 福建六壬网安股份有限公司 | 一种识别端口的方法及装置 |
CN111026564A (zh) * | 2019-11-20 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 命名服务的处理方法和系统 |
CN112165735B (zh) * | 2020-09-26 | 2021-06-11 | 杭州雅观科技有限公司 | 一种云端一体的Wi-Fi设备自组网方法 |
CN112383639B (zh) * | 2020-12-02 | 2022-02-22 | 北京达佳互联信息技术有限公司 | 微服务均衡方法及装置 |
CN113347234B (zh) * | 2021-05-21 | 2022-10-25 | 微民保险代理有限公司 | 网络信息获取方法、装置、系统、计算机设备和存储介质 |
CN114928651A (zh) * | 2022-05-11 | 2022-08-19 | 上海柯林布瑞信息技术有限公司 | 基于复杂参数识别的服务透传方法、装置及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1553657A (zh) * | 2003-06-03 | 2004-12-08 | 宏�股份有限公司 | 无线区域网络下利用通用随插即用技术的虚拟遥控器设备 |
CN101547206A (zh) * | 2008-04-14 | 2009-09-30 | 香港应用科技研究院有限公司 | 并行IGRS-UPnP |
CN104079422A (zh) * | 2013-03-28 | 2014-10-01 | 纬创资通股份有限公司 | 管理网络设备的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7299304B2 (en) * | 2001-11-20 | 2007-11-20 | Intel Corporation | Method and architecture to support interaction between a host computer and remote devices |
-
2015
- 2015-09-30 CN CN201510642319.9A patent/CN105245595B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1553657A (zh) * | 2003-06-03 | 2004-12-08 | 宏�股份有限公司 | 无线区域网络下利用通用随插即用技术的虚拟遥控器设备 |
CN101547206A (zh) * | 2008-04-14 | 2009-09-30 | 香港应用科技研究院有限公司 | 并行IGRS-UPnP |
CN104079422A (zh) * | 2013-03-28 | 2014-10-01 | 纬创资通股份有限公司 | 管理网络设备的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105245595A (zh) | 2016-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105245595B (zh) | 服务响应方法及装置 | |
US9621848B2 (en) | Transmission management apparatus | |
CN104038536B (zh) | 插件通信方法和装置 | |
US9379783B2 (en) | Transmission system | |
CN108965103B (zh) | 提供对话内容的电子设备、服务器及其方法 | |
CN105162728B (zh) | 网络接入方法、设备及系统 | |
CN108520746A (zh) | 语音控制智能设备的方法、装置及存储介质 | |
WO2016134600A1 (zh) | 智能设备检测方法和装置 | |
CN108390944B (zh) | 信息交互方法及装置 | |
CN106375479B (zh) | 数据共享方法及装置 | |
CN106357485B (zh) | 标记设备的方法及装置 | |
CN106385621A (zh) | 智能设备控制方法和装置 | |
CN104113530B (zh) | 访问路由器的方法及装置 | |
CN108595665A (zh) | 网页内容的显示方法及装置 | |
WO2017096973A1 (zh) | 设备显示方法及装置 | |
CN111031002B (zh) | 广播发现方法、广播发现装置及存储介质 | |
JP6304372B2 (ja) | 管理システム、記録媒体、及び管理方法 | |
CN108833585A (zh) | 信息交互方法、装置及存储介质 | |
CN110493629A (zh) | 直播封面挂件显示方法、装置、电子设备及存储介质 | |
CN105187154B (zh) | 响应包接收延时的方法及装置 | |
CN106535194B (zh) | 屏幕内容共享方法、装置及系统 | |
CN108737588A (zh) | 域名解析方法及装置 | |
CN106452914B (zh) | 路由器配置方法及装置 | |
CN106301962B (zh) | 路由器信息修改方法及装置 | |
CN110913276A (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 |