一种服务注册与发现的方法,设备和系统与流程

文档序号:14924560发布日期:2018-07-13 15:42阅读:197来源:国知局

本发明实施例涉及网络通信领域,尤其涉及一种服务注册与发现的方法,设备和系统。



背景技术:

基于IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)802.11的无线局域网(wireless local area network,简称WLAN)是利用射频技术,以无线信道作为传输媒介的局域网。WLAN中通常包括站点(station,简称STA)、接入点(access point,简称AP)等;STA指具有无线局域网接口的设备,AP除了具备STA的功能之外,还能够通过无线介质为关联STA提供接口,连接到分发系统,负责实现STA之间或STA与有线网络的通信;多个STA可以关联到同一个AP上。

STA接入WLAN之前,首先需要在所处区域搜索网络,发现可用AP并关联到所发现的可用AP。通常有主动扫描和被动扫描两种方式来发现可用AP。其中,

主动扫描方式:STA在各个信道上广播探测请求(probe request)帧,主动扫描信道上的可用AP,并接收可用AP返回的探测响应(probe response)帧,获得可用AP的信息。

被动扫描方式:AP周期性发送信标(beacon)帧,STA逐个信道监听,以捕获AP发送的beacon帧,获得可用AP的信息。

关联到同一AP的所有STA和该AP共同构成一个基本服务集(basic service set,简称BSS),BSS可用基本服务集标识(basic service set identifier,简称BSSID)来标识,通常BSSID是AP的媒体访问控制(media access control,简称MAC)地址。

无线保真(wireless fidelity,简称WiFi)技术是一种短距离无线通信技术,基于其使用方便、传输速率高等优点,在无线局域网构建和广域网接入方面都得到了广泛的应用。近年来,随着支持WiFi技术的各类终端设备,例如笔记本电脑、手机等的不断普及和迅速增长,WLAN已成为行业信息化、家庭信息化和个人信息化的重要技术,广泛应用于企业、家庭、校园、医院等各种场所,带来了WLAN相关的各类服务需求和用户体验需求。例如,在服务分类繁多,部署集中的高密度服务场景下,用户如何发现网络中可以提供的服务,根据自己所需的服务,例如打印,快速有效的接入相应的网络;以及更进一步的,用户在发现所需服务的同时,希望通过WiFi与提供服务的设备直接交互,那么设备能力,例如支持WiFi直连、蓝牙等的发现,都日益成为WLAN技术的研究热点。

目前,WiFi直连技术可以进行设备发现和点对点(point-to-point,简称P2P)直连连接的建立,设备之间可以进行共享、展示、打印和同步内容等。WiFi直连技术的核心是,设备之间使用P2P方式发现所需要的设备,构建或加入小组,互相建立连接,而后在小组内进行通信。WiFi直连技术提供的是一种近距离设备发现,只能提供基于设备的发现和查找,且设备需要周期性监听信道(channel),以回应设备发现和信息共享;因此,WiFi直连技术受限于设备之间的距离,不能提供基于服务的发现和查找,且设备需要消耗大量资源用于监听信道。



技术实现要素:

有鉴于此,本发明实施例提供了一种服务注册与发现的方法,设备和系统,由接入点AP接收并维护STA申明的服务信息,代理STA发现网络中的服务信息,还包括发现直连服务并管理STA之间的直连通信,满足用户根据所需服务选择网络的需求。

第一方面,提供了一种服务发现的方法,包括:

第一接入点AP接收来自第一站点STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述M为大于等于0的整数;

根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述查询结果。

在第一方面的第一种可能实现方式中,所述获取满足所述M个服务查询项的查询结果,具体包括:获取所述第一AP的服务信息表中,同时满足所述M个服务查询项的查询结果。

在第一方面的第二种可能实现方式中,所述获取满足所述M个服务查询项的查询结果,具体包括:

获取所述第一AP的服务信息表中,同时满足所述M个服务查询项的所有服务信息;

向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息;

所述查询结果具体包括:所述第一AP的服务信息表中满足所述M个服务查询项的所有服务信息,和所述第二AP返回的服务发现响应帧中包括的服务信息。

在第一方面的第三种可能实现方式中,所述获取满足所述M个服务查询项的查询结果,具体包括:

当所述第一AP的服务信息表中存在至少一条服务信息满足所述M个服务查询项时,获取所述第一AP的服务信息表中,满足所述M个服务查询项的所有服务信息;

当所述第一AP的服务信息表中任意一条服务信息都不满足所述M个服务查询项时,向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息,获取所述第二AP返回的服务发现响应帧中包括的服务信息。

根据第一方面或第一方面的第一种至第三种任意一种可能实现方式,在第四种可能实现方式中,在所述第一AP接收来自第一STA的服务发现请求帧之前,所述方法还包括:

所述第一AP接收所述第一STA广播发送的探测请求帧,所述探测请求帧中包括服务信息元素;

向所述第一STA返回探测响应帧,所述探测响应帧中包括服务信息元素,所述服务信息元素包括服务目录项。

根据第一方面或第一方面的第一种至第三种任一种可能实现方式,在第五种可能实现方式中,在所述第一AP接收来自第一STA的服务发现请求帧之前,所述方法还包括:所述第一AP广播发送信标帧,所述信标帧中包括服务信息元素,所述服务信息元素包括服务目录项。

第二方面,提供了一种服务发现的方法,包括:

第一站点STA向第一接入点AP发送服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述M为大于等于0的整数;

接收所述AP返回的服务发现响应帧,所述服务发现响应帧中包括满足所述M个服务查询项的查询结果。

在第二方面的第一种可能实现方式中,在所述STA向第一AP发送服务发现请求帧之前,所述方法还包括:

所述第一STA广播发送的探测请求帧,所述探测请求帧中包括服务信息元素;

接收所述第一AP返回的探测响应帧,所述探测响应帧中包括服务信息元素,所述服务信息元素包括服务目录项。

在第二方面的第二种可能实现方式中,在所述第一STA向第一AP发送服务发现请求帧之前,所述方法还包括:

接收所述第一AP广播发送的信标帧,所述信标帧中包括服务信息元素,所述服务信息元素包括服务目录项。

第三方面,提供了一种用于服务发现的第一接入点AP,包括:

接收单元,用于接收来自第一站点STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项;所述M为大于等于0的整数。

查询单元,用于根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

发送单元,用于向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述查询结果。

在第三方面的第一种可能实现方式中,所述查询单元具体包括:

本地子单元,用于根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取所述第一AP的服务信息表中满足所述M个服务查询项的所有服务信息;

远程子单元,用于向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息,获取所述第二AP返回的服务发现响应帧中包含的服务信息;

结果获取子单元,用于获取满足所述M个服务查询项的查询结果,所述查询结果具体包括所述本地子单元获取的服务信息,和所述远程子单元获取的服务信息。

在第三方面的第二种可能实现方式中,所述查询单元具体包括:

查找子单元,用于根据所述服务发现请求帧,查询所述第一AP的服务信息表;

远程子单元,用于当所述查找子单元的查找结果为:所述第一AP的服务信息表中任意一条服务信息都不满足所述M个服务查询项时,向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息;获取所述第二AP返回的服务发现响应帧中包括的服务信息;

本地子单元,用于当所述查找子单元的查找结果为:所述第一AP的服务信息表中存在至少一条服务信息满足所述M个服务查询项,获取所述第一AP的服务信息表中,满足所述M个服务查询项的所有服务信息。

根据第三方面或第三方面的任一种可能实现方式,在第三种可能实现方式中,所述AP还包括扫描单元;

所述扫描单元,用于广播发送信标帧,所述信标帧中包括服务信息元素,所述服务信息元素包括服务目录项;或者,用于接收所述第一STA广播发送的探测请求帧,并向所述第一STA返回探测响应帧,所述探测请求帧中包括服务信息元素,所述探测响应帧中包括服务信息元素,所述服务信息元素包括服务目录项。

第四方面,提供了一种用于服务发现的第一站点STA,包括:

发送单元,用于向第一接入点AP发送服务发现请求帧,所述服务发现请求帧中包括M个服务查询项;

接收单元,用于接收所述第一AP返回的服务发现响应帧,所述服务发现响应帧中包括满足所述M个服务查询项的查询结果。

在第四方面的第一种可能实现方式中,所述第一STA还包括扫描单元;

所述扫描单元,用于接收所述第一AP广播发送的信标帧,所述信标帧中包括服务信息元素,所述服务信息元素包括服务目录项;或者,用于广播发送探测请求帧,并接收所述第一AP返回的探测响应帧,所述探测请求帧中包括服务信息元素,所述探测响应帧中包括服务信息元素,所述服务信息元素包括服务目录项。

第五方面,提供了一种服务注册的方法,包括:

第一接入点AP接收来自第一站点STA的服务通告请求帧,所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

获取所述第一STA的设备标识;

根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识;

在所述第一AP的服务信息表中记录所述至少一个服务申明项中每个服务申明项对应的服务信息,所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务申明项;

向所述第一STA返回服务通告响应帧,所述服务通告响应帧中包括所述STA的设备标识和所述至少一个服务申明项中每个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称。

在第五方面的第一种可能实现方式中,所述获取所述第一STA的设备标识具体包括:

根据所述第一STA的设备地址,查询所述AP的地址对应关系表,所述地址对应关系表中包括设备地址与设备标识的对应关系,

当所述AP的地址对应关系表中一条已有地址对应关系的设备地址与所述第一STA的设备地址相同时,获取所述已有地址对应关系的设备标识,即为所述第一STA的设备标识;

当所述AP的地址对应关系表中任意一条地址对应关系的设备地址与所述第一STA的设备地址都不相同时,从设备标识池中分配所述第一STA的设备标识,并在所述地址对应关系表中记录所述第一STA的设备地址与设备标识的地址对应关系。

在第五方面的第二种可能实现方式中,所述服务通告请求帧中还包括所述第一STA的设备标识;

相应地,所述获取所述第一STA的设备标识具体包括:

从所述服务通告请求帧中获取所述第一STA的设备标识。

根据第五方面或第五方面的第一种或第二种可能实现方式,在第三种可能实现方式中,所述根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识包括:

所述第一AP根据所述至少一个服务申明项中第一服务申明项的服务名称,查询所述第一AP的服务信息表;

当所述第一AP的服务信息表中任意一条服务信息的服务名称与所述第一服务申明项的服务名称均不相同时,根据所述第一服务申明项的服务名称分配第一服务标识;

当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述第一服务申明项的服务名称相同时,获取所述已有服务信息的服务标识,即为所述第一服务申明项的服务名称对应的第一服务标识。

根据第五方面的第三种可能实现方式,在第四种可能实现方式中,所述在所述第一AP的服务信息表中记录所述至少一个服务申明项中每个服务申明项对应的服务信息包括:

所述第一AP获取第一服务信息,所述第一服务信息包括所述第一AP的BSSID,所述第一STA的设备标识,所述第一服务标识和所述第一服务申明项;

并在所述第一AP的服务信息表中记录所述第一服务信息。

根据第五方面或第五方面的第一种至第四种的任一种可能实现方式,在第五种可能实现方式中,所述方法还包括:

所述第一AP向第二AP发送第一服务维护帧,所述第一服务维护帧中包括第一维护状态和所述至少一个服务申明项中每个服务申明项对应的服务信息,以使所述第二AP更新所述第二AP的服务信息表。

根据第五方面或第五方面的第一种至第五种的任一种可能实现方式,在第六种可能实现方式中,所述方法还包括:

所述第一AP接收来自所述第一STA的第二服务维护帧,所述第二服务维护帧中包括第二维护状态和至少一个服务维护项;所述服务维护项包括BSSID,设备标识和服务标识;

所述第一AP根据所述第二服务维护帧,更新所述第一AP的服务信息表。

根据第五方面或第五方面的第一种至第五种的任一种可能实现方式,在第七种可能实现方式中,所述方法还包括:

所述第一AP感知所述第一STA脱离;

将所述第一AP的服务信息表中,所述第一STA申明的所有服务信息删除。

根据第五方面或第五方面的任一种可能实现方式,在第八种可能实现,所述方法还包括:

所述第一AP接收第三服务维护帧,所述第三服务维护帧中包括第一维护状态和至少一条服务信息,或者第二维护状态和至少一个服务维护项;

所述第一AP根据所述第三服务维护帧,更新所述第一AP的服务信息表。

第六方面,提供了一种服务注册的方法,包括:

第一站点STA向第一接入点AP发送服务通告请求帧,所述服务通告请求帧中包括所述STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

接收来自所述第一AP的服务通告响应帧,所述服务通告响应帧中包括所述STA的设备标识和所述至少一个服务申明项中每个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称。

在第六方面的第一种可能实现方式中,所述方法还包括:

所述第一STA向所述第一AP发送服务维护帧,以使所述第一AP根据所述服务维护帧,更新所述第一AP的服务信息表;

所述服务维护帧中包括第二维护状态和至少一个服务维护项;所述服务维护项包括基本服务集标识BSSID,设备标识和服务标识。

第七方面,提供了一种用于服务注册的第一接入点AP,包括:

接收单元,用于接收来自第一站点STA的服务通告请求帧,所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

第一获取单元,用于获取所述第一STA的设备标识;

第二获取单元,用于根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识;

记录单元,用于在所述第一AP的服务信息表中记录所述至少一个服务申明项中每个服务申明项对应的服务信息,所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务申明项;

发送单元,用于向所述第一STA返回服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项中每个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称。

在第七方面的第一种可能实现方式中,所述第一获取单元具体用于,根据所述第一STA的设备地址,查询所述第一AP的地址对应关系表,所述地址对应关系表中包括设备地址与设备标识的对应关系;当所述第一AP的地址对应关系表中一条已有地址对应关系的设备地址与所述第一STA的设备地址相同时,获取所述已有地址对应关系的设备标识,即为所述第一STA的设备标识;当所述第一AP的地址对应关系表中任意一条地址对应关系的设备地址与所述第一STA的设备地址都不相同时,从设备标识池中分配所述第一STA的设备标识,并在所述地址对应关系表中记录所述第一STA的设备地址与设备标识的地址对应关系。

在第七方面的第二种可能实现方式中,所述服务通告请求帧中还包括所述第一STA的设备标识,所述第一获取单元具体用于,从所述服务通告请求帧中获取所述第一STA的设备标识。

根据第七方面或第七方面的第一种或第二种可能实现方式,在第三种可能实现方式中,所述第二获取单元具体用于根据所述至少一个服务申明项中第一服务申明项的服务名称,查询所述第一AP的服务信息表;当所述第一AP的服务信息表中任意一条服务信息的服务名称与所述第一服务申明项的服务名称均不相同时,根据所述第一服务申明项的服务名称分配第一服务标识;当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述第一服务申明项的服务名称相同时,获取所述已有服务信息的服务标识,即为所述第一服务申明项的服务名称对应的第一服务标识。

根据第七方面的第三种可能实现方式,在第四种可能实现方式中,所述记录单元具体用于获取第一服务信息,所述第一服务信息包括所述第一AP的BSSID,所述第一STA的设备标识,所述第一服务标识和所述第一服务申明项;并在所述AP的服务信息表中记录所述第一服务信息。

根据第七方面或第七方面的任一种可能实现方式,在第五种可能实现方式中,所述第一AP还包括维护单元;

