一种睡眠模式下的传输调度方法和装置的制作方法

文档序号:7863665阅读:174来源:国知局
专利名称:一种睡眠模式下的传输调度方法和装置的制作方法
技术领域
本发明涉及无线通信技术领域,特别是涉及一种睡眠模式下的传输调度方法和装置。
背景技术
大量高速率数据的突发性传输,将导致移动终端在某一时间段内处于空闲状态,进而会造成移动终端不必要的功率消耗。为了节省移动终端的功率,IEEE 802. 16e标准定义了功率节省机制将移动终端工作模式分为睡眠模式和正常工作模式。在睡眠模式下,周期性地交替出现睡眠窗口和监听窗口,在睡眠窗口对应的时段内,基站将不向移动终端传输任何数据,移动终端可以在该时间段内关闭一个或者多个硬件设备,从而使功率消耗处 于最小;在监听窗口对应的时段内,移动终端处于可用状态,基站可与移动终端建立连接,实现数据传输。根据不同的业务连接对QoS (Quality of Service,服务质量)的需求不同,IEEE802. 16e标准定义了三种功率节省类型节省类I主要用于BE(Best Effort,尽力而为业务)或NRT-VR(Non-Real Time Variable Rate,非实时分组业务)的业务连接;节省类II主要用于UGS (Unsolicited Grant Service,主动授权业务)或RT-VR(Real Time VariableRate,实时分组业务)的业务连接;节省类III主要用于如周期性寻呼等组播连接。其中,对于节省类II,IEEE802. 16e标准还定义了相关参数睡眠窗口的时长Ts、监听窗口的时长 Υ和睡眠窗口的起始帧号等,在睡眠窗口的起始帧号指定的数据帧开始,节省类II被激活。请参阅图1,其为现有技术的节省类II中睡眠模式的结构示意图。在实现本发明的过程中,本发明的发明人发现现有技术中至少存在如下问题在节省类II中,睡眠窗口的时长Ts和监听窗口的时长IY是固定设置的,对于传输数据速率恒定的USG而言,采用固定的窗口机制可以实现功率节省,而对于传输数据速率可变的RT-VR而言,采用固定的窗口机制将降低移动终端的节能效率,同时,还可能造成数据丢失。例如,请参阅图2所示的现有技术的节省类II中睡眠模式下的传输调度示意图,其中,在睡眠模式下的周期I中,由于监听窗口受固定时长的限制,致使移动终端无法在当前周期的监听窗口将该周期内的三个实时业务连接的数据包全部发送完,假设数据包S3没有在周期I的监听窗口发送,则只能等到周期2的监听窗口到达时再发送。而在周期2的监听窗口到达之前,数据包S3的等待时间很有可能已超出了其发送时延的限制值,迫使移动终端退出睡眠模式,进而终端和基站之间会产生模式切换信令开销,降低移动终端的节能效率,同时,也可能会伴随缓存的溢出而造成数据包S3的丢失。另外,在睡眠模式下的周期3中,如果该周期内实时连接的数据包数量过少,监听窗口上会出现空闲帧,从而造成不必要的资源浪费。

