《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于接收端信號的水聲網(wǎng)絡(luò)MAC協(xié)議
基于接收端信號的水聲網(wǎng)絡(luò)MAC協(xié)議
2016年微型機(jī)與應(yīng)用第15期
王希陽,姜?jiǎng)倜?,楊愷?/div>
(上海海事大學(xué) 信息工程學(xué)院, 上海 201306)
摘要: 水聲網(wǎng)絡(luò)的信道具有數(shù)據(jù)速率低以及傳播時(shí)延長的特點(diǎn),如果采用握手機(jī)制減少數(shù)據(jù)沖突,將降低信道利用率和網(wǎng)絡(luò)的吞吐量。提出了一種基于接收節(jié)點(diǎn)發(fā)送短信號告知鄰居節(jié)點(diǎn)其接收狀態(tài)的水聲網(wǎng)絡(luò)MAC協(xié)議,即當(dāng)接收節(jié)點(diǎn)接收數(shù)據(jù)時(shí),向鄰居節(jié)點(diǎn)發(fā)送短信號通知其當(dāng)前時(shí)刻不要發(fā)送數(shù)據(jù),解決了隱藏終端和暴露終端的問題,并提高了網(wǎng)絡(luò)吞吐量;除此之外,使用短信號還能夠降低能量損耗。仿真結(jié)果表明該協(xié)議能夠?qū)崿F(xiàn)上述目的。
Abstract:
Key words :

  王希陽,姜?jiǎng)倜鳎瑮類鸾?/p>

 ?。ㄉ虾:J麓髮W(xué) 信息工程學(xué)院, 上海 201306)

      摘要水聲網(wǎng)絡(luò)的信道具有數(shù)據(jù)速率低以及傳播時(shí)延長的特點(diǎn),如果采用握手機(jī)制減少數(shù)據(jù)沖突,將降低信道利用率和網(wǎng)絡(luò)的吞吐量。提出了一種基于接收節(jié)點(diǎn)發(fā)送短信號告知鄰居節(jié)點(diǎn)其接收狀態(tài)的水聲網(wǎng)絡(luò)MAC協(xié)議,即當(dāng)接收節(jié)點(diǎn)接收數(shù)據(jù)時(shí),向鄰居節(jié)點(diǎn)發(fā)送短信號通知其當(dāng)前時(shí)刻不要發(fā)送數(shù)據(jù),解決了隱藏終端和暴露終端的問題,并提高了網(wǎng)絡(luò)吞吐量;除此之外,使用短信號還能夠降低能量損耗。仿真結(jié)果表明該協(xié)議能夠?qū)崿F(xiàn)上述目的。

  關(guān)鍵詞:信號;接收端;水聲網(wǎng)絡(luò);MAC協(xié)議

0引言

  對于共享媒介網(wǎng)絡(luò),節(jié)點(diǎn)需要媒體接入控制協(xié)議控制接入共享信道。共享媒介網(wǎng)絡(luò)中的隱藏終端和暴露終端問題導(dǎo)致網(wǎng)絡(luò)吞吐量大大降低。陸地上的無線網(wǎng)絡(luò)主要有兩種方法緩解隱藏終端,一種是采用握手機(jī)制,如MACA[1]協(xié)議;另一種是通過發(fā)送忙信號機(jī)制,基于這種機(jī)制的MAC協(xié)議有BTMA[2]、RIBTMA[3]和DBTMA[4]。

  目前已有許多MAC協(xié)議可以解決陸地上無線網(wǎng)絡(luò)的數(shù)據(jù)沖突,但是由于陸地上的MAC協(xié)議設(shè)計(jì)是以無線電波作為傳播媒介,傳播時(shí)延非常小,幾乎可以忽略,并且可用帶寬范圍很大,然而水下無線通信傳播時(shí)延長、可用帶寬非常窄,導(dǎo)致這些適用于陸地上的MAC協(xié)議不能直接應(yīng)用到水下無線網(wǎng)絡(luò)。水下通信主要是通過聲波作為通信媒介,而聲波在水中的傳播速度大約只有1 500 m/s,這導(dǎo)致了非常長的傳播時(shí)延。水聲信道的可用帶寬非常窄,只有幾到幾十千赫茲[5],如果再把信道劃分出一部分作為忙信號信道,就會(huì)降低信道利用率,所以利用忙信號信道發(fā)送忙信號解決數(shù)據(jù)沖突不適用于水聲信道。又由于水聲傳播時(shí)延長,對于基于握手機(jī)制的MAC協(xié)議也不適用于水下MAC協(xié)議。

  如果利用聲波信號解決數(shù)據(jù)沖突的問題,就會(huì)避免基于握手機(jī)制帶來的長時(shí)延,同時(shí)使用非常短的聲波信號作為控制信號,提高了信道的利用率。本文基于這種思想提出了一種新穎的水聲網(wǎng)絡(luò)MAC協(xié)議,稱為“基于接收端信號”的MAC協(xié)議(RSSP)。該協(xié)議的實(shí)現(xiàn)將在本文第2節(jié)闡述。

