一种报文缓存方法及接入点的制作方法

文档序号:7891819阅读:154来源:国知局
专利名称:一种报文缓存方法及接入点的制作方法
技术领域
本发明涉及无线通信技术领域中的节电报文缓存技术领域,尤其涉及一种报文缓存方法及接入点。
背景技术
当无线用户通过用户终端访问WLAN(Wireless Local Area Networks,无线局域网络)时不必位于特定的位置上,为了充分利用移动性的特点,会尽量避免一些因素对使用位置的限制,包括电源的供应,所以,用户终端一般使用电池供电,不过电池的电力有限, 为用户终端持续供电的时间也就有限,因此,WLAN在为无线用户提供便捷的无线接入服务的同时,能耗管理已成为网络大规模应用的一个重要的性能指标。802. 11标准中允许用户终端按照设定的策略在休眠状态和唤醒状态间切换,在处于休眠状态时,能够节省电池电量的消耗,从而增加电池续航能力,并定义了一系列的节电协议标准,确保无线网络中的用户终端在采用节电模式时能够进行正常通信,具体如图I 所示,包括如下步骤步骤101、用户终端进入休眠状态,向其关联的接入点发送休眠状态通知消息,告知接入点自身已经进入休眠状态。步骤102、接入点在接收到该休眠状态通知消息后,确定该用户终端已进入休眠状态,并在后续接收到将传输给该用户终端的报文后,将该报文缓存到与该用户终端对应的队列中,由于执行该处理操作的目的是节电,所以,将在用户终端处于休眠状态时为该用户终端缓存报文的该队列称作节电队列,将其中缓存的报文称作节电报文,节电队列深度则表征了该节电队列中当前缓存的节电报文量。步骤103、用户终端从休眠状态进入到唤醒状态后,向其接入的接入点发送唤醒状态通知消息,告知接入点自身已经进入唤醒状态。步骤104、接入点在接收到该唤醒状态通知消息后,确定该用户终端已进入唤醒状态,然后查询该用户终端对应的节电队列中是否缓存有节电报文,如果有,则将缓存的节电报文发送给该用户终端。对于接入点来说,内存空间是一项有限的资源,所以,为了避免缓存节电报文占用大量的内存空间而影响自身的其它性能,802. 11标准中定义接入点使用报文老化功能,即判断节电报文的缓存时长,当节电报文的缓存时长超过设定时长阈值时,丢弃该节电报文, 从而释放占用的内存空间。然而,使用报文老化功能虽然能在一定程度上控制缓存节电报文占用的内存空间,但是当归属接入点的所有用户终端中,同时处于休眠状态的用户终端较多时,仍可能出现缓存节电报文占用了大量内存空间,从而导致系统故障的情况。

