适用于无线高速自适应信道的网络分组调度方法

文档序号:7953701阅读:187来源:国知局
专利名称:适用于无线高速自适应信道的网络分组调度方法
技术领域
本发明涉及一种网络技术领域的方法,更具体的,涉及一种适用于无线高速自适应信道的网络分组调度方法。
背景技术
无线网络分组调度是由有线网络的分组调度衍生而来,目前有线网络的分组调度方法主要有两种类型基于GPS(通用处理机共享)和RR(基于轮询)调度方法。无线网络的分组调度也相应以以上两种调度方法为基础结合无线网络物理层的特点发展而来。典型的基于GPS的方法,包括S.Lu等在《IEEE/ACMTransactions on Networking》(IEEE/ACM网络会刊)(1999年第7卷第4期473-489页)上发表的Fair Scheduling in Wireless Packet Networks(无线分组网络的公平调度)中提出的IWFQ;T.S.E.Ng等在《INFOCOM′98,Proceedings.IEEE》(IEEE INFOCOM′98会议论文集)(1998年3月第3卷1103-1111页)上发表的Packet fair queuing algorithms for wireless networks withlocation-dependent errors(基于位置错误的无线网络分组公平排队算法)中提出的CIF-Q;S.Lu等在《Wireless Networks》(无线网络)(2000年第6卷第4期323-343页)上发表的Design and Analysis of an Algorithm for Fair Service inError-prone Wireless Channels(一种无线差错信道下的公平服务算法的设计与分析)中提到的WFS。为了逼近GPS调度的特性,以上方法的无差错模型都采用了虚拟时间的方法,这种方法的缺点是时间和空间复杂度过高,不适用于高速网络的环境。
经对现有技术文献的检索发现,基于RR的网络分组调度方法包括WRR(加权轮询)(Weighted Round Robin,);M.Shreedhar等在《IEEE/ACMTransactions on Networking》(IEEE/ACM网络会刊)(1996年第4卷第3期375-385页)上发表的Efficient Fair Queuing Using Deficit Round-Robin(使用差额轮询的高效公平排队),该文中提出的DRR方法。WRR和DRR方法是基于有线网络的分组调度方法,无法直接应用于高速无线自适应信道。其特点是复杂度低,但是提供的QoS保证相对于基于GPS的方法要差一些。由于高速网络要求调度器在处理分组时要使用尽量少的时间,所以基于轮询的方法在高速网络中得到了很好的应用。
自适应调制技术使链路速率动态可变从而使得链路速率不再是常数,而是一个随着信道质量随机变化的随机变量。它使得无线信道成为速率自适应信道。目前(包括上述的)的无线网络分组调度方法的信道模型主要是基于两状态马尔可夫链的GE(Gillbert Elliott)模型,该模型把信道分为两个状态信道好(G)和信道坏(B),但自适应信道的信道状态为多状态,在信道最优和最差之间还存在中间状态,所以GE模型已经不能适用于当前的无线信道特性。