所述维护单元,用于接收来自所述第一STA的第二服务维护帧,所述第二服务维护帧中包括第二维护状态和至少一个服务维护项;根据所述第二服务维护帧,更新所述第一AP的服务信息表;并向第二AP转发所述第二服务维护帧,以使所述第二AP更新所述第二AP的服务信息表;所述服务维护项包括BSSID,设备标识和服务标识。

根据第七方面的第五种可能实现方式,在第六种可能实现方式中,所述维护单元还用于向第二AP发送第一服务维护帧,所述第一服务维护帧中包括第一维护状态和所述至少一个服务申明项中每个服务申明项对应的服务信息,以使所述第二AP更新所述第二AP的服务信息表;所述服务信息包括BSSID,设备标识,服务标识和服务申明项。

根据第七方面的第五种或第六种可能实现方式,在第七种可能实现方式中,所述维护单元还用于接收第三服务维护帧,所述第三服务维护帧中包括第一维护状态和至少一条服务信息,或者第二维护状态和至少一个服务维护项;并根据所述第三服务维护帧,更新所述第一AP的服务信息表。

第八方面,提供了一种用于服务注册的第一站点STA,包括:

发送单元,用于向第一接入点AP发送服务通告请求帧,所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

接收单元,用于接收来自所述第一AP的服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项中每个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称。

在第八方面的第一种可能实现中,所述发送单元还用于向所述第一AP发送第二服务维护帧,所述第二服务维护帧中包括第二维护状态和至少一个服务维护项;所述服务维护项包括基本服务集标识BSSID,设备标识和服务标识。

第九方面,提供了一种管理直连服务的方法,包括:

第一接入点AP接收第一站点STA发送的直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;当所述服务请求状态为第一请求状态时,获取第二STA的设备地址;根据所述第二STA的设备地址,探测所述第一STA与第二STA之间的距离探测所述第一STA与第二STA之间的距离;

当所述第一STA与所述第二STA之间的距离不大于直连距离时,查询所述第一AP的直连服务管理表;

当所述第一AP的直连服务管理表中不存在一条已有直连服务管理信息,所述已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第二STA的设备地址相同时,在所述第一AP的直连服务管理表中记录第一直连服务管理信息,所述第一直连服务管理信息包括所述直连服务请求帧中的服务名称和所述第二STA的设备地址;并向所述第一STA发送直连服务响应帧;所述直连服务响应帧中包括所述第二STA的设备地址。

在第九方面的第一种可能实现方式中,所述方法还包括:当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第二STA的设备地址相同时,所述第一AP向所述第一STA发送直连服务响应帧;所述直连服务响应帧中包括所述已有直连服务管理信息中的组地址。

根据第九方面或第九方面的第一种可能实现方式,在第二种可能实现方式中,所述获取第二STA的设备地址具体包括:所述第一AP根据所述直连服务请求帧中的服务名称查询所述第一AP的服务信息表;当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有服务信息中设备能力为支持Wi-Fi直连时,所述第一AP获取所述已有服务信息中的设备标识,即为所述第二STA的设备标识;所述第一AP根据所述第二STA的设备标识,获取所述第二STA的设备地址。

根据第九方面或第九方面的第一种可能实现方式,在第三种可能实现方式中,所述直连服务请求帧中还包括设备名称;相应地,所述第一AP获取第二STA的设备地址具体包括:所述第一AP获取所述直连服务请求帧中的设备标识,即为所述第二STA的设备标识;所述第一AP根据所述第二STA的设备标识,获取所述第二STA的设备地址。

根据第九方面或第九方面的任一种可能实现方式,在第四种可能实现方式中,当所述服务请求状态为请求第二状态时,所述方法还包括:所述第一AP根据所述直连服务请求帧,查询所述第一AP的直连服务管理表;当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第一STA的设备地址相同时,将所述已有直连服务管理信息从所述第一AP的直连服务管理表中删除。

第十方面,提供了一种获取直连服务的方法,包括:

第一站点STA向第一接入点AP发送直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;

当所述服务请求状态为第一请求状态时,

所述第一STA接收所述第一AP返回的直连服务响应帧,所述直连服务响应帧中包括组地址;

当根据所述直连服务响应帧确定直连请求成功时,所述第一STA与所述直连服务响应帧中组地址对应的第二STA建立直连服务。

第十一方面,提供了一种用于管理直连服务的第一接入点AP,包括:

接收单元,用于接收第一站点STA的直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;

第一获取单元,用于当所述服务请求状态为第一请求状态时,获取第二STA的设备地址;

探测单元,用于根据所述第一获取单元获取的所述第二STA的设备地址,探测所述第一STA与所述第二STA之间的距离;

查询单元,用于查询所述第一AP的直连服务管理表;

第二获取单元,用于为所述第一STA的直连服务请求,获取直连服务管理信息,所述直连服务管理信息包括组地址和服务名称;

发送单元,用于根据所述获取单元获取的直连服务管理信息,向所述第一STA发送直连服务响应帧,以使所述第一STA与所述第二STA建立直连服务,所述直连服务响应帧中包括所述组地址。

在第十一方面的第一种可能实现方式中,所述第一获取单元具体用于,根据所述直连服务请求帧中的服务名称查询所述第一AP的服务信息表;当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有服务信息中设备能力为支持Wi-Fi直连时,获取所述已有服务信息中的设备标识,即为所述第二STA的设备标识;根据所述第二STA的设备标识,获取所述第二STA的设备地址;或者,

当所述直连服务请求帧中包括设备名称时,获取所述直连服务请求帧中的设备标识,即为所述第二STA的设备标识;根据所述第二STA的设备标识,获取所述第二STA的设备地址。

根据第十一方面或第十一方面的第一种可能实现方式,在第二种可能实现方式中,所述查询单元,具体用于当服务请求状态为第一请求状态时,当所述探测单元探测到的所述第一STA与所述第二STA之间的距离不大于直连距离时,根据所述直连服务请求帧中的服务名称和所述第二STA的设备地址查询所述第一AP的直连服务管理表。

根据第十一方面或第十一方面的第一种或第二种可能实现方式,在第三种可能实现方式中,第二获取单元具体用于,当所述AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第二STA的设备地址相同时,获取所述已有直连服务管理信息;

当所述AP的直连服务管理表中任意一条直连服务管理信息的服务名称和组地址与所述直连服务请求帧中的服务名称和所述第二STA的设备地址不同时,获取第一直连服务管理信息,并在所述AP的直连服务管理表中记录所述第一直连服务管理信息;所述第一直连服务管理信息包括所述直连服务请求帧中的服务名称和所述第二STA的设备地址。

根据第十一方面或第十一方面的任一种可能实现方式,在第四种可能实现方式中,所述第一AP还包括直连管理单元;

所述查询单元,具体还用于当服务请求状态为第二状态时,根据所述直连服务请求帧中的服务名称和所述第一STA的设备地址,查询所述第一AP的直连服务管理表;

所述直连管理单元,用于当所述直连服务请求帧中的服务请求状态为第二请求状态时,当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第一STA的设备地址相同时,将所述已有直连服务管理信息从所述第一AP的直连服务管理表中删除。

第十二方面,提供了一种用于获取直连服务的站点STA,包括:

发送单元,用于向第一接入点AP发送直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;

接收单元,用于接收所述第一AP返回的直连服务响应帧,所述直连服务响应帧中包括组地址;

服务建立单元,用于当根据所述直连服务响应帧确定直连请求成功时,与所述直连服务响应帧中组地址对应的第二STA建立直连服务。

第十三方面,提供了一种服务发现的系统,包括如上所述的用于服务发现的第一接入点AP和如上所述的用于服务发现的第一站点STA。

第十四方面,提供了一种服务注册的系统,包括如上所述的用于服务注册的第一接入点AP和如上所述的用于服务注册的第一站点STA。

第十五方面,提供了一种直连服务管理系统,包括如上所述的用于管理直连服务的第一接入点AP和如上所述的用于获取直连服务的第一站点STA。

通过上述方案,第一AP可以代理第一STA查找网络中的服务信息,并且所述第一AP可以通过本地查找和远程查找,为用户提供更大范围、更丰富的服务信息,满足用户根据服务需求选择网络的需求;并且AP可以代理发现提供直连服务的STA,并管理STA之间的直连通信,这样网络中提供服务的STA也无需周期性监听信道上其他设备的查找请求,降低了提供服务的STA的资源开销和能耗;此外,第一STA无论在关联前还是关联后,都可以通过第一AP获取服务信息,可以避免第一STA关联到一个AP后,发现没有所需服务再脱离,导致在不同AP间进行频繁的关联和脱离的问题,保证用户可以更快速准确地接入可提供服务的网络,提高了用户体验。同时,关联到第一AP的第一STA可以在第一AP上申明或取消服务信息,第一STA无需周期性监听信道上其他设备的查找请求,第一AP还可以将在所述第一AP上申明的设备信息和服务信息扩散到网络中可访问的相邻AP,也可以接收可访问的相邻AP提供的服务信息,从而可以向用户提供更丰富的服务信息;最后,由于AP上维护的服务信息,是经过验证关联到AP上的STA发布的,保证了安全性,从而保证了服务的可靠性。

附图说明

图1是本发明实施例提供的一种服务发现的方法流程图;

图2是本发明实施例提供的另一种服务发现的方法流程图;

图3是本发明实施例提供的又一种服务发现的方法流程图;

图4是本发明实施例提供的再一种服务发现的方法流程图;

图5和图5a是本发明实施例提供的再一种服务发现的方法流程图;

图6和图6a是本发明实施例提供的一种用于服务发现的接入点AP结构示意图;

图6b和图6c是本发明实施例提供的一种用于服务发现的接入点AP中查询单元的结构示意图;

图7和图7a是本发明实施例提供的一种用于服务发现的站点STA结构示意图;

图8是本发明实施例提供的一种服务注册的方法流程图;

图9和图9a是本发明实施例提供的另一种服务注册的方法流程图;

图10和图10a是本发明实施例提供的又一种服务注册的方法流程图;

图11和图11a是本发明实施例提供的一种用于服务注册的接入点AP结构示意图;

图12和图12a是本发明实施例提供的一种用于服务注册的站点STA结构示意图;

图13和图13a是本发明实施例提供的一种服务注册系统结构示意图;

图14是本发明实施例提供的一种服务注册的信息交互示意图;

图15是本发明实施例提供的一种管理直连服务的方法流程图;

图16是本发明实施例提供的一种获取直连服务的方法流程图;

图17是本发明实施例提供的一种用于获取直连服务的站点STA结构图;

图18和图18a是本发明实施例提供的一种用于管理直连服务的接入点AP结构图;

图19是本发明实施例提供的一种直连服务管理系统结构示意图;

图20是本发明实施例提供的公共行为帧示意图;

图21是本发明实施例提供的一种查询类型表示意图;

图22是本发明实施例提供的一种服务发现请求帧示意图;

图23是本发明实施例提供的一种服务信息表示意图;

图24是本发明实施例提供的一种简化服务信息示意图;

图25是本发明实施例提供的一种服务发现响应帧示意图;

图26是本发明实施例提供的一种服务信息元素示意图;

图27是本发明实施例提供的一种服务通告请求帧示意图;

图28是本发明实施例提供的一种服务通告响应帧示意图;

图29是本发明实施例提供的一种服务维护帧示意图;

图30是本发明实施例提供的一种直连服务请求帧示意图;

图31是本发明实施例提供的一种直连服务管理表示意图;

图32是本发明实施例提供的一种直连服务响应帧示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明实施例中,服务通告请求帧,服务通告响应帧,服务维护帧,服务发现请求帧,服务发现响应帧,直连请求帧和直连响应帧,可以通过扩展现有WLAN网络中行为(Action)帧中类别(category)为4的公共行为帧(Public Action frame)来实现;也可以用现有的管理帧,例如IEEE 802.11u中所使用的Public Action frame,通用广告服务(Generic Advertisement Service,简称GAS)初始化请求(GAS initial request)帧、GAS初始化响应(GAS initial response)帧、GAS恢复请求(GAS comeback request)帧和GAS恢复响应(GAS comeback response)帧等;也可以扩展IEEE 802.11u中的接入网络查询协议(Access Network Query Protocol,ANQP),通过扩展的元素携带新的服务相关信息来实现;当然,也可以定义新的帧来实现,只要能实现本发明的目的即可,本发明对此不作限定。

本发明实施例中以扩展Public Action frame为例说明本发明技术方案。如图20所示,为Public Action frame的结构示意图,其中类别(category)的值为4,公共行为域值(Public Action field value)字段用于标识具体的Public Action frame的类型,目前已经有16种Public Action frame,分别是Public Action field value从0~15。本发明实施例中扩展现Public Action frame,例如,服务发现请求帧用Public Action field value为16标识,服务发现响应帧用Public Action field value为17标识,服务通告请求帧用Public Action field value为18标识,服务通告应答帧用Public Action field value为19标识,服务维护帧用Public Action field value为20标识,直连请求帧用Public Action field value为21标识和直连响应帧用Public Action field value为22标识;

需要说明的是,本发明实施例中扩展的Public Action frame所使用的Public Action field value是一种示例,随着标准的发展可能使用不同的值,本发明对此不作限定。

需要说明的是,本发明实施例中涉及到的服务标识,设备标识和组标识可以是按照AP本地规则分配,即AP本地唯一的;也可以按照全局统一的规则分配,即全局唯一的,本发明实施例对此不作限定。

需要说明的是,具体实现中,可以配置AP上仅保留本地服务信息,即AP所在BSS的服务信息;也可以配置AP上既保留本地服务信息,也保留远程服务信息,即AP可访问的相邻AP所在BSS的服务信息;本发明实施例对此不作限定。

需要说明的是,具体实现中,本发明实施例中的AP的服务信息表可以为一张表,也可以分为两个子表,如本地服务信息表和远程服务信息表,对此本发明不做限定。其中本地服务信息表中保存在所述AP上注册的服务信息,远程服务信息表中保存的是在所述AP可访问的相邻AP上注册的服务信息。本领域技术人员可以理解的是,查询本地服务信息表,可以理解为查询BSSID与所述AP的MAC地址相同的所有服务信息;查询远程服务信息表,可以理解为查询BSSID与所述AP的MAC地址不同的所有服务信息;如果既要查询本地服务信息表,也要查询远程服务信息表,则不限制BSSID即可。

图1是本发明实施例提供的一种服务发现的方法流程图,本实施例中,所述服务发现的方法由第一接入点AP实施,如图1所示,所述方法包括:

101、第一接入点AP接收来自第一站点STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述服务查询项包括查询类型和查询内容;

所述M为大于等于0的整数。

需要说明的是,本发明实施例中,STA在服务发现过程中,需要查询所需的服务,查询类型可以是查询类型名称,例如BSSID,设备名称,设备能力,服务名称,服务标识等;也可以是查询类型标识,例如为每个查询类型名称定义一个查询类型标识,查询类型标识通常是全局统一的,只要能够实现本发明的技术方案即可,本发明对此不作限定。示例性,如图21所示的查询类型信息表,为每种查询类型名称定义一个查询类型标识,具体的,本发明对此不作限定。

示例性的,所述服务发现请求帧可以如图22所示;其中Public Action field value字段后面的长度(length)可变,用于表示所述服务发现请求帧中行为细节的长度;每个服务查询项中的长度(length)可变,用于表示查询内容的长度。

102、所述第一AP根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

