主权项 |
一种流媒体应用快速缓冲的带宽分配方法,其特征在于,在蜂窝网的基站和核心网之间需要部署带宽分配代理,当网络中移动用户请求流媒体数据时,带宽分配代理按照如下方法为各个用户分配带宽: 步骤一,在时隙t时,用户i向带宽分配代理请求流媒体数据,大小为M<sub>i</sub>,带宽分配代理记录用户;若时隙t有用户离开或者用户的数据已经传输完毕,带宽分配代理释放该用户的请求,不再为其分配宽带宽资源; 步骤二,带宽分配代理收集用户i的信号强度s<sub>i</sub>(t),用户视频播放的平均速率p<sub>i</sub>,基站在本时隙可提供的流媒体服务带宽B(t),用参数S来记录此时隙分配剩余的带宽量,时隙开始时,令S=B(t); 步骤三,带宽分配代理根据收集的数据,对此时的用户需求带宽进行分配:初始化,d<sub>i</sub>(t)记录带宽分配代理在时隙t给用户i分配的带宽,在时隙开始时,赋初值0,d<sub>i</sub>(t)←0,i=1,2,…,N;d<sub>sup</sub>(i)记录带宽分配代理在本时隙能够给用户i分配的最大带宽,在时隙开始时,赋初值1,d<sub>sup</sub>(i)←1,i=1,2,…,N,其中N为用户个数;记带宽分配中间参数记为d′<sub>i</sub>(t),在时隙开始时,令d′<sub>i</sub>(t)=d<sub>i</sub>(t);记带宽剩余量中间参数记为S′,在时隙开始时,令S′=S; 步骤四,将N个用户的播放速率p<sub>i</sub>从小到大进行排序,并重新编号,计算每个用户维持流畅播放到下一时隙需要的数据量d<sub>need</sub>(i); 步骤五,从第1个用户到第N个用户,当基站在本时隙剩余的带宽S>0时,进行第一次带宽分配: (a)计算此时本基站可以给用户i传输的数据量d<sub>sup</sub>(i); (b)如果d<sub>sup</sub>(i)≥d<sub>need</sub>(i),则令d<sub>i</sub>(t)=d′<sub>i</sub>(t)+d<sub>need</sub>(i),S=S′‑d<sub>need</sub>(i),d<sub>sum</sub>=B(t)‑S,此时更新带宽分配中间参数d′<sub>i</sub>(t)和剩余带宽中间参数S′,令d′<sub>i</sub>(t)=d<sub>i</sub>(t),S′=S; (c)如果d<sub>sup</sub>(i)<d<sub>need</sub>(i),则d<sub>i</sub>(t)=d′<sub>i</sub>(t)+d<sub>sup</sub>(i),S=S′‑d<sub>sup</sub>(i),d<sub>sum</sub>=B(t)‑S, 并更新带宽分配中间参数d′<sub>i</sub>(t)和剩余带宽中间参数S′,令d′<sub>i</sub>(t)=d<sub>i</sub>(t),S′=S; 其中d<sub>sum</sub>表示已分配数据量,为记录参数; 步骤六,计算此时系统可以给用户i传输的数据量d<sub>sup</sub>(i); 步骤七,若此时剩余的带宽S>0时且存在d<sub>sup</sub>(i)≠0,则将剩余的带宽分配给用户,从第1个用户到第N个用户,每次给一个用户分配一个时隙的数据即p<sub>i</sub>,保证用户的公平性: (a)如果d<sub>sup</sub>(i)≥p<sub>i</sub>,则d<sub>i</sub>(t)=d′<sub>i</sub>(t)+p<sub>i</sub>,S=S′‑p<sub>i</sub>,d<sub>sum</sub>=B(t)‑S,并更新带宽分配中间参数d′<sub>i</sub>(t)和剩余带宽中间参数S′,令d′<sub>i</sub>(t)=d<sub>i</sub>(t),S′=S; (b)如果d<sub>sup</sub>(i)<p<sub>i</sub>,则d<sub>i</sub>(t)=d′<sub>i</sub>(t)+d<sub>sup</sub>(i),S=S′‑d<sub>sup</sub>(i),d<sub>sum</sub>=B(t)‑S,并更新带宽分配中间参数d′<sub>i</sub>(t)和剩余带宽中间参数S′,令d′<sub>i</sub>(t)=d<sub>i</sub>(t),S′=S; 步骤八,重新计算此时系统可以给用户i传输的数据量d<sub>sup</sub>(i),如果剩余的带宽S>0时且存在d<sub>sup</sub>(i)≠0,重复运行步骤七; 步骤九,根据分配的d<sub>i</sub>(t)对基站中存在的用户进行带宽分配; 步骤十,调度进入下一时隙,感知用户的进入和用户的离开,服务带宽的变化等,进行新一轮调度决策。 |