发明内容
针对现有技术的不足和自适应信道的特性,本发明提出了一种适用于无线高速自适应信道的网络分组调度方法。使其摈弃了不符合当前自适应信道特性的GE模型,采用了新的具有更多实际意义的多状态无线网络信道模型,每个状态代表一个信道速率,并基于多状态模型提出了可以适用于不定分组长度、复杂度低、并能保证长期和短期公平性、具有良好降级性能、良好的隔离性能、可为不同移动站点提供区分服务的基于轮询的无线网络分组调度方法。
本发明是通过以下技术方案实现的,包括以下步骤(1)初始化,完成对所有变量的初始化赋值。
(2)从轮询链表的头取一个队列的索引,确定当前要服务的队列。
(3)根据当前队列所对应的信道状态和本队列的超前/滞后状况为队列分配本轮的发送额度,超前队列补偿滞后或同步队列,并调整相应队列的超前/滞后量。
(4)调整差额计数器DCi的值。把本轮新分配的发送额度累加到差额计数器上去,差额计数器保存队列在本轮的发送额度。
(5)取队列的头(HOL,Head of Line)分组,并计算此分组的长度。
(6)判断分组长度和差额计数器值的大小,如果分组的长度小于等于差额计数器的值则转步骤(7),否则转步骤(10)。
(7)调度器发送该分组。
(8)判断当前队列是否为空,如果空则转步骤(9),如果非空则转步骤(5)。
(9)把当前队列的索引从轮询链表中删除,令差额计数器值为零,并调整各队列超前/滞后量的值,然后转步骤(2)。
(10)把队列的索引添加到轮询链表的尾部,转步骤(2)。一直重复以上步骤直到系统中轮询链表空为止。
在以上步骤中,步骤(3)是本发明的重点,对队列发送额度的分配和惩罚补偿量的多少都由该步骤决定,下面详细介绍步骤(3)。
在步骤(3)中队列的超前/滞后是根据变量lagi来确定的。(lagi的值为队列i应该得到的服务量减去实际得到的服务量)。在本发明中超前队列定义为在某时刻当某个队列i得到了多于其最优信道状态下预约额度的服务,此时lagi<0。同步队列定义为在某时刻当队列i得到的服务等于其最优信道状态下预约额度的服务,此时lagi=0。滞后队列定义为在某时刻当队列i得到的服务少于其最优信道状态下预约额度的服务,此时lagi>0。
在步骤(3)中,对队列发送额度的分配是动态进行的。根据当前队列所处的信道状态和队列的超前/滞后状态对队列的发送额度进行惩罚或补偿,惩罚或补偿的原则如下①惩罚处于非最优信道的队列,使得其在一轮服务中发送的数据量减少,从而减少其占用信道的时间,把额度让给具有最优信道的流传输,使得系统吞吐量最大化。
②按照队列所处的信道状态确定惩罚量的大小,即信道状态越差惩罚量越多。
③为了提高系统的吞吐量只对处于最优信道的队列进行补偿,因为只有当信道处于最优时系统的吞吐量最大、信道速率最快,才能使补偿在最短的时间内完成。当系统中没有队列处于最优信道时,放弃补偿。
④补偿时按照优先补偿滞后队列、同步队列、超前队列的顺序进行。
⑤在补偿滞后队列或超前队列时按照队列的lagi降序加权方式进行,即优先补偿具有最大滞后量的队列,以使得其尽快赶上;假如系统中没有滞后队列存在则补偿同步队列;假如以上两种队列都不存在则优先补偿具有最小超前量的队列。
⑥为了使超前队列具有良好的降级性能,本发明定义补偿系数μ,μ∈(0,1),使超前队列在补偿滞后队列时不全部放弃其在本轮的发送额度而只是部分释放,从而使得队列可以在领先情况下得到μQi的服务量。在补偿时为了不使得超前队列释放过多超前量而变成滞后队列,规定其释放的超前量最多为min[(1-μ)Qi,|lagi|]。
在步骤(9)中,为了保证系统的公平性,整个系统保证Σi=1Nlagi=0.]]>为了保证系统的长期公平性,还需要考虑以下两种情况①假如i队列在本轮得到部分服务后而变为空队列,但是其依然属于滞后(lagi>0)的状况下,其滞后量要按照权重按比例分配到其他滞后积压队列中去,lagj=lagj+lagiQjΣi∈BQi,]]>B为系统中所有滞后积压队列的集合。
②如果队列i在得到部分服务后变为空,但是此时仍为领先(lagi<0),则要把超前量分配到其他超前队列中去,lagj=lagj+lagiQjΣi∈CQi]]>C为系统中所有超前积压队列的集合。
本发明提出的适用于无线自适应信道网络分组调度方法以轮询为基础,克服了以GPS为基础的方法的时间复杂度和空间复杂度过高的缺点,具有复杂度低、容易实现的优点。本发明最大的创新之处在于以无线自适应多速率信道为基础,更符合当前无线信道物理层的特点。本调度方法由于采用了惩罚/补偿机制,对处于非最优信道的站点进行处罚,减少其数据发送量,把带宽让给具有最优信道的站点,从而大幅度的提高了系统的吞吐量。由于补偿机制的采用可以满足系统的长期公平性和短期公平性。在补偿时采用部分补偿机制,保证了超前队列具有良好的降级性能。站点接入系统时可以按照自身对服务质量的要求确定预约发送额度,从而使本发明可以保证对不同站点提供区分服务,满足了当前多业务环境下对带宽的不同要求。


图1为本发明可应用于无线通信系统下行链路分组数据调度的结构示意图。
图2为本发明实施时的流程图。
图3为本发明实施时为队列分配发送额度的流程图。
具体实施例方式
本发明提出的分组调度方法适用的网络模型为假设有N个移动终端通过AP或基站接入系统,本发明提出的调度方法运行于AP(接入点)或基站之中,为每个移动终端创建一个队列(共N个队列),所有发向特定终端的数据全部按照FIFO(先入先出)的方式放入相应的队列。无线信道至少有两个信道状态,每个信道状态对应不同的信道速率,信道状态是时变的随机变量。本发明按照轮询的方式服务每个积压(即队列中有等待传输的分组)队列,在开始服务前,调度器可以通过信道状态检测器/预估器准确预估当前积压队列所对应的信道状态并以当前信道状态对应的速率服务队列,在本次服务中服务速率不变。
为了更具体说明本发明的内容,文中所用到的符号如表1所示。