所述获取满足所述M个服务查询项的查询结果具体包括:获取所述第一AP的服务信息表中,同时满足所述M个服务查询项的查询结果。

举例来说,当M为1,即服务发现请求帧中包括1个服务查询项时,例如查询类型为“服务名称”,查询内容为“打印”,则查询结果需满足“服务名称”为“打印”。当M为2,即服务发现请求帧中包括2个服务查询项时,例如第1个服务查询项包括:查询类型为“服务名称”,查询内容为“打印”,第2个服务查询项包括:查询类型为“设备能力”,查询内容为“支持Wi-Fi直连”,则查询结果需同时满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”。

当M为0时,所述查询结果为所述第一AP的服务信息表中的所有服务信息;

所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务名称;所述服务信息还可以包括网络访问策略,设备名称,设备能力,服务描述等。

示例性的,所述服务信息表可以如图23所示。其中,BSSID为申明该服务信息的STA所关联AP的MAC地址;例如本实施中,为所述第一AP的MAC地址。

当M大于等于1时,所述查询结果可以是同时满足所述M个服务查询项的所有服务信息;也可以同时满足所述M个服务查询项的简化服务信息。

举例来说,当M为2,即服务发现请求帧中包括2个服务查询项时,例如第1个服务查询项包括:查询类型为“服务名称”,查询内容为“打印”,第2个服务查询项包括:查询类型为“设备能力”,查询内容为“支持Wi-Fi直连”,可以返回满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”的所有服务信息;也可以返回满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”的所有简化服务信息,本发明对此不作限定。如图24所示,简化服务信息相对服务信息,去除了服务查询项中的查询类型“服务名称”和“设备能力”,返回简化服务信息可以减少传输的信息量,提高传输效率。

需要说明是,本发明实施例中,均以返回服务信息为例描述本发明技术方案,但并不构成对本发明的限定。

103、所述第一AP向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述查询结果。

示例性的,所述服务发现响应帧可以如图25所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

当然,所述服务发现响应帧中的查询结果也可以为空,表示所述第一AP没有发现满足所述M个服务查询项的服务信息。则如图25所示的服务发现相应帧中,所述Length字段为0。

进一步地,对于第一STA的服务发现请求,第一AP可以在所述第一AP的服务信息表中查找,还可以到其他可访问的相邻AP上查找,具体可根据需要进行配置。

需要说明的是,所述第一AP可以通过无线方式向其他可访问的相邻AP转发服务发现请求帧,并接收其他可访问的相邻AP返回的服务发现响应帧。所述第一AP也可以通过其他方式,将所述第一STA的服务发现请求帧转发到其他可访问的相邻AP,并接收其他可访问的相邻AP返回的服务发现响应帧;例如,当WLAN中存在接入控制器(Access Controller,简称AC)时,第一AP可以通过无线接入点控制和配置(Control And Provisioning of Wireless Access Point,简称CAPWAP)协议中的数据消息绑定封装服务发现请求帧和服务发现响应帧,通过AC与其他可访问的相邻AP进行通信;再例如,当WLAN中没有AC,AP直接连接到以太网络时,所述第一AP可以通过传输控制协议和网际协议协议(Transmission Control Protocol/Internet Protocol,简称TCP/IP)与其他可访问的相邻AP通信,通过TCP/IP协议封装服务发现请求帧和服务发现响应帧。本发明对所述第一AP与其他可访问的相邻AP之间的通信方式不作限定;为方便叙述,以下统一用转发描述所述第一AP与其他可访问的相邻AP之间的通信。

图2是本发明实施例提供的另一种服务发现的方法流程图,本实施例在如本发明图1所示服务发现的方法基础上,对本发明技术方案作进一步描述;如图2所示,所述方法包括:

201、所述第一AP接收来自第一站点STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述服务查询项包括查询类型标识和查询内容;

所述M为大于等于0的整数。

具体参见101,在此不再赘述。

202、所述第一AP根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

如果所述第一AP配置了转发功能,即第一AP可以代理STA发现所述第一AP可访问的相邻AP上的服务信息,则202具体包括:202A~202C,或者202a~202c。

202A:所述第一AP根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取所述第一AP的服务信息表中满足所述M个服务查询项的所有服务信息;

具体参见102,在此不再赘述。

202B:所述第一AP向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息,获取所述第二AP返回的服务发现响应帧中包括的服务信息;

所述第二AP收到所述服务发现请求帧后的处理过程,可以参考本发明图1所示方法中102。

202C:所述第一AP获取满足所述M个服务查询项的查询结果,所述查询结果具体包括所述第一AP的服务信息表中满足所述M个服务查询项的所有服务信息,和所述第二AP返回的服务发现响应帧中包括的服务信息。

本领域技术人员可以理解的是,202B可以在202A之前或之后执行;202B也可以与202A同步执行。

通过202A~202C,无论所述第一AP上是否可以找到满足所述M个服务查询项的服务信息,所述第一AP都会将所述第一STA的服务发现请求转发到其他可访问的相邻AP,以进行更大范围的服务查找。

202a:所述第一AP根据所述服务发现请求帧,查询所述第一AP的服务信息表;202b:当所述第一AP的服务信息表中任意一条服务信息都不满足所述M个服务查询项时,所述第一AP向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息;所述第一AP获取所述第二AP返回的服务发现响应帧中包括的服务信息;

所述第二AP收到所述服务发现请求帧后的处理过程,可以参考本发明图1所示方法中102。

可选的,所述第一AP可以在所述第一AP的服务信息表中记录所述第二AP返回的服务发现响应帧中包括的所述第二AP上满足所述M个服务查询项的所有服务信息。

202c:否则,当所述第一AP的服务信息表中存在至少一条服务信息满足所述M个服务查询项时,获取所述第一AP的服务信息表中,满足所述M个服务查询项的所有服务信息。

通过202a~202c,只有当所述第一AP上找不到满足所述M个服务查询项的服务信息时,所述第一AP才会将所述第一STA的服务发现请求转发到其他可访问的相邻AP,以进行更大范围的服务查找。

可选地,所述第一AP向第二AP转发所述第一STA的服务发现请求时,还可以携带所述第一STA的设备地址或设备标识,以便所述第二AP判断是否已处理了所述第一STA的服务发现请求。

需要说明的是,这里以所述第一AP向第二AP转发所述第一STA的服务发现请求为例说明本发明技术方案,具体实现中,所述第一AP可访问的相邻AP可能有多个,过程相同,在此不再赘述。

203、所述第一AP向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述查询结果。

具体参见103,在此不再赘述。

通过本发明实施例提供的技术方案,无论所述第一AP是仅保留了本地服务信息,还是既保存了本地服务信息又保存了远程服务信息,所述第一AP都可以发现可访问范围内的服务信息;从而可以提供更大范围的服务发现和查找功能,向用户提供更丰富的服务信息,满足用户根据服务需求选择网络的需求。

通常,STA在关联前,没有任何可用AP信息时,需要通过扫描获取可用AP信息,在关联到可用AP;STA扫描获取可用AP具体可通过主动扫描或被动扫描方式实现。本发明技术方案中,可以在扫描获取可用AP信息后,通过服务发现请求帧和服务发现响应帧,获取可用AP上的服务信息;也可以对现有扫描方式进行扩展,在获取可用AP信息的同时,获取可用AP上的服务目录信息,可以为主动扫描和被动扫描分别定义新的帧,也可以通过扩展探测请求(probe Request)帧,探测响应(probe Response)帧,信标(beacon)帧,例如定义一个新的信息元素(information element),用于描述服务信息,本发明对此不作限定。

本发明实施例中,以定义新的服务信息元素(service information element),扩展探测请求(probe request)帧,探测响应(probe response)帧和信标(beacon),在获取可用AP信息的同时,获取可用AP上的服务目录信息为例说明本发明技术方案。服务信息元素(service information element)通过元素标识(element ID)区分,目前在IEEE802.11标准中,element ID还有17-31、128-129和133-136预留,尚未使用,可以从中选取一个作为本发明技术方案扩展的服务信息元素(service information element)的element ID。

图3是本发明实施例提供的又一种服务发现的方法流程图,本实施例在图1或图2所示服务发现的方法基础上,对本发明技术方案作进一步描述。如图3所示,所述方法包括:

301、第一接入点AP广播发送信标帧,所述信标帧中包括服务信息元素;

当采用被动扫描方式时,所述第一AP周期性广播信标帧,第一站点STA需要逐个信道监听以捕获所述第一AP发送的信标帧,获取所述第一AP的信息和所述第一AP上的服务目录信息。

所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称。

可选的,所述服务信息元素中还可以包括网络类型;所述服务目录项中还可以包括服务描述。所述网络类型可以是遵从IEEE 802.11标准中的定义,例如私有网络等。

示例性的,所述服务信息元素(service information element)可以如图26所示。其中,长度(length)取值0~256字节,用于表示该服务信息元素的长度。

302、所述第一AP接收来自第一站点STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述服务查询项包括查询类型标识和查询内容;

所述M为大于等于0的整数。

具体参见101,在此不再赘述。

303、所述第一AP根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

具体参见102或202,在此不再赘述。

304、所述第一AP向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述满足所述查询结果。

具体参见103,在此不再赘述。

图4是本发明实施例提供的再一种服务发现的方法流程图,本实施例在图1或图2所示服务发现的方法基础上,对本发明技术方案作进一步描述;如图4所示,所述方法包括:

401、第一接入点AP接收第一站点STA广播发送的探测请求帧,所述探测请求帧中包括服务信息元素;

其中所述服务信息元素中的长度(length)字段为0。

当采用主动扫描方式时,所述第一STA在各个信道上发送携带服务元素的探测请求帧,主动扫描信道上的可用AP,并请求可用AP上的服务目录信息。

402、所述第一AP向所述第一STA返回探测响应帧,所述探测响应帧中包括服务信息元素;

所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称;

所述第一AP收到所述第一STA的探测请求帧后,向所述第一STA返回探测响应帧,为所述第一STA提供所述第一AP的信息;同时,由于所述探测请求帧中包括服务信息元素,因此所述第一AP向所述第一STA返回的探测响应帧中也包括该服务信息元素,向所述第一STA提供所述第一AP上的服务目录信息。

可选的,所述服务信息元素中还可以包括网络类型;所述服务目录项中还可以包括服务描述。所述网络类型可以是遵从IEEE 802.11标准中的定义,例如私有网络等。

示例性的,所述服务信息元素(service information element)可以如图26所示。其中,长度(length)取值0~256字节,用于表示该服务信息元素的长度。

403、所述第一AP接收来自所述第一STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述服务查询项包括查询类型标识和查询内容;

所述M为大于等于0的整数。

具体参见101,在此不再赘述。

404、所述第一AP根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

具体参见102或202,在此不再赘述。

405、所述第一AP向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述满足所述查询结果。

具体参见103,在此不再赘述。

采用本发明实施例提供的技术方案,当第一STA需要获取服务信息时,无论所述第一STA在关联前还是关联后,都可以通过所述第一AP进行服务发现,也可以避免第一STA关联到一个AP后,发现没有所需服务再脱离,导致在不同AP间进行频繁的关联和脱离的问题,保证用户可以更快速准确地接入可提供服务的网络,提高了用户体验;同时,网络中提供服务的STA也无需周期性监听信道上其他设备的查找请求,降低了提供服务的STA的资源开销和能耗。

图5是本发明实施例提供的再一种服务发现的方法流程图,本实施例中,所述服务发现的方法由第一站点STA实施,如图5所示,所述方法包括:

501、第一站点STA向第一接入点AP发送服务发现请求帧,所述服务发现请求帧中包括M个服务查询项,所述服务查询项包括查询类型和查询内容;

所述M为大于等于0的整数。

需要说明的是,本发明实施例中,STA在服务发现过程中,需要查询所需的服务,查询类型可以是查询类型名称,例如BSSID,设备名称,设备能力,服务名称,服务标识等;也可以是查询类型标识,例如为每个查询类型名称定义一个查询类型标识,查询类型标识通常是全局统一的,只要能够实现本发明的技术方案即可,本发明对此不作限定。示例性,如图21所示的查询类型信息表,为每种查询类型名称定义一个查询类型标识,具体的,本发明对此不作限定。

示例性的,所述服务发现请求帧可以如图22所示;其中Public Action field value字段后面的长度(length)可变,用于表示所述服务发现请求帧中行为细节的长度;每个服务查询项中的长度(length)可变,用于表示查询内容的长度。

502、所述第一STA接收所述第一AP返回的服务发现响应帧,所述服务发现响应帧中包括满足所述M个服务查询项的查询结果。

所述查询结果可以是同时满足所述M个服务查询项的服务信息;也可以是同时满足所述M个服务查询项的简化服务信息。

所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务名称;所述服务信息还可以包括网络访问策略,设备名称,设备能力,服务描述等。

示例性的,所述服务信息表可以如图23所示。其中,BSSID为申明该服务信息的STA所关联AP的MAC地址;例如本实施中,为所述第一AP的MAC地址。

举例来说,当M为2,即服务发现请求帧中包括2个服务查询项时,例如第1个服务查询项包括:查询类型为“服务名称”,查询内容为“打印”,第2个服务查询项包括:查询类型为“设备能力”,查询内容为“Wi-Fi直连”;则查询结果是同时满足“服务名称”为“打印”,且“设备能力”为“Wi-Fi直连”的所有服务信息,也可以是同时满足“服务名称”为“打印”,且“设备能力”为“Wi-Fi直连”的所有简化服务信息,本发明对此不作限定。如图24所示,简化服务信息相对服务信息,去除了服务查询项中的查询类型“服务名称”和“设备能力”,返回简化服务信息可以减少传输的信息量,提高传输效率。

需要说明是,本发明实施例中,均以查询结果为服务信息为例描述本发明技术方案,但并不构成对本发明的限定。

示例性的,所述服务发现响应帧可以如图25所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

当然,所述服务发现响应帧中的查询结果也可以为空,表示所述第一AP没有发现满足所述M个服务查询项的服务信息。则如图25所示的服务发现相应帧中,所述Length字段为0。

可选地,所述第一STA在发送所述服务发现请求帧之后,也可以设置一个定时器,如果在定时器设定的时间内没有收到所述第一AP返回的服务发现响应帧,则所述第一STA认为本次服务发现失败;所述第一STA可以向所述第一AP再次发送服务发现请求帧,或者可以向其他AP发送服务发现请求帧。

可选地,如图5a所示,在501之前,所述第一STA需要扫描获取可用AP信息,并请求可用AP上的服务目录信息。

当采用主动扫描方式时,所述方法还包括:

503、所述第一STA广播发送探测请求帧,所述探测请求帧中包括服务信息元素;

其中所述服务信息元素中的长度(length)字段为0。所述探测请求帧用于请求获取AP上的服务目录信息,因此,所述探测请求帧中服务信息元素的服务目录项为空,所述服务信息元素中的长度(length)字段为0。

504、所述第一STA接收所述第一AP返回的探测响应帧,所述探测响应帧中包括所述服务信息元素,所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称。

当采用被动扫描方式时,所述方法还包括:

505、所述第一STA接收所述第一AP广播发送的信标帧,所述信标帧中包括服务信息元素,所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称;

当采用被动扫描方式时,所述第一AP会周期性广播信标帧,所述第一STA需要逐个信道监听以捕获所述第一AP发送的信标帧,获取所述AP的信息和所述AP上的服务目录信息。

