鄭 杰 敏
(哈爾濱工程大學(xué) 信息與通信工程學(xué)院,哈爾濱 150001)
媒體接入控制技術(shù)(Medium Access Control,MAC)以解決網(wǎng)絡(luò)中多節(jié)點接入信道問題為目標設(shè)計[1-3].保證各個節(jié)點都能公平的發(fā)送數(shù)據(jù),減少數(shù)據(jù)碰撞,高效利用信道資源[4-5].在水聲通信中,水聲信道特性影響著水聲通信網(wǎng)絡(luò)的效率[6].水聲信道特性導(dǎo)致水聲MAC協(xié)議的設(shè)計面臨以下挑戰(zhàn)[7].
相比于電磁波的傳播速度,聲波傳播速度很慢,導(dǎo)致數(shù)據(jù)傳播時延很大.因此在設(shè)計水聲MAC協(xié)議時必須要考慮時延影響.數(shù)據(jù)的傳輸和確認導(dǎo)致了節(jié)點在發(fā)送完數(shù)據(jù)后等待確認的時間內(nèi)處于空閑狀態(tài),這造成了信道利用率較低[8].
在陸地無線通信網(wǎng)絡(luò)中,在同一時刻,如果多個節(jié)點發(fā)送信息給同一個接收節(jié)點,那么接收節(jié)點不能成功解析這些信息[9-11].但在水聲通信網(wǎng)絡(luò)中,由于傳播時延大以及數(shù)據(jù)包發(fā)送時間的不確定,可能導(dǎo)致與陸地通信網(wǎng)絡(luò)中完全相反的結(jié)果.針對于時空不確定性問題,通過合理安排數(shù)據(jù)的傳輸,可以改善網(wǎng)絡(luò)的性能[1].見圖1.
圖1 時空不確定性Figure 1 spatial-temporal uncertainty
在基于握手的水聲MAC協(xié)議中,節(jié)點對通過發(fā)送控制包來進行對信道的預(yù)約[12],但是由于水聲傳播速度慢以及時空不確定問題的影響,當多節(jié)點同時競爭信道時,節(jié)點的控制包的發(fā)送導(dǎo)致信道擁擠,當節(jié)點接收到競爭對手的控制包,將會放棄本次預(yù)約過程,從而導(dǎo)致信道預(yù)約的成功率低,需要對傳統(tǒng)的水聲握手MAC協(xié)議進行改進以適用于水聲網(wǎng)絡(luò).
由于多節(jié)點競爭的存在將大大影響網(wǎng)絡(luò)的性能,提出基于握手機制的輪詢附加傳輸MAC協(xié)議(HPA-MAC),設(shè)計相應(yīng)的機制改善多節(jié)點競爭問題,并通過利用時間不確定降低端到端時延.
圖2 控制包傳輸Figure 2 control packet transmission
UNTF中第m個節(jié)點發(fā)送NTF的時間可以由前一個節(jié)點發(fā)送時間計算得到:
(4)
如果第m個附加節(jié)點發(fā)送NTF時間滿足式(5)關(guān)系,即NTF的發(fā)送干擾了發(fā)送節(jié)點接收CTS控制包,則需要推遲NTF的發(fā)送時間.
(5)
即:
(6)
為了避免干擾CTS控制包的接收,第m個附加節(jié)點的NTF包被發(fā)送節(jié)點接收推遲到CTS接收之后,因此可以通過CTS的接收時間計算第m個附加節(jié)點的NTF包發(fā)送時間:
(7)
在HPA-MAC協(xié)議中,將使用節(jié)點輪詢附加傳輸機制改善網(wǎng)絡(luò)的信道利用率.在鄰居節(jié)點輪詢發(fā)送數(shù)據(jù)時,通過利用節(jié)點之間的時延和數(shù)據(jù)包傳輸時間關(guān)系,會出現(xiàn)圖 3中A、C節(jié)點并行傳輸,不產(chǎn)生碰撞,合理安排各附加節(jié)點的數(shù)據(jù)包發(fā)送時間,可以讓發(fā)送節(jié)點在最短時間內(nèi)完成數(shù)據(jù)的收發(fā)過程,減少數(shù)據(jù)排隊時間.
圖3 收發(fā)節(jié)點雙向傳輸模型Figure 3 Bidirectional transmission of Tx-Rx nodes
圖4 收發(fā)節(jié)點單向傳輸模型Figure 4 Unidirectional transmission of Tx-Rx nodes
1)由于收發(fā)節(jié)點之間數(shù)據(jù)傳輸有兩種情況,因此第一個附加節(jié)點發(fā)送時間計算也有兩種情況:
(a) 收發(fā)節(jié)點雙向傳輸
第一個附加節(jié)點在發(fā)送數(shù)據(jù)時需要避免數(shù)據(jù)在發(fā)送節(jié)點S和接收節(jié)點R處發(fā)生數(shù)據(jù)碰撞,同時保證數(shù)據(jù)到達發(fā)送節(jié)點的時間盡可能早.
首先可以計算出雙向傳輸階段所需要的時間:
DBI=DCR+DUCR
(8)
(9)
Ddata+dS,R+dguard
(10)
其中:DBI是雙向傳輸需要時間,DCR是完整雙向傳輸周期占用時間,DUCR是非完整雙向傳輸周期占用時間,K為收發(fā)雙方雙向發(fā)送的數(shù)據(jù)包數(shù)量.
通過式(8)所計算的雙向傳輸需要時間,可以計算發(fā)送節(jié)點S和接收節(jié)點R結(jié)束數(shù)據(jù)包接收的時間為:
(11)
第一個附加節(jié)點為了避免干擾發(fā)送/接收節(jié)點數(shù)據(jù)包的接收,發(fā)送時間必須滿足:
(12)
(b) 收發(fā)節(jié)點單向傳輸
第一個附加節(jié)點在發(fā)送數(shù)據(jù)時需要避免發(fā)送節(jié)點還在發(fā)送數(shù)據(jù)時以及接收節(jié)點在接收時到達.
(13)
(14)
為了使第一個附加節(jié)點的數(shù)據(jù)能成功被發(fā)送節(jié)點收到,且不干擾接收節(jié)點的接收,發(fā)送時間需滿足:
(15)
Ddata+dguard+di-1,S]
(16)
(17)
為了保證發(fā)送節(jié)點接收第個(i-1)節(jié)點的數(shù)據(jù)包與接收第i個節(jié)點的數(shù)據(jù)包不產(chǎn)生沖突,且第(i-1)個節(jié)點的數(shù)據(jù)包在第i個節(jié)點數(shù)據(jù)包之前被接收,需滿足:
(18)
上式可以轉(zhuǎn)化為:
(19)
由于第i個節(jié)點發(fā)送時間不能在第1個附加節(jié)點之前發(fā)送,那么第i個節(jié)點發(fā)送時間可以確定:
di-1,S-di,S)
(20)
根據(jù)上述分析,各個附加節(jié)點的發(fā)送時間可以計算得到,附加節(jié)點在相應(yīng)的時間發(fā)送可以避免數(shù)據(jù)包碰撞.
網(wǎng)絡(luò)中所有節(jié)點靜態(tài)分布在3 000 m×3 000 m的矩形區(qū)域內(nèi),網(wǎng)絡(luò)中的所有節(jié)點都能相互通信.仿真數(shù)據(jù)包長度為1 200比特,節(jié)點數(shù)量為10個,數(shù)據(jù)傳輸速率為2.4 kb/s,數(shù)據(jù)包最大生存時間為100 s,數(shù)據(jù)包產(chǎn)生服從泊松分布.對比協(xié)議由ALOHA-AN協(xié)議[13]和BiC-MAC協(xié)議[14-15].
圖 5比較了四種協(xié)議的吞吐量,可以看到HPA-MAC隨著負載的增長不斷增長,ALOHA-AN的吞吐量存在飽和現(xiàn)象.HPA-MAC協(xié)議的吞吐量優(yōu)于ALOHA-AN和BiC-MAC協(xié)議,這是因為HPA-MAC針對于握手協(xié)議中傳輸方式進行改進,HPA-MAC允許網(wǎng)絡(luò)中發(fā)送節(jié)點的鄰居加入通信,數(shù)據(jù)包收發(fā)數(shù)量多.
圖5 吞吐量Figure 5 Throughput
圖 6比較了三種協(xié)議的端到端時延.可以看到在負載小于0.18 pkts/s時,ALOHA-AN協(xié)議的時延最??;在負載大于0.18 pkts/s時,HPA-MAC協(xié)議的時延最小.在小負載時產(chǎn)生數(shù)據(jù)包數(shù)量較少,HPA-MAC發(fā)送數(shù)據(jù)包的數(shù)量較少,三次控制包交互導(dǎo)致時延較大.隨著負載的增長,HPA-MAC一次成功握手能夠發(fā)送多個數(shù)據(jù)包,因此時延降低.
圖6 端到端時延Figure 6 End to end delay
本文研究了水聲通信網(wǎng)絡(luò)多節(jié)點競爭時提高信道利用率的機制.通過使用RTS偵聽和競爭比較機制有效提高網(wǎng)絡(luò)握手的成功效率,計算控制包的發(fā)送時間避免了碰撞;在數(shù)據(jù)傳輸階段通過鄰居節(jié)點輪詢并行傳輸機制使得吞吐量大大提升,并有效降低了高負載下的時延.仿真驗證了協(xié)議的有效性.