1相關(guān)工作

  當(dāng)前,對于水下MAC協(xié)議的研究并沒有陸地上MAC協(xié)議研究成熟,仍然處于研究的初期階段。由于水聲信道的一些獨(dú)特的特點(diǎn),使得水下MAC協(xié)議設(shè)計(jì)面臨巨大挑戰(zhàn)。

  順序式CSMA[6]協(xié)議是一種無沖突的水聲網(wǎng)絡(luò)MAC協(xié)議。該協(xié)議結(jié)合了輪詢調(diào)度算法和CSMA協(xié)議。在該協(xié)議中,每個(gè)節(jié)點(diǎn)都以固定的順序發(fā)送數(shù)據(jù),不需要等待一個(gè)最大的傳播時(shí)延。該協(xié)議有效減少了數(shù)據(jù)包的沖突。但是每個(gè)節(jié)點(diǎn)需要一直偵聽信道和收到的所有的數(shù)據(jù)幀,這將增加能量損耗,并且只有輪詢到一個(gè)節(jié)點(diǎn)時(shí),該節(jié)點(diǎn)才能發(fā)送數(shù)據(jù)。

  TLohi[7]是一種在發(fā)送節(jié)點(diǎn)基于聲調(diào)競爭信道的水聲網(wǎng)絡(luò)MAC協(xié)議。在該協(xié)議中,發(fā)送一個(gè)數(shù)據(jù)包的時(shí)間被分成兩個(gè)部分,信道預(yù)定時(shí)間(RP)和數(shù)據(jù)發(fā)送時(shí)間。信道預(yù)定時(shí)間又被分成了許多競爭環(huán)(CR)。當(dāng)發(fā)送節(jié)點(diǎn)想要發(fā)送數(shù)據(jù)簽時(shí),在CR期間先發(fā)送一個(gè)聲調(diào)給鄰居節(jié)點(diǎn),如果沒有收到來自鄰居的聲調(diào),則該節(jié)點(diǎn)成功預(yù)定到信道,然后發(fā)送數(shù)據(jù)包。TLohi協(xié)議利用時(shí)空不確定性和高時(shí)延特性,檢測沖突和競爭信道的節(jié)點(diǎn)數(shù),來提高信道利用率,并降低能量損耗。但是該協(xié)議需要在競爭環(huán)內(nèi)處于空閑狀態(tài)監(jiān)聽信道,并且對于水聲信道的長時(shí)延特點(diǎn),一個(gè)競爭環(huán)的時(shí)間太長。

  在RIPT[8]協(xié)議中,提出了一種在接收節(jié)點(diǎn)使用握手機(jī)制的MAC協(xié)議。該協(xié)議根據(jù)水聲信道的長傳播時(shí)延特點(diǎn),在接收節(jié)點(diǎn)調(diào)度多個(gè)鄰居節(jié)點(diǎn)發(fā)送數(shù)據(jù)包的次序。這圖1RSSP協(xié)議流程圖樣能夠獲得高的吞吐量,同時(shí)也減緩了隱藏終端的問題。這個(gè)協(xié)議也有一些不足之處,采用接收節(jié)點(diǎn)調(diào)度多個(gè)發(fā)送節(jié)點(diǎn)發(fā)送數(shù)據(jù)順序的方法,需要非常復(fù)雜的流量預(yù)測算法,同時(shí)對于水下信道長的傳播時(shí)延,四路握手機(jī)制相對降低了信道的利用率。

