吳靜靜,高仲合,呂見霞
(曲阜師范大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,山東 日照 276826)
Ad Hoc與傳統(tǒng)的有線網(wǎng)絡(luò)相比,它具有無中心、自組織、節(jié)點(diǎn)移動(dòng)、多跳和受限的無線傳輸帶寬等特點(diǎn)[1]。由于節(jié)點(diǎn)的頻繁移動(dòng)和相鄰節(jié)點(diǎn)的競(jìng)爭(zhēng),無線鏈路的傳輸錯(cuò)誤引起相當(dāng)多的段丟失,TCP發(fā)送端就誤認(rèn)為這些段丟失是由于擁塞引起的。盡管有時(shí)帶寬是充足的,發(fā)送端也會(huì)抑制自己的發(fā)送速率。因此,信道的利用率大大降低,TCP的性能急劇惡化。
另一方面,在 IEEE802.11[2]協(xié)議系列中,物理層具有多速率傳輸能力,能夠自動(dòng)適應(yīng)鏈路特征,自動(dòng)溝通協(xié)商通信的速率與通信[3],在此基礎(chǔ)上,MAC協(xié)議應(yīng)該能根據(jù)信道情況自適應(yīng)地選擇傳輸速率,以達(dá)到最佳的吞吐量。因此,針對(duì)Ad Hoc網(wǎng)絡(luò)已經(jīng)提出了一些自適應(yīng)速率方法[4],如自動(dòng)速率回退(ARF)協(xié)議,基于接收方的自動(dòng)速率 (RBAR),機(jī)遇式自動(dòng)速率(OAR)和自適應(yīng)自動(dòng)速率 (AAR),另外還有機(jī)會(huì)分組調(diào)度自動(dòng)速率 (OSAR)和全自動(dòng)速率(FAR)協(xié)議。
文中提出了一種自適應(yīng)速率傳輸機(jī)制,該方法盡量滿足傳統(tǒng)的802.11標(biāo)準(zhǔn)。而且傳輸速率是根據(jù) TCP吞吐量性能選擇的,對(duì)于分段傳輸?shù)臄?shù)據(jù)幀,每一幀都能自適應(yīng)地選擇傳輸速率。從仿真結(jié)果可以看出,該方法能夠較好地提高系統(tǒng)的吞吐量。
速率自適應(yīng) MAC 協(xié)議的基本思想就是對(duì)信道進(jìn)行動(dòng)態(tài)估計(jì), 并根據(jù)估計(jì)值選擇當(dāng)前信道條件下最佳的傳輸速率,以達(dá)到最優(yōu)的吞吐量[5]。該方法中,接受端為即將到來的數(shù)據(jù)包估計(jì)信道情況,包誤差率以及傳輸速率的TCP吞吐量。然后,接收端為每個(gè)數(shù)據(jù)包選擇合適的傳輸速率,并通過包傳送給發(fā)送端。
網(wǎng)絡(luò)中的節(jié)點(diǎn)采用載波監(jiān)聽機(jī)制監(jiān)聽周圍媒介的忙閑情況。當(dāng)信道空閑時(shí),發(fā)送節(jié)點(diǎn)以基本速率V0發(fā)送一個(gè)RTS 幀,使處在傳輸范圍內(nèi)的接收節(jié)點(diǎn)無差錯(cuò)接收。接收端根據(jù)收到的RTS包估計(jì)出信噪比(SNR),誤碼率(BER)與 SNR 之間又存在著一定的關(guān)系, 根據(jù)分析模型得到傳輸速率v下的誤碼率 Pb(v),利用包長(zhǎng)度可以得到下一個(gè)數(shù)據(jù)包的包誤差率Pf(v):
由于TCP是根據(jù)有線網(wǎng)絡(luò)傳輸特點(diǎn)設(shè)計(jì)的,其性能在無線網(wǎng)絡(luò)環(huán)境下會(huì)急劇惡化。接收端在選擇合適的傳輸速率時(shí),把TCP性能作為一個(gè)標(biāo)準(zhǔn)。根據(jù)分析模型[6]可得,當(dāng)包誤差率增加時(shí),TCP性能會(huì)急劇惡化。估計(jì)的TCP吞吐量TCP()T v為:
當(dāng)傳輸速率不同時(shí),傳輸持續(xù)時(shí)間不同,因此消耗的無線資源也是不同的。當(dāng)考慮每個(gè)傳輸速率所消耗的無線資源時(shí),估計(jì)的TCP吞吐量為:
式中,maxV 是最大傳輸速率。最后接收節(jié)點(diǎn)根據(jù)TCP性能和消耗的無線資源,選擇一個(gè)最佳的傳輸速率SV:
令 V0為首次傳輸?shù)幕緜鬏斔俾剩瑸槎痰膸g隔持續(xù)時(shí)間,為傳輸速率為V0時(shí),傳輸數(shù)據(jù)包所用的時(shí)間,為CTS包的持續(xù)時(shí)間,為ACK包的持續(xù)時(shí)間。最初的是設(shè)置在RTS包中的,當(dāng)接收端收到 RTS包時(shí),無需改變包結(jié)構(gòu)就可以根據(jù) N AV0值計(jì)算出要傳輸?shù)臄?shù)據(jù)包長(zhǎng)度L:
接收端根據(jù)數(shù)據(jù)包長(zhǎng)度L,利用式(4)選擇合適的數(shù)據(jù)包傳輸速率SV, 得到一個(gè)新的NAV值:
接受端把該NAV值放在CTS包的持續(xù)段中。當(dāng)發(fā)送端接收到CTS包后,從NAV值中估計(jì)出選擇的傳輸速率:
這樣不需要改變包結(jié)構(gòu),發(fā)送端就可以得到下一個(gè)數(shù)據(jù)包的傳輸速率′。
當(dāng)要傳輸?shù)臄?shù)據(jù)包較長(zhǎng)時(shí),由于無線信道通訊質(zhì)量較差,需要對(duì)數(shù)據(jù)包進(jìn)行分片,這時(shí)就可以在一次使用RTS和CTS預(yù)約信道后連續(xù)發(fā)送這些分片。當(dāng)分片較多時(shí),在分片傳輸過程中信道可能已經(jīng)發(fā)生變化,如果仍采用 RTS/CTS 幀交換期間選擇的速率進(jìn)行傳輸顯然是不合適的,針對(duì)以上特點(diǎn),文中提出了讓每個(gè)分片以自適應(yīng)的速率進(jìn)行傳輸。接收節(jié)點(diǎn)根據(jù)式(4)選擇下一分片的傳輸速率,并將該速率信息由 ACK 幀帶回給發(fā)送節(jié)點(diǎn),因此需要對(duì)DATA和ACK幀做一定的修改,如圖1、圖2所示。
圖1 DATA 幀結(jié)構(gòu)
圖2 ACK幀結(jié)構(gòu)
該方法中RTS和CTS幀結(jié)構(gòu)保持不變,將DATA和ACK幀結(jié)構(gòu)中的持續(xù)時(shí)間字段進(jìn)行修改,這種修改與802.11標(biāo)準(zhǔn)的持續(xù)時(shí)間域并不沖突,因?yàn)槌掷m(xù)時(shí)間的值是由傳輸速率和數(shù)據(jù)包長(zhǎng)度計(jì)算出來的,所以修改后的幀結(jié)構(gòu)能為其傳輸范圍內(nèi)的節(jié)點(diǎn)設(shè)置NAV值提供足夠信息,每個(gè)分片都能根據(jù)信道質(zhì)量選擇合適的傳輸速率,充分利用了信道資源,提高了系統(tǒng)的吞吐量。
下面通過仿真平臺(tái) NS2[7]對(duì)文中提出的協(xié)議和RBAR 協(xié)議進(jìn)行性能比較。模擬場(chǎng)景大小為200 m×200 m,物理層采用直接序列展頻技術(shù)(DSSS),基于IEEE 802.11a標(biāo)準(zhǔn),業(yè)務(wù)產(chǎn)生采用 ON-OFF模式,每個(gè)包大小按照指數(shù)分布函數(shù)來確定,最大為1 024 字節(jié),TCP協(xié)議為 AODV,節(jié)點(diǎn)的移動(dòng)速度1~10 m/s,模擬時(shí)間為200 s。
通過不斷增加站點(diǎn)數(shù)目來考察 TCP吞吐量情況。圖3顯示了文中修改的協(xié)議和RBAR協(xié)議的端到端吞吐量比較曲線。可以證實(shí)由于站點(diǎn)數(shù)增多,相互碰撞,會(huì)造成吞吐量快速下降。但是由于改進(jìn)協(xié)議在數(shù)據(jù)包過長(zhǎng)時(shí)采用基于TCP吞吐量的分段速率自適應(yīng)傳輸,相比RBAR協(xié)議有一定的提高。
當(dāng)節(jié)點(diǎn)之間移動(dòng)速度增加時(shí),從圖4可以看出提出的協(xié)議能夠保持較高的吞吐量。這是因?yàn)樵摲椒ú粌H通過發(fā)送端的RTS包估計(jì)下一個(gè)數(shù)據(jù)包的包誤差率,還通過估計(jì)TCP吞吐量為下次傳輸選擇合適的速率。另外分段速率自適應(yīng)傳輸在一定程度上提高了TCP吞吐量。
圖3 吞吐量和節(jié)點(diǎn)數(shù)的關(guān)系
圖4 節(jié)點(diǎn)速度和吞吐量的關(guān)系
文中提出的改進(jìn)MAC 層速率自適應(yīng)協(xié)議[8],更好地利用了物理層的多速率能力,接收端通過計(jì)算即將到來數(shù)據(jù)包的包誤差率和TCP吞吐量性能,選擇合適的傳輸速率,對(duì)于分段數(shù)據(jù)幀,每一段都能自適應(yīng)選擇合適的速率,跟RBAR協(xié)議相比,無需對(duì)物理層進(jìn)行修改,協(xié)議簡(jiǎn)單容易實(shí)現(xiàn),不僅提高了性能,還保持了與802.11標(biāo)準(zhǔn)的兼容性和互操作性。
文中創(chuàng)新點(diǎn):提出了一種改進(jìn)的 MAC 層速率自適應(yīng)協(xié)議,該協(xié)議實(shí)現(xiàn)簡(jiǎn)單,與傳統(tǒng)標(biāo)準(zhǔn)兼容性好,在提高TCP吞吐量的基礎(chǔ)上能適應(yīng)快速變化的無線信道,對(duì)于分段傳輸?shù)臄?shù)據(jù)幀,每一幀都能自適應(yīng)地選擇最優(yōu)傳輸速率,從而提高系統(tǒng)的吞吐量。
[1] 侯祥博,王一強(qiáng),楊金政.移動(dòng)Ad Hoc 網(wǎng)絡(luò)技術(shù)研究及應(yīng)用[J].通信技術(shù),2009,42(08):15-18.
[2] IEEE 802.11 Working Group. Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY)Specifications[S].IEEE Std 802.11 -2007. New York,USA: IEEE, 2007:1-1184.
[3] 陳松.一種速率自適應(yīng)技術(shù)的設(shè)計(jì)[J].信息安全與通信保密,2011(09):70-71.
[4] SHEU S, WANG Y, YIN H,et al.Adaptive Rate Controller for Mobile ad hoc Networks[J]. International Journal of Mobile Communications, 2003,1(03):312-328.
[5] 祁志娟,劉偉,張麗麗.無線Ad Hoc網(wǎng)絡(luò)MAC層速率自適應(yīng)技術(shù)研究[J].通信技術(shù),2010,43(02):172-173.
[6] NAITO K, OKADA H, SAITO M,et al.New Analytical Model for TCP in Wireless Environments[J].IEICE Transactions on Fundamentals,2002,E85-A(07):1501-1510.
[7] 方路平,劉世華,陳盼,等.NS-2網(wǎng)絡(luò)模擬基礎(chǔ)與應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2008.
[8] 王婷婷,李興德,周山泉.移動(dòng)Ad Hoc網(wǎng)絡(luò)的安全路由協(xié)議研究[J].信息安全與通信保密,2007(08):182-184.