高速下行分组数据的流量控制方法及装置的制作方法

文档序号:7970663阅读:252来源:国知局
专利名称:高速下行分组数据的流量控制方法及装置的制作方法
技术领域
本发明涉及流量控制方法及装置,特别涉及一种高速下行分组数据的流量控制方法及装置,属于移动通信技术领域。
背景技术
在第三代移动通信(3G)和未来增强的移动通信中,数据业务尤其是高速下行分组数据业务(如无线Internet浏览和下载、视频点播等业务)的应用变得越来越广泛和重要,将极大地丰富移动终端用户的生活。因此,WCDMA技术的R5版本中引入了高速下行分组接入(high speed downlink packet access,简称HSDPA)技术以支持高速的下行分组数据业务。
在WCDMA技术Release99版本的数据业务处理中,分组调度功能是由无线网络控制器(Radio Network Controller,简称RNC)来完成的,这样会引入较大的时延,不能迅速、自适应地使分组调度适应时变的无线信道的情况。而分组调度越接近空中接口,越能快速获取信道的状态信息,从而可以根据信道情况和衰落特性,改变调制与编码(MCS)方式,从而完成链路的自适应、快速分组调度,减小系统的传输时延,提高网络的性能;同时可以使用户终端(UserEquipment,简称UE)获得更可靠的业务和更高的数据速率,使运营商可以支持更低的每比特费用。因此,在WCDMA技术R5版本的HSDPA技术中,采用了WCDMA系统基站(NodeB)来完成分组调度和相应的处理。
HSDPA引入了一个新的传输信道即高速下行共享信道(High Speed DownlinkShared Channel,简称HS-DSCH)来承载数据业务,在每个传输时间间隔(TTI),基站NodeB根据每个UE的情况,将HS-DSCH分配给一个或多个用户以完成数据传输。
为完成HS-DSCH的数据传输和HSDPA相关物理信道的配置、分配和管理,HSDPA技术在NodeB侧增加了一个新的功能实体即高速媒介访问控制(MediumAccess Control-High Speed,简称MAC-hs)实体,以完成HS-DSCH相关的MAC子层操作,即用户间和用户内优先级处理和调度、自适应调制编码(AMC)、混合自动重传(HARQ)、反馈信息的处理以及相应的流量控制操作等。
在NodeB中,MAC-hs实体可以划分成如下几个功能模块分组调度和优先级处理模块、媒介访问控制层专用信道协议数据单元(Medium Access ControlDedicated Channel Protocol Data Unit,简称MAC-d PDU)数据拼装模块、HARQ实体、流量控制模块。
分组调度和优先级处理模块负责完成所有HSDPA用户的HS-DSCH资源管理,包括用户优先权队列(PQ)的建立、状态的管理、数据的传输顺序(TSN)和滑动窗口的处理等。当用户面收到FP(帧协议)帧时,FP子系统会根据其中所携带的MAC-d子流和优先级的信息,把MAC-d PDU放到相应的PQ中去。在每个TTI(2ms),分组调度和优先级处理模块根据HSDPA用户上行信令信道的反馈信息,选择调度算法,计算每个用户的优先级和更新用户相应的信息,然后根据用户的优先级决定用户的调度顺序。
根据分组调度模块的调度,MAC-d PDU数据拼装模块把该UE的PQ中的一个或多个MAC-d PDU,组装成一个MAC-hs PDU,并在前面加上报头,以标注相应的PQ和TSN等信息。
每个HSDPA UE对应一个HARQ实体,每个HARQ实体中可以包含最多8个HARQ进程,每个HARQ进程和UE侧的一个HARQ进程相对应。NodeB一侧HARQ采用多信道SAW(停等)方式运行,HARQ根据UE返回的ACK/NACK信息,决定数据块的发送或重传,并通知物理层进行相应的处理。
流量控制模块通过管理RNC侧发送来的MAC-d PDU的数量,来避免HS-DSCH上流量过大而造成数据拥塞的现象,这样可以减小数据传输时延和数据包的重传。HSDPA的流量控制功能在NodeB的MAC-hs实体中实现,为调度算法服务,它的直接目的是通过容量分配控制帧的形式指示RNC的无线链路控制(RLC)层的MAC-d flow数据在Iub接口(NodeB与RNC之间的接口)的发送规则,使得用户队列缓存中有足够的数据在Uu接口(UE与NodeB之间的接口)发送。
具体而言,如图1所示,RNC通过向NodeB发送容量请求控制帧来指示HSDPA数据在RNC的存储情况,并要求NodeB回应容量分配控制帧以分配该HSDPA用户的数据发送容量;NodeB通过容量分配控制帧告知RNC可以使用的HSDPA数据流发送的速率以及该速率存在的时间。NodeB也可以根据自己的要求主动向RNC发送容量请求控制帧。
NodeB发送的容量分配控制帧的格式如图2所示,其中各参数说明如下1、Congestion Status拥塞状态;2、CmCH-PI优先级指示;3、Maximum MAC-d PDU Length指示RNC发送数据时允许的MAC-d PDU的大小的最大值。其计算公式为MAC-d Pdu Length=MAX(Pdusize1,Pdusize2,…Pdusizen);4、HS-DSCH Credits(下文简称Credits)指示在一个有效的HS-DSCH时间间隔(HS-DSCH Interval)内,RNC侧发送的MAC-d PDU的个数,其计算公式为Hs-dsch Credits=IubBw×Hs-dsch IntervalMAC-d Pdu Length]]>其中IubBw表示经流量成形之后的Iub接口带宽;5、HS-DSCH Interval(下文简称Interval)指示RNC传输HS-DSCH Credits个MAC-d PDU给NodeB可用的时间间隔。其具体的取值与设备制造商的实现机制相关,其粒度为10ms,取值范围为
ms;6、HS-DSCH Repetition Period指示连续HS-DSCH Interval的有效周期个数;7、Spare Extension未使用,以后可加入新的信息支持向后兼容。
MAC-hs实体的流量控制模块通过调节NodeB的MAC-hs实体和RNC的MAC-dflow之间的流量,使其与Uu口上的空口能力相匹配,避免了Iub口上拥塞而出现数据包丢失重传情况。MAC-hs的流控策略的好坏极大地影响着HSDPA业务性能的高低。
现有技术中,NodeB的MAC-hs实体通过如下步骤来计算生成和发送容量分配控制帧1、队列带宽预分配根据既定原则为每个队列预先分配Iub带宽。例如可根据各用户队列的业务类型(流业务、语音业务等)、申请业务的用户UE开户等级等因素为每个用户队列预分配Iub带宽;2、Iub流量成形上述的队列带宽预分配只是单纯考虑了业务类型的各属性,而没有考虑NodeB与RNC Iub接口上的可用Iub带宽。因此Iub流量成形就是将各用户队列预分配带宽之和控制在可用的HSDPA Iub带宽之内,必要时可进行带宽压缩处理;3、容量分配控制帧生成和发送Iub流量成形后,确定了各队列的Iub带宽分配结果,根据一定的原则向RNC发送容量分配控制帧,现有技术中,该原则为经流量成形之后给用户分配的带宽与前一次分配的带宽之差超过一定的比例值β,而且容量分配控制帧中HS-DSCH Credits量化方法是当计算出的HS-DSCH Credits不是整数且该用户队列对应的业务类型要求配置保证比特速率(Guarantee Bit Rate,简称GBR),则HS-DSCH Credits将向上取整量化;如果该用户队列没有配置GBR,则HS-DSCH Credits将向下取整量化,其计算公式为Hs-dsch Credits=IubBw×Hs-dcsh IntervalMAC-d Pdu Length.]]>现有技术中,当RNC侧RLC层数据缓存中有待发数据时,RNC首先向NodeB发送容量请求控制帧,希望待发的数据能尽早发送出去,NodeB接收到容量请求控制帧后,通过上述步骤计算生成及发送容量分配控制帧。
相应地,如图3所示,现有NodeB中包括的用于高速下行分组数据的流量控制的装置包括队列带宽预分配模块,用于根据既定原则为每个队列预先分配Iub带宽;Iub流量成形模块,与队列带宽预分配模块连接,用于将各用户队列预分配带宽之和控制在可用的HSDPA Iub带宽之内;容量分配控制帧参数计算模块,与Iub流量成形模块连接,用于按上述方法计算容量分配控制帧的参数;容量分配控制帧发送模块,与容量分配控制帧参数计算模块连接,用于向RNC发送生成的容量分配控制帧。
上述现有技术的不足之处在于NodeB在上报流量分配控制帧时,对流量分配控制帧中的、用于指示在一个HS-DSCH Interval时间间隔内RNC侧发送的MAC-d PDU个数的参数HS-DSCH Credits做了向下取整运算(未配置GBR时),因此会出现当HS-DSCH Credits小于某个值后,前后两次流量成形时分配的带宽值已超过预设的比例值β,因此需上报流量分配控制帧,但由于前后两次的Credits均为向下取整导致Credits值相同,因而发送给RNC的流量分配控制帧参数完全相同,从而导致Iub口带宽的不可控性,增大了Iub口数据拥塞事件发生的概率,不能最优化地使用Iub口的带宽资源,并且也导致了上报无效的流量分配控制帧。