2協(xié)議設(shè)計(jì)

  2.1協(xié)議概述

  本文提出的RSSP協(xié)議是一種基于競爭式的水下MAC協(xié)議。該協(xié)議是在接收節(jié)點(diǎn)通過發(fā)送一個(gè)不攜帶任何信息的短小信號,即通知信號(Notification Signal, NS), 通知鄰居節(jié)點(diǎn)當(dāng)前時(shí)刻不要發(fā)送數(shù)據(jù)。RSSP協(xié)議不需要像握手機(jī)制那樣在發(fā)送數(shù)據(jù)前,通過發(fā)送RTS/CTS控制包預(yù)定信道,而是在接收節(jié)點(diǎn)接收數(shù)據(jù)時(shí),向鄰居節(jié)點(diǎn)發(fā)送NS通知鄰居節(jié)點(diǎn)當(dāng)前正在接收數(shù)據(jù),當(dāng)鄰居節(jié)點(diǎn)接收到NS后不會(huì)向其他節(jié)點(diǎn)發(fā)送數(shù)據(jù)。從而解決了隱藏終端和暴露終端的問題,并提高了信道利用率。該協(xié)議的一個(gè)主要特點(diǎn)是通過信號解決隱藏終端和暴露終端的問題,發(fā)送信號而不是發(fā)送控制包(如RTS/CTS),這樣不僅提高了頻帶利用率,同時(shí)還降低了能量損耗,減小數(shù)據(jù)間的干擾。另外一個(gè)特點(diǎn)是由接收節(jié)點(diǎn)決定鄰居節(jié)點(diǎn)是否可以發(fā)送數(shù)據(jù),更有效地減少了數(shù)據(jù)的沖突。

  2.2協(xié)議工作過程

  當(dāng)接收節(jié)點(diǎn)接收數(shù)據(jù)時(shí)就向鄰居節(jié)點(diǎn)發(fā)送NS,表示接收節(jié)點(diǎn)當(dāng)前處于接收數(shù)據(jù)狀態(tài)。若鄰居節(jié)點(diǎn)偵聽到NS,則表示該鄰居節(jié)點(diǎn)的周圍存在處于接收數(shù)據(jù)的節(jié)點(diǎn);若沒有偵聽到NS,則表示該鄰居節(jié)點(diǎn)的周圍沒有存在處于接收數(shù)據(jù)狀態(tài)的節(jié)點(diǎn),如果該節(jié)點(diǎn)要發(fā)送數(shù)據(jù),那么可以發(fā)送MAC層隊(duì)列的數(shù)據(jù)。從而解決了隱藏終端和暴露終端的問題。RSSP協(xié)議流程圖如圖1所示,描述了節(jié)點(diǎn)發(fā)送數(shù)據(jù)包的過程。發(fā)送節(jié)點(diǎn)1競爭到信道,向接收節(jié)點(diǎn)1發(fā)送數(shù)據(jù)幀,接收節(jié)點(diǎn)1接收到來自發(fā)送節(jié)點(diǎn)1的數(shù)據(jù)幀后,如果發(fā)送節(jié)點(diǎn)1下一個(gè)數(shù)據(jù)幀的目的地址仍然是接收節(jié)點(diǎn)1,則接收節(jié)點(diǎn)1向鄰居節(jié)點(diǎn)(發(fā)送節(jié)點(diǎn)2、3)發(fā)送一個(gè)NS,發(fā)送節(jié)點(diǎn)2、3偵聽到NS后,不向其他節(jié)點(diǎn)發(fā)送數(shù)據(jù)。發(fā)送節(jié)點(diǎn)1等待一段時(shí)間Td后(其中Td=Tns+TSIFS,Tns為發(fā)送NS的時(shí)延,TSIFS為從接收狀態(tài)轉(zhuǎn)為發(fā)送狀態(tài)所需要的時(shí)間),向接收節(jié)點(diǎn)1發(fā)送下一個(gè)數(shù)據(jù)幀,當(dāng)發(fā)送節(jié)點(diǎn)1的下一個(gè)數(shù)據(jù)幀的目的地址不是接收節(jié)點(diǎn)1時(shí),接收節(jié)點(diǎn)1向發(fā)送節(jié)點(diǎn)1返回ACK確認(rèn)。

  2.2.1數(shù)據(jù)幀的幀頭

  在MAC層輸出隊(duì)列里,需要將數(shù)據(jù)幀進(jìn)行編號,如圖2所示。隊(duì)列里的數(shù)據(jù)幀根據(jù)目的地址進(jìn)行編序,如果有幾個(gè)連續(xù)的數(shù)據(jù)幀要發(fā)送到同一目的地址,則對這幾個(gè)連續(xù)數(shù)據(jù)幀由大到小編號,并在數(shù)據(jù)幀的幀頭里標(biāo)識該數(shù)據(jù)幀在連續(xù)隊(duì)列中的編號。接收節(jié)點(diǎn)根據(jù)數(shù)據(jù)幀頭中的編號決定向鄰居節(jié)點(diǎn)發(fā)送NS,還是向發(fā)送節(jié)點(diǎn)返回ACK確認(rèn)包。如果數(shù)據(jù)幀頭中的編號不為1,則接收節(jié)點(diǎn)向鄰居節(jié)點(diǎn)發(fā)送一個(gè)NS,否則接收節(jié)點(diǎn)向發(fā)送節(jié)點(diǎn)返回ACK確認(rèn)包?! ?/p>

