《電子技術應用》
您所在的位置:首頁 > 通信与网络 > 设计应用 > 基于IEEE802.11 DCF的优化竞争窗口算法
基于IEEE802.11 DCF的优化竞争窗口算法
来源:电子技术应用2011年第7期
张 锋, 向 新, 杨宝强, 裴冬冬
(空军工程大学 工程学院,陕西 西安710038)
摘要: 针对现有IEEE802.11 分布式协调功能DCF(Distribute Coordination Function)方式下吞吐量较小、时延较大的缺点,提出了一种优化竞争窗口的算法。该算法通过增加最小竞争窗口和最大竞争窗口,改进其退避算法,并综合考虑到了公平性的问题。经OPNET仿真验证表明,该算法提高了系统的吞吐量,减小了接入时延。
中圖分類號: TP393.01
文獻標識碼: A
文章編號: 0258-7998(2011)07-111-04
A calculation optimizing for contention window based on IEEE802.11 DCF
Zhang Feng, Xiang Xin, Yang Baoqiang, Pei Dongdong
College of Engineering, Air Force Engineering University,Xi’an 710038, China
Abstract: In view of the present IEEE802.11 DCF (Distribute Coordination Function) with the weakness of system through be smaller and connected delay be bigger, a calculation optimizing the contention window is proposed. This calculation increased the minimal contention window and enlarged the maximal contention window, also improved the original backoff mechanism, considered the problem of equity comprehensively. The new method is imitated by OPNET. Simulation results show that system through can be improved, and connected delay declines.
Key words : IEEE802.11 DCF; contention window; binary exponential backoff


    近幾年,IEEE 802.11無線網絡得到迅速的發(fā)展[1],對無線網絡的性能和服務質量提出了更高的要求。同有線網絡相比,無線網絡在性能和服務質量方面還有很大差距,這除了其物理傳輸介質的固有特點之外,實現(xiàn)介質共享的MAC層協(xié)議是一個非常重要的因素。無線局域網(WLAN)IEEE802.11協(xié)議中,MAC層上最基本也是目前使用最廣泛的接入方式是被稱為分布式協(xié)調功能DCF(Distribute Coordination Function)的隨機競爭接入方式。
    DCF方式下,WLAN的吞吐量和接入時延隨著網絡中的活動節(jié)點(Active Nodes)數和初始競爭窗口大小(CWmin)而變化[2],系統(tǒng)的初始競爭窗口大小由物理層特性決定,例如使用直接序列擴頻時,CWmin為31;使用跳頻擴頻時,CWmin為15[3]。也就是說,在DCF協(xié)議中,初始競爭窗口是固定的,并不能隨著網絡中競爭節(jié)點數的多少而變化。根據網絡中活動節(jié)點數的變化來動態(tài)調整初始競爭窗口的值,是改進DCF性能的一種行之有效的方法[4-6]。但目前獲得網絡中的活動節(jié)點數目都是基于某種估計算法獲得的。這些估計算法不能精確地反映網絡中真實的活動節(jié)點數,所計算出的優(yōu)化初始競爭窗口大小也不會很精確,如果初始窗口設置不正確,對網絡性能的影響將會很大。參考文獻[7]提出了增加初始窗口為63,并在退避到最大窗口時,將最大窗口置為初始窗口來參與競爭,這在一定程度提高了系統(tǒng)的公平性,但此算法也增加了沖突發(fā)生的概率。本文提出的優(yōu)化競爭窗口的算法用OPNET軟件[8]進行了仿真,與原有算法及參考文獻[7]中的算法相比,在吞吐量及時延上都有良好的改善。