采用本发明实施例提供的技术方案,所述第一STA无论在关联前还是关联后,都可以通过第一AP代理查找网络中可提供的设备信息和服务信息,获取更丰富的服务信息,满足用户根据服务需求选择网络的需求;也可以避免第一STA关联到一个AP后,发现没有所需服务再脱离,导致在不同AP间进行频繁的关联和脱离的问题,保证用户可以更快速准确地接入可提供服务的网络,提高了用户体验。

本发明实施例提供了一种服务发现系统,所述系统包括如图6所示的第一接入点AP和如图7所示的第一站点STA;所述第一STA和所述第一AP交互实现本发明实施例提供的服务发现的方法。

所述系统还可以包括第二AP,所述第二AP为所述第一AP可访问的相邻AP;可以理解的是,所述系统中可能存在多个第二AP。

接下来详细描述本发明实施例提供的服务发现系统中所述第一STA和所述第一AP。

图6是本发明实施例提供的一种用于服务发现的第一接入点AP结构示意图;如图6所示,所述第一AP包括接收单元601,查询单元602和发送单元603。其中,

所述接收单元601,用于接收来自第一站点STA的服务发现请求帧,所述服务发现请求帧中包括M个服务查询项;

所述服务查询项包括查询类型和查询内容;所述M为大于等于0的整数。

需要说明的是,本发明实施例中,STA在服务发现过程中,需要查询所需的服务,查询类型可以是查询类型名称,例如BSSID,设备名称,设备能力,服务名称,服务标识等;也可以是查询类型标识,例如为每个查询类型名称定义一个查询类型标识,查询类型标识通常是全局统一的,只要能够实现本发明的技术方案即可,本发明对此不作限定。示例性,如图21所示的查询类型信息表,为每种查询类型名称定义一个查询类型标识,具体的,本发明对此不作限定。

示例性的,所述服务发现请求帧可以如图22所示;其中Public Action field value字段后面的长度(length)可变,用于表示所述服务发现请求帧中行为细节的长度;每个服务查询项中的长度(length)可变,用于表示查询内容的长度。

所述查询单元602,用于根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取满足所述M个服务查询项的查询结果;

所述查询单元602具体用于获取所述第一AP的服务信息表中,同时满足所述M个服务查询项的查询结果。

举例来说,当M为1,即服务发现请求帧中包括1个服务查询项时,例如查询类型为“服务名称”,查询内容为“打印”,则查询结果需满足“服务名称”为“打印”。当M为2,即服务发现请求帧中包括2个服务查询项时,例如第1个服务查询项包括:查询类型为“服务名称”,查询内容为“打印”,第2个服务查询项包括:查询类型为“设备能力”,查询内容为“支持Wi-Fi直连”,则查询结果需同时满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”。

当M为0时,所述查询结果为所述第一AP的服务信息表中的所有服务信息;

所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务名称;所述服务信息还可以包括网络访问策略,设备名称,设备能力,服务描述等。

示例性的,所述服务信息表可以如图23所示。其中,BSSID为申明该服务信息的STA所关联AP的MAC地址;例如本实施中,为所述第一AP的MAC地址。

当M大于等于1时,所述查询结果可以是同时满足所述M个服务查询项的所有服务信息;也可以同时满足所述M个服务查询项的简化服务信息。

举例来说,当M为2,即服务发现请求帧中包括2个服务查询项时,例如第1个服务查询项包括:查询类型为“服务名称”,查询内容为“打印”,第2个服务查询项包括:查询类型为“设备能力”,查询内容为“支持Wi-Fi直连”,可以返回满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”的所有服务信息;也可以返回满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”的所有简化服务信息,本发明对此不作限定。如图24所示,简化服务信息相对服务信息,去除了服务查询项中的查询类型“服务名称”和“设备能力”,返回简化服务信息可以减少传输的信息量,提高传输效率。

需要说明是,本发明实施例中,均以返回服务信息为例描述本发明技术方案,但并不构成对本发明的限定。

所述发送单元603,用于向所述第一STA返回服务发现响应帧,所述服务发现响应帧中包括所述查询结果。

示例性的,所述服务发现响应帧可以如图25所示。其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

当然,所述服务发现响应帧中的查询结果也可以为空,表示所述第一AP没有发现满足所述M个服务查询项的服务信息。则如图25所示的服务发现相应帧中,所述Length字段为0。

可选的,如图6a所示,所述第一AP还包括扫描单元604;

所述扫描单元604,用于广播发送信标帧;或者用于接收所述第一STA广播发送的探测请求帧,并向所述第一STA返回探测响应帧。当采用被动扫描方式时,所述扫描单元604具体用于周期性广播信标帧,所述信标帧中包括服务信息元素,所述服务信息元素包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称。所述第一STA需要逐个信道监听以捕获所述第一AP发送的信标帧,获取所述第一AP的信息和所述第一AP上的服务目录信息。

当采用主动扫描方式时,所述第一STA会在各个信道上发送携带服务信息元素的探测请求帧,主动扫描信道上的可用AP,并请求可用AP上的服务目录信息。所述扫描单元604具体用于接收所述第一STA广播发送的探测请求帧,所述探测请求帧中包括服务信息元素,所述服务信息元素中的长度(length)字段为0;并向所述第一STA返回探测响应帧,所述探测响应帧中包括服务信息元素,所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称,用于向所述第一STA提供所述第一AP的信息和所述第一AP上的服务目录信息。

示例性的,所述服务信息元素(service information element)可以如图26所示。其中,长度(length)取值0~256字节,用于表示该服务信息元素的长度。

可选的,所述服务信息元素中还可以包括网络类型;所述服务目录项中还可以包括服务描述。所述网络类型可以是遵从IEEE 802.11标准中的定义,例如私有网络等。

可选的,如图6b所示,所述查询单元602包括:

本地子单元602A,用于根据所述服务发现请求帧,查询所述第一AP的服务信息表,获取所述第一AP的服务信息表中满足所述M个服务查询项的所有服务信息;

远程子单元602B,用于向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息,获取所述第二AP返回的服务发现响应帧中包含的服务信息;

结果获取子单元602C,用于获取满足所述M个服务查询项的查询结果,所述查询结果具体包括所述本地子单元602A获取的服务信息,和所述远程子单元602B获取的服务信息。

可选的,如图6c所示,所述查询单元602包括:

查找子单元602a,用于根据所述服务发现请求帧,查询所述第一AP的服务信息表;

远程子单元602b,用于当所述查找子单元602a的查找结果为:所述第一AP的服务信息表中任意一条服务信息都不满足所述M个服务查询项时,向第二AP转发所述服务发现请求帧,并接收所述第二AP返回的服务发现响应帧,所述第二AP返回的服务发现响应帧中包括所述第二AP的服务信息表中满足所述M个服务查询项的所有服务信息;获取所述第二AP返回的服务发现响应帧中包括的服务信息;

本地子单元602c,用于当所述查找子单元602a的查找结果为:所述第一AP的服务信息表中存在至少一条服务信息满足所述M个服务查询项,获取所述第一AP的服务信息表中,满足所述M个服务查询项的所有服务信息。

可选地,所述远程子单元602B或远程子单元602b在转发所述第一STA的服务发现请求时,还可以携带所述第一STA的设备地址或设备标识,以便所述第二AP判断是否已处理了所述第一STA的服务发现请求。

图7是本发明实施例提供的一种用于服务发现的第一站点STA结构示意图;如图7所示,所述第一STA包括发送单元701和接收单元702。其中,

所述发送单元701,用于向第一接入点AP发送服务发现请求帧,所述服务发现请求帧中包括M个服务查询项;

所述服务查询项包括查询类型和查询内容;所述M为大于等于0的整数。

需要说明的是,本发明实施例中,STA在服务发现过程中,需要查询所需的服务,查询类型可以是查询类型名称,例如BSSID,设备名称,设备能力,服务名称,服务标识等;也可以是查询类型标识,例如为每个查询类型名称定义一个查询类型标识,查询类型标识通常是全局统一的,只要能够实现本发明的技术方案即可,本发明对此不作限定。示例性,如图21所示的查询类型信息表,为每种查询类型名称定义一个查询类型标识,具体的,本发明对此不作限定。

示例性的,所述服务发现请求帧可以如图22所示;其中Public Action field value字段后面的长度(length)可变,用于表示所述服务发现请求帧中行为细节的长度;每个服务查询项中的长度(length)可变,用于表示查询内容的长度。

所述接收单元702,用于接收所述第一AP返回的服务发现响应帧,所述服务发现响应帧中包括满足所述M个服务查询项的查询结果。

所述查询结果可以是同时满足所述M个服务查询项的所有服务信息;也可以同时满足所述M个服务查询项的简化服务信息。

所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务名称;所述服务信息还可以包括网络访问策略,设备名称,设备能力,服务描述等。

示例性的,所述服务信息表可以如图23所示。其中,BSSID为申明该服务信息的STA所关联AP的MAC地址;例如本实施中,为所述第一AP的MAC地址。

举例来说,当M为2,即服务发现请求帧中包括2个服务查询项时,例如第1个服务查询项包括:查询类型为“服务名称”,查询内容为“打印”,第2个服务查询项包括:查询类型为“设备能力”,查询内容为“支持Wi-Fi直连”,则查询结果需同时满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”的所有服务信息;也可以是同时满足“服务名称”为“打印”,且“设备能力”为“支持Wi-Fi直连”的所有简化服务信息,本发明对此不作限定。如图24所示,简化服务信息相对服务信息,去除了服务查询项中的查询类型“服务名称”和“设备能力”,返回简化服务信息可以减少传输的信息量,提高传输效率。

需要说明是,本发明实施例中,均以查询结果为服务信息为例描述本发明技术方案,但并不构成对本发明的限定。

示例性的,所述服务发现响应帧可以如图25所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

当然,所述服务发现响应帧中的查询结果也可以为空,表示所述第一AP没有发现满足所述M个服务查询项的服务信息。则如图25所示的服务发现相应帧中,所述Length字段为0。

可选的,如图7a所示,所述第一STA还包括扫描单元703;

所述扫描单元703,用于接收所述第一AP广播发送的信标帧;或者,用于广播发送探测请求帧,并接收所述第一AP返回的探测响应帧。

通过所述扫描单元703,所述第一STA可以获取可用AP信息,并请求可用AP上的服务目录信息。

当采用主动扫描方式时,所述扫描单元703具体用于广播发送探测请求帧,所述探测请求帧中包括服务信息元素,所述服务信息元素中的长度(length)字段为0;并接收所述第一AP返回的探测响应帧,所述探测响应帧中包括所述服务信息元素,所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称。

当采用被动扫描方式时,所述扫描单元703具体用于接收所述第一AP广播发送的信标帧,所述信标帧中包括服务信息元素,所述服务信息元素中包括服务目录项,所述服务目录项包括BSSID,服务标识和服务名称。

可选地,所述第一STA还包括定时单元,用于在发送所述服务发现请求帧之后,设置一个定时器,如果在定时器设定的时间内没有收到所述第一AP返回的服务发现响应帧,则认为本次服务发现失败;则所述第一STA可以向所述第一AP再次发送服务发现请求帧,或者可以向其他AP发送服务发现请求帧。

采用本发明实施例提供的服务发现的技术方案,第一AP可以代理第一STA查找网络中的服务信息,并且所述第一AP可以通过本地查找和远程查找,为用户提供更大范围、更丰富的服务信息,满足用户根据服务需求选择网络的需求;这样网络中提供服务的STA也无需周期性监听信道上其他设备的查找请求,降低了提供服务的STA的资源开销和能耗;此外,第一STA无论在关联前还是关联后,都可以通过第一AP获取服务信息,可以避免第一STA关联到一个AP后,发现没有所需服务再脱离,导致在不同AP间进行频繁的关联和脱离的问题,保证用户可以更快速准确地接入可提供服务的网络,提高了用户体验。

进一步的,第一STA关联到第一AP后,可以向第一AP申明可提供的服务。第一AP也可以向网络中其他可访问的相邻AP扩散第一STA申明的服务信息。

图8是本发明实施例提供的一种服务注册的方法流程图,本实施例中,所述服务注册的方法由第一接入点AP实施,如图8所示,所述方法包括:

801、第一接入点AP接收来自第一站点STA的服务通告请求帧;所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

所述第一STA关联到所述第一AP后,可以向所述第一AP发送服务通告请求帧,向所述第一AP注册服务。

所述第一STA的设备地址通常为所述第一STA的MAC地址。所述第一STA的设备地址通常携带在所述服务通告请求帧的头部。

所述服务通告请求帧中还可以包括所述第一STA的设备名称,设备标识,设备能力,设备描述等。所述第一STA的设备名称可以是例如,打印机、电视机等,也可以是例如1号咖啡馆,2号票务中心等;所述第一STA的设备能力可以是例如支持Wi-Fi直连,支持蓝牙等,还可进一步在设备能力中携带能力参数,例如支持Wi-Fi直连时,携带直连距离。例如,

设备名称 设备能力

打印机 支持Wi-Fi直连,直连距离为L;

2号票务中心 可上门服务;

所述服务申明项除了包括服务名称,还可以包括服务描述。例如,上述2号票务中心,可提供如下服务:

当所述第一STA可以提供多项服务时,所述第一STA可以一次向所述第一AP注册多项服务,则所述服务通告请求帧中包括多个服务申明项;所述第一STA也可以分多次向所述第一AP注册服务,即每次向所述第一AP注册一项服务,注册多次,则每次所述服务通告请求帧中仅包括一个服务申明项。

示例性的,所述服务通告请求帧可以如图27所示;其中,长度(length)可变,用于表示所述服务通告请求帧中行为细节的长度。

802、所述第一AP获取所述第一STA的设备标识;

具体的,所述第一AP根据所述第一STA的设备地址,查询所述第一AP的地址对应关系表,所述地址对应关系表中包括设备地址与设备标识的对应关系,

当所述第一AP的地址对应关系表中一条已有地址对应关系的设备地址与所述第一STA的设备地址相同时,获取所述已有地址对应关系的设备标识,即为所述第一STA的设备标识;

当所述第一AP的地址对应关系表中任意一条地址对应关系的设备地址与所述第一STA的设备地址都不相同时,从设备标识池中分配所述第一STA的设备标识,并在所述地址对应关系表中记录所述第一STA的设备地址与设备标识的地址对应关系。

可选的,如果所述服务通告请求帧中包括所述第一STA的设备标识,所述第一AP也可以从所述服务通告请求帧中获取所述第一STA的设备标识。

例如,设备地址为MAC1的2号票务中心的设备标识DI-1,设备地址为MAC2的打印机1的设备标识为DI-2;

803、所述第一AP根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识;

即,所述第一AP分别根据每个服务申明项的服务名称获取对应的服务标识,具体包括:

所述第一AP根据所述至少一个服务申明项中第一服务申明项的服务名称,查询所述第一AP的服务信息表;

当所述第一AP的服务信息表中任意一条服务信息的服务名称与所述第一服务申明项的服务名称均不相同时,根据所述第一服务申明项的服务名称从服务标识池中分配第一服务标识;

当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述第一服务申明项的服务名称相同,且所述已有服务信息的BSSID与所述第一AP的MAC地址相同时,获取所述已有服务信息的服务标识,即为所述第一服务申明项的服务名称对应的第一服务标识。

如果还有第二服务申明项,则获取第二服务申明项的服务名称对应的第二服务标识,以此类推。