发明内容
本发明的目的是针对上述现有技术的不足,提供一种高速下行分组数据的流量控制方法及装置,能够保证NodeB上报给RNC的总Iub带宽需求在可用Iub带宽总量的范围内波动,极大地降低Iub口发生数据拥塞的概率,增强Iub口带宽的可控性。
为实现上述第一个发明目的,本发明实施例提供了一种高速下行分组数据的流量控制方法,包括在每个流量控制周期,在对每个用户队列进行队列带宽预分配及Iub流量成形后,计算该用户队列对应的容量分配控制帧中的参数(其中Credits参数是按上文所述公式Hs-dsch Credits=IubBw×Hs-dsch IntervalMAC-d Pdu Length]]>计算);预先将先前的总的带宽分配偏差的值保存在一全局变量中,如果所述全局变量的值小于零则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果所述全局变量的值大于零则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值,如果所述全局变量的值等于零则将该Credits参数的计算结果进行向上或向下取整后作为该Credits参数的值;然后计算本次带宽分配偏差并作为预设的该用户队列对应的局部变量的值保存,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存。其中所述带宽分配偏差是指根据上述方法对Credits参数进行调整后计算出的带宽量值(AdjustIubBw)与最初经过Iub流量成形之后分配的带宽(IubBw)之间的偏差值,其中AdjustIubBw=MAC-d Pdu Length×HS-dsch CreditsHs-dsch Interval.]]>在上述技术方案中,通过设置一个全局变量保存先前所有流量控制周期的带宽分配偏差的总的累加值,并在现有的计算用户队列对应的容量分配控制帧中的参数的步骤后,增设对容量分配控制帧中的Credits参数进行调整的操作,根据该全局变量的值与零比较的结果来决定对Credits参数的计算结果进行向上或向下调整。其中,如果该全局变量的值等于零,则如果为了充分保证Iub口带宽分配不超出实际带宽,则应将Credits参数的计算结果进行向下取整,如果为了充分利用Iub口的带宽,则应将Credits参数的计算结果进行向上取整。如上文所述,Credits参数是用于指示在一个有效的HS-DSCH时间间隔(HS-DSCH Interval)内,RNC侧发送的MAC-d PDU的个数,现有技术中对HS-DSCHCredits的计算结果做了向下取整运算。而在上述技术方案中,根据先前累加的总的带宽分配偏差值来决定对Credits的计算结果进行向上或向下取整,从而能够将先前的带宽分配偏差作为本次带宽分配的基准,有效地对本次Credits计算结果进行调整,避免了现有技术中始终对Credits进行向下取整而未考虑先前带宽分配偏差所导致的Iub口带宽分配的不可控性,控制了Iub口带宽的合理分配,降低了Iub口发生数据拥塞的概率,提高了系统整体的服务质量。
为实现上述发明目的,本发明实施例还提供了一种高速下行分组数据的流量控制装置,包括队列带宽预分配模块、Iub流量成形模块、以及容量分配控制帧参数计算模块,还包括全局变量保存模块,用于保存指示总的带宽分配偏差的全局变量;参数调整模块,与容量分配控制帧参数计算模块及全局变量保存模块连接,用于根据所述全局变量的值对容量分配控制帧的Credits参数的计算结果进行调整,如果该全局变量的值小于零则将Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果不小于零则将Credits参数的计算结果进行向下取整后作为该Credits参数的值;并计算本次带宽分配偏差作为预设的该用户队列对应的局部变量的值,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存到所述全局变量保存模块中。
在上述技术方案中,通过在现有基站中的流量控制装置中增设全局变量保存模块以保存所述用于指示总的带宽分配偏差的全局变量,并增设参数调整模块用于根据所述全局变量的值对容量分配控制帧的Credits参数的计算结果进行调整,从而通过累加先前带宽分配偏差的值来指导本次带宽分配,并通过向上或向下取整的选择来对本次带宽分配进行调整,避免了现有技术中始终对Credits进行向下取整而未考虑先前带宽分配偏差所导致的Iub口带宽分配的不可控性,控制了Iub口带宽的合理分配,降低了Iub口发生数据拥塞的概率,提高了系统整体的服务质量。
综上所述,本发明实施例通过设置一个全局变量保存先前所有流量控制周期的带宽分配偏差的总的累加值,并在现有的计算用户队列对应的容量分配控制帧中的参数的步骤后,增设对容量分配控制帧中的Credits参数进行调整的操作,根据该全局变量的值是否小于零来决定对Credits参数的计算结果进行向上或向下调整,能够达到保证NodeB上报给RNC的总Iub带宽需求在可用Iub带宽总量的范围内波动,极大地降低Iub口发生数据拥塞的概率,增强Iub口带宽的可控性的有益技术效果。


