一种无线局域网中切换接入点的方法及设备与流程

文档序号:12890510阅读:390来源:国知局
一种无线局域网中切换接入点的方法及设备与流程

本发明涉及通信技术领域,特别涉及一种无线局域网wlan中切换接入点ap的方法及设备。



背景技术:

在无线局域网(英文:wirelesslocalareanetworks,wlan)系统中,终端需要与一个接入点(英文:accesspoint,ap)相连接,并通过该ap进行数据收发。在通信过程中,终端与当前连接的ap之间的信号可能会变差,例如,在终端与当前连接的第一ap之间的距离变远时,它们之间的信号变差。当终端与当前连接的第一ap之间的信号质量低于阈值时,终端将向信号较佳的第二ap发起关联请求,从与该第一ap连接切换至与第二ap连接,上述过程可以称为终端的漫游。

终端通常会在没有数据收发时进入省电模式(英文:powersavemode),进入省电模式后,终端只是周期性地打开射频模块以收发数据。在终端的射频模块关闭期间,终端无法主动发起漫游。而在终端打开射频模块时,终端与原连接的ap的链路可能已经劣化到无法正常通信,终端只能重新与wlan中的ap进行关联,不仅会耽误终端的通信需求,而且在原连接的ap为该终端缓存有数据时,sta也将无法收到这些数据,造成数据丢失。



技术实现要素:

本申请提供一种无线局域网中切换接入点的方法及设备,用于使处于省电模式的终端能够成功进行ap切换。

第一方面,本申请提供一种wlan中切换ap的方法,该方法应用的 wlan系统中,扩展服务集合(英文:extendedserviceset,ess)中的每个sta被分配一个基本服务集标识符(英文:basicservicesetidentifier,bssid),且同一ess中的不同sta被分配的bssid不同,ess中ap基于为sta分配的bssid为sta提供服务。第一ap在确定自己连接的sta处于省电模式且该处于省电模式的sta需要切换至同一ess中的第二ap后,一方面向该sta发送唤醒帧,指示该sta在所述第二ap基于为该sta分配的bssid发送信标帧时处于苏醒状态。另一方面,第一ap向第二ap发送切换指令,指示第二ap基于为该sta分配的bssid为该sta提供服务。第一ap在向该sta发送该唤醒帧以及向第二ap发送该切换指令之后,停止为该sta提供服务。

上述sta所连接ap发生切换的过程由ap执行,因此,即使在该sta处于省电模式且关闭射频模块的情况下,该sta的ap切换也可以正常进行,保证该sta在打开射频模块后,能够通过ess中的ap进行通信,且由于sta能够切换连接信号较佳的ap,sta的通信质量较佳

在一个可选的实现中,第一ap在确定该sta处于省电模式以及该sta需要与第二ap连接后,第一ap先判断自身的信标帧发送时间与第二ap的信标帧发送时间是否同步,若二者同步,则第一ap可以省去向该sta发送唤醒帧的步骤,直接向第二ap发送切换指令。在第一ap的信标帧发送时间与第二ap的信标帧发送时间不同步的情况下,第一ap既向该sta发送唤醒帧,又向第二ap发送切换指令,保证该sta在第二ap基于为该sta分配的bssid发送信标帧时处于苏醒状态,使得该sta能够接收第二ap发送的信标帧。本实现能够在第一ap与第二ap发送信标帧的时间同步时减少唤醒帧的发送,节约传输资源以及减少ap切换的耗时。

在一个可选的实现中,该唤醒帧包括第一信标帧,该第一信标帧包括用于指示该sta将苏醒时间调整至第二ap基于为该sta分配的bssid发送信标帧的时间的字段。例如,第一信标帧中包括的时间戳字段用于指示该sta将本地时间与第二ap的时间同步,这样,该sta的苏醒时间与第二ap的信标 帧发送时间同步,使得该sta能够接收到第二ap基于为该sta分配的bssid向该sta发送的信标帧。

在一个可选的实现中,第一ap在向该sta发送包括用于指示该sta将苏醒时间调整至第二ap基于为该sta分配的bssid发送信标帧的时间的字段的唤醒帧之前,先确定第一ap的信标帧发送时间与所述第二ap的信标帧发送时间之前的时间间隔,该时间间隔的确定方式可以为:所述第一ap确定接收到第二ap发送的第二信标帧的时间;所述第一ap根据自身的信标帧发送时间以及接收到该第二信标帧的时间确定第一ap的信标帧发送时间与第二ap的信标帧发送时间之前的时间间隔。在确定该时间间隔后,第一ap根据该时间间隔确定该用于更新sta苏醒时间的字段。

在一个可选的实现中,该唤醒帧包括第三信标帧,该第三信标帧包括指示sta保持苏醒状态的字段。其中,sta处于苏醒状态可以是该sta处于激活模式,或者该sta处于省电模式并进入了(例如根据侦听间隔进入)苏醒状态。处于苏醒状态的sta打开其射频模块。例如,第三信标帧中的数据待传指示信息(英文:deliverytrafficindicationmessage,dtim)字段置1,在一些实施方式中,ap与sta约定,sta接收dtim字段置1的信标帧后,从省电模式切换至激活模式。而在另一些实施方式中,ap与sta约定,sta接收dtim字段置1的信标帧后,继续处于省电模式,但保持在苏醒状态。

在一个可选的实现中,sta接收到第三信标帧,第三信标帧中dtim字段置1,该sta向第一ap发送竞选(英文:poll)帧,第一ap接收该poll帧,但是不向该sta发送数据,则该sta将一直保持苏醒状态,直至接收到连接ap发送的数据或者信标帧。