发明内容
为了解决上述技术问题,本发明实施例提供了一种睡眠模式下的传输调度方法和装置,提高移动终端的节能效率,同时,也避免出现数据丢失。本发明实施例公开了如下技术方案—种睡眠模式下的传输调度方法,包括当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长;判断所述第一传输时长是否大于协议规定的监听窗口时长;如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长;在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时 间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。一种睡眠模式下的传输调度装置,包括计算单元,用于当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长;判断单元,用于判断所述第一传输时长是否大于协议规定的监听窗口时长;第一调整单元,用于如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长;第一传输调度单兀,用于在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。由上述实施例可以看出,为了减少睡眠模式和工作模式之间的切换,根据移动终端缓存中的数据量来动态调整监听窗口的大小,从而降低终端和基站之间的信令开销,有效降低通信系统的功耗,同时,也避免出现数据丢失。进一步的,对于移动终端缓存中的所有数据包,不是简单的根据时延值进行先来先发的调度,而是综合考虑QoS参数和时延限制,重新对数据包进行排队,根据排队顺序进行有序发送,从而降低业务延时,提高终端实时性,将睡眠模式和调度方法相结合,提高移动终端低功耗效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为现有技术的节省类II中睡眠模式的结构示意图;图2为现有技术的节省类II中睡眠模式下的传输调度示意图3为本发明实施例一揭示的一种睡眠模式下的传输调度方法的流程图;图4为本发明中节省类II中睡眠模式下的传输调度示意图;图5为本发明实施例二揭示的另一种睡眠模式下的传输调度方法的流程图;图6为本发明实施例三揭示的一种移动终端传输数据的方法流程图;图7为本发明实施例四揭示的一种睡眠模式下的传输调度装置的结构图;图8为本发明实施例四揭示的另一种睡眠模式下的传输调度装置的结构图。
具体实施例方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例进行详细描述。实施例一请参阅图3,其为本发明实施例一揭示的一种睡眠模式下的传输调度方法的流程图,该方法包括以下步骤步骤301 :当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长;例如,首先,分别计算传输当前周期的缓存中每一个待传输数据包所需的监听窗口的帧数TLKi ^^ (i=l、2......η)
h X Djr—其中,Fti为缓存中第i个待传输数据包的数据量,随时间变化,单位为bit ;R为移动终端的数据速率,单位为bit/s ;Dframe为一个帧的时长,单位为s/frame ;TLKi为缓存中第i个待传输数据包所需的监听窗口帧数。其次,计算传输当前周期的缓存中所有待传输数据包所需的总帧数Tlk=YjTlki,其中,1^为总帧数,总帧数即为,当传输当前周期的缓存中的
… ._ . J=I…… .·
所有待传输数据包时所需的第一传输时长。步骤302 :判断所述第一传输时长是否大于协议规定的监听窗口时长;正如本发明背景技术中所提到的,IEEE 802. 16e标准定义了监听窗口时长I;,将步骤301中计算得到的第一传输时长与协议规定的监听窗口时长IY的大小进行比较,判断第一传输时长是否大于协议规定的监听窗口时长τγ。步骤303 :如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长;其中,如果第一传输时长大于协议规定的监听窗口时长,说明当前周期的缓存中所缓存的所有待传输数据包无法全部在协议规定的监听窗口内传输出去。因此,需要从当前周期的缓存中的所有待传输数据包中,挑选出在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将这些待传输数据包在当前周期传输出去,以避免现有技术中所出现的移动终端节能效率低以及数据丢失等问题。
具体的,判断当前周期的缓存中的数据包在下一个周期的监听窗口到达时传输其等待时间是否会超过其时延限制值的方法为动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长,每当有数据包的动态缓存时长发生变化时,按照时延限制值从小到大的顺序依次判断各个数据包的时延限制值是否大于数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和,如果是,判定数据包在下一个周期的监听窗口到达时传输其等待时间不会超 过其时延限制值,否则,判定数据包在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值。其中,动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长具体为在初始情况下,将当前周期的缓存中的所有数据包的缓存时长设置为零,每当判定存在一个在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的超时数据包时,除超时数据包之外的其余数据包的动态缓存时长动态调整为当传输所有超时数据包时所需的传输时长,将最终判定在下一个周期的监听窗口传输的数据包的动态缓存时长增加一个睡眠窗口时长。特别的,当判断存在两个以上在下一个周期的监听窗口到达时传输其等待时间不会超过其时延限制值的未超时数据包时,将除第一个未超时数据包之外的其余未超时数据包的动态缓存时长增加一个当传输位于自身前面的所有未超时数据包时所需的传输时长的长度,重新按照时延限制值从小到大的顺序依次判断除第一个未超时数据包之外的其余未超时数据包的时延限制值是否大于动态缓存时长与睡眠窗口时长总和,如果是,重新判定该其余未超时数据包在下一个周期的监听窗口到达时传输其等待时间不会超过其时延限制值,否则,重新判定该其余未超时数据包在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值,并将该其余未超时数据包放在当前周期传输,或者,重新判定所有未超时数据包在下一个周期的监听窗口到达时传输起等待时间会超过其时延限制值,并将所有未超时数据包放在当前周期传输。例如,在第一周期假设在第一周期内有三个数据包A、B、C(已经按照时延限值从小到大进行排序),数据长度分别为5、3、2,时延限制值分别为Dl = 7、D2 = 12、D3 = 20,在缓存中滞留的动态缓存时长分别为B1、B2、B3 ;TS = 8 ;以上数值的单位为帧,在每个监听周期开始计算,每个数据包的优先级标签Ti = Di-Bi-Ts 在初始时,BI= B2 = B3 = O ;因此,Tl = Dl-Bl-Ts = 7-0-8 = -I < O ;T2 = D2-B2-Ts = 12-0-8 = 4 ;T3 = D3-B3-Ts = 20-0-8 = 12 ;由于Tl <0,表示A必须在当前周期(第一周期)进行发送,此时,由于A在当前周期发送,因此,B和C的动态缓存时长要动态更新为B2 = 0+5 = 5 ;B3 = 0+5 = 5;并且,由于有数据包(B和C)的动态缓存时长发生变化,因此,重新计算B和C的优先级标签T2 = D2-B2-Ts = 12-5-8 = -I < O ;T3 = D3-B3-Ts = 20-5-8 = 7 > O ;由于T2<0,表示B必须在当前周期(第一周期)进行发送,此时,由于B在当前周期发送,因此,C的动态缓存时长要继续动态更新为Β3 = 5+3 = 8 ;
并且,由于有数据包(C)的动态缓存时长发生变化,因此,继续重新计算C的优先级标签T3 = D3-B3-Ts = 20-8-8 = 4 > 0,表示数据包C可以延迟到下一个周期(第二周期)进行发送,同时,将C的B3继续动态更新为B3 = 8+Ts = 8+8 = 16。最后,第一周期的监听窗口时长IY为5(A的数据长度)+3 (B的数据长度)=8 ;以上为第一周期的计算过程。第二周期假设第二周期内有两个数据包D、E(已经按照时延限值从小到大进行排序),加上第一周期留下的数据包C,一共有三个数据包,D和E的时延限制值为D4 = 12,D5 = 16,数据长度分别为8和2,在缓存中滞留的动态缓存时长分别为B4和B5。在初始时,B4 = B5 = O, B3 = 16,计算每个数据包的优先级标签T3 = D3-B3-Ts = 20-16-8 = -4 < O ;T4 = D4-B4-Ts = 12-0-8 = 4 ;T5 = D5-B5-Ts = 16-0-8 = 8 ;由于T3 < 0,标识C必须在第二周期内发送,此时,由于C在周期二发送,因此,D和E的动态缓存时长要动态更新为B4 = 0+2 = 2 ;Β5 = 0+2 = 2;并且,由于有数据包(D和Ε)的动态缓存时长发生变化,因此,重新计算D和E的优先级标签Τ4 = D4-B4-Ts = 12-2-8 = 2 ;T5 = D5-B5-Ts = 16-2-8 = 6 ;T4和T5>0,表示数据包D和E可以延迟到下一个周期(第三周期)进行发送,同时,将D的Β4继续动态调更新为Β4 = 2+Ts = 2+8 = 10 ;将E的B5继续动态调更新为B5=2+Ts = 2+8 = 10。最后,初步确定第二周期的监听窗口时长IY为2(C的数据长度)。但是,由于有两个数据包可以延迟到下一个周期(第三周期)进行发送,如果D和E延迟到第三周期发送,且第二周期的监听窗口时长为2,会出现以下情况在第三个周期内先调度D,则E的动态缓存时长要更新为B5 = 2 (监听窗口时长)+8 (Ts)+8 (D数据包长度)=18,超过了 E的时延限制值16,因此,当有两个以上的数据包延迟到下一个周期中发送时,要在当前周期进行如下调整T4 = D4-B4-Ts = 12-2-8 = 2 ;T5 = D5-B5-Ts-8 (D的数据长度)=16-2-8-8 < O ;(如果有第三个数据包F,则要减去D的数据长度和E的数据长度来判断)特别优选的,数据包D和E如果延迟发送,会造成E违反时延限制,因此,为了保证QoS, D和E在第二周期内发送,最后,第三周期的监听窗口长度IY为2 (C的数据长度)+8 (D的数据长度)+2 (E的数据长度)=12。或者,仅将E在第二周期内发送,同时,将D的B4继续动态调整为2+2+Ts = 2+2+8=12 ;最后,第三周期的监听窗口长度IY为2 (C的数据长度)+2 (E的数据长度)=4。当按照上述方式挑选出所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包后,计算这些待传输数据包在当前周期传输时所需的第二传输时长,将协议规定的监听窗口时长调整为第二传输时长。例如,假设当前周期为第η周期,当前周期的下一个周期则为第η+1周期,在第η周期的缓存中共有5个待传输数据包(数据包A、B、C、D和E),其中,经过判断,有3个待传输数据包(数据包A、B和C)在第η+1周期的监听窗口到达时传输其等待时间将会超过其时延限制值,计算该3个待传输数据包在第η周期传输时所需的第二传输时长,并将协议规定的监听窗口时长调整为该第二传输时长。其中,第二传输时长的计算方法可以参见步骤301中第一传输时长的计算方法,此处不再赘述。
步骤304 :在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。在调整了监听窗口时长后,在第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。并且,将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。仍旧以步骤303中的情况为例,在第η周期的缓存中共有5个待传输数据包,经过判定,有另外两个待传输数据包(数据包D和Ε)在第η+1周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包,将该2个待传输数据包放入第η+1周期的缓存中。请参阅图4所示,其为本发明中节省类II中睡眠模式下的传输调度示意图,其中,在周期I中,增加了协议规定的监听窗口的时长,而在周期2中,减少了协议规定的监听窗口的时长。需要说明的是,如果当前周期的缓存中存在上一个周期存入的数据包,则将上一个周期存入的数据包按照时延限制值从小到大的顺序排在当前周期的缓存中原本存储的数据包前面,并将当前周期的缓存中原本存储的数据包按照时延限制值从小到大的顺序排列,再按照上述方法逐个判断当前周期的缓存中的数据包在下一个周期的监听窗口到达时传输其等待时间是否会超过其时延限制值。本发明技术方案并不限定在第二传输时长内,各个待传输数据包之间的传输顺序,即,可以按照任意的顺序来传输各个待传输数据包。但是,考虑到各个待传输数据包在传输前的等待时间受到时延限制值的约束,为了保证每个待传输数据包在传输时的QoSJt为一种优选方案,在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包可以具体为在所述第二时长内,按照时延限制值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。例如,经过确定,在下一个周期的监听窗口到达时传输将会超过其时延限制值的待传输数据包为数据包Α、Β和C,其时延限制值分别为D1、D2和D3,假设时延限制值的大小关系为Dl > D3 > D2,则在第二时长内,先传输数据包B,再传输数据包C,最后传输数据包A0进一步考虑如果待传输数据包中存在上一个周期或者上几个周期滞留下来的数据包,而这些数据包在传输前的等待时间还会受到该数据包在当前周期的缓存中的动态缓存时长的约束,因此,作为另一种优选方案,在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包也可以具体为动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。当然,作为另一种优选方案,直接根据判断当前周期的缓存中的数据包在下一个周期的监听窗口到达时传输其等待时间是否会超过其时延限制值时,各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值大小依次传输,则在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包还可以具体为
动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。其中,动态计算数据包在传输前滞留于当前周期的缓存中的缓存时长具体为在初始情况下,将当前周期的缓存中的所有数据包的缓存时长设置为零,每当判定存在一个在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的超时数据包时,除超时数据包之外的其余数据包的动态缓存时长动态调整为当传输所有超时数据包时所需的传输时长,将最终判定在下一个周期的监听窗口传输的数据包的动态缓存时长增加一个睡眠窗口时长。再例如,经过确定,在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包为数据包A、B和C,其时延限制值为Dl、D2和D3,假设时延限制值的大小关系为Dl > D3 > D2,如果按照时延限制值的关系,会先传输数据包B,再传输数据包C,最后传输数据包A。假设数据包A滞留于当前周期的缓存中的动态缓存时长为Bl+Ts,数据包B滞留于当前周期的缓存中的动态缓存时长为B2+Ts,数据包C滞留于当前周期的缓存中的动态缓存时长为B3,而当前周期的睡眠窗口时长为Ts,则数据包A滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和为B1+TS+TS,数据包B滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长为B2+TS+TS,数据包C滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长为B3+TS。因此,对于数据包A而言,时延限制值与动态缓存时长和睡眠窗口时长总和之间的差值为Tl =D1-B1-2TS,对于数据包B而言,时延限制值与动态缓存时长和睡眠窗口时长总和之间的差值为T2 = D2-B2-2TS,对于数据包C而言,时延限制值与动态缓存时长和睡眠窗口时长总和之间的差值为T3 = D3-B3-Ts,假设T3 > T2 > Tl,因此,当按照上述差值的大小进行传输时,会先传输数据包A,再传输数据包B,最后传输数据包C。一种特殊情况是如果所述第一传输时长大于协议规定的监听窗口时长,且当前周期的缓存中所有待传输数据包在下一个周期的监听窗口到达时传输其等待时间都不会超过其时延限制值,可将协议规定的监听窗口调整为零;将当前周期的缓存中所有待传输数据包放入下一个周期的缓存中。由上述实施例可以看出,为了减少睡眠模式和工作模式之间的切换,根据移动终端缓存中的数据量来动态调整监听窗口的大小,从而降低终端和基站之间的信令开销,有效降低通信系统的功耗,同时,也避免出现数据丢失。进一步的,对于移动终端缓存中的所有数据包,不是简单的根据时延值进行先来先发的调度,而是综合考虑QoS参数和时延限制,重新对数据包进行排队,根据排队顺序进行有序发送,从而降低业务延时,提高终端实时性,将睡眠模式和调度方法相结合,提高移动终端低功耗效率。实施例二本实施例与实施例一的区别在于,还进一步考虑了第一传输时长小于或等于协议 规定的监听窗口时长的情况。请参阅图5,其为本发明实施例二揭示的另一种睡眠模式下的传输调度方法的流程图,包括以下步骤步骤301 :当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长;步骤302 :判断所述第一传输时长是否大于协议规定的监听窗口时长;步骤303 :如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长;步骤304 :在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中;上述步骤301-304的执行过程可以参见实施例一,在本实施二中将不再赘述。步骤305 :如果所述第一传输时长小于或等于协议规定的监听窗口时长,将协议规定的监听窗口时长调整为所述第一传输时长;步骤306 :在所述第一传输时长内传输当前周期的缓存中所有待传输数据包。本发明技术方案并不限定在第一传输时长内,各个待传输数据包之间的传输顺序,即,可以按照任意的顺序来传输各个待传输数据包。但是,考虑到各个待传输数据包在传输前的等待时间受到时延限制值的约束,为了保证每个待传输数据包在传输时的QoSJt为一种优选方案,在所述第一传输时长内传输当前周期的缓存中所有待传输数据包可以具体为在所述第一传输时长内,按照时延限制值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。进一步考虑如果待传输数据包中存在上一个周期或者上几个周期滞留下来的数据包,而这些数据包在传输前的等待时间还会受到该数据包在当前周期的缓存中的动态缓存时长的约束,因此,作为另一种优选方案,在所述第一传输时长内传输当前周期的缓存中所有待传输数据包也可以具体为动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长,按照各个数据包的时延限制值与数据包的动态缓存时长之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。当然,作为另一种优选方案,直接根据判断当前周期的缓存中的数据包在下一个周期的监听窗口到达时传输其等待时间是否会超过其时延限制值时,各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值大小依次传输,则在所述第一传输时长内传输当前周期的缓存中所有待传输数据包还可以具体为动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。

