劉奇佩 喬鋼 Suleman Mazhar
(哈爾濱工程大學水聲技術重點實驗室 哈爾濱 150001)
(海洋信息獲取與安全工信部重點實驗室(哈爾濱工程大學) 哈爾濱 150001)
(哈爾濱工程大學水聲工程學院 哈爾濱 150001)
過去幾十年中,由于水聲網絡(Underwater Acoustic Network, UAN)在艦船導航、海洋勘探、災害預警等方面的潛力,人們對其產生了極大的興趣。然而,盡管UAN的性能和魯棒性在此期間有了很大提高,仍有許多困難需要解決。這些挑戰主要來自水聲信道,作為已知最復雜的信道環境[1],水聲信道具有信號傳播速度低(相比較無線信道低5個數量級,導致高傳播時延)、信號衰減高、可用帶寬低、多普勒頻偏嚴重等不利特點,為高效的水聲網絡上層協議設計帶來巨大挑戰。
受上述條件制約,水聲通信的物理層通信速率往往較低,通常只有幾十到幾千bps,具體取決于通信距離和通信頻率等因素[2,3],因此相比較于信號的傳播時延,信號的傳輸時延無法忽略。這就導致數據的傳輸極易受到干擾,因此即便不考慮誤碼的情況整個網絡也會遭受嚴重的數據包沖突,浪費了本就有限的能量。由于數據發送在水聲網絡中是一項代價高昂的行為,相對于數據接收來說消耗的能量超出2個數量級[4,5],因此采用高效的媒體接入控制(Medium Access Control, MAC)協議減少數據包沖突以節省能量非常必要[6]。
MAC協議根據對信道的接入方式可分為非競爭式協議和競爭式協議,前者主要包括時分復用(Time Division Multiple Access, TDMA)、碼分復用(Code Division Multiple Access, CDMA)、頻分復用(Frequency Division Multiple Access, FDMA)等,這類協議通過給每個節點預先分配信道資源的方式工作,無法有效利用高傳播時延的水聲信道,且無法處理節點流量分布不均的情況[7];后者通過競爭的方式接入信道,這類協議又可以具體分為隨機接入方式和握手方式。隨機接入協議(典型的如Aloha協議)由于直接發送較長的數據包會導致嚴重的沖突,因此并不適合UAN;握手協議(如文獻[8,9])通過一個典型的4次握手過程實現信道預約、數據發送、可靠傳輸過程,能夠一定程度上避免碰撞并節省能量,但由于無線信道的廣播特性又引入了“隱藏終端”和“暴露終端”問題[10],如圖1所示。
“隱藏終端”發生在一個節點A感知不到某個位于其發送范圍外但位于目的節點接收范圍內的節點B時,會導致這兩個節點發送的數據包在節點C處發生沖突;而“暴露終端”問題正好相反,發生在一個節點C無意中監聽到其他傳輸行為(表示為圖1(b)所示B到A的藍線)時,會進行退避。但事實上A,B的傳輸行為并不會影響C向D發送數據,這就導致了信道利用率的無意義下降。

圖1 隱藏終端和暴露終端問題
“暴露終端”問題的解決只能通過裝備多個天線(UAN里對應為水聲換能器)解決[11]。為此,文獻[12]提出了一種全雙工協議解決上述兩類問題。該文獻中節點額外裝備了一個工作于不同頻帶的水聲換能器,使得節點可以在接收數據時使用額外的空閑天線對信號來源進行回復而不干擾主換能器接收數據,通過告知其接下來的數據傳輸是否會對自身產生影響,而消除了該問題。具體來說,當節點B向A發送數據時,C需要向D發送數據,由于信道的廣播特性B也會受到C的請求,經其判斷D并不在自己的影響范圍內,因此不進行操作,那么C,D之間就可以建立通信鏈接。C在這種情況下成為“暴露發送終端”。然而當C成為接收節點時,其處于B的傳輸范圍內,無法正確接收D發送的數據包,因此C回復CTS(Clear-To-Send)的時候會被節點B回復警告信息繼而中斷接收。該問題稱為“暴露接收終端”。
可以看出,全雙工技術對“暴露接收終端”問題是無能為力的,這完全由通信機制問題決定,只要讓節點C在節點B發送數據的時候不受影響即可解決。定向通信技術(如文獻[13,14])可以通過波束形成將波束范圍有效約束在一個較小空間范圍內從而降低對非通信節點的影響達到該目的。但是該技術會帶來“聾節點”問題[15],即一個節點無法感知到其他正在進行的通信過程從而多次發起通信請求而得不到回應,最終會誤認為鏈路中斷導致無法通信的情況。
為此,本文提出一個全雙工定向碰撞避免(Full-Duplex Directional Collision Avoidance,FDDCA)MAC協議,結合全雙工通信技術和定向通信技術的優勢來實現鏈路的無干擾傳輸,進而提升整個網絡的吞吐量和能量效率。
本文的主要創新點如下:
(1)基于聲強理論建立了一個高精度多模態指向性換能器能量模型;
(2)針對定向網絡的聾節點問題,提出一種使用全雙工和定向通信結合的解決方案;
(3)基于上述分析,提出一種全雙工定向水聲網絡碰撞避免MAC協議,該協議首創并實現了一種多扇區管理機制,最大化網絡的空間復用。
模態換能器是一種可以通過激發不同波束模態以獲得預期指向性的特殊水聲換能器[16],大多數模態換能器具備3個不同模態,其各個模態對應的波束指向性表現如圖2所示。