在一个可选的实现中,第一ap在向该sta发送指示该sta处于苏醒状态的第三信标帧后,向该sta发送1个或多个数据帧,该数据帧可以为不包含传输数据的空数据帧。例如,在sta处于省电模式下的苏醒状态时,第一ap在接收该sta发送的poll帧,向该sta发送1个或多个数据帧,每个数 据帧的“moredata”字段置1,该sta接收该数据帧之后,保持苏醒状态,再次向第一ap发送poll帧。又例如,在该sta处于激活模式时,第一ap向该sta发送数据帧,该sta接收到数据帧后,将重新进行进入省电模式的倒计时,这样可以使该sta保持激活模式。

在一个可选的实现中,第一ap在发送指示该sta处于苏醒状态的信标帧之后,向该sta发送的多个使得该sta维持苏醒状态数据帧中可以包括空数据帧。即使第一ap未缓存sta的数据帧,第一ap也可以向sta发送空数据帧,并且该空数据帧的“moredata”字段置1,指示第一ap缓存了sta的数据帧,以欺骗sta使其保持苏醒状态。

在一个可选的实现中,第二ap在确认与该sta连接成功后,向第一ap发送切换成功消息,第一ap接收该切换成功消息后,停止为该sta发送该唤醒帧。

第二方面,本申请提供一种wlan中切换ap的设备,该设备用于执行上述第一方面或第一方面的任意可能的实现中的方法。具体的,该设备包括用于执行上述第一方面或第一方面的任意可能的实现中的方法的模块。

第三方面,本申请提供一种wlan中切换ap的设备,该设备用于执行上述第一方面或第一方面的任意可能的实现中的方法。具体的,该设备包括处理器以及收发器,该处理器与收发器耦合。该收发器用于与wlan中的其他网元进行通信,该处理器用于通过收发器执行上述第一方面或第一方面的任意可能的实现中的方法。

第四方面,本申请提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现中的方法的指令。

本发明在上述各方面提供的实现的基础上,还可以进行进一步组合以提供更多实现。

附图说明

为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中通信系统的一种可能实现方式的示意图;

图2为本发明实施例中切换ap的方法的流程示意图;

图3为本发明实施例中切换ap的方法的另一流程示意图;

图4为本发明实施例中一种wlan中切换ap的设备的结构示意图;

图5为本发明实施例中另一wlan中切换ap的设备的结构示意图。

具体实施方式

下面通过附图以及具体实施例对本发明技术方案做详细的说明。本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定。在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。

在wlan通信中,sta需要与一个ap连接,由连接的ap负责为sta进行数据转发。在sta与当前连接的ap之间的信号较差时,sta需要切换至信号更好的ap,以保证sta的数据通信的正常进行。通常由sta在检测到与ap之间的链路劣化到一定程度后发起漫游,进行ap切换。

但是,在sta进入省电模式之后,sta关闭射频模块,只是周期性地打开射频模块,以收发数据。在sta的射频模块关闭期间,sta无法主动发起漫游。而在sta打开射频模块时,sta与原连接ap的链路可能已经劣化到无法正常通信,sta只能与wlan中的ap重新进行关联,不仅会耽误sta的通信需求,而且在原连接的ap为该sta缓存有数据时,sta也将无法收到这些数据,造成数据丢失。

为了解决处于省电模式的sta难以进行ap切换的问题,本发明实施例提供一种ap切换方法,在sta处于省电模式时,由ap来负责进行sta所连接ap的切换,这样,即使在sta关闭射频模块的情况下,sta所连接ap的切换仍然能够完成。

在本发明实施例中,sta首次关联扩展服务集合(英文:extendedserviceset,ess)中的ap时,该sta会被分配一个基本服务集标识符(英文:basicservicesetidentifier,bssid),ess内的任一与该sta相连接的ap基于该bssid为该sta提供服务。即,ess内的ap模拟以为该sta分配的bssid为bssid的ap,收发该sta的帧。也就是说ess内的ap和该sta通信时以该bssid为ap的射频介质访问控制(英文:mediaaccesscontrol,mac)地址。由于不同ap为sta基于相同的bssid提供服务,在连接sta的ap切换后,sta不会感知到ap切换。另一方面,ess中的任意两个sta所分配的bssid不同,这样可以避免sta在ess中进行ap切换后出现报文转发混乱的情况。

其中,sta对应的bssid的分配方式包括多种实现方式。例如,sta向ess中的ap发起关联请求后,该接收到sta关联请求的ap为该sta分配bssid,并将该bssid告知ess中的其他ap,以使该sta与ess中的其他ap连接时,该sta所连接的ap能够基于为该sta分配的bssid为该sta提供服务。又例如,在图1所示的通信系统中,sta向ess中的ap发起关联请求后,wlan中的漫游控制器为该sta分配bssid,并通知该ess中的ap基于为该sta分配的bssid为该sta提供服务。

本发明实施例中,在wlan包括上述漫游控制器时,漫游控制器可以有多种实现方式,例如,漫游控制器可以作为无线接入点的控制与规范(英文:controlandprovisioningofwirelessaccesspoints,capwap)协议中的接入控制器(英文:accesscontroller,ac),相应的,ap可以作为capwap协议中的无线终止点(英文:wirelessterminationpoint)。另外,漫游控制器可以通 过一个独立设备实现,也可以通过多个分布式设备的集群实现。

本发明实施例中,在sta达到漫游门限后,该sta连接的ap将该sta切换至同一ess中的另一ap,本发明实施例中将该sta在连接的ap发生切换之后所连接的ap称为目标ap,指示该目标ap基于为该sta所分配的bssid为该sta提供服务。

