林碧蘭,程 恩,袁 飛
(廈門(mén)大學(xué) 水聲通信與海洋信息技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,福建 廈門(mén) 361005)
由于軍、民兩用的迫切需求,水聲通信網(wǎng)絡(luò)已成為水聲通信領(lǐng)域的研究熱點(diǎn)。水聲通信網(wǎng)絡(luò)包括傳感器、水下自治潛器以及水面通信站或水面浮標(biāo)等各類不同的節(jié)點(diǎn),這些節(jié)點(diǎn)的加入對(duì)水聲網(wǎng)絡(luò)信息的實(shí)時(shí)交互以及節(jié)點(diǎn)之間通信的協(xié)調(diào)能力均提出較高要求[1]。由于單個(gè)節(jié)點(diǎn)的通信范圍有限,水聲網(wǎng)絡(luò)通常采用多跳組織形式,以擴(kuò)大網(wǎng)絡(luò)的通信距離。
同陸地?zé)o線通信相比,水聲網(wǎng)絡(luò)最大的不足有:1)節(jié)點(diǎn)僅靠電池供電,能量有限,且回收周期長(zhǎng);2)水聲信道帶寬窄,數(shù)據(jù)傳輸速率低;3)聲波衰落速度快,而多跳的結(jié)構(gòu)進(jìn)一步增加了數(shù)據(jù)傳播延時(shí)。
水聲MAC層協(xié)議主要研究如何在這樣的水聲網(wǎng)絡(luò)環(huán)境下實(shí)現(xiàn)不同節(jié)點(diǎn)和諧共享媒介,并有效降低節(jié)點(diǎn)功耗。本文重點(diǎn)研究ALOHA協(xié)議和MACAW協(xié)議,并利用OPNET網(wǎng)絡(luò)仿真軟件分析比較兩者的性能。
ALOHA協(xié)議分為純 ALOHA (pure-ALOHA)與時(shí)隙ALOHA(slotted-ALOHA)[2]。 對(duì)于水聲網(wǎng)絡(luò),由于精確時(shí)間同步存在困難,暫不考慮時(shí)隙ALOHA。
純ALOHA協(xié)議基于完全隨機(jī)的信道接入方式。當(dāng)節(jié)點(diǎn)需發(fā)送數(shù)據(jù)包時(shí),無(wú)需考慮當(dāng)前信道狀態(tài),立即發(fā)往信道。接收節(jié)點(diǎn)成功接收到數(shù)據(jù)包,則回復(fù)1個(gè)ACK確認(rèn)幀。發(fā)送節(jié)點(diǎn)收到ACK確認(rèn)幀后,立即發(fā)送下一個(gè)數(shù)據(jù)包;若發(fā)送節(jié)點(diǎn)在一定時(shí)間內(nèi)未收到ACK確認(rèn)幀,則隨機(jī)等待一段時(shí)間后,重新發(fā)送該數(shù)據(jù)包。由于使用隨機(jī)等待時(shí)間,數(shù)據(jù)包再次沖突的概率將減小。但若在N次發(fā)送后仍未收到ACK確認(rèn)幀,則判定該鏈路失效,放棄本次傳輸。ALOHA協(xié)議適用于網(wǎng)絡(luò)負(fù)載較小和信道延遲較大的網(wǎng)絡(luò),這種情況相鄰節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù)包的概率較小,因而可獲得較好的吞吐量和延遲特性。
MACA協(xié)議是首個(gè)采用RTS/CTS分組的信道接入?yún)f(xié)議,利用RTS/CTS交互完成對(duì)共享無(wú)線介質(zhì)的檢測(cè)。MACA采用RTS-CTS-DATA交互過(guò)程實(shí)現(xiàn)信道預(yù)約與數(shù)據(jù)傳輸,具體過(guò)程如下:
1)發(fā)送節(jié)點(diǎn)向接收節(jié)點(diǎn)發(fā)送RTS請(qǐng)求發(fā)送分組;2)接收節(jié)點(diǎn)在收到RTS后回復(fù)CTS確認(rèn)傳輸分組;3)發(fā)送節(jié)點(diǎn)接收到CTS后開(kāi)始發(fā)送數(shù)據(jù)幀信息。但由于水聲信道不可靠,不能保證發(fā)送和接收節(jié)點(diǎn)的鄰居節(jié)點(diǎn)能夠收到相應(yīng)的RTS和CTS幀,因此也不能保證數(shù)據(jù)的成功發(fā)送。
MACAW對(duì)MACA進(jìn)行改進(jìn),在MACA的基礎(chǔ)上增加確認(rèn)數(shù)據(jù)分組 (ACK),ACK用于實(shí)現(xiàn)數(shù)據(jù)分組的鏈路層確認(rèn)。該方案摒棄以太網(wǎng)的二進(jìn)制退避算法(BEB)而采用MILD算法,以更適合無(wú)線信道環(huán)境。MILD算法有利于節(jié)點(diǎn)接入信道的公平性。同時(shí)還可采用退避計(jì)數(shù)器復(fù)制等技術(shù)來(lái)實(shí)現(xiàn)公平接入[3]。
OPNET Modeler為協(xié)議的設(shè)計(jì)和仿真提供網(wǎng)絡(luò)層、節(jié)點(diǎn)層和進(jìn)程層3層建模機(jī)制。網(wǎng)絡(luò)層主要用來(lái)建立水聲網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu);節(jié)點(diǎn)層定義內(nèi)部模塊間的邏輯關(guān)系;進(jìn)程層與節(jié)點(diǎn)內(nèi)部的模塊相對(duì)應(yīng),描述具體模塊的行為[4]。
本文所仿真的多跳拓?fù)渚W(wǎng)絡(luò)中有10個(gè)節(jié)點(diǎn),隨機(jī)分布在5 km×5 km的范圍內(nèi),每個(gè)節(jié)點(diǎn)的通信距離不超過(guò)2 km。節(jié)點(diǎn)間數(shù)據(jù)傳輸速率為1 024 bit/s,水聲信道聲速為1 500 m/s[5]。圖1是水聲網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。
圖1 水聲網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)
圖2為ALOHA/MACAW協(xié)議節(jié)點(diǎn)的內(nèi)部模型。
圖2 ALOHA/MACAW協(xié)議節(jié)點(diǎn)的內(nèi)部模型
圖2中g(shù)en模塊是OPNET自帶的simple source信號(hào)源,用于模擬來(lái)自數(shù)據(jù)鏈路層的上層的原始數(shù)據(jù)包。MAC模塊是MAC協(xié)議所在的處理模塊,同時(shí)也是一個(gè)隊(duì)列處理機(jī)。MAC模塊通過(guò)采用不同的進(jìn)程來(lái)仿真不同的協(xié)議。節(jié)點(diǎn)接收的數(shù)據(jù)包經(jīng)MAC接收處理后發(fā)往sink模塊,模擬包發(fā)往數(shù)據(jù)鏈路層的上層,而數(shù)據(jù)包在sink模塊中直接銷毀。tx、rx模塊分別是節(jié)點(diǎn)的發(fā)送機(jī)與接收機(jī),在這兩個(gè)模塊中設(shè)置信道的帶寬、傳輸數(shù)據(jù)率、發(fā)送功率等參數(shù)。節(jié)點(diǎn)模型中,rx與MAC模塊之間連接的虛線為狀態(tài)變量線,用于MAC判斷當(dāng)前接收機(jī)的工作繁忙情況,以在協(xié)議中實(shí)現(xiàn)半雙工的工作模式。
圖3為ALOHA協(xié)議和MACAW協(xié)議的進(jìn)程模型。圖3(a)和圖3(b)中,initial為進(jìn)程初始化狀態(tài),用于變量初始化;ilde為缺省狀態(tài),表示正在等待1個(gè)事件;wait_ack為等待ACK狀態(tài)。此外,圖3(b)中,wait_cts為等待CTS狀態(tài)。
圖3 ALOHA協(xié)議和MACAW協(xié)議的進(jìn)程模型
在時(shí)延敏感型水聲網(wǎng)絡(luò)中,網(wǎng)絡(luò)的吞吐量、端到端的平均時(shí)延和能量消耗是重要的性能指標(biāo)[6],這里的網(wǎng)絡(luò)平均時(shí)延是指源節(jié)點(diǎn)數(shù)據(jù)包從上層進(jìn)入MAC層到目的節(jié)點(diǎn)接收到完整數(shù)據(jù)包的時(shí)間,網(wǎng)絡(luò)吞吐量定義為成功傳輸數(shù)據(jù)所用時(shí)間與總時(shí)間的比值,網(wǎng)絡(luò)業(yè)務(wù)量定義為單位時(shí)間內(nèi)產(chǎn)生包的數(shù)目。采用OPNET多序列仿真機(jī)制仿真對(duì)比ALOHA和MACAW協(xié)議。仿真中產(chǎn)生的數(shù)據(jù)包大小均為1 024 bits。這兩個(gè)協(xié)議的平均延時(shí)、吞吐量和能量消耗性能分布如圖4所示。
從圖4(a)可以看出,當(dāng)業(yè)務(wù)量較小時(shí),兩種協(xié)議網(wǎng)絡(luò)的平均時(shí)延都較小,這主要是因?yàn)檫@時(shí)網(wǎng)絡(luò)沖突較小。但隨著業(yè)務(wù)量的增大,由于數(shù)據(jù)包的大量重發(fā),數(shù)據(jù)包的平均延時(shí)迅速增大,但ALOHA協(xié)議增大的程度明顯大于采用握手和重發(fā)機(jī)制的MACAW。當(dāng)業(yè)務(wù)量增大到一定程度時(shí),分組沖突增多,很多分組無(wú)法傳輸,反而使兩個(gè)協(xié)議的時(shí)延變化都開(kāi)始緩慢減小,但是ALOHA協(xié)議的平均時(shí)延最大值高于MACAW協(xié)議。
圖4 ALOHA/MACAW網(wǎng)絡(luò)性能對(duì)比仿真結(jié)果
圖4(b)反映兩種協(xié)議對(duì)于不同的業(yè)務(wù)量的吞吐量性能,在業(yè)務(wù)量較小時(shí),兩協(xié)議的吞吐量隨著業(yè)務(wù)量的增大而增大,ALOHA吞吐性能與MACAW協(xié)議的吞吐性能相當(dāng),當(dāng)業(yè)務(wù)量增大到一定程度時(shí),分組碰撞增多,兩協(xié)議的網(wǎng)絡(luò)吞吐量趨于緩慢減小,但ALOHA先趨于減小的趨勢(shì),且MACAW協(xié)議吞吐量的最大值高于ALOHA協(xié)議。
圖4(c)表明兩種協(xié)議在不同業(yè)務(wù)量下的能量消耗性能。業(yè)務(wù)量較小時(shí),MACAW協(xié)議的能耗稍大于ALOHA協(xié)議,當(dāng)業(yè)務(wù)量較高時(shí),ALOHA協(xié)議的性能下降,其能耗明顯高于MACAW協(xié)議。
從本文的網(wǎng)絡(luò)仿真結(jié)果可知,由于水聲信道的傳輸時(shí)延長(zhǎng)等特性,對(duì)于數(shù)據(jù)業(yè)務(wù)量較低的水聲網(wǎng)絡(luò),由于碰撞概率低,采用技術(shù)簡(jiǎn)單的ALOHA協(xié)議可以達(dá)到較優(yōu)的性能;而對(duì)于數(shù)據(jù)業(yè)務(wù)量較高的水聲通信網(wǎng)絡(luò),采用MACAW協(xié)議將達(dá)到更優(yōu)的網(wǎng)絡(luò)性能。水聲通信網(wǎng)絡(luò)由于受其節(jié)點(diǎn)能耗的限制,故協(xié)議中能耗是需要考慮的重要問(wèn)題,而MACAW協(xié)議還有很大的優(yōu)化空間,可結(jié)合Seaweb項(xiàng)目已采用的選擇性重傳(SRQ)機(jī)制進(jìn)一步優(yōu)化。
[1]Sozer E M,Stojanovic M,Proakis J G.Underwater acoustic networks[J].Oceanic Engineering,2000,25(1):72-83.
[2]馮 霏,高 翔,李 霞.水聲通信網(wǎng)MAC層協(xié)議分析與仿真[J].聲學(xué)與電子工程,2007,85(1):26-30.
[3]聶景楠.多址通信及其接入控制技術(shù)[M].北京:人民郵電出版社,2006.
[4]高明生,陸佶人,姜衛(wèi)東.一種并行傳輸?shù)乃旳d hoc網(wǎng)絡(luò)多址接入(PTMA)協(xié)議[J].電子學(xué)報(bào),2005,33(7):1271-1274.
[5]孫 博.淺海水聲自組網(wǎng)之路由協(xié)議研究[D].廈門(mén):廈門(mén)大學(xué),2007.
[6]焦永革,曾昭文.一種用于水聲通信網(wǎng)的多址接入?yún)f(xié)議[J].廈門(mén)大學(xué)學(xué)報(bào),2007,46(z2):156-158.