王季煜,朱敏,武巖波
(1.中國科學院 聲學研究所,北京100190;2.中國科學院 研究生院,北京100049)
隨著海洋科學和海洋開發的發展,水聲通信網絡近年成為研究的前沿和熱點[1].水聲通信網通過聲通信的方式將各種水下、水面節點連接組網,有效擴大海洋探測范圍,提高海洋探測的時效性及穩定性.各國相繼開展組網技術的研究,并將其應用于地震監測、戰時偵查、設備監控等領域[2-3].
水聲通信研究一般分為物理層、MAC層和網絡層,其中MAC層主要研究信道的利用方式.在海洋這種帶寬相對較窄、通信延時較大的特殊信道下,對MAC層的研究具有重要意義[4],可以很大程度地提高通信的時延、能耗、通信質量等性能.MAC層協議根據是否預先分配資源分為基于競爭方式(contention based)的MAC協議和基于調度方式(schedule based)的MAC協議[5].基于競爭的MAC協議又分為隨機訪問(random-access based)方式[6]和基于握手約定(handshaking based)的方式.目前使用最多、技術最完善的MAC協議CSMA/CA方式的協議,已經應用于美國SeaWeb計劃[7].其中MACAW(medium access with collision avoidance for wireless)[8]作為其典型代表,由于其能耗低、沖突少等特點受到國內外技術研究者及工程項目商的青睞.MACAW通過RTS/CTS握手信號對信道進行預約,保證了通信過程中對信道的獨占特性,減小包沖突概率.
但傳統的MACAW由于其4次交互過程,一次成功的點到點通信時延除了包含數據包的發送時間,還包含4倍的傳輸時間.在多跳網絡中,這種時延成倍增加.對于戰時監測、設備監控中,移動節點接入等需要快速反應的網絡應用,這樣的時延必然帶來很大的損失.所以研究一種可靠性相對較高、時延小的MAC協議具有實際意義.
本文在MACAW信道預約的基礎上提出一種節點預約方式的MAC協議——PCTMACAW(preconnection transmission-based MACAW),令處于通信鏈路上的節點盡早地為本次通信做好準備,形成一種流水線式的傳輸方式,方便數據包在信道中無停滯的傳輸,節省了通信時間.與文獻[9]相比,本協議提出了節點預約的思想,保留了MACAW的RTS/CTS握手過程,有效地利用握手信號對處于流水線下游的節點進行了預約:同時通過在握手信號中加入數據包的優先級,抑制了流水線外節點的影響;將分布式網絡的通信轉化為一維的情況,保證了在較大網絡負載下該協議的有效性.
PCTMACAW是基于節點預約思想的MAC層協議,在MACAW的基礎上,把每次對上一跳節點的CTS握手信號同時用作下一跳節點的RTS信號,把對下一跳節點的DATA數據信號同時當作對上一跳節點的ACK信號.這樣,鏈路中的節點在完成RTS/CTS握手的同時,下一跳節點也收到了上游節點通信的CTS信號,進行相應的準備,完成一跳距離的預約;當鏈路完成數據通信時,下兩跳節點也接到了CTS信號,進入準備狀態,完成了兩跳預約.協議機制如圖1所示.下面詳細考察“源-A-B-C-D-終”這條路徑上的通信情況.
源節點產生數據包,并發往終節點,A~D為轉發節點.首先,源節點發送RTS信號給節點A.RTS信號中包含“源-A-B-C-D-終”的整條路徑及其距離信息,以及要發送的數據包的長度信息.
節點A接收到來自源節點的RTS之后,立即發送CTSA-S予以回應,該CTSA-S信號同樣包含整條路徑信息及數據包信息.源節點在接收到CTSA-S信號后,立即發送 DATA信號.同時節點 B也接收到該CTSA-S信號,經過解析發現自己是通信的下一跳節點,則等待一定的時間TB-A后發送回應信號CTSB-A,即將CTSA-S作為A與B通信的RTS信號.其中,保證A在接收完源節點的DATA后即可接收來自B的CTSB-A.其中DSA表示源節點S和A點間的距離;DAB表示節點A與節點B之間的距離;c是聲速;LDATA表示DATA的長度;LCTS表示CTS的長度;R表示數據率;T△是時間余量,用以平衡聲速變化導致的時間偏移.由于各節點的距離信息在網絡路由建立過程中已經完成了全網同步,所以以上信息較易獲得.


圖1 節點預約方式MAC協議包交換示意Fig.1 Packet exchange in node reservation-based MAC protocol
節點A在發送完CTSA-S之后等待TW1時間:

如果在此期間內沒有收到來自源節點的DATA信號,則認為與源節點通信失敗,進入等待與源節點再次通信的狀態;如果在此時間內收到來自源節點的DATA信號,則表明與源節點通信成功.在接收完DATA信號后,如果節點A接收到來自節點B的CTSB-A信號,則表明與節點B也建立了連接,則節點A立即發送DATA信號給節點B.同時這個DATA作為反饋信號被源節點接收到,完成與源節點的通信.如果節點 A只收到 DATA信號,而沒有收到CTSB-A信號,則表明與節點B握手失敗,節點A發送ACK信號給源節點,結束與源節點的通信.隨后,再以節點A為源節點重新開始數據包DATA的串行發送.
源節點發送完DATA信號后,等待TW0時間:

如果在此時間內,收到來自節點A的DATA信號或ACK信號,則認為本次通信成功,否則認為通信失敗.如果通信失敗時,源節點按照傳統的MACAW的方法進行回退重發,或選擇不同的路由后進行重發.
節點C、D按照節點B的方式進行數據的接收及發送.數據一直發送到終節點,終節點反饋一個ACK信號,完成本次數據的通信.
在上述的MAC協議下,中間節點在收到上級節點的數據包DATA之前就已經啟動了與下級節點的握手過程,并在整個過程完成之前就提前預約了再下級節點,使其提前做好準備,這樣DATA就可以以一種流水線的方式進行發送.所以,如果傳輸順利,則DATA從源節點發往目的節點所使用的總時間中,只包含一次額外的握手時間,其他握手時間均與數據包的發送時間復用,從而極大地縮短了通信時延.當流水線在任何中間節點處被阻塞時,都以該節點作為源節點,開始向目標節點以新一輪的流水線式發送.
數據包從源節點發往終節點的總時間等于源節點與第1個中間節點交換握手信號的時間,加上數據包DATA在整個流水線中的傳輸時間,再加上倒數第2級節點接到終節點的反饋信號ACK使用的時間.在DATA傳輸過程中,每次DATA轉發,都要多等待一個CTS的發送時間.所以對于n跳的傳播路徑,點到點傳輸平均時間為

式中:Dsd表示源節點到終節點的距離.源節點和第1個中間節點的握手開銷與傳輸中的時間余量的均值一起構成 TΔ.傳統 MACAW 使用的時間為

假設節點只包含發送、接收和睡眠[10]這3個能耗狀態,其中睡眠狀態由于其功率低,只能考慮發送和接收能耗[11].考察一般中間節點的情況,以節點B為例,數據包DATA從接收到轉發過程中,發送時間為

接收時間為

而MACAW中,

所以新協議與傳統MACAW相差Esave的能量.

另外由于重發次數的增加,也會導致能耗的增加.但在時延限定的網絡中,總能耗與時延有關,可表達為Etotal=f(Ttotal),其中Ttotal為總時延.如移動節點與網關節點通信中,時延越長,就可能導致移動節點移動距離越大,從而導致通信失敗概率越大.所以對能量的討論應綜合考慮各種因素.
由于節點在流水線發送中,以傳給下級的DATA信號作為上級的ACK信號.而LDATA?LACK,這就使一次點到點的MACAW通信成功概率大幅度減小,假設數據包每比特的誤碼率是個定值,則總失敗概率變為原來的LDATA/LACK倍.從而使數據包的重發次數增加,進而導致時延的增加.
PCTMACAW與傳統MACAW相比,在一次點到點通信中,不考慮時延問題,二者唯一的區別是,PCTMACAW以傳給下一級節點的DATA信號代替ACK信號傳輸給上一級.假設發送與接收DATA及ACK信號使用同樣的方式與功率,并且每比特誤碼率恒定,則本協議中接收的誤碼率為pthiserror=1-(1-pbit)LDATA,傳統MACAW的接收誤碼率為pMACAWerror=1-(1-pbit)LACK.本協議中,中間節點一次通信成功,實際使用的通信時間為Tthisretran=tDATA+Tp,如果重發則使用的時間為

式中:tback是回退時間,這里使用二進制隨機回退方式,所以每次回退均值都變為上次的2倍;Tlasttran是上一次發送使用的時間;Tp是傳播時間;tRTS、tCTS和tDATA分別是RTS、CTS和DATA的發送時間.由于在重發過程中,ACK信號仍然使用給下級節點的DATA信號代替,所以式(1)中無此項.
在本例中,如果節點B給節點C發送DATA的過程失敗,則節點B經過一定的回退時間后,重新開始發送RTS信號,建立連接.增加的時間為

由于tback是回退時間,使用二進制隨機回退方式,每次回退均值都變為上次的2倍.所以在n次回退中,增加的總時間為

而傳統的MACAW協議下,回退導致增加的時間為

在一次點到點通信中,節點預約方式的延時為

式中:

傳統MACAW方式延時為

式中:

根據式(2)~(5),可以得到在不同的誤比特率條件下PCTMACAW與MACAW時延特性隨數據包DATA長度變化的曲線,如圖2所示.
由圖2可以看到隨著數據包長的增加,PCTMACAW和MACAW協議時延均增加,但PCTMACAW對包長的變化更加敏感,增加的速度更快.2種MAC方式下,時延均隨著誤比特率的增加而增加.但MACAW在誤比特率增加的時候,時延增加不明顯,且與數據包長度無關.而PCTMACAW在誤比特率較低時時延性能要優于MACAW,且此時對包長變化不敏感;在誤比特率較低時,隨著包長的增加,時延迅速增加,在某個位置超過MACAW.所以PCTMACAW適用于低誤比特率的環境中.根據文獻[9]中結論,水聲信道誤比特率一般在[10-6,10-2]范圍內,所以本例中的假設滿足實際要求.

圖2 不同誤比特率下點到點時延隨數據包長度的變化曲線Fig.2 Point-to-point latency in different packet lengths over various EBR
假定通信過程中發射功率Psend=50 W,接收功率Precv=5 W,并且認為數據在其他狀態時的能耗可以忽略(在mW級別).則在一次點到點通信中,節點預約方式的能耗為

式中:

傳統MACAW方式能耗為

式中:

根據式(6)~(9),可以得到在不同的誤比特率條件下PCTMACAW與MACAW能耗隨數據包DATA長度變化的曲線,如圖3所示.
由圖3可以看到,隨著包長的增加,PCTMACAW及MACAW的時延均增加,并且PCTMACAW比MACAW增加得稍快.隨著誤比特率的增加,二者的時延均增加,且誤比特率越高,PCTMACAW隨著包長的增加變化得越快,而MACAW則保持恒定.但總體來說,PCTMACAW和MACAW性能相差不大.


圖3 不同誤比特率下節點能耗隨數據包長度的變化曲線.Fig.3 Energy consumption in different packet lengths over various BER
設定仿真拓撲結構如圖4所示.

圖4 單鏈路通信拓撲結構Fig.4 Topology of single communication route
設定6個節點,其中1~5節點為信號源節點,均產生數據包;節點6為目的節點,所有的數據均通過指示的鏈路傳輸給節點6;節點間的距離為(2 500,3 500)間的均勻分布值,單位m;節點1~5產生數據包的間隔取(300,700)間的均勻分布,單位是s;節點最大重發次數設定為5次;誤比特率設定為10-5;數據包長度取2 000 bit.在PCTMACAW和MACAW協議下,分別統計數據包從產生到傳送到目的節點6所用的平均時間以及6個節點使用的總能耗,并進行對比,得到結果如圖5(a)所示.
由圖5(a)可以看到,在數據包長度為2 000 bit時,每個節點使用PCTMACAW協議后,時延性能均優于傳統的MACAW,而且越遠離目標節點,性能增加越多;其中第1個節點處,使用PCTMACAW比MACAW時延減少了27.7%.此時,測得MACAW協議每比特能耗為 1.3 J,而 PCTMACAW 協議為1.4 J,差別并不明顯,不影響正常使用.所以PCTMACAW協議在常規應用中,在能耗相對穩定的同時,較大程度地減小了時延,具有良好的應用價值.
圖5(b)顯示當數據包長度為200 bit時,PCTMACAW與MACAW相比,時延性能會獲得較大的改善,其中第1個節點處,使用PCTMACAW比MACAW時延壓縮了54.8%.當數據包長度更短時,效果將更明顯.可見,PCTMACAW在預警、移動節點傳輸命令等數據包長度較短的應用中具有較大的使用價值.

圖5 MACAW與PCTMACAW協議各節點時延對比Fig.5 Latency comparison of MACAW and PCTMACAW
在傳統信道預約思想的基礎上,提出了節點預約的方法.該方法通過多跳轉發的CTS握手信號預約處于通信鏈路上的下級節點,并通過復用上級節點的CTS及DATA信號,形成一種流水線式的傳輸協議.經過理論分析,這種方法在誤比特率相對較低、包長較短的條件下與傳統的MACAW相比,在能耗變化不明顯的前提下,具有延時小的優點.適用于移動節點通信、災難預警、戰時偵測等水聲通信領域.仿真中顯示的是一維情況下PCTMACAW的性能,在分布式網絡拓撲結構中,處于流水線旁邊的其他節點會影響PCTMACAW的性能.但通過賦予在流水線上傳輸的數據包以較高的優先級(此優先級信息包含在握手信號中),可以有效地抑制其他節點的發送,使其變成一維傳輸的情況.另外,如果網絡協議用適當ARQ優化后,PCTMACAW的優勢將更加明顯.但由于本文研究的重點是快速反應網絡中時延問題,沒有考慮此種網絡與普通觀測性網絡同時工作時網絡整體能耗、吞吐量、平均時延等性能,所以下一步研究工作主要集中于尋找不同時延要求的節點共同工作時的最佳MAC協議,并兼顧網絡節點的公平性,如“最大-最小公平性”等問題.
[1]應可珍,陳慶章.關于水基網的設想:概念、相關技術和研究熱點[J].微機發展,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.