王季煜,朱敏,武巖波
(1.中國科學(xué)院 聲學(xué)研究所,北京100190;2.中國科學(xué)院 研究生院,北京100049)
隨著海洋科學(xué)和海洋開發(fā)的發(fā)展,水聲通信網(wǎng)絡(luò)近年成為研究的前沿和熱點[1].水聲通信網(wǎng)通過聲通信的方式將各種水下、水面節(jié)點連接組網(wǎng),有效擴大海洋探測范圍,提高海洋探測的時效性及穩(wěn)定性.各國相繼開展組網(wǎng)技術(shù)的研究,并將其應(yīng)用于地震監(jiān)測、戰(zhàn)時偵查、設(shè)備監(jiān)控等領(lǐng)域[2-3].
水聲通信研究一般分為物理層、MAC層和網(wǎng)絡(luò)層,其中MAC層主要研究信道的利用方式.在海洋這種帶寬相對較窄、通信延時較大的特殊信道下,對MAC層的研究具有重要意義[4],可以很大程度地提高通信的時延、能耗、通信質(zhì)量等性能.MAC層協(xié)議根據(jù)是否預(yù)先分配資源分為基于競爭方式(contention based)的MAC協(xié)議和基于調(diào)度方式(schedule based)的MAC協(xié)議[5].基于競爭的MAC協(xié)議又分為隨機訪問(random-access based)方式[6]和基于握手約定(handshaking based)的方式.目前使用最多、技術(shù)最完善的MAC協(xié)議CSMA/CA方式的協(xié)議,已經(jīng)應(yīng)用于美國SeaWeb計劃[7].其中MACAW(medium access with collision avoidance for wireless)[8]作為其典型代表,由于其能耗低、沖突少等特點受到國內(nèi)外技術(shù)研究者及工程項目商的青睞.MACAW通過RTS/CTS握手信號對信道進行預(yù)約,保證了通信過程中對信道的獨占特性,減小包沖突概率.
但傳統(tǒng)的MACAW由于其4次交互過程,一次成功的點到點通信時延除了包含數(shù)據(jù)包的發(fā)送時間,還包含4倍的傳輸時間.在多跳網(wǎng)絡(luò)中,這種時延成倍增加.對于戰(zhàn)時監(jiān)測、設(shè)備監(jiān)控中,移動節(jié)點接入等需要快速反應(yīng)的網(wǎng)絡(luò)應(yīng)用,這樣的時延必然帶來很大的損失.所以研究一種可靠性相對較高、時延小的MAC協(xié)議具有實際意義.
本文在MACAW信道預(yù)約的基礎(chǔ)上提出一種節(jié)點預(yù)約方式的MAC協(xié)議——PCTMACAW(preconnection transmission-based MACAW),令處于通信鏈路上的節(jié)點盡早地為本次通信做好準(zhǔn)備,形成一種流水線式的傳輸方式,方便數(shù)據(jù)包在信道中無停滯的傳輸,節(jié)省了通信時間.與文獻[9]相比,本協(xié)議提出了節(jié)點預(yù)約的思想,保留了MACAW的RTS/CTS握手過程,有效地利用握手信號對處于流水線下游的節(jié)點進行了預(yù)約:同時通過在握手信號中加入數(shù)據(jù)包的優(yōu)先級,抑制了流水線外節(jié)點的影響;將分布式網(wǎng)絡(luò)的通信轉(zhuǎn)化為一維的情況,保證了在較大網(wǎng)絡(luò)負(fù)載下該協(xié)議的有效性.
PCTMACAW是基于節(jié)點預(yù)約思想的MAC層協(xié)議,在MACAW的基礎(chǔ)上,把每次對上一跳節(jié)點的CTS握手信號同時用作下一跳節(jié)點的RTS信號,把對下一跳節(jié)點的DATA數(shù)據(jù)信號同時當(dāng)作對上一跳節(jié)點的ACK信號.這樣,鏈路中的節(jié)點在完成RTS/CTS握手的同時,下一跳節(jié)點也收到了上游節(jié)點通信的CTS信號,進行相應(yīng)的準(zhǔn)備,完成一跳距離的預(yù)約;當(dāng)鏈路完成數(shù)據(jù)通信時,下兩跳節(jié)點也接到了CTS信號,進入準(zhǔn)備狀態(tài),完成了兩跳預(yù)約.協(xié)議機制如圖1所示.下面詳細(xì)考察“源-A-B-C-D-終”這條路徑上的通信情況.
源節(jié)點產(chǎn)生數(shù)據(jù)包,并發(fā)往終節(jié)點,A~D為轉(zhuǎn)發(fā)節(jié)點.首先,源節(jié)點發(fā)送RTS信號給節(jié)點A.RTS信號中包含“源-A-B-C-D-終”的整條路徑及其距離信息,以及要發(fā)送的數(shù)據(jù)包的長度信息.
節(jié)點A接收到來自源節(jié)點的RTS之后,立即發(fā)送CTSA-S予以回應(yīng),該CTSA-S信號同樣包含整條路徑信息及數(shù)據(jù)包信息.源節(jié)點在接收到CTSA-S信號后,立即發(fā)送 DATA信號.同時節(jié)點 B也接收到該CTSA-S信號,經(jīng)過解析發(fā)現(xiàn)自己是通信的下一跳節(jié)點,則等待一定的時間TB-A后發(fā)送回應(yīng)信號CTSB-A,即將CTSA-S作為A與B通信的RTS信號.其中,保證A在接收完源節(jié)點的DATA后即可接收來自B的CTSB-A.其中DSA表示源節(jié)點S和A點間的距離;DAB表示節(jié)點A與節(jié)點B之間的距離;c是聲速;LDATA表示DATA的長度;LCTS表示CTS的長度;R表示數(shù)據(jù)率;T△是時間余量,用以平衡聲速變化導(dǎo)致的時間偏移.由于各節(jié)點的距離信息在網(wǎng)絡(luò)路由建立過程中已經(jīng)完成了全網(wǎng)同步,所以以上信息較易獲得.
圖1 節(jié)點預(yù)約方式MAC協(xié)議包交換示意Fig.1 Packet exchange in node reservation-based MAC protocol
節(jié)點A在發(fā)送完CTSA-S之后等待TW1時間:
如果在此期間內(nèi)沒有收到來自源節(jié)點的DATA信號,則認(rèn)為與源節(jié)點通信失敗,進入等待與源節(jié)點再次通信的狀態(tài);如果在此時間內(nèi)收到來自源節(jié)點的DATA信號,則表明與源節(jié)點通信成功.在接收完DATA信號后,如果節(jié)點A接收到來自節(jié)點B的CTSB-A信號,則表明與節(jié)點B也建立了連接,則節(jié)點A立即發(fā)送DATA信號給節(jié)點B.同時這個DATA作為反饋信號被源節(jié)點接收到,完成與源節(jié)點的通信.如果節(jié)點 A只收到 DATA信號,而沒有收到CTSB-A信號,則表明與節(jié)點B握手失敗,節(jié)點A發(fā)送ACK信號給源節(jié)點,結(jié)束與源節(jié)點的通信.隨后,再以節(jié)點A為源節(jié)點重新開始數(shù)據(jù)包DATA的串行發(fā)送.
源節(jié)點發(fā)送完DATA信號后,等待TW0時間:
如果在此時間內(nèi),收到來自節(jié)點A的DATA信號或ACK信號,則認(rèn)為本次通信成功,否則認(rèn)為通信失敗.如果通信失敗時,源節(jié)點按照傳統(tǒng)的MACAW的方法進行回退重發(fā),或選擇不同的路由后進行重發(fā).
節(jié)點C、D按照節(jié)點B的方式進行數(shù)據(jù)的接收及發(fā)送.數(shù)據(jù)一直發(fā)送到終節(jié)點,終節(jié)點反饋一個ACK信號,完成本次數(shù)據(jù)的通信.
在上述的MAC協(xié)議下,中間節(jié)點在收到上級節(jié)點的數(shù)據(jù)包DATA之前就已經(jīng)啟動了與下級節(jié)點的握手過程,并在整個過程完成之前就提前預(yù)約了再下級節(jié)點,使其提前做好準(zhǔn)備,這樣DATA就可以以一種流水線的方式進行發(fā)送.所以,如果傳輸順利,則DATA從源節(jié)點發(fā)往目的節(jié)點所使用的總時間中,只包含一次額外的握手時間,其他握手時間均與數(shù)據(jù)包的發(fā)送時間復(fù)用,從而極大地縮短了通信時延.當(dāng)流水線在任何中間節(jié)點處被阻塞時,都以該節(jié)點作為源節(jié)點,開始向目標(biāo)節(jié)點以新一輪的流水線式發(fā)送.
數(shù)據(jù)包從源節(jié)點發(fā)往終節(jié)點的總時間等于源節(jié)點與第1個中間節(jié)點交換握手信號的時間,加上數(shù)據(jù)包DATA在整個流水線中的傳輸時間,再加上倒數(shù)第2級節(jié)點接到終節(jié)點的反饋信號ACK使用的時間.在DATA傳輸過程中,每次DATA轉(zhuǎn)發(fā),都要多等待一個CTS的發(fā)送時間.所以對于n跳的傳播路徑,點到點傳輸平均時間為
式中:Dsd表示源節(jié)點到終節(jié)點的距離.源節(jié)點和第1個中間節(jié)點的握手開銷與傳輸中的時間余量的均值一起構(gòu)成 TΔ.傳統(tǒng) MACAW 使用的時間為
假設(shè)節(jié)點只包含發(fā)送、接收和睡眠[10]這3個能耗狀態(tài),其中睡眠狀態(tài)由于其功率低,只能考慮發(fā)送和接收能耗[11].考察一般中間節(jié)點的情況,以節(jié)點B為例,數(shù)據(jù)包DATA從接收到轉(zhuǎn)發(fā)過程中,發(fā)送時間為
接收時間為
而MACAW中,
所以新協(xié)議與傳統(tǒng)MACAW相差Esave的能量.
另外由于重發(fā)次數(shù)的增加,也會導(dǎo)致能耗的增加.但在時延限定的網(wǎng)絡(luò)中,總能耗與時延有關(guān),可表達為Etotal=f(Ttotal),其中Ttotal為總時延.如移動節(jié)點與網(wǎng)關(guān)節(jié)點通信中,時延越長,就可能導(dǎo)致移動節(jié)點移動距離越大,從而導(dǎo)致通信失敗概率越大.所以對能量的討論應(yīng)綜合考慮各種因素.
由于節(jié)點在流水線發(fā)送中,以傳給下級的DATA信號作為上級的ACK信號.而LDATA?LACK,這就使一次點到點的MACAW通信成功概率大幅度減小,假設(shè)數(shù)據(jù)包每比特的誤碼率是個定值,則總失敗概率變?yōu)樵瓉淼腖DATA/LACK倍.從而使數(shù)據(jù)包的重發(fā)次數(shù)增加,進而導(dǎo)致時延的增加.
PCTMACAW與傳統(tǒng)MACAW相比,在一次點到點通信中,不考慮時延問題,二者唯一的區(qū)別是,PCTMACAW以傳給下一級節(jié)點的DATA信號代替ACK信號傳輸給上一級.假設(shè)發(fā)送與接收DATA及ACK信號使用同樣的方式與功率,并且每比特誤碼率恒定,則本協(xié)議中接收的誤碼率為pthiserror=1-(1-pbit)LDATA,傳統(tǒng)MACAW的接收誤碼率為pMACAWerror=1-(1-pbit)LACK.本協(xié)議中,中間節(jié)點一次通信成功,實際使用的通信時間為Tthisretran=tDATA+Tp,如果重發(fā)則使用的時間為
式中:tback是回退時間,這里使用二進制隨機回退方式,所以每次回退均值都變?yōu)樯洗蔚?倍;Tlasttran是上一次發(fā)送使用的時間;Tp是傳播時間;tRTS、tCTS和tDATA分別是RTS、CTS和DATA的發(fā)送時間.由于在重發(fā)過程中,ACK信號仍然使用給下級節(jié)點的DATA信號代替,所以式(1)中無此項.
在本例中,如果節(jié)點B給節(jié)點C發(fā)送DATA的過程失敗,則節(jié)點B經(jīng)過一定的回退時間后,重新開始發(fā)送RTS信號,建立連接.增加的時間為
由于tback是回退時間,使用二進制隨機回退方式,每次回退均值都變?yōu)樯洗蔚?倍.所以在n次回退中,增加的總時間為
而傳統(tǒng)的MACAW協(xié)議下,回退導(dǎo)致增加的時間為
在一次點到點通信中,節(jié)點預(yù)約方式的延時為
式中:
傳統(tǒng)MACAW方式延時為
式中:
根據(jù)式(2)~(5),可以得到在不同的誤比特率條件下PCTMACAW與MACAW時延特性隨數(shù)據(jù)包DATA長度變化的曲線,如圖2所示.
由圖2可以看到隨著數(shù)據(jù)包長的增加,PCTMACAW和MACAW協(xié)議時延均增加,但PCTMACAW對包長的變化更加敏感,增加的速度更快.2種MAC方式下,時延均隨著誤比特率的增加而增加.但MACAW在誤比特率增加的時候,時延增加不明顯,且與數(shù)據(jù)包長度無關(guān).而PCTMACAW在誤比特率較低時時延性能要優(yōu)于MACAW,且此時對包長變化不敏感;在誤比特率較低時,隨著包長的增加,時延迅速增加,在某個位置超過MACAW.所以PCTMACAW適用于低誤比特率的環(huán)境中.根據(jù)文獻[9]中結(jié)論,水聲信道誤比特率一般在[10-6,10-2]范圍內(nèi),所以本例中的假設(shè)滿足實際要求.
圖2 不同誤比特率下點到點時延隨數(shù)據(jù)包長度的變化曲線Fig.2 Point-to-point latency in different packet lengths over various EBR
假定通信過程中發(fā)射功率Psend=50 W,接收功率Precv=5 W,并且認(rèn)為數(shù)據(jù)在其他狀態(tài)時的能耗可以忽略(在mW級別).則在一次點到點通信中,節(jié)點預(yù)約方式的能耗為
式中:
傳統(tǒng)MACAW方式能耗為
式中:
根據(jù)式(6)~(9),可以得到在不同的誤比特率條件下PCTMACAW與MACAW能耗隨數(shù)據(jù)包DATA長度變化的曲線,如圖3所示.
由圖3可以看到,隨著包長的增加,PCTMACAW及MACAW的時延均增加,并且PCTMACAW比MACAW增加得稍快.隨著誤比特率的增加,二者的時延均增加,且誤比特率越高,PCTMACAW隨著包長的增加變化得越快,而MACAW則保持恒定.但總體來說,PCTMACAW和MACAW性能相差不大.
圖3 不同誤比特率下節(jié)點能耗隨數(shù)據(jù)包長度的變化曲線.Fig.3 Energy consumption in different packet lengths over various BER
設(shè)定仿真拓?fù)浣Y(jié)構(gòu)如圖4所示.
圖4 單鏈路通信拓?fù)浣Y(jié)構(gòu)Fig.4 Topology of single communication route
設(shè)定6個節(jié)點,其中1~5節(jié)點為信號源節(jié)點,均產(chǎn)生數(shù)據(jù)包;節(jié)點6為目的節(jié)點,所有的數(shù)據(jù)均通過指示的鏈路傳輸給節(jié)點6;節(jié)點間的距離為(2 500,3 500)間的均勻分布值,單位m;節(jié)點1~5產(chǎn)生數(shù)據(jù)包的間隔取(300,700)間的均勻分布,單位是s;節(jié)點最大重發(fā)次數(shù)設(shè)定為5次;誤比特率設(shè)定為10-5;數(shù)據(jù)包長度取2 000 bit.在PCTMACAW和MACAW協(xié)議下,分別統(tǒng)計數(shù)據(jù)包從產(chǎn)生到傳送到目的節(jié)點6所用的平均時間以及6個節(jié)點使用的總能耗,并進行對比,得到結(jié)果如圖5(a)所示.
由圖5(a)可以看到,在數(shù)據(jù)包長度為2 000 bit時,每個節(jié)點使用PCTMACAW協(xié)議后,時延性能均優(yōu)于傳統(tǒng)的MACAW,而且越遠離目標(biāo)節(jié)點,性能增加越多;其中第1個節(jié)點處,使用PCTMACAW比MACAW時延減少了27.7%.此時,測得MACAW協(xié)議每比特能耗為 1.3 J,而 PCTMACAW 協(xié)議為1.4 J,差別并不明顯,不影響正常使用.所以PCTMACAW協(xié)議在常規(guī)應(yīng)用中,在能耗相對穩(wěn)定的同時,較大程度地減小了時延,具有良好的應(yīng)用價值.
圖5(b)顯示當(dāng)數(shù)據(jù)包長度為200 bit時,PCTMACAW與MACAW相比,時延性能會獲得較大的改善,其中第1個節(jié)點處,使用PCTMACAW比MACAW時延壓縮了54.8%.當(dāng)數(shù)據(jù)包長度更短時,效果將更明顯.可見,PCTMACAW在預(yù)警、移動節(jié)點傳輸命令等數(shù)據(jù)包長度較短的應(yīng)用中具有較大的使用價值.
圖5 MACAW與PCTMACAW協(xié)議各節(jié)點時延對比Fig.5 Latency comparison of MACAW and PCTMACAW
在傳統(tǒng)信道預(yù)約思想的基礎(chǔ)上,提出了節(jié)點預(yù)約的方法.該方法通過多跳轉(zhuǎn)發(fā)的CTS握手信號預(yù)約處于通信鏈路上的下級節(jié)點,并通過復(fù)用上級節(jié)點的CTS及DATA信號,形成一種流水線式的傳輸協(xié)議.經(jīng)過理論分析,這種方法在誤比特率相對較低、包長較短的條件下與傳統(tǒng)的MACAW相比,在能耗變化不明顯的前提下,具有延時小的優(yōu)點.適用于移動節(jié)點通信、災(zāi)難預(yù)警、戰(zhàn)時偵測等水聲通信領(lǐng)域.仿真中顯示的是一維情況下PCTMACAW的性能,在分布式網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,處于流水線旁邊的其他節(jié)點會影響PCTMACAW的性能.但通過賦予在流水線上傳輸?shù)臄?shù)據(jù)包以較高的優(yōu)先級(此優(yōu)先級信息包含在握手信號中),可以有效地抑制其他節(jié)點的發(fā)送,使其變成一維傳輸?shù)那闆r.另外,如果網(wǎng)絡(luò)協(xié)議用適當(dāng)ARQ優(yōu)化后,PCTMACAW的優(yōu)勢將更加明顯.但由于本文研究的重點是快速反應(yīng)網(wǎng)絡(luò)中時延問題,沒有考慮此種網(wǎng)絡(luò)與普通觀測性網(wǎng)絡(luò)同時工作時網(wǎng)絡(luò)整體能耗、吞吐量、平均時延等性能,所以下一步研究工作主要集中于尋找不同時延要求的節(jié)點共同工作時的最佳MAC協(xié)議,并兼顧網(wǎng)絡(luò)節(jié)點的公平性,如“最大-最小公平性”等問題.
[1]應(yīng)可珍,陳慶章.關(guān)于水基網(wǎng)的設(shè)想:概念、相關(guān)技術(shù)和研究熱點[J].微機發(fā)展,2003,13:121-122.YING Kezhen,CHEN Qingzhang.Supposition of water based network:concept,correlative technology,and study hotspots[J]. Microcomputer Development,2003,13:121-122.
[2]CHAO C M,WANG Y E.A multiple rendezvous multichannel MAC protocol for underwater sensor networks[C]//IEEE Wireless Communications and Networking Conference(WCNC).Sydney,Australia,2010:1-6.
[3]AZAR Z,MANZURI M T.A latency-tolerant MAC protocol for underwater acoustic sensor networks[C]//International Conference on Control,Automation and Systems.Gyeonggido,Korea,2010:849-854.
[4]XIE Peng,CUI Junhong.R-MAC:an energy-efficient MAC protocol for underwater sensor networks[C]//International Conference on Wireless Algorithms,Systems and Applications.Chicago,USA,2007:187-198.
[5]NGUYEN H T,SHIN S Y,PARK S H.State-of-the-art in MAC protocols for underwater acoustics sensor networks[J].LNCS,2007,4809:482-493.
[6]ABRAMSON N.The ALOHA system:another alternative for computer communications[C]//AFIPS Conference Proceedings.New York,USA,1970:281-285.
[7]RICE J.Seaweb acoustic communication and navigation networks[C]//Proceedings of the International Conference on Underwater Acoustic Measurements:Technologies&Results.Heraklion,Greece,2005.
[8]FOO K Y,ATKINS P R,ATKINS P R,et al.A routing and channel access approach for an Adhoc underwater acoustic network[C]//MTTS/IEEE TECHNO-OCEAN '04.Piscataway,USA,2004:789-795.
[9]TAN H P,SEAN W K G,DOYLE L.A multi-hop ARQ protocol for underwater acoustic networks[C]//Proceedings of OCEANS 2007.Aberdeen,Scotland,2007:1-6.
[10]HARRIS A F,STOJANOVIC M,ZORZI M.Idle-time energy savings through wake-up modes in underwater acoustic networks[J].Ad Hoc Networks,2009,7(4):770-777.
[11]MIN K P,RODOPLU V.UWAN-MAC:an energy-efficient MAC protocol for underwater acoustic wireless sensor networks[J].IEEE Journal of Oceanic Engineering,2007,32(3):710-720.