其中,可以由sta所连接的ap判断该sta是否达到漫游门限,也可以由图1所示的漫游控制器来判断sta是否达到漫游门限。具体的,与该sta连接的ap监测该sta的信号指标,例如,接收信号强度指示(英文:receivedsignalstrengthindication,rssi)、丢包率,等等。在sta连接的ap对sta的信号指标的监测值劣化到预设值时,即可确定该sta达到漫游门限。在由漫游控制器判断sta是否达到漫游门限时,该sta所连接的ap需要将对该sta的信号指标的监测值发送给漫游控制器。

sta需要连接的该目标ap的确定方式可以为:同一ess中没有与该sta连接的ap对该sta的信号指标进行监测,该sta连接的ap或者漫游控制器根据这些没有与sta连接的ap对该sta的信号指标的监测值,从这些没有与sta连接的ap中确定出该目标ap。例如,同一ess中没有与该sta连接的ap将对该sta的信号指标的监测值发送给与该sta连接的ap或漫游控制器,与该sta连接的ap或漫游控制器确定检测的信号指标最好的ap作为该目标ap。

通常,sta向连接的ap发送报文后,与该sta没有连接的其他ap的物理层同样能够接收到该报文,并计算出rssi等信号指标,然后,该ap的介质访问控制(英文:mediaaccesscontrol,mac)层会判断该报文是否发送给自己的,如果该报文不是发送给自己的,则舍弃该报文。但是,本发明实施例中,mac层在确定该报文不是发送给自己之后,仍然将该报文的rssi等信号指标存入存储器,以使ap能够获得没有与自己相连接的sta的信号指标。ap还可以使用现有技术中的其他技术手段对没有与自己相连接的sta的信号指 标进行监测,本发明实施例不再详述。

通常,不同ap发送信标帧的时间不同步。例如,不同ap的信标间隔不同。例如,一个ap在0毫秒(ms),100ms,200ms…发送信标帧,另一ap在0ms,110ms,220ms…发送信标帧。或者,尽管不同ap的信标间隔相同,但发送信标帧的相位不同。例如,一个ap在0ms,100ms,200ms…发送信标帧,另一ap在30ms,130ms,230ms……发送信标帧。在sta处于激活(英文:active)模式时,sta总是处于苏醒状态(英文:awakestate),sta能够接收到切换后的第二ap发送的信标帧,并根据第二ap发送信标帧中包括的用于同步时间的字段,将自己的时间与第二ap的时间同步。

在sta处于省电模式时,sta处于瞌睡状态(英文:dozestate),只是根据侦听间隔(英文:listeninterval)进入苏醒状态以接收选择的信标帧。侦听间隔一般是信标间隔的整数倍。因此,sta只在切换前的第一ap发送信标帧的时间打开射频模块,接收信标帧。然而,由于第一ap与第二ap发送信标帧的时间通常不同步,处于省电模式的sta进入苏醒状态的短暂时间内,很可能接收不到第二ap发送的信标帧,导致sta不能根据第二ap发送的信标帧将自己的本地时间与切换后的第二ap的时间同步。这样,虽然第二ap已经接替第一ap为sta提供服务,但是,由于sta无法接收到第二ap发送的信标帧,无法将本地时间与第二ap的时间同步,进而无法通过第二ap进行数据收发。

为了解决该问题,本发明实施例提供一种wlan中切换ap方法及一种ap,由切换前的第一ap向sta发送唤醒帧,使得sta在切换后的第二ap发送信标帧的时刻能够处于苏醒状态,进而使得sta能够接收到第二ap发送的信标帧,根据第二ap发送的信标帧将本地时间与第二ap的时间同步。

结合图2,下面以第一ap将与其连接的第一sta切换为与第二ap为例,对本发明实施例提供的切换ap方法进行详细说明,该切换ap的方法包括如下步骤:

步骤101:第一ap确定与第一ap连接的第一sta处于省电模式,以及确定第一ap所在ess中的第二ap为第一sta需要连接的目标ap。

具体的,第一ap与第一sta相连接,指的是第一sta通过第一ap连接入wlan,由第一ap为第一sta提供服务,例如,第一ap为第一sta转发数据;又例如,在第一sta进入省电模式时,第一sta为第一sta缓存数据。

第一sta可以为与第一sta连接的任一sta,该第一在进入省电模式时,会向连接的第一ap发送第一sta进入省电模式的记录,第一ap根据本地保存的该记录即可确定第一sta进入省电模式。

在步骤101中,第一ap可以根据前面介绍的方式获知第一ap漫游门限,且获知同一ess中的第二ap为第一ap需要连接的目标ap,本发明实施例在此不予重复。

步骤102:第一ap向第一sta发送唤醒帧,该唤醒帧用于指示第一sta在第二ap基于为第一sta分配的第一bssid向第一sta发送信标帧时处于苏醒状态。

其中,sta处于苏醒状态可以是该sta处于激活模式,或者该sta处于省电模式并进入了(例如根据侦听间隔进入)苏醒状态。处于苏醒状态的sta打开其射频模块。

步骤102中的唤醒帧可以有多种实现方式,包括但不限于为以下实现方式中的任一种:

方式1,唤醒帧为信标帧,该信标帧包括用于更新第一sta苏醒时间的字段,该用于更新第一sta苏醒时间的字段用于指示第一sta将苏醒时间调整至第二ap基于第一bssid发送信标帧的时间。

通常,第一ap基于第一bssid向第一sta发送的信标帧中,包括用于指示第一sta将苏醒时间与第一ap发送信标帧的时间同步的字段。但是,本发明实施例中,为了保证第一sta能够接收到第二ap发送的信标帧,第一 ap可以将发送给第一sta的信标帧中的该用于更新第一sta苏醒时间的字段的值,修改后的该字段用于指示第一sta将苏醒时间与第二ap发送信标帧的时间同步,这个包括指示第一sta将苏醒时间调整至第二ap基于第一bssid发送信标帧的时间的字段的信标帧即可作为本发明实施例中的唤醒帧。