圖2 單個模態對應的波束指向性
如果結合這3種模態,并加以相應權重,可以得到聲壓函數p(θ)與聯合波束模態的關系

其中,Ai對 應于各種模態的權重,θ為空間方位角。
如果對Ai進 行A0=1的正則化,可以得到不同的指向性表現。根據文獻[17]對多模態換能器最佳參數的研究,本文選擇A1=1.8305,A2=1.3019,此時得到指向性波束相應的–3 dB帶寬大約為70°。根據該結果建立一個波束數量為6的可切換天線(換能器)系統,其收/發指向性如圖3所示。

圖3 系統收/發指向性
整個歐氏平面可以被該波束通過旋轉完全覆蓋。需要注意的是,由于節點只裝備了1個模態換能器,同一時刻只有1個扇區可以被覆蓋。
在全向網絡中,節點只要位于彼此的通信范圍內就可以進行通信,這種類型的網絡通常可以由單位圓圖進行表示,此時節點的通信模式為全向發送全向接收(Omni-directional transmission with Omni-directional reception, OO)模式。而使用定向通信技術時,一對通信節點只能在它們位于彼此的波束范圍內的條件下才能建立連接,即它們的波束必須朝向對方,此時節點的通信模式為定向發送定向接收,(Directional transmission with Directional reception, DD)模式。還有一種通信模式介于兩者之間,也就是全向發送定向接收(OD)或定向發送全向接收(DO)模式。3種通信模式各有其優缺點,本文使用OO模型進行一些控制包的傳輸以達到盡可能大的廣播范圍,而對于較長且重要的數據包使用DD模式進行發送和接收,這兩類通信模式如圖4所示。

圖4 本文所用兩種通信模式示意圖
根據水聲傳播原理[18],一束聲波表面的聲強I可以表示為

其中,Wp表示信號的聲功率,S表示該聲波波束的表面積,因此有Wp=IS,表明在聲強一定的情況下,聲功率與波束表面積呈正比關系。因此,在假定電轉換效率相同的情況下,可以通過計算波束的表面積獲得不同發送模式的能量消耗。
以Cm表 示模式m的能量消耗,其中m ∈{D,O}分別表示定向模式和全向模式,因此使用微元法計算CD的過程如圖5所示。

圖5 微元法計算模態換能器能量消耗
根據旋轉體表面積公式,可知該波束表面積為

利用換元法將其轉換到極坐標空間,可得

其中,ρ(θ)表 示位于方位角θ時表面微元的聲壓,最后可以求得α=0,β=π時CD ≈2.41。
對于m=O的情況,可以直接代入球體表面積公式計算,可得CO=4π≈12.57。定義能效比(Energy Efficiency Ratio, EER)為兩種不同傳輸模式的能量消耗比,可得

說明在傳播范圍相同的情況下,使用定向通信技術可以節省約80.8%的能量。如果使用相同發射功率,可以計算得到此刻的定向增益G為