图1为现有NodeB与RNC间下行数据流量控制方式的消息示意图;图2为容量分配控制帧的格式示意图;
图3为现有NodeB中用于高速下行分组数据流量控制的装置结构示意图;图4为本发明高速下行分组数据的流量控制方法的原理示意图;图5为本发明高速下行分组数据的流量控制方法实施例一的流程示意图;图6为本发明高速下行分组数据的流量控制方法实施例二的流程示意图;图7为本发明高速下行分组数据的流量控制方法实施例三的流程示意图;图8为本发明高速下行分组数据的流量控制方法实施例四的流程示意图;图9为本发明高速下行分组数据的流量控制方法实施例五的流程示意图;图10为本发明高速下行分组数据的流量控制方法实施例六的流程示意图;图11为本发明高速下行分组数据的流量控制装置的原理示意图;图12为本发明高速下行分组数据的流量控制装置实施例一的结构示意图;图13为本发明高速下行分组数据的流量控制装置实施例二的结构示意图;图14为本发明高速下行分组数据的流量控制装置实施例三的结构示意图;图15为本发明高速下行分组数据的流量控制装置实施例四的结构示意图;图16为本发明高速下行分组数据的流量控制装置实施例五的结构示意图;图17为本发明高速下行分组数据的流量控制装置实施例六的结构示意图。
具体实施例方式
下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明的基本构思是针对现有技术中NodeB在上报流量分配控制帧时,对流量分配控制帧中指示在一个HS-DSCH Interval时间间隔内RNC侧发送的MAC-d PDU个数的参数HS-DSCH Credits的计算结果始终做向下取整运算(未配置GBR时),因此导致Iub口带宽的不可控性,增大了Iub口数据拥塞事件发生的概率,不能最优化地使用Iub口的带宽资源的缺陷,在NodeB中设置一个全局变量保存先前所有流量控制周期的带宽分配偏差的总的累加值,并在现有的计算用户队列对应的容量分配控制帧中的参数的步骤后,增设对容量分配控制帧中的Credits参数进行调整的操作,根据该全局变量的值是否小于零来决定对Credits参数的计算结果进行向上或向下调整,从而能够将先前的带宽分配偏差作为本次带宽分配的基准,有效地对本次Credits计算结果进行调整,避免了现有技术中始终对Credits进行向下取整而未考虑先前带宽分配偏差所导致的Iub口带宽分配的不可控性,控制Iub口带宽的合理分配,降低Iub口发生数据拥塞的概率。其中,如果该全局变量的值等于零,则如果为了充分保证Iub口带宽分配不超出实际带宽,则应将Credits参数的计算结果进行向下取整,如果为了充分利用Iub口的带宽,则应将Credits参数的计算结果进行向上取整。
进一步地,针对现有技术中当HS-DSCH Credits小于某个值后,前后两次流量成形时分配的带宽值已超过预设的比例值β,但前后两次的Credits均为向下取整导致Credits值相同,因而发送给RNC的流量分配控制帧参数完全相同,从而导致上报无效的流量分配控制帧的缺陷,在NodeB上报容量分配控制帧之前还可先判断当前要发送的容量分配控制帧的参数与上次发送的容量分配控制帧的参数是否相同,在容量分配控制帧中的HS-DSCH Credits参数改变时才向RNC上报,从而避免现有技术中上报无效的容量分配控制帧的缺陷,减少无效的带宽分配控制帧的上报频度,降低对传输层传输资源的浪费。
基于上述发明构思,本发明实施例提供了一种高速下行分组数据的流量控制方法,如图4所示,包括在每个流量控制周期,在对每个用户队列进行队列带宽预分配及Iub流量成形后,计算该用户队列对应的容量分配控制帧中的参数;预先将先前的总的带宽分配偏差的值保存在一全局变量中,如果所述全局变量的值小于零则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果所述全局变量的值大于零则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值,如果所述全局变量的值等于零则将该Credits参数的计算结果进行向上或向下取整后作为该Credits参数的值;然后计算本次带宽分配偏差并作为预设的该用户队列对应的局部变量的值保存,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存。
优选地,在所述将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存之后还可包括基站将该用户队列对应的容量分配控制帧发送给无线网络控制器。
为了克服现有技术中上报无效的流量分配控制帧的缺陷,减少无效的带宽分配控制帧的上报频度,降低对传输层传输资源的浪费,在所述将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存之后还可包括以下操作基站在当前要发送的容量分配控制帧的参数与上次发送的容量分配控制帧的参数相同时,将当前要发送的容量分配控制帧发送给无线网络控制器。通过增设上述操作,在容量分配控制帧中的HS-DSCH Credits参数改变时才向RNC上报,从而避免了现有技术中上报无效的容量分配控制帧的缺陷。
优选地,为了尽量使配置了保证比特速率(GBR)的用户队列的Iub带宽优先得到保证,在所述在每个流量控制周期对每个用户队列进行队列带宽预分配及Iub流量成形之前还可包括对参与流量控制的用户队列进行排序,将配置有GBR的用户队列排在前面,将未配置GBR的用户队列排在后面。从而使配置有GBR的用户队列优先得到Iub带宽的保证;而未配置GBR的用户队列所需要的Iub带宽将尽量得到保证。
所述记录总的带宽分配偏差的全局变量在第一次使用时需要进行初始化操作,即在所述在每个流量控制周期对每个用户队列进行队列带宽预分配及Iub流量成形之前,还可包括在第一个流量控制周期的初始化操作,具体包括在第一个流量控制周期,对第一个用户队列进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数后,计算本次带宽分配偏差并作为该用户队列对应的局部变量的值以及所述全局变量的值保存。通过上述操作初始化所述全局变量的值,并保存了所述第一个用户队列对应的用于记录本次带宽分配偏差的局部变量的值。
由于不好控制所述全局变量的正负,有可能在每个流量控制周期对第一个配置了GBR的用户队列对应的Credits参数进行调整时总是向上调整。因此,为了保证每个流量控制周期的第一个GBR用户队列对应的Credits参数不至于每次都向上量化,因此对Credits参数的调整还可进一步地进行优化,即在第一个流量控制周期之后的每个流量控制周期,基站在对所述第一个用户队列(即配置了GBR的用户队列)进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数后,可执行以下操作如果该用户队列对应的所述局部变量的值小于零则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果该用户队列对应的所述局部变量的值大于零则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值;如果该用户队列对应的所述局部变量的值等于零则将该Credits参数的计算结果进行向上或向下取整后作为该Credits参数的值;计算本次带宽分配偏差并作为该用户队列对应的所述局部变量的值,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存。其中,如果该局部变量的值等于零,则如果为了充分保证Iub口带宽分配不超出实际带宽,则应将Credits参数的计算结果进行向下取整,如果为了充分利用Iub口的带宽,则应将Credits参数的计算结果进行向上取整。
通过上述操作,对每个流量控制周期中的所述第一个用户队列,根据该用户队列对应的记录了上次带宽分配偏差值的局部变量来调整本次Credits参数的值,从而能够根据本用户队列先前带宽分配的偏差对本用户队列此次带宽分配进行微调。通过总体用户队列根据全局变量调整Credits参数以及部分用户队列根据局部变量调整Credits参数的有机结合,进一步地优化了Iub口带宽的分配,大大降低了Iub口带宽分配的不可控性。
优选地,可将每个用户队列分别对应的所述局部变量保存在帧协议(FP)属性表中。
参见图5所示的本发明高速下行分组数据的流量控制方法的实施例一的流程示意图,该流程示意图为在每个流量控制周期内每个用户队列对应的处理流程示意图,基站在每个流量控制周期对每个用户队列,首先在步骤101中进行队列带宽预分配及Iub流量成形后,计算该用户队列对应的容量分配控制帧中的参数;然后在步骤102中判断预先保存的、用于指示总的带宽分配偏差的全局变量的值是否小于零(下文中可将该全局变量记为SumIubDelta),是则执行步骤103即将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,然后执行步骤105;否则执行步骤104即将该Credits参数的计算结果进行向下取整后作为该Credits参数的值,然后执行步骤105;在步骤105中,计算本次带宽分配偏差并作为预设的该用户队列对应的局部变量(下文可记为UserDelta)的值保存;在步骤106中,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存;最后在步骤107中,基站将该用户队列对应的容量分配控制帧发送给无线网络控制器。其中所述带宽分配偏差是指Credits的计算结果(即公式Hs-dsch Credits=IubBw×Hs-dsch IntervalMAC-d Pdu Length]]>的计算结果)与其根据上述方法对Credits参数进行调整后所得的值之间的偏差值。
上述实施例一中对Credita参数的调整方法用公式表述即为 其中,如上文所述,IubBw指示经流量成形之后的Iub接口带宽,IntervalRNC传输HS-DSCH Credits个MAC-d PDU给NodeB可用的时间间隔,MAC-d PDULength指示RNC发送数据时允许的MAC-d PDU的大小的最大值,上述参数均为计算获得的容量分配控制帧的参数。所述全局变量记为SumIubDelta,局部变量记为UserDelta,则步骤106用公式表述即为SumIubDelta=SumIubDelta+UserDelta在上述实施例一中,通过设置一个全局变量保存先前所有流量控制周期的带宽分配偏差的总的累加值,并在现有的计算用户队列对应的容量分配控制帧中的参数的步骤后,增设对容量分配控制帧中的Credits参数进行调整的操作,根据该全局变量的值是否小于零来决定对Credits参数的计算结果进行向上或向下调整。如上文所述,Credits参数是用于指示在一个有效的HS-DSCH时间间隔(HS-DSCH Interval)内,RNC侧发送的MAC-d PDU的个数,现有技术中对HS-DSCH Credits的计算结果做了向下取整运算。而在上述实施例一中,根据先前累加的总的带宽分配偏差值来决定对Credits的计算结果进行向上或向下取整,从而能够将先前的带宽分配偏差作为本次带宽分配的基准,有效地对本次Credits计算结果进行调整,避免了现有技术中始终对Credits进行向下取整而未考虑先前带宽分配偏差所导致的Iub口带宽分配的不可控性,控制了Iub口带宽的合理分配,降低了Iub口发生数据拥塞的概率,提高了系统整体的服务质量。
进一步地,为了克服现有技术中上报无效的流量分配控制帧的缺陷,在本发明高速下行分组数据的流量控制方法的实施例二中,如图6所示,与上述实施例一的区别在于,在步骤107之前还包括以下操作在步骤107a中基站判断当前要发送的容量分配控制帧的参数与上次发送的容量分配控制帧的参数是否相同,是则结束,否则执行步骤107。本实施例二通过在容量分配控制帧中的HS-DSCH Credits参数改变时才向RNC上报,从而避免了现有技术中上报无效的容量分配控制帧的缺陷,减少了无效的带宽分配控制帧的上报频度,降低了对传输层传输资源的浪费。
进一步地,为了对上述实施例一中提供的全局变量进行初始化,在本发明高速下行分组数据的流量控制方法的实施例三中,如图7所示,与上述实施例一的区别在于,在步骤101之前还包括以下操作在步骤100中对参与流量控制的用户队列进行排序,将配置有保证比特速率的用户队列排在前面,将未配置GBR的用户队列排在后面;在步骤100a中,在第一个流量控制周期,基站对第一个用户队列进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数;然后在步骤100b中,计算本次带宽分配偏差并作为该用户队列对应的局部变量的值以及所述全局变量的值保存;在步骤100c中,将该用户队列对应的容量分配控制帧发送给无线网络控制器;然后对于剩余的用户队列以及后续流量控制周期的队列执行步骤101。
在本实施例三中,对第一个流量控制周期中剩余的每个用户队列,基站对该用户队列进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数后,判断所述全局变量的值是否小于零,是则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,否则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值;计算本次带宽分配偏差并作为该用户队列对应的局部变量的值保存,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存,然后将该用户队列对应的容量分配控制帧发送给无线网络控制器后结束。
为了尽量使配置了保证比特速率(GBR)的用户队列的Iub带宽优先得到保证,在本实施例三中,在每个流量控制周期对每个用户队列进行队列带宽预分配及Iub流量成形之前包括了对用户队列进行排序的操作,具体包括对参与流量控制的用户队列进行排序,将配置有GBR的用户队列排在前面,将未配置GBR的用户队列排在后面。从而使配置有GBR的用户队列优先得到Iub带宽的保证;而未配置GBR的用户队列所需要的Iub带宽将尽量得到保证。
同样地,为了对上述实施例二中提供的全局变量进行初始化,参见图8所示的本发明高速下行分组数据的流量控制方法的实施例四的流程示意图,与上述实施例二的区别在于,在步骤101之前还包括以下操作在步骤100a中,在第一个流量控制周期,基站对第一个用户队列进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数;然后在步骤100b中,计算本次带宽分配偏差并作为该用户队列对应的局部变量的值以及所述全局变量的值保存;在步骤100c中,将该用户队列对应的容量分配控制帧发送给无线网络控制器;然后对于剩余的用户队列以及后续流量控制周期的队列执行步骤101。
由于不好控制所述全局变量的正负,有可能在每个流量控制周期对第一个配置了GBR的用户队列对应的Credits参数进行调整时总是向上调整。因此,为了保证每个流量控制周期的第一个GBR用户队列对应的Credits参数不至于每次都向上量化,上述技术方案中对Credits参数的调整还可进一步地进行优化,参见图9所示的本发明高速下行分组数据的流量控制方法的实施例五的流程示意图,与上述实施例三的区别在于,在初始化操作完毕即执行步骤100c之后,对后续的每个流量控制周期中的用户队列,在执行步骤101之后,还执行以下操作在步骤101a中,判断要处理的用户队列是否是步骤100中排列后的第一个用户队列,否则执行步骤102,是则执行步骤101b即判断该用户队列对应的所述局部变量(记为UserDelta)的值是否小于零,是则执行步骤101c即将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值后执行步骤105,否则执行步骤101d即将该Credits参数的计算结果进行向下取整后作为该Credits参数的值后执行步骤105。上述操作用公式表述即为 上述实施例五中,通过对每个流量控制周期中的所述第一个用户队列(配置了GBR),根据该用户队列对应的记录了上次带宽分配偏差值的局部变量来调整本次Credits参数的值,从而能够保证每个流量控制周期的第一个GBR用户队列对应的Credits参数不至于每次都向上量化。
同样地,为了进一步优化实施例四中对Credits参数的调整操作,参见图10所示的本发明高速下行分组数据的流量控制方法的实施例六的流程示意图,与上述实施例四的区别在于,在初始化操作完毕即执行步骤100c之后,对后续的每个流量控制周期中的用户队列,在执行步骤101之后,还执行以下操作在步骤101a中,判断要处理的用户队列是否是所述第一个用户队列,否则执行步骤102,是则执行步骤101b即判断该用户队列对应的所述局部变量的值是否小于零,是则执行步骤101c即将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值后执行步骤105,否则执行步骤101d即将该Credits参数的计算结果进行向下取整后作为该Credits参数的值后执行步骤105。
基于上述发明构思,本发明实施例还提供了一种高速下行分组数据的流量控制装置,包括队列带宽预分配模块、Iub流量成形模块、以及容量分配控制帧参数计算模块,还包括全局变量保存模块,用于保存指示总的带宽分配偏差的全局变量;参数调整模块,与容量分配控制帧参数计算模块及全局变量保存模块连接,用于根据所述全局变量的值对容量分配控制帧的Credits参数的计算结果进行调整,如果该全局变量的值小于零则将Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果不小于零则将Credits参数的计算结果进行向下取整后作为该Credits参数的值;并计算本次带宽分配偏差作为预设的该用户队列对应的局部变量的值,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存到所述全局变量保存模块中。
优选地,为了克服现有技术中上报无效的流量分配控制帧的缺陷,减少无效的带宽分配控制帧的上报频度,降低对传输层传输资源的浪费,所述容量分配控制帧发送模块还可包括发送预处理模块,与所述容量分配控制帧参数计算模块连接,用于接收容量分配控制帧参数计算模块处理完毕的容量分配控制帧,并判断该容量分配控制帧的参数与上次发送的容量分配控制帧的参数是否相同,是则丢弃该容量分配控制帧,否则将该容量分配控制帧发送给无线网络控制器。通过增设发送预处理模块,在容量分配控制帧中的HS-DSCH Credits参数改变时才向RNC上报,从而避免了现有技术中上报无效的容量分配控制帧的缺陷。
为了对所述记录总的带宽分配偏差的全局变量在第一次使用时进行初始化操作,上述高速下行分组数据的流量控制装置中还可包括局部变量保存模块,用于保存每个用户队列对应的指示带宽分配偏差的局部变量;初始化模块,与所述容量分配控制帧参数计算模块、全局变量保存模块、局部变量保存模块、以及容量分配控制帧发送模块连接,用于在第一个流量控制周期,对第一个用户队列,在接收到容量分配控制帧参数计算模块发送的该队列对应的容量分配控制帧的参数后,当计算出的Credits参数不是整数且该用户队列对应的业务类型要求配置保证比特速率,则将Credits参数向上取整量化,然后计算本次带宽分配偏差并作为该用户队列对应的局部变量的值保存到局部变量保存模块中,以及将本次带宽分配偏差的值作为所述全局变量的值保存到全局变量保存模块中,并将该容量分配控制帧经由容量分配控制帧发送模块发送给无线网络控制器。
此外,为了实现对每个流量控制周期的第一个用户队列根据该用户队列对应的指示上次带宽分配偏差的局部变量进行调整,上述装置中的所述参数调整模块还可与所述局部变量保存模块连接,用于在计算本次带宽分配偏差并作为该用户队列对应的所述局部变量的值后保存到局部变量保存模块中,以及所述参数调整模块对每个流量控制周期的第一个用户队列根据该局部变量的值对所计算的Credits参数进行调整。所述局部变量保存模块可为将所述局部变量保存在帧协议属性表中的局部变量保存模块。
参见图12所示的本发明高速下行分组数据的流量控制装置的实施例一的结构示意图,该装置包括队列带宽预分配模块1,用于根据既定原则为每个队列预先分配Iub带宽;Iub流量成形模块2,与队列带宽预分配模块1连接,用于将各用户队列预分配带宽之和控制在可用的HSDPA Iub带宽之内;容量分配控制帧参数计算模块3,与Iub流量成形模块2连接,用于按上述方法计算容量分配控制帧的参数;容量分配控制帧发送模块4,与容量分配控制帧参数计算模块3连接,用于向RNC发送生成的容量分配控制帧;全局变量保存模块5,用于保存指示总的带宽分配偏差的全局变量;参数调整模块6,与容量分配控制帧参数计算模块3及全局变量保存模块5连接,用于根据所述全局变量的值对容量分配控制帧的Credits参数的计算结果进行调整,如果该全局变量的值小于零则将Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果不小于零则将Credits参数的计算结果进行向下取整后作为该Credits参数的值;并计算本次带宽分配偏差作为预设的该用户队列对应的局部变量的值,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存到全局变量保存模块5中。
在本实施例一中,通过在现有基站中的流量控制装置中增设全局变量保存模块以保存所述用于指示总的带宽分配偏差的全局变量,并增设参数调整模块用于根据所述全局变量的值对容量分配控制帧的Credits参数的计算结果进行调整,从而通过累加先前带宽分配偏差的值来指导本次带宽分配,并通过向上或向下取整的选择来对本次带宽分配进行调整,避免了现有技术中始终对Credits进行向下取整而未考虑先前带宽分配偏差所导致的Iub口带宽分配的不可控性,控制了Iub口带宽的合理分配,降低了Iub口发生数据拥塞的概率,提高了系统整体的服务质量。
进一步地,为了克服现有技术中上报无效的流量分配控制帧的缺陷,如图13所示,在本发明高速下行分组数据的流量控制装置实施例二中,与本发明高速下行分组数据的流量控制装置实施例一的区别在于容量分配控制帧发送模块4还包括发送预处理模块4′,与容量分配控制帧参数计算模块3连接,用于接收容量分配控制帧参数计算模块3处理完毕的容量分配控制帧,并判断该容量分配控制帧的参数与上次发送的容量分配控制帧的参数是否相同,是则丢弃该容量分配控制帧,否则将该容量分配控制帧发送给无线网络控制器。
如图14所示,在本发明高速下行分组数据的流量控制装置实施例三中,与本发明高速下行分组数据的流量控制装置实施例一的区别在于该装置还包括局部变量保存模块7,用于保存每个用户队列对应的指示带宽分配偏差的局部变量;初始化模块8,与容量分配控制帧参数计算模块3、全局变量保存模块5、局部变量保存模块7、以及容量分配控制帧发送模块4连接,用于在第一个流量控制周期,对第一个用户队列,在接收到容量分配控制帧参数计算模块3发送的该队列对应的容量分配控制帧的参数后,计算本次带宽分配偏差并作为该用户队列对应的局部变量的值保存到局部变量保存模块7中,以及将本次带宽分配偏差的值作为所述全局变量的值保存到全局变量保存模块5中,然后将该容量分配控制帧经由容量分配控制帧发送模块4发送给无线网络控制器。
同样地,参见图15所示的本发明高速下行分组数据的流量控制装置实施例四的结构示意图,与本发明高速下行分组数据的流量控制装置实施例二的区别在于该装置还包括局部变量保存模块7,用于保存每个用户队列对应的指示带宽分配偏差的局部变量;初始化模块8,与容量分配控制帧参数计算模块3、全局变量保存模块5、局部变量保存模块7、以及容量分配控制帧发送模块4连接,用于在第一个流量控制周期,对第一个用户队列,在接收到容量分配控制帧参数计算模块发送的该队列对应的容量分配控制帧的参数后,当计算出的Credits参数不是整数且该用户队列对应的业务类型要求配置保证比特速率,则将Credits参数向上取整量化,然后计算本次带宽分配偏差并作为该用户队列对应的局部变量的值保存到局部变量保存模块中,以及将本次带宽分配偏差的值作为所述全局变量的值保存到全局变量保存模块中,并将该容量分配控制帧经由容量分配控制帧发送模块发送给无线网络控制器。
为了实现对本发明高速下行分组数据的流量控制装置实施例三中每个流量控制周期的第一个用户队列根据该用户队列对应的指示上次带宽分配偏差的局部变量进行调整,参见图16所示的本发明高速下行分组数据的流量控制装置实施例五的结构示意图,与本发明高速下行分组数据的流量控制装置实施例三的区别在于,参数调整模块6还与局部变量保存模块7连接,用于在计算本次带宽分配偏差并作为该用户队列对应的所述局部变量的值后保存到局部变量保存模块7中。
同样地,为了实现对本发明高速下行分组数据的流量控制装置实施例四中每个流量控制周期的第一个用户队列根据该用户队列对应的指示上次带宽分配偏差的局部变量进行调整,参见图17所示的本发明高速下行分组数据的流量控制装置实施例六的结构示意图,与本发明高速下行分组数据的流量控制装置实施例四的区别在于,参数调整模块6还与局部变量保存模块7连接,用于在计算本次带宽分配偏差并作为该用户队列对应的所述局部变量的值后保存到局部变量保存模块7中,以及参数调整模块6对每个流量控制周期的第一个用户队列根据该局部变量的值对所计算的Credits参数进行调整。
以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。
权利要求
1.一种高速下行分组数据的流量控制方法,其特征在于,包括在每个流量控制周期,在对每个用户队列进行队列带宽预分配及Iub流量成形后,计算该用户队列对应的容量分配控制帧中的参数;预先将先前的总的带宽分配偏差的值保存在一全局变量中,如果所述全局变量的值小于零则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果所述全局变量的值大于零则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值,如果所述全局变量的值等于零则将该Credits参数的计算结果进行向上或向下取整后作为该Credits参数的值;然后计算本次带宽分配偏差并作为预设的该用户队列对应的局部变量的值保存,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存。
2.根据权利要求1所述的方法,其特征在于,在所述将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存之后还包括基站将该用户队列对应的容量分配控制帧发送给无线网络控制器。
3.根据权利要求1所述的方法,其特征在于,在所述将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存之后还包括在当前要发送的容量分配控制帧的参数与上次发送的容量分配控制帧的参数相同时,将当前要发送的容量分配控制帧发送给无线网络控制器。
4.根据权利要求1所述的方法,其特征在于,在所述在每个流量控制周期对每个用户队列进行队列带宽预分配及Iub流量成形之前还包括对参与流量控制的用户队列进行排序,将配置有保证比特速率的用户队列排在前面,将未配置保证比特速率的用户队列排在后面。
5.根据权利要求1所述的方法,其特征在于,还包括在第一个流量控制周期的初始化操作,具体包括在第一个流量控制周期,基站对第一个用户队列进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数后,当计算出的Credits参数不是整数且该用户队列对应的业务类型要求配置保证比特速率,则将Credits参数向上取整量化,然后计算本次带宽分配偏差并作为该用户队列对应的局部变量的值以及所述全局变量的值保存。
6.根据权利要求1所述的方法,其特征在于,在第一个流量控制周期之后的每个流量控制周期,基站在对所述第一个用户队列进行队列带宽预分配及Iub流量成形并计算该用户队列对应的容量分配控制帧中的参数后,执行以下操作如果该用户队列对应的所述局部变量的值小于零则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果该用户队列对应的所述局部变量的值大于零则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值;如果该用户队列对应的所述局部变量的值等于零则将该Credits参数的计算结果进行向上或向下取整后作为该Credits参数的值;计算本次带宽分配偏差并作为该用户队列对应的所述局部变量的值,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存。
7.根据权利要求6所述的方法,其特征在于基站将每个用户队列分别对应的所述局部变量保存在帧协议属性表中。
8.一种高速下行分组数据的流量控制装置,包括队列带宽预分配模块、Iub流量成形模块、以及容量分配控制帧参数计算模块,其特征在于,还包括全局变量保存模块,用于保存指示总的带宽分配偏差的全局变量;参数调整模块,与容量分配控制帧参数计算模块及全局变量保存模块连接,用于根据所述全局变量的值对容量分配控制帧的Credits参数的计算结果进行调整,如果所述全局变量的值小于零则将该用户队列对应的容量分配控制帧的Credits参数的计算结果进行向上取整后作为该Credits参数的值,如果所述全局变量的值大于零则将该Credits参数的计算结果进行向下取整后作为该Credits参数的值,如果所述全局变量的值等于零则将该Credits参数的计算结果进行向上或向下取整后作为该Credits参数的值;并计算本次带宽分配偏差作为预设的该用户队列对应的局部变量的值,将该局部变量的值与所述全局变量的值累加后作为该全局变量的值保存到所述全局变量保存模块中。
9.根据权利要求8所述的装置,其特征在于还包括容量分配控制帧发送模块,与所述容量分配控制帧参数计算模块连接,用于向无线网络控制器发送所生成的容量分配控制帧。
10.根据权利要求9所述的装置,其特征在于所述容量分配控制帧发送模块还包括发送预处理模块,与所述容量分配控制帧参数计算模块连接,用于接收容量分配控制帧参数计算模块处理完毕的容量分配控制帧,并在该容量分配控制帧的参数与上次发送的容量分配控制帧的参数相同时将该容量分配控制帧发送给无线网络控制器。
11.根据权利要求8所述的装置,其特征在于,还包括排序模块,与所述队列带宽预分配模块连接,用于对参与流量控制的用户队列进行排序,将配置有保证比特速率的用户队列排在前面,将未配置GBR的用户队列排在后面,将排序后的队列交由所述队列带宽预分配模块依次处理。
12.根据权利要求8所述的装置,其特征在于,还包括局部变量保存模块,用于保存每个用户队列对应的指示带宽分配偏差的局部变量;初始化模块,与所述容量分配控制帧参数计算模块、全局变量保存模块、局部变量保存模块、以及容量分配控制帧发送模块连接,用于在第一个流量控制周期,对第一个用户队列,在接收到容量分配控制帧参数计算模块发送的该队列对应的容量分配控制帧的参数后,当计算出的Credits参数不是整数且该用户队列对应的业务类型要求配置保证比特速率,则将Credits参数向上取整量化,然后计算本次带宽分配偏差并作为该用户队列对应的局部变量的值保存到局部变量保存模块中,以及将本次带宽分配偏差的值作为所述全局变量的值保存到全局变量保存模块中。
13.根据权利要求12所述的装置,其特征在于所述参数调整模块还与所述局部变量保存模块连接,用于在计算本次带宽分配偏差并作为该用户队列对应的所述局部变量的值后保存到局部变量保存模块中,以及所述参数调整模块对每个流量控制周期的第一个用户队列根据该局部变量的值对所计算的Credits参数进行调整。
14.根据权利要求12所述的装置,其特征在于所述局部变量保存模块为将所述局部变量保存在帧协议属性表中的局部变量保存模块。
全文摘要
本发明公开了一种高速下行分组数据的流量控制方法,包括在每个流量控制周期对每个用户队列进行队列带宽预分配及Iub流量成形后,计算容量分配控制帧参数;预先将先前的总的带宽分配偏差的值保存在一全局变量中,如果全局变量的值小于零则将Credits参数的计算结果进行向上取整后作为Credits的值,如果大于零则进行向下取整后作为Credits的值,如果等于零则进行向上或向下取整后作为Credits的值;计算本次带宽分配偏差作为对应的局部变量的值与全局变量的值累加后,作为全局变量的值保存。本发明还公开了一种高速下行分组数据的流量控制装置。本发明能够增强Iub口带宽的可控性,减少无效容量分配控制帧的上报。
文档编号H04L29/02GK1972171SQ20061014420
公开日2007年5月30日 申请日期2006年11月29日 优先权日2006年11月29日
发明者汤志平, 刘威 申请人:上海华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1