其中,第一ap要确定自己的信标帧发送时间与第二ap的信标帧发送时间之间的差值,才能确定该包括指示第一sta将苏醒时间调整至第二ap基于第一bssid发送信标帧的时间的字段。由于第一ap和第二ap相邻,第一ap可以接收到第二ap发送的信标帧,该信标帧可以是传统的信标帧,即第二ap基于第二ap自身的bssid发送的信标帧。第一ap确定接收第二ap的信标帧时,第一ap的本地时间,并计算出自己发送下一个信标帧的时间与该接收第二ap信标帧的时间的时间差值(t_offset),然后根据该时间差值确定该用于更新第一sta苏醒时间的字段的值。如果第二ap发送信标帧的周期和第一ap发送信标帧的周期不同,计算时间差值时还可以考虑两个ap发送信标帧的周期间的差值。可选的,计算上述时间差值还可以考虑到第一ap接收到第二ap发送得而信标帧的时间与第二ap实际发送该信标帧的时间之间的时延。

例如,信标帧中的时间戳(英文:timestamp)字段为该用于更新sta苏醒时间的字段,该时间戳字段用于使sta的本地时间与ap的时间同步。如果第一sta不需要发生ap切换,则第一ap在时刻t1向第一sta发送的信标帧的时间戳字段的值为a;而在需要将第一sta切换至第二ap的情况下,第一ap在时刻t1向第一sta发送的信标帧的时间戳字段的值调整为(a-t_offset),这样,第一sta根据(a-t_offset)进行时间同步后,虽然会造成第一sta与第一ap的时间不同步,却能够使得第一sta的下一个苏醒时间与第二ap发送信标帧的时间同步。

又例如,信标帧中该用于更新sta苏醒时间的字段还可以为信标间隔(英文:beaconinterval)或侦听间隔字段。其中,信标间隔字段为ap发送信标帧 的间隔,侦听间隔字段为信标间隔字段的整数倍,表示sta接收信标帧的间隔。如果第一sta不需要发生ap切换,则第一ap在时刻t1向第一sta发送的信标帧中信标间隔字段的值为b,侦听间隔字段的值为k*b,k为正整数;而在需要将第一sta切换至第二ap的情况下,第一ap在时刻t1向第一sta发送的信标帧的信标间隔字段的值为(b-d),侦听间隔字段的值为k*(b-d),其中,k*d=t_offset,这样,第一sta根据侦听间隔l字段在k*(b-d)时长后进入下一次苏醒时间,该时间正好是第二ap发送信标帧的时间。

通过上述方式1,第一ap在确定将第一sta切换至第二ap后,向第一sta发送信标帧,该信标帧中用于更新第一sta苏醒时间的字段指向第二ap发送信标帧的时间,而不是第一ap发送信标帧的时间。这样,第一sta接收该信标帧之后,将之后的苏醒时间调整至与第二ap发送信标帧同步的时间,使得第一sta能够接收到第二ap发送的信标帧。

需要说明的是,方式1中第一sta的苏醒时间与第二ap的信标帧发送时间同步,指的是第一sta的苏醒时间的集合是第二ap的信标帧发送时间集合的子集,两个集合可以相等,但并不一定相等。

方式2,唤醒帧包括信标帧,该信标帧包括指示第一sta在省电模式下保持苏醒状态的字段。

通常,处于省电模式的第一sta从瞌睡状态进入苏醒状态,接收连接的第一ap发送的信标帧,如果该信标帧中没有包括使第一sta保持苏醒状态的字段,则第一sta从苏醒状态切换回瞌睡状态。如果该信标帧中包含该使第一sta保持苏醒状态的字段,第一sta接收到该信标帧后保持苏醒状态。

例如,信标帧中唤醒第一sta的字段可以为数据待传指示信息(英文:deliverytrafficindicationmessage,dtim)字段。

通常,第一ap会在为连接的第一sta缓存数据帧或管理帧后,在向第一sta发送的信标帧的dtim字段中将第一sta对应的位置1,告知第一sta有可缓存单元(英文:bufferableunit,bu)需要获取。处于省电模式的第一 sta在苏醒时间打开射频模块,接收该信标帧,并根据信标帧中的dtim字段保持苏醒状态。并向第一ap发送一个竞选(poll)帧,第一ap在收到该poll帧后向第一sta发送为第一sta所缓存的数据包。

而本发明实施例中,在需要将处于省电模式的第一sta切换至第二ap时,即使第一ap没有为第一sta缓存数据帧或管理帧,第一ap仍然在向第一sta发送的信标帧中添加使第一sta保持苏醒状态的字段(如,将第一sta对应的位数置1的dtim字段),使第一ap保持苏醒状态,进而使其能够接收到第二ap发送的信标帧。

可选的,第一sta接收到第一ap发送的上述第三信标帧后,向第一ap发送poll帧,第一ap接收到该poll帧之后,不向第一sta发送可缓存单元bu。而第一sta由于接收不到针对poll帧发送的可缓存单元,第一sta将一直保持苏醒状态,直至接收到第一ap针对该poll帧所发送的可缓存单元,或者直至第一sta的信标帧发送时间的到来。

方式3,与上述方式2的不同之处在于,第一ap发送给第一sta的信标帧中,包括指示第一sta从省电模式切换至激活模式的字段。

具体实施时,方式2与方式3之间存在如下两种情况:

情况1,方式2中第一ap向第一sta中发送的信标帧中包括字段a,该字段a用于指示第一sta保持苏醒状态;而方式3中第一ap向第一sta发送的信标帧中包括字段b,该字段b用于指示第一sta从省电模式切换至激活模式。其中,字段a与字段b为两个不同的字段。

情况2,方式2中第一ap向第一sta中发送的信标帧中包括字段a,在方式2所在的应用场景中,第一ap与第一sta约定,该字段a用于指示第一sta保持苏醒状态。方式3中第一ap向第一sta中发送的信标帧中同样包括字段a,但在方式3所在的应用场景中,第一ap与第一sta约定,该字段a用于指示第一sta从省电模式切换至激活模式。例如,在一种可能的实现方式中,第一sta接收到dtmi位置1的信标帧后不退出省电模式且保持 苏醒状态;而在另一种可能的实现方式中,第一sta接收到dtmi位置1的信标帧后,向连接的ap发送退出省电模式的记录,退出省电模式,进入激活模式。

需要说明的是,无论上述在方式2中第一sta在不退出省电模式的情况下保持苏醒状态,还是在方式3中第一sta从省电模式切换至激活模式,第一sta的射频模块均处于工作状态,能够接收到第二ap基于第一bssid发送的信标帧。

方式4,结合方式2,第一ap在向第一sta发送发送指示第一sta保持苏醒状态的信标帧之后,向第一sta发送至少一个数据帧,该数据帧中包括指示第一sta继续保持苏醒状态的字段。

本发明实施例中,所谓的数据帧可以为包含传输数据的数据帧,也可以为未包含传输数据的空数据帧。

具体的,第一sta接收到第一ap发送的上述第三信标帧后,向第一ap发送poll帧,第一ap接收该poll帧之后,向第一sta发送至少一个数据帧(包括空数据帧的情形),其中,至少一个数据帧中的每个帧的“moredata”字段置1,指示第一sta继续保持苏醒状态并继续向第一ap发送poll帧,而第一ap则继续在向第一sta发送的数据帧中将“moredata”字段置1。这样,第一sta将保持苏醒状态,直至第一ap不将发送给第一sta的数据帧中的“moredata”字段置1。

方式5,结合方式3,第一ap在向第一sta发送发送指示第一sta从省电模式切换至激活模式的信标帧之后,向第一sta发送至少一个数据帧。

第一sta在从省电模式切换至激活模式后,可以在激活模式下保持一段时长,该时长可以由第一sta、第一ap或二者协商确定。如果该保持激活模式的时长较短,则第一sta可能在第二ap的信标帧发送时间到来前又从激活模式切换回省电模式,导致第一sta无法接收到第二ap基于第一bssid发送的信标帧。

为了解决该问题,本发明实施例中,第一ap在向第一sta发送用于指示第一sta从省电模式切换至激活模式的信标帧之后,还要向第一sta发送1个或多个数据帧(包括空数据帧的情形)。第一sta在接收到每个数据帧之后,会在激活模式保持一段时间,因此,如果不间断发送数据帧,则第一sta会一直保持激活模式。

例如,假设第一sta的省电策略设定为:第一sta在激活模式下如果超过时长s未进行数据收发,则从激活模式切换至省电模式。第一sta在t1时刻接收第一ap发送的包括用于用于指示第一sta从省电模式切换至激活模式的字段的信标帧,从省电模式切换至激活模式,如果第一sta没有进行数据收发,则在(t1+s)时刻会再次进入省电模式。为了避免这种情况的发生,本发明实施例中,第一ap在(t1+s)时刻来临前的(t1+s-m)时刻,向第一sta发送空数据帧,第一sta接收该空数据帧后,将在(t1+s-m)至(t1+2s-m)时间段内保持激活模式。以此类推,在第一sta的激活模式结束之前,第一ap再次向第一sta发送空数据帧(也可以为包含有传输数据的数据帧),以使第一sta继续保持激活模式。

上述方式4以及方式5中,第一ap通过在向第一sta发送第三信标帧之后,向第一sta发送的多个数据帧,使得第一sta维持苏醒状态,进而使第一sta能够接收到第二ap发送的信标帧。

需要说明的是,在不冲突的情况下,上述方式1至上述方式5中任意两项或多项可以结合使用,例如,第一ap既向第一sta发送使其将本地时间与第二ap的时间同步的信标帧,又向第一sta发送多个空数据帧,这些空数据帧中的“moredata”字段置1,指示第一sta保持苏醒状态。

另外,上述方式1中第一sta的苏醒时间与第二ap的信标帧发送时间同步,指的是第一sta的苏醒时间的集合是第二ap的信标帧发送时间集合的子集,两个集合可以相等,但并不一定相等。

步骤103:第一ap向第二ap发送切换指令,该切换指令用于指示第二 ap基于第一bssid为第一sta提供服务。

具体的,该切换指令包括第一sta的标识,用于指示第二ap为第一sta提供服务。可选的,如果第一ap或漫游控制器在为第一sta分配第一bssid之后,并未立即将第一sta与第一bssid的映射告知第二ap,则第一ap向第二ap发送的该切换指令中还可以包括为第一sta分配的第一bssid,以使第二ap能够基于第一bssid为第一sta提供服务。

步骤104:第一sta接收唤醒帧,在第二ap的信标帧发送时间保持苏醒状态。

步骤104中第二ap根据该唤醒帧在第二ap的信标帧发送时间保持苏醒状态的具体实现方式在步骤102中已有描述,在此不再重复。另外,步骤104中,第一sta在第二ap的信标帧发送时间保持苏醒状态,指的是第一sta在第二ap的任一(或,任意多个)信标帧发送时间保持苏醒状态。

