背景技术
宽带码分多址(WCDMA)作为当今主流的3G标准之一,其自身体系处于不断完善之中。在Release 5版本中,WCDMA引入了高速下行分组接入(HSDPA,High Speed Downlink Packet Access)技术,并称为Release 5版本的一个重要特征。HSDPA技术使WCDMA下行的吞吐能力达到了Release 5之前版本的二到三倍,能有效地承载各种分组业务。
与之相对应,HSUPA技术正处于热烈讨论中,并很有可能被引入到WCDMA的Release 6版本中。HSUPA技术的核心目标是通过使用若干上行增强的技术来提高上行分组数据的吞吐量。3GPP TR25.896的仿真结果显示,HSUPA技术能使WCDMA上行信道的吞吐量在之前版本的基础上提高30%到50%。目前,作为最新的技术热点,WCDMA系统协议关于HSUPA的标准正在制定之中,HSUPA技术主要包括基站(NodeB)控制的调度、混合自动重传请求(HARQ,Hybrid Automatic Repeat Request)等。
其中,基于NodeB的调度主要通过测量上行干扰、用户设备(UE,UserEquipment)上报NodeB相关的状态信息,限制UE的传输格式组合集(TFCS,Transport Format Combination Set)以达到调度的目的。NodeB在下行链路上通过相应的资源指示来通知UE其所能利用的最大的上行资源。基于NodeB的上行调度分为两类:绝对调度和相对调度。绝对调度是NodeB每次向UE提供其可利用的上行资源的最大值;相对调度是NodeB对UE上一次所使用的上行资源增加或减少一个量级,作为本次UE所使用的上行资源的值。
下面介绍现有的NodeB控制的上行调度的具体流程。
第一步,计算当前调度周期内用于速率调度的小区可用资源:
如果只考虑存在专用物理控制信道(DPCCH,Dedicated Physical ControlChannel)和增强专用信道(E-DCH,Enhanced Dedicated Data Channel)专用物理数据信道(E-DPDCH,Enhanced Dedicated Physical Data Channel),则第n个UE对小区j(本小区)的负载的贡献以信噪比的形式表示,其计算公式如下:
其中SIR为DPCCH信道上的信干比,βc和βe,R分别为DPCCH信道和E-DPDCH信道的增益因子,n和j为正整数。
如下计算用于速率调度的小区当前可用资源Cav(j):
Cav(j)=max Load-Cav(j)1-Cav(j)2-Cav(j)3 (2)
其中Non PriSec(j)是以小区j作为活动集小区但不是最优小区的所有UE的集合,maxload是由网络规划根据容量和覆盖确定的小区所能承受的最大负载,R(n,k-1)是第n个UE在第k个调度周期的传输速率。调度周期一般是以帧为单位,k为正整数。
其中ReTxPriSec(j,k)是以小区j作为最优小区但在第k个调度周期需要重发的所有UE的集合。
其中,NewTxPriSec(j,k)是以小区j作为最优小区在第k个调度周期新发的所有UE的集合,Rred(n,k-1)=max(Rauto,R(n,k-1)-1),Rauto是自动传输速率,如果不允许自动发射,则Rauto为0。
第二步,计算属于NewTxPriSec(j,k)的所有UE的优先级:
确定UE的调度优先级是实现调度的重要步骤,UE调度优先级的确定与UE的请求速率和平均速率有关:
其中Rreq(n,k)是第n个UE在第k个调度周期的请求速率,是NodeB根据UE定期上报并更新的缓冲区大小计算的;β和η是公平性因子,Ravg(n,k)是第n个UE在第k个调度周期的平均速率,是根据该UE在第(k-1)个调度周期的传输速率和平均速率计算的,计算公式如下:
Ravg(n,k)=(1-χ)Ravg(n,k-1)+χR(n,k-1) (7)
其中R(n,k)是第n个UE在第k个调度周期的传输速率,χ为平滑因子,通常为0.1,初始Ravg(n,-1)=16.0kbps或其它大小。
在NewTxPriSec(j,k)集合中,UE的优先级按照Sn(k)值的大小排列,生成优先级列表,Sn(k)值最大的UE的优先级最高,Sn(k)值最小的UE的优先级最低,设置一表示UE在优先级列表中位置的正整数m,并将m的初始值设置为0。
第三步,在优先级列表中第m个位置的UE的传输速率为:
从公式(8)可以看出,UE的传输速率的大小是由当前小区可利用的资源决定的,也就是说,不同的传输速率将产生不同的负载大小。
如果公式(8)没有解,则Rgrant(m,k)=Rred(m,k-1)。这样,发送给UE的指派消息,即指派给UE的允许速率Gm(k)如下:
从公式(9)可以看出,如果计算所得当前调度周期的传输速率大于前一调度周期的传输速率,则NodeB发出的指派消息为UP;如果计算所得当前调度周期的传输速率等于前一调度周期的传输速率,则NodeB发出的指派消息为KEEP;如果计算所得当前调度周期的传输速率小于前一调度周期的传输速率,则NodeB发出的指派消息为DOWN。
在UE接收到指派消息UP后,将其传输速率提高一级;在UE接收到指派消息KEEP后,保持其现有的传输速率不变;在UE接收到指派消息DOWN后,将其传输速率降低一级。
以上采用的是相对调度的方式,在采用绝对调度的方式时,NodeB下发的指派消息中包含计算出的具体的传输速率的值。
第四步,如果公式(8)有解,说明当前调度周期还有可供调度的资源,则利用公式(10)更新用于速率调度的小区当前可用资源;如果公式(8)无解,说明第k个调度周期已经没有调度其他UE的资源,结束本调度周期的调度。
第五步,如果公式(10)有解,说明当前调度周期还有可供调度的资源,则返回第三步,为第(m+1)个UE分配传输速率;如果公式(10)无解,说明当前已没有可供调度的资源,结束本调度周期的调度。
从以上的技术方案可以看出,现有的UE调度优先级的方案中没有考虑到UE缓冲区的占用情况,而且在调度资源的分配方案中也没有考虑UE缓冲区占用情况,因此无法公平性地给用户分配资源,从而无法获得更大的吞吐量增益。另外,由NodeB控制的调度可以支持流(Streaming)、交互(Interactive)和背景(Background)三种业务,不同业务有不同的质量要求,但在现有的调度优先级的方案中没有考虑业务的质量要求,因而无法对不同的业务维持其所要求的服务质量。
发明内容
有鉴于此,本发明的主要目的在于提供一种基站控制上行调度的方法,通过在调度时考虑各UE的缓冲区占用情况,公平性地为UE分配资源。
本发明的目的是通过如下技术方案实现的:
一种基站控制的上行调度方法,包括以下步骤:
计算用于速率调度的小区可用资源;
根据公式:
确定小区中各用户设备的调度优先级;其中,S
n(k)为第n个用户设备在第k个调度周期的调度优先级,Bo(n,k)为第n个用户设备在第k个调度周期的缓冲区占用率,
是所有用户设备中缓冲区占用率的最大值,R
req(n,k)是第n个用户设备在第k个调度周期的请求速率,R
avg(n,k)是第n个用户设备在第k个调度周期的平均速率,β、η、ρ是公平性因子,n和k为正整数;
按照所确定的用户设备调度优先级的先后顺序为其分配调度资源。
其中,所述用户设备的缓冲区占用情况为用户设备的缓冲区占用率。
其中,本方法进一步包括:根据业务类型为用户设备所处理的业务设置优先级;
所述确定小区中各用户设备的调度优先级的公式为:
其中,Sn(k)为第n个用户设备在第k个调度周期的调度优先级,αn是第n个用户设备所处理的业务的优先级,Bo(n,k)为第n个用户设备在第k个调度周期的缓冲区占用率,是所有用户设备中缓冲区占用率的最大值,Rreq(n,k)是第n个用户设备在第k个调度周期的请求速率,Ravg(n,k)是第n个用户设备在第k个调度周期的平均速率,β、η、ρ、λ是公平性因子,n和k为正整数。
本发明还提供了一种基站控制的上行调度方法,包括以下步骤:
计算用于速率调度的小区可用资源;
确定小区中各用户设备的调度优先级;
按照调度优先级从高到低的顺序,选择用户设备并根据当前用于速率调度的小区可用资源计算所述用户设备在本次调度周期所使用的传输速率;
如果所述用户设备在本次调度周期的传输速率大于用户设备在前一调度周期的传输速率,且用户设备的当前缓冲区占用率大于所有用户设备的缓冲区占用率平均值,则向用户设备发送包含计算出的传输速率的速率指派消息;
如果所述用户设备在本次调度周期的传输速率小于用户设备在前一调度周期的传输速率,且用户设备的当前缓冲区占用率小于所有用户设备的缓冲区占用率平均值,则向用户设备发送包含计算出的传输速率的速率指派消息;
如果所述用户设备在本次调度周期的传输速率大于用户设备在前一调度周期的传输速率,且用户设备的当前缓冲区占用率小于所有用户设备的缓冲区占用率平均值,则向用户设备发送将其传输速率增加一级的速率指派消息;
如果所述用户设备在本次调度周期的传输速率等于用户设备在前一调度周期的传输速率,则向用户设备发送保持其传输速率的速率指派消息;
如果所述用户设备在本次调度周期的传输速率小于用户设备在前一调度周期的传输速率,且用户设备的当前缓冲区占用率大于所有用户设备的缓冲区占用率平均值,则向用户设备发送将其传输速率降低一级的速率指派消息;
更新用于速率调度的小区可用资源。
其中,所述确定小区中各用户设备的调度优先级包括:
根据公式: 确定小区中各用户设备的调度优先级;其中,Sn(k)为第n个用户设备在第k个调度周期的调度优先级,Bo(n,k)为第n个用户设备在第k个调度周期的缓冲区的占用情况,是所有用户设备中缓冲区占用率的最大值,Rreq(n,k)是第n个用户设备在第k个调度周期的请求速率,Ravg(n,k)是第n个用户设备在第k个调度周期的平均速率,β、η、ρ是公平性因子,n和k为正整数。
其中,在计算本次调度周期用于速率调度的小区可用资源时,考虑相邻小区对本小区负载的影响。
所述考虑相邻小区对本小区负载影响包括:确定相邻小区对本小区负载的影响的参数f;
其中,计算用于速率调度的小区可用资源为:
Cav(j)=max Load-Cav(j)1-Cav(j)2-Cav(j)3
其中,小区j为本小区,Cav(j)为本次调度周期用于速率调度的小区j的可用资源,maxload为本小区的最大负载,Cav(j)1是以小区j作为活动集小区但并非最优小区的所有用户设备对小区j的负载的估计值,Cav(j)2是以小区j作为最优小区但在本次调度周期需要重发的所有用户设备对小区j的负载的估计值,Cav(j)3是以小区j作为最优小区在本次调度周期新发的所有用户设备对小区j的负载的估计值;其中:
其中,NonPriSec(j)是以小区j作为活动集小区但不是最优小区的所有用户设备的集合,ReTxPriSec(j,k)是以小区j作为最优小区但在下次调度周期需要重发的所有UE的集合,NewTxPriSec(j,k)是以小区j作为最优小区在下次调度周期新发的所有UE的集合,R(n,k-1)是第n个UE在第k个调度周期的传输速率,
其中SIR为DPCCH信道上的信干比,β
c和β
e,R分别为DPCCH和E-DPDCH的增益因子,n和j为正整数,
为第n个用户设备在第(k-1)个调度周期对小区j的负载的估计值,n和k为正整数。
所述确定相邻小区对本小区负载的影响的参数f为:通过仿真或实际的网络部署场景确定参数f。
从以上方案可以看出,根据本发明的一个方面,在确定UE的调度优先级时,参考UE缓冲区占用情况,优先调度缓冲区较满的UE,从而实现了更公平性的调度。
根据本发明的另一方面,在为UE分配调度资源时,参考了UE缓冲区占用情况,可以根据UE缓冲区的情况确定使用绝对调度还是相对调度,提高了调度的公平性,增大了数据吞吐量。
根据本发明的另一方面,在确定UE的调度优先级时,参考了UE所处理业务的业务优先级,这样,优先调度当前业务的优先级高的UE,从而实现对不同的业务维持不同的服务质量。
根据本发明的另一方面,在确定小区用于调度的可用资源时,参考了相邻小区对本小区的负载的影响,从而更好地实现对负载门限的“紧性”控制。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明的核心思想是:在确定UE的调度优先级时,参考UE缓冲区的占用情况。或者,在为UE分配传输速率时,根据UE的缓冲区占用情况,确定对该UE使用绝对调度还是相对调度。
实施例一:
图1是根据本发明实施例一的上行调度的方法流程图。在本实施例中,参考UE缓冲区的占用情况确定上行调度的优先级以及分配调度速率。从图1可以看出,本实施例具体包含如下步骤:
步骤101:NodeB接收UE上报的缓冲区状态,更新缓冲区的大小,更新公式如下:
Q(k)=Q(k-1)-Datatx (11)
其中Q(k)为第k个调度周期缓冲区的估计值,Q(k-1)为第(k-1)个调度周期缓冲区的估计值,Datatx是上一调度周期发射的数据,k为正整数。
步骤102:根据更新后的缓冲区大小计算UE希望的请求速率:
其中Rmax(power)是UE的发射功率所能支持的最大速率;1024kbps是上行增强专用信道可支持的最大速率,该上行增强专用信道可支持的最大速率也可以为其它值; 是指传输缓冲区内对应的数据量所能提供的最大传输速率。
步骤103:基站对小区内UE上报的缓冲区状态进行平均,得到缓冲区大小的平均值,公式如下:
其中N为可调度的UE个数,Bo(1,k)至Bo(N,k)分别为第1个到第N个UE上报的缓冲区占用情况,Bo(k)为所有UE缓冲区占用情况的平均值。缓冲区的状态可表示为缓冲区占用情况,例如缓冲区的占用率。
步骤104:计算用于速率调度的小区可用资源:
假设只考虑存在信道DPCCH和E-DPDCH,则第n个UE对小区j负载的贡献如下:
其中SIR为DPCCH信道上的信干比,βc和βe,R分别为DPCCH和E-DPDCH的增益因子,n和j为正整数。
如下计算用于速率调度的小区当前可用资源Cav(j):
Cav(j)=max Load-Cav(j)1-Cav(j)2-Cav(j)3 (2)
其中NonPriSec(j)是以小区j作为活动集小区但不是最优小区的所有UE的集合,maxLoad是最大负载,R(n,k-1)是第n个UE在第k个调度周期的传输速率。
其中ReTxPriSec(j,k)是以小区j作为最优小区但在下次调度周期需要重发的所有UE的集合。
其中,NewTxPriSec(j,k)是以小区j作为最优小区在下次调度周期新发的所有UE的集合,Rred(n,k-1)=max(Rauto,R(n,k-1)-1),Rauto是自动传输速率,如果不允许自动发射,则Rauto为0。
步骤105:计算属于NewTxPriSec(j,k)的所有UE的优先级,按照优先级对UE进行排列,例如生成一个优先级列表,优先级最高的UE排在列表的第一位,依次往低。
为了体现不同UE的缓冲区占用情况,从而可能为缓冲区满的那些UE优先发射,以不至于由于触发UE的传输控制协议(TCP,Transmission ControlProtocol)拥塞机制从而降低传输速率。在本实施例中,第n个UE在第k个调度周期的优先级定义如下:
其中β、η、ρ是公平性因子,Bo(n,k)为第n个UE在第k个调度周期的缓冲区的占用情况,
是所有UE中缓冲区的占用的最大值,R
avg(n,k)是第n个UE在第k个调度周期的平均速率,但不包括k,如下计算:
Ravg(n,k)=(1-χ)Ravg(n,k-1)+χR(n,k-1) (7)
其中R(n,k)是第n个UE在第k个调度周期的传输速率,χ为平滑因子,通常为0.1,初始Ravg(n,-1)=16.0kbps或其它大小。
在NewTxPriSec(j,k)集合中,UE的优先级按照Sn(k)值的大小排列,生成优先级列表,Sn(k)值最大的UE的优先级最高,Sn(k)值最小的UE的优先级最低,设置一表示UE在优先级列表中位置的正整数m,并将m的初始值设置为0。
步骤106:m=m+1,计算在优先级列表中第m个位置的UE的速率为:
其中Rreq(m,k)是根据功率和缓冲区占用情况确定的在优先级列表中第m个UE所支持的最大传输速率。如果公式(8)没有解,则Rgrant(m,k)=Rred(m,k-1)。这样,发送给UE的指派消息,即指派给UE的允许速率Gm(k)如下:
以上采用的是相对调度的方式,在采用绝对调度的方式时,NodeB下发的指派消息中包含计算出的具体的传输速率的值。
步骤107:确定在当前调度周期内是否存在调度其他UE的可能性,如果存在调度其他UE的可能性,则转到步骤108;否则,结束当前调度周期的调度。
可以通过公式(8)是否有解来确定在当前调度周期内是否存在调度其他UE的可能性,如果公式(8)有解,说明当前调度周期内存在调度其他UE的可能性;如果公式(8)无解,说明当前调度周期内不存在调度其他UE的可能性。
步骤108:更新用于速率调度的小区当前可用资源:
步骤109:确定在当前调度周期内是否存在调度其他UE的资源,如果存在调度其他UE的资源,则转到步骤106,为第(m+1)个UE分配传输速率;否则,结束当前调度周期的调度。
在本实施例中,确定UE的调度优先级时考虑了UE缓冲区的占用情况,对于缓冲区较满的UE优先调度。这样,可以较为公平地为对UE进行调度,且不至于由于触发UE的TCP拥塞机制而降低传输速率。
实施例二:
图2是根据本发明实施例二的上行调度的方法流程图。在本实施例中,参考UE缓冲区的占用情况为UE分配传输速率。从图2可以看出,本实施例具体包含如下步骤:
步骤201至步骤204分别与步骤101至步骤104完全相同。
步骤205:计算属于NewTxPriSec(j,k)的所有UE的优先级,按照优先级对UE进行排列,例如生成一个优先级列表,优先级最高的UE排在列表的第一位,依次往低。
在本实施例中,第n个UE在第k个调度周期的优先级定义如下:
其中β、η是公平性因子,Ravg(n,k)是第n个UE在第k个调度周期的平均速率,但不包括k。
在NewTxPriSec(j,k)集合中,UE的优先级按照Sn(k)值的大小排列,生成优先级列表,Sn(k)值最大的UE的优先级最高,Sn(k)值最小的UE的优先级最低,设置一表示UE在优先级列表中位置的正整数m,并将m的初始值设置为0。
步骤206:计算在优先级列表中第m个位置的UE的速率为:
其中Rreq(n,k)是根据功率和缓冲区占用情况确定的最大速率。如果公式(8)没有解,则Rgrant(m,k)=Rred(m,k-1)。这样,发送给UE的指派消息,即指派给UE的允许速率Gm(k)如下:
从上式(15)可以看出,本实施例在为UE分配传输速率的时候,参考了UE的缓冲区占用情况,并且根据UE上报的缓冲区占用情况,确定对该UE使用绝对调度还是相对调度。具体为:如果计算所得当前调度周期的传输速率大于前一调度周期的传输速率、且缓冲区占用高于平均值,则采用绝对调度,基站发出的指派消息为计算所得的当前调度周期的传输速率;如果计算所得的当前调度周期的传输速率大于前一调度周期的传输速率、且缓冲区占用低于平均值,则采用相对调度,基站发出的指派消息为UP;如果计算所得当前调度周期的传输速率等于前一调度周期的传输速率,则基站发出的指派消息为KEEP;如果计算所得当前调度周期的传输速率小于前一调度周期的传输速率、且缓冲区占用高于平均值,则采用相对调度,基站发出的指派消息为DOWN;如果计算所得的当前调度周期的传输速率小于前一调度周期的传输速率、且缓冲区占用低于平均值,则采用绝对调度,基站发出的指派消息为计算所得的当前调度周期的传输速率。而公式(9)没有考虑缓冲区占用情况,对UE不加区分地都采用了相对调度。
步骤207至步骤209分别与步骤107至109基本相同,在此不予赘述。
在本实施例中,本实施例在确定UE的传输速率时,将相对调度和绝对调度相结合,对于计算出的传输速率较大且缓冲区较满的UE、计算出的传输速率较小且缓冲区较空的UE,采用绝对调度;对于计算出的传输速率较大但缓冲区较空、计算出的传输速率较小但缓冲区较满、计算出的传输速率与原来相同的UE,采用相对调度。这样,可以更为公平地为UE分配资源。
应该理解,本实施例的步骤205中,确定UE的调度优先级时也可以考虑UE缓冲区的占用情况,如步骤105的公式(14)所示出的,对于缓冲区较满的UE优先调度。
实施例三:
图3是根据本发明实施例三的上行调度的方法流程图。本实施例与实施例一的不同之处仅在于,在确定上行调度优先级时,不仅参考UE缓冲区的占用情况,还参考了业务优先级。从图3可以看出,本实施例包含如下步骤:
步骤301:预先为不同的业务类型设置不同的业务优先级。
步骤302至步骤305分别与步骤101至步骤104完全相同。
步骤306与步骤105基本相同,不同之处仅在于:按照公式(16)计算UE的调度优先级:
其中α
n体现第n个UE当前业务的优先级,β、η、ρ、λ是公平性因子,Bo(n,k)为第n个UE在第k个调度周期的缓冲区的占用情况,
是所有UE中缓冲区占用的最大值,R
avg(n,k)是第n个UE在第k个调度周期的平均速率。
步骤307至步骤310分别与步骤106至步骤109基本相同,在此不予赘述。
应该理解,本实施例的步骤307也可以采用步骤206中的绝对调度和相对调度相结合的方式。
在本实施例中,在确定UE的调度优先级时,还参考了业务的优先级,这样,可优先调度当前业务的优先级高的UE,从而实现对不同的业务维持不同的服务质量。
实施例四:
图4是根据本发明实施例四的上行调度的方法流程图。本实施例与实施例一的不同之处仅在于,在可利用容量的估计过程中,参考了相邻小区的相互影响。从图4可以看出,本实施例包含如下步骤:
步骤401至步骤403分别与步骤101至步骤103完全相同。
步骤404与步骤104基本相同,所不同之处仅在于,对于小区j是UE的活动集但不是最优下行小区,按照公式(17)计算:
其中NonPriSec(j)是以小区j作为活动集小区但不是最优小区的所有UE的集合。R(n,k-1)是第n个UE在第k个调度周期的传输速率。与公式(3)相比,公式(17)引入一个从统计意义上说明相邻小区的相互影响的参数f,参数f是一个可配置参数,引入它是为了更好地完成对负载门限的“紧性”控制,减小由于控制所导致的实际负载与理想负载门限之间的差值,从而更准确地估计小区可利用的资源。
一般,通过仿真或者实际的网络部署场景来确定参数f的值。
步骤405至步骤409分别与步骤105至步骤109基本相同,在此不予赘述。
应该理解,本实施例的步骤406也可以采用步骤206中的绝对调度和相对调度相结合的方式。并且,本实施例的步骤405也可以采用步骤306中的考虑业务优先级的方式。
在本实施例中,在可利用容量的估计过程中,参考相邻小区负载间的相互影响,从而更好地实现对负载门限的“紧性”控制。
以上是本发明的四个具体实施例,本发明不局限于上述四个具体实施例,还包括其他在调度中考虑UE缓冲区的占用情况。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。