减少数据饥饿的方法、无线通信站和系统的制作方法

文档序号:8460977阅读:515来源:国知局
减少数据饥饿的方法、无线通信站和系统的制作方法
【专利说明】减少数据饥饿的方法、无线通信站和系统
[0001]优先权申请
[0002]本申请要求2012年12月3日提交的美国申请N0.13/692,332的优先权权益,其全文包括在此以供参考。
技术领域
[0003]本发明实施例涉及通信网络。按照电气和电子工程师协会(IEEE)802.11标准族,一些实施例涉及在无线局域网(WLAN)内操作的无线设备。
【背景技术】
[0004]IEEE已经采用的WLAN —套标准,称为802.11。根据802.11,设备,也称为站(STA),在从发送STA或始发STA接收数据包时可以当作接收STA。始发STA可能偶尔丢失,或“丢弃”数据包,导致在接收STA发生数据饥饿或其它数据失去的表现。
[0005]因此,一般需要接收STA执行方法来减少或帮助防止由丢弃数据包引起的数据饥饿。
【附图说明】
[0006]图1示出实施了示例性实施例的两种或更多种设备(STA)的基本服务集(BSS);
[0007]图2是按照一些实施例在无线通信网络中减少数据饥饿的过程流程图;
[0008]图3按照一些实施例示出接收站(STA)的功能方框图;以及
[0009]图4是按照一些实施例示用于接收聚合媒体访问控制服务数据单元(A-MSDU)的过程流程图。
【具体实施方式】
[0010]下面的描述和附图充分地示出具体的实施例,从而使本领域技术人员能够实践所述的实施例。其它实施例可包括结构、逻辑、电气、过程、及其它改变。一些实施例的部分和特征可以被其它实施例的部分和特征包括,或取代。在权利要求书中所述的实施例包含这些权利要求书的所有可用的等价物。
[0011]图1按照一些实施例示出BSS 100 BSS 100可以遵照IEEE 802.11标准族的标准操作。BSS 100可能包括两种或更多种无线设备,或者说STA 110、STA 120。STA 110、STA120的任一个或两个可以作为数据包的始发站或接收器同时或分别操作。例如,在发送数据包到至少一个其它接收STA 120的时候,STA 110可作为发送器,或始发站。接收STA 120可以在发送确认(ACK)到始发STA 110的时候确认该数据包。
[0012]块ACK装置可以按照IEEE 802.11标准族的标准实施,以便通过将几个确认聚合入一帧来提高信道的效率。,始发STA 110可以请求通过发送附加块确认(ADDBA)请求到接收STA 120根据块ACK协议进行的通信。接收STA 120可以通过发送ADDBA响应帧至始发STA 110接受该请求。
[0013]当块ACK协议在始发STA 110和接收STA 120之间成功初始化时,始发STA 110可以发送数据包的块到接收STA 120。数据包可能不按顺序;例如,数据包可能不按照对应数据包的序列号(SN)子字段的顺序接收。因而,接收STA 120可以在传递数据包到下一最高媒体访问控制(MAC)进程之前,按顺序重新整理数据包。例如,在传递数据包到操作系统(OS)或应用程序进一步处理数据包之前,接收STA 120可以重新排序数据包成为顺序次序。接收STA 120可以利用缓存器,以下简称“重排序缓存器”,重新排序数据包。
[0014]重排序缓存器,维护用于始发STA 110和接收STA之间的每个块ACK协议,可以包括多个数据包。依照IEEE 802.11标准族的标准数据包可能是,例如,MSDU或A-MSDU。重排序缓存器可以包括WinStartBS数或子字段。WinStart B子字段可以指示尚未接收到的第一个(按SN上升次序)数据包SN子字段的数值。胃丨…匕化子字段指示在块ACK协议初始化时所确定的接收窗口的大小(即,根据块ACK协议在窗口内接收到的数据包的数量)。按照WinSizeB在重排序缓存器内数据包数量是有限的。重排序缓存器可以还包括WinEndB用于指示接收窗口的最高期望SN。
[0015]按照当前的IEEE 802.11标准,当接收STA 120接收完整的数据包序列时,接收STA 120可以传递数据包到下一更高层MAC进程。例如,当接收到具有对应于字段的SN的数据包时,或者当重排序缓存器填满时,数据包序列可被完整地指示。然后接收STA 120按递增SN子字段数值的顺序把数据包向上传递至下一更高层MAC进程,并开始于对应于重排序缓存器窗口开始数据包的具SN的数据包。如果重排序缓存器内没有用于下一个顺序的SN数值的数据包(以下简称“丢失”的SN数值),则接收STA 120可以在重排序缓存器内保留接收到的数据包的剩余部分直到该STA 120接收到有丢失的SN数值的数据包时,或直到重排序缓存器填满时。
[0016]然而,始发STA 110可以丢弃或另外未能发送具有有丢失SN数值的数据包。在这种情况下,接收STA 110在重排序缓存器内保留该数据包直到重排序缓存器填满时。根据在始发STA 110和接收STA 120之间的数据发送速率,重排序缓存器可能需要很长时间填满,并因此,在那段时间期间没有数据包被发送到下一最高层MAC进程。在这种情况下,无法满足下一最高层MAC进程的延迟需求。如示出的示例,接收STA 120可以以每秒一个数据包的速率接收数据,且接收窗口可容纳64个数据包(WinSizeB= 64)。因此,重排序缓存器不可能在多于一分钟内被填满,并且下一最高层MAC进程可能不会接收从接收STA 120传递了多于一分钟的数据包。
[0017]虽然IEEE 802.11规范声称始发STA 110将执行恢复方法以防止数据饥饿,不过一些始发STA可能不实施这些恢复方法。下一最高层MAC进程因此超时或另外以次优方式运行,并且用户体验会降级。
[0018]按照一些实施例,接收STA 120检测可能发生或已经发生的数据饥饿,并且接收STA 120执行步骤来回复数据饥饿以从重排序缓存器向下一最高层MAC进程转发可用的数据。图2示出由接收STA 120执行的用于减少数据饥饿的方法。
[0019]参考图2,在操作200中,接收STA 120可以把存储在缓存器内数据包传递到更高层MAC进程。基于数据包的SN子字段,接收STA 120可以按顺序次序传递数据包。该缓存器可以是重排序缓存器,其按照IEEE 802.11标准族的标准来配置。同样地,如上述对图1的描述,该缓存器可包括第一缓存器子字段,其用于存储尚未接收到的下一个数据包的SN(WinStartB),和第二缓存器子字段,其用于指示如图1所描述的最高期望SN(WinEndB)。通过接收对应于WinStartB的带有SN的数据包来触发该传递。当接收STA 120把数据包传递到更高层MAC进程时,接收STA 120可以重新设定看门狗定时器到初始值,例如零。
[0020]在操作210中,当遇到丢失数据包时,接收STA 120可以激活看门狗定时器。在传递操作200期间,基于该SN子字段的检测接收STA 120可以遭遇该丢失数据包。
[0021]当遇到该丢失数据包时,该STA 120可以在激活看门狗定时器之前,首先确定重排序缓存器是否为空。如果接收STA 120确定重排序缓存器为空(即,如果没有等待发送到下一更高层MAC进程的数据包),则没有即将来临的饥饿条件。因此,接收STA 120可不激活看门狗定时器,并且在看门狗定时器已经被激活的情况下,接收STA 120可以去激活看门狗定时器。另一方面,如果接收STA 120确定重排序缓存器不为空,因为可能有即将来临的饥饿状态,则接收STA 120可激活看门狗定时器。
[0022]在操作220中,当看门狗定时器期满时,接收STA 120可以发送删除块确认(DELBA)帧以终止与数据包的始发STA 110建立的块ACK协议。另外,当看门狗定时器期满时,接收STA 120可以把重排序缓存器内的任何数据包传递到
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1