本結論與文獻[16]極為接近,證明了本模型的精度。
該協議建立在以下對通信節點結構的假設上:(1)節點能夠通過硬件或者算法[19]實時獲取自身的位置信息;(2)節點裝備1個能夠全向收發的普通換能器和1個能夠進行定向收發的模態換能器;(3)上述兩個換能器工作在不同頻帶,普通換能器工作頻帶稱為“全向頻帶”,定向換能器工作頻帶為“定向頻帶”;(4)定向換能器可以自由調整激活扇區,但同一時刻只能激活其中1個。
本節所使用術語如表1所示。

表1 術語解釋
本協議分為3個階段,分別是ND階段、信道競爭階段和數據傳輸階段。通過ND階段節點會建立相應的鄰節點MAC地址和扇區映射表,為下一步競爭信道做準備。進入信道競爭階段后,節點會以全向的方式向目的節點發送RTS(因此該包是ORTS)以競爭信道,并將定向換能器方向調整為目的節點方向,等待接收。如果目的節點此時空閑,在收到ORTS后會以定向的方式向源節點回復DCTS。源節點一旦收到相應的DCTS,就開始進行數據發送,否則說明目的節點正在忙碌,需要進行隨機退避。由于OACK的產生,該退避時間可能會隨著OACK的收到而提前結束,這就增加了信道的利用率。如果在退避計時器超時前仍未收到OACK,可以再次嘗試競爭信道,由于競爭發生在控制信道,且目的節點的定向換能器指向其通信節點,該次競爭不會導致可能的數據信道沖突,在目的節點控制信道的沖突概率也很低,因為控制包長度很小。
3.1.1 鄰節點發現算法
由于定向協議工作需要鄰節點的先驗信息,因此考慮到目前水聲網絡的規模較小但節點分布范圍較大,該協議設計了一個復雜度為O(1)的稀疏網絡ND算法,具體來說,即節點會在網絡初始化后一段時間內隨機發送n個OHELLO包進行鄰節點發現。這個過程不需要采用握手方式,原因在于OHELLO僅僅包含自身的MAC地址和2維坐標,長度分別為8 bit和128 bit,在物理層通信速率2000 bps的情況下該數據包的發送和接收僅僅不到0.1 s,與1500 m傳播時延比起來不足1/10,其碰撞幾乎可以忽略。為了提高節點的發現概率,令n=3,只要鄰節點能成功收到其中任何一個OHELLO即可成功將建立相應映射。
如果該過程采用握手方式,則一個節點至少要發送1 +Ni次 (Ni取決于網絡密度),且伴隨較大的碰撞概率和時延,在這種情況下,由于OHELLO包的發送是廣播形式,一旦碰撞發生,該節點無法得知是哪個報文丟失,只能再次重復該過程。
為了應對可能發生的鄰節點發現不完全和網絡拓撲結構變化,節點會維護一個鄰節點表。每個表項具備一定的生存期,節點每收到一個報文就會根據源節點信息更新該表的生存期,直到生存期結束就會將其中的無效表項刪除,直到再次收到該鄰節點的相應報文。
3.1.2 信道預約
一旦ND階段結束,節點嘗試發送ORTS進行信道預約,這是因為盡管獲得了目的節點的扇區位置,但此刻其定向換能器的朝向未知,無法保證該數據包能被正確接收。目標節點收到ORTS后會立即向源節點回復DCTS,雖然該過程引入了“隱藏終端”問題,如圖1(a)所示,節點B在收到A的ORTS后無法通過傳統CTS的廣播告知節點C進行退避,但由于控制包和接下來數據包的發送與接收發生在不同換能器,即便C此刻接入信道,其行為也不會影響到A,B之間的數據交換。如果C節點向B請求發送,由于B此時已同A建立連接,會向C以全向方式回復一個OEW告知其進行等待,該包包含了自己的預期忙碌時間,C節點收到后會靜默該段時間后重新競爭信道。對于節點A也是同樣的情況。
3.1.3 數據傳輸
一個節點收到發給自身的DCTS后將會以定向方式發送數據包,之后會等待ACK。為了保證可靠性傳輸采用了自動重發請求(Automatic RepeatreQuest,ARQ)技術,為每個數據包設置了傳輸計數器,如果能夠在一定時間內收到相應的OACK說明該數據被成功接收,否則進行重傳,直到目的節點成功接收或者該數據包重傳次數超過上限。
對于裝備了單個全向換能器的節點來說,其沖突域往往是整個節點的干擾范圍,這是由于它能夠影響周圍的整個區域,該范圍內任何一個鄰節點的傳輸都可能會受到干擾。而對于裝備了單個定向換能器的節點來說,問題變得更加復雜,因為節點在某個時刻只能干擾到1個扇區,因此對于每一個扇區而言,都需要單獨管理其狀態,包括忙碌還是空閑,這是由于在復雜的拓撲結構中,不能保證節點的每個扇區只存在1個鄰節點。
因此為該協議設計了一個多扇區狀態管理器(Multi-Sector State Manager, MSSM),該MSSM通過全向換能器偵聽到的數據包對相應扇區進行管理,為其設置合適的退避時間,在計時器運行時該扇區狀態為忙碌,此時無法在該扇區進行數據的發送。直到計時器超時或者全向換能器偵聽到該扇區方向上的OACK,會重新設置其狀態為空閑。
FDDCA通過全雙工技術解決“隱藏終端”和“暴露發送終端”問題,通過定向通信技術解決“暴露接收終端”問題,具體方法如下。
如圖6所示,節點A和B建立連接后節點C試圖接入信道,向節點B請求發送數據,C成為A的隱藏終端,此時A已經成功預約信道,因此B會估算忙碌時間,并將該信息包含在OEW包中以全向的方式發送給C。C收到該OEW包后會按照要求設置相應扇區為忙碌狀態,在超時后重新發起競爭。如果提前收到來自B的OACK包則直接退出計時器并更新狀態為空閑,并重新開始競爭信道。

