[发明专利]一种粗粒度动态带宽分配方法有效
| 申请号: | 201210596494.5 | 申请日: | 2012-12-14 |
| 公开(公告)号: | CN103023819A | 公开(公告)日: | 2013-04-03 |
| 发明(设计)人: | 邱智亮;张冰;赵哲;张奭;潘伟涛;孙汉汶;贺亮;姚明旿;鲍民权;刘焕峰 | 申请(专利权)人: | 西安电子科技大学 |
| 主分类号: | H04L12/911 | 分类号: | H04L12/911 |
| 代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 张问芬;王品华 |
| 地址: | 710071*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开了一种粗粒度动态带宽分配方法,用于解决共享信道中多个用户之间快速、有效分配带宽的问题。该方法首先对用户的协议带宽、初始带宽、最高带宽、队列门限带宽分配参数进行配置。然后等待用户举手,为其分配协议带宽并统计用户的加权平均带宽。待加权平均带宽趋于稳定,根据用户的加权平均带宽、当前缓存队列与等效带宽、队列门限的大小关系进行带宽分配。协议带宽以下采用快增慢减策略分配带宽,以上采用慢增快减策略分配带宽。本发明具有系统资源占用率小的优点,可用于需要对系统带宽进行快速、有效的分配,而又不希望引入过多的带宽计算开销的通信系统中。 | ||
| 搜索关键词: | 一种 粒度 动态 带宽 分配 方法 | ||
【主权项】:
一种粗粒度动态带宽分配方法,其特征包括如下步骤:(1)根据用户的需求和网络环境,配置系统带宽分配周期t、用户的带宽参数、缓存队列门限、加权系数β以及阻尼系数p,m,n的值,将用户的带宽分配标志F初始化为0;(2)判断是否有用户举手,即举手用户为第一次有数据需要传输,如果没有,转到步骤(3),如果有,为举手用户分配协议带宽Bc,并开始统计该用户的加权平均带宽Ba,在第一个统计周期t内不做加权处理,经过M个带宽分配周期t,获得稳定的加权平均带宽Ba,举手用户不执行以下的带宽分配算法;(3)对没有举手但满足统计M个带宽分配周期t以及上一周期分配带宽值Bn‑1大于初始带宽Bmin条件的用户,根据统计的加权平均带宽和当前队列状态执行以下的带宽分配操作,对没有举手不满足上述条件的用户,不执行以下的带宽分配算法;(3.1)按照当前缓存队列长度Gn将用户分为两组,Gn小于等于保证门限Go的分为A组,Gn大于Go的分为B组;(3.2)对A组中的用户进行带宽分配,按照用户的带宽分配标志F将用户分为两组,将F为0的用户分为A0组,将F为1的用户分为A1组;3.2.1)对A0组中的用户进行带宽分配;3.2.1.a)为该用户的带宽判决门限上限G(n‑1)u赋值保证门限Go,带宽判决门限下限G(n‑1)d赋值Gd1,分配带宽为协议带宽Bc,并置带宽分配标志F为1,转到步骤3.2.1.b);3.2.1.b)判断是否在此次带宽分配周期内对所有的A0组用户完成了带宽分配,如果是,完成对A0组用户的带宽分配,如果不是,为下一个A0组内的用户循环执行3.2.1.a);3.2.2)采取快增慢减策略对A1组中的用户进行带宽分配;3.2.2.a)判断该用户的带宽判决门限下限G(n‑1)d是否小于或等于Gd1,如果是,转到步骤3.2.2.b),如果不是,将该用户移动到B1组,转到步骤3.2.2.e);3.2.2.b)判断该用户的当前缓存队列长度Gn是否大于或等于带宽判决门限上限G(n‑1)u,如果是,为该用户G(n‑1)u赋值,保证门限Go,带宽判决门限下限G(n‑1)d赋值 Gd1,分配带宽增加为协议带宽Bc,转到步骤3.2.2.e),如果不是,判断该用户的加权平均带宽Ba是否大于或等于G(n‑1)u对应的Be,如果是,为该用户G(n‑1)u赋值Go,G(n‑1)d赋值Gd1,分配带宽为Bc,转到步骤3.2.2.e),如果不是转到步骤3.2.2.c);3.2.2.c)判断该用户的Gn是否连续p次小于带宽判决门限下限G(n‑1)d,如果不是,为该用户分配带宽为上周期分配带宽Bn‑1,转到步骤3.2.2.e),如果是,判断该用户的Ba是否小于带宽判决门限上限G(n‑1)d对应的等效带宽Be,如果不小于,为该用户分配带宽为上周期分配带宽Bn‑1,转到步骤3.2.2.e),如果小于,为该用户带宽判决门限上限G(n‑1)u赋值带宽判决门限下限G(n‑1)d,将G(n‑1)d对应的Gdj的下一个门限Gd(j+1)赋给G(n‑1)d,如果G(n‑1)d为Gmin则不改变G(n‑1)d的值,为该用户分配带宽为Bn‑1减ΔBd,转到步骤3.2.2.d);3.2.2.d)判断该用户的带宽是否是初始带宽Bmin,如果是,将该用户的F置为0,转到步骤3.2.2.e),如果不是则直接转到步骤3.2.2.e);3.2.2.e)判断是否在此次带宽分配周期内对所有的A1组用户完成了带宽分配,如果是,完成对A1组用户的带宽分配,如果不是,为下一个A1组内的用户循环执行3.2.2.a);(3.3)对B组中的所有用户预分配协议带宽Bc,预分配的带宽不计入剩余带宽Bs,按照用户的带宽分配标志F将用户分为两组,将F为0的用户分为B0组,将F为1的用户分为B1组;3.3.1)对B0组中的用户进行带宽分配;3.3.1.a)对该用户带宽判决门限上限G(n‑1)u赋值Gu1,带宽判决门限下限G(n‑1)d赋值保证门限Go,为该用户分配带宽Bc,并置F为1,转到步骤3.3.1.b);3.3.1.b)判断是否在此次带宽分配周期内对所有的B0组用户完成了带宽分配,如果是,完成对B0组用户的带宽分配,如果不是,为下一个B0组内的用户循环执行3.3.1.a);3.3.2)采取慢增快减策略对B1组中的用户进行带宽分配;3.3.2.a)判断当前网络中是否有未分配的带宽,如果没有,转到步骤3.4),如果有未分配的带宽,转到步骤3.3.2.b);3.3.2.b)判断该用户带宽判决门限上限G(n‑1)u是否大于或等于Gu1,如果不是,为该用户G(n‑1)u赋值Gu1,带宽判决门限下限G(n‑1)d赋值保证门限Go并分配协议带宽Bc, 转到步骤3.3.2.h),如果是,转到步骤3.3.2.c);3.3.2.c)判断该用户当前缓存队列长度Gn是否连续m次大于或等于G(n‑1)u,如果不是,转到步骤3.3.2.e),如果是,判断该用户的上周期分配带宽Bn‑1是否小于该用户的最高带宽Bmax,如果是,转到步骤3.3.2.d),如果不是,判断剩余带宽Bs是否大于或等于Bmax减协议带宽Bc,如果是,为该用户分配带宽为Bmax,转到步骤3.3.2.f),如果不是,为该用户分配带宽为Bc加Bs,转到步骤(3.4);3.3.2.d)判断剩余带宽Bs是否大于或等于该用户的上周期分配带宽Bn‑1减Bc加ΔBu,如果是,对该用户G(n‑1)d赋值G(n‑1)u,G(n‑1)u对应的Gui的下一个门限Gu(i+1)赋给G(n‑1)u,如果G(n‑1)u为Gmax则不改变G(n‑1)u的值,为该用户分配带宽为Bn‑1加ΔBu,且分配带宽不超过Bmax,转到步骤3.3.2.h),如果不是,为该用户分配带宽为Bn‑1加剩余带宽Bs,转到步骤(3.4);3.3.2.e)判断该用户当前缓存队列长度Gn是否连续n次小于G(n‑1)d,如果是,用y表示Gn连续n次小于G(n‑1)d的次数,转到步骤3.3.2.f),如果不是,判断网络剩余带宽Bs是否大于或等于该用户的Bn‑1减Bc,如果是,为该用户分配带宽为上周期分配带宽Bn‑1,转到步骤3.3.2.h),如果不是,为该用户分配带宽为协议带宽Bc加剩余带宽Bs,转到步骤(3.4);3.3.2.f)判断(Bn‑1‑y*ΔBu)是否小于Bc,如果是,转到步骤3.3.2.g),如果不是,对该用户G(n‑1)d赋值为G(n‑1)d对应的Gui的下n个门限值Gu(1‑n),G(n‑1)u赋值为Gu(i‑n+1),为该用户分配带宽为(Bn‑1‑y*ΔBu),转到步骤3.3.2.h);3.3.2.g)对G(n‑1)u赋值Gu1,G(n‑1)d赋值Go并分配协议带宽Bc,转到步骤3.3.2.h);3.3.2.h)判断是否在此次带宽分配周期内对所有的B1组用户完成了带宽分配,如果是,完成对B1组用户的带宽分配,转到步骤(4),如果不是,为下一个B1组内的用户循环执行3.3.2.a);(3.4)为B1组未分配带宽的用户分配协议带宽Bc;(4)完成此次带宽分配,转到步骤(2)进入下次带宽分配周期。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210596494.5/,转载请声明来源钻瓜专利网。