步骤105:第二ap接收该切换指令,并基于为第一sta分配的第一bssid为第一sta提供服务。

具体的,第二ap接收切换指令之后,负责为第一sta提供服务。所谓提供服务,包括:第二ap基于第一bssid向第一sta发送信标帧,以使第一sta根据信标帧维护与第二ap之间的链路。

其中,第二ap获得第一sta与第一bssid的映射,可以有如下实现方式:漫游控制器在为第一sta分配第一bssid之后,即将第一sta与第一bssid的映射发送给ess内的每个ap,第二ap进而能够获知漫游控制器为第一sta分配的第一bssid。或者,第二ap在接收到第一ap发送的切换指令后,请求漫游控制器向第二ap发送第一sta对应的bssid,第二ap进而能够获知该第一bssid。或者,第一ap在向第二ap发送切换指令时,一并将第一sta对应的第一bssid发送给第二ap。

步骤106:第一ap停止为第一sta提供服务。

具体的,第一ap停止为第一sta提供服务,指的是第一ap不再将第一 sta作为其需要提供正常的wlan服务的sta,例如不再为第一sta发送基于其bssid的信标帧、转发数据、缓存数据,等等。

结合前述步骤102的多种实现方式中的方式2至方式5中的任一种,第一ap可能会在执行完步骤102以及步骤103之后,继续向第一sta发送唤醒帧,指示第一sta在第二ap的信标帧发送时间保持苏醒状态。在上述第一ap向第一sta发送唤醒帧的行为中,第一ap不是向第一sta提供正常wlan服务,因此,步骤106中所谓第一ap停止为第一sta提供服务,与上述第一ap在执行完步骤102以及步骤103之后继续向第一sta发送唤醒帧不冲突。

另外,在上述ap切换的前后,sta使用的ip地址不发生变化。从sta的角度来看,其连接的ap的bssid不变,自己仍然使用同一ip地址进行数据收发,因此,本发明实施例中,sta根本感知不到ap已发生切换。

本发明实施例上述技术方案中,ess中的第一sta被分配唯一的第一bssid,ess中的与第一sta连接的ap基于第一bssid为第一sta提供服务。第一ap在确定连接的第一sta达到漫游门限,且该第一sta处于省电模式时,一方面向第一sta需要连接的第二ap发送切换指令,指示第二ap基于第一bssid为第一sta提供服务;另一方面,第一ap向第一sta发送唤醒帧,指示第一sta在第二ap的信标帧发送时间保持苏醒状态,进而使得第一sta能够接收到第二ap发送的信标帧,能够根据第二ap发送的信标帧维护与第二ap之间的链路,保证第一sta能够接受第二ap提供的服务。上述sta连接ap的切换的过程由ap侧执行,因此,即使在第一sta处于省电模式,且关闭射频模块的情况下,第一sta的ap切换也可以正常进行,保证第一sta在打开射频模块后,能够通过ess中的ap进行通信,且由于第一sta能够切换连接信号较佳的ap,第一sta的通信质量较佳。

不仅如此,在第一ap为第一sta缓存有数据时,第一ap还会将为第一sta缓存的数据移交给第二ap,由第二ap将缓存数据发送给第一sta,避免数据的丢失。

在一种可能的实现方式中,参照图3,在步骤102之前还包括如下步骤:

步骤107:第一ap判断自身的信标帧发送时间与第二ap的信标帧发送时间是否同步,若是,则跳过步骤102,直接执行步骤103,若不是,则既要执行步骤102,也要执行步骤103。

具体的,第一ap在确定需要将第一sta切换至第二ap之后,首先判断第二ap与第一ap发送信标帧的时间是否同步,如果同步,则能够接收到第一ap发送的信标帧的第一sta本身就能够接收到第二ap发送的信标帧,第一ap可以不执行步骤102,直接执行步骤103。

如果第二ap与第一ap发送信标帧的时间不同步,第一ap执行步骤102,使得第一sta的苏醒时间为第二ap发送信标帧的时间。

上述技术方案中,第一ap判断第一ap与第二ap发送信标帧的时间是否同步,在二者同步时,不需要向第一sta发送调整其处于苏醒状态的时间的唤醒帧,只有在二者不同步时,才向第一sta发送该唤醒帧,不仅能够保证第一sta能够接收到第二ap发送的信标帧,也能够在第一ap与第二ap发送信标帧的时间同步时减少唤醒帧的发送,节约传输资源。

在另一种可能的实现方式中,第二ap在确定与第一sta连接成功后,向第一ap发送切换成功消息,以使第一sta知道第一sta已成功切换至第二ap,而第二ap在接收到该切换成功消息之后,可以停止向第一sta发送步骤102中的唤醒帧。

其中,第二ap确定与第一sta连接成功的方式包括:

方式a,第二ap向第一sta发送需要第一sta返回报文的帧,第一sta向第二ap返回报文,第二ap接收到返回报文,即可确定与第一sta已成功建立连接。

该需要第一sta返回报文的帧可以有多种实现方式,例如,该帧为数据帧,第一sta接收到第二ap发送的数据帧后,向第二ap返回ack帧。由于第一sta发送给第二ap的ack帧中包括第二ap的标识,而第二ap基于 第一bssid为第一sta提供服务,且第二ap只有为第一sta提供服务时才以第一bssid作为自己的bssid,因此,第二ap根据接收ack帧中的第一bssid即可确定此ack帧为第一sta所发送的,进而确定与第一sta已成功建立连接。

可选的,由于第一sta在接收到第二ap发送的信标帧之后会保持较短时间的苏醒状态,因此,第二ap可以在向第一sta发送信标帧之后的该较短时间内向第一sta发送该用于确定第二ap确定与第一sta是否连接成功的帧,以使得第一sta能够接收到该帧,并根据该帧返回报文。

