短距离通信的方法和设备
技术领域
本发明涉及通信领域,尤其涉及通信领域中的无线局域网中短距离通信的方法和设备。
背景技术
在短距离通信技术,例如传统的无线局域网(Wireless Local Area Networks,简称“WLAN”)组网中,WLAN设备可以分成2类,即接入点(Access Point,简称为“AP”)和站点(Station,简称为“STA”)。这种分类在笔记本、手机等移动终端作为主要STA时,不会有什么问题。因为所有这些设备都有共同特点,通过AP相互访问或者访问互联网。
随着无线保真(Wireless Fidelity,简称“WIFI”)物联网的兴起,WLAN中出现了多种业务类型的设备,例如冰箱、洗衣机、空调、电饭煲等物联网设备。这些设备大部分时间保持关联但是数据业务很少,主要是通过WLAN上报状态信息。由于大部分时间在睡眠,因此易受到网络中其他设备的数据的影响而增加功耗。
另外,在运动数码摄像机(Digital Video,简称“DV”)场景下,虽然DV作为AP的角色,但是它并不能提供访问互联网的服务。如果手机侧依然发送大量的超文本传输协议(Hyper Text Transfer Protocol,简称“HTTP”)或域名系统(Domain Name System,简称“DNS”)数据,不但增加了手机本身的功耗,也增加了DV的功耗。
发明内容
有鉴于此,本发明实施例提供了一种短距离通信的方法和设备,降低了短距离通信设备的功耗。
第一方面,提供了一种短距离通信的方法,所述方法包括:第一通信设备的短距离通信芯片通过接收机,接收第二通信设备的第一端口发送的报文;所述短距离通信芯片根据所述第一端口的信息,确定所述第一端口是否 属于端口集合,所述端口集合为允许向所述第一通信设备发送报文的端口的集合;如果所述短距离通信芯片确定所述第一端口不属于所述端口集合,所述短距离通信芯片禁止向所述第一通信设备的主芯片发送所述报文;如果所述短距离通信芯片确定所述第一端口属于所述端口集合,所述短距离通信芯片向所述主芯片发送所述报文。
因此,短距离通信设备的短距离通信芯片通过对从对端设备接收到的报文进行过滤,避免了对主芯片的不必要的唤醒,从而节省了短距离通信设备的主芯片的功耗开销。
应理解,本发明实施例中的端口集合,可以包括允许执行报文发送或接收的端口号,或者包括不允许执行报文发送或者接收的端口号。也就是说,该端口集合中的端口也可以是被禁止的端口,当通信设备判断发送报文或待接收报文的端口在该端口集合中时,则禁止执行发送报文或接收报文,而如果发送报文或待接收报文的端口不在该端口集合中时,则可以向对端设备发送报文或者接收对端设备发送的报文。本发明对此不作任何限定。
作为另一个实施例,所述方法还包括:所述短距离通信芯片向所述第二通信设备发送所述端口集合的信息。
可选地,以WLAN设备为例,第一通信设备的WIFI芯片可以在BEACON、PROBREQ、PROBRSP、ASSOCREQ或ASSOCRSP等协议帧中增加厂商自定义IE,其中该IE中包括端口集合的信息,例如能够支持的端口的端口号等,第一通信设备通过向与第一通信设备进行通信的第二通信设备发送这些协议帧,通知第二通信设备该端口集合的信息。
作为另一个实施例,所述端口集合中包括用户数据报协议UDP端口和/或传输控制协议TCP端口。
作为另一个实施例,所述短距离通信包括无线局域网WLAN通信,如果所述第一通信设备为站点STA侧设备,所述第二通信设备为接入点AP侧设备,所述方法还包括:如果所述第一通信设备在连续的n个第一投递传输指示信息DTIM周期内没有接收到所述第二通信设备发送的报文,所述第一通信设备根据第二DTIM周期执行所述第二通信设备的调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
作为另一个实施例,所述方法还包括:当所述第一通信设备接收到所述 第二通信设备发送的报文后,所述第一通信设备根据所述第一DTIM周期执行所述第二通信设备的调度。
作为另一个实施例,所述短距离通信包括WLAN通信,如果所述第一通信设备为AP侧设备,所述第二通信设备为STA侧设备,所述方法还包括:如果所述第一通信设备在连续的n个DTIM周期内没有向所述第二通信设备发送的报文,所述第一通信设备根据第二DTIM周期对所述第二通信设备进行调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
作为另一个实施例,所述方法还包括:当所述第一通信设备向所述第二通信设备发送报文后,所述第一通信设备根据所述第一DTIM周期对所述第二通信设备进行调度。
举例来说,假设DTIM周期的初始长度为1,当STA侧设备进入休眠状态后,AP侧设备可以动态调整DTIM周期的长度,例如,如果在连续10个DTIM周期内AP侧设备都没有要发送给STA侧设备的报文时,DTIM周期可以加1,也就是变为DTIM=2。如果之后STA侧设备醒来接收AP侧设备为其缓存的报文时,DTIM周期可以重新恢复初始值1。
因此,由于AP侧设备能够动态地调整DTIM周期,从而对于同一个接入设备就减少了被唤醒的次数,能够有更多的休眠时间,节省了功耗,而且WLAN网络下不同的接入设备还可以根据自己的需求设置不同的DTIM周期,避免了不必要的功率开销,而且不必担心ARP报文丢失导致的被叫业务时延。
应注意,调整后的DTIM周期应保证数据的实时性和密钥更新成功。如果DTIM周期长度过大则容易发生掉线。例如可以保证调整后的Beacon周期×DTIM周期的时间长度不大于500ms,其中Beacon周期=100ms,DTIM周期=5。
还应注意,这里还要保证AP侧设备的代理ARP(Proxy Arp)特性,即在保证ARP广播帧不丢失的情况下对DTIM周期进行调整。
第二方面,提供了一种短距离通信的方法,所述方法包括:第一通信设备的短距离通信芯片接收所述第一通信设备的主芯片发送的报文;所述短距离通信芯片根据第一端口的信息,确定所述第一端口是否属于端口集合,所述第一端口为待接收所述报文的第二通信设备的端口,所述端口集合为允许 向所述第二通信设备发送报文的端口的集合;如果所述短距离通信芯片确定所述第一端口不属于所述端口集合,所述短距离通信芯片禁止向所述第二通信设备发送所述报文;如果所述短距离通信芯片确定所述第一端口属于所述端口集合,所述短距离通信芯片向所述第二通信设备发送所述报文。
这样,短距离通信设备的短距离通信芯片通过对从主芯片接收到的报文进行过滤,避免了与对端设备之间不必要的交互,从而节省了短距离通信设备的短距离通信芯片和对端设备的功耗开销。
应理解,本发明实施例中的端口集合,可以包括允许执行报文发送或接收的端口号,或者包括不允许执行报文发送或者接收的端口号。也就是说,该端口集合中的端口也可以是被禁止的端口,当短距离通信设备判断发送报文或待接收报文的端口在该端口集合中时,则禁止执行发送报文或接收报文,而如果发送报文或待接收报文的端口不在该端口集合中时,则可以向对端设备发送报文或者接收对端设备发送的报文。本发明对此不作任何限定。
作为另一个实施例,在所述短距离通信芯片根据所述第一端口的信息,确定所述第一端口是否属于端口集合之前,所述方法还包括:所述短距离通信芯片通过接收机,接收所述第二通信设备发送的所述端口集合的信息。
可选地,以WLAN设备为例,该第一通信设备的WIFI芯片可以接收所述第二通信设备发送的承载在BEACON、PROBREQ、PROBRSP、ASSOCREQ或ASSOCRSP等协议帧中的该端口集合的信息。
作为另一个实施例,所述端口集合包括用户数据报协议UDP端口和/或传输控制协议TCP端口。
作为另一个实施例,所述短距离通信包括无线局域网WLAN通信,如果所述第一通信设备为接入点AP侧设备,所述第二通信设备为站点STA侧设备,所述方法还包括:如果所述第一通信设备在连续的n个第一投递传输指示信息DTIM周期内没有向所述第二通信设备发送报文,所述第一通信设备根据第二DTIM周期对所述第二通信设备进行调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
作为另一个实施例,所述方法还包括:当所述第一通信设备向所述第二通信设备发送报文后,所述第一通信设备根据所述第一DTIM周期对所述第二通信设备进行调度。
作为另一个实施例,所述短距离通信包括WLAN通信,如果所述第一 通信设备为STA侧设备,所述第二通信设备为AP侧设备,所述方法还包括:如果所述第一通信设备在连续的n个第一投递传输指示信息DTIM周期内没有接收到所述第二通信设备发送的报文,所述第一通信设备根据第二DTIM周期执行所述第二通信设备的调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
作为另一个实施例,所述方法还包括:当所述第一通信设备接收到所述第二通信设备发送的报文后,所述第一通信设备根据所述第一DTIM周期执行所述第二通信设备的调度。
举例来说,假设DTIM周期的初始长度为1,当STA侧设备进入休眠状态后,AP侧设备可以动态调整DTIM周期的长度,例如,如果在连续10个DTIM周期内AP侧设备都没有要发送给STA侧设备的报文时,DTIM周期可以加1,也就是变为DTIM=2。如果之后STA侧设备醒来接收AP侧设备为其缓存的报文时,DTIM周期可以重新恢复初始值1。
因此,由于AP侧设备能够动态地调整DTIM周期,从而对于同一个接入设备就减少了被唤醒的次数,能够有更多的休眠时间,节省了功耗,而且WLAN网络下不同的接入设备还可以根据自己的需求设置不同的DTIM周期,避免了不必要的功率开销,而且不必担心ARP报文丢失导致的被叫业务时延。
应注意,调整后的DTIM周期应保证数据的实时性和密钥更新成功。如果DTIM周期长度过大则容易发生掉线。例如可以保证调整后的Beacon周期×DTIM周期的时间长度不大于500ms,其中Beacon周期=100ms,DTIM周期=5。
还应注意,这里还要保证AP侧设备的代理ARP(Proxy Arp)特性,即在保证ARP广播帧不丢失的情况下对DTIM周期进行调整。
第三方面,提供了一种短距离通信设备,所述短距离通信可以执行第一方面或第一方面的任一方面的可能实现方式中的方法。所述通信设备为第一通信设备,所述第一通信设备包括接收机、短距离通信芯片和主芯片;所述接收机,用于接收第二通信设备的第一端口发送的报文;所述短距离通信芯片用于:根据所述第一端口的信息,确定所述第一端口是否属于端口集合,所述端口集合为允许向所述第一通信设备发送报文的端口的集合;在确定所述第一端口不属于所述端口集合的情况下,禁止向所述主芯片发送所述报 文;在确定所述第一端口属于所述端口集合的情况下,向所述主芯片发送所述报文。
第四方面,提供了一种短距离通信设备,所述短距离通信可以执行第二方面或第二方面的任一方面的可能实现方式中的方法。所述通信设备为第一通信设备,所述第一通信设备包括短距离通信芯片、主芯片和发射机;所述短距离通信芯片用于:接收所述主芯片发送的报文;根据第一端口的信息,确定所述第一端口是否属于端口集合,所述第一端口为待接收所述报文的第二通信设备的端口,所述端口集合为允许向所述第二通信设备发送报文的端口的集合;在确定所述第一端口不属于所述端口集合情况下,禁止通过所述发射机向所述第二通信设备发送所述报文;在确定所述第一端口属于所述端口集合的情况下,通过所述发射机向所述第二通信设备发送所述报文。
第五方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第六方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的指令。
基于上述技术方案,在短距离通信下进行报文传输的过程中,短距离通信设备通过对与其进行短距离传输的对端端口进行识别和过滤,以减少不必要的报文传输,减少对主芯片的不必要的唤醒,从而降低了设备的功耗。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种应用场景的示意性架构图。
图2是本发明实施例的运动DV应用场景下的示意图。
图3(a)是现有技术中的STA在睡眠状态和唤醒状态下的报文接收的示意图。
图3(b)是现有技术中的存在DTIM周期和Beacon周期时的报文接收 的示意图。
图4是本发明实施例的短距离通信的方法的流程交互图。
图5是本发明实施例的短距离通信的方法的示意图。
图6是本发明另一实施例的短距离通信的方法的流程交互图。
图7是本发明另一实施例的短距离通信的方法的示意图。
图8是本发明另一实施例的短距离通信的方法的流程交互图。
图9是本发明另一个实施例的短距离通信的方法的示意图。
图10是本发明另一个实施例的短距离通信的方法的流程交互图。
图11是本发明另一个实施例的短距离通信的方法的示意图。
图12是本发明实施例的动态调整DTIM周期的示意图。
图13是本发明实施例的短距离通信设备的结构框图。
图14是本发明实施例的短距离通信设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是本发明实施例的一种应用场景的示意图。图1中示出了物联网WLAN组网下的接入点和站点。其中,接入点可以与一个或多个站点链接配对,与该一个或多个站点之间进行报文传输。如图1所示,包括AP 10和STA 20、STA 21、STA 22、STA 23、STA 24、STA 25、STA26、STA 27、STA 28、STA 29、STA 291。其中,接入点AP 100可以是路由器,能够为站点提供访问互联网的服务。站点STA 20至STA 291可以分别为手机、上网本、笔记本电脑、U盘、平板电脑、摄像头、交换机、冰箱、洗衣机、空调、电饭煲。站点STA 20至STA 291和接入点AP 10之间可以通过WLAN进行报文传输,实现数据交互。这些站点不仅包括传统的联网设备笔记本、手机等,还包括新业务类型的设备冰箱、洗衣机、空调、电饭煲等。
图2是本发明实施例的运动DV应用场景下的示意图。图2中示出了户外移动WLAN组网下的接入点和站点。其中,接入点可以与一个或多个站点链接配对,与该一个或多个站点之间进行报文传输。如图2所示,包括 AP 30、STA 40和STA 41。其中,接入点AP 30可以是运动DV,站点STA 40可以是平板电脑,STA 41可以是手机。在运动DV场景下,虽然AP 30作为接入点,但是它并不能提供访问互联网的服务。
以上两种组网的特点是:1、作为STA的设备,不一定就是为了访问互联网;2、作为AP的设备,不一定是能够提供访问互联网的服务的路由器。从功率消耗的角度考虑,传统的AP和STA的二元结构在物联网WLAN组网时,对于AP侧的路由器来说,由于要满足传统手机、笔记本等设备性能。很难兼顾物联网设备的低功耗需求。而且,对于物联网设备来说,对功耗的优化往往只是进行强制睡眠,这种优化效果存在着丢失关键帧且响应不及时的问题。而在运动DV场景中,DV虽然作为接入点,但并不提供互联网(Internet)服务。如果手机依然发送Internet探测消息,对DV及手机的功耗都是不小的开销。另外,手机关联路由器的场景中,当手机进入深睡(主处理器睡眠)后,手机并不提供任何服务。WIFI芯片按照路由器的投递传输指示消息(Delivery Traffic Indication Message,简称“DTIM”)周期醒来接收缓存广播帧和单播帧过于频繁,影响功耗。
现有技术中为了解决WLAN设备功耗较高的问题,采用STA侧强制定期睡眠的策略,这种策略的好处是简单,但坏处是丢包概率大大增加,且被叫业务反应变慢。图3(a)是现有技术中的STA在睡眠状态和唤醒状态下的报文接收的示意图。如图3(a)所示,当AP侧的设备发送地址解析协议(Address Resolution Protocol,简称“ARP”)报文等广播帧的报文时,如果STA处于睡眠状态,那么将无法接收到该ARP报文,发生丢包事件。只有当AP侧的设备发送ARP报文时STA恰好处于唤醒状态,才能够保证该ARP报文的正确接收。
另一种方式是在AP侧增加DTIM周期及信标(Beacon)周期。图3(b)是现有技术中的存在DTIM周期和Beacon周期时的报文接收的示意图。这种策略的好处是可以增加接入设备的睡眠时间,但坏处是所有接入设备的反应就变慢了。
投递传输指示消息DTIM用于AP通知STA其存在缓冲的组播或广播数据,它是依据DTIM周期所设定的频率形成的周期性Beacon。Beacon是AP用于同步无线网络的数据包。普通的传输指示消息存在于每一个Beacon中,用于通告存在缓冲的单播数据包。每经过一个DTIM,AP将发送一次组播 或广播数据。DTIM周期决定了隔多少个Beacon周期AP会发送一次缓存的广播帧,并且这个周期值会包含在每个Beacon帧里面。依据DTIM周期,DTIM会包含在Beacon帧里以通知STA设备AP是否有缓冲的广播或组播数据要发送。在省电模式下,STA设备可能会选择沉睡一个或多个Beacon周期,当收到含有DTIM的Beacon帧时会唤醒。例如,当DTIM周期=1,表示每隔一个Beacon的时间间隔,AP将发送所有暂时缓存的报文。当DTIM周期=2,省电模式下的STA设备将会在收到含有DTIM的Beacon帧的时候唤醒。DTIM周期=0,表示AP将要发送所有暂时缓存的报文。DTIM周期越大,STA设备休眠的时间越久,因此越能省电。该DTIM周期的长度设置的过小则起不到节电作用,但是设置的太大则影响广播或组播通讯的质量。一般是通过测试调整以达到节电作用而又不影响应用。
为此,本发明实施例提出一种无线局域网中数据传输的方法,通过进行WLAN设备识别以及业务端口注册,以减少不必要的报文传输,从而降低WLAN设备的功耗。
应理解,本发明实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(Global System of Mobile communication,简称“GSM”)系统、码分多址(Code DivisionMultiple Access,简称“CDMA”)系统、宽带码分多址(Wideband Code Division MultipleAccess,简称“WCDMA”)系统、通用分组无线业务(General Packet Radio Service,简称“GPRS”)、长期演进(Long Term Evolution,简称“LTE”)系统、通用移动通信系统(Universal Mobile Telecommunication System,简称“UMTS”)等目前的通信系统以及未来的5G系统。
本发明实施例中只是以WLAN中通信设备之间的短距离通信过程为例进行说明,但本发明并不限于此。其中,短距离通信设备可以包括WLAN设备,短距离通信设备中的用于进行通信的短距离通信芯片可以包括WIFI芯片。本发明实施例中的站点STA侧设备和接入点AP侧设备也可以适用于WLAN网络之外的其他通信网络。
还应理解,这里的AP可以为WLAN AP,用户设备可以通过该AP与因特网连接。该AP可以是单独的AP,该AP受接入控制器(Access Controller,简称“AC”)的控制与管理,也可以是包括AC功能的AP,还可以是与基站构成一种特定的基站,本发明并不限定。
还应理解,这里的STA可以为穿戴式设备、手机、平板、笔记本电脑、冰箱、洗衣机、空调、电饭煲等设备中的至少一种,AP也可以是穿戴式设备、手机、平板、笔记本电脑、冰箱、洗衣机、空调、电饭煲等设备中的至少一种,本发明对此不做任何限制。需要说明的是,AP为能够以移动通信技术接入Internet的电子装置,例如,可以通过长期演进(Long TermEvolution,简称“LTE”),通用移动通信系统(Universal Mobile TelecommunicationsSystem,简称“UMTS”),5G等移动通信技术接入核心网,再由核心网连接Internet。进一步地,STA侧通过WLAN接入AP,并经由所述主设备连接Internet,以使得STA可以通过Internet,与网络侧的伺服器进行通信,其中,STA通过WLAN接入AP,可以包括通过WIFI、蓝牙、近场通信(Near Field Communication,简称“NFC”)、红外等技术接入AP。应当知道,本发明实施例中,STA需要WLAN下的通信功能,但并非局限于仅支持WLAN下的通信功能的电子设备。
还应理解,通过WLAN接入AP的可以是一个STA也可以是多个STA。当STA与AP连接成功后,AP就可以与STA之间进行报文传输。下面以AP 10和STA 20为例进描述。
图4是本发明实施例的短距离通信的方法的流程交互图。图4中示出了AP 10和STA20,其中,图4示出的AP 10中包括主芯片101和WIFI芯片102,STA 20中包括WIFI芯片202。如图4所示,该无线局域网中数据传输的具体流程包括:
401,AP 10的主芯片101向AP 10的WIFI芯片102发送报文。
具体地,当AP 10在无线局域网络中向STA 20发送报文时,AP 10的主芯片101会向AP 10的WIFI芯片102发送该报文,以便于AP 10的WIFI芯片102芯片通过无线局域网络向STA 20发送该报文。
可选地,该报文中包括待接收该报文的STA 20的端口的信息,例如该报文中包括目的端口号。
402,AP 10的WIFI芯片102确定接收该报文的STA 20的端口是否属于端口集合。
具体地,当AP 10的WIFI芯片102接收到主芯片101的发送的报文时,确定将要接收该报文的STA 20的端口是否属于端口集合。该端口集合中的端口包括能够接收该报文的STA 20的端口。如果AP 10的WIFI芯片102确 定待接收该报文的STA 20的端口属于该端口集合,那么AP 10的WIFI芯片102将主芯片101发送的该报文通过该端口发送给STA 20,即执行403;如果AP 10的WIFI芯片102确定待接收该报文的STA 20的端口不属于该端口集合,那么AP 10的WIFI芯片102不会将主芯片101发送的该报文发送给STA 20,即执行404。
403,AP 10的WIFI芯片102向STA 20的WIFI芯片202发送报文。
404,AP 10的WIFI芯片102释放报文。
具体而言,如果AP 10的WIFI芯片102确定待接收该报文的STA 20的端口属于该端口集合,AP 10的WIFI芯片102会向STA 20的WIFI芯片202发送该报文;如果AP 10的WIFI芯片102确定待接收该报文的STA 20的端口不属于该端口集合,AP 10的WIFI芯片102禁止向STA 20的WIFI芯片202发送该报文,例如AP 10的WIFI芯片102可以将该报文释放。
也就是说,AP 10的WIFI芯片102根据自己保存的端口集合中的端口信息,对WIFI芯片102接收到的报文进行过滤,只有符合条件的报文才会被正确地发送给STA 20,对于不满足条件的报文,则不会发送给STA 20该报文,避免了AP 10与STA 20之间不必要的报文传输,从而节省了AP 10的WIFI芯片102和STA 20的功耗开销。
举例来说,图5示出了本发明另一个实施例的短距离通信的方法的示意图。假设AP10为路由器,STA 20为相机,当该路由器向该相机发送报文时,例如该路由器向该相机发送广播帧、地址刷新请求或者随机因特网包探索器(Packet Internet Groper,简称“Ping”)包时,该路由器的主芯片会先向其WIFI芯片发送该报文,该路由器的WIFI芯片接收到该报文时,会判断发送该报文的目标设备即该相机的端口号,是否在该路由器保存的端口集合中,当查找后发现,该相机的端口号不在该端口集合中,那么这些报文不会被发送给该相机,从而可以减少该路由器和该相机的功耗。
作为另一实施例,在402之前,该方法还可以包括405和406。
405,STA 20的WIFI芯片202确定该端口集合。
在该实施例中,STA 20可以确定能够支持的与STA 20进行报文传输配对的对端设备的端口号,STA 20的该端口集合中的端口信息也可以称为STA 20的业务能力,即该端口集合包括STA 20能够支持的业务端口。
也就是说,该端口集合中的端口所发送的报文能够被STA 20的主芯片 201所接收,不在该端口集合中的端口所发送的报文禁止被STA 20的主芯片201接收。STA 20确定好了该端口集合后,可以向AP 10的WIFI芯片102发送该端口集合的信息,AP 10的WIFI芯片102收到该端口集合的信息后,就可以根据该端口集合对向STA 20发送该报文的端口进行识别与过滤。
可选地,在STA 20进行设备初始化的时候就可以将能够与其配对的端口号进行保存。
可选地,该端口集合中可以包括用户数据报协议UDP端口和传输控制协议TCP端口,可以设定该端口集合中的用户数据报协议UDP端口的个数小于或等于8,还可以设定传输控制协议TCP端口的个数小于或等于8。
406,STA 20的WIFI芯片202向AP 10的WIFI芯片102发送该端口集合的信息。
具体而言,当STA 20的WIFI芯片202确定了该端口集合后,可以将该端口集合的信息通过携带在协议帧中等方式的发送给其他对端设备例如AP 10,从而告知AP 10该端口集合中的端口发送的报文能够被其接收,以便于AP 10的WIFI芯片102根据接收到的该端口集合的信息确定是否将从主芯片101接收到的报文发送给STA 20。
可选地,STA 20可以在BEACON、PROBREQ、PROBRSP、ASSOCREQ或ASSOCRSP等协议帧中增加厂商自定义的信息要素(Information Element,简称“IE”),例如OUI=AC-85-3D-11,并通知与STA 20进行通信的对端设备其端口集合信息,其中,OUI表示厂方自定义的类型,AC-85-3D指华为,11代表WLAN私有对通。具体格式可以参见表一所示的字节。下面一行为占用字节数。
表一
这些信息可以放置于表一中的供应商专用目录的位置,其中供应商专用目录中可以包括表2所示的内容。下面一行表示占用的字节数。
表二
该端口集合信息中需要明确所支持的业务端口,例如最大支持UDP及TCP端口的个数,所支持的端口号列表等信息。在与进行报文传输的对端设备关联成功后,对端设备例如AP 10就可以通过接收这些协议帧,获得STA 20确定的端口集合的信息,从而根据该端口集合进行端口过滤以确定是否将从主芯片101接收到的报文发送给STA 20。
这样,在保证物联网设备在WLAN中业务数据的可靠性、及时性的同时,能够通过端口过滤实现设备功耗的减小。
图6是本发明另一实施例的短距离通信的方法的流程交互图。图6中示出了AP 10和STA 20,图6中示出的AP 10中包括WIFI芯片102,STA 20中包括主芯片201和WIFI芯片202。如图6所示,该无线局域网中数据传输的具体流程包括:
601,AP 10的WIFI芯片102向STA 20的WIFI芯片202发送报文。
可选地,该报文中包括待发送该报文的AP 10的端口的信息,例如该报文中包括源端口号。STA 20的WIFI芯片202接收到AP 10的WIFI芯片102发送的该报文后,就可以根据其中包括的端口的信息,对端口进行识别过滤以决定是否将该报文发送给主芯片201。该端口的信息也可以通过其他方式告知STA 20的WIFI芯片202。
602,STA 20的WIFI芯片202确定发送该报文AP 10的端口是否属于端口集合。
具体地,STA 20的WIFI芯片202接收到AP 10的WIFI芯片102发送的该报文时,确定发送该报文的AP 10的端口是否属端口集合。STA 20的该端口集合中的端口发送的报文能够被STA 20的主芯片201接收。如果STA 20的WIFI芯片202确定发送该报文的AP 10的端口属于该端口集合,那么STA 20的WIFI芯片202将接收到的该报文发送给主芯片201,即执行603;如果STA 20的WIFI芯片202确定发送该报文的AP 10的端口不属于该端口集合,那么STA 20的WIFI芯片202不会将接收到的该报文发送给主芯片201,即执行604。
603,STA 20的WIFI芯片202向主芯片201发送接收到的报文。
604,STA 20的WIFI芯片202释放报文。
具体而言,如果STA 20的WIFI芯片202确定发送该报文的AP 10的端口属于该端口集合,STA 20的WIFI芯片202向主芯片201发送接收到的该报文;如果STA 20的WIFI芯片202确定发送该报文的AP 10的端口不属于该端口集合,那么STA 20的WIFI芯片202禁止将接收到的该报文发送给主芯片201,例如STA 20的WIFI芯片202可以将该报文释放。
也就是说,STA 20根据自己保存的端口集合中的端口信息,对WIFI芯片202接收到的报文进行过滤,只有符合条件的报文才会被正确地发送给主芯片201,对于不满足条件的报文,不会被发送给主芯片201,从而避免了对STA 20的主芯片201的不必要的唤醒,从而节省了主芯片201的功耗开销。
举例来说,图7示出了本发明另一个实施例的短距离通信的方法的示意图。假设AP10为路由器,STA 20为相机,当该路由器向该相机发送报文时,例如该路由器向该相机发送广播帧、地址刷新请求或者随机Ping包时,当该相机的WIFI芯片接收到该路由器发送的该报文时,该相机会判断发送该报文的设备即该路由器的端口号,是否在该相机保存的端口集合中,当查找后发现,该路由器的端口号不在该端口集合中,那么该相机的WIFI芯片不会将这些报文发送给该相机的主芯片,从而可以不必唤醒该相机的主芯片,减少该相机的主芯片的功耗。
因此,本发明实施例所述的方法,在WLAN下进行报文传输过程中,STA 20通过对与其进行WLAN传输的对端端口进行识别和过滤,以减少不必要的报文传输,避免对主芯片的不必要的唤醒,从而降低了STA 20的功耗。
作为另一实施例,在602之前,该方法还可以包括605。
605,STA 20的WIFI芯片202确定该端口集合。
具体地,STA 20的WIFI芯片202确定能够支持的与STA 20进行报文传输配对的对端设备的端口号,STA 20的该端口集合中的端口信息也可以称为STA 20的业务能力,即该端口集合包括STA 20能够支持的业务端口。
STA 20的WIFI芯片202确定了该端口集合后,就能够根据该端口集合中的端口信息,对AP 10发送的报文进行判断,只有发送该报文的端口在该 端口集合中,STA 20的WIFI芯片202才会将从AP 10接收到的报文发送给主芯片201。
可选地,在STA 20进行设备初始化的时候就可以将能够与其配对的端口号进行保存。
可选地,该端口集合中可以包括用户数据报协议UDP端口和传输控制协议TCP端口,可以设定该端口集合中的用户数据报协议UDP端口的个数小于或等于8,且传输控制协议TCP端口的个数小于或等于8。
其中,STA 20确定其端口集合的具体过程可以参考图4的405中STA 20确定其端口集合的过程,为了简洁,这里不再赘述。
作为另一实施例,在605之后,该方法还可以包括606。
606,STA 20的WIFI芯片202向AP 10的WIFI芯片102发送该端口集合的信息。
具体而言,当STA 20的WIFI芯片202确定了该端口集合后,可以将该端口集合的信息通过携带在协议帧中等方式的发送给其他对端设备例如AP 10,从而告知其他对端设备该端口集合中的端口发送的报文能够被其接收,以便于其他对端设备根据接收到的该端口集合的信息确定是否向STA 20发送报文。
其中,STA 20向AP 10发送该端口集合的信息的具体过程可以参考图4的406中STA20发送该端口集合的信息的过程,为了简洁,这里不再赘述。
基于本发明实施例所述的方法,在WLAN下进行报文传输过程中,站点和接入点通过对与其进行WLAN传输的对端端口进行识别和过滤,以减少不必要的报文传输,减少对主芯片的不必要的唤醒,从而降低了设备的功耗。
上面描述的是AP 10向STA 20发送报文时的情况,下面描述STA 20向AP 10发送报文时的情况。当STA 20向AP 10发送报文时,STA 20同样需要对报文进行过滤。图8是本发明另一个实施例的短距离通信的方法的流程交互图。图8中示出了AP 10和STA 20,图8中示出的AP 10中包括WIFI芯片102,STA 20中包括主芯片201和WIFI芯片202。如图8所示,该无线局域网中数据传输的具体流程包括:
801,STA 20的主芯片201向STA 20的WIFI芯片202发送报文。
具体地,当STA 20在无线局域网络中向AP 10发送报文时,STA 20的 主芯片201会向STA 20的WIFI芯片202发送该报文,以便于STA 20的WIFI芯片202芯片通过无线局域网络向AP 10发送该报文。
可选地,该报文中可以包括待接收该报文的AP 10的端口的信息,例如该报文中包括目的端口号。802,STA 20的WIFI芯片202确定接收该报文的AP 10的端口是否属于端口集合。
具体地,当STA 20的WIFI芯片202接收到主芯片201的发送的报文时,确定将要接收该报文的AP 10的端口是否属该端口集合。STA 20的该端口集合为发送端口集合,该端口集合中的端口为能够接收该报文的AP 10的端口。如果STA 20的WIFI芯片202确定待接收该报文的AP 10的端口属于该端口集合,那么STA 20的WIFI芯片202将主芯片201发送的该报文通过该端口发送给AP 10,即执行803;如果STA 20的WIFI芯片202确定待接收该报文的AP10的端口不属于该端口集合,那么STA 20的WIFI芯片202不会将主芯片201发送的该报文发送给AP 10,即执行804。
803,STA 20的WIFI芯片202向AP 10的WIFI芯片102发送报文。
804,STA 20的WIFI芯片202释放报文。
具体而言,如果STA 20的WIFI芯片202确定待接收该报文的AP 10的端口属于该端口集合,STA 20的WIFI芯片202向AP 10的WIFI芯片102发送该报文;如果STA 20的WIFI芯片202确定待接收该报文的AP 10的端口不属于该端口集合,STA 20的WIFI芯片202禁止将将该报文发送给AP 10的WIFI芯片102,例如STA 20的WIFI芯片202可以将该报文释放。
也就是说,STA 20的WIFI芯片202根据自己保存的端口集合中的端口信息,对WIFI芯片202接收到的报文进行过滤,只有符合条件的报文才会被正确地发送给AP 10,对于不满足条件的报文,则不会发送给AP 10该报文,从而避免了STA 20与AP 10之间不必要的报文传输,从而节省了STA 20的WIFI芯片202的功耗开销。
举例来说,图9示出了本发明另一个实施例短距离通信的方法的示意图。假设AP10为运动DV,STA 20为手机,当该手机向该运动DV发送报文时,例如该手机上的微信、天气应用软件或杀毒软件等应用向该相机发送数据报文时,该手机的主芯片会先向其WIFI芯片发送该数据报文,该路由器的WIFI芯片接收到该数据报文时,会判断该报文发送的目标设备即该运动DV的端口号,是否在该手机保存的端口集合中,当查找后发现,该运动DV的 端口号不在该端口集合中,那么这些数据报文不会被发送给该运动DV,从而可以减少该手机和该运动DV的功耗。
作为另一实施例,在802之前,该方法还可以包括805和806。
805,AP 10的WIFI芯片102确定端口集合。
在该实施例中,AP 10可以确定能够支持的与AP 10进行报文传输配对的对端设备的端口,AP 10的该端口集合中的端口信息也可以称为AP 10的业务能力,即该端口集合包括AP 10能够支持的业务端口。
也就是说,该端口集合中的端口所发送的报文能够被AP 10的主芯片101所接收,不在该端口集合中的端口所发送的报文禁止被AP 10的主芯片101接收。AP 10确定好了该端口集合后,向STA 20的WIFI芯片发送该端口集合的信息,STA 20的WIFI芯片就可以根据该端口集合的信息对向AP 10发送该报文的端口进行过滤。
可选地,在AP 10进行设备初始化的时候就可以将能够与其配对的端口进行保存。
可选地,该端口集合中可以包括用户数据报协议UDP端口和传输控制协议TCP端口,可以设定该端口集合中的用户数据报协议UDP端口的个数小于或等于8,且传输控制协议TCP端口的个数小于或等于8。
806,AP 10的WIFI芯片102向STA 20的WIFI芯片202发送该端口集合的信息。
具体而言,当AP 10的WIFI芯片102确定了该端口集合后,可以将该端口集合的信息通过携带在协议帧中等方式的发送给其他对端设备例如STA 20,从而告知STA 20该端口集合中的端口发送的报文能够被其接收,以便于STA 20的WIFI芯片202根据接收到的该端口集合的信息确定是否向AP 10发送报文。
可选地,AP 10可以在BEACON、PROBREQ、PROBRSP、ASSOCREQ或ASSOCRSP等协议帧的特定字段中增加厂商自定义的IE,其中IE中包括端口集合的信息,例如能够支持的端口的端口号等,在与进行报文传输的对端设备关联成功后,对端设备例如STA 20就可以从这些协议帧中获取AP 10确定的该端口集合信息。
AP 10确定和发送其端口集合的具体过程可以参考图4和图6中STA 20确定和发送端口集合的过程,为了简洁,这里不再赘述。
图10是本发明实施例的短距离通信的方法的流程交互图。图10中示出了AP 10和STA 20,其中,图10中示出的AP 10中包括主芯片101和WIFI芯片102,STA 20中包括WIFI芯片202。如图10所示,该无线局域网中数据传输的具体流程包括:
1001,STA 20的WIFI芯片202向AP 10的WIFI芯片102发送报文。
可选地,该报文中包括待发送该报文的STA 20的端口的信息,例如该报文中包括源端口号。AP 10的WIFI芯片102接收到STA 20的WIFI芯片202发送的该报文后,就可以根据其中的端口的信息,对端口进行过滤以决定是否将该报文发送给主芯片101。该端口的信息也可以通过其他方式告知AP 10的WIFI芯片102。
1002,AP 10的WIFI芯片102确定发送该报文STA 20的端口是否属于AP 10的端口集合。
具体地,当AP 10的WIFI芯片102接收到STA 20的WIFI芯片202发送的该报文时,确定发送该报文的STA 20的端口是否属于AP 10的端口集合。AP 10的该端口集合为接收端口集合,该端口集合中的端口发送的报文能够被AP 10的主芯片201接收。如果AP 10的WIFI芯片102确定发送该报文的STA 20的端口属于该端口集合,那么AP 10的WIFI芯片102将接收到的该报文发送给主芯片101,即执行1003;如果AP 10的WIFI芯片102确定发送该报文的AP10的端口不属于该端口集合,那么AP 10的WIFI芯片102不会将接收到的该报文发送给主芯片101,即执行1004。
1003,STA 20的WIFI芯片202向主芯片201发送接收到的报文。
1004,STA 20的WIFI芯片202释放报文。
具体而言,如果STA 20的WIFI芯片202确定发送该报文的AP 10的端口属于该端口集合,STA 20的WIFI芯片202向主芯片201发送接收到的该报文;如果STA 20的WIFI芯片202确定发送该报文的AP 10的端口不属于该端口集合,那么STA 20的WIFI芯片202禁止向主芯片201发送该接收到的报文,例如STA 20的WIFI芯片202可以将该报文释放。
也就是说,AP 10根据自己保存的端口集合中的端口信息,对WIFI芯片102接收到的报文进行过滤,只有符合条件的报文才会被正确地发送给主芯片101,对于不满足条件的报文,不会被发送给主芯片101,从而避免了对AP 10的主芯片101的不必要的唤醒,从而节省了主芯片101的功耗开销。
举例来说,图11示出了本发明另一个实施例的短距离通信的方法的示意图。假设AP 10为运动DV,STA 20为手机,该运动DV接收手机发送的报文,例如该运动DV接收到该手机的微信、天气应用或杀毒软件等应用发送的数据报文,当该运动DV的WIFI芯片接收到该手机发送的该报文时,该运动DV会判断发送该报文的设备即该手机的应用程序对应的端口号,是否在该运动DV保存的端口集合中,当查找后发现,该手机中的发送该数据报文的该应用程序的端口号不在该端口集合中,那么该运动DV的WIFI芯片不会将这些报文发送给该运动DV的主芯片,从而可以不必唤醒该运动DV的主芯片,减少该运动DV的主芯片的功耗。
因此,本发明实施例所述的方法,在WLAN下进行报文传输过程中,接入点和站点通过对与其进行WLAN传输的对端端口进行识别和过滤,以减少不必要的报文传输,减少对主芯片的不必要的唤醒,从而降低了AP侧设备的功耗。
作为另一实施例,在1002之前,该方法还可以包括1005。
1005,AP 10的WIFI芯片102确定端口集合。
具体地,AP 10确定能够支持的与AP 10进行报文传输配对的对端设备的端口,AP10的该端口集合中的端口信息也可以称为AP 10的业务能力,即该端口集合包括STA 20能够支持的业务端口。
可选地,在AP 10进行设备初始化的时候就可以将能够与其配对的端口进行保存。
可选地,该端口集合中可以包括用户数据报协议UDP端口和传输控制协议TCP端口,可以设定该端口集合中的用户数据报协议UDP端口的个数小于或等于8,且传输控制协议TCP端口的个数小于或等于8。
作为另一实施例,在1005之后,该方法还可以包括1006。
1006,AP 10的WIFI芯片102向STA 20的WIFI芯片202发送该端口集合的信息。
具体而言,当STA 20的WIFI芯片202确定了该端口集合后,可以将该端口集合的信息通过携带在协议帧中等方式的发送给其他对端设备例如STA 20,从而告知STA 20该端口集合中的端口发送的报文能够被其接收,以便于STA 20的WIFI芯片202根据接收到的该端口集合的信息确定是否将从主芯片201接收到的报文发送给AP 10。
可选地,AP 10可以在BEACON、PROBREQ、PROBRSP、ASSOCREQ或ASSOCRSP等协议帧的特定字段中增加厂商自定义的IE,其中IE中包括端口集合的信息,例如能够支持的端口的端口号等,在与进行报文传输的对端设备关联成功后,对端设备例如就STA 20可以获得AP10的该端口集合的信息。
AP 10确定和发送该端口集合的信息的具体过程可以参考图8的805和806中AP 10确定和发送该端口集合的信息的过程,为了简洁,这里不再赘述。
应理解,本发明实施例中的端口集合,可以包括允许执行报文发送或接收的端口号,或者包括不允许执行报文发送或者接收的端口号。也就是说,该端口集合中的端口也可以是被禁止的端口,当WLAN设备判断发送报文或待接收报文的端口在该端口集合中时,则禁止执行发送报文或接收报文,而如果发送报文或待接收报文的端口不在该端口集合中时,则可以向对端设备发送报文或者接收对端设备发送的报文。本发明对此不作任何限定。
基于本发明实施例所述的方法,在WLAN下进行报文传输过程中,WLAN设备通过对与其进行WLAN传输的对端端口进行识别和过滤,以减少不必要的报文传输,避免对主芯片的不必要的唤醒,从而降低了设备的功耗。
表一中示出了在没有进行端口识别和过滤的情况下,以及进行了端口过滤和识别的情况下,运动DV和手机的功耗。
其中,普通模式指没有进行端口识别和过滤的模式,过滤模式指进行了端口识别和过滤的模式。为了简洁,后面不再赘述。
表一
可以看出,当手机采用本发明实施例所述的方法对与其进行通信的端口进行识别和过滤时,其功耗相比于没有进行端口识别和过滤时有了明显的降 低。在DV普通模式或DV过滤模式下,该手机的功耗由39mA降低至25mA,能够节省14mA的耗电量,节省了35%的功耗。
当该DV采用本发明实施例所述的方法对与其进行通信的端口进行识别和过滤时,其功耗相比于没有进行端口识别和过滤时也有了明显的降低。在手机普通模式下,该DV的功耗由30mA降低至15mA,能够节省15mA的耗电量,节省了近50%的功耗;在手机过滤模式下,该DV的功耗均为12mA,功耗的节省主要体现在手机上。
当手机采用过滤模式时,无论DV是否采用过滤模式,都可以实现手机功耗的降低和DV功耗的降低;当手机采用普通模式时,DV采用过滤模式可以使DV的功耗降低。
表二中示出了在没有进行端口识别和过滤的情况下,以及进行了端口过滤和识别的情况下,门铃和AP的功耗。其中,表二中的门铃关联AP且处于待机场景下。
表二
|
|
AP普通模式 |
AP过滤模式 |
门铃普通模式 |
门铃功耗 |
30mA |
12mA |
门铃过滤模式 |
门铃功耗 |
15mA |
12mA |
可以看出,当门铃采用本发明实施例所述的方法对与其进行通信的端口进行识别和过滤时,其功耗相比于没有进行端口识别和过滤时有了明显的降低。在AP普通模式下,该门铃的功耗由30mA降低至15mA,能够节省15mA的耗电量,节省了50%的功耗;在AP过滤模式下,该门铃的功耗均为12mA,功耗的节省主要体现在AP上。
当该AP采用本发明实施例所述的方法对与其进行通信的端口进行识别和过滤时,对门铃的功耗也有较大的影响,该门铃的功耗相比于AP没有进行端口识别和过滤时也有了明显的降低。在门铃普通模式下,该门铃的功耗由30mA降低至12mA,能够节省18mA的耗电量,节省了60%的功耗;在门铃过滤模式下,该门铃的功耗由15mA降低至12mA。
当AP采用过滤模式时,无论门铃是否采用过滤模式,都可以实现门铃功耗的降低。
表三中示出了在没有进行端口识别和过滤的情况下,以及进行了端口过 滤和识别的情况下,手机和AP的功耗。其中,表三中的手机关联AP且手机处于暗屏待机的场景下。
表三
|
|
AP普通模式 |
AP过滤模式 |
手机普通模式 |
手机功耗 |
32mA |
32mA |
手机过滤模式 |
手机功耗 |
15mA |
15mA |
可以看出,当手机采用本发明实施例所述的方法对与其进行通信的端口进行识别和过滤时,其功耗相比于没有进行端口识别和过滤时有了明显的降低。在AP普通模式下,该手机的功耗由32mA降低至15mA,能够节省17mA的耗电量,节省了53%的功耗;在AP过滤模式下,该手机的功耗也由32mA降低至15mA,能够节省17mA的耗电量,节省了53%的功耗。
当手机采用过滤模式时,无论AP是否采用过滤模式,都可以实现手机功耗的降低。
前述现有技术中的用于减少接入设备的功耗的方法中,是在AP侧增加DTIM周期。但是这里的DTIM周期的时间长度是固定的,也就是说,当有报文需要向STA发送时,AP会先缓存这些报文,并按照固定的时间间隔,即DTIM周期的间隔,向STA发送这些报文,从而STA按照该DTIM周期的间隔从睡眠状态醒来接收该报文。但是如果在较长一段时间内STA都没有要接收的业务报文,如果还是按照固定的时间长度从休眠状态醒来,那么就会增加不必要的功耗。因此,本发明另一个实施例中,通过动态地对DTIM周期进行调整,从而减少STA设备的不必要的功耗开销。
作为另一个实施例,如果AP 10在连续的n个第一投递传输指示信息DTIM周期内没有向STA 20发送报文,AP 10根据第二DTIM周期对STA 20进行调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
在该实施例中,当STA 20的主芯片201进入休眠状态后,如果在连续的n个DTIM周期内没有需要发送给STA 20的业务报文,也就是说AP 10在该n个DTIM周期没有缓存待发送给STA 20的业务报文时,这时由于STA 20的主芯片201处于睡眠状态,为了增加主芯片201的睡眠时间以减少功耗,这时可以将第一DTIM周期的长度增加,得到第二DTIM周期,从而AP10 根据第二DTIM周期对STA 20进行调度。如果在n个第二DTIM周期内仍旧没有要发送给STA 20的业务报文,可以继续增加第二DTIM周期的长度。
如果AP 10在之后任意时间为STA 20发送了业务报文并且STA 20的主芯片201从休眠状态醒来接收该业务报文时,第二DTIM周期的长度可以恢复到初始值,即第一DTIM周期的长度。并可以按照前述方案继续根据报文接收情况动态地调整DTIM周期。
举例来说,假设DTIM周期的初始长度为1,当STA 20的主芯片201进入休眠状态后,可以动态增加DTIM周期的长度,例如可以在连续10个DTIM周期内都AP 10没有为STA 20缓存报文时,为DTIM周期加1,也就是DTIM=2。如果之后STA 20的主芯片201醒来接收AP 10为其缓存的报文时,DTIM周期重新恢复初始值1。
由于AP 10能够动态地调整DTIM周期,从而对于同一个接入设备就减少了被唤醒的次数,能够有更多的休眠时间,节省了功耗,而且WLAN网络下不同的接入设备还可以根据自己的需求设置不同的DTIM周期,避免了不必要的功率开销,而且不必担心ARP报文丢失导致的被叫业务时延。
应注意,调整后的DTIM周期应保证数据的实时性和密钥更新成功。如果DTIM周期长度过大则容易发生掉线。例如可以保证调整后的Beacon周期×DTIM周期的时间长度不大于500ms,其中Beacon周期=100ms,DTIM周期=5。
还应注意,这里还要保证AP 10的代理ARP(Proxy Arp)特性,即在保证ARP广播帧不丢失的情况下对DTIM周期进行调整。
图12是本发明实施例的动态调整DTIM周期的示意图。图10中示出了AP 10、STA20、STA30和STA40。其中,AP 10能够根据每个STA设备的自身需求分别为STA 20、STA30和STA40配置不同长度的DTIM周期。例如STA 20接收业务报文的频率较高,AP 10调度STA 20唤醒的频率就较高,DTIM周期的长度较小;STA 40接收业务报文的频率较低,AP 10调度STA40唤醒的频率就较低,DTIM周期较长,STA 40就能够有更多的时间处于休眠状态;STA 30接收业务报文的频率适中,因此其被唤醒的频率就介于STA 20和STA 40之间。这样,可以避免固定DTIM周期较短时STA 40产生的不必要的功耗,也可以避免固定DTIM周期较长时导致的STA 20的ARP报文丢失。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上文中结合图1至图12,详细描述了根据本发明实施例的无线局域网WLAN中数据传输的方法,下面将结合图13和图14,详细描述根据本发明实施例的传输数据的用户设备和基站。
图13是本发明实施例的短距离通信设备的结构框图。图13所示的短距离通信设备1300能够用于执行前述图4至图12的方法实施例中由STA 20或AP 10所实现的各个过程。图13中示出的短距离通信设备1300为第一通信设备,与该第一通信设备1300进行数据传输的对端设备可以称为第二通信设备。所述第一通信设备1300包括收发信机1310、短距离通信芯片1320、主芯片1330和天线1340,收发信机1310中可以包括接收器1311和发送器1312。其中,所述接收机1311,用于接收第二通信设备的第一端口发送的报文;所述短距离通信芯片1320,用于:根据所述接收机接收的所述第一端口的信息,确定所述第一端口是否属于端口集合,所述端口集合为允许向所述第一通信设备发送报文的端口的集合;在确定所述第一端口不属于所述端口集合的情况下,禁止向所述主芯片1330发送所述报文;在确定所述第一端口属于所述端口集合的情况下,向所述主芯片1330发送所述报文。
可选地,所述发射机1312用于:向所述第二通信设备发送所述端口集合的信息。
可选地,所述端口集合中包括用户数据报协议UDP端口和/或传输控制协议TCP端口。
可选地,所述短距离通信包括无线局域网WLAN通信,如果所述第一通信设备1300为站点STA侧设备,所述第二通信设备为接入点AP侧设备,所述第一通信设备1300用于:如果所述接收机1311在连续的n个第一投递传输指示信息DTIM周期内没有接收到所述第二通信设备发送的报文,根据第二DTIM周期执行所述第二通信设备的调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
可选地,所述第一通信设备1300还用于:当所述接收机1311接收到所述第二通信设备发送的报文后,根据所述第一DTIM周期执行所述第二通信设备的调度。
可选地,所述短距离通信包括WLAN通信,所述第一通信设备1300还包括发射机1312,如果所述第一通信设备1300为AP侧设备,所述第二通信设备为STA侧设备,所述第一通信设备1300用于:如果所述发射机1304在连续的n个DTIM周期内没有向所述第二通信设备发送的报文,根据第二DTIM周期对所述第二通信设备进行调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
可选地,所述第一通信设备1300还用于:当所述发射机1312向所述第二通信设备发送报文后,根据所述第一DTIM周期对所述第二通信设备进行调度。
图14是本发明另一实施例的短距离通信设备的结构框图。图14所示的短距离通信设备1400能够用于执行前述图4至图12的方法实施例中由STA 20或AP 10所实现的各个过程。图14中示出的短距离通信设备1400为第一通信设备,与该第一通信设备1400进行数据传输的对端设备可以称为第二通信设备。所述第一通信设备1400包括收发信机1410、短距离通信芯片1420、主芯片1430和天线1440,收发信机1410中可以包括接收器1411和发送器1412。其中,所述短距离通信芯片1420用于:接收所述主芯片1430发送的报文;根据第一端口的信息,确定所述第一端口是否属于端口集合,所述第一端口为待接收所述报文的第二通信设备的端口,所述端口集合为允许向所述第二通信设备发送报文的端口的集合;在确定所述第一端口不属于所述端口集合情况下,禁止通过所述发射机1412向所述第二通信设备发送所述报文;在确定所述第一端口属于所述端口集合的情况下,通过所述发射机1412向所述第二通信设备发送所述报文。
可选地,所述第一通信设备还包括接收机1411,在所述短距离通信芯片1420根据所述第一端口的信息,确定所述第一端口是否属于端口集合之前,所述接收机1411还用于:接收所述第二通信设备发送的所述端口集合的信息。
可选地,所述端口集合中包括用户数据报协议UDP端口和/或传输控制协议TCP端口。
可选地,所述短距离通信包括无线局域网WLAN通信,如果所述第一通信设备1400为接入点AP侧设备,所述第二通信设备为站点STA侧设备,所述第一通信设备用于:如果所述发射机1412在连续的n个第一投递传输 指示信息DTIM周期内没有向所述第二通信设备发送报文,根据第二DTIM周期对所述第二通信设备进行调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
可选地,所述第一通信设备1400还用于:当所述发射机1412向所述第二通信设备发送报文后,根据所述第一DTIM周期对所述第二通信设备进行调度。
可选地,所述短距离通信包括无线局域网WLAN通信,所述第一通信设备还包括接收机1411,如果所述第一通信设备1400为STA侧设备,所述第二通信设备为AP侧设备,所述第一通信设备1400用于:如果所述接收机1411在连续的n个第一投递传输指示信息DTIM周期内没有接收到所述第二通信设备发送的报文,根据第二DTIM周期执行所述第二通信设备的调度,所述第二DTIM周期的长度大于所述第一DTIM周期的长度,所述n为大于1的自然数。
可选地,所述第一通信设备1400还用于:当所述接收机1411接收到所述第二通信设备发送的报文后,根据所述第一DTIM周期执行所述第二通信设备的调度。
本发明实施例所述的短距离通信设备,在短距离通信网络下进行报文传输过程中,短距离通信设备通过对与其进行短距离传输的对端端口进行识别和过滤,以减少不必要的报文传输和处理,从而降低了短距离通信设备的功耗。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
应理解,本文中术语“和/或”以及“A或B中的至少一种”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,在本发明实施例中,处理器可以是中央处理单元(Central ProcessingUnit,简称“CPU”),处理器还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,简称“DSP”)、专用集成电路(Application Specific Integrated Circuit,简称“ASIC”)、现场可编程门阵列(Field Programmable Gates Array,简称“FPGA”)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器执行存储器中的指令,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件 功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称“ROM”)、随机存取存储器(Random Access Memory,简称“RAM”)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。