002.jpg

  2.2.2接收節(jié)點(diǎn)發(fā)送通知信號

  當(dāng)一個(gè)節(jié)點(diǎn)接收到數(shù)據(jù)時(shí),首先根據(jù)數(shù)據(jù)包的包頭信息中數(shù)據(jù)幀的編號,決定向鄰居節(jié)點(diǎn)發(fā)送一個(gè)NS還是一個(gè)ACK確認(rèn)包。如果編號為1,接收節(jié)點(diǎn)向發(fā)送節(jié)點(diǎn)發(fā)送一個(gè)ACK確認(rèn)包,然后該節(jié)點(diǎn)處于空閑狀態(tài);如果編號不為1,則表明發(fā)送節(jié)點(diǎn)的下一個(gè)數(shù)據(jù)包也是發(fā)送給當(dāng)前的接收節(jié)點(diǎn),此時(shí)接收節(jié)點(diǎn)向其鄰居節(jié)點(diǎn)發(fā)送一個(gè)NS,通知其鄰居節(jié)點(diǎn),該節(jié)點(diǎn)正在接收數(shù)據(jù)。鄰居節(jié)點(diǎn)接收到NS后,知道該節(jié)點(diǎn)正處于數(shù)據(jù)接收狀態(tài),此時(shí)如果鄰居節(jié)點(diǎn)有數(shù)據(jù)要發(fā)送,則退避等待該節(jié)點(diǎn)接收完數(shù)據(jù)。這樣就實(shí)現(xiàn)了接收節(jié)點(diǎn)調(diào)度發(fā)送節(jié)點(diǎn)的數(shù)據(jù)發(fā)送。

  2.2.3數(shù)據(jù)的發(fā)送

  當(dāng)一個(gè)節(jié)點(diǎn)要發(fā)送數(shù)據(jù)時(shí),該節(jié)點(diǎn)首先偵聽是否有來自鄰居節(jié)點(diǎn)的NS,如果收到來自鄰居節(jié)點(diǎn)的NS,則該節(jié)點(diǎn)等待一段時(shí)間 (Wait Period, WP),等待時(shí)間WP=τmax+Tns+TSIFS,其中τmax為到鄰居的最大傳播時(shí)延。如果在WP后沒有收到NS,則該節(jié)點(diǎn)發(fā)送數(shù)據(jù),否則繼續(xù)上述過程。如果在要發(fā)送數(shù)據(jù)時(shí)沒有收到來自鄰居節(jié)點(diǎn)的NS,該節(jié)點(diǎn)需要等待一個(gè)WP時(shí)間,WP時(shí)間后如果沒有收到來自鄰居節(jié)點(diǎn)的NS,則該節(jié)點(diǎn)開始發(fā)送數(shù)據(jù)。如果收到鄰居的NS,繼續(xù)重復(fù)上述過程。當(dāng)發(fā)送節(jié)點(diǎn)發(fā)送數(shù)據(jù)包的編號為1時(shí),發(fā)送完該數(shù)據(jù)包后,等待目的節(jié)點(diǎn)返回ACK確認(rèn)包;當(dāng)數(shù)據(jù)包的編號不為1時(shí),發(fā)送節(jié)點(diǎn)等待Td后發(fā)送下一個(gè)數(shù)據(jù)幀,直到當(dāng)前發(fā)送的數(shù)據(jù)幀的編號為1后,發(fā)送節(jié)點(diǎn)等待目的節(jié)點(diǎn)返回ACK確認(rèn)包。

