卫星速率自适应系统中流量控制机制的设计

2016-02-26 02:00:48龚险峰
电子科技 2016年2期

杨 磊,龚险峰

(中国空间技术研究院 西安分院,陕西 西安 710100)



卫星速率自适应系统中流量控制机制的设计

杨磊,龚险峰

(中国空间技术研究院 西安分院,陕西 西安710100)

摘要针对大气层因降雨会导致无线信号衰减,而随着频率的升高,降雨对信号的衰减会显著增加的问题。提出了一种适用于卫星速率自适应系统的流量控制方法。该方法对令牌漏桶算法进行改进,通过多分组累计比较的方式,保证每个业务流对带宽使用的确定性。实验结果表明,应用该方法的速率自适应系统对超额占用带宽的业务进行有效地限制。本方法已在FPGA上实现,具有复杂度低和资源占用少的优点。

关键词流量控制;令牌漏桶;FPGA

大气层降雨会使无线信号受到衰减,随着频率的升高,降雨对信号的衰减会显著增加,当通信频率>20 GHz时,降雨引起的衰减将超过10 dB。对抗雨衰最直接的方法就是发射端对链路损失进行补偿,但考虑到卫星是功率受限系统,对雨衰的固定补偿必然造成晴天时功率的重大浪费。另一种自适应方法是根据地面反馈的链路情况自动改变下行调制和编码方式,通过调制编码增益来补偿链路损失。因此在速率自适应通信技术中,下行链路最大传输速率受空间环境影响而动态调整,空间环境的改变会使业务流在不同速率的时隙间切换,为减小时隙切换时业务流之间的相互影响,保证每个业务流对带宽使用的确定性,对超额占用带宽的业务必须要给予限制。本文研究了流量控制理论和令牌漏桶流量控制算法,并在此基础上提出一种适用于卫星速率自适应系统的流量控制方法。

1令牌漏桶算法

TCmax=Vi×(FG×Jmax)=(TCo/FGi)×(FG+Jmax)

(1)

令牌漏桶算法的模型如图1所示,图中TCo为时间间隔2×FG内漏桶的流出量,Jmax等于FG/4,Ji是每次分组的时延抖动。

图1 令牌漏桶算法的策略机制

由图1可知,TCi初始值为0。当分组1到达后TCi为TCo/2;由于分组2到达时间迟于预期,所以分组2到达前TCi已降为0,分组2到达后TCi为TCo/2;分组3和分组4均提前到达,因而TCi持续增大;当分组5到达时,若接收分组5,TCi会超过漏桶上限TCmax,按照漏桶规则,分组5被丢弃;分组6延迟到达,分组6到达后TCi为TCo/2。

2流量控制机制的处理过程

在式(1)中,参数FG和Jmax是系统设置的。运行过程中,根据到达分组的长度Li、FGi和FGo来更新漏桶计数值TCi。按照每次分组到达的时间,得出分组传输间隔FGi;通过Vi与FGi相乘得出,时间间隔FGi内可输出的信息长度TCo。比较TCo与Li,如果TCo≥Li,则当前到达分组被接收;反之漏桶计数值TCi变大,若TCi超过TCmax,则当前到达分组被丢弃。上述处理过程是按照令牌漏桶算法直接得出的,具体到FPGA实现时复杂度较高。

(2)

(3)

按照式(3)可推出流量控制的具体实现步骤如下:

步骤1当新分组到达时,由全局时钟给出当前时间Tnow,并与时间寄存器中“上一分组”到达时间Ti取差值ΔT(ΔT=Tnow-Ti)。注:“上一分组”是指累加过程的第一个分组;

步骤2比较ΔT与FG′+Jmax,若ΔT≥FG′+Jmax,表示分组实际到达间隔大于漏桶流空的时间,即当前分组到达时漏桶计数值TCi为0,新分组被接收。分组接收后,更新对应寄存器内容,将漏桶计数值TCi更新为当前分组长度Li,“上一分组”到达时间Ti更新为当前时间Tnow;

3流量控制模块的参数选择与实现

3.1分组长度的选择

3.2参数寄存器的处理

表1 业务寄存器的存储格式

3.3全局时钟的选择与设计

漏桶算法是根据时间间隔进行流量控制的,因此时钟计数器的最大值和时间精度对流量控制效果有较大影响。

时钟精度决定了流量控制的准确性。通过实验测试表明,时间精度与分组间隔的比值小于1/100便可较准确的控制流量,因允许分组时延抖动,进一步提高时钟精度也无较大意义。速率自适应通信系统的极限速率是300 Mbit·s-1,分组间隔最小为256 Byte,即分组间隔时间最小为6.83 μs,发射机的工作时钟是96 MHz,计数器每4个时钟周期自增1,计数间隔0.042 μs,相对比值1/162可满足精度要求。