方式b,处于省电模式的第一sta可能会主动向连接的ap发送报文,第二ap接收这些报文之后,即可确定与第一sta成功建立连接。

例如,第一sta在关闭省电模式时,会向连接的ap发送关闭省电模式的记录,第二ap接收该包含该记录的报文,即可确定与第一sta成功建立连接。

上述技术方案中,第二ap能够根据接收到第一sta发送的报文确定与第一sta建立连接,并向第一ap发送切换成功消息,以使第一sta知道第一sta已成功切换至第二ap。第一ap可以在接收到该切换成功消息之前向第一sta发送唤醒帧,保证第一sta能够接收第二ap发送的信标帧,而在第一ap在接收到该唤醒帧之后,停止向第一sta发送该唤醒帧,不仅可以节约传输资源,还可以避免第一sta的响应混乱。

本发明实施例还提供一种切换ap的设备200,该设备200作为wlan中的ap。图4为设备200的结构示意图,设备200包括:处理器201以及收发器202。

其中,处理器201,用于:确定与设备200连接的sta处于省电模式,其中,设备200基于所述sta所对应的bssid为所述sta提供服务,所述sta所对应的bssid与和所述sta在同一ess中的任意其他sta所对应的bssid不同;确定在所述ess内的第二ap为目标ap,所述目标ap为所述sta切换后连接的ap;生成唤醒帧,所述唤醒帧用于指示所述sta在所述第二ap 基于所述sta所对应的bssid发送信标帧时处于苏醒状态;生成切换指令,所述切换指令用于指示所述第二ap基于所述sta所对应的bssid为所述sta提供服务;

收发器202,与处理器201耦合,用于:向所述sta发送所述唤醒帧;以及向所述第二ap发送所述切换指令。

本发明实施例中,处理器201与收发器202可以为两个分立的元件,二者通过总线连接;另外,处理器201与收发器202也可以集成在一起,本发明实施例不予限定。

处理器201可以是一个处理元件,也可以是多个处理元件的统称。例如,处理器可以是中央处理器(英文:centralprocessingunit,cpu),也可以是特定集成电路(英文:applicationspecificintergratedcircuit,asic),或者是被配置成实施本发明实施例的一个或多个集成电路。

收发器202包括天线以及与该天线连接的射频模块。可选的,在设备200通过光纤网络等有线网络与第二ap进行通信时,收发器202除了包括上述射频模块以及天线之外,还包括有线通信类型的数据收发器,如以太网数据收发器。

在一种可能的实现中,处理器201在用于:生成所述唤醒帧之前,还用于:确定设备200的信标帧发送时间与所述第二ap的信标帧发送时间不同步。

在一种可能的实现中,所述唤醒帧包括第一信标帧,所述第一信标帧包括用于更新所述sta苏醒时间的字段,所述用于更新所述sta苏醒时间的字段用于指示所述sta将苏醒时间调整至所述第二ap基于所述sta所对应的bssid发送信标帧的时间。

在一种可能的实现中,所述收发器202还用于:接收第二ap发送的第二信标帧;

所述处理器201还用于:确定所述收发器接收到所述第二信标帧的时间,并根据设备200的信标帧发送时间以及所述收发器接收到所述第二信标帧的时 间确定设备200的信标帧发送时间与所述第二ap的信标帧发送时间之前的时间间隔;并根据所述时间间隔确定用于更新所述sta苏醒时间的字段。

在一种可能的实现中,所述唤醒帧包括第三信标帧,所述第三信标帧包括指示所述sta保持苏醒状态的字段。

在一种可能的实现中,所述唤醒帧还包括:在所述第三信标帧之后发送的至少一个数据帧,所述至少一个数据帧用于使所述sta保持苏醒状态。

在一种可能的实现中,所述至少一个数据帧包括空数据帧。

在一种可能的实现中,设备200还包括存储器203,该存储器203可以用于:存储连接的sta发送的数据,存储其他网元发送给sta的数据,存储sta的状态记录(如是否处于省电模式),存储其他网元发送给设备200的指令,等等。

可选的,该存储器203还可以存储可执行指令,处理器201读取并运行存储器203中的可执行指令,以实现本发明实施例中设备200所具有的的功能。

上述存储器203可以是一个存储元件,也可以是多个存储元件的统称,且用于存储可执行程序代码或装置运行所需要参数、数据等。且上述存储器203可以包括随机存储器(英文:random-accessmemory,ram),也可以包括非易失性存储器(英文:non-volatilememory,nvm),等等。

需要说明的是,图4中的存储器203以及以太网数据收发器采用虚线框表示,表明其不是本发明实施例中ap实现其功能的所必需的模块。通常,ap还具有本发明实施例中描述功能之外的功能,这些功能需要基于存储器203和/或以太网数据收发器所实现。

以上设备200包括的各组成模块所执行操作的具体实现方式可以参照图2以及图3对应的实施例的中由第一ap执行的对应步骤,本发明实施例不再赘述。

本发明实施例还提供一种切换ap的设备,该设备可作为wlan中的ap。该设备包括:处理器以及收发器。

其中,收发器用于接收第一ap发送的切换指令,切换指令包括第一sta的标识.

处理器,与收发器耦合,用于:控制ap基于为第一sta生成的第一bssid为第一sta提供服务。

在一种可能的实现中,收发器还用于:接收第一sta发送的任一报文;

处理器还用于:在收发器接收第一sta发送的任一报文后,生成切换成功消息;

收发器还用于:向第一sta发送切换成功消息。

在一种可能的实现中,处理器还用于:在收发器接收到切换指令后,生成需要第一sta返回报文的帧;