举例来说,2号票务中心发送服务通告请求帧,所述服务通告请求帧中包括两个服务申明项,第一个服务申明项的服务名称为“飞机票预售”,第二个服务申明项的服务名称为“火车票预售”,则所述第一AP根据“飞机票预售”获取服务标识SI-1,再根据“火车票预售”获取服务标识SI-2。

804、所述第一AP在所述第一AP的服务信息表中记录所述至少一个服务申明项中每个服务申明项对应的服务信息;所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务申明项;

具体的,所述第一AP获取第一服务信息,所述第一服务信息包括所述第一AP的BSSID,所述第一STA的设备标识,所述第一服务标识和所述第一服务申明项;

并在所述第一AP的服务信息表中记录所述第一服务信息;

如果还有第二服务申明项,则获取第二服务信息,并在所述第一AP的服务信息表中记录所述第二服务信息;以此类推。

可选的,服务信息还可以包括所述第一STA的设备名称,所述第一STA的设备能力,网络访问策略。网络访问策略可以表示AP所在BSS内的访问策略,也可以是针对某项具体服务的访问策略,例如,AP1在公共网络,AP2在私有网络,AP1根据AP2的访问策略可以访问AP2所在的私有网络。

示例性的,所述服务信息可以如图23所示;其中,BSSID为申明该服务信息的STA所关联AP的MAC地址;例如本实施中,为所述第一AP的MAC地址。

805、所述第一AP向所述第一STA返回服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称。

具体的,所述服务通告响应帧中包括:

在802中获取的所述第一STA的设备标识;和

所述至少一个服务申明项中每个服务申明项对应的服务申明应答项,包括:

对应所述第一服务申明项的第一申明应答项,所述第一申明应答项包括所述第一服务申明项的服务名称和所述第一服务标识;

以及,如果还有第二服务申明项,对应所述第二服务申明项的第二申明应答项,所述第二申明应答项包括第二服务申明项的服务名称和所述第二服务标识;以此类推。

可选地,所述服务通告响应帧中还可以包括所述第一STA的设备名称。

示例性的,所述服务通告响应帧可以如图28所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

采用本发明实施例提供的服务注册的方法,关联到第一AP的第一STA可以在第一AP上申明服务信息;第一AP管理并维护所在BSS内的服务信息,并提供服务查找功能,这样第一STA无需周期性监听信道上其他设备的查找请求,降低了第一STA的资源开销和能耗。

需要说明的是,所述第一AP可以通过无线方式向其他可访问的相邻AP转发服务维护帧,和接收其他可访问的相邻AP发送的服务维护帧。所述第一AP也可以通过其他方式,将服务维护帧转发到其他可访问的相邻AP;例如,当WLAN中存在接入控制器(Access Controller,简称AC)时,第一AP可以通过无线接入点控制和配置(Control And Provisioning of Wireless Access Point,简称CAPWAP)协议中的数据消息绑定封装服务维护帧,通过AC与其他可访问的相邻AP进行通信;再例如,当WLAN中没有AC,AP直接连接到以太网络时,所述第一AP可以通过传输控制协议和网际协议协议(Transmission Control Protocol/Internet Protocol,简称TCP/IP)与其他可访问的相邻AP通信,通过TCP/IP协议封装服务维护帧。本发明对所述第一AP与其他可访问的相邻AP之间的通信方式不作限定;为方便叙述,以下统一用转发描述所述第一AP与其他可访问的相邻AP之间的通信。

图9是本发明实施例提供的另一种服务注册的方法流程图,本实施例在图8所示服务注册的方法基础上,对本发明技术方案作进一步描述;如图9所示,所述方法包括:

901、第一接入点AP接收来自第一站点STA的服务通告请求帧;所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

具体参见801,在此不再赘述。

902、所述第一AP根据所述第一STA的设备地址,获取所述第一STA的设备标识;

具体参见802,在此不再赘述。

903、所述第一AP根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识;

具体参见803,在此不再赘述。

904、所述第一AP在所述第一AP的服务信息表中记录所述至少一个服务申明项对应的服务信息;所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务申明项;

具体参见804,在此不再赘述。

905、所述第一AP向所述第一STA返回服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称;

具体参见805,在此不再赘述。

进一步的,在本发明实施例中,STA可以通过服务维护帧取消已申明的服务,AP可以通过服务维护帧来更新可访问AP上的服务信息表。

所述服务维护帧中包括维护状态和维护细节。所述维护状态包括第一维护状态和第二维护状态,其中第一维护状态用于AP上新增了STA申明的服务时,向其他可访问的相邻AP更新注册服务;第二维护状态用于STA需要取消已经申明的服务,向AP取消服务,以及可选的AP向其他可访问的相邻AP更新取消服务。所述维护状态可以用字符串表示,例如Register表示第一维护状态,Cancel表示第一维护状态;也可以用数字表示,例如1表示第一维护状态,0表示第一维护状态,本发明对此不作限定。

906、所述第一AP向第二AP发送第一服务维护帧,所述第一服务维护帧中包括维护状态和维护细节,以使所述第二AP更新所述第二AP的服务信息表;

所述第一服务维护帧中维护状态为第一维护状态,维护细节包括所述至少一个服务申明项中每个服务申明项对应的服务信息。

具体的,所述第一AP向第二AP发送第一服务维护帧,所述第一服务维护帧中包括:

第一维护状态;和

所述至少一个服务申明项中每个服务申明项对应的服务信息,包括:

对应所述第一服务申明项的第一服务信息;

以及,如果还有第二服务申明项,对应所述第二服务申明项的第二服务信息;以此类推。

所述第二AP为所述第一AP可访问的相邻AP,本实施例中,所述第二AP可以是所述第一AP通过无线方式可以访问,还可以是所述第一AP通过有线方式可以访问,只要所述第一AP与所述第二AP之间可以进行通信即可,本发明对此不作限定。

所述第二AP在收到所述第一服务维护帧之后,更新所述第二AP的服务信息表,具体包括:所述第二AP根据所述第一服务维护帧中的第一维护状态,在所述第二AP的服务信息表中记录所述第一服务维护帧中的服务信息。通过906,所述第一AP可以将所述第一STA申明的服务信息扩散到网络中更大范围,并代理所述第一STA为更大范围的用户提供服务查找功能。

进一步的,可以取消所述第一STA在所述第一AP上已申明的全部或部分服务,所述方法还包括:

907、所述第一AP感知所述第一STA脱离;或者,所述第一AP接收来自所述第一STA的第二服务维护帧,所述第二服务维护帧包括维护状态和维护细节;

所述第二服务维护帧中的维护状态为第二维护状态,维护细节包括至少一个服务维护项;

所述服务维护项中包括BSSID,设备标识和服务标识,可以标识所述STA已申明的一个服务。

当所述第一AP感知所述第一STA脱离时,所述第一AP可以取消所述第一STA在所述第一AP上已申明的全部服务;具体的,将所述第一AP的服务信息表中,所述第一STA申明的所有服务信息删除。进一步可选的,所述第一AP可以向第二AP发送服务维护帧,以使所述第二AP更新所述第二AP的服务信息表。第一AP感知第一STA脱离可以参考现有实现方式,本发明对此不作限定。

所述第一STA也可以向所述第一AP发送维护状态为第二维护状态的服务维护帧取消在所述第一AP上已申明的全部或部分的服务。

所述第一AP接收到的来自所述第一STA的第二服务维护帧中的服务维护项中的BSSID和设备标识可以为空,则所述第一AP可以,

先获取BSSID,即所述第一AP的MAC地址和设备标识,即所述第一STA的设备标识;所述第一AP可以根据所述第一STA的设备地址查询所述第一AP的地址对应关系表,获得所述第一STA的设备标识;

再根据获取到的BSSID和设备标识,以及所述至少一个服务维护项中每个服务维护项的服务标识,得到所述第一STA需要取消的所有服务,然后进行后续处理。

可选的,所述第一AP接收到的来自所述第一STA的第二服务维护帧中的服务维护项可以为空,表示所述第一STA要取消已申明的全部服务。

可选的,为了防止恶意STA攻击,所述第一AP收到所述第二服务维护帧时,如果服务维护项中包含了BSSID和设备标识,所述第一AP首先验证所述BSSID是否为所述第一AP的MAC地址,所述设备标识是否与所述第一STA的设备地址对应,如果都一致再进行后续处理;否则可以认为是恶意攻击,不做处理。

908、所述第一AP更新所述第一AP的服务信息表;

当所述第一AP感知所述第一STA脱离时,所述第一AP将所述第一AP的服务信息表中,所述第一STA申明的所有服务信息删除;具体包括:

所述第一AP获取BSSID,即所述第一AP的MAC地址和设备标识,即所述第一STA的设备标识;所述第一AP可以根据所述第一STA的设备地址查询所述第一AP的地址对应关系表,获得所述第一STA的设备标识;再根据所述第一AP的MAC地址和所述第一STA的设备标识,更新所述第一AP的服务信息表,具体的,所述第一AP根据所述第一AP的MAC地址和所述第一STA的设备标识,查询所述第一AP的服务信息表,将所述第一AP的服务信息表中,BSSID与所述第一AP的MAC地址相同,且设备标识与所述第一STA的设备标识相同的所有服务信息删除。

然后,所述第一AP可以将分配给所述第一STA的设备标识回收进设备标识池。

当所述第一AP收到来自所述第一STA的第二服务维护帧时,所述第一AP根据所述第二服务维护帧,更新所述第一AP的服务信息表;具体包括:

所述第一AP根据所述第二服务维护帧中的第一服务维护项,查询所述第一AP的服务信息表;

当存在匹配的第一服务信息时,即,所述第一AP的服务信息表中的第一服务信息的BSSID与所述第二服务维护帧中的第一服务维护项的BSSID相同,且所述第一服务信息的服务标识与所述第二服务维护帧中的第一服务维护项的服务标识相同,且所述第一服务信息的设备标识与所述第二服务维护帧中的第一服务维护项的设备标识相同时,在所述第一AP的服务信息表中删除所述第一服务信息;

如果所述第二服务维护帧中还有第二服务维护项,则根据所述第二服务维护帧中的第二服务维护项查询所述第一AP的服务信息表,当存在匹配的第二服务信息时,则在所述第一AP的服务信息表中删除所述第二服务信息,以此类推。

进一步可选的,所述第二服务维护帧中的服务维护项中的BSSID和设备标识可以为空,则所述第一AP可以,先获取BSSID,即所述第一AP的MAC地址和设备标识,即所述第一STA的设备标识;所述第一AP可以根据所述第一STA的设备地址查询所述第一AP的地址对应关系表,获得所述第一STA的设备标识;相应地,

所述第一AP根据所述第一AP的MAC地址和所述第一STA的设备标识,以及所述第二服务维护帧中的第一服务维护项的服务标识,查询所述第一AP的服务信息表;

当存在匹配的第一服务信息时,即,所述第一服务信息的BSSID与所述第一AP的MAC地址相同,且所述第一服务信息的服务标识与所述第二服务维护帧中的第一服务维护项的服务标识相同,且所述第一服务信息的设备标识与所述第一STA的设备标识相同时,在所述第一AP的服务信息表中删除所述第一服务信息;

如果所述第二服务维护帧中还有第二服务维护项,则根据所述第一AP的MAC地址和所述第一STA的设备标识,以及所述第二服务维护帧中的第二服务维护项的服务标识查询所述第一AP的服务信息表,当存在匹配的第二服务信息时,则在所述第一AP的服务信息表中删除所述第二服务信息,以此类推。

如果所述第一STA取消了已申明的所有服务,所述第一AP可以将分配给所述第一STA的设备标识回收进设备标识池;如果所述第一STA取消的服务标识对应的服务,没有其他STA可提供了,所述第一AP可以将该服务标识回收进服务标识池。

909、向所述第二AP转发所述第二服务维护帧,以使所述第二AP更新所述第二AP的服务信息表。

当所述第一AP感知所述第一STA脱离时,所述第一AP可以向第二AP发送第二服务维护帧,其中包括BSSID,即所述第一AP的MAC地址和所述第一STA的设备标识,以使所述第二AP更新所述第二AP的服务信息表;

如果所述第一AP接收到的来自所述第一STA的第二服务维护帧中的服务维护项中的BSSID和设备标识为空,则所述第一AP用获取的BSSID,即所述第一AP的MAC地址和所述第一STA的设备标识更新第二服务维护帧,再向所述第二AP转发更新后的第二服务维护帧。

所述第二AP收到所述第二服务维护帧之后,执行的动作可以参见所述第一AP在908中的动作,在此不再赘述。

需要说明的是,如果所述第一AP存在可访问的相邻AP,则所述第一AP执行上述906和909更新可访问的相邻AP的服务信息表;如果所述第一AP不存在可访问的相邻AP,则无需执行上述906和909。

示例性的,所述服务维护帧可以如图29所示;其中长度(length)可变,用于表示所述服务维护帧中行为细节的长度。

进一步可选的,所述第一AP还可以维护其他可访问的相邻AP扩散的服务信息,如图9a所示,所述方法还可以包括:

910:所述第一AP接收来自第二AP的第三服务维护帧,所述第三服务维护帧包括维护状态和维护细节;

所述第三服务维护帧中的维护状态可以为第一维护状态,相应地,维护细节中包括至少一条服务信息;

所述第三服务维护帧中的维护状态也可以为第二维护状态,相应地,维护细节中包括至少一个服务维护项;所述服务维护项中包括BSSID,设备标识和服务标识。

911:所述第一AP根据所述第三服务维护帧,更新所述第一AP的服务信息表。

当所述第三服务维护帧中的维护状态为第一维护状态时,则所述第一AP在所述第一AP的服务信息表中记录所述第三服务维护帧中包括的所述至少一条服务信息;

当所述第三服务维护帧中的维护状态为第二维护状态时,所述第一AP根据所述第三服务维护帧中的第一服务维护项,查询所述第一AP的服务信息表;当存在匹配的第一服务信息时,即,所述第一AP的服务信息表中的第一服务信息的BSSID与所述第三服务维护帧中的第一服务维护项的BSSID相同,且所述第一服务信息的服务标识与所述第三服务维护帧中的第一服务维护项的服务标识相同,且所述第一服务信息的设备标识与所述第三服务维护帧中的第一服务维护项的设备标识相同时,在所述第一AP的服务信息表中删除所述第一服务信息;如果所述第三服务维护帧中还有第二服务申明项,则根据所述第三服务维护帧中的第二服务维护项查询所述第一AP的服务信息表,当存在匹配的第二服务信息时,则在所述第一AP的服务信息表中删除所述第二服务信息,以此类推。

本领域普通技术人员可以理解的是,910和911可以在901~909任一步之前或之后执行。

采用本发明实施例提供的服务注册的方法,关联到第一AP的第一STA可以在第一AP上申明或取消服务信息,第一STA无需周期性监听信道上其他设备的查找请求,降低了第一STA的资源开销和能耗;第一AP还可以将在所述第一AP上申明的设备信息和服务信息扩散到网络中可访问的相邻AP,也可以接收可访问的相邻AP提供的服务信息,从而可以提供更大范围的服务发现功能,向用户提供更丰富的服务信息,满足用户根据服务需求选择网络的需求。

图10是本发明实施例提供的又一种服务注册的方法流程图,本实施例中,所述服务注册的方法由第一站点STA实施,如图10所示,所述方法包括:

1001、第一站点STA向第一接入点AP发送服务通告请求帧,所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

所述第一STA关联到所述第一AP后,可以向所述第一AP发送服务通告请求帧,向所述第一AP注册服务。

所述第一STA的设备地址通常为所述第一STA的MAC地址,所述第一STA的设备地址通常携带在所述服务通告请求帧的头部。

所述服务通告请求帧中还可以包括所述第一STA的设备名称,设备标识,设备能力,设备描述等。所述第一STA的设备名称可以是例如,打印机、电视机等,也可以是例如1号咖啡馆,2号票务中心等;所述第一STA的设备能力可以是例如支持Wi-Fi直连,支持蓝牙等,还可进一步在设备能力中携带能力参数,例如支持Wi-Fi直连时,携带直连距离。例如,

设备名称设备能力

打印机 支持Wi-Fi直连,直连距离为L;

2号票务中心 可上门服务;

所述服务申明项除了包括服务名称,还可以包括服务描述。例如,上述2号票务中心,可提供如下服务:

当所述第一STA可以提供多项服务时,所述第一STA可以一次向所述第一AP注册多项服务,则所述服务通告请求帧中包括多个服务申明项;所述第一STA也可以分多次向所述第一AP注册服务,即每次向所述第一AP注册一项服务,注册多次,则每次所述服务通告请求帧中仅包括一个服务申明项。

可选的,如果所述第一STA在向所述第一AP注册服务,获得所述第一STA的设备标识后,所述第一STA可以在后续向所述第一AP注册服务时,在所述服务通告请求帧中携带所述第一STA的设备标识。

示例性的,所述服务通告请求帧可以如图27所示;其中,长度(length)可变,用于表示所述服务通告请求帧中行为细节的长度。

1002、接收来自所述第一AP的服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项中每个服务申明项对应的服务申明应答项;所述服务申明应答项中包括服务标识和服务名称。

具体的,所述至少一个服务申明项中每个服务申明项对应的服务申明应答项包括:

对应所述第一服务申明项的第一申明应答项,所述第一申明应答项包括所述第一服务申明项的服务名称和第一服务标识;

以及,如果还有第二服务申明项,对应所述第二服务申明项的第二申明应答项,所述第二申明应答项包括第二服务申明项的服务名称和第二服务标识;以此类推。

可选地,所述服务通告响应帧中还可以包括所述第一STA的设备名称。

示例性的,所述服务通告响应帧可以如图28所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

可选的,所述第一STA收到所述服务通告响应帧后,根据所述服务通告响应帧,记录所述所述第一STA的设备标识,以及每个服务申明应答项。所述第一STA可以维护一张服务申明信息表,所述服务申明信息表中包括BSSID,设备标识,服务名称和服务标识等。

可选地,当所述第一STA要取消已申明的服务时,所述第一STA可以向所述第一AP发送服务维护帧,取消全部或部分已申明的服务。如图10a所示,所述方法还包括:

1003、所述第一STA向所述第一AP发送第二服务维护帧,所述第二服务维护帧中包括维护状态和维护细节;

具体的,所述第一STA向所述第一AP发送第二服务维护帧,所述第二服务维护帧中的维护状态为第二维护状态,所述维护细节包括至少一个服务维护项,以使所述第一AP根据所述第二服务维护帧,更新所述第一AP的服务信息表,并可选地向第二AP转发所述第二服务维护帧;所述服务维护项包括BSSID,设备标识和服务标识。

可选地,所述第一STA删除所述服务申明信息表中所述至少一个服务维护项中每个服务维护项对应的服务申明信息。

可选的,所述服务维护项中的BSSID和设备标识可以为空。

可选的,第二服务维护帧中的服务维护项可以为空,表示所述第一STA要取消已申明的全部服务。

可选地,当所述第一STA脱离所述第一AP时,所述第一STA删除所述服务申明信息表中的所有服务申明信息。采用本发明实施例提供的服务注册的方法,关联到第一AP的第一STA可以在第一AP上申明或取消自己的设备信息和服务信息,通过第一AP为用户提供服务信息,满足用户根据服务需求选择网络的需求;第一STA也无需周期性监听信道上其他设备的查找请求,降低了第一STA的资源开销和能耗。

图11是本发明实施例提供的一种用于服务注册的第一接入点AP结构示意图,用于实现本发明图8和图9所示的服务注册的方法。如图11所示,所述第一AP包括接收单元1101,第一获取单元1102,第二获取单元1103,记录单元1104和发送单元1105。其中,

所述接收单元1101,用于接收来自第一站点STA的服务通告请求帧;所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称。

所述第一STA的设备地址通常为所述第一STA的媒体访问控制MAC地址,所述第一STA的设备地址通常携带在所述服务通告请求帧的头部。

所述服务通告请求帧中还可以包括所述第一STA的设备名称,设备能力,设备描述等。所述第一STA的设备名称可以是例如,打印机、电视机等,也可以是例如1号咖啡馆,2号票务中心等;所述第一STA的设备能力可以是例如支持Wi-Fi直连,支持蓝牙等,还可进一步在设备能力中携带能力参数,例如支持Wi-Fi直连时,携带直连距离。例如,

设备名称设备能力

打印机 支持Wi-Fi直连,直连距离为L;

2号票务中心 可上门服务;

所述服务申明项除了包括服务名称,还可以包括服务描述。例如,上述2号票务中心,可提供如下服务:

示例性的,所述服务通告请求帧可以如图27所示;其中,长度(length)可变,用于表示所述服务通告请求帧中行为细节的长度。

所述第一获取单元1102,用于获取所述第一STA的设备标识。

所述第一获取单元1102具体用于,

根据所述第一STA的设备地址,查询所述第一AP的地址对应关系表,所述地址对应关系表中包括设备地址与设备标识的对应关系,

当所述第一AP的地址对应关系表中一条已有地址对应关系的设备地址与所述第一STA的设备地址相同时,获取所述已有地址对应关系的设备标识,即为所述第一STA的设备标识;

当所述第一AP的地址对应关系表中任意一条地址对应关系的设备地址与所述第一STA的设备地址都不相同时,从设备标识池中分配所述第一STA的设备标识,并在所述地址对应关系表中记录所述第一STA的设备地址与设备标识的地址对应关系。

例如,设备地址为MAC1的2号票务中心的设备标识DI-1,设备地址为MAC2的打印机1的设备标识为DI-2。

可选的,所述服务通告请求帧中还包括所述第一STA的设备标识,所述第一获取单元具体还用于:从所述服务通告请求帧中获取所述第一STA的设备标识。

所述第二获取单元1103,用于根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识。

所述第二获取单元1103具体用于,

所述第一AP根据所述至少一个服务申明项中第一服务申明项的服务名称,查询所述第一AP的服务信息表;

当所述第一AP的服务信息表中任意一条服务信息的服务名称与所述第一服务申明项的服务名称均不相同时,根据所述第一服务申明项的服务名称从服务标识池中分配第一服务标识;

当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述第一服务申明项的服务名称相同,且所述已有服务信息的BSSID与所述第一AP的MAC地址相同时,获取所述已有服务信息的服务标识,即为所述第一服务申明项的服务名称对应的第一服务标识。

如果还有第二服务申明项,则获取第二服务申明项的服务名称对应的第二服务标识,以此类推。

举例来说,所述服务通告请求帧中包括两个服务申明项,第一个服务申明项的服务名称为“飞机票预售”,第二个服务申明项的服务名称为“火车票预售”,则所述第一AP根据“飞机票预售”获取服务标识SI-1,再根据“火车票预售”获取服务标识SI-2。

所述记录单元1104,用于在所述第一AP的服务信息表中记录所述至少一个服务申明项对应的服务信息;所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务申明项。

所述记录单元1104具体用于,

获取第一服务信息,所述第一服务信息包括所述AP的MAC地址,所述第一STA的设备标识,所述第一服务标识和所述第一服务申明项;

在所述第一AP的服务信息表中记录所述第一服务信息;

如果还有第二服务申明项,则获取第二服务信息,并在所述第一AP的服务信息表中记录所述第二服务信息;以此类推。

可选的,服务信息还可以包括所述第一STA的设备名称,所述第一STA的设备能力,网络访问策略。网络访问策略可以表示AP所在BSS内的访问策略,也可以是针对某项具体服务的访问策略,例如,AP1在公共网络,AP2在私有网络,AP1根据AP2的访问策略可以访问AP2所在的私有网络。

示例性的,所述服务信息可以如图23所示;其中,BSSID为申明该服务信息的STA所关联AP的MAC地址;例如本实施中,为所述第一AP的MAC地址。

所述发送单元1105,用于向所述第一STA返回服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项对应的服务申明应答项;所述服务申明应答项包括服务标识和服务名称。

所述至少一个服务申明项中每个服务申明项对应的服务申明应答项,包括:

对应所述第一服务申明项的第一申明应答项,所述第一申明应答项包括所述第一服务申明项的服务名称和所述第一服务标识;

以及,如果还有第二服务申明项,对应所述第二服务申明项的第二申明应答项,所述第二申明应答项包括第二服务申明项的服务名称和所述第二服务标识;以此类推。

可选地,所述服务通告响应帧中还可以包括所述第一STA的设备名称。

示例性的,所述服务通告响应帧可以如图28所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

进一步可选的,如图11a所示,所述第一AP还包括维护单元1106。

所述维护单元1106,用于生成第一服务维护帧,所述第一服务维护帧中包括第一维护状态和所述至少一个服务申明项中每个服务申明项对应的服务信息;

所述发送单元1105,还用于向第二AP发送所述第一服务维护帧,以使所述第二AP更新所述第二AP的服务信息表;

所述服务信息包括BSSID,设备标识,服务标识和服务申明项。

所述第二AP为所述第一AP可访问的相邻AP。

所述至少一个服务申明项中每个服务申明项对应的服务信息,包括:

对应所述第一服务申明项的第一服务信息;

以及,如果还有第二服务申明项,对应所述第二服务申明项的第二服务信息;以此类推。

所述接收单元1101,还用于接收来自所述第一STA的第二服务维护帧,所述第二服务维护帧中包括第二维护状态和至少一个服务维护项;所述服务维护项包括BSSID,设备标识和服务标识。

相应地,所述维护单元1106,还用于根据所述第二服务维护帧,更新所述第一AP的服务信息表。

如果所述第一AP存在可访问的相邻AP,所述维护单元1106,还用于向所述第二AP转发所述第二服务维护帧,以使所述第二AP更新所述第二AP的服务信息表。

所述维护单元1106具体用于,根据所述至少一个服务维护项中第一服务维护项,查询所述第一AP的服务信息表;当存在匹配的第一服务信息时,即,所述第一AP的服务信息表中的第一服务信息的BSSID与所述第一服务维护项的BSSID相同,且所述第一服务信息的服务标识与所述第一服务维护项的服务标识相同,且所述第一服务信息的设备标识与所述第一服务维护项的设备标识相同时,在所述第一AP的服务信息表中删除所述第一服务信息。

如果还有第二服务申明项,则根据第二服务维护项查询所述第一AP的服务信息表,当存在匹配的第二服务信息时,则在所述第一AP的服务信息表中删除所述第二服务信息,以此类推。

进一步可选的,所述第二服务维护帧中的服务维护项中的BSSID和设备标识可以为空,则所述维护单元1106还用于获取BSSID,即所述第一AP的MAC地址和设备标识,即所述第一STA的设备标识;并根据所述第一AP的MAC地址和所述第一STA的设备标识,以及所述第二服务维护帧中的第一服务维护项的服务标识,查询所述第一AP的服务信息表;当存在匹配的第一服务信息时,即,所述第一服务信息的BSSID与所述第一AP的MAC地址相同,且所述第一服务信息的服务标识与所述第二服务维护帧中的第一服务维护项的服务标识相同,且所述第一服务信息的设备标识与所述第一STA的设备标识相同时,在所述第一AP的服务信息表中删除所述第一服务信息;如果所述第二服务维护帧中还有第二服务维护项,则根据所述第一AP的MAC地址和所述第一STA的设备标识,以及所述第二服务维护帧中的第二服务维护项的服务标识查询所述第一AP的服务信息表,当存在匹配的第二服务信息时,则在所述第一AP的服务信息表中删除所述第二服务信息,以此类推。

所述维护单元1106,还用于当感知所述第一STA脱离时,取消所述第一STA在所述第一AP上已申明的全部服务。具体地,所述维护单元1106用于获取BSSID,即所述第一AP的MAC地址和设备标识,即所述第一STA的设备标识,并根据所述第一AP的MAC地址和所述第一STA的设备标识,查询所述第一AP的服务信息表;将所述第一AP的服务信息表中,BSSID与所述第一AP的MAC地址相同,且设备标识与所述第一STA的设备标识相同的所有服务信息删除。

所述维护单元1106可以通过所述第一获取单元402获得所述第一STA的设备标识。

所述接收单元1101,还用于接收来自第二AP的第三服务维护帧,所述第三服务维护帧包括维护状态和维护细节

相应地,所述维护单元1106,还用于根据所述第三服务维护帧,更新所述第一AP的服务信息表。

所述第三服务维护帧中的维护状态可以为第一维护状态,相应地,维护细节中包括至少一条服务信息;

所述第三服务维护帧中的维护状态也可以为第二维护状态,相应地,所述维护细节中包括至少一个服务维护项。

所述维护单元1106,具体用于

当所述第三服务维护帧中的维护状态为第一维护状态时,则所述AP在所述第一AP的服务信息表中记录所述第三服务维护帧中包括的所述至少一条服务信息;

当所述第三服务维护帧中的维护状态为第二维护状态时,所述第一AP根据所述第三服务维护帧中的第一服务维护项,查询所述第一AP的服务信息表;当存在匹配的第一服务信息时,即,所述第一AP的服务信息表中的第一服务信息的BSSID与所述第三服务维护帧中的第一服务维护项的BSSID相同,且所述第一服务信息的服务标识与所述第三服务维护帧中的第一服务维护项的服务标识相同,且所述第一服务信息的设备标识与所述第三服务维护帧中的第一服务维护项的设备标识相同时,在所述第一AP的服务信息表中删除所述第一服务信息;如果所述第三服务维护帧中还有第二服务申明项,则根据所述第三服务维护帧中的第二服务维护项查询所述第一AP的服务信息表,当存在匹配的第二服务信息时,则在所述第一AP的服务信息表中删除所述第二服务信息,以此类推。

示例性的,所述服务维护帧可以如图29所示;其中长度(length)可变,用于表示所述服务维护帧中行为细节的长度。

可选地,所述第一AP还包括标识回收单元,用于回收设备标识和服务标识。

所述标识回收单元具体用于当所述第一STA取消了已申明的所有服务,将分配给所述第一STA的设备标识回收进设备标识池;当所述第一STA取消的服务标识对应的服务,没有其他STA提供时,将所述服务标识回收进服务标识池。

需要说明的是,所述第一AP上还包括天线,用于发送和接收无线信号;所述天线与所述接收单元1101和所述发送单元1105相连。

图12是本发明实施例提供的一种用于服务注册的第一站点STA结构示意图,用于实现本发明图10所示的服务注册的方法。如图12所示,所述第一STA包括发送单元1201,接收单元1202和记录单元1203。其中,

所述发送单元1201,用于向第一AP发送服务通告请求帧,所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项,所述服务申明项包括服务名称;

