文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.190884
中文引用格式: 任能. 基于YunSDR-Y450的BRNs網(wǎng)絡(luò)路由協(xié)議實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2019,45(9):71-76.
英文引用格式: Ren Neng. Implementation of BRNs routing protocol based on YunSDR-Y450[J]. Application of Electronic Technique,,2019,,45(9):71-76.
0 引言
無(wú)線網(wǎng)格網(wǎng)絡(luò)(Wireless Mesh Network)是基于Wi-Fi技術(shù)而發(fā)展出來(lái)的一種新型的無(wú)線城域網(wǎng)解決方案,。這種網(wǎng)絡(luò)的特點(diǎn)是:自組織,、自修復(fù)、自平衡以及自動(dòng)擴(kuò)展,。
無(wú)線網(wǎng)格網(wǎng)絡(luò)是“多跳網(wǎng)絡(luò)”,,任何無(wú)線設(shè)備節(jié)點(diǎn)均可同時(shí)作為AP(Access Point)與路由器,即每個(gè)節(jié)點(diǎn)都可以與一個(gè)或多個(gè)對(duì)等節(jié)點(diǎn)進(jìn)行直接通信,,數(shù)據(jù)包會(huì)根據(jù)網(wǎng)絡(luò)情況路由到與之最近的下一個(gè)節(jié)點(diǎn)進(jìn)行傳輸,,直到達(dá)到終點(diǎn)。多跳網(wǎng)絡(luò)在成本方面具有巨大優(yōu)勢(shì),,免設(shè)AP減小成本,,同時(shí)擴(kuò)大了網(wǎng)絡(luò)覆蓋范圍。而且由于集群內(nèi)所有節(jié)點(diǎn)均可作為網(wǎng)絡(luò)傳輸通道,,網(wǎng)絡(luò)競(jìng)爭(zhēng)減少,,網(wǎng)絡(luò)容量大大提高。在同時(shí)保留了分布式網(wǎng)絡(luò)所擁有的冗余機(jī)制和重新路由功能的情況下,,該網(wǎng)絡(luò)應(yīng)對(duì)復(fù)雜狀況的能力更強(qiáng)大,。同時(shí)無(wú)線網(wǎng)格網(wǎng)絡(luò)的缺點(diǎn)同樣顯而易見,若通信范圍內(nèi)的節(jié)點(diǎn)數(shù)量稀疏,,則很容易造成網(wǎng)絡(luò)中斷,。由于缺少提前布線,網(wǎng)絡(luò)通信建立速度相比單跳網(wǎng)絡(luò)較為緩慢[1],。
隨著技術(shù)進(jìn)步與數(shù)字化水平提高,,現(xiàn)代戰(zhàn)爭(zhēng)對(duì)通信網(wǎng)絡(luò)要求同樣提高,美軍針對(duì)數(shù)字化戰(zhàn)場(chǎng)提出“戰(zhàn)術(shù)互聯(lián)網(wǎng)”(Tactical Internet)概念,。戰(zhàn)術(shù)互聯(lián)網(wǎng)的環(huán)境通常惡劣又復(fù)雜,,網(wǎng)絡(luò)拓?fù)渥兓焖兕l繁且沒有集中的基礎(chǔ)設(shè)施。美國(guó)TrellisWare技術(shù)公司基于戰(zhàn)術(shù)通信需求開發(fā)了一種新型的快速,、穩(wěn)健,、可擴(kuò)展的組播戰(zhàn)術(shù)互聯(lián)網(wǎng)——阻繼網(wǎng)絡(luò)(Barrage Relay Network,BRN)[2-3],。這種網(wǎng)絡(luò)利用無(wú)線廣播機(jī)制首先建立通信區(qū)域,,然后在通信區(qū)域內(nèi)實(shí)現(xiàn)高速數(shù)據(jù)傳輸,適用于較低頻高容量通信需求,。同時(shí)該網(wǎng)絡(luò)不依賴于網(wǎng)絡(luò)拓?fù)涞淖兓?,大大減小了網(wǎng)絡(luò)的延遲和開銷,,具有良好的可擴(kuò)展性和魯棒性。
本文基于YunSDR-Y450射頻硬件主要實(shí)現(xiàn)BRNs 的路由協(xié)議,。本文實(shí)現(xiàn)的方案依托時(shí)分多址技術(shù),、自主協(xié)同技術(shù)完成受控?cái)r截區(qū)域的建立,該過(guò)程通過(guò)傳輸路由控制消息(請(qǐng)求與回復(fù))來(lái)實(shí)現(xiàn),。在無(wú)異常情況下,,接收到信息后,節(jié)點(diǎn)對(duì)消息中的關(guān)鍵值進(jìn)行保存,、計(jì)算并最終通過(guò)判定公式確定該節(jié)點(diǎn)在受控?cái)r截區(qū)域中的傳輸屬性,,形成封閉結(jié)構(gòu)后自動(dòng)結(jié)束路由建立過(guò)程,以供快速傳輸消息使用,。因此,,BRN協(xié)議的網(wǎng)絡(luò)延遲與沖突產(chǎn)生主要集中于受控?cái)r截區(qū)域的建立過(guò)程,BRN網(wǎng)絡(luò)協(xié)議具體實(shí)現(xiàn)中的難點(diǎn)便體現(xiàn)在受控?cái)r截區(qū)域建立過(guò)程的算法實(shí)現(xiàn)中,。
1 Barrage Relay Networks網(wǎng)絡(luò)協(xié)議原理
1.1 概述
Barrage Relay Networks利用部分節(jié)點(diǎn)的阻斷功能將網(wǎng)絡(luò)劃分成若干個(gè)相互獨(dú)立的通信區(qū)域,,從而實(shí)現(xiàn)更高效的數(shù)據(jù)傳輸。BRNs中控制消息在源與目的兩處廣播,,節(jié)點(diǎn)通過(guò)記錄其到源和目的的跳數(shù)距離來(lái)確定自己的功能身份(中繼轉(zhuǎn)發(fā)節(jié)點(diǎn)或信息阻攔節(jié)點(diǎn)),,構(gòu)建一個(gè)源到目的之間的數(shù)據(jù)流傳輸區(qū)域。該區(qū)域內(nèi)通信方式為單播,,由于傳輸區(qū)域確定,,區(qū)域內(nèi)節(jié)點(diǎn)可免除上層判斷直接傳輸消息,從而提高傳輸速率[4],。
1.2 自主協(xié)同通信
由于無(wú)線網(wǎng)絡(luò)的廣播特性,,傳輸消息時(shí)難以避免多路徑傳輸情況,協(xié)同通信的使用可以產(chǎn)生顯著的性能改進(jìn),。然而,,傳統(tǒng)的協(xié)同通信方法需要大量的節(jié)點(diǎn)間協(xié)調(diào)。這種協(xié)調(diào)通常包括團(tuán)隊(duì)形成,、信道識(shí)別和碼本分配等,。在具有高動(dòng)態(tài)拓?fù)涞木W(wǎng)絡(luò)中,,將需要頻繁更新節(jié)點(diǎn)間協(xié)調(diào)信息,,從而影響開銷并增加數(shù)據(jù)包轉(zhuǎn)發(fā)所需的等待時(shí)間。
BRNs采用多路徑的協(xié)同傳輸方式,,協(xié)同通信節(jié)點(diǎn)只需保證粗量級(jí)的TDMA時(shí)間同步,,無(wú)需獲取額外交互信息,在同一時(shí)隙傳輸完全相同消息,,接收節(jié)點(diǎn)處收到互為鏡像的內(nèi)容,,既避免了沖突產(chǎn)生,,又形成冗余提高傳輸安全性。
1.3 時(shí)間同步
BRNs采用時(shí)分多址技術(shù)(TDMA)進(jìn)行時(shí)間同步,,以便參與自主協(xié)同通信的節(jié)點(diǎn)能夠在相同時(shí)間進(jìn)行傳輸,。并且,BRNs依賴廣播機(jī)制,,應(yīng)用TDMA可使路由建立環(huán)節(jié)易于調(diào)節(jié)控制,。
需要特別注意的是,BRNs要求每個(gè)節(jié)點(diǎn)對(duì)每個(gè)數(shù)據(jù)包只轉(zhuǎn)發(fā)一次來(lái)避免產(chǎn)生環(huán)路以及網(wǎng)絡(luò)洪泛,。
1.4 受控?cái)r截區(qū)域
受控?cái)r截區(qū)域(Control Barrage Region,,CBR)的建立是BRNs網(wǎng)絡(luò)通信機(jī)制的核心技術(shù)。CBR本身是一個(gè)封閉的廣播區(qū)域,,區(qū)域內(nèi)部消息透明共享,,區(qū)域外部則與內(nèi)部完全無(wú)關(guān)。區(qū)域邊界由Buffer節(jié)點(diǎn)確定,,廣播數(shù)據(jù)到達(dá)Buffer節(jié)點(diǎn)后遭到丟棄,,使得Buffer節(jié)點(diǎn)的連線成為一條消息“封鎖線”,從而形成封閉邊界,。采用CBR進(jìn)行路由的優(yōu)點(diǎn)在于:由于建立后的CBR內(nèi)部及其邊界處所有節(jié)點(diǎn)對(duì)之后收到消息的處理方式已經(jīng)確定,,故而可在物理層對(duì)收到的消息直接做出相應(yīng)處理(轉(zhuǎn)發(fā)或丟棄)且無(wú)需判斷,這將有效提高CBR內(nèi)部的通信速度[5],。
2 基于YunSDR-Y450的開發(fā)實(shí)現(xiàn)
2.1 硬件參數(shù)概述
YunSDR的板卡主要由ZYNQ嵌入式處理器,、AD9371射頻前端和電源電路構(gòu)成。嵌入式處理器采用Xilinx集成可編程邏輯和CortexA9雙核處理器架構(gòu)的ZYNQ系列XC7Z035,;射頻前端頻率范圍達(dá)300 MHz~6 GHz,,支持半雙工全雙工,擁有TDD/FDD模式,,接收端口最大100 MHz實(shí)時(shí)帶寬,,發(fā)送端口最大250 MHz實(shí)時(shí)帶寬,集成功率放大器(14 dB@2 GHz),,支持最高發(fā)射功率10 dBm(P1dB17dB),。
2.2 設(shè)計(jì)綜述
2.2.1 系統(tǒng)架構(gòu)
圖1展示了軟件系統(tǒng)架構(gòu)的三個(gè)方面。
firmware文件下主要分FPGA與linux_app兩部分,。
FPGA配置與物理層相關(guān)的基礎(chǔ)設(shè)置與控制邏輯,。其中包括配置射頻元件參數(shù)、調(diào)節(jié)硬件交互接口,,以及通信時(shí)的組幀,、解析等底層功能。FPGA模塊包含完整的硬件系統(tǒng),,內(nèi)含pldma_test.cache/hw/ipdef/runs/sd -k/sim/srcs/tmp/xpr等工程文件,,擁有工程編譯生成文件,、邏輯軟件工程、硬件約束等,。
linux_app模塊則與MAC層相關(guān),,實(shí)現(xiàn)功能包括基本的通信接口(TCP/UDP套接字)、協(xié)議棧,、調(diào)用物理層功能接口以及其他可擴(kuò)展功能(TDMA,、TDD等)。在linux_app文件夾中包含三部分,,app文件夾中儲(chǔ)存MAC層核心邏輯代碼,,rfchip文件夾儲(chǔ)存所有MAC層與物理層接口API,而v3best文件夾則負(fù)責(zé)在MAC層初始化射頻模塊的設(shè)置,。
app文件夾中主要包含以下文件:yunsdr_device.h,,yunsdr_eth.h,command.h,yunsdr_main.c,。其中yunsdr_device.h中聲明了所有物理層啟用的REG分別具有的功能,,yunsdr_eth.h聲明以太網(wǎng)協(xié)議相關(guān)的標(biāo)準(zhǔn)協(xié)議頭及其字段定義,command.h設(shè)置了與上位機(jī)終端交互相關(guān)的函數(shù),,而yunsdr_main.c則是MAC層邏輯核心代碼,,所有MAC層進(jìn)行的邏輯控制均在該文件中編寫。
host與sd_image分別管理上位機(jī)與硬件接口和固件信息,。本文相關(guān)開發(fā)中上位機(jī)交互主要通過(guò)MATLAB進(jìn)行,,固件由Penta Linux軟件將firmware部分設(shè)計(jì)代碼導(dǎo)入后自動(dòng)生成,包含整體配置文件,。
2.2.2 TDMA
BRNs應(yīng)用TDMA進(jìn)行時(shí)間同步,,所有BRNs的消息基于時(shí)隙廣播。本方案中TDMA技術(shù)的建立應(yīng)用時(shí)戳同步方法,,需在硬件系統(tǒng)配置時(shí)戳系統(tǒng),。
時(shí)間同步時(shí)將節(jié)點(diǎn)分為已同步與待同步兩個(gè)集合,同步操作對(duì)兩個(gè)節(jié)點(diǎn)進(jìn)行,,同步對(duì)象為節(jié)點(diǎn)k與節(jié)點(diǎn)i,,節(jié)點(diǎn)i為同步集群內(nèi)節(jié)點(diǎn),節(jié)點(diǎn)k為待同步節(jié)點(diǎn),。首先由節(jié)點(diǎn)k發(fā)起同步,,接收信號(hào)后節(jié)點(diǎn)i根據(jù)本地時(shí)戳系統(tǒng)記錄接收信號(hào)時(shí)刻與其相應(yīng)時(shí)隙起始時(shí)刻的差值ΔTi,k,;再由節(jié)點(diǎn)i將該差值返回給節(jié)點(diǎn)k,,類似地,,節(jié)點(diǎn)k記錄ΔTk,,i,,同時(shí)節(jié)點(diǎn)k收到節(jié)點(diǎn)i記錄的ΔTi,k,。
ΔTi,,k與ΔTk,i的計(jì)算由圖2原理圖可得:
節(jié)點(diǎn)k對(duì)本地時(shí)戳系統(tǒng)引入Δδ的延遲即可進(jìn)入同步集群[6],。
在使用自主協(xié)調(diào)通信的情況下,,BRN廣播中對(duì)TDMA的應(yīng)用如圖3所示。圖中應(yīng)用3-slot TDMA,,其中時(shí)槽標(biāo)記為A,、B和C。假設(shè)源節(jié)點(diǎn)在第一個(gè)TDMA幀的時(shí)槽A上發(fā)送數(shù)據(jù)包,。由定義,,成功接收該數(shù)據(jù)包的所有節(jié)點(diǎn)距離源節(jié)點(diǎn)一跳。然后,,這些節(jié)點(diǎn)在時(shí)槽B上發(fā)送相同的包,,從而轉(zhuǎn)發(fā)到距離源節(jié)點(diǎn)兩跳的節(jié)點(diǎn),這些節(jié)點(diǎn)又在時(shí)槽C上發(fā)送信息,,依次傳遞下去,。為了防止產(chǎn)生網(wǎng)絡(luò)環(huán)路,每個(gè)節(jié)點(diǎn)僅轉(zhuǎn)發(fā)給定分組一次,。時(shí)槽的空間重用使得數(shù)據(jù)包可以被流水線化到源節(jié)點(diǎn)中以便每M個(gè)時(shí)槽傳輸,。例如,在圖3中,,一跳節(jié)點(diǎn)將不接收在第二個(gè)TDMA幀的時(shí)槽A期間由三跳節(jié)點(diǎn)發(fā)送的分組,。因此,源節(jié)點(diǎn)可以在該時(shí)槽安全地發(fā)送第二分組,。顯然要求M≥3才能允許這種空間流水線操作,。當(dāng)然也可以選擇較大的M值以提高交換吞吐量并增強(qiáng)對(duì)拓?fù)渥兓聂敯粜浴?/p>
2.2.3 自主協(xié)同通信
BRNs應(yīng)用自主協(xié)同技術(shù)進(jìn)行沖突避免,同時(shí)提高消息傳輸?shù)目煽啃?。本方案中自主協(xié)同的實(shí)現(xiàn)依賴TDMA,,基于時(shí)隙完成多路徑協(xié)同傳輸。
首先,,網(wǎng)絡(luò)堆棧通常修改每個(gè)中繼節(jié)點(diǎn)處的協(xié)議報(bào)頭信息,,使得即使兩個(gè)中繼節(jié)點(diǎn)發(fā)送相同的有效載荷數(shù)據(jù),所得到的廣播包也可以是不同的,。為了支持自主協(xié)作,,必須舍棄節(jié)點(diǎn)特定的分組變換:協(xié)議報(bào)文頭添加跳數(shù)字段,該字段記錄收到消息的節(jié)點(diǎn)距離源節(jié)點(diǎn)的跳數(shù),。與之配套的轉(zhuǎn)發(fā)處理方式為:節(jié)點(diǎn)轉(zhuǎn)發(fā)消息時(shí)不更改報(bào)文頭中源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)的內(nèi)容,,僅對(duì)跳數(shù)字段做+1操作,。
其次,協(xié)同節(jié)點(diǎn)必須在相同的時(shí)隙上轉(zhuǎn)發(fā)相同的數(shù)據(jù)包,。傳統(tǒng)上,,轉(zhuǎn)發(fā)決策是在網(wǎng)絡(luò)層進(jìn)行的,這便引入了不可預(yù)測(cè)且依賴于節(jié)點(diǎn)的處理延遲,。為了最大限度地減少延遲并確保在同一時(shí)隙上發(fā)生轉(zhuǎn)發(fā),,必須在物理層進(jìn)行轉(zhuǎn)發(fā)決策(通過(guò)建立CBR輔助實(shí)現(xiàn))。
2.2.4 CBR建立
BRNs采用受控?cái)r截區(qū)域技術(shù)建立路由,,CBR的建立需要依賴TDMA與自主協(xié)同,。CBR建立過(guò)程涉及路由請(qǐng)求與路由回復(fù)消息的傳輸以及途徑節(jié)點(diǎn)的相關(guān)處理行為。具體方法如下:
定義:標(biāo)記網(wǎng)絡(luò)拓?fù)錇镚=(V,,E),,v∈V表示節(jié)點(diǎn)的集合,(u,,v)∈E表示節(jié)點(diǎn)u與節(jié)點(diǎn)v之間的無(wú)線連接,。對(duì)于任意UV,G\U表示僅包含V\U節(jié)點(diǎn)的G的子圖,。對(duì)于不相同的節(jié)點(diǎn)u,,v,w∈V,,d(u,,v)定義為連接節(jié)點(diǎn)u和節(jié)點(diǎn)v的最短路徑長(zhǎng)度,d(u,,v,;w)定義為連接節(jié)點(diǎn)u和節(jié)點(diǎn)v但不經(jīng)過(guò)節(jié)點(diǎn)w的最短路徑長(zhǎng)度。設(shè)定寬度參數(shù)非負(fù)整數(shù)N,。
節(jié)點(diǎn)設(shè)定:源節(jié)點(diǎn)S(Source),、目的節(jié)點(diǎn)D(Destination)、中繼節(jié)點(diǎn)R(Relay),、阻攔節(jié)點(diǎn)B(Buffer),、不可達(dá)節(jié)點(diǎn)U(Unreachable)。圖4為一個(gè)簡(jiǎn)單的CBR建立示意圖,,初始條件為源節(jié)點(diǎn)S∈V,,目的節(jié)點(diǎn)D∈V。算法如下:
(1)S節(jié)點(diǎn)向周圍廣播“請(qǐng)求發(fā)送數(shù)據(jù)包”(Request to Send,,RTS):(S_ID,,D_ID,d(S,v)[起始值為1,,內(nèi)含跳數(shù)計(jì)數(shù)器]),。
RTS發(fā)送時(shí)槽為:
(2)節(jié)點(diǎn)v∈V\{S,D}接收RTS并解碼,,存儲(chǔ)a(v)=d(S,v,;D),,RTS跳數(shù)+1,并中繼轉(zhuǎn)發(fā),。
RTS接收時(shí)槽為:
(3)D節(jié)點(diǎn)接收到RTS,,存儲(chǔ)δ=d(S,D),;等待一定時(shí)槽t1后發(fā)送阻攔數(shù)據(jù)包BUF(收到BUF而未收到RTS即判定為B,,接收后不轉(zhuǎn)發(fā));再等待一定時(shí)槽t2后向周圍廣播“清除發(fā)送數(shù)據(jù)包”(Clear to Send):(S_ID,,D_ID,,δ,d(D,,v)[起始值為1,,內(nèi)含跳數(shù)計(jì)數(shù)器])。
RTS接收時(shí)槽為:
(4)節(jié)點(diǎn)v接收CTS并解碼,,首先驗(yàn)證v接收過(guò)S與D傳輸中的RTS,,獲取b(v)=d(D,v,;S),。而后根據(jù)a(v)、b(v)與δ的值執(zhí)行一個(gè)判定式,,若滿足,,v被判定為R,CTS跳數(shù)+1,,并中繼轉(zhuǎn)發(fā),;若不滿足,v被判定為B,;
CTS接收時(shí)槽為:
(5)S節(jié)點(diǎn)接收到CTS,,發(fā)送類似的BUF數(shù)據(jù)包,上述過(guò)程中未參與節(jié)點(diǎn)均視為U,。
CTS接收時(shí)槽為:
2.2.5 沖突避免
CBR建立過(guò)程中共有4個(gè)數(shù)據(jù)包被廣播,,互相之間可能產(chǎn)生沖突的情況共兩類,本文采用等待退讓的方法避免沖突產(chǎn)生,由t1,、t2,、t3調(diào)控。
(1)第1類:D節(jié)點(diǎn)接收RTS并發(fā)送BUF的沖突和S節(jié)點(diǎn)接收CTS并發(fā)送BUF的沖突,。兩者類似,,此處僅選取D節(jié)點(diǎn)相關(guān)沖突進(jìn)行討論。假設(shè)節(jié)點(diǎn)r為D節(jié)點(diǎn)的一跳節(jié)點(diǎn),,為避免出錯(cuò),,需要滿足ttx(D;BUF)>trx(r,;RTS),,于是t1≥N-1,又t1≥0,,可知t1≥max(0,,N-1)。
(2)第2類:某節(jié)點(diǎn)同時(shí)接收CTS與RTS的沖突,。由于存在寬度參數(shù)N,,對(duì)于CBR內(nèi)部節(jié)點(diǎn)可能存在同時(shí)接收CTS與RTS的沖突,假設(shè)該節(jié)點(diǎn)為r,,滿足a(r)+b(r)=δ+ε(0<ε≤N),,故要求t2≥ε,雖然這樣CBR外部節(jié)點(diǎn)仍然無(wú)法避免沖突,,但對(duì)于CBR建立不存在影響,,不予考慮。因?yàn)镃TS必須晚于BUF廣播,,即t2>t1,,所以t2≥max(1,N),。
2.2.6 硬件處理
數(shù)據(jù)包格式以802.11b協(xié)議格式為原型進(jìn)行修改,。判定結(jié)果傳遞給物理層,R節(jié)點(diǎn)將在物理層直接轉(zhuǎn)發(fā)接收到的數(shù)據(jù)包,,B節(jié)點(diǎn)將直接丟棄數(shù)據(jù)包,。
2.3 測(cè)試
測(cè)試環(huán)境共4個(gè)測(cè)試節(jié)點(diǎn),可實(shí)現(xiàn)的網(wǎng)絡(luò)拓?fù)漭^為簡(jiǎn)單,,如圖5所示,,以下逐一列舉測(cè)試?yán)敖Y(jié)果。
測(cè)試結(jié)果1,、2,、3,、4表明,在所有節(jié)點(diǎn)可連通情況下,,源節(jié)點(diǎn)與目的節(jié)點(diǎn)傳輸最短路徑途經(jīng)的節(jié)點(diǎn)均被判定為中繼節(jié)點(diǎn),,其余節(jié)點(diǎn)被判定為阻攔節(jié)點(diǎn),故中繼轉(zhuǎn)發(fā)節(jié)點(diǎn)與信息阻攔節(jié)點(diǎn)的判定無(wú)誤,。
測(cè)試結(jié)果5,、6表明,在網(wǎng)絡(luò)拓?fù)涑霈F(xiàn)中斷的情況下,,與源節(jié)點(diǎn)可連通的節(jié)點(diǎn)可被正常判定,,而與節(jié)點(diǎn)無(wú)連通的節(jié)點(diǎn)(包括目的節(jié)點(diǎn))均無(wú)法判定而視為不可達(dá),故不可達(dá)節(jié)點(diǎn)的判定無(wú)誤,。
3 性能仿真
3.1 仿真環(huán)境
本文使用MATLAB軟件對(duì)DSR協(xié)議(Dynamic Source Routing),、OLSR協(xié)議(Optimized Link State Routing)和BRN協(xié)議進(jìn)行網(wǎng)絡(luò)性能仿真,。仿真設(shè)置在1 000×1 000的環(huán)境中,,隨機(jī)布置50個(gè)節(jié)點(diǎn),以5 Hz頻率發(fā)送大小均為512 B的數(shù)據(jù)包,。
本文針對(duì)以下3個(gè)數(shù)據(jù)指標(biāo)仿真:
(1)端到端平均時(shí)延(Average Delay,,AD):該指標(biāo)強(qiáng)調(diào)網(wǎng)絡(luò)延遲。AD=∑(接收包的時(shí)刻-發(fā)送包的時(shí)刻)/發(fā)送數(shù)據(jù)包的個(gè)數(shù),;
(2)數(shù)據(jù)包投遞率(Packet Delivery Ratio,,PDR):該指標(biāo)強(qiáng)調(diào)網(wǎng)絡(luò)傳輸可靠性。PDR=目的節(jié)點(diǎn)收到數(shù)據(jù)包個(gè)數(shù)/源節(jié)點(diǎn)發(fā)送數(shù)據(jù)包的個(gè)數(shù),;
(3)路由開銷(Normalized Routing Load,,NRL):該指標(biāo)強(qiáng)調(diào)網(wǎng)絡(luò)資源規(guī)模。NRL=轉(zhuǎn)發(fā)的數(shù)據(jù)包個(gè)數(shù)/目的節(jié)點(diǎn)接收到的路由個(gè)數(shù),。
3.2 仿真結(jié)果與分析
3.2.1 場(chǎng)景一
節(jié)點(diǎn)暫停時(shí)間為60 s,,分別以0 m/s、5 m/s,、10 m/s…45 m/s,、50 m/s的速度移動(dòng),結(jié)果如圖6所示,。
移動(dòng)速度的影響分析:
AD:DSR對(duì)移動(dòng)速度比較敏感且延遲較大,;表驅(qū)動(dòng)的OLSR幾乎不受移動(dòng)速度影響;而BRN在移速不太大的情況下很穩(wěn)定,,當(dāng)移速較大時(shí)開始受到影響,。
PDR:3個(gè)協(xié)議的PDR都隨著移速的增大明顯減小,移速越大導(dǎo)致源節(jié)點(diǎn)與目的節(jié)點(diǎn)無(wú)法聯(lián)通的情況越多,,符合規(guī)律,。其中BRN下降速度較緩,,PDR一直保持最高,應(yīng)對(duì)拓?fù)渫蛔兊聂敯粜陨锌伞?/p>
NRL:DSR的最大優(yōu)勢(shì)在于低開銷,,其路由開銷基本不受移速影響,;為了維護(hù)路由表,OLSR產(chǎn)生了較大開銷,;BRN的開銷增大源自CBR的擴(kuò)大,,介于二者之間。
BRN在應(yīng)對(duì)節(jié)點(diǎn)隨機(jī)移動(dòng)的情況時(shí),,在一定范圍內(nèi)保持了較高的性能與較低的開銷,,綜合效果最優(yōu)。
3.2.2 場(chǎng)景二
節(jié)點(diǎn)向隨機(jī)方向以30 m/s的速度移動(dòng),,暫停時(shí)間分別為0 s,、10 s、20 s…160 s,,結(jié)果如圖7所示,。
暫停時(shí)間的影響分析:
AD:與移動(dòng)速度情況相似,DSR表現(xiàn)較差而OLSR穩(wěn)定且低時(shí)延,;BRN在暫停時(shí)間小于60 s時(shí)敏感且時(shí)延偏高,,暫停時(shí)間大于60 s時(shí)性能接近OLSR,原因在于BRN需要首先建立CBR,,之后提供低時(shí)延的網(wǎng)絡(luò),。
PDR:OLSR的PDR穩(wěn)定分布在0.9附近,BRN在暫停時(shí)間大于60 s后也穩(wěn)定在0.9附近,,DSR的PDR偶然誤差較大,,整體呈上升趨勢(shì)。
NRL:3個(gè)協(xié)議的路由開銷均對(duì)暫停時(shí)間不太敏感,,隨暫停時(shí)間增大略有下降,。其中OLSR開銷最大,BRN次之,,DSR最小,。
BRN對(duì)網(wǎng)絡(luò)的穩(wěn)定性有一定要求。對(duì)于符合要求的網(wǎng)絡(luò)環(huán)境,,BRN可以提供低時(shí)延,、低開銷與高數(shù)據(jù)包傳遞率。
仿真綜合分析知,,OLSR作為典型的表驅(qū)動(dòng)路由協(xié)議,,具有良好的穩(wěn)定性,同時(shí)低時(shí)延,、高開銷優(yōu)劣分明,;相反地,,按需驅(qū)動(dòng)路由協(xié)議DSR使用很少的開銷,但在網(wǎng)絡(luò)性能上偏差,;BRN均衡二者的利弊,,建立CBR的過(guò)程更接近DSR,而建立CBR之后的網(wǎng)絡(luò)性能更接近OLSR,,綜合性能最佳,。
4 結(jié)論
本文基于YunSDR-Y450硬件進(jìn)行路由協(xié)議開發(fā),核心目標(biāo)為實(shí)現(xiàn)CBR的建立,,其前提條件為網(wǎng)絡(luò)集群自主協(xié)同通信且TDMA時(shí)間同步,。
針對(duì)BRN、DSR,、OLSR進(jìn)行仿真模擬,,通過(guò)對(duì)三者模擬結(jié)果的對(duì)比分析,進(jìn)一步印證了BRN的優(yōu)越性:應(yīng)對(duì)變化的網(wǎng)絡(luò)環(huán)境魯棒性高,,使用較少開銷換取更低的網(wǎng)絡(luò)時(shí)延,。該協(xié)議值得進(jìn)一步研究開發(fā)。
參考文獻(xiàn)
[1] BROWN T A,,HALFORD T R,,JOHNSON M L,,et al.Method and system for global topology discovery in multihop ad hoc networks:U.S.patent Application 13/467,,999[P].2013-11-14.
[2] TrellisWare Technologies,Inc..Methods for coordinating access to a barrage relay network:歐洲專利局,,EP2856718(B1)[P].2017-09-27.
[3] TALARICO S,,VALENTI M C,HALFORD T R .Controlled barrage regions: stochastic modeling,,analysis, and optimization[C].MILCOM 2016-2016 IEEE Military Communications Conference(MILCOM),,2016:466-472.
[4] 盧玲,王鉞,,王劍,,等.一種基于分簇的新型組播網(wǎng)絡(luò)[J].計(jì)算機(jī)仿真,2013,30(4):183-187.
[5] Ding Ying,Wang Yue,,Yuan Jian.A blackhole attack analysis for barrage relay networks[C].2013 International Conference on Sensor Network Security Technology and Privacy Communication System(SNS & PCS 2013),,18-19 May 2013,Harbin,,China,,2013:13-17.
[6] 劉慶剛,李大雙,,朱家成.多跳TDMA組網(wǎng)同步的分布式控制方法[J].通信技術(shù),,2012,,45(5):26-28,32.
作者信息:
任 能
(清華大學(xué) 電子工程系,,北京100089)