改善DCF性能的方法总结AconclusionaboutthewaystoimprovetheperformanceofDCFWuChao(ChongqingUniversityofPostsandTelecommunications,InformationandcommunicationEngineering,S130101185)Abstract:Throughput、transferdelayandthefairnessofcompetitionaretheseveralmainstudypointsofthewirelessnetwork.BasedonthestudyoffiveoptimizedschemesofMAClayerDCF’sbinaryexponentialbackoffalgorithmandoffourDCFperformanceanalysismodels,igraduallyunderstandthattheimportancetoimproveandenhanceDCFrelatedperformanceandtherelatedmethodstorealizethem.Italsolaysafoundationformeintheaspectofstudyingwirelessnetwork.KeyWords:WirelssLocalNetworkDistributedCoordinationFunction摘要:吞吐量、传输延时、竞争的公平性等是研究无线网络的几个主要着力点。本文通过对分布式协调功能(DCF)的二元指数退避算法的五个优化方案和四个DCF性能分析模型的学习,了解到改善和提高DCF相关性能的重要性和相关的实现方法。为自己在无线网络的学习方面奠定了一定的基础。关键字:无线局域网分布式协调功能引言随着移动计算机和通信设备的数量增长,将它们与外部世界连接起来的需求也越来越强烈。为实现与外界的连接,无线移动上网已成必然,笔记本计算机需要使用无线(或者红外线)信号进行通信。应运而生的WLAN在赋予用户更高通信自由度的同时也带来了一些弊端。如设备间的信道争用、传输碰撞,降低网络的吞吐率、传输时延大等,特别地,当两个设备利用一个中心接入点进行连接,互相之间则可能由于障碍或者距离原因无法感知到对方的存在的“隐含终端”问题。本文将通过IEEE802.11的MAC层DCF的各种改进技术和建模分析,提供解决弊端相应的方法,通过这些方法可确保设备之间传输的速率和数据的可靠性,提高吞吐率、竞争的公平性,缩小延时,实现用户无线媒介共享资源等问题。1分布式协调功能(DCF)1.1802.11DCF机制简介当使用DCF的时候,802.11使用了一个称为CSMA/CA(CSMAwithCollisionAvoidance,避免冲突的CSMA)的协议。在这个协议中,物理信道的监听手段与虚拟信道的监听手段都用到了。CSMA/CA支持两种操作方法。在第一种方法中,当一个站想要传送数据的时候,它首先监听信道。如果信道空闲,它就开始传送。在传送过程中它并不监听信道,而是直接送出整个帧,对于这种情况,在接收方,有可能由于干扰而使该帧数据被毁坏。如果信道正忙,则发送方推迟到信道空闲,然后再开始传送。如果冲突发生的话,则冲突站等待一段随机的时间,文章稍后会对其做更为细致的分析,就是二元指数后退算法来计算这段时间,以后再尝试重新传送。CSMA/CA操作的另一种模式以MACAW(MultipleAccesswithCollisionAvoidanceforWireless)为基础,它用到了虚拟信道监听方法,也就是A决定要向B发送数据的时候,协议开始工作。A首先向B发送一个RTS,请求一个给B发送帧的许可。当B收到该请求的时候,它可能会决定给予许可,在这种情况下,它送回一个CTS帧,A收到了CTS帧之后,用一个ACK帧作为应答,从而终止协议交换过程。DCF的接入算法大致步骤为:任何节点发送前先检测信道:如果信道空闲时间超过DIFS,则可以立即发送数据;如果信道忙,则延迟等待;延迟等待时一直探测信道,直到等待到信道空闲时间等于DIFS为止。此时并不立即发送数据,而是采用上述的指数回退算法随机选择一个时隙数作为回退计数器进行延迟,回退以时隙为单位,每过一个时隙,计数器减1;在回退延迟时间内探测信道,如果信道空闲至自己的计数器减为0,则可发送数据;如果回退时间内任何时刻发现信道忙,表明其他站点抢到了发送权,则挂起计数器,回到Step2继续等待DIFS。DIFS到来后再次回退,此时不重新设定计数器,而是恢复原来的计数器,在其基础上按时隙减1。图1为参考图。图1DCF基本接入模式然而,尽管有了这些防护措施,仍旧会出现上文中的问题,下面将提出并解决相关问题。1.2退避算法及其优化方案1.2.1二元指数后退(BEB)算法简介DCF协议通过CSMA/CA机制来实现有竞争的信道共享。在一个节点需要发送帧时,要调用载波监听机制来确定信道的忙/闲状态,如果信道忙,它将推迟,直到信道连续处于空闲状态达到分布协调功能的帧间间隔DIFS(DistributedCoordinationFunctionInterframeSpace)时间,为了避免发送冲突,这时该节点在发送前必须经过一个附加的退避周期,产生一个随机的退避时(BackoffTime),并存入退避计数器。如果退避计数器中已经包含有一个非0的值,则不再执行产生随机退避时间的过程。简单的说,二元指数后退算法就是在第一次冲突发生以后,每个站等待0个或者1个时槽之后再重试发送。如果两个站冲突之后又选择了同一个随机数,则它们将再次冲突。再第二次冲突之后,每个站随机选择0、1、2或者3,然后等待那么多个时槽。如果第三次冲突又发生了(发生的概率为0.25),则从0到123之间随机地选择一个数,并等待如此多个时槽。一般地,在第i次冲突之后,在12~0i之间随机地选择一个数,然后等待那么多个时槽。然而,到达10次冲突之后,随机数的区间固定在最大值1023上,以后不再增加。算法的做法是,随着越来越多连续冲突的发生,随机等待的间隔呈指数增加。尽管BEB算法在某些方法解决了信道争用问题,但是也存在着缺点。随着工作站点数目的增多,发生冲突的概率仍将会增大,由于每次重传失败后,站点的竞争窗口都会增大一倍,其目的是为了减少再次发生冲突的概率,但同时也极大地降低了该站点竞争到信道的概率,而对于成功传输的站点总有较大的概率再次竞争到信道,这种现象对于连续遭遇冲突的站点来讲是不公平的。同时当网络节点数较多负载比较严重时,节点每次成功发送后都将竞争窗口重置为minCW,可能会引起更多的数据冲突,不能正确反映当前信道竞争使用情况。由于数据冲突和退避机制也要浪费时间,从而造成系统的吞吐量急剧下降。1.2.2相关优化方案一、①在选择新的CW时,要考虑前一次的CW值;因为在BEB中,当节点成功传输后,将CW设为minCW,一方面由于CW减小的速度太快,节点随机选取的退避值较小,从而增加了碰撞概率,降低了公平性;另一方面忽略了成功传输前的CW值,在慢衰落环境中系统状态基本保持不变。②节点在成功传输后将CW设为DrCWCW/,在失败后同BEB一样将CW设为2CWCW。在给定minCW和maxCW值后,通过改变Dr值,可以获得最大的饱和吞吐量;因为IEEE802.11DCF规定,节点在退避过程中,信道从忙变为空闲后需要等待DIFS间隔才继续其退避过程,在高负载的网络中,以上两个方面会大幅降低系统的性能;③在退避过程中,信道从忙变为空闲时节点不需要等待DIFS间隔而继续退避。当退避结束时,节点开始传送数据,改进的算法一方面可以改进网络中节点接入媒质的公平性,另一方面可以显著提高系统的吞吐量,并降低系统时延。图2改进的接入模式二、在802.11MAC协议中,分组冲突和每个竞争周期内由于退避浪费的空闲时隙是影响网络吞吐量和延迟性能的主要因素。工作站点增多时,很多站点的初始竞争窗口很小,因此会有很多的发送尝试很可能会发生冲突,这就降低了分解冲突的速度,基于以上考虑,改进的方法通过以下两个手段来加快分解冲突的速度,提高竞争信道的公平性。(1)增加最小竞争窗口值,对于基本访问机制,吞吐量随着退避窗口大小的增加而增加(64minCW)。当64minCW时,吞吐量随着退避窗口大小的增加而急剧减少。因此,将最小竞争窗口值设为64.(2)当重传后的竞争窗口值超过最大竞争窗口值时,将站点的竞争窗口恢复为最小竞争窗口。图3改进前后延时比较图4改进前后吞吐量比较三、计算暂停次数的退避算法(SCB)SCB算法通过全局观察来评估系统状态,设置与全局系统状态相匹配竞争窗口值CW。SCB算法包括CW的估计和CW的设置。Step1CW的估计。在DCF中,当其他站点同时在传送时,退避计数器暂停工作,而当信道空闲了一个DIFS周期后,又重新开始倒计时计数。图5通过暂停次数来估计活跃站点数观察到的暂停次数与退避计数器的值有直接关系。为了保持方案的稳定性,利用指数加权移动平均算法来计算平均暂停次数A,其第i次迭代公式为:)()1()1()(iCiAiA(1)式中C为当前暂停次数。Step2CW的设置。当数据包发生碰撞时,竞争窗口指数递增。当成功发送数据包,并且在多次观察周期内,竞争窗口不变;否则窗口大小为平均暂停值与参数β的乘积。参数β与碰撞速率有关,其计算公式为:cP/1(2)式中Pc代表站点在每次传输中发生碰撞的概率,即CWNPc/2(3)式中N是系统中活跃站点的数量.SCB算法的伪代码中,为使暂停计数的波动最小化,一个观察周期后,采用新的竞争窗口值,观察周期由发送尝试的次数决定。设置观察周期为站点10次发送尝试。图6吞吐量比较图7公平指数比较图8碰撞速率比较四、增强DCF性能的M-DCF算法在饱和网络中,所有的节点总是有数据包要发送。依照IEEE802.11DCF协议,节点在每次发送成功后选择下次发送的退避时隙数,在原IEEE802.11DCF中,退避时隙数是均匀的在[0,1iW]范围内选取。在M-DCF中,每个节点计算出上次信道成功发送后所空闲的时隙数,也即上次成功发送到本次成功发送之间的时隙间隔,记为idlen,然后均匀的在[idleinW,1iW]范围内选择退避时隙数,因为在此范围内没有其他节点当前的退避值,从而避免了碰撞。当有新节点接入时,先监听其他节点的发送情况,计算出idlen值后选择退避时隙数,发送数据。当节点数变大后,idlen可能变为0,造成下次发送可能出现碰撞,此时再以BEB方式加倍竞争窗口,在新的退避等级下继续运行上述操作。数据发送成功后,竞争窗口减半(或设定为数据发送成功k次后,竞争窗口减半)。直至达到最大竞争窗口。为了便于分析,假设信道是理想的且每个节点的发送队列始终非空(即网络处于饱和状态),最小竞争窗口和最大竞争窗口分别为0W和mW,在该前提下分析一个节点数目为n的网络,每个节点都需记录信道上一次成功发送后所空闲的时隙数,网络事件的发生不在是独立的,存在记忆效应,故称此种算法为M-DCF。图9碰撞概率比较图10吞吐量比较五、BEB算法适合于负载比较轻的环境,如果负载过重其性能则急剧下降。为了能让节点更快的达到公平的竞争状态,提高整个网络的性能,现引入一个中间参数midCW)(maxCWCWCWMIDMIN作为区分节点竞争程度的阀值,提出了一种改进的退避算法。改进的退避算法如下:4/),2min(2max1CWFCWCWF(midCWCW)1),2min(2max1CWFCWCWF(midCWCW)(4)图11改进算法描述图12吞吐量比较图13网络延时比较图14公平性比较1.3DCF性能分析的相关方法模型一、近似二项分布建立媒介状态描述时间分析的网络模型。IEEE802.11标准的DCF模式下,多个网络节点共享无线媒介,数据帧发送之前需要竞争获得媒介访问权,然后通过当前可用链