发明内容
本发明实施例提供一种报文缓存方法及接入点,用以解决现有技术中存在的由于缓存节电报文占用大量内存空间而导致系统故障的问题。本发明实施例提供一种报文缓存方法,包括接入点接收将传输给第一用户终端的报文;当所述第一用户终端处于休眠状态时,确定所述接入点为缓存节电报文预先分配的缓存空间的剩余量;当所述剩余量不足,且所述第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃所述报文,所述第一深度阈值为分配的所述缓存空间除以当前归属所述接入点的用户终端的数量的值;当所述剩余量不足,且所述第一用户终端对应的节电队列深度未达到所述第一深度阈值时,从归属所述接入点的用户终端中,确定出节电队列深度大于所述第一深度阈值的第二用户终端,并通过丢弃所述第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将所述报文缓存到所述第一用户终端对应的节电队列中。本发明实施例还提供一种接入点,包括接收单元,用于接收将传输给第一用户终端的报文;缓存空间确定单元,用于当所述第一用户终端处于休眠状态时,确定本接入点为缓存节电报文预先分配的缓存空间的剩余量;缓存处理单元,用于当所述剩余量不足,且所述第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃所述报文,所述第一深度阈值为分配的所述缓存空间除以当前归属所述接入点的用户终端的数量的值;以及当所述剩余量不足,且所述第一用户终端对应的节电队列深度未达到所述第一深度阈值时,从归属所述接入点的用户终端中,确定出节电队列深度大于所述第一深度阈值的第二用户终端,并通过丢弃所述第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将所述报文缓存到所述第一用户终端对应的节电队列中。本发明有益效果包括 本发明实施例提供的方法中,接入点为缓存节电报文预先分配了缓存空间,在接收到将传输给第一用户终端的报文后,且当第一用户终端处于休眠状态时,确定分配的该缓存空间的剩余量,并在剩余量不足时,基于第一用户终端对应的节电队列深度是否达到第一深度阈值,确定是否缓存该报文,并在确定缓存该报文后,是通过释放已占用的缓存空间来缓存该报文,从而使得接入点缓存节电报文占用的内存空间不会超过预先分配的缓存空间,进而实现了对缓存节电报文占用的存储空间的有效控制,避免了由于缓存节电报文占用大量内存空间而导致系统故障的问题。并且,在释放已占用的缓存空间来缓存该报文时,是通过丢弃第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,并使用释放的缓存空间将该报文缓存到第一用户终端对应的节电队列中,其中,第二用户终端为节电队列深度大于该第一深度阈值的用户终端,且第一深度阈值为预先分配的缓存空间除以当前归属该接入点的用户终端的数量的值,所以,进一步实现了多个用户终端各自对应的节电队列深度的均衡,从而能够均衡的保证多个用户终端的节电性能。