所述第一STA关联到所述第一AP后,可以向所述第一AP发送服务通告请求帧,向所述第一AP注册服务。

所述第一STA的设备地址通常为所述第一STA的媒体访问控制MAC地址,所述第一STA的设备地址通常携带在所述服务通告请求帧的头部。

所述服务通告请求帧中还可以包括所述第一STA的设备名称,设备能力,设备描述等。所述第一STA的设备名称可以是例如,打印机、电视机等,也可以是例如1号咖啡馆,2号票务中心等;所述第一STA的设备能力可以是例如支持Wi-Fi直连,支持蓝牙等,还可进一步在设备能力中携带能力参数,例如支持Wi-Fi直连时,携带直连距离。例如,

设备名称设备能力

打印机 支持Wi-Fi直连,直连距离为L;

2号票务中心 可上门服务;

所述服务申明项除了包括服务名称,还可以包括服务描述。例如,上述2号票务中心,可提供如下服务:

当所述第一STA可以提供多项服务时,所述第一STA可以一次向所述第一AP注册多项服务,则所述服务通告请求帧中包括多个服务申明项;所述第一STA也可以分多次向所述第一AP注册服务,即每次向所述第一AP注册一项服务,注册多次,则每次所述服务通告请求帧中仅包括一个服务申明项。

示例性的,所述服务通告请求帧可以如图27所示;其中,长度(length)可变,用于表示所述服务通告请求帧中行为细节的长度。

所述接收单元1202,用于接收来自所述第一AP的服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项中每个服务申明项对应的服务申明应答项;所述服务申明应答项中包括服务标识和服务名称;

所述至少一个服务申明项中每个服务申明项对应的服务申明应答项包括:

对应所述第一服务申明项的第一申明应答项,所述第一申明应答项包括所述第一服务申明项的服务名称和第一服务标识;

以及,如果还有第二服务申明项,对应所述第二服务申明项的第二申明应答项,所述第二申明应答项包括第二服务申明项的服务名称和第二服务标识;以此类推。

可选地,所述服务通告响应帧中还可以包括所述第一STA的设备名称。

示例性的,所述服务通告响应帧可以如图28所示;其中,长度(length)可变,用于表示所述服务通告响应帧中行为细节的长度。

所述记录单元1203,用于根据所述服务通告响应帧,记录所述第一STA的设备标识,以及每个服务申明应答项。

所述第一STA可以维护一张服务申明信息表,所述服务申明信息表中包括BSSID,设备标识,服务名称和服务标识等。

所述记录单元1203,具体用于在所述服务申明信息表中记录BSSID,即所述第一AP的MAC地址,所述第一STA的设备标识,所述第一申明应答项的服务名称和第一服务标识;如果还有第二服务申明项,则记录BSSID,即所述第一AP的MAC地址,所述第一STA的设备标识,所述第二申明应答项的服务名称和第二服务标识;以此类推。

进一步可选的,如图12a所示,所述第一STA还包括信息维护单元1204;

所述发送单元1201,还用于向所述第一AP发送第二服务维护帧,所述第二服务维护帧中包括维护状态和维护细节;

具体的,所述发送单元1201,用于向所述第一AP发送第二服务维护帧,所述第二服务维护帧中的维护状态为第二维护状态,所述维护细节包括至少一个服务维护项,以使所述第一AP根据所述第二服务维护帧,更新所述第一AP的服务信息表,并可选地向第AP转发所述第二服务维护帧;所述服务维护项包括BSSID,设备标识和服务标识。

所述服务维护项中的BSSID和设备标识可以为空。

所述信息维护单元1204,用于删除所述服务申明信息表中要取消的服务申明信息;具体的,用于删除所述第二服务维护帧中所述至少一个服务维护项中每个服务维护项对应的服务申明信息。

可选地,所述信息维护单元1204,还用于当所述第一STA脱离所述第一AP时,删除所述服务申明信息表中的所有服务申明信息。

需要说明的是,所述第一STA上还包括天线,用于发送和接收无线信号;所述天线与所述接收单元1201和所述发送单元1202相连。

图13是本发明实施例提供的一种服务注册系统结构示意图,所述系统包括如本发明中图11所示的第一接入点AP和如本发明图12所示的第一站点STA;

可选的,如图13a所示,所述系统还可以包括第二AP;相应地,所述第一AP如本发明图11a所示,所述第一STA如图12a所示。

所述第二AP可以是所述第一AP通过无线方式可达,还可以是所述第一AP通过有线方式可达,只要所述第一AP与所述第二AP之间可以进行通信即可,本发明对此不作限定。

需要说明的是,所述第一AP可能存在多个可访问的相邻AP,即如图13a所示,存在多个第二AP,图13a中示意性地示出两个第二AP。

图14为本发明实施例提供的一种服务注册的信息交互示意图,基于图13a所示的系统,进一步介绍本发明实施例提供的服务注册的方法。如图14所示,所述服务注册的方法包括:

1401、第一站点STA向第一接入点AP发送服务通告请求帧;所述服务通告请求帧中包括所述第一STA的设备地址和至少一个服务申明项;

具体可以参见本发明实施例中的1001,在此不再赘述。

1402、所述第一AP收到所述服务通告请求帧后,获取设备标识和服务标识,并在所述第一AP的服务信息表中记录对应的服务信息;

具体的,所述第一AP根据所述第一STA的设备地址,获取所述第一STA的设备标识;根据所述至少一个服务申明项,获取所述至少一个服务申明项中每个服务申明项对应的服务标识;并在所述第一AP的服务信息表中记录所述至少一个服务申明项对应的服务信息,所述服务信息包括基本服务集标识BSSID,设备标识,服务标识和服务申明项。

具体可以参见本发明实施例中的802和803,在此不再赘述。

1403、所述第一AP向所述第一STA返回服务通告响应帧,所述服务通告响应帧中包括所述第一STA的设备标识和所述至少一个服务申明项对应的服务申明应答项;

所述服务申明应答项包括服务标识和服务名称;

具体可以参见本发明实施例中的805,在此不再赘述。

1404、所述第一AP向第二AP发送第一服务维护帧,所述第一服务维护帧中包括维护状态和维护细节;所述第一服务维护帧中的维护状态为第一维护状态,维护细节包括所述至少一个服务申明项中每个服务申明项对应的服务信息,以使所述第二AP更新所述第二AP的服务信息表。

具体可以参见本发明实施例中的906,在此不再赘述。

1405、所述第二AP收到所述第一服务维护帧之后,根据所述第一服务维护帧更新所述第二AP的服务信息表;

所述第二AP根据所述第一服务维护帧的维护状态为第一维护状态,在所述第二AP的服务信息表记录所述第一服务维护帧中包括的服务信息。

具体可以参见本发明实施例中的906,在此不再赘述。

1406、当所述第一STA要取消已申明的服务时,所述第一STA向所述第一AP发送第二服务维护帧;

所述第二服务维护帧中包括第二维护状态和至少一个服务维护项;所述服务维护项包括BSSID,设备标识和服务标识,可以标识所述第一STA已申明的一个服务。

具体可以参见本发明实施例中的1003,在此不再赘述。

1407、所述第一AP收到所述第二服务维护帧之后,更新所述第一AP的服务信息表;

具体的,所述第一AP根据所述第二服务维护帧中的服务维护项更新所述第一AP的服务信息表.

具体可以参见本发明实施例中的908,在此不再赘述。

1408、所述第一AP向第二AP转发所述第二服务维护帧;

具体可以参见本发明实施例中的909,在此不再赘述。

1409、所述第二AP收到所述第二服务维护帧之后,更新所述第二AP的服务信息表。

所述第二AP更新所述第二AP的服务信息表的过程与所述第一AP更新所述第一AP的服务信息表的过程相同,具体可以参见本发明实施例中的908,所述第一AP更新所述第一AP的服务信息表的过程。

采用本发明实施例提供的服务注册的技术方案,关联到第一AP的第一STA可以在第一AP上申明或取消服务信息,第一STA无需周期性监听信道上其他设备的查找请求,降低了第一STA的资源开销和能耗;第一AP还可以将在所述第一AP上申明的设备信息和服务信息扩散到网络中可访问的相邻AP,也可以接收可访问的相邻AP提供的服务信息,从而可以提供更大范围的服务发现功能,向用户提供更丰富的服务信息,满足用户根据服务需求选择网络的需求。同时,AP上维护的服务信息,是经过验证关联到AP上的STA发布的,保证了安全性,从而保证了服务的可靠性。

基于本发明实施例提供的服务注册和发现的技术方案,本发明还可以通过AP代理发现提供直连服务的STA,并管理STA之间的直连通信。需要说明的是,本发明实施例中以设备能力为“支持WiFi直连”为例,但是对于通过其他技术,例如蓝牙的直连服务也同样适用,本发明对此不作限定。

需要说明的是,本发明实施例中,STA可以通过包含服务请求状态的直连服务请求帧,向AP请求获取直连服务,或者关闭直连服务。其中,服务请求状态包括第一请求状态和第二请求状态,例如第一请求状态可称为使能(enable),第二请求状态可称为去使能(disable)。当直连服务请求帧中的服务请求状态为第一请求状态时,表示STA请求获取直连服务;当服务请求状态为第二请求状态时,表示STA请求关闭直连服务。服务请求状态可以用字符串标识,例如enable表示第一请求状态,disable表示第二请求状态;也可以用数字标识,例如用1表示第一请求状态,用0表示第二请求状态;本发明对此不作限定。

图15是本发明实施例提供的一种管理直连服务的方法流程图,本实施例中,所述管理直连服务的方法由第一接入点AP实施。如图15所示,所述方法包括:

1501、第一接入点AP接收第一站点STA发送的直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;

当所述服务请求状态为第一请求状态时,所述第一AP执行1502~1507;当所述服务请求状态为第二请求状态时,所述第一AP执行1508~1509。

所述直连服务请求帧中还可以包括设备名称。

示例性的,所述直连服务请求帧可以如图30所示;其中,长度(length)可变,用于表示直连服务请求帧中行为细节的长度。

本实施例中,所述第一STA在扫描获得可用AP及其服务目录信息后,所述第一STA可以根据服务目录信息,向所述第一AP请求直连服务。

所述直连服务请求帧中的服务名称,也可以是服务标识,例如当服务标识全局统一分配时,就可以根据服务标识请求获取直连服务。本发明实施例中,以服务名称为例进行说明,但并不作为对本发明的限定。

1502、所述第一AP获取第二STA的设备地址;

具体的,

所述第一AP根据所述直连服务请求帧中的服务名称查询所述AP的服务信息表;

当所述第一AP的服务信息表中任意一条服务信息的服务名称与所述第一直连服务请求帧中的服务名称均不相同时,直连请求失败,结束;

当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有服务信息中设备能力为支持Wi-Fi直连时,获取所述已有服务信息中的设备标识,即为所述第二STA的设备标识;否则,直连请求失败,结束;

根据所述第二STA的设备标识,获取所述第二STA的设备地址。

可选的,当所述直连服务请求帧中包括设备名称时,也可以获取所述直连服务请求帧中的设备标识,即为所述第二STA的设备标识;根据所述第二STA的设备标识,获取所述第二STA的设备地址。

由于直连服务对设备之间的距离有要求,因此只由关联到所述第一AP的STA提供。所述第一AP查询所述AP的服务信息表时,还需同时满足BSSID与所述第一AP的MAC地址相同。

所述第一AP根据所述第二STA的设备标识获取所述第二STA的设备地址具体包括:,所述第一AP根据所述第二STA的设备标识查询所述第一AP的地址对应关系表,获取所述第二STA的设备地址;所述地址对应关系表中包括设备地址与设备标识的对应关系。

1503、所述第一AP根据所述第二STA的设备地址,探测所述第一STA与第二STA之间的距离;

1504、当所述第一STA与所述第二STA之间的距离大于直连距离时,直连请求失败,结束;

1505、当所述第一STA与所述第二STA之间的距离不大于直连距离时,所述第一AP查询所述第一AP的直连服务管理表;

所述直连距离可以为所述第一AP上预先设定的距离,也可以是所述第二STA申明的设备能力中携带的,本发明对此不作限定。

所述直连服务管理表中包括服务名称和组地址,还可以包括信道信息,组标识,服务标识和设备名称;

示例性的,所述直连服务管理表可以如图31所示。

所述组地址通常是提供直连服务的STA的设备地址。

1506、当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第二STA的设备地址相同时,所述第一AP向所述第一STA发送直连服务响应帧;

所述直连服务响应帧中包括所述已有直连服务管理信息中的组地址,还可以包括组标识和信道信息。

1507、否则,所述第一AP在所述第一AP的直连服务管理表中记录第一直连服务管理信息,所述第一直连服务管理信息包括所述直连服务请求帧中的服务名称和所述第二STA的设备地址;并向所述第一STA发送直连服务响应帧;

所述直连服务响应帧中包括所述第二STA的设备地址。

所述第一AP向所述第一STA发送所述直连服务响应帧,用于建议所述第一STA与所述第二STA建立直连服务;但是所述第一STA是否与所述第二STA建立直连服务,可以由所述第一STA决定,或所述第一STA与所述第二STA协商确定。

所述第一AP还可以为所述第一STA分配用于直连通信的无线信道,所述第一直连服务管理信息还可以包括第一信道信息,所述第一信道信息包括所述第一AP为所述第一STA分配的用于直连通信的无线信道的信息,所述第一直连服务响应帧中还包括所述第一信道信息。

所述第一AP还可以为所述直连服务请求分配第一组标识,所述第一组标识与所述第二STA的设备地址对应;相应地,所述第一直连服务管理信息还可以包括所述第一组标识,所述直连服务响应帧中还包括所述第一组标识。

需要说明的是,一个组标识可以对应多个提供相同服务的STA的设备地址。

示例性的,所述直连服务响应帧可以如图32所示;其中,长度(length)可变,用于表示直连服务响应帧中行为细节的长度。

由于无线信号间容易相互干扰,无线信道资源有限,由第一AP分配直连服务的信道信息,可以避免STA间的直连通信与所述第一AP所在信道的信号相互干扰,保证通信质量;第一AP也可以不分配信道,STA间的直连通信可以在特定的信道上进行,例如目前WiFi直连技术使用的2.4G信道1、6或11;或者也可以由STA间协商选择信道建立直连服务,本发明对此不作限定。

当所述第一STA收到所述直连服务响应帧后,就可以从所述直连服务响应帧中获取组地址和信道信息,在对应的信道上与所述第二STA建立直连,继而进行数据交互。

需要说明的是,具体实现中,可以有多种方式区分所述直连服务响应帧表示请求成功还是失败。可以在所述直连服务响应帧中还包括状态标识,例如状态标识为0表示失败,状态标识为1表示成功;也可以通过所述直连服务响应帧中的组标识来表示,例如组标识为-1时表示失败;也可以在直连服务响应帧中,长度为0表示失败,即组标识,组地址和信道信息均为空;本发明实施例对此不作限定。

当所述服务请求状态为第二请求状态时,所述第一AP执行如下1508~1509:

1508、所述第一AP根据所述直连服务请求帧查询所述第一AP的直连服务管理表;

所述直连服务管理表中包括服务名称和组地址,还可以包括信道信息,组标识和设备标识;

所述组地址通常是提供直连服务的STA的设备地址。

1509、当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述第二直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第一STA的设备地址相同时,将所述已有直连服务管理信息从所述第一AP的直连服务管理表中删除;