其中,动态计算数据包在传输前滞留于当前周期的缓存中的缓存时长具体为在初始情况下,将当前周期的缓存中的所有数据包的缓存时长设置为零,每当判定存在一个在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的超时数据包时,除超时数据包之外的其余数据包的动态缓存时长动态调整为当传输所有超时数据包时所需的传输时长,将最终判定在下一个周期的监听窗口传输的数据包的动态缓存时长增加一个睡眠窗口时长。由上述实施例可以看出,为了减少睡眠模式和工作模式之间的切换,根据移动终端缓存中的数据量来动态调整监听窗口的大小,从而降低终端和基站之间的信令开销,有效降低通信系统的功耗,同时,也避免出现数据丢失。进一步的,对于移动终端缓存中的所有数据包,不是简单的根据时延值进行先来先发的调度,而是综合考虑QoS参数和时延限制,重新对数据包进行排队,根据排队顺序进行有序发送,从而降低业务延时,提高终端实时性,将睡眠模式和调度方法相结合,提高移动终端低功耗效率。实施例三请参阅图6,其为实施例三揭示的一种移动终端传输数据的方法流程图,包括如下步骤步骤601 :移动终端处于正常工作模式下;步骤602 :移动终端判断正常工作模式下的数据缓存保持为空的时间tF是否达到阈值Tthreshtjld,如果是,进入步骤603,否则,返回步骤601 ;步骤603 :移动终端向基站发送请求进入睡眠模式的请求消息;步骤604 :移动终端待收到基站发送的进入睡眠模式的确认消息后,进入睡眠模式;其中,基站发送给移动终端的确认消息中至少携带有IEEE 802. 16e标准定义的初始参数睡眠窗口的时长Ts、监听窗口的时长IY和睡眠窗口的起始帧号等。步骤605 :移动终端判断睡眠模式下的数据缓存Ft是否为空,如果是,移动终端处于睡眠模式下的睡眠状态,如果否,进入步骤606 步骤606 :移动终端处于睡眠模式下的监听状态,移动终端计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长LI ;
步骤607 :移动终端判断所述第一传输时长LI是否大于协议规定的监听窗口时长 Υ,如果是,进入步骤608,否则,进入步骤610 ;步骤608 :移动终端计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长L2,将协议规定的监听窗口时长I;调整为所述第二传输时长L2 ;步骤609移动终端在所述第二传输时长L2内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中,进入步骤612:步骤610 :移动终端将协议规定的监听窗口时长IY调整为所述第一传输时长LI ;步骤611 :移动终端在所述第一传输时长LI内传输当前周期的缓存中所有待传输数据包; 步骤612 :移动终端进入睡眠模式下的睡眠状态,睡眠状态结束后返回步骤605。由上述实施例可以看出,为了减少睡眠模式和工作模式之间的切换,根据移动终端缓存中的数据量来动态调整监听窗口的大小,从而降低终端和基站之间的信令开销,有效降低通信系统的功耗,同时,也避免出现数据丢失。进一步的,对于移动终端缓存中的所有数据包,不是简单的根据时延值进行先来先发的调度,而是综合考虑QoS参数和时延限制,重新对数据包进行排队,根据排队顺序进行有序发送,从而降低业务延时,提高终端实时性,将睡眠模式和调度方法相结合,提高移动终端低功耗效率。实施例四与上述一种睡眠模式下的传输调度方法相对应,本发明实施例还提供了一种睡眠模式下的传输调度装置。请参阅图7,其为本发明实施例四揭示的一种睡眠模式下的传输调度装置的结构图,该装置包括计算单元701、判断单元702、第一调整单元703和第一传输调度单元704。下面结合该装置的工作原理进一步介绍其内部结构以及连接关系。计算单元701,用于当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长;判断单元702,用于判断所述第一传输时长是否大于协议规定的监听窗口时长;第一调整单元703,用于如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长;第一传输调度单元704,用于在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。一方面优选的,第一调整单元703进一步包括缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长;
超时判断子单元,用于每当有数据包的动态缓存时长发生变化时,按照时延限制值从小到大的顺序依次判断各个数据包的时延限制值是否大于数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和;超时结果确定子单元,用于如果超时判断子单元的判断结果为是,判定数据包在下一个周期的监听窗口到达时传输其等待时间不会超过其时延限制值,否则,判定数据包在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值;第二传输时长计算子单元,用于根据判定结果计算所有在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的数据包的第二传输时长。另一方面优选的,第一传输调度单元704进一步包括缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长;第一排序传输子单元,用于计算当在所述第二时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。或者,第一传输调度单元704进一步包括缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长;第二排序传输子单元,用于在所述第二传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。除了图7所示的结构外,优选的,请参阅图8,其为本发明实施例四揭示的另一种睡眠模式下的传输调度装置的结构图,该装置进一步包括第三调整单元705,用于如果所述第一传输时长小于或等于协议规定的监听窗口时长,将协议规定的监听窗口时长调整为所述第一传输时长;第三传输调度单兀706,用于在所述第一传输时长内传输当前周期的缓存中所有待传输数据包。其中,优选的,第三传输调度单元706进一步包括缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长;第三排序传输子单元,用于在所述第一传输时长内,按照各个数据包的时延限制值与数据包的动态缓存时长之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。或者,第三传输调度单元706进一步包括缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长;第四排序传输子单元,用于在所述第一传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。
上述缓存时长计算子单元包括初始计算子单元,用于在初始情况下,当前周期的缓存中的所有数据包的缓存时长设置为零;动态调整子单元,用于每当判定存在一个在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的超时数据包时,除超时数据包之外的其余数据包的动态缓存时长动态调整为当传输所有超时数据包时所需的传输时长,将最终判定在下一个周期的监听窗口传输的数据包的动态缓存时长增加一个睡眠窗口时长。特别的,所述装置还进一步包括第二调整单元,用于如果所述第一传输时长大于协议规定的监听窗口时长,且当前周期的缓存中所有待传输数据包在下一个周期的监听窗口到达时传输其等待时间都不会超过其时延限制值,将协议规定的监听窗口调整为零;第二传输调度单元,用于将当前周期的缓存中所有待传输数据包放入下一个周期的缓存中。
由上述实施例可以看出,为了减少睡眠模式和工作模式之间的切换,根据移动终端缓存中的数据量来动态调整监听窗口的大小,从而降低终端和基站之间的信令开销,有效降低通信系统的功耗,同时,也避免出现数据丢失。进一步的,对于移动终端缓存中的所有数据包,不是简单的根据时延值进行先来先发的调度,而是综合考虑QoS参数和时延限制,重新对数据包进行排队,根据排队顺序进行有序发送,从而降低业务延时,提高终端实时性,将睡眠模式和调度方法相结合,提高移动终端低功耗效率。需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。以上对本发明所提供的一种睡眠模式下的传输调度方法和装置进行了详细介绍,本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种睡眠模式下的传输调度方法,其特征在于,包括 当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长; 判断所述第一传输时长是否大于协议规定的监听窗口时长; 如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长; 在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。
2.根据权利要求I所述的方法,其特征在于,所述方法还包括 如果所述第一传输时长大于协议规定的监听窗口时长,且当前周期的缓存中所有待传输数据包在下一个周期的监听窗口到达时传输其等待时间都不会超过其时延限制值,将协议规定的监听窗口调整为零; 将当前周期的缓存中所有待传输数据包放入下一个周期的缓存中。
3.根据权利要求I所述的方法,其特征在于,所述方法还包括 如果所述第一传输时长小于或等于协议规定的监听窗口时长,将协议规定的监听窗口时长调整为所述第一传输时长; 在所述第一传输时长内传输当前周期的缓存中所有待传输数据包。
4.根据权利要求I所述的方法,其特征在于,所述计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长包括 动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 每当有数据包的动态缓存时长发生变化时,按照时延限制值从小到大的顺序依次判断各个数据包的时延限制值是否大于数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和; 如果是,判定数据包在下一个周期的监听窗口到达时传输其等待时间不会超过其时延限制值,否则,判定数据包在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值; 根据判定结果计算所有在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的数据包的第二传输时长。
5.根据权利要求I所述的方法,其特征在于,所述在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包包括 动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 在所述第二传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。
6.根据权利要求I所述的方法,其特征在于,所述在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包包括: 动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 在所述第二传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。
7.根据权利要求3所述的方法,其特征在于,所述在所述第一传输时长内传输当前周期的缓存中所有待传输数据包包括 动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 在所述第一传输时长内,按照各个数据包的时延限制值与数据包的动态缓存时长之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。
8.根据权利要求3所述的方法,其特征在于,所述在所述第一传输时长内传输当前周期的缓存中所有待传输数据包包括 动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 在所述第一传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。
9.根据权利要求4-8中任意一项所述的方法,其特征在于,所述动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长具体包括 在初始情况下,将当前周期的缓存中的所有数据包的缓存时长设置为零; 每当判定存在一个在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的超时数据包时,除超时数据包之外的其余数据包的动态缓存时长动态调整为当传输所有超时数据包时所需的传输时长,将最终判定在下一个周期的监听窗口传输的数据包的动态缓存时长增加一个睡眠窗口时长。
10.一种睡眠模式下的传输调度装置,其特征在于,包括 计算单元,用于当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长; 判断单元,用于判断所述第一传输时长是否大于协议规定的监听窗口时长; 第一调整单元,用于如果所述第一传输时长大于协议规定的监听窗口时长,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为所述第二传输时长; 第一传输调度单元,用于在所述第二传输时长内传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包,并将所有在下一个周期的监听窗口到达时传输其等待时间将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括 第二调整单元,用于如果所述第一传输时长大于协议规定的监听窗口时长,且当前周期的缓存中所有待传输数据包在下一个周期的监听窗口到达时传输其等待时间都不会超过其时延限制值,将协议规定的监听窗口调整为零; 第二传输调度单元,用于将当前周期的缓存中所有待传输数据包放入下一个周期的缓存中。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括 第三调整单元,用于如果所述第一传输时长小于或等于协议规定的监听窗口时长,将协议规定的监听窗口时长调整为所述第一传输时长; 第三传输调度单元,用于在所述第一传输时长内传输当前周期的缓存中所有待传输数据包。
13.根据权利要求10所述的装置,其特征在于,所述第一调整单元包括· 缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 超时判断子单元,用于每当有数据包的动态缓存时长发生变化时,按照时延限制值从小到大的顺序依次判断各个数据包的时延限制值是否大于数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和; 超时结果确定子单元,用于如果超时判断子单元的判断结果为是,判定数据包在下一个周期的监听窗口到达时传输其等待时间不会超过其时延限制值,否则,判定数据包在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值; 第二传输时长计算子单元,用于根据判定结果计算所有在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的数据包的第二传输时长。
14.根据权利要求10所述的装置,其特征在于,所述第一传输调度单元包括 缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 第一排序传输子单元,用于计算当在所述第二时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。
15.根据权利要求10所述的装置,其特征在于,所述第一传输调度单元包括 缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 第二排序传输子单元,用于在所述第二传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包。
16.根据权利要求12所述的装置,其特征在于,所述第三传输调度单元包括 缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 第三排序传输子单元,用于在所述第一传输时长内,按照各个数据包的时延限制值与数据包的动态缓存时长之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。
17.根据权利要求12所述的装置,其特征在于,所述第三传输调度单元包括 缓存时长计算子单元,用于动态计算数据包在传输前滞留于当前周期的缓存中的动态缓存时长; 第四排序传输子单元,用于在所述第一传输时长内,按照各个数据包的时延限制值与数据包在传输前滞留于当前周期的缓存中的动态缓存时长和当前周期的睡眠窗口时长总和之间的差值从小到大的顺序依次传输当前周期的缓存中所有待传输数据包。
18.根据权利要求13-17中任意一项所述的装置,其特征在于,所述缓存时长计算子单元包括 初始计算子单元,用于在初始情况下,当前周期的缓存中的所有数据包的缓存时长设置为零; 动态调整子单元,用于每当判定存在一个在下一个周期的监听窗口到达时传输其等待时间会超过其时延限制值的超时数据包时,除超时数据包之外的其余数据包的动态缓存时长动态调整为当传输所有超时数据包时所需的传输时长,将最终判定在下一个周期的监听窗口传输的数据包的动态缓存时长增加一个睡眠窗口时长。
全文摘要
本发明实施例公开了一种睡眠模式下的传输调度方法和装置。其中,当处于睡眠模式下的监听状态时,计算当传输当前周期的缓存中所有待传输数据包时所需的第一传输时长;判断第一传输时长是否大于协议规定的监听窗口时长;如果是,计算当传输当前周期的缓存中所有在下一个周期的监听窗口到达时传输其等待时间将会超过其时延限制值的待传输数据包时所需的第二传输时长,将协议规定的监听窗口时长调整为第二传输时长;在第二传输时长内传输将会超过其时延限制值的待传输数据包,并将不会超过其时延限制值的待传输数据包放入下一个周期的缓存中。根据本发明实施例,可以提高移动终端的节能效率,同时,也避免出现数据丢失。
文档编号H04W52/02GK102883420SQ20121040781
公开日2013年1月16日 申请日期2012年10月23日 优先权日2012年10月23日
发明者郭叶, 陈岚, 雷韶华, 倪茂 申请人:中国科学院微电子研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1