表1本发明所采用的信道模型为多状态的自适应信道,自适应信道的速率是时变的随机变量。本发明所适用的信道状态变迁如下调度器在服务队列期间该队列所对应的信道状态不发生变化(即保持某个信道速率不变),以保证调度器在服务该队列期间服务速率不变,信道状态的变迁只发生在其他时刻。信道状态共有M(1~M)个,所对应的信道传输速率从大到小为(V1,V2…Vm-1,Vm)其中(V1>V2>V3…Vm-2>Vm-1>Vm)。V1对应于最优信道,这时信道的传输速率最快,系统以这个速率传输是最优情况,可以获得最大的吞吐量。Vm对应于最差信道状态,这时信道为“最坏”信道(Vm=0),系统不能传输数据。(V2…Vm-1)表示中间信道状态的信道速率。
下面将参考附图详细说明本发明的实施例。
图1表示了本发明提出的分组调度方法所能应用的无线通信系统的一个具体实施例。它用简化框图的形式示出了本发明和无线通信系统各部分之间的关系。
如图1所示,本发明所示的调度方法位于无线通信系统的接入点(AP)或基站当中,用来调度由AP或基站传向移动终端的分组,以满足站点的公平性、时延等QoS指标。假设由N个移动站点接入系统,在调度器内为N个站点维持相应的N个队列。传向终端的数据源首先通过分类器,分类器的作用是把传向不同移动站点的数据进行分类,然后数据分别以FIFO的方式放入相应的队列。轮询调度器以轮询的方式逐个服务非空的积压队列。信道状态检测器/预估器利用无线发送器发送数据的当前和历史情况来判断当前信道所处的状态,信道状态信息反馈到轮询调度器为调度器提供必要的信道信息。调度器服务队列时,首先利用信道状态检测器/预估器提供的当前队列所处信道的信息决定当前队列数据发送额度的大小,然后从队列的头取出分组,如果该分组满足调度条件则分组被发送到无线发送器上完成分组的传输。调度器完成一个队列的服务后,转向服务下一个队列。
图2表示了本发明提出的分组调度方法具体实施时的流程图。通过流程图可以看出本发明可以通过10个步骤完成分组的调度工作。
步骤1如图2所示,在步骤1完成系统的初始化。为接入系统的每个移动站点分配相对应的队列;根据各站点的QoS要求确定每个队列对应的变量,具体为分配发送额度Qi、Qik、令DCi=0,lagi=0;根据系统环境确定补偿系数μ、信道状态函数f(k)(这里确定函数f(k)=VkV1,]]>k=1,2,…,M,注意这只是本实施例中定义的函数,在不同的系统环境下函数f(k)的定义可以有多种形式);把所有处于积压状态的队列的索引放入轮询链表A。
步骤2在步骤2调度器开始工作,从轮询链表A的头中取出某个队列i的索引,用以确定当前所要服务的队列。
步骤3在步骤3中为由步骤2确定的队列分配发送额度并调整相应队列的超前/滞后量。额度的分配是本发明中相对比较复杂的部分,为了更清楚的对本步骤的实施进行说明,额度分配的流程图表示在图3中,上接图2步骤2。在图3中用3个方框表示了当队列i分别处于3种不同信道状态下的额度分配情况,即处于最优信道(具有最高的信道速率,步骤301至305)、最差信道状态(信道坏无法发送数据,步骤306至311)和中间信道状态(信道速率位于最大和最小之间,步骤312至318)。
步骤301判断当前队列i对应的信道状态是否为最优,如果是则转步骤302,否则转步骤306。
步骤302判断当前队列是否处于滞后或同步状态,即根据lagi的值来确定队列状态,如果lagi>0则表示队列滞后,如果lagi=0则表示队列同步。如果i滞后或同步则转步骤304,否则转步骤303。
步骤303判断当前积压队列中是否存在处于最优信道且滞后的队列j,如果存在则转步骤305,否则转步骤304。进入本步骤表明队列i处于超前状态,如果在系统中存在处于最优信道的滞后的流要对其进行补偿,队列i要释放部分超前量补偿滞后的队列。
步骤304为当前队列i分配发送额度Qi,然后转图2步骤4。
步骤305由于队列i处于超前状态且系统中存在处于最优信道的滞后队列j,队列i释放min[(1-μ)Qi,|lagi|]的超前量,lagi和lagx的值按公式1调整,队列i得到μQi的发送额度,保证了i的良好的降级性能,然后转图2步骤4。
lagi=lagi+min[(1-μ)Qi,|lagi|]lagj=lagj-min[(1-μ)Qi,|lagi|]]]>公式1步骤306判断当前队列i所处的信道是否为最差信道,如果是则转307,否则转312。当处于最差信道时本队列内的数据不能得到服务,只能将额度分配给其他队列。补偿按照滞后、同步、超前的优先顺序进行。
步骤307
判断系统中是否存在处于最优信道且滞后的队列j,如果存在则转310,否则转308。如果存在多个滞后队列则按照超前/滞后量lagj的大小优先选择滞后量大的队列j。
步骤308判断系统中是否存在处于最优信道且同步的队列j,如果存在则转310,否则转309。
步骤309判断系统中是否存在处于最优信道且超前的队列j,如果存在则转310,否则转311。如果存在多个超前队列则按照超前/滞后量lagj的大小优先选择超前量小的队列j(注意当队列超前时,lagj<0)。
步骤310由于队列i处于最差信道在本轮不能传输数据,所以把本轮的发送额度分配给队列j,并按照公式2调整变量,然后转图2步骤4。
lagi=lagi+Qilagj=lagj-Qi]]>公式2步骤311进入本步骤表明系统中不存在处于最优信道的队列,所以发送额度被浪费,没有任何队列得到发送额度,然后转图2步骤4。
步骤312判断i的队列状态是否为滞后或同步,如果是转步骤314,否则转313。进入本步骤表明队列i处于中间信道状态,信道速率没有达到最大值,要对该队列进行惩罚。
步骤313进入本步骤表明队列i为超前队列,要释放部分超前量。判断系统中是否存在处于最优信道的滞后队列j,如果存在转305,否则转步骤315。
步骤314
为队列i分配额度Qik,其中Qik=Qi·f(k),]]>f(k)=VkV1.]]>然后转步骤316。
步骤315判断系统中是否存在处于最优信道的同步或超前的队列j,如果存在则转步骤317,否则转311。当存在处于最优信道的队列时,补偿的优先顺序为先同步后超前。
步骤316判断系统中是否存在处于最优信道的的滞后、同步、超前流,如果存在转步骤318,否则转311。在本步骤中,队列j的选择顺序是,优先选择滞后量大的队列,然后是同步的队列,其次才是具有最小超前量的队列。
步骤317为队列i分配额度Qik,其中Qik=Qi·f(k),]]>f(k)=VkV1.]]>然后转步骤318。
步骤318进入本步骤表明系统中有队列i释放了部分发送额度且有队列j可以得到补偿。为队列j分配(Qi-Qik)额度,并按照公式3调整超前/滞后量。然后转图2步骤4。
lagi=lagi+(Qi-Qik)lagj=lagj-(Qi-Qik)]]>公式3步骤4本步骤完成差额计数器的调整工作,在对队列i的一次服务中所能发送数据的多少取决于差额计数器DCi的值。这里不只完成队列i对应的差额计数器的调整,还包括由图3中确定的补偿队列j的差额计数器的调整。调整原则是把为队列分配的发送额度累加到差额计数器上去,即DCi=DCi+Qi′,DCj=DCj+Qj′。这里Qi′和Qj′有三个来源,具体可参照图3。这三个来源为(1)为队列分配的Qi或者Qik;(2)其他队列释放的发送额度(Qi-Qik);(3)由本队列lagi释放的额度(本队列超前,释放μQi)。本步骤完成后转步骤5。
步骤5取队列i的头分组,并计算该分组的长度LiP,然后转步骤6。计算分组的长度是要和本队列的差额计数器进行比较以确定是否发送该分组。
步骤6比较LiP和差额计数器DCi的大小,如果LiP≤DCi]]>则转步骤7,否则转10。
步骤7发送分组。这里指调度器服务该分组,把分组交给无线发送器发送到信道上。
步骤8判断当前队列是否空,如果空则转步骤9,否则转步骤5,表示调度器可以尝试服务本队列的下一个分组。
步骤9进入本步骤表明当前队列i在得到服务后变成空队列,不再积压,下一轮不用在轮询该队列了,所以把队列i对应的索引从轮询链表A中删除。当队列i的lagi≠0时,为了保证系统中Σi=1Nlagi=0,]]>要调整整个系统的超前/滞后量值。假如lagi>0,则按下式调整,lagj=lagj+lagiQjΣi∈BQi,]]>B为系统中所以积压滞后队列的集合;如果lagi<0,则按下式调整,lagj=lagj+lagiQjΣi∈CQi,]]>C为系统中所以积压超前队列的集合,然后转步骤2。
步骤10把队列i对应的索引添加到轮询链表的尾部。进入本步骤表明队列i用尽其本轮发送额度后仍然积压,需要在下一轮继续轮询。
本发明的实施例按图2的流程图所示步骤重复工作,直到轮询链表空为止,即系统中没有数据要发送。
权利要求
1.一种适用于无线高速自适应信道的网络分组调度方法,其特征在于,包括以下步骤(1)初始化,完成对所有变量的初始化赋值;(2)从轮询链表的头取一个队列的索引,确定当前要服务的队列;(3)根据当前队列所对应的信道状态和本队列的超前/滞后状况为队列分配本轮的发送额度,超前队列补偿滞后或同步队列,并调整相应队列的超前/滞后量;(4)调整差额计数器的值,把本轮新分配的发送额度累加到差额计数器上去,差额计数器保存队列在本轮的发送额度;(5)取队列的头分组,并计算此分组的长度;(6)判断分组长度和差额计数器值的大小,如果分组的长度小于等于差额计数器的值则转步骤(7),否则转步骤(10);(7)调度器发送该分组;(8)判断当前队列是否为空,如果空则转步骤(9),如果非空则转步骤(5);(9)把当前队列的索引从轮询链表中删除,令差额计数器值为零,并调整各队列超前/滞后量的值,然后转步骤(2);(10)把队列的索引添加到轮询链表的尾部,转步骤(2),一直重复以上步骤直到系统中轮询链表空为止。
2.如权利要求1所述的适用于无线高速自适应信道的网络分组调度方法,其特征是,所述的步骤(3)中,队列超前表示队列得到了超过其预约额度的服务、队列同步表示队列得到了等于其预约额度的服务、队列滞后表示队列得到了少于其预约额度的服务。
3.如权利要求1所述的适用于无线高速自适应信道的网络分组调度方法,其特征是,所述的步骤(3)中,根据队列所处信道状态分配发送额度的,原则是信道速率越快额度越大,但是最大额度必须小于等于其预约额度,本队列所剩余的发送额度分配给另外的处于最优信道状态的队列,如果没有队列处于最优状态则额度被浪费。
4.如权利要求1或者3所述的适用于无线高速自适应信道的网络分组调度方法,其特征是,所述的步骤(3)中,根据系统环境通过定义一个以信道状态为变量的函数来确定额度的具体大小,函数值在0和1之间。
5.如权利要求1或者3所述的适用于无线高速自适应信道的网络分组调度方法,其特征是,所述的步骤(3)中,优先分配或补偿给具有最大滞后量的队列;如没有滞后队列再分配或补偿给同步队列;如以上两种队列都不存在则分配或补偿给具有最小超前量的队列。
6.如权利要求1或者3所述的适用于无线高速自适应信道的网络分组调度方法,其特征是,所述的步骤(3)中,当超前队列补偿滞后或同步队列时,为了保证良好的降级性能,超前队列释放额度时只释放部分超前量,保证超前队列得到部分服务;超前队列不能释放超过其超前量的额度,以免成为滞后队列。
7.如权利要求1所述的适用于无线高速自适应信道的网络分组调度方法,其特征是,所述步骤(3)和步骤(9)中,为了保证整个系统的公平性,在调整队列的超前/滞后量时,令系统中所有队列的超前/滞后量的总和为零。
全文摘要
一种适用于无线高速自适应信道的网络分组调度方法,属于网络技术领域。步骤为(1)初始化;(2)确定当前要服务的队列;(3)为队列分配本轮的发送额度,超前队列补偿滞后或同步队列,并调整相应队列的超前/滞后量;(4)调整差额计数器的值;(5)取队列的头分组,并计算此分组的长度;(6)判断分组长度和差额计数器值的大小;(7)调度器发送该分组;(8)判断当前队列是否为空;(9)把当前队列的索引从轮询链表中删除,令差额计数器值为零,并调整各队列超前/滞后量的值,然后转步骤(2);(10)把队列的索引添加到轮询链表的尾部,转步骤(2)。本发明可适用于不定分组长度、复杂度低。
文档编号H04L1/00GK1809034SQ200610024079
公开日2006年7月26日 申请日期2006年2月23日 优先权日2006年2月23日
发明者李锋, 张卫东, 曹春生, 尹汝泼, 柴郁 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1