可选的,所述第一AP可以将所述已有直连服务管理信息中组标识回收进组标识池,将所述已有直连服务管理信息中信道信息对应的信道资源回收。

可选的,所述第一AP在更新了直连服务管理表之后,可以向所述第一STA返回一个应答消息,例如ACK(affirmative acknowledgement,肯定应答)消息或NACK(negative acknowledgment,否定回答)消息。

图16是本发明实施例提供的一种获取直连服务的方法流程图,本实施例中,所述获取直连服务的方法由第一站点STA实施。如图16所示,所述方法包括:

1601、第一站点STA向接入点第一AP发送直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;

所述直连服务请求帧中的服务名称,也可以是服务标识,例如当服务标识全局唯一时,就可以根据服务标识请求获取直连服务。本发明实施例中,以服务名称为例进行说明,但并不作为对本发明的限定。

当所述直连服务请求帧中的服务请求状态为第一请求状态时,用于所述第一STA向所述第一AP请求获取直连服务。所述第一STA可以在扫描获得可用AP及其服务目录信息后,根据服务标识,向所述第一AP请求直连服务。

可选的,当所述第一STA在通过如本发明中图5所示的服务发现的方法获取到服务信息后,期望与支持Wi-Fi直连的某个设备建立直连服务时,所述第一STA可以在直连服务请求帧中进一步携带该设备的设备名称或者设备标识,向所述第一AP请求与该设备建立直连服务。本发明实施例中,以设备名称为例进行说明,但并不作为对本发明的限定。

当所述直连服务请求帧中的服务请求状态为第二请求状态时,用于所述第一STA向所述第一AP请求关闭所述第一STA提供的某个直连服务,使所述第一AP删除相关的直连服务管理信息,收回组标识和信道资源,具体可以参见如图15所示的管理直连服务的方法,在此不再赘述。当支持WiFi直连功能的STA不处于工作状态时,通过关闭WiFi直连服务,可以降低设备的资源消耗,让出可信道资源。可选的,当所述服务请求状态为第二请求状态时,所述第一STA接收所述第一AP返回的应答消息,例如ACK(affirmative acknowledgement,肯定应答)消息或NACK(negative acknowledgment,否定回答)消息。

示例性的,所述直连服务请求帧可以如图30所示;其中,长度(length)可变,用于表示直连服务请求帧中行为细节的长度。

当所述服务请求状态为第一请求状态时,执行1602~1603。

1602、所述第一STA接收所述第一AP返回的直连服务响应帧;

所述直连服务响应帧中包括组地址,还可以包括组标识和信道信息;

所述组地址通常为提供直连服务的STA的设备地址。

示例性的,所述直连服务响应帧可以如图32所示;其中,长度(length)可变,用于表示直连服务响应帧中行为细节的长度。

1603、当根据所述直连服务响应帧确定直连请求成功时,所述第一STA与所述直连服务响应帧中组地址对应的第二STA建立直连服务;

可选地,如果所述直连服务响应帧中还包括信道信息,所述第一STA与所述直连服务响应帧中组地址对应的第二STA建立直连服务具体为:所述第一STA在所述信道信息对应的无线信道上与所述第二STA建立直连服务。

由于无线信号间容易相互干扰,无线信道资源有限,由第一AP分配直连服务的信道信息,可以避免STA间的直连通信与所述第一AP所在信道的信号相互干扰,保证通信质量;第一AP也可以不分配信道,STA间的直连通信可以在特定的信道上进行,例如目前WiFi直连技术使用的2.4G信道1、6或11;或者也可以由STA间协商选择信道建立直连服务,本发明对此不作限定。

所述第一STA与所述第二STA建立直连后,可以进行数据交互。

当根据所述直连服务响应帧确定直连请求失败时,结束;

需要说明的是,具体实现中,可以有多种方式区分所述直连服务响应帧表示请求成功还是失败。可以在所述直连服务响应帧中还包括状态标识,例如状态标识为0表示失败,状态标识为1表示成功;也可以通过所述直连服务响应帧中的组标识来表示,例如组标识为-1时表示失败;也可以直连服务响应帧中,长度为0表示失败,即组标识,组地址和信道信息均为空;本发明实施例对此不作限定。

如图17所示,是本发明实施例提供的一种用于获取直连服务的第一站点STA结构示意图,所述第一STA包括发送单元1701,接收单元1702和服务建立单元1703。其中,

所述发送单元1701,用于向第一接入点AP发送直连服务请求帧,所述直连服务请求帧中包括服务请求状态和服务名称;

所述直连服务请求帧中的服务名称,也可以是服务标识,例如当服务标识全局唯一时,就可以根据服务标识请求获取直连服务。本发明实施例中,以服务名称为例进行说明,但并不作为对本发明的限定。

示例性的,所述直连服务请求帧可以如图30所示;其中,长度(length)可变,用于表示直连服务请求帧中行为细节的长度。

当所述服务请求状态为第一请求状态,所述第一STA在扫描获得可用AP及其服务目录信息后,可以根据服务标识,向所述第一AP请求直连服务。可选的,所述直连服务请求帧中还可以包括设备名称或设备标识。当所述第一STA在通过如本发明图5所示的服务发现的方法获取到服务信息后,期望与支持Wi-Fi直连的某个设备建立直连服务时,所述第一STA可以在直连服务请求帧中进一步携带该设备的设备名称或设备标识,向所述第一AP请求与该设备建立直连服务。

所述接收单元1702,用于接收所述第一AP返回的直连服务响应帧;所述直连服务响应帧中包括组地址,还可以包括组标识和信道信息;

所述组地址通常为提供直连服务的STA的设备地址。

由于无线信号间容易相互干扰,无线信道资源有限,由第一AP分配直连服务的信道信息,可以避免STA间的直连通信与所述第一AP所在信道的信号相互干扰,保证通信质量;第一AP也可以不分配信道,STA间的直连通信可以在特定的信道上进行,例如目前WiFi直连技术使用的2.4G信道1、6或11;或者也可以由STA间协商选择信道建立直连服务,本发明对此不作限定。

示例性的,所述直连服务响应帧可以如图32所示;其中,长度(length)可变,用于表示直连服务响应帧中行为细节的长度。

所述服务建立单元1703,用于当根据所述直连服务响应帧确定直连请求成功时,与所述直连服务响应帧中组地址对应的第二STA建立直连服务;

可选地,如果所述直连服务响应帧中还包括信道信息,所述服务建立单元1703具体用于在所述信道信息对应的无线信道上与所述第二STA建立直连服务。

可选地,所述第一STA还包括判断单元,用于根据所述直连服务响应帧判断直连服务请求是否成功。

具体实现中,可以有多种方式来判读直连服务请求是否成功。可以在所述直连服务响应帧中还包括状态标识,例如状态标识为0表示失败,状态标识为1表示成功;也可以通过所述直连服务响应帧中的组标识来表示,例如组标识为-1时表示失败;也可以在如图所示的直连服务响应帧中,长度为0表示失败,即组标识,组地址和信道信息均为空;本发明实施例对此不作限定。

当所述服务请求状态为第二请求状态时,用于所述第一STA向所述第一AP请求关闭所述第一STA提供的某个直连服务,使所述第一AP删除相关的直连服务管理信息,收回组标识和信道资源,具体可以参见如图15所示的管理直连服务的方法,在此不再赘述。当支持WiFi直连功能的STA不处于工作状态时,通过关闭WiFi直连服务,可以降低设备的资源消耗,让出信道资源。

可选地,当所述服务请求状态为第二请求状态时,所述接收单元1702,还用于接收所述AP返回的应答消息,例如ACK或NACK。

需要说明的是,所述第一STA上还包括天线,用于发送和接收无线信号;所述天线与所述发送单元1701和所述接收单元1702相连。

如图18所示,是本发明实施例提供的一种用于管理直连服务的第一接入点AP结构示意图,所述第一AP包括接收单元1801,第一获取单元1802,探测单元1803,查询单元1804,第二获取单元1805和发送单元1806。其中,

所述接收单元1801,用于接收第一站点STA的直连服务请求帧;

所述直连服务请求帧中包括服务请求状态和服务名称;还可以包括设备名称。

所述直连服务请求帧中的服务名称和设备名称,也可以是服务标识和设备标识;例如当服务标识和设备标识是全局统一分配时,就可以根据服务标识和设备标识请求获取直连服务。本发明实施例中,以服务名称和设备名称为例进行说明,但并不作为对本发明的限定。

示例性的,所述直连服务请求帧可以如图30所示;其中,长度(length)可变,用于表示直连服务请求帧中行为细节的长度。

所述第一获取单元1802,用于当所述服务请求状态为第一请求状态时,获取第二STA的设备地址;

所述第一获取单元1802具体用于,根据所述直连服务请求帧中的服务名称查询所述第一AP的服务信息表;当所述第一AP的服务信息表中存在一条已有服务信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有服务信息中设备能力为支持Wi-Fi直连时,获取所述已有服务信息中的设备标识,即为所述第二STA的设备标识;根据所述第二STA的设备标识,获取所述第二STA的设备地址;

或者,当所述直连服务请求帧中包括设备名称时,获取所述直连服务请求帧中的设备标识,即为所述第二STA的设备标识;根据所述第二STA的设备标识,获取所述第二STA的设备地址。由于直连服务对设备之间的距离有要求,因此只由关联到所述第一AP的STA提供。所述第一AP在查询所述第一AP的服务信息表时,均要同时满足BSSID与所述第一AP的MAC地址相同。

所述第一获取单元1802,根据所述第二STA的设备标识获取所述第二STA的设备地址具体包括:根据所述第二STA的设备标识查询所述第一AP的地址对应关系表,获取所述第二STA的设备地址;所述地址对应关系表中包括设备地址与设备标识的对应关系。

所述探测单元1803,用于根据所述第一获取单元1802获取的所述第二STA的设备地址,探测所述第一STA与所述第二STA之间的距离;

所述查询单元1804,用于查询所述第一AP的直连服务管理表;

示例性的,所述直连服务管理表可以如图31所示。

所述查询单元1804,具体用于当服务请求状态为第一请求状态时,当所述探测单元1803探测到的所述第一STA与所述第二STA之间的距离不大于直连距离时,根据所述直连服务请求帧中的服务名称和所述第二STA的设备地址查询所述第一AP的直连服务管理表;

所述直连服务管理表中包括服务名称和组地址,还可以包括信道信息,组标识,服务标识和设备名称;

所述组地址通常是提供直连服务的STA的设备地址。

所述直连距离可以为所述第一AP上预先设定的距离,也可以是所述第二STA申明的设备能力中携带的,本发明对此不作限定。

所述第二获取单元1805,用于为所述第一STA的直连服务请求,获取直连服务管理信息;具体用于,

当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第二STA的设备地址相同时,获取所述已有直连服务管理信息;

当所述第一AP的直连服务管理表中任意一条直连服务管理信息的服务名称和组地址与所述直连服务请求帧中的服务名称和所述第二STA的设备地址不同时,获取第一直连服务管理信息,并在所述第一AP的直连服务管理表中记录所述第一直连服务管理信息;所述第一直连服务管理信息包括所述直连服务请求帧中的服务名称和所述第二STA的设备地址;所述直连服务管理信息还可以包括第一组标识和第一信道信息。

所述第一信道信息包括所述第一AP为所述第一STA分配的用于直连通信的无线信道的信息;所述第一组标识与所述第二STA的设备地址对应,是所述第一AP为所述第一STA的直连服务请求分配组标识;需要说明的是,一个组标识可以对应多个提供相同服务的STA的设备地址。

所述发送单元1806,用于根据所述获取单元1805获取的直连服务管理信息,向所述第一STA发送直连服务响应帧;

所述直连服务响应帧中包括组地址,还可以包括组标识和信道信息。

由于无线信号间容易相互干扰,无线信道资源有限,由第一AP分配直连服务的信道信息,可以避免STA间的直连通信与所述第一AP所在信道的信号相互干扰,保证通信质量;第一AP也可以不分配信道,STA间的直连通信可以在特定的信道上进行,例如目前WiFi直连技术使用的2.4G信道1、6或11;或者也可以由STA间协商选择信道建立直连服务,本发明对此不作限定。

示例性的,所述直连服务响应帧可以如图32所示;其中,长度(length)可变,用于表示直连服务响应帧中行为细节的长度。

可选的,如图18a所示,所述第一AP还包括直连管理单元1807;

可选的,所述查询单元1804,具体还用于当服务请求状态为第二请求状态时,根据所述直连服务请求帧中的服务名称和所述第一STA的设备地址,查询所述AP的直连服务管理表;

所述直连管理单元1807,用于当所述直连服务请求帧中的服务请求状态为第二请求状态时,当所述第一AP的直连服务管理表中存在一条已有直连服务管理信息的服务名称与所述直连服务请求帧中的服务名称相同,且所述已有直连服务管理信息的组地址与所述第一STA的设备地址相同时,将所述已有直连服务管理信息从所述第一AP的直连服务管理表中删除。

可选的,所述直连管理单元1807,还用于将所述已有直连服务管理信息中组标识回收进组标识池,将所述已有直连服务管理信息中信道信息对应的信道资源回收。

可选的,所述发送单元1806,还用于在所述直连管理单元1807更新所述直连服务管理表之后,向所述第一STA返回应答消息,例如ACK或NACK。

需要说明的是,所述第一AP上还包括天线,用于发送和接收无线信号;所述天线与所述接收单元1801和所述发送单元1806相连。

如图19所示,本发明实施例提供了一种直连服务管理系统,所述系统包括如本发明图17所示的第一站点STA和如本发明图18所示的第一接入点AP;所述第一STA和所述第一AP交互查找可以提供直连服务的第二STA,并通过所述第一AP管理直连服务;所述系统还包括所述第二STA,所述第一STA和所述第二STA可以进行直连通信。

通过本发明实施例提供的获取和管理直连服务的技术方案,AP可以代理发现提供直连服务的STA,并管理STA之间的直连通信,STA无需周期性监听信道上其他设备的请求,降低了STA的资源开销和能耗。

采用本发明实施例提供的技术方案,第一AP可以代理第一STA查找网络中的服务信息,并且所述第一AP可以通过本地查找和远程查找,为用户提供更大范围、更丰富的服务信息,满足用户根据服务需求选择网络的需求;并且AP可以代理发现提供直连服务的STA,并管理STA之间的直连通信,这样网络中提供服务的STA也无需周期性监听信道上其他设备的查找请求,降低了提供服务的STA的资源开销和能耗;此外,第一STA无论在关联前还是关联后,都可以通过第一AP获取服务信息,可以避免第一STA关联到一个AP后,发现没有所需服务再脱离,导致在不同AP间进行频繁的关联和脱离的问题,保证用户可以更快速准确地接入可提供服务的网络,提高了用户体验。同时,关联到第一AP的第一STA可以在第一AP上申明或取消服务信息,第一STA无需周期性监听信道上其他设备的查找请求,第一AP还可以将在所述第一AP上申明的设备信息和服务信息扩散到网络中可访问的相邻AP,也可以接收可访问的相邻AP提供的服务信息,从而可以向用户提供更丰富的服务信息;最后,由于AP上维护的服务信息,是经过验证关联到AP上的STA发布的,保证了安全性,从而保证了服务的可靠性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质可以是ROM/RAM,磁盘或光碟等。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1