流量控制模块在新分组到达时被触发,这样的设计有利于减少功耗,使得没有分组到达时流量控制模块处于空闲状态。但时钟计数器的位宽是有限的,当计数器全为1时会清0而重新计数,如果业务流前后两个分组的间隔时间过长,则从时钟计数器的角度看,后到分组可能比先到分组还要“早”,这时可能由于误判而出现正确分组被丢弃的现象。单纯增加时钟计数器的位宽只能降低问题出现的概率,而不能消除问题,尤其对于卫星系统,流量控制模块需要连续工作几年甚至十几年,增加计数器位宽不能解决问题,必须要周期性刷新流量控制模块中上一分组到达时间Ti。通过周期性刷新使上一分组到达时间Ti与时钟计数器的当前时间维持在一个计数周期内。设计中将时钟计数器按照最高位不同细分为两个计数周期,每次最高位翻转后触发一次刷新。由于刷新过程涉及所有RAM地址,处理时间长,为了与流量控制过程不冲突,刷新工作在没有分组到达时进行。

为降低刷新过程的资源消耗,设计中使刷新工作与流量控制工作采用相同的模块。流量控制工作时,通过工作使能信号en_frame接收目的地址addr_i和新到分组长度Li,模块按照漏桶算法对分组进行判断,流控使能en_traffic有效的同时,将流控结果result_traffic输出,其中result_traffic为1时,表示当前分组可被接收,为0时当前分组被丢弃。

刷新工作时也通过工作使能en_frame接收目的地址addr_i和新到分组长度Li,不同之处在于刷新时将新到分组长度Li设置为0,这样在更新上一分组到达时间Ti时不会对漏桶计数值TCi产生影响。为防止流量控制机制的步骤4出现而导致刷新Ti失败,时钟计数器的最高位翻转后不是立刻开始刷新,而是等待一段时间(大于系统最长分组间隔10.9 ms)后开始,这样即使出现刷新失败,Ti与时钟计数器的当前时间也在一个计数周期内。对应到流控结果result_traffic,由于刷新过程中,没有分组到达,所以刷新时对应流控结果的下一级模块不会响应。

速率自适应通信系统的最小速率是3 Mbit·s-1,分组间隔最大为4 096 Byte,分组间隔时间最大为10.9 ms,全部刷新一次共需时间约5.9 ms(216×9×0.01/1 000)。按照计数间隔0.042 μs,可推算出计数器位宽为23位时,计数总时长约352 ms,再补充1位翻转位,共24位可满足计数时长的要求。

3.4流量控制模块的实例分析

图2 流量控制模块的的策略机制

从处理结果可看出:流量控制模块的实现结果与令牌漏桶算法一致,但中间过程略有不同,这是因流量控制模块统计的是N个分组连续到达的累计时间,当实际间隔小于累计时间时,漏桶计数值可能不会减小反而越来越大。因此,参数选择过程中统计精度N不能过大,实现时N最大取4,所以时延抖动的累计有限,不会影响到系统的带宽控制。

4结束语

本文提出的流量控制机制采用分组触发流控和多分组累计比较的方式,大幅简化了漏桶算法的实现过程,使得FPGA实现时既降低了复杂度又节省了逻辑资源。本方法应用在速率自适应通信系统中,对业务流带宽控制的实际效果理想。同时,作为一种针对变长系统的流量控制方法,也可推广到其他通信系统中。

参考文献

[1]Mischa Schwartz.ATM宽带网络性能分析[M].北京:清华大学出版社,1998.

[2]刘元峰.基于漏桶理论及令牌桶算法的网络流量整形策略的研究与实现[D].沈阳:东北师范大学,2008.

[3]Roy Courtney.Circulation prior to adoption consideration draft3 of project paper 664:aircarft data network,part 7-avionics full duplex switched ethernet network[C].Stockholm:AEEC,2004.

[4]陈彪,姚庆栋.VBR流令牌流量整形的研究[J].浙江大学学报:工学版,2004,38(4):443-446.

[5]高岭,李增智,王峥.缓冲区有限流量整形器性能参数的最小加代数表示[J].西安交通大学学报,2005,39(10):1068-1071.

[6]佘明辉,赵东风.基于流量和拥塞控制最佳速率调整算法的研究[J].贵州大学学报:自然科学版,2010,27(2):63-64.

[7]吴继华,王诚.Altera FPGA/CPLD设计:高级篇[M].北京:人民邮电出版社,2005.

Design and Implementation of A Flow Control Mechanism of Rate Adaptive System in Satellite

YANG Lei,GONG Xianfeng

(Xi’an Branch,China Academy of Space Technology (CAST),Xi’an 710100,China)

AbstractA flow control method for rate-adaptive-system in satellite is proposed for the significant increase in signal attenuation in rainy weather with the frequency.Based on the improved token bucket algorithm,this method can guarantee the proper bandwidth of services,by accumulation and comparison of multiple packets.It is shown that the rate-adaptive-system using the method can limit the service occupying excess bandwidth.This method has been implemented in FPGA for its low-complexity and small resource consumption.

Keywordsflow control;token bucket algorithm;FPGA

中图分类号TN927+.2

文献标识码A

文章编号1007-7820(2016)02-116-04

doi:10.16180/j.cnki.issn1007-7820.2016.02.031

作者简介:杨磊(1983—),男,硕士研究生。研究方向:宽带网络与交换技术。

收稿日期:2015- 06- 30