3仿真和結(jié)果分析

  3.1仿真場景及參數(shù)

  本文將對RSSP在靜態(tài)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的網(wǎng)絡(luò)吞吐量、掉包率和時(shí)延3個(gè)方面進(jìn)行分析,并與現(xiàn)有的基于CSMA的MAC協(xié)議作對比。在靜態(tài)網(wǎng)絡(luò)拓?fù)渲?,任意?jié)點(diǎn)隨機(jī)分布在1 000 m×1 000 m的范圍內(nèi),節(jié)點(diǎn)的發(fā)包率服從λ的泊松分布,水聲傳播速度為1 500 m/s,數(shù)據(jù)傳輸速率為4 000 b/s,數(shù)據(jù)包的長度為256 B。本文的仿真是對MAC協(xié)議的性能進(jìn)行分析,所以所有數(shù)據(jù)包的丟失都是由于MAC協(xié)議性能所導(dǎo)致。本文使用3個(gè)指標(biāo)評價(jià)MAC協(xié)議的性能。

  (1)網(wǎng)絡(luò)吞吐量:在單位時(shí)間內(nèi)所收到的數(shù)據(jù)包的字節(jié)數(shù)。

  P3E[~0G5KBBPZT7A)3`PH3T.png

 ?。?)端到端延遲:所有數(shù)據(jù)包產(chǎn)生的時(shí)間與目的節(jié)點(diǎn)接收成功的時(shí)間差的平均值。

  (3)掉包率:接收到數(shù)據(jù)包個(gè)數(shù)與發(fā)送數(shù)據(jù)包個(gè)數(shù)的比值。

  3.2仿真結(jié)果

  如圖3所示,當(dāng)負(fù)載很小時(shí),隨著負(fù)載的增加兩種協(xié)議吞吐量相差不大。由于當(dāng)負(fù)載很小時(shí),數(shù)據(jù)包的沖突很小,所以此時(shí)兩種協(xié)議的性能差不多。但是當(dāng)負(fù)載大于0.01時(shí),RSSP協(xié)議的吞吐量明顯比CSMA的高。這是因?yàn)楫?dāng)負(fù)載不斷增大時(shí), CSMA協(xié)議因隱藏終端而導(dǎo)致的數(shù)據(jù)包的沖突數(shù)量不斷增加。RSSP協(xié)議利用NS極大程度地減緩了隱藏終端的問題,使得吞吐量有了很大的提高。

003.jpg

  圖4所示為RSSP協(xié)議與CSMA協(xié)議的掉包率的比較。仿真結(jié)果中,隨著負(fù)載的增加,RSSP協(xié)議與CSMA協(xié)議的掉包率也隨之增加。但是當(dāng)負(fù)載大于0.01時(shí),RSSP協(xié)議的掉包率明顯小于CSMA協(xié)議。這也表明了通過在接收節(jié)點(diǎn)發(fā)送通知信號來控制發(fā)送節(jié)點(diǎn)發(fā)送數(shù)據(jù)很大程度上減少了數(shù)據(jù)的沖突,降低了掉包率。雖然RSSP協(xié)議采用接收節(jié)點(diǎn)發(fā)送通知信號的方法能夠在很大程度上緩解隱藏終端的問題,但是它不能完全解決隱藏終端問題,所以RSSP協(xié)議還是有一定的掉包率。

 

  在圖5對比了RSSP協(xié)議與CSMA協(xié)議的時(shí)延。當(dāng)負(fù)載很小時(shí),特別在負(fù)載小于0.005時(shí),RSSP協(xié)議的時(shí)延要比CSMA協(xié)議大,這是由于當(dāng)負(fù)載很小時(shí),數(shù)據(jù)發(fā)生沖突的量很少,同時(shí)RSSP協(xié)議的發(fā)送節(jié)點(diǎn)在發(fā)送數(shù)據(jù)前需要等待一段時(shí)間預(yù)定信道,并且發(fā)送節(jié)點(diǎn)發(fā)送連續(xù)編號的數(shù)據(jù)幀時(shí),當(dāng)發(fā)送完一個(gè)數(shù)據(jù)幀時(shí),需要等待一段時(shí)間才能發(fā)送下一個(gè)數(shù)據(jù)幀,所以RSSP協(xié)議的時(shí)延要比CSMA協(xié)議的時(shí)延大。但是當(dāng)負(fù)載比較大時(shí),RSSP協(xié)議的時(shí)延要比CSMA協(xié)議的時(shí)延小,這是由于RSSP協(xié)議利用接收節(jié)點(diǎn)發(fā)送通知信號能夠極大地減少數(shù)據(jù)幀的沖突,使得其時(shí)延比CSMA協(xié)議的時(shí)延小。

4結(jié)論

  本文針對水聲網(wǎng)絡(luò)信道長且可變的傳播時(shí)延問題,為提高網(wǎng)絡(luò)吞吐量,提出了一種接收節(jié)點(diǎn)發(fā)送通知信號的方式來控制發(fā)送節(jié)點(diǎn)發(fā)送數(shù)據(jù)的MAC協(xié)議。其利用通知信號來告知鄰居節(jié)點(diǎn)當(dāng)前接收節(jié)點(diǎn)的狀態(tài),鄰居節(jié)點(diǎn)收到通知信號后,等待發(fā)送數(shù)據(jù)。并且該協(xié)議解決了由于長延遲所帶來的隱藏終端的問題。在最后的仿真中,分別對比了RSSP協(xié)議與經(jīng)典CDMA協(xié)議的吞吐量、掉包率和時(shí)延,比較結(jié)果表明RSSP協(xié)議能夠獲得比較高的吞吐量和比較低的掉包率。

參考文獻(xiàn)

  [1] KARN P. MACAa new channel access method for packet radio[C]. ARRL/CRRL Amateur Radio 9th Computer Networking Conference, 1990: 134140.

  [2] KLEINROCK L, TOBAGI F A. Packet switching in radio channels: Part I—carrier sense multipleaccess modes and their throughputdelay characteristics[J].Communications, IEEE Transactions on, 1975, 23(12): 14001416.

 ?。?] WU C S, LI V. Receiverinitiated busytone multiple access in packet radio networks[C]. ACM SIGCOMM Computer Communication Review, ACM, 1987: 336342.

  [4] DENG J, HAAS Z J. Dual busy tone multiple access (DBTMA): a new medium access control for packet radio networks[C]. Universal Personal Communications, 1998 ICUPC'98 IEEE 1998 International Conference on. IEEE, 1998: 973977.

 ?。?] AKYILDIZ I F, POMPILI D, MELODIA T. Underwater acoustic sensor networks: research challenges[J].Ad Hoc Networks, 2005, 3(3): 257279.

  [6] CHEN Y J, WANG H L. Ordered CSMA: a collisionfree MAC protocol for underwater acoustic networks[C]. OCEANS 2007. IEEE, 2007: 16.

 ?。?] SYED A A, YE W, HEIDEMANN J. TLohi: a new class of MAC protocols for underwater acoustic sensor networks[C]. INFOCOM 2008 the 27th Conference on Computer Communications IEEE, IEEE, 2008: 789797.

 ?。?] CHIRDCHOO N, SOH W S, CHUA K C. RIPT: a receiverinitiated reservationbased protocol for underwater acoustic networks[J].Selected Areas in Communications, IEEE Journal on, 2008, 26(9): 17441753.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。