圖6 FDDCA解決“隱藏終端”
當節點B試圖向節點A發送數據,同時節點C向節點D發送數據時,B和C同時成為對方的“暴露發送終端”,如圖7所示。節點B檢查收到來自C的ORTS后,發現其目的節點并不位于自身范圍內,說明其接下來的發送行為不會造成干擾,因此忽略該ORTS。同樣對于節點C來說也是如此,因此實現了數據的同步發送。

圖7 FDDCA解決“暴露發送終端”
如果節點C向D發送數據的時候A向B請求發送,那么此時節點B成為節點C的暴露接收終端,該問題在通常全雙工技術下難以解決,但可以利用定向通信技術解決。從圖8可以看出,A嘗試向B發起通信的時候,節點C已經與節點D建立了連接,且由于范圍原因A并未收到C的ORTS,因此A競爭信道的行為不會受到影響。當B收到A的ORTS后會判斷相應扇區空閑,且沒有干擾威脅,會向節點A回復DRTS,成功建立連接,實現了信道的空間復用。

圖8 FDDCA解決“暴露接收終端”
“聾節點”問題發生在如圖9所示場景下。對于只裝備單個定向換能器的節點來說,當節點A試圖與節點B進行通信,而此刻節點B和C已經建立了連接,由于B和C的波束必須同時指向對方,所以節點B無法知道A曾嘗試與其通信。在這種情況下,A會反復請求與B進行通信,導致退避時間越來越長,最終會誤認為鏈路無效而刪除鏈路。可以看出該問題產生的關鍵所在,是節點B無法收到A的發送請求。

圖9 “聾節點”問題
該問題可通過FDDCA協議有效解決:A向B請求發送時會使用額外的全向換能器,而不會對B正在進行的數據傳輸造成影響,因此B收到A的發送請求時會通過全向換能器告知其進行合理時間的等待,這樣就避免了節點A退避計時器快速增加而切斷鏈路,最終解決了該問題。
為了驗證本文所提協議的性能,本仿真對NS-3進行了相應擴展,并設計了兩個網絡拓撲結構分別驗證FDDCA的鄰節點發現性能和數據投遞性能。前者通過一個分布式網絡進行統計,后者通過一種特定網絡拓撲進行統計。
假設有若干個節點隨機分布在一塊方形區域內,區域邊長5000 m,節點通信范圍1000 m,OHELLO包長144 bit,定義鄰節點發現效率

其中,Di是 節點i發 現的鄰節點數量,而Ni是i通信范圍內存在的鄰節點數量。統計結果如圖10所示。

圖10 稀疏網絡下鄰節點發現效率
可以看出,整個網絡在只有15個節點的情況下,單次發現概率就達到了90%以上,隨著節點密度的增加,經過6次發現過程也能達到90%的鄰節點發現效率,該過程的時間復雜度是O(1),意味著耗費的能量和時間不會增加。
為了驗證FDDCA協議對于“暴露終端”和“聾節點”問題的處理效果,本文設計了如圖11所示網格狀拓撲結構。