1 DCF的二進制退避機制和競爭窗口的分析
    DCF協(xié)議基于載波監(jiān)聽多路訪問/沖突避免(CSMA/CA)機制實現(xiàn)有競爭的信道共享。當一個節(jié)點需要發(fā)送幀時,要調用載波偵聽機制來確定信道的忙/閑狀態(tài),如果信道忙,它將推遲,直到信道連續(xù)處于空閑狀態(tài)達到分布協(xié)調功能的幀間間隔DIFS(Distributed Coordination Function Interframe Space)時間,為了避免發(fā)送沖突,這時該節(jié)點在發(fā)送前必須經過一個附加的退避周期,產生一個隨機的退避時間(Backoff  Time),并存入退避計數器。如果退避計數器中已經包含有一個非0的值,則不再執(zhí)行產生隨機退避時間的過程。
    產生退避時間的方法如下:Backoff Time=Random( )* aSlotTime其中,Random( )是均勻分布在[0,CW]范圍內的隨機整數,CW是介于由物理層特征決定的最小競爭窗口CWmin和最大競爭窗口CWmax之間的一個整數值,即CWmin≤CW≤CWmax。aSlotTime 是由物理層特性決定的一個時隙的實際長度值,對于DSSS(直接序列擴頻),一個時隙的長度是 20 μs。每個節(jié)點在發(fā)送數據前,監(jiān)聽信道的狀態(tài),如果信道閑,則將退避時間計數器減1;如果信道忙,則退避過程將被推遲,退避時間計數器被凍結。當終端檢測到信道的空閑時間≥DIFS時,退避過程重新被激活,繼續(xù)遞減。當退避計數器遞減到0時,節(jié)點就可以執(zhí)行發(fā)送。圖1顯示了退避過程。

    節(jié)點A發(fā)送時,節(jié)點B、C、D都有幀要發(fā)送,等待信道連續(xù)空閑DIFS時間后,進入退避階段,每個節(jié)點在CW內隨機產生一個退避時間。因為節(jié)點C所產生的退避時間最短,它的退避計時器最先減至0,開始發(fā)送幀,節(jié)點B和D的退避計時器被凍結。在節(jié)點C傳送過程中,節(jié)點E也有幀要發(fā)送,進入等待過程。信道空閑DIFS后,節(jié)點B和D的退避計時器解凍,節(jié)點E產生隨機退避時間。因為節(jié)點D的退避計時器最先減至0,所以節(jié)點D獲得發(fā)送機會。
    由圖1可以看出,每一個節(jié)點都要維護一個CW參數,CW的初始值為CWmin。在幀的第一次傳輸時,CW等于最小競爭窗口CWmin。當一個節(jié)點發(fā)送失敗時,說明當前的網絡負載較大或者鏈路狀況不好,該節(jié)點的CW就會增加一倍。以后,該節(jié)點每次發(fā)送失敗而重傳時,CW都會增加一倍,即CW=2m(CWmin+1)-1,其中m為重傳次數。當CW的值增加到CWmax時,即2m(CWmin+1)=(CWmax+1),再重傳時CW的值將保持CWmax不變,直到該節(jié)點發(fā)送成功,或者達到了最大重傳次數限制,CW將被重新置為CWmin, CW的變化方式如圖2所示。

 

 

    競爭窗口越大,隨機退避機制解決沖突的能力就越強,因為使用較大的競爭窗口時,選擇相同的隨機退避時間的可能性很小。這樣一方面,在輕載的情況下,小的競爭窗口保證了較短的延遲;另一方面,在重載的情況下,隨機等待時間隨著沖突產生次數的增加呈指數遞增,降低了沖突的概率。競爭窗口達到CWmax后不再增長,保證了網絡在重載情況下的穩(wěn)定。當幀成功發(fā)送或者重傳次數超過限制而被丟掉時,競爭窗口被置為CWmin。這種機制稱為二進制指數退避(Binary Exponential Backoff)。
2 改進的方法
    通過以上分析,可以看出競爭窗口的大小決定了退避的時間,進而影響了吞吐量和接入時延。本文的優(yōu)化算法通過合理設置窗口的大小,針對發(fā)生沖突時退避時間迅速增加的弊端,并綜合考慮到公平性的問題,從以下四個方面對現(xiàn)有算法進行優(yōu)化。
    (1)增加最小的競爭窗口。參考文獻[9]中指出對不同的網絡節(jié)點數,存在一個最優(yōu)的競爭窗口使網絡的時延最小,網絡中有10個競爭節(jié)點時,將初始競爭窗口設為63,介質訪問的時延最小;而50個競爭節(jié)點時,初始窗口設為127,介質訪問的時延最小。但參考文獻[9]中沒有綜合考慮到窗口對吞吐量的影響,本文通過仿真發(fā)現(xiàn),在站點數多或少的情況下,將初始窗口設為127時,應用本算法,在吞吐量和時延上都有良好的改善。
    (2)增加最大的競爭窗口。通過前面的分析可知,如果競爭窗口較小,則發(fā)生沖突的概率將增加,優(yōu)化算法增加了最大窗口,將其設為1 054。
    (3)優(yōu)化退避算法。原有的二進制退避算法,退避的時隙增加過快,呈指數增長,但遞減較慢,即當檢測到信道空閑時間≥DIFS時,退避計數器做減1操作,這樣將導致再次接入的時延增加,優(yōu)化算法采用較溫和的方法:當發(fā)生沖突時,max_backoff = max_backoff * 1.5+1,這樣做的目的是當發(fā)生沖突時,使退避時間量的增加較為緩慢。
    (4)當重傳后競爭窗口超過最大競爭窗口時,將站點的競爭窗口恢復為最大窗口的一半,即512。這樣當一個站點遭遇連續(xù)多次沖突后,增加其競爭信道的概率,提高系統(tǒng)的公平性。參考文獻[7]中超過最大競爭窗口后,直接將站點的競爭窗口恢復為最小窗口,這樣雖然在一定程度上提高了公平性,但同時也加劇了沖突。
    上述改進的算法中,(1)、(2)保證了競爭窗口有一個較大的范圍,降低了可能發(fā)生的沖突,(3)保證了退避時間增加較為緩慢,減小了再次接入的時延,(4)解決了一個站點遭遇連續(xù)多次沖突后再次接入信道的能力,提高了公平性。
3 性能仿真及對比
    本文使用OPNET軟件虛擬建立一個基本的Adhoc網絡模型[10],每個無線節(jié)點的通信范圍設為100 m,采用的網絡拓撲結構為所有無線節(jié)點都分布在邊長為100 m×100 m的四方區(qū)域內,即任意一個節(jié)點都處在其余所有節(jié)點的通信范圍之內,也就是說,網絡中任意兩個節(jié)點之間能直接進行通信。這樣網絡中不存在隱藏節(jié)點。本文仿真了20個站點和80個站點時系統(tǒng)的吞吐量和時延。圖3是包括20個無線節(jié)點的一個網絡拓撲,其中,node_0~node_19是無線節(jié)點。
    在仿真實驗中,采用DSSS的參數(默認),見表1。

    OPNET提供了ON—OFF的建模機制,在ON期間生成數據包,每個包的大小和包間隔可以按照某種分布函數來確定,在OFF期間不發(fā)送數據包。按照表2設置網絡的業(yè)務參數。

    仿真結果如圖4~圖7所示。

    從圖4~圖7的仿真曲線圖可以看出,改進后的算法在20個站點及80個站點時在時延和吞吐量方面都有良好的改善,驗證了其性能。
    本文詳細地分析了DCF方式的工作機制和競爭窗口對接入時延及吞吐量的影響,針對現(xiàn)有算法的不足提出了一種優(yōu)化競爭窗口的算法,仿真了20個站點及80個站點工作時的吞吐量及接入時延,相比現(xiàn)有算法和參考文獻[7]中的算法,改進的算法提高了吞吐量,降低了接入時延。
參考文獻
[1] 金純,陳林星,楊吉云.IEEE802.11無線局域網[M].北京:電子工業(yè)出版社,2004.
[2] BIANCHI G. Performance analysis of IEEE802.11 Distributed coordination function[J].IEEE journal on selected  Areas in Communtion,2000,18(3):535-547.
[3] 劉乃安.無線局域網(WLAN)—原理、技術與應用[M].西安:西安電子科技大學出版社,2004.
[4] 王輝,李津生,洪佩林.一種IEEE802.11中慢啟動遞減競爭窗口控制算法[J].電路與系統(tǒng)學報,2005,10(2):93-97.
[5] 徐志江,李式巨,官軍.IEEE802.11網絡中增強的退避算法[J].電子與信息學報,2004,26(10).
[6] CALI F, CONTI M, GREGORI E. Dynamic tuning of the IEEE802.11 protocol to achieve a theoretical throughput limit[J]. IEEE Transactions on Networking.2000,8(6):785-799.
[7] 裴冬冬,王興華,向新.IEEE802.11DCF退避機制公平性分析與改善[J].電子技術應用,2010,36(10):92-94.
[8] 王文博,張金文.OPNET Modeler與網絡仿真[M].北京:人民郵電出版社,2003.
[9] 周海興.競爭窗口大小對IEEE802.11無線網絡的影響[J].廣東通信技術,2008(10).
[10] 陳敏,韋崗.IEEE802.11無線局域網OPNET建模與性能測試[J].計算機工程,2004,30(21):14-16,139.

此內容為AET網站原創(chuàng),未經授權禁止轉載。

相關內容