類延增,劉廣鐘,徐 明(上海海事大學(xué) 信息工程學(xué)院,上海 201306)
基于水聲傳感網(wǎng)絡(luò)的樹形拓?fù)浠旌螹AC協(xié)議*
類延增,劉廣鐘,徐 明
(上海海事大學(xué)信息工程學(xué)院,上海 201306)
鑒于水下傳感網(wǎng)絡(luò)的長時延、低帶寬的特點(diǎn),設(shè)計(jì)有效的水下無線網(wǎng)絡(luò)的通信傳輸協(xié)議很有必要。提出一種樹形拓?fù)浣Y(jié)構(gòu)的結(jié)合基于競爭和基于分配兩種模式的混合策略,減少了水聲通信中的握手次數(shù),即減少了RTS/CTS請求的發(fā)送次數(shù),利用組播、LRU預(yù)留時間策略提高了傳輸效率,整合了網(wǎng)絡(luò)通信中ACK包和數(shù)據(jù)包的發(fā)送,既能使所有節(jié)點(diǎn)間實(shí)現(xiàn)自由通信,又能提高網(wǎng)絡(luò)吞吐量、節(jié)約能耗。
水聲傳感網(wǎng)絡(luò);組播;加密;延長階段;保留時間
如今“智慧城市”、“智慧港口”、“智慧家居”等概念不斷提出并完善,其中無線通信技術(shù)作為一條核心紐帶聯(lián)通了客戶與無線設(shè)備,陸地?zé)o線通信技術(shù)的成熟,帶動了水下無線傳感技術(shù)的發(fā)展。無線傳感技術(shù)在海洋環(huán)境檢測、海底礦物探測、海洋水下搜尋、海洋數(shù)據(jù)采集、水下機(jī)器人作業(yè)任務(wù)中都起到重要的作用。
水聲通信是目前水下傳感技術(shù)的主要方式,存在傳播時延長、帶寬有限這兩個主要不足,除此之外,流動性、水流速度、水的混濁程度等都對通信能力造成影響,使得水聲傳感網(wǎng)絡(luò)的吞吐量變低、誤碼率變高、通信質(zhì)量下降。水聲通信協(xié)議的研究旨在通過協(xié)議避免沖突的發(fā)生,提高通信效率,節(jié)約通信能量。水聲通信協(xié)議與陸地?zé)o線傳感網(wǎng)絡(luò)一樣,主要分為基于競爭和基于分配的兩大類。
[1]是基于樹形拓?fù)浣Y(jié)構(gòu)實(shí)現(xiàn)的,該協(xié)議引入了馬爾可夫決策過程,使每個子節(jié)點(diǎn)通過馬爾可夫決策過程決定下一次傳輸需要的傳送時長,發(fā)出請求,父節(jié)點(diǎn)結(jié)合自身時間片和子節(jié)點(diǎn)請求安排合理的傳送時間和時長,子節(jié)點(diǎn)分配進(jìn)行數(shù)據(jù)的傳送,均衡節(jié)點(diǎn)的負(fù)載,使網(wǎng)絡(luò)達(dá)到平衡。ROSS[2]也是一個在樹形分層拓?fù)渲性O(shè)計(jì)的協(xié)議,通過引入睡眠模式實(shí)現(xiàn)節(jié)能,利用自上而下的時間片決策確定各個節(jié)點(diǎn)的傳送時間片,時間片決策達(dá)到平衡后,每個周期按照平衡時的狀態(tài)循環(huán)工作。ROSS協(xié)議的實(shí)現(xiàn)簡便易懂,缺點(diǎn)是協(xié)議的環(huán)境是完全靜態(tài)的網(wǎng)絡(luò),無法動態(tài)地調(diào)整網(wǎng)絡(luò)狀態(tài),在ROSS協(xié)議中,也沒有采用ACK應(yīng)答機(jī)制。但此協(xié)議減少了握手次數(shù),實(shí)現(xiàn)了節(jié)能效果。這兩個協(xié)議作為樹形網(wǎng)絡(luò)的典型代表,都只是實(shí)現(xiàn)了單向傳輸,無法實(shí)現(xiàn)簇內(nèi)節(jié)點(diǎn)的通信。
S-FAMA[3]、ST-MAC[4]、ESC[5]、R-MAC[6]等協(xié)議也都在水聲通信環(huán)境中實(shí)現(xiàn)了優(yōu)秀的效果,其中S-FAMA著力解決了隱藏終端的問題,通過對RTS/CTS設(shè)置保留時間,達(dá)到避免隱藏終端沖突的問題。這些協(xié)議大都允許網(wǎng)絡(luò)節(jié)點(diǎn)的自由通信,頻繁的握手使得需要在耗能方面做出妥協(xié)。
在樹形拓?fù)渲?,要?shí)現(xiàn)一個簇集的簇內(nèi)通信,經(jīng)過對比設(shè)計(jì),在拓?fù)浣Y(jié)構(gòu)中增加一個簇首節(jié)點(diǎn),稱這個節(jié)點(diǎn)為內(nèi)簇首節(jié)點(diǎn),原來的簇首稱作外簇首節(jié)點(diǎn),分別利用不同的簇首進(jìn)行簇內(nèi)和簇外通信,拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 改造后的簇結(jié)構(gòu)
協(xié)議Ordered-CSMA[7]中提出,無線傳感信號是同心圓狀的發(fā)射波,一個節(jié)點(diǎn)在向其中遠(yuǎn)端節(jié)點(diǎn)發(fā)送完信息后,不需要等待其接收完畢,即可向近端節(jié)點(diǎn)發(fā)出信號。如圖2所示,AB的距離小于AC的距離,A節(jié)點(diǎn)可以先向C節(jié)點(diǎn)發(fā)送數(shù)據(jù),A節(jié)點(diǎn)發(fā)送完后,不需要等待C節(jié)點(diǎn)接收完數(shù)據(jù)信息,可以緊接著向B節(jié)點(diǎn)發(fā)送數(shù)據(jù),兩部分?jǐn)?shù)據(jù)可以同時到達(dá)目的節(jié)點(diǎn)而不發(fā)生沖突,比傳統(tǒng)收到確認(rèn)信息后再次發(fā)出要節(jié)省時間。
圖2 無線信號傳播示意圖
利用這個特征,在子節(jié)點(diǎn)發(fā)出外部通信數(shù)據(jù)后,緊跟著發(fā)送內(nèi)部通信的數(shù)據(jù),內(nèi)簇首負(fù)責(zé)接收內(nèi)部通信的數(shù)據(jù),而外簇首負(fù)責(zé)接收需要發(fā)送到簇外和匯聚節(jié)點(diǎn)的信息,同理,內(nèi)外簇首任何一個可以先發(fā)送信息,當(dāng)另一個探測到信息發(fā)送完后可以緊接著發(fā)出自己的信息。內(nèi)節(jié)點(diǎn)需要協(xié)調(diào)多個簇內(nèi)節(jié)點(diǎn)間的信息,假設(shè)每個子節(jié)點(diǎn)的信息單獨(dú)傳送,需要多次握手協(xié)商、傳送,這里采用組播方式,所有簇內(nèi)子節(jié)點(diǎn)接收同一個信息包,每個子節(jié)點(diǎn)根據(jù)自己的信息分別留取和分析屬于自己的數(shù)據(jù)段,但是存在多個子節(jié)點(diǎn)給同一個兄弟節(jié)點(diǎn)發(fā)送信息的情況,內(nèi)簇首需要對接收到的信息進(jìn)行整合,把目的地址相同的數(shù)據(jù)整合在同一數(shù)據(jù)段發(fā)送??紤]到信息安全問題,后面需要論述加密機(jī)制。
在水下環(huán)境中,通信節(jié)點(diǎn)具有時空流動性,節(jié)點(diǎn)與簇首節(jié)點(diǎn)間的距離容易出現(xiàn)變動,就使得節(jié)點(diǎn)與簇首節(jié)點(diǎn)間的距離存在不確定性。針對這個問題,讓兩個簇首節(jié)點(diǎn)位置上無限靠近,在時間上采取相鄰發(fā)送,取極限狀態(tài),采用同一個簇首來完成內(nèi)外信息的交互,如圖3所示即是最終采用的簇結(jié)構(gòu)。
圖3 樹形拓?fù)涞囊粋€簇集
根據(jù)ROSS和Z-MAC[8]的沖突避免機(jī)制,如圖4所示,本協(xié)議在 RTS/CTS初始化階段,簡單地采用自上而下的交叉的TDMA有序分配,為每個節(jié)點(diǎn)分配發(fā)送RTS請求的時間片,分配完成后,在以后每個發(fā)送周期中都固定不變。每個節(jié)點(diǎn)需要發(fā)送數(shù)據(jù)時,在向簇首節(jié)點(diǎn)發(fā)送RTS包申請時間片時,只能在其分配好的RTS申請時間點(diǎn)發(fā)送RTS包。簇首節(jié)點(diǎn)根據(jù)具體的子節(jié)點(diǎn)請求和節(jié)點(diǎn)間的距離,合理分配數(shù)據(jù)傳輸?shù)臅r間片。
圖4 簇集通信初始化示意圖
考慮到信息傳輸?shù)陌踩裕诰W(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)初始化時,每個子節(jié)點(diǎn)都需要把自己的公有密鑰發(fā)送給簇首節(jié)點(diǎn),簇首節(jié)點(diǎn)和子節(jié)點(diǎn)之間建立非對稱加密算法,目的是在內(nèi)部通信階段,簇首節(jié)點(diǎn)針對不同子節(jié)點(diǎn)的信息,利用其公鑰進(jìn)行加密,每個收到信息的子節(jié)點(diǎn)通過自己的私鑰對信息進(jìn)行解密,避免了節(jié)點(diǎn)惡意獲取其他節(jié)點(diǎn)信息。
數(shù)據(jù)包的格式如圖5所示。在這種數(shù)據(jù)包格式下,在包頭標(biāo)記中,需要表明每個節(jié)點(diǎn)的順序,而且包含了每個節(jié)點(diǎn)的數(shù)據(jù)長度,方便獲取屬于自己的數(shù)據(jù)段。其中,每個子節(jié)點(diǎn)信息經(jīng)過整理,包含了多個發(fā)送方的數(shù)據(jù)和標(biāo)記信息等。其中,Distart表示屬于第 i個節(jié)點(diǎn)的數(shù)據(jù)的物理起始位置,Ltag是包頭標(biāo)記信息的長度,Lj、Li表示第j個和第 i個節(jié)點(diǎn)的數(shù)據(jù)長度,相應(yīng)的 Diend表示第 i節(jié)點(diǎn)數(shù)據(jù)的結(jié)束位置。
圖5 簇首數(shù)據(jù)包格式
本協(xié)議只為發(fā)送RTS請求的節(jié)點(diǎn)分配數(shù)據(jù)發(fā)送時間片,其他時間處于睡眠狀態(tài)。為了實(shí)現(xiàn)這個目標(biāo)的同時減少握手的能耗,采用預(yù)留時間片機(jī)制。與協(xié)議SFAMA[3]和CSMA/CA中預(yù)留時間的概念不同,本協(xié)議采用的預(yù)留時間片策略,將橫向擴(kuò)展改為縱向擴(kuò)展,即預(yù)留的時間不是在本次的傳輸時長上延長,而是在次數(shù)上進(jìn)行預(yù)留。在這個時間周期內(nèi),如果子節(jié)點(diǎn)B向簇首節(jié)點(diǎn)發(fā)送請求并得到了許可,在接下來的n個時間周期中,默認(rèn)節(jié)點(diǎn)B不需要再次發(fā)送請求就可以直接進(jìn)行傳輸,稱B節(jié)點(diǎn)處于延長階段。只是簇首節(jié)點(diǎn)還要在RTS/ CTS階段進(jìn)入監(jiān)聽狀態(tài),而子節(jié)點(diǎn)在未收到時間片終結(jié)信號的情況下,可以處于睡眠狀態(tài)。
有新的節(jié)點(diǎn)發(fā)出傳輸請求時,采用內(nèi)存管理中用到的經(jīng)典算法——LRU算法。LRU(Least Recently Used),最近最久未使用算法,在內(nèi)存分配時,因?yàn)閮?nèi)存空間有限,一些資源不方便一次性全部調(diào)入內(nèi)存中,LRU算法把內(nèi)存中距離現(xiàn)在最長時間未使用的資源空間替換為接下來需要用到的新的資源,以剔除掉最沒有可能傳輸數(shù)據(jù)的節(jié)點(diǎn)。
具體優(yōu)先級別規(guī)定如下:
Pidle〉Pextend〉Pfirst(3)其中,Pidle是空閑階段優(yōu)先級,Pextend是延長階段的優(yōu)先級,Pfirst表示首次正常傳輸?shù)膬?yōu)先級。當(dāng)對比的優(yōu)先級相同時,需要看節(jié)點(diǎn)申請連接的順序,最早申請連接的節(jié)點(diǎn)具有最高優(yōu)先級,最容易被替換。
實(shí)現(xiàn)算法的偽代碼如下:
如圖6,B點(diǎn)發(fā)送了新的數(shù)據(jù)連接請求,簇首節(jié)點(diǎn)A在檢索自己的接收時間后,發(fā)現(xiàn)沒有合適的空閑時間分配給B節(jié)點(diǎn),D節(jié)點(diǎn)正處于延長階段,而D節(jié)點(diǎn)在本周期沒有發(fā)送數(shù)據(jù),簇首節(jié)點(diǎn)只能處于空等狀態(tài)。A節(jié)點(diǎn)檢索對比后發(fā)現(xiàn),可以把D節(jié)點(diǎn)的時間段經(jīng)過調(diào)整分配給B節(jié)點(diǎn)傳送數(shù)據(jù)。A節(jié)點(diǎn)在接下來進(jìn)行組播,要在給D節(jié)點(diǎn)的數(shù)據(jù)包中說明下個階段開始斷開其連接,而在給B節(jié)點(diǎn)的數(shù)據(jù)中,說明給B節(jié)點(diǎn)協(xié)調(diào)的傳送時間。
圖6 一個典型的時間階段
總結(jié)本協(xié)議的特點(diǎn),首先協(xié)議基于樹形分層拓?fù)浣Y(jié)構(gòu)使得網(wǎng)絡(luò)中節(jié)點(diǎn)的信息交換分區(qū)域聚合,在小區(qū)域內(nèi)達(dá)到較高的通信效率,對LEACH協(xié)議和ROSS協(xié)議經(jīng)過改進(jìn)后,實(shí)現(xiàn)了網(wǎng)絡(luò)中各節(jié)點(diǎn)相互通信的要求;利用簇首和子節(jié)點(diǎn)把簇內(nèi)通信信息和簇外通信信息進(jìn)行整合,簇首的加密組播模式避免了信號沖突、重復(fù)多次握手的耗能浪費(fèi);傳輸階段舍棄了ROSS中完全靜態(tài)的任務(wù)循環(huán)重復(fù)模式,采用預(yù)留時間片模式,在盡量減少握手的情況下,保持網(wǎng)絡(luò)中節(jié)點(diǎn)的高效通信。協(xié)議中用到了LRU算法,定義協(xié)議名稱為LRU-MAC。
在MATLAB中用實(shí)驗(yàn)驗(yàn)證協(xié)議的效果,對比RMAC和ROSS的模擬環(huán)境,將一個數(shù)據(jù)包仿真的接收消耗、發(fā)送消耗和睡眠消耗分別設(shè)定為13 mW、24 mW和15 μW,傳輸一個數(shù)據(jù)幀的速率為1 000 kb/s,水聲傳播速度為 1 500 m/s。RTS包包含請求地址、位置信息等,大小為 100 bit,數(shù)據(jù)幀大小為 2 000 bit,每個周期為200 ms。
通過實(shí)驗(yàn)?zāi)M,首先確定LRU算法中n的合適數(shù)值。經(jīng)對比,網(wǎng)絡(luò)平均耗能和網(wǎng)絡(luò)吞吐量方面的性能會隨著n值的增大而提高,這是因?yàn)閚值變大,協(xié)議中平均的RTS請求變少,平均握手次數(shù)減少,使得耗能和吞吐量開始變優(yōu)。但當(dāng)n值過大時會造成LRU算法頻繁置換,耗能和吞吐量方面的性能反而會下降,如圖7、圖8所示,可以看到在模擬環(huán)境中,當(dāng)n取值為4時,吞吐量和網(wǎng)絡(luò)耗能處于最佳狀態(tài)。
圖7 n取不同值時的平均耗能
圖8 n取不同值時的平均吞吐量
本協(xié)議通過模擬實(shí)驗(yàn),在吞吐量和能耗方面與RMAC和 ROSS兩個協(xié)議作了對比。ROSS只是在靜態(tài)環(huán)境中實(shí)現(xiàn),在能耗上是省去了每個周期發(fā)送RTS和ACK包的能耗,但其無法實(shí)現(xiàn)簇內(nèi)節(jié)點(diǎn)的通信,在功能全面的協(xié)議中,本協(xié)議在平均吞吐量和能耗上有明顯的改進(jìn)。具體對比如圖9、圖10所示。
圖9 不同協(xié)議間的平均耗能
圖9中,R-MAC初始化網(wǎng)絡(luò)不需要所有的節(jié)點(diǎn)都發(fā)送初始化數(shù)據(jù)包,初始組網(wǎng)耗能相對于ROSS和LRU-MAC較少,而ROSS和LRU-MAC的初始化是相似的,子節(jié)點(diǎn)都需要向簇首節(jié)點(diǎn)發(fā)送信息,耗能都比RMAC高。隨著網(wǎng)絡(luò)負(fù)載增大,R-MAC需要頻繁地進(jìn)行握手、避免沖突、探測信道,耗能迅速上升并超過其他兩個協(xié)議,而ROSS作為靜態(tài)網(wǎng)絡(luò)不需要再次握手,能耗相對平穩(wěn)。LRU-MAC需要偶爾握手,它的耗能雖然比ROSS高,但比可以自由通信的同類協(xié)議R-MAC要節(jié)約耗能。
本協(xié)議結(jié)合無線信號同方向依次傳播不會發(fā)生碰撞的特性,采用組播、LRU預(yù)留時間片策略,在吞吐量和耗能方面進(jìn)行了優(yōu)化。LRU-MAC協(xié)議減少了每次單獨(dú)發(fā)送RTS和ACK包的負(fù)載,在平均吞吐量方面對比于ROSS、R-MAC協(xié)議都有很大的提升,在能耗方面明顯比R-MAC要優(yōu)秀,雖然ROSS平均能耗較小,但本協(xié)議在簇首節(jié)點(diǎn)傳輸給子節(jié)點(diǎn)的信息中整合了ACK包,減小了數(shù)據(jù)傳輸?shù)恼`碼率。
本文提出并設(shè)計(jì)了一種新的LRU-MAC協(xié)議,該協(xié)議結(jié)合傳統(tǒng)水下無線傳感網(wǎng)絡(luò)和典型的樹形分層拓?fù)渚W(wǎng)絡(luò)各取所長設(shè)計(jì)而成,在總體上以減少節(jié)點(diǎn)間的握手次數(shù)、空閑時間休眠為手段,通過實(shí)驗(yàn)對比,證明新的協(xié)議在網(wǎng)絡(luò)平均吞吐量和平均耗能方面都有改進(jìn),表現(xiàn)良好,最重要的一點(diǎn)是,本協(xié)議突破了傳統(tǒng)樹形分層拓?fù)渚W(wǎng)絡(luò)只單向傳輸?shù)奶攸c(diǎn),同時實(shí)現(xiàn)了簇內(nèi)和簇外傳輸。
但是本協(xié)議也存在一些弊端需要克服,比如簇首節(jié)點(diǎn)的負(fù)載要比普通子節(jié)點(diǎn)高很多,容易造成簇首節(jié)點(diǎn)比子節(jié)點(diǎn)提早完成壽命,這個問題在參考文獻(xiàn)[9]中提出了一種解決方法,簇首節(jié)點(diǎn)的工作機(jī)制也較為復(fù)雜,這些問題還要進(jìn)一步解決。
參考文獻(xiàn)
[1]JITHIN J,SAJI A,HOVANNES K,et al.A hybrid MAC protocol with channel-dependent optimized scheduling for clustered underwater acoustic sensor networks[C].Proceedings of the 8th ACM International Conference on Underwater Networks and Systems,WUWNet 2013,DOI:10.1145/ 2532378.2532382.
[2]Hong Lu,Hong Feng,Yang Bozhen,et al.ROSS:Receiver oriented sleep scheduling for underwater sensor networks [C].Proceedings of the 8th ACM International Conference on UnderwaterNetworksand Systems, WUWNet2013,DOI:10.1145/2532378.2532396.
[3]MOLINS M,STOJANOVIC M.Slotted FAMA:A MAC protocol for underwater acoustic networks[C].16th IEEE International Symposium on the Applications of Ferroelectrics,ISAF,2006,DOI:10.1109/OCEANSAP.2006.4393832.
[4]HSU C C,LAI K F,CHOU C F,et al.ST-MAC:spatial-temporal MAC scheduling for underwater sensor networks[C].Proceedings IEEE INFOCOM,2009:1827-1835.
[5]Hong Lu,Hong Feng,Guo Zhongwen,et al.ECS:effcient communication scheduling for underwater sensor networks[J].Sensors,2011,11(3):2920-2938.
[6]Xie Peng,Cui Junhong.R-MAC:an energy-efficient MAC protocol for underwater sensor networks[C].In the Second International Conference on Wireless Algorithms,Systems and Applications(WASA 2007),2007:187-195.
[7]Chen Yinjun,Wang Haoli.Ordered CSMA:a collision-free MAC protocol for underwater acoustic networks[C].Oceans Conference Record(IEEE),2007,Oceans 2007 MTS/IEEE Conference,DOI:10.1109/OCEANS.2007.4449386.
[8]RHEE I,WARRIER A, AIA M,et al.Z-MAC:a hybrid MAC forwirelesssensornetworks[J].IEEE/ACM Transactions on Networking(TON),2008,16(3):511-524.
[9]劉廣鐘,耿偉.水聲傳感器網(wǎng)絡(luò)分簇路由協(xié)議研究[J].微型機(jī)與應(yīng)用,2012,31(8):44-47.
A hybrid MAC protocol in the tree topology based on the underwater acoustic sensor networks
Lei Yanzeng,Liu Guangzhong,Xu Ming
(Information Engineering College,Shanghai Maritime University,Shanghai 201306,China)
According to the features of long delay and low-bandwidth in the underwater sensor networks,designing an effective underwater wireless communication network transporting protocol is necessary.This paper presents a combined protocol in a tree topology,which mixes competition modes and allocation strategy.The strategy reduces underwater acoustic communication handshakes and the numbers of transmissions of RTS/CTS requests by multicast and LRU reservation.That greatly improves transmission efficiency.By integrating the data packet and the ACK packet,the protocol not only achieves freedom communication between all nodes but also improves network throughput and energy-saving effect.
underwater acoustic sensor networks;multicast;encryption;last longer time;reserved time
TN929.3
A
1674-7720(2015)15-0071-04
類延增,劉廣鐘,徐明.基于水聲傳感網(wǎng)絡(luò)的樹形拓?fù)浠旌螹AC協(xié)議[J].微型機(jī)與應(yīng)用,2015,34(15):71-74.
2015-03-03)
類延增(1989-),男,碩士研究生,主要研究方向:水下聲傳感網(wǎng)絡(luò)。
劉廣鐘(1962-),男,博士,教授,主要研究方向:水下聲傳感器網(wǎng)絡(luò)、分布式計(jì)算。
徐明(1977-),男,博士,副教授,主要研究方向:水下聲傳感器網(wǎng)絡(luò)。
上海市教委創(chuàng)新項(xiàng)目資助(12ZZ151)