图I为现有技术中用户终端采用节电模式时的报文缓存和传输的处理流程图2为本发明实施例提供的报文缓存方法的流程图3为本发明实施例I中提供的报文缓存方法的流程图4为本发明实施例2中提供的报文缓存方法的流程图5为本发明实施例3中提供的接入点的结构示意图。
具体实施方式
为了给出避免由于缓存节电报文占用大量内存空间而导致系统故障的实现方案,
本发明实施例提供了一种报文缓存方法及接入点,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本发明实施例提供一种报文缓存方法,如图2所示,包括步骤201、接入点接收将传输给第一用户终端的报文。步骤202、当第一用户终端处于休眠状态时,确定该接入点为缓存节电报文预先分配的缓存空间的剩余量。该预先分配的缓存空间是用于缓存与本接入点关联的所有用户终端的节电报文的,而并非是仅用于缓存第一用户终端的节电报文的。步骤203、当剩余量不足时,基于第一用户终端对应的节电队列深度是否达到第一深度阈值,丢弃或缓存该报文,具体如下当剩余量不足,且第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃该报文;当剩余量不足,且第一用户终端对应的节电队列深度未达到第一深度阈值时,从归属该接入点的用户终端中,确定出节电队列深度大于第一深度阈值的第二用户终端,并通过丢弃第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将报文缓存到第一用户终端对应的节电队列中,第一深度阈值为分配的缓存空间除以当前归属该接入点的用户终端的数量的值。进一步的,当剩余量足够时,可以将该报文缓存到第一用户终端对应的节电队列中。进一步的,在上述图2所示处理流程的基础上,还可以基于第二深度阈值,确定是否缓存该报文,具体可以是在上述步骤202中确定出缓存空间的剩余量之后执行,具体如下当剩余量足够时,判断第一用户终端对应的节电队列深度是否达到第二深度阈值,如果达到,丢弃该报文,如果未达到,将该报文缓存到第一用户终端对应的节电队列中。也可以是在上述步骤202中确定出缓存空间的剩余量之前,在上述步骤201接收将传输给第一用户终端的报文之后执行,具体如下确定第一用户终端对应的节电队列深度是否达到第二深度阈值,如果未达到,进入步骤202,如果达到,丢弃该报文。通过上述基于第二深度阈值确定是否缓存该报文的方案,能够进一步的有效控制每个用户终端对应的缓存队列深度的最大值,从而更有效的实现对缓存节电报文所占用内存空间量的控制。下面结合附图,用具体实施例对本发明提供的方法进行详细描述。实施例I :图3所示为本发明实施例I中提供的报文缓存方法的流程图,具体包括如下处理步骤步骤301、接入点接收到将传输给第一用户终端的报文,第一用户终端归属该接入步骤302、判断第一用户终端是否处于休眠状态,如果没有处于休眠状态,而是处于唤醒状态,进入步骤303,如果处于休眠状态,进入步骤304。步骤303、向第一用户终端发送该报文。步骤304、接入点确定自身为缓存节电报文预先分配的缓存空间的剩余量,即分配的缓存空间减去当前缓存节电报文所占用空间的值。本实施例中,预先分配的缓存空间的剩余量可以在每次剩余量发生变化后,及时更新并保存该剩余量的值,例如,在缓存报文、丢弃报文时,本步骤中可直接通过获取保存的剩余量的值,后续对此不再进行详细描述。其中,预先分配的缓存空间可以根据实际应用情况进行灵活设置,例如,接入点能够同时接入其中的用户终端的最大数量,每个用户终端的平均吞吐量等。本实施例中提出如下具体设置方式针对用户终端设置最大深度阈值,以便保证每个用户终端对应的节电队列深度不超过该最大深度阈值,该最大深度阈值即后续的第二深度阈值;并设置为该接入点分配的缓存空间为设定倍数的该最大深度阈值,例如,该设定倍数可以为10。步骤305、判断确定的剩余量是否足够用于保存该报文,如果剩余量不足,进入步骤306,如果剩余量足够,进入步骤311。步骤306、判断第一用户终端对应的节电队列深度是否达到第一深度阈值,如果达到,进入步骤307,如果未达到,进入步骤308。其中,第一深度阈值为分配的缓存空间除以当前归属该接入点的用户终端的数量的值,相应的,在归属该接入点的用户终端的数量发生变化时,可以及时更新第一深度阈值,以便保证基于该第一深度阈值进行报文缓存操作的准确。步骤307、当第一用户终端对应的节电队列深度达到第一深度阈值时,表示为第一用户终端缓存节电报文所占用的空间,已经达到归属该接入点的当前处于休眠状态的所有用户终端的平均标准,所以,此时可以不缓存该报文,执行丢弃该报文的操作。步骤308、第一用户终端对应的节电队列深度未达到第一深度阈值时,表示为第一用户终端缓存节电报文所占用的空间,未达到归属该接入点的当前处于休眠状态的所有用户终端的平均标准,所以,此时需要缓冲该报文,具体的,本步骤中首先从归属该接入点的用户终端中,确定出节电队列深度大于第一深度阈值的第二用户终端。步骤309、丢弃第二用户终端对应的节电队列中缓存的节电报文,以释放缓存空间。本步骤中,为了减少丢弃的节电报文的数量,可以仅丢弃一个第二用户终端的节电报文,并且可以在满足释放的缓存空间足够保存该报文的条件下,尽可能少的丢弃节电报文,或者也可以预先设置数量,丢弃该设置数量的节电报文,或者也可以在丢弃节电报文后使得该第二用户终端对应的节电队列深度刚好达到第一深度阈值。步骤310、使用释放的缓存空间将该报文缓存到第一用户终端对应的节电队列中。步骤311、当剩余量足够时,判断第一用户终端对应的节电队列深度是否达到第二深度阈值,如果达到,进入步骤312,如果未达到,进入步骤313。其中,第二深度阈值用于限定每个用户终端对应的节电队列深度的最大值。步骤312、当第一用户终端对应的节电队列深度达到第二深度阈值时,表示当前为第一用户终端缓存的节电报文量已经满足设定的节电报文缓存要求,即能够满足第一用户终端的节电性能,所以执行丢弃该报文的处理。步骤313、当第一用户终端对应的节电队列深度未达到第二深度阈值时,表示当前为第一用户终端缓存的节电报文量还无法满足设定的节电报文缓存要求,即无法满足第一用户终端的节电性能,所以将该报文缓存到所述第一用户终端对应的节电队列中。实施例2 图4所示为本发明实施例2中提供的报文缓存方法的流程图,具体包括如下处理步骤步骤401、接入点接收到将传输给第一用户终端的报文,第一用户终端归属该接入步骤402、判断第一用户终端是否处于休眠状态,如果没有处于休眠状态,而是处于唤醒状态,进入步骤403,如果处于休眠状态,进入步骤404。步骤403、向第一用户终端发送该报文。步骤404、判断第一用户终端对应的节电队列深度是否达到第二深度阈值,如果达到,进入步骤405,如果未达到,进入步骤406。其中,第二深度阈值用于限定每个用户终端对应的节电队列深度的最大值。步骤405、当第一用户终端对应的节电队列深度达到第二深度阈值时,表示当前为第一用户终端缓存的节电报文量已经满足设定的节电报文缓存要求,即能够满足第一用户终端的节电性能,所以执行丢弃该报文的处理。步骤406、当第一用户终端对应的节电队列深度未达到第二深度阈值时,表示当前为第一用户终端缓存的节电报文量还无法满足设定的节电报文缓存要求,即无法满足第一用户终端的节电性能,所以应考虑缓存该报文。本步骤中,首先接入点确定自身为缓存节电报文预先分配的缓存空间的剩余量, 即分配的缓存空间减去当前缓存节电报文所占用空间的值。步骤407、判断确定的剩余量是否足够用于保存该报文,如果剩余量不足,进入步骤408,如果剩余量足够,进入步骤413。步骤408、判断第一用户终端对应的节电队列深度是否达到第一深度阈值,如果达到,进入步骤409,如果未达到,进入步骤410。其中,第一深度阈值为分配的缓存空间除以当前归属该接入点的用户终端的数量的值,相应的,在归属该接入点的用户终端的数量发生变化时,可以及时更新第一深度阈值,以便保证基于该第一深度阈值进行报文缓存操作的准确。步骤409、当第一用户终端对应的节电队列深度达到第一深度阈值时,表示为第一用户终端缓存节电报文所占用的空间,已经达到归属该接入点的当前处于休眠状态的所有用户终端的平均标准,所以,此时可以不缓存该报文,执行丢弃该报文的操作。步骤410、第一用户终端对应的节电队列深度未达到第一深度阈值时,表示为第一用户终端缓存节电报文所占用的空间,未达到归属该接入点的当前处于休眠状态的所有用户终端的平均标准,所以,此时需要缓冲该报文,具体的,本步骤中首先从归属该接入点的用户终端中,确定出节电队列深度大于第一深度阈值的第二用户终端。步骤411、丢弃第二用户终端对应的节电队列中缓存的节电报文,以释放缓存空间。本步骤中,为了减少丢弃的节电报文的数量,可以仅丢弃一个第二用户终端的节电报文,并且可以在满足释放的缓存空间足够保存该报文的条件下,尽可能少的丢弃节电报文,或者也可以预先设置数量,丢弃该设置数量的节电报文,或者也可以在丢弃节电报文后使得该第二用户终端对应的节电队列深度刚好达到第一深度阈值。步骤412、使用释放的缓存空间将该报文缓存到第一用户终端对应的节电队列中。步骤413、当剩余量足够时,将该报文缓存到所述第一用户终端对应的节电队列中。采用上述实施例I和2中的报文缓存方法,接入点为缓存节电报文预先分配了缓存空间,在接收到将传输给第一用户终端的报文后,且当第一用户终端处于休眠状态时,确定分配的该缓存空间的剩余量,并在剩余量不足时,基于第一用户终端对应的节电队列深度是否达到第一深度阈值,确定是否缓存该报文,并在确定缓存该报文后,是通过释放已占用的缓存空间来缓存该报文,从而使得接入点缓存节电报文占用的内存空间不会超过预先分配的缓存空间,进而实现了对缓存节电报文占用的存储空间的有效控制,避免了由于缓存节电报文占用大量内存空间而导致系统故障的问题。并且,在释放已占用的缓存空间来缓存该报文时,是通过丢弃第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,并使用释放的缓存空间将该报文缓存到第一用户终端对应的节电队列中,其中,第二用户终端为节电队列深度达到该第一深度阈值的用户终端,且第一深度阈值为预先分配的缓存空间除以当前归属该接入点的用户终端的数量的值,所以,进一步实现了多个用户终端各自对应的节电队列深度的均衡,从而能够均衡的保证多个用户终端的节电性能。实施例3 基于同一发明构思,根据本发明上述实施例提供的报文缓存方法,相应地,本发明实施例3还提供了一种访问接入带你,其结构示意图如图5所示,具体包括接收单元501,用于接收将传输给第一用户终端的报文;缓存空间确定单元502,用于当所述第一用户终端处于休眠状态时,确定本接入点为缓存节电报文预先分配的缓存空间的剩余量;缓存处理单元503,用于当所述剩余量不足,且所述第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃所述报文,所述第一深度阈值为分配的所述缓存空间除以当前归属所述接入点的用户终端的数量的值;以及当所述剩余量不足,且所述第一用户终端对应的节电队列深度未达到所述第一深度阈值时,从归属所述接入点的用户终端中,确定出节电队列深度大于所述第一深度阈值的第二用户终端,并通过丢弃所述第二用户终端
9对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将所述报文缓存到所述第一用户终端对应的节电队列中。进一步的,缓存处理单元503,还用于当所述剩余量足够时,将所述报文缓存到所述第一用户终端对应的节电队列中;或者当所述剩余量足够时,判断所述第一用户终端对应的节电队列深度是否达到第二深度阈值,如果达到,丢弃所述报文,如果未达到,将所述报文缓存到所述第一用户终端对应的节电队列中。进一步的,上述接入点,还包括队列深度判断单元504,用于在缓存空间确定单元502确定所述剩余量不足之前, 确定所述第一用户终端对应的节电队列深度未达到第二深度阈值。进一步的,缓存处理单元503,还用于当队列深度判断单元504确定所述第一用户终端对应的节电队列深度达到第二深度阈值时,丢弃所述报文。进一步的,缓存处理单元503,还用于当所述剩余量足够时,将所述报文缓存到所述第一用户终端对应的节电队列中。综上所述,本发明实施例提供的方案,包括接入点接收将传输给第一用户终端的报文;并当第一用户终端处于休眠状态时,确定该接入点为缓存节电报文预先分配的缓存空间的剩余量;以及当剩余量不足,且第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃该报文;当剩余量不足,且第一用户终端对应的节电队列深度未达到第一深度阈值时,从归属该接入点的用户终端中,确定出节电队列深度大于第一深度阈值的第二用户终端,并通过丢弃第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将报文缓存到第一用户终端对应的节电队列中,第一深度阈值为分配的缓存空间除以当前归属该接入点的用户终端的数量的值。采用本发明实施例提供的方案, 避免了由于缓存节电报文占用大量内存空间而导致系统故障的问题,并且能够均衡的保证多个用户终端的节电性能。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种报文缓存方法,其特征在于,包括接入点接收将传输给第一用户终端的报文;当所述第一用户终端处于休眠状态时,确定所述接入点为缓存节电报文预先分配的缓存空间的剩余量;当所述剩余量不足,且所述第一用户终端对应的节电队列深度达到第一深度阈值时, 丢弃所述报文,所述第一深度阈值为分配的所述缓存空间除以当前归属所述接入点的用户终端的数量的值;当所述剩余量不足,且所述第一用户终端对应的节电队列深度未达到所述第一深度阈值时,从归属所述接入点的用户终端中,确定出节电队列深度大于所述第一深度阈值的第二用户终端,并通过丢弃所述第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将所述报文缓存到所述第一用户终端对应的节电队列中。
2.如权利要求I所述的方法,其特征在于,还包括当所述剩余量足够时,将所述报文缓存到所述第一用户终端对应的节电队列中;或者当所述剩余量足够时,判断所述第一用户终端对应的节电队列深度是否达到第二深度阈值,如果达到,丢弃所述报文,如果未达到,将所述报文缓存到所述第一用户终端对应的节电队列中。
3.如权利要求I所述的方法,其特征在于,在确定所述剩余量不足之前,还包括确定所述第一用户终端对应的节电队列深度未达到第二深度阈值。
4.如权利要求3所述的方法,其特征在于,还包括当确定所述第一用户终端对应的节电队列深度达到第二深度阈值时,丢弃所述报文。
5.如权利要求3所述的方法,其特征在于,还包括当所述剩余量足够时,将所述报文缓存到所述第一用户终端对应的节电队列中。
6.一种接入点,其特征在于,包括接收单元,用于接收将传输给第一用户终端的报文;缓存空间确定单元,用于当所述第一用户终端处于休眠状态时,确定本接入点为缓存节电报文预先分配的缓存空间的剩余量;缓存处理单元,用于当所述剩余量不足,且所述第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃所述报文,所述第一深度阈值为分配的所述缓存空间除以当前归属所述接入点的用户终端的数量的值;以及当所述剩余量不足,且所述第一用户终端对应的节电队列深度未达到所述第一深度阈值时,从归属所述接入点的用户终端中,确定出节电队列深度大于所述第一深度阈值的第二用户终端,并通过丢弃所述第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将所述报文缓存到所述第一用户终端对应的节电队列中。
7.如权利要求6所述的接入点,其特征在于,所述缓存处理单元,还用于当所述剩余量足够时,将所述报文缓存到所述第一用户终端对应的节电队列中;或者当所述剩余量足够时,判断所述第一用户终端对应的节电队列深度是否达到第二深度阈值,如果达到,丢弃所述报文,如果未达到,将所述报文缓存到所述第一用户终端对应的节电队列中。
8.如权利要求6所述的接入点,其特征在于,还包括队列深度判断单元,用于在所述缓存空间确定单元确定所述剩余量不足之前,确定所述第一用户终端对应的节电队列深度未达到第二深度阈值。
9.如权利要求8所述的接入点,其特征在于,所述缓存处理单元,还用于当所述队列深度判断单元确定所述第一用户终端对应的节电队列深度达到第二深度阈值时,丢弃所述报文。
10.如权利要求8所述的接入点,其特征在于,所述缓存处理单元,还用于当所述剩余量足够时,将所述报文缓存到所述第一用户终端对应的节电队列中。
全文摘要
本发明公开了一种报文缓存方法及接入点,包括接入点接收将传输给第一用户终端的报文;并当第一用户终端处于休眠状态时,确定该接入点为缓存节电报文预先分配的缓存空间的剩余量;以及当剩余量不足,且第一用户终端对应的节电队列深度达到第一深度阈值时,丢弃该报文;当剩余量不足,且第一用户终端对应的节电队列深度未达到第一深度阈值时,通过丢弃第二用户终端对应的节电队列中缓存的节电报文释放缓存空间,以及使用释放的缓存空间将报文缓存到第一用户终端对应的节电队列中。采用本发明实施例提供的方案,避免了由于缓存节电报文占用大量内存空间而导致系统故障的问题。
文档编号H04W28/14GK102595512SQ20121007369
公开日2012年7月18日 申请日期2012年3月19日 优先权日2012年3月19日
发明者黄岁世 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1