摘要:提出了一種改進型FAMA(floor acquisition multiple access)協(xié)議,用節(jié)點競爭失敗次數(shù)(無效RTS)對信道爭用情況進行估計,動態(tài)調(diào)整FAMA協(xié)議中的報文序列長度,實現(xiàn)移動節(jié)點公平接入,并保障較好的網(wǎng)絡吞吐率。
關(guān)鍵詞:媒體訪問控制; 實地捕獲多址接入; 無線自組織網(wǎng)絡
中圖分類號:TP391.9文獻標志碼:A
文章編號:1001-3695(2007)12-0342-03
Ad hoc網(wǎng)絡是一種多跳共享廣播信道,無線終端采用CSMA/CA(carrier sense multiple access with collision avoidance )協(xié)議競爭接入信道,利用RTS(request to send)和CTS(clear to send)握手控制信號獲取信道訪問權(quán)[1,2]。移動Ad hoc網(wǎng)絡信道接入?yún)f(xié)議設計的目的就是最大限度地降低碰撞和提高信道利用率。
美國加州大學圣克魯茲分校J.J.Garcia-Luna-Aceves教授所領導的計算機通信研究小組(The Computer Communications Research Group)在1995年提出了FAMA接入?yún)f(xié)議[3],并陸續(xù)發(fā)表了許多相關(guān)文章[4~6]。在基于單信道的分布式無線網(wǎng)絡信道接入?yún)f(xié)議中,F(xiàn)AMA協(xié)議是較成功的一種。美軍在無線互聯(lián)網(wǎng)網(wǎng)關(guān)(wireless Internet gateways,WINGS)中使用的信道接入?yún)f(xié)議就是FAMA協(xié)議。
FAMA協(xié)議巧妙利用RTS/CTS握手信號,能夠有效解決隱終端問題。首先,發(fā)送者在發(fā)送RTS信號之前先監(jiān)聽信道;然后,借鑒忙音阻塞機制,接收終端發(fā)送CTS足以使隱終端暫停發(fā)送,進入退避狀態(tài);最后,握手成功并有效傳輸數(shù)據(jù)。該類協(xié)議的基本指導思想是允許一次RTS-CTS握手成功后可以連續(xù)發(fā)送多個數(shù)據(jù)報文(稱為報文序列packet train),以此來提高信道的利用率。
文獻[7,8]對移動Ad hoc網(wǎng)絡信道接入的公平性進行了分析研究。此外,還有MARCH(multiple access with reduced handshake)、CATA(collision-avoidance time allocation)、MACA-BI(MACA by invitation)、BTMA(busy-tone multiple access)、SRMA(split-channel reservation multiple access)、GAMA(group allocation multiple access)等協(xié)議。這些協(xié)議普遍都采用了時延退避策略和RTS/CTS握手機制來解決信道共享問題。
1FAMA接入?yún)f(xié)議
由于移動Ad hoc網(wǎng)絡工作在無線環(huán)境中,信道資源有限,而移動主機一般是由電池提供能量,為了提高信道利用率和節(jié)約能量,電臺的發(fā)射功率一般較低。降低電臺功率導致了節(jié)點的通信距離有限。一個節(jié)點發(fā)出的信號,網(wǎng)絡中其他節(jié)點并不一定都能收到,從而會出現(xiàn)隱終端和暴露終端等問題,使得普通的CSMA協(xié)議不能很好地工作。隱終端是指一個終端位于接收者的通信范圍之內(nèi),而在發(fā)送者的通信范圍之外;暴露終端是指在發(fā)送者的通信范圍內(nèi),而在接收者的通信范圍之外。圖1中,當節(jié)點A向B發(fā)送信息時,節(jié)點H是隱終端,節(jié)點E是暴露終端。隱終端和暴露終端問題的存在導致了報文沖突的發(fā)生。
當節(jié)點A向B發(fā)送信息時,如果節(jié)點H也在發(fā)送數(shù)據(jù),則節(jié)點A發(fā)送的報文和節(jié)點H發(fā)送的報文在節(jié)點B處產(chǎn)生了碰撞。解決的辦法是:在節(jié)點A向B發(fā)送數(shù)據(jù)之前先發(fā)送RTS信號;如果節(jié)點B空閑并準備好接收,就向節(jié)點A應答CTS信號;聽到節(jié)點B發(fā)射的CTS信號的節(jié)點H(隱終端)暫時停止一切發(fā)送;節(jié)點A開始向B發(fā)送數(shù)據(jù),從而避免沖突的發(fā)生。
圖2為RTS/CTS機制時序圖。RTS/CTS握手機制是移動Ad hoc網(wǎng)絡中廣泛使用的機制。它在很大程度上解決了移動Ad hoc網(wǎng)絡中隱終端和暴露終端問題,極大地提高了網(wǎng)絡性能。
FAMA協(xié)議[4]主要有兩大類,即FAMA-NPS(FAMA with non-persistent packet sensing)[3]和FAMA-NCS(FAMA with non-persistent carrier sensing)[4]。FAMA-NPS協(xié)議類似于MACA、MACAW。FAMA-NCS協(xié)議采用載波偵聽機制,并通過增加CTS控制報文的長度完全消除了隱發(fā)送終端問題。FAMA-NCS協(xié)議可以被用于移動Ad hoc網(wǎng)絡。
FAMA協(xié)議有兩個特點[5]:一是通過延長RTS和CTS控制報文的長度來消除控制報文的沖突,較好地解決了隱終端問題;二是允許一次RTS-CTS交互成功后,節(jié)點可連續(xù)發(fā)送多個報文,從而增加了網(wǎng)絡的吞吐量。
圖3給出了占主導地位的CTS控制信號時序圖[6]。其中CTS信號持續(xù)時間比RTS長。當接收方響應發(fā)送方的RTS信號而開始發(fā)送CTS信號時,在CTS范圍內(nèi)的任何節(jié)點無論是否正在發(fā)送RTS,將至少偵聽到占統(tǒng)治地位的CTS分組的一部分(圖3中的δ部分)。這些節(jié)點將推遲對信道的爭用,實現(xiàn)了無碰撞數(shù)據(jù)報文傳輸。FAMA-NCS協(xié)議解決了隱終端問題,但暴露終端問題仍然存在。
為了實現(xiàn)FAMA-NCS協(xié)議,對每個節(jié)點定義了五種狀態(tài)[3,4,6],即初始狀態(tài)(start)、無源狀態(tài)(passive)、遠程狀態(tài)(remote)、退避狀態(tài)(backoff)和傳輸狀態(tài)(transmit)。
每個移動節(jié)點首先初始化進入start狀態(tài),并等待一段時間。等待時間為發(fā)送最大信息包所占用信道的來回時間總和,保證了正在占用信道的相鄰節(jié)點免于沖突地接收完數(shù)據(jù)。當節(jié)點沒有檢測到載波時,轉(zhuǎn)移到passive狀態(tài);否則,轉(zhuǎn)移到remote狀態(tài)。
在passive狀態(tài),若節(jié)點偵聽到載波,就轉(zhuǎn)移到remote狀態(tài)。如果信道空閑,并且有發(fā)送數(shù)據(jù)請求,就轉(zhuǎn)移到transmit狀態(tài)。
在transmit狀態(tài),若發(fā)送RTS后收到了CTS應答,則傳輸數(shù)據(jù);如果在規(guī)定時間沒有收到CTS應答,則轉(zhuǎn)移到backoff狀態(tài)。如果沒有發(fā)送數(shù)據(jù)請求,就轉(zhuǎn)移到passive狀態(tài)。
在remote狀態(tài),如果在backoff退避時間沒有偵聽到載波,且有發(fā)送數(shù)據(jù)請求,就轉(zhuǎn)移到transmit狀態(tài);如果偵聽到載波,就轉(zhuǎn)移到remote狀態(tài)。
在backoff狀態(tài),如果信道空閑,且有數(shù)據(jù)要發(fā)送,就轉(zhuǎn)移到passive狀態(tài)。如果偵聽到載波,就轉(zhuǎn)移到backoff狀態(tài)。
FAMA-NCS狀態(tài)轉(zhuǎn)移圖如圖4所示。
2改進型FAMA多址接入?yún)f(xié)議
在FAMA協(xié)議中,CTS比RTS要長,CTS主導了RTS而占統(tǒng)治地位。RTS寬度大于最大信道傳輸時延和收發(fā)處理時間之和,CTS寬度大于RTS和信道往返時間之和。占統(tǒng)治地位的CTS起到了忙音阻塞(busy tone)信號的作用。在節(jié)點成功搶占到信道使用權(quán)后,節(jié)點能夠免于碰撞的連續(xù)傳輸多個報文序列。FAMA-NCS連續(xù)報文傳輸機制如圖5所示。
FAMA-NCS連續(xù)報文序列傳輸機制步驟如下:
a)通過RTS-CTS控制信號搶占到信道使用權(quán);
b)對發(fā)送節(jié)點:如果需要連續(xù)傳輸報文序列,在報文頭部加入more標記,發(fā)送報文,跳轉(zhuǎn)到步驟d);
c)對發(fā)送節(jié)點:收到CTS應答信號,如果需要連續(xù)傳輸報文序列,在報文頭部加入more標記,發(fā)送報文;
d)對接收節(jié)點:收到數(shù)據(jù)后,如果報文頭部有more標記,發(fā)送CTS信號;否則,停止發(fā)送CTS,終止本次接收過程。
FAMA-NCS協(xié)議連續(xù)報文傳輸機制中,只要通過RTS-CTS控制信號搶占到信道使用權(quán),無論當前信道空閑或者繁忙,都試圖傳輸自定義最大長度的報文序列。當信道比較繁忙時,搶占到信道的節(jié)點長期霸占信道,造成節(jié)點接入公平性很差。本文從信道估計入手,在信道比較空閑時,連續(xù)傳輸較多的報文序列;在信道競爭比較激烈時,連續(xù)傳輸較少的報文序列。其主要目的是既要保障較高的吞吐率,又要改善接入公平性。
在基于RTS/CTS握手機制的MAC協(xié)議中,在網(wǎng)絡負荷較大時,節(jié)點為了獲得信道訪問權(quán),需要多次發(fā)送RTS報文才能將數(shù)據(jù)報文發(fā)送出去。當源節(jié)點向目標節(jié)點發(fā)送RTS后,在給定時間沒有收到目標節(jié)點回送的CTS,此時源節(jié)點可能正在忙,或者RTS信號在目標節(jié)點處發(fā)生了碰撞,或者CTS信號在源節(jié)點處發(fā)生了碰撞,或者其他可能的情況。
3結(jié)束語
在移動Ad hoc網(wǎng)絡中,信道接入公平性和吞吐率是MAC協(xié)議需解決的重要問題。分析表明,提出的方法提高了FAMA協(xié)議的性能,保證網(wǎng)絡在高負荷或者低負荷的情況下,均能有較高的信道利用率;提高了網(wǎng)絡吞吐量,又能夠保證節(jié)點接入信道的公平性。
參考文獻:
[1]KARN P. MACA: a new channel access method for packet radio[C]//Proc of the 9th ARRL/CRRL Amateur Radio on Computer Networking Conf.[S.l.]: ARRL, 1990:134-140.
[2]BHARGHAVAN V, DEMERS A, SHENKER S, et al. MACAW: a medium access protocol for wireless LANs[C]//Proc of SIGCOMM’94. 1994:212-225.
[3]FULLMER C L, GARCIA-LUNA-ACEVES J J. Floor acquisition multiple access(FAMA) for packet-radio networks[C]//Proc of ACM SIGCOMM’95. Cambridge:[s.n.], 1995:265-273.
[4]FULLMER C L, GARCIA-LUNA-ACEVES J J. Solutions to hidden terminal problems in wireless networks[C]//Proc of ACM SIGCOMM’97. New York: ACM Press, 1997:39-49.
[5]GARCIA-LUNA-ACEVES J J, FULLMER C L, MADRUGA E, et al. Wireless Internet gateways(WINGS)[C]//Proc of IEEE MILCOM’97. California, Monterey:[s.n.], 1997.
[6]GARCIA-LUNA-ACEVES J J, FULLMER C L. Performance of floor acquisition multiple access in Ad hoc networks[C]//Proc of IEEE ISCC’98. Washington D C: IEEE Computer Society, 1998:63-68.
[7]吳傳霞,范平志,馮軍煥.一種Ad hoc網(wǎng)絡信道接入排隊退避公平算法[J].系統(tǒng)仿真學報,2004,16(5):1111-1114.
[8]OZUGUR T, NAGHSHINEH M, KERMANI P, et al. Fair media access for wireless LANs[C]//Proc of GLOBECOM’99. Riode Jameiro: IEEE, 1999:570-579.
“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文”