IEEE 802.1la/b/g在物理层支持多种发送速率,但是在MAC层只对不同类型的帧规定了不同的速率,却没有规定如何根据信道状态选择和切换合适的发送速率,因而信道自适应的速率选择算法成为目前的研究热点。
信道自适应的速率选择算法是获取时变的信道信息(Channel State Information,CSI)。基于IEEE 802.11标准的无线网络,当前主要有两种获取CSI的方法:对信道信息直接测量的方法和基于统计信息的方法。
对信道信息直接测量的方法是直接测量信道的某一信息,如信噪比(SNR)、接收信号强度(RSS)、或者误码率(BER),因而能够快速地反应信道状态。例如在G.Hol-land提出的RBAR协议中,接收方测量接收到的RTS帧的SNR,选取合适的速率,再通过CTS帧将速率选择信息反馈给发送方。这种方法的缺点是,地获取SNR并不容易;并且该协议强制地使用RTS/CTS握手,必定会带来额外的开销;另外,RBAR协议需要对IEEE 802.11标准进行修改,因而目前并没有被厂商采用。
基于统计信息的方法是统计在一段时间内发送数据的某些信息,如误帧率、ACK成功接收次数、吞吐量等,作为判断无线信道质量的依据。这种方法的显著优势在于简单方便,可以通过编写驱动程序实现,因而很多厂商采用这种方法实现速率自适应,其中的是ARF协议。本文提出的多速率自适应协议EARF以ARF协议为基础,能够根据ACK帧统计信息感知信道状态,自适应地调整每个速率的成功阈值,并且无需修改现有的IEEE802.11标准。仿真结果表明EARF协议在不同的仿真环境下吞吐量性能都有较大提高。
2 相关研究
ARF协议基于统计成功接收的ACK帧判断信道状况。在ARF协议中,若发送方连续两次没有接收到ACK帧,就认为信道质量变差,采用较低的发送速率并且启动一个定时器;若发送方连续10次成功地接收到ACK帧,或定时器超时,则假定信道质量提高,因而尝试提高数据发送速率。该方法的局限性在于始终以固定值10作为成功阈值,并不能很好地反应实时变化的信道质量。相关的研究表明,对于快变的信道,需要较低的成功阈值,而对于慢变的信道,需要较高的成功阈值。ARF3-10协议对ARF协议进行了改进,设定了两个成功阈值3和10,信道快变时采用阈值3,慢变时采用阈值10。然而该协议也只使用了两个固定的成功阈值,依然不能很好地适应信道的动态变化。
文献[4]基于ARF3-10进行改进,该文的思想是:每个速率应该有不同的成功阈值,成功阈值依赖于信道状态(多普勒频率、接收功率)以及数据长度。而另一文献[5]的思想是,在从低速率向高速率调整的时候,尽可能减少尝试的次数以减小开销和失败,保证在短的时间内采用高速率发送数据。然而该法的实现较为复杂,仿真表明其性能改进有限。
本文基于ARF协议,在文献[4,5]思想的启发下,提出了一种新颖的速率自适应协议EARF(EnhancedARF)。通过文献[5]提出的延时因子量化信道状态,对速率的成功阈值进行更新,因而有较好的自适应位。
3 EARF协议描述
EARF协议的基本思想可以用图1的状态转换图来表示。
![]() |
图1中R(i)和R(i十1)分别表示低速率和高速率,Ra(i+1)表示次尝试高速率状态。低速率和高速率对应的成功阈值分别为THi和THi+1。S0和S1分别表示在R(i)和R(i+1)状态下已经连续接收到的ACK帧的次数,他们在初次使用相应速率或尝试该速率时清0,每次连续地接收一个ACK帧则加1。另外,给每个成功阈值都设置了一个值100和一个值2。
如图1所示,若当前处于R(i+1)状态,一旦ACK帧接收失败就降低数据的发送速率转移到速率R(i)。若当前处于低速率R(i),当接收的ACK帧次数S0达到了R(i)的成功阈值THi时尝试高速率R(i+1),即转移到Ra(i+1)状态,尝试成功则正式采用高速率R(i+1),失败则重新降低速率到R(i)状态,并且按照算法ResetTh(i)更新THi。
算法ResetTh(i)是对文献[5]提出算法的简化,以下只作简单说明:
当成功从低速率进入尝试高速率状态Ra(i+1),但接收ACK帧失败时,重新设置低速率的成功阈值THi,如式(1)所示。
![]() |
式中[ ]表示取整,f表示延时因子,定义参看文献[6],该值在不同的信道条件下有不同的经验值。Tmdf表示开始以速率R(i)发送数据的时刻,Tattemp表示开始尝试高速率R(i+1)发送数据的时刻。xmit duration(rhigh)和xmitduration(rcurrent)分别表示尝试高速率R(i+1)和以当前速率R(i)发送一个数据帧需要的时间。
为了进一步地说明速率的转换过程,如图2所示,假设了一个包含了各种可能情况的数据帧发送过程。阶段:假定在Tmdf1时刻开始以速率R(i)传输数据,Thi为n,成功的发送了n个数据帧后,在Tattemp1时刻尝试以高速率R(i+1)发送,但是失败——表明此时的信道状况没有好到可以提高速率,尝试高速率的时机太早,因此调回到速率R(i),并且凋用算法ResetTh(i),按照式(1)重新计算THi为m;第二阶段:更新Tmdf为Tmdf2,经过m次连续的成功接收ACK帧,再次尝试以高速率R(i+1)发送并成功,表明信道状况确实已经变好,接下来都以R(i+1)发送数据帧;第三阶段:将Tmdf更新为Tmdf3,并采用成功阈值THi+1,但是在以R(i十1)发送第四个数据帧的时候就发生了错误,表明信道状况变差,因此再次降低速率为R(i),成功阈值为THi,并更新Tmdf为Tmdf4。从以上的3个阶段可以看出,当且仅当低速率尝试以高速率发送失败的时候,才重新设定低速率的成功阈值。
![]() |
4 仿真实现及性能评估
4.1 仿真环境设置
本文使用Glomosim网络仿真软件对提出的EARF协议进行性能评估,并与ARF和ARF3-10协议进行性能比较。
考虑仅由一个AP节点和一个用户节点组成的无线局域网。在应用层,假设CBR业务,并且用户节点的发送队列中始终有足够多的数据包等待发送,即网络处于饱和状态。假设节点静止,而信道具有时变特性,并使用具有Jake频谱特性的平衰落瑞利信道来建模时变信道,仿真时间为100 s。
仿真中选择BPSK,QPSK,16-QAM,64-QAM和256-QAM作为多速率的调制方式,并假设不使用纠错编码,信道带宽设置为6 MHz,则以上的几种调制方式分别提供6 Mb/s,12 Mb/s,24 Mb/s,36 Mb/s和48 Mb/s五种速率,表示为R(i)(i=0,1,2,3,4),从而近似地模拟IEEE 802.11a提供的速率。当设置BER需求为1e—5,不同的调制方式对应的合适的SNR区间范围选择如下:
![]() |
4.2 不同的多普勒频移下系统吞吐量变化
首先考察在不同的多普勒频移下EARF的性能。设置平均SNR为26 dB,数据帧长为1 024 B。通过仿真得出延时因子f的值应选择在0.5左右,在仿真中分别取值为0.45和0.55,可以得到较好的性能。
图3给出了ARF,ARF3-10,EARF各自的吞吐量随着多普勒频移的增大而变化的曲线。从图中可以看出,3种协议的吞吐量都随着多普勒频移的增加而下降。在多普勒频移为5 Hz时,ARF和ARF3-10协议的吞吐量相当,都较高,此时信道变化较慢,取10作为成功阈值可以较好的适应信道变化。随着信道变化速度的加快,ARF协议的吞吐量迅速下降,而ARF3-10和EARF下降的幅度相当,都比ARF要小很多,并且在各种情况下,采用EARF协议获得的吞吐量都比ARF3-10要高。而绝大多数仿真表明,在信道状态变化较慢的情况下,3种协议性能差别不大,因此本文接下来都只讨论在信道状态变化较快(如fd=50 Hz)的情况下性能仿真的结果。
![]() |
4.3 数据帧长度对吞吐量的影响
接下来考虑吞吐量性能随着数据帧长度变化的情况。设置平均SNR为26 dB,fd=50 Hz,数据帧长度从200 B以步进200 B增加到2 000 B。如图4所示,总的说来,吞吐量随着数据帧长度增加而增加。而随着数据帧长度的增加,ARF协议性能迅速下降——从数据帧长为1 400 B开始,吞吐量缓慢下降;而ARF3-10和EARF的吞吐量仍然缓慢上升,均高于ARF;EARF又高于AF3-10。
![]() |
4.4 不同的平均接收功率条件下,各种协议的吞吐量
如图5所示,给出fd=50 Hz,平均SNR从20 dB以步进1 dB增加到30 dB时信道的吞吐量变化曲线。在固定的多普勒频移下,吞吐量都随着SNR的增加而增加。而EARF和ARF3-10的自适应性相对较好,吞吐量始终比ARF高1~2 Mb/s;EARF的性能仍然高于ARF3-10。
![]() |
5 结论及展望
目前的IEEE 802.11标准在物理层提供了多种传输速率,为了更好地利用时变信道的有限带宽,需要在MAC层设计良好的多速率的自适应算法。本文提出了一种新颖的多速率自适应协议EARF,该协议能够迅速地反应信道的实时变化。通过仿真点对点链路各种条件下的吞吐量性能,发现EARF的性能较ARF和ARF3-10都有明显提高。然而,研究中发现延时因子的选取对系统的性能有较大的影响,在进一步的工作中,将结合延时因子与其他因素联合设计MAC层协议。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。