朱 燕 (婁底職業(yè)技術(shù)學院電子信息工程系,湖南婁底41 7000)
IEEE802.11MAC協(xié)議主要任務包括控制無線介質(zhì)訪問、提供有效的數(shù)據(jù)通信。IEEE802.11定義了集中式協(xié)調(diào)功能PCF(Point Coordination Function)和分布式協(xié)調(diào)功能DCF(Distributed Coordination Function)這2種介質(zhì)訪問控制的方法。作為802.11標準協(xié)議中最基礎的媒體控制訪問方法,DCF由于其實現(xiàn)比較簡單,因此在實際無線局域網(wǎng)中的應用相對要多于PCF機制。由于分布式控制DCF方法中多個節(jié)點同時發(fā)送數(shù)據(jù)幀而出現(xiàn)碰撞的情況不可避免,并且隨著網(wǎng)絡總業(yè)務量的增多或出現(xiàn)突發(fā)狀況時,碰撞概率會急劇增大。在無線載波偵聽網(wǎng)絡里,退避機制是節(jié)點接入網(wǎng)絡時減少沖突的方法,退避算法直接關(guān)系到MAC協(xié)議的整體性能,其研究對提高網(wǎng)絡吞吐量具有重要意義。
在IEEE802.11DCF中采用的標準退避算法是二進制指數(shù)退避 (Binary Exponential Backoff,BEB)[1,2]。BEB算法在某些方法解決了信道爭用問題,但是也存在2個缺點:
1)前一次成功發(fā)送的節(jié)點CW值立刻回到初始大小,而其他不成功的節(jié)點CW值較大,因此在某一小段時間內(nèi)對于剛成功發(fā)送的節(jié)點再次競爭信道的概率大大增加,從而造成不公平性現(xiàn)象[3],并導致時延大范圍抖動。
2)當網(wǎng)絡節(jié)點數(shù)較多負載比較嚴重時,節(jié)點每次成功發(fā)送后都將CW重置為CWmin,可能會引起更多的數(shù)據(jù)沖突,不能正確反映當前信道競爭使用情況。由于數(shù)據(jù)沖突和退避機制也要浪費時間,從而造成系統(tǒng)的吞吐量急劇下降。
因此,在BEB中節(jié)點的隨機時間窗口設置成為一個很重要的問題:過小沖突比較嚴重;過大則浪費嚴重。
BEB算法適合于負載比較輕的環(huán)境,如果負載過重其性能則急劇下降。為了能讓節(jié)點更快的達到公平的競爭狀態(tài),提高整個網(wǎng)絡的性能,筆者引入了一個中間參數(shù)CWmid(CWmin<CWmid<CWmax)作為區(qū)分節(jié)點競爭程度的閥值,提出了一種改進的退避算法。改進的退避算法如下:
算法描述如圖1所示。同時結(jié)合其他退避算法的取值,考慮將初始競爭窗口設置CWmin為2,CWmax為1024,CWmid為32。①初始時網(wǎng)絡負載較輕,其競爭窗口CW≥CWmid時,若發(fā)生沖突數(shù)據(jù)包發(fā)送失敗,則競爭窗口和BEB一樣增長為原來的2倍CW=2CW;若數(shù)據(jù)包發(fā)送成功,競爭窗口CW線性減少,在原窗口基礎上減1,避免競爭窗口下降過快引起更多的沖突。②當網(wǎng)絡負載較多,其競爭窗口CW >CWmid時,若數(shù)據(jù)包發(fā)送失敗,則競爭窗口CW值和BEB一樣增長為原來的2倍;當數(shù)據(jù)包發(fā)送成功后,競爭窗口CW值不直接降到最小CWmin,而是在原窗口基礎上除以4,讓競爭窗口快速降到CWmid附近,防止過度空閑而使得信道利用率下降。
圖1 改進的退避算法描述圖
圖2 無線子網(wǎng)模型
無線網(wǎng)絡模型如圖2所示,包括1個AP和使用wlan_station_adv(Mobile Node)作為接入點的若干個無線移動站點。
設置移動節(jié)點的數(shù)目從10到100,使用ON-OFF模式產(chǎn)生業(yè)務。在不同的節(jié)點數(shù)目下分別采用BEB算法的基本DCF協(xié)議和改進的退避算法的基本DCF協(xié)議分析和比較兩者的吞吐量、傳輸時延和公平性,仿真參數(shù)如表1所示。業(yè)務參數(shù)如圖3和圖4所示,ON狀態(tài)平均持續(xù)時間為80s,OFF狀態(tài)平均時間為0,包到達平均間隔為0.02s,包的平均大小為1024B。
表1 仿真試驗參數(shù)
改進的退避算法在有限狀態(tài)機的關(guān)鍵代碼如下:
圖3 ON-OFF業(yè)務參數(shù)
圖4 包配置參數(shù)
圖5、圖6和圖7分別顯示了在移動節(jié)點數(shù)分別為10、20、30、40、50、60、100的情況下,BEB算法和改進的算法在飽和數(shù)據(jù)量環(huán)境下的吞吐量、傳輸延時和公平性曲線圖。從圖5和圖6可以看出改進的算法在吞吐量和網(wǎng)絡延遲都要優(yōu)于BEB算法。當無線節(jié)點從10個增大到100個時,BEB算法中隨著負載的增加吞吐量急劇下降,吞吐量從4.2Mbps下降到2.5Mbps,下降了40%;改進后的退避算法從4.3Mbps下降到3.25Mbps,下降了24.5%,在一定程度上降低了沖突概率,減少了數(shù)據(jù)的碰撞;同時能有效的利用信道,提高信道利用率。從圖7可以看出,改進的算法其公平性也要優(yōu)于BEB算法,由于改進的算法其競爭窗口的變化依照不同的競爭階段分別進行乘性和線性遞減,能以更加合理的概率接入信道,提高了數(shù)據(jù)流之間的公平性。因此,改進后的算法比BEB算法具有更好的適應性。
圖5 吞吐量比較
圖6 網(wǎng)絡延時比較
圖7 公平性比較
[1]王秀芳,魏宇恒,王洋.IEEE802.11 DCF退避機制的一種改進方法 [J].長江大學學報 (自然科學版),2008,5(4):77-79.
[2]Su Xiang,Kang Kai.Mechanism to reduce collision int IEEE802.11DCF[J].Journal of T singhua University(Sci&Tech),2007(47):1180-1184.
[3]陳偉,張劍,黃秋元.IEEE802.11標準MAC性能分析和一種改進方法 [J].通信系統(tǒng)與網(wǎng)絡技術(shù),2006(2):12-14.