基于分组大小的卫星网络主动队列管理方法
【专利摘要】本发明公开了一种基于分组大小的卫星网络主动队列管理方法,包括以下步骤:S1:获取刚到达分组数据的分组大小;S2:根据分组大小计算基于分组大小的丢包概率影响因子函数的值;S3:计算适用于卫星网络的PID控制器的丢包概率pz,根据pz和丢包概率影响因子函数的值计算路由器的总丢包概率p,设路由器缓存的大小为qlim,如果q(k)≥qlim,丢弃该分组数据;如果q(k)≤qlim,丢弃该分组数据的概率为p;S4:将未被丢弃的分组进入队列进行排队。本发明根据分组大小的不同计算出路由器的总丢包概率,即达到较大的分组拥有较小的丢包概率,较小的分组拥有较大的丢包概率的目的,以便保护分组较大的数据包。
【专利说明】基于分组大小的卫星网络主动队列管理方法
【技术领域】
[0001]本发明涉及卫星通信【技术领域】,尤其涉及一种基于分组大小的卫星网络主动队列管理方法。
【背景技术】
[0002]随着网络通信的发展,卫星网络作为地面网络的扩展已越来越受到学者们的关注。由于卫星网络具有大时延、高误码率、链路带宽不对称等特点,地面上原有的拥塞控制算法不能适应卫星网络,必须将主动队列管理应用到卫星网络上。目前不少国内外学者提出的主动队列管理方法中涉及到很多算法,其主要思想是提前检测到拥塞的发生,在网络发生拥塞前就开始随机地丢弃分组(或者向源节点发出拥塞消息),以避免拥塞的发生。
[0003]主动队列管理方法中涉及到的方法有:涉及RED算法的主动队列管理方法、涉及BLUE算法的主动队列管理方法、涉及PI算法的主动队列管理方法以及涉及PID算法的主动队列管理方法等。其中,RED算法主要是根据平均队列长度与门限值的关系计算数据包的丢弃概率,在一定程度上缓解了拥塞的发生,但RED算法在稳定性上存在缺陷,并且RED参数的设置难度也非常大。BLUE算法主要是利用数据包的丢失和链路的使用来进行队列的管理,它使用较小的缓冲区来进行拥塞控制,使得其队列长度相对稳定,但其参数设置能否很好地适应网络的变化还有待进一步研究,尤其是卫星网络。PI算法主要是引入PI控制器并将其分组丢弃概率作为瞬时队列长度的线性函数来管理队列长度,它虽然增强了 AQM系统的稳定性,但这种方法过分依赖缓存空间的大小、瞬态性能不理想等;PID算法是为改善PI的缺陷引入微分常数而设计的队列管理方法,大时延网络环境中PID控制器比PI控制器的性能表现的更加优越,所以PID控制器具有设计结构简单、鲁棒性能优越、能够克服大时延、适合用于高速网络等优点,但它对于所有的分组都以一样的丢包概率进行丢弃,存在传输效率上的问题。
【发明内容】
[0004]根据现技术存在的问题,本发明公开了一种基于分组大小的卫星网络主动队列管理方法,包括以下步骤:
[0005]S1:获取刚到达分组数据的分组大小;
[0006]S2:根据分组大小计算基于分组大小的丢包概率影响因子函数的值;
[0007]S3:计算适用于卫星网络的PID控制器的丢包概率Pz,根据Pz和丢包概率影响因子函数的值计算路由器的总丢包概率P,设路由器缓存的大小为qlim,如果q (k) ^ Qliffl,丢弃该分组数据;如果q(k) ( qlim,丢弃该分组数据的概率为P ;
[0008]S4:将未被丢弃的分组进入队列进行排队。
[0009]进一步的,S2中:所述丢包概率影响因子函数为
【权利要求】
1.一种基于分组大小的卫星网络主动队列管理方法,其特征在于包括以下步骤: Si:获取刚到达分组数据的分组大小; S2:根据分组大小计算基于分组大小的丢包概率影响因子函数的值; S3:计算适用于卫星网络的PID控制器的丢包概率pz,根据pz和丢包概率影响因子函数的值计算路由器的总丢包概率P,设路由器缓存的大小为qlim,如果q (k) ^ Qliffl,丢弃该分组数据;如果q(k) ( qlim,丢弃该分组数据的概率为P ; S4:将未被丢弃的分组进入队列进行排队。
2.根据权利要求1所述的基于分组大小的卫星网络主动队列管理方法,其特征还在于:S2中:所述丢包概率影响因子函数为
其中B为分组大
小,MSS为最大分组长度,所述丢包概率影响因子函数为
釆用吞吐量公式
推导得出,其中a e (1,8/3)为常量因子,RTT为回 路的响应时间,根据(I)式
即分组大小的平方是影响丢包概率P 的因素,将分组大小的平方做归一化处理得到
3.根据权利要求1所述的基于分组大小的卫星网络主动队列管理方法,其特征还在于:S3中适用于卫星网络的PID控制模型中的PID控制器采用如下方式计算PID控制器的丢包概率Pz: 首先建立适用于卫星网络的PID控制模型
其中:ΚΡ表示PID控制模型中PID控制器的比例放大系数,Ki表示PID控制器的积分常数,Kd表示PID控制器的微分常数,Kp、Ki和Kd为PID控制模型中的控制参数; 对(I)式进行离散化处理再进行增量处理得出:
Pz (k) = P (k-1) +a (q (k) -q0) _b (q (k_l) -q0) +c (q (k_2) -q0)
由于 Pz(k) e [0,I],所以,当 pz (k) <0 时,贝丨J pz(k) = O ;当 pz(k)>l 时,贝丨J pz(k) = I ;其中:PZ (k)为k时刻PID控制器计算的分组丢弃概率;p (k-1)为k-1时刻的总的分组丢弃概率;q(k)为k时刻的瞬时队列长度;a、b、c为Kp、K1、Kd的函数,分别为a = Kp+TsKi+Kd/Ts, b = Kp+2Kd/Ts, c = Kd/Ts,Ts 为采样周期。
4.根据权利要求1所述的基于分组大小的卫星网络主动队列管理方法,其特征还在于:所述路由器的总丢包概率P的表达式为:
Pz为PID控制器的丢包概率;当B取最大分组长度MSS时,P=pZ/e.当B取值为O时,P = P2.
【文档编号】H04L12/823GK104079498SQ201410334790
【公开日】2014年10月1日 申请日期:2014年7月14日 优先权日:2014年7月14日
【发明者】杨力, 华聪, 潘成胜 申请人:大连大学