圖11 仿真拓撲結構
其中9個發送節點按照分別位于網格交點,而4個接收節點位于網格中心,這樣的拓撲結構可以使節點構成上述不同問題的發生場景。
由于本協議裝備了兩個工作于不同頻帶的換能器,因此表2分別對其進行了說明,發送聲源級的選擇根據文獻[3]對傳播損失和噪聲提前計算獲得,保證對于各個換能器均可達到2000 m傳播范圍。對比協議選取了水下Aloha (UW-Aloha)協議[20]和時隙地面多址接入(S-FAMA)協議[9],分別為兩類典型的水聲網絡MAC協議,具有極強的代表性,針對協議的吞吐量、能耗、能量效率以及協議開銷進行了對比統計,其中能量效率Ee定義為

其中,Ec為網絡總能耗,Brcv表示所有接收節點收到的數據量,單位是bit,物理意義為平均成功接收1 bit數據需要耗費的能量。
其他相應仿真參數如表2所示。

表2 仿真參數設置
最終得到整個網絡的吞吐量統計結果如圖12所示。
從圖12可以看出,FDDCA協議在吞吐量表現方面遠超UW-Aloha和S-FAMA。盡管UW-Aloha采用了2次握手機制,使得1次傳輸過程耗費時間相比較FDDCA節省近1/2,但由于隨機接入信道方式導致了大量碰撞,導致吞吐量不高。同時,與S-FAMA的對比說明本協議使得多對鏈路可以同時傳輸而不互相影響,取得了良好的信道復用率,有效解決了暴露終端和隱藏終端問題。

圖12 吞吐量對比
從圖13可以看出,網絡能耗上FDDCA相比其余協議取得了絕對優勢,且趨勢穩定,S-FAMA也有比較平衡的趨勢,這是由于握手過程對信道進行了預約,防止數據盲目發送導致的丟包,因此大大降低了發送長數據包導致的能量浪費。而UW-Aloha協議網絡能耗隨著網絡流量的增加呈明顯上升趨勢且沒有回落,這也是隨機接入協議的主要弊端。

圖13 網絡能耗對比
最后,對3種協議的能量效率進行統計,結果如圖14所示。可以看出,隨著數據網絡流量的增加,S-FAMA抖動較高而UW-Aloha呈穩定上升狀態,后期無法收斂,說明該協議的穩定性較差,不適用于節點密度較大和數據流量較高的網絡。而FDDCA相比較其他協議更加穩定且能耗一直處于較低水平,是S-FAMA能耗效率的約6%和UW-Aloha的約10%,這完全得益于全雙工技術和定向通信技術的結合。

圖14 網絡能量效率對比
由于FDDCA是一個基于預約的協議,會存在一定的協議開銷,為了對文中3種協議的開銷進行統一度量,定義協議開銷
其中,Bsend表 示網絡節點發送的數據量,該指標表示平均收到1 bit數據需要額外發送的數據量。
結果如圖15所示。

圖15 協議開銷對比
可以看出,在提供的網絡負載下,FDDCA協議對于對比協議具有極高的優勢,這得益于其使用的全雙工通信和定向通信技術,使得通信節點能夠有效減少對網絡中其他節點的干擾,進而整個網絡的協議開銷始終保持在一個較穩定的狀態;同采用握手機制的SFAMA協議由于節點沖突域較大而產生嚴重的節點間干擾,因此導致的節點退避和數據碰撞使其高于FDDCA協議,但也相對平穩;而UW-Aloha協議由于是隨機接入信道而導致大量數據包的碰撞,會隨著網絡負載的增加而越來越嚴重,呈不斷上升趨勢。
本文從理論上介紹了多模態換能器的指向性增益,并結合聲強理論提出一種數學模型分析其能量消耗,取得了較高的精度。此外,為了有效解決定向傳感器網絡中的臨界點發現、“隱藏終端”、“暴露終端”和“聾節點”難題,本文基于上述模型提出了一種全雙工定向水聲網絡MAC協議FDDCA,本協議通過解決上述問題實現了信道的空間復用,并通過仿真驗證了其在鄰節點發現效率、網絡吞吐量、網絡能耗、能效和協議開銷方面的巨大優勢。