文獻標識碼: A
文章編號: 0258-7998(2011)07-111-04
近幾年,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.