收发器还用于:向第一ap发送该需要第一sta返回报文的帧。

以上ap包含包括的各组成模块所执行操作的具体实现方式可以参照图2对应的实施例的中由第二ap执行的对应步骤,本发明实施例不再赘述。

本发明实施例还提供一种通信系统,该系统包括多个ap、多个sta。

其中,多个ap中的第一ap用于:确定与第一ap连接的第一sta处于省电模式,并确定第一sta需要切换至与同一ess中的第二ap连接;以及向第一sta发送唤醒帧,唤醒帧用于使第一sta在第二ap发送信标帧时间处于苏醒状态;以及向第二ap发送切换指令,切换指令用于使第二ap基于为第一sta分配的第一bssid为第一sta提供服务;

多个sta中的第一sta用于:接收唤醒帧,并根据唤醒帧在第二ap发送信标帧的时间保持苏醒状态;

多个ap中的第二ap用于:接收第一ap发送的切换指令,切换指令包括第一sta的标识;并基于第一bssid为第一sta提供服务。

在一种可能的实现中,第一ap向所述sta发送唤醒帧之前,确定自身的信标帧发送时间与所述第二ap的信标帧发送时间不同步。

在一种可能的实现中,唤醒帧包括第一信标帧,该第一信标帧包括用于更 新所述第一sta苏醒时间的字段,所述字段用于指示所述第一sta将苏醒时间调整至所述第二ap基于所述第一sta所对应的第一bssid发送信标帧的时间。

在一种可能的实现中,第一ap在向所述第一sta发送唤醒帧之前,确定接收到第二ap发送的第二信标帧的时间;根据自身的信标帧发送时间以及确定第二ap发送的第二信标帧的时间确定所述第一ap的信标帧发送时间与所述第二ap的信标帧发送时间之前的时间间隔;根据所述时间间隔确定所述用于更新所述第一sta苏醒时间的字段。

在一种可能的实现中,唤醒帧还包括:在所述第三信标帧之后发送的至少一个数据帧,所述至少一个数据帧用于使所述第一sta保持苏醒状态。

在一种可能的实现中,所述至少一个数据帧包括空数据帧。

在一种可能的实现中,第二ap还用于:在接收第一sta发送的任一报文之后,向第一sta发送切换成功消息;

第一ap还用于:接收切换成功消息,并停止向第一sta发送唤醒帧。

在一种可能的实现中,通信系统还包括漫游控制器,用于为同一ess中的每个sta分配唯一的bssid,以使每个sta所连接的ap基于为sta分配的bssid为sta提供服务。

在一种可能的实现中,第一ap以及第二ap还用于:向漫游控制器上报对第一sta的信号指标的监测值;

漫游控制器还用于:根据监测值确定第一sta达到漫游门限,并确定第二ap为目标ap,向第一ap发送切换触发指令;

第一ap用于:确定第一sta达到漫游门限,并确定第二ap为目标ap,包括:接收切换触发指令,并根据切换触发指令确定第一sta达到漫游门限,并确定第二ap为目标ap。

以上系统包括的各设备所执行操作的具体实现方式可以参照图2以及图3对应的实施例的中的对应步骤,本发明实施例不再赘述。

本发明实施例还提供一种wlan中切换ap的装置,该wlan包括多个ap、多个sta。参照图5,所述装置包括:

第一确定模块301,用于确定与所述装置连接的sta处于省电模式,其中,所述装置基于所述sta所对应的bssid为所述sta提供服务,所述sta所对应的bssid与和所述sta在同一ess中的任意其他sta所对应的bssid不同;

第二确定模块302,用于确定所述ess内的第二ap为目标ap,所述目标ap为所述sta切换后连接的ap;

第一发送模块303,用于向所述sta发送唤醒帧,所述唤醒帧用于指示所述sta在所述第二ap基于所述sta所对应的bssid发送信标帧时处于苏醒状态;

第二发送模块304,用于向所述第二ap发送切换指令,所述切换指令用于指示所述第二ap基于所述sta所对应的bssid为所述sta提供服务;

停止服务模块305,用于在所述第二发送模块发送所述切换指令后,停止为所述sta提供服务。

在一种可能的实现中,所述唤醒帧包括第一信标帧,所述第一信标帧包括用于更新所述sta苏醒时间的字段,所述用于更新所述sta苏醒时间的字段用于指示所述sta将苏醒时间调整至所述第二ap基于所述sta所对应的bssid发送信标帧的时间。

在一种可能的实现中,所述装置还包括:

第三确定模块306,用于在所述第一发送模块发送所述唤醒帧之前,确定接收到所述第二ap发送的第二信标帧的时间;并根据自身的信标帧发送时间以及接收到所述第二信标帧的所述时间确定所述装置的信标帧发送时间与所述第二ap的信标帧发送时间之前的时间间隔;并根据所述时间间隔确定所述用于更新所述sta苏醒时间的字段。

在一种可能的实现中,所述唤醒帧包括第三信标帧,所述第三信标帧包括 指示所述sta保持苏醒状态的字段。

在一种可能的实现中,所述唤醒帧还包括:在所述第三信标帧之后发送的至少一个数据帧,所述至少一个数据帧用于使所述sta保持苏醒状态。

在一种可能的实现中,所述至少一个数据帧包括空数据帧。

以上装置包括的各组成模块所执行操作的具体实现方式可以参照图2以及图3对应的实施例的中由第一ap执行的对应步骤,本发明实施例不再赘述。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包括有程序代码的计算机可读存储介质(包括但不限于磁盘存储器、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的范围。这样,倘若本发明的这些修改和变型属于本发明权利要求的范围之内,则本发明也意图包括这些改动和变型在内。

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