[王冠雄 蔡龍騰]
?
6LoWPAN無線傳感網(wǎng)性能測試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
[王冠雄 蔡龍騰]
摘要
為了驗(yàn)證6LoWPAN[1]無線傳感網(wǎng)的性能界限,文章在充分調(diào)研網(wǎng)絡(luò)性能分析參數(shù)、方法和工具的基礎(chǔ)上,探索可行的6LoWPAN性能測量[2]和分析方法,提出相應(yīng)的測試框架和和測試方法[3],主要設(shè)計(jì)了6LoWPAN無線傳感網(wǎng)的時(shí)間同步測試、時(shí)延測試、和丟包率測試,最后搭建6LoWPAN無線傳感網(wǎng)絡(luò)的性能測試驗(yàn)證平臺(tái),實(shí)現(xiàn)了對(duì)6LoWPAN無線傳感網(wǎng)的性能測試。
關(guān)鍵詞:6LoWPAN無線傳感網(wǎng) 性能測試 指標(biāo)
王冠雄
重慶郵電大學(xué)自動(dòng)化學(xué)院。
蔡龍騰
重慶郵電大學(xué)自動(dòng)化學(xué)院。
6LoWPAN無線傳感網(wǎng)協(xié)議作為一種工業(yè)以太網(wǎng)標(biāo)準(zhǔn),其性能問題是其實(shí)現(xiàn)可靠通信的關(guān)鍵技術(shù)之一,因此通過測試網(wǎng)絡(luò)傳輸?shù)臅r(shí)延[4]、吞吐量、時(shí)鐘同步等指標(biāo)可以反映實(shí)時(shí)性的運(yùn)行情況。6LoWPAN無線傳感網(wǎng)性能測試能夠?yàn)楸粶y試網(wǎng)絡(luò)提供一個(gè)客觀的量化指標(biāo),幫助企業(yè)進(jìn)行網(wǎng)絡(luò)評(píng)估與驗(yàn)收。
性能測試[5]對(duì)于網(wǎng)絡(luò)維護(hù)有重大的實(shí)際意義。對(duì)于一個(gè)已經(jīng)建好的6LoWPAN無線傳感網(wǎng),通過實(shí)時(shí)性能測試可以檢查網(wǎng)絡(luò)的實(shí)際運(yùn)行情況,通過對(duì)實(shí)時(shí)運(yùn)行數(shù)據(jù)的分析可以及時(shí)的發(fā)現(xiàn)網(wǎng)絡(luò)可能出現(xiàn)的問題,并及時(shí)的維護(hù)以降低網(wǎng)絡(luò)的運(yùn)行風(fēng)險(xiǎn),增加網(wǎng)絡(luò)的運(yùn)行可靠性。對(duì)于廠家而言,這種可靠性的增加可以節(jié)約生產(chǎn)的維護(hù)成本,提高效率。
目前,對(duì)于其它實(shí)時(shí)以太網(wǎng)標(biāo)準(zhǔn)的性能測試均有相應(yīng)的測試標(biāo)準(zhǔn)與測試設(shè)備。對(duì)于6LoWPAN無線傳感網(wǎng)絡(luò),目前常用性能測試方案均不能很好的模擬6LoWPAN通信環(huán)境,因此測試所得的數(shù)據(jù)不能更好的反映網(wǎng)絡(luò)的通信現(xiàn)狀。因此,設(shè)計(jì)一個(gè)6LoWPAN性能測試器,在測試器上設(shè)計(jì)新的實(shí)時(shí)性測試方案,這樣即可以很好的模擬6LoWPAN通信環(huán)境,測試得到的數(shù)據(jù)可更好的反映6LoWPAN無線傳感網(wǎng)的性能。
2.16LoWPAN無線傳感網(wǎng)通信協(xié)議模型
基于的IEEE 802.15.4[6]協(xié)議的IPv6無線傳感器網(wǎng)絡(luò)是在IEEE 802.15.4鏈路上傳輸IPv6數(shù)據(jù)包,讓傳感器網(wǎng)絡(luò)中的節(jié)點(diǎn)具有接入互聯(lián)網(wǎng)的能力。IETF成立了6LoWPAN工作組和ROLL工作組。6LoWPAN工作組定義IPv6數(shù)據(jù)包在IEEE 802.15.4網(wǎng)絡(luò)中傳輸規(guī)范也叫6LoWPAN標(biāo)準(zhǔn),以實(shí)現(xiàn)IPv6無線傳感器網(wǎng)絡(luò)中的設(shè)備和Internet中的設(shè)備互聯(lián)互通。ROLL工作組的任務(wù)是修正現(xiàn)有的路由協(xié)議或者制定新的滿足低功耗松散網(wǎng)絡(luò)需求的路由機(jī)制并提出了新的適合LLN網(wǎng)絡(luò)的IPv6路由協(xié)議——RPL協(xié)議[7]。
6LoWPAN網(wǎng)絡(luò)協(xié)議棧[8]在MAC層和網(wǎng)絡(luò)層之間加了一個(gè)適配層,適配層為IP協(xié)議屏蔽無線傳感器網(wǎng)絡(luò)底層細(xì)節(jié),如圖1。與傳統(tǒng)TCP/IP協(xié)議模型比較,在6LoWPAN網(wǎng)絡(luò)中,MAC層和物理層協(xié)議主要是比較成熟的IEEE 802.15.4協(xié)議,網(wǎng)絡(luò)層采用IPv6協(xié)議,在網(wǎng)絡(luò)層和MAC層之間增加了一個(gè)6LoWPAN適配層,遵循6LoWPAN協(xié)議。6LoWPAN適配層主要用于完成IPv6協(xié)議對(duì)802.15.4網(wǎng)絡(luò)的適配,提供報(bào)頭壓縮、報(bào)文分片/重組、網(wǎng)絡(luò)拓?fù)錁?gòu)建、地址自動(dòng)配置和組播支持等功能,各種功能的報(bào)頭采用堆棧的方式封裝在IPv6載荷外層。
圖1 6LoWPAN協(xié)議模型
2.26LoWPAN無線傳感網(wǎng)性能指標(biāo)
6LoWPAN性能測試指標(biāo)主要用來描述運(yùn)行網(wǎng)絡(luò)中的特定性能。IETF的IP網(wǎng)絡(luò)性能測量(IPPM)工作組制定了相應(yīng)的建議和草案,定義了網(wǎng)絡(luò)性能測量的基本框架,并規(guī)范了性能指標(biāo)所必須遵循的標(biāo)準(zhǔn)[9]。根據(jù)不同的用途,可以對(duì)網(wǎng)絡(luò)的多種參數(shù)進(jìn)行測量,包括時(shí)延、丟包率、鏈路的容量和帶寬、流量、連接的平均持續(xù)時(shí)間、網(wǎng)絡(luò)拓?fù)涞?。本文主要分析?LoWPAN網(wǎng)絡(luò)的丟包率、時(shí)延和遞交時(shí)間。
丟包率[10]是網(wǎng)絡(luò)交換設(shè)備在不同的負(fù)載和不同幀長的條件下由于缺乏資源或者協(xié)議本身不穩(wěn)定的情況,應(yīng)該正確轉(zhuǎn)發(fā)但是沒有轉(zhuǎn)發(fā)的數(shù)據(jù)包占接收數(shù)據(jù)包的百分比。例如被測路由設(shè)備DUT接收數(shù)據(jù)包為X,轉(zhuǎn)發(fā)的數(shù)據(jù)包為Y,那么丟包率就下面的公式計(jì)算得出:
時(shí)延[11]是指一個(gè)數(shù)據(jù)包從網(wǎng)絡(luò)的一端傳輸?shù)骄W(wǎng)絡(luò)另外一端所需時(shí)間。它主要包括處理時(shí)延、排隊(duì)時(shí)延、發(fā)送時(shí)延以及傳播時(shí)延。其中,一個(gè)6LoWPAN設(shè)備將應(yīng)用層數(shù)據(jù)單元傳輸?shù)搅硪粋€(gè)6LoWPAN應(yīng)用層所需時(shí)間,即應(yīng)用層的端到端時(shí)延,又叫做遞交時(shí)間。
根據(jù)對(duì)6LoWPAN協(xié)議及性能測試的分析以及遠(yuǎn)程測試架構(gòu),設(shè)計(jì)出如圖2所示的6LoWPAN協(xié)議性能測試系統(tǒng)。整個(gè)測試系統(tǒng)由上層的測試服務(wù)器和下層的6LoWPAN協(xié)議硬件測試平臺(tái)構(gòu)成,它們通過網(wǎng)絡(luò)相連接。
圖2 6LoWPAN性能測試系統(tǒng)拓?fù)浣Y(jié)構(gòu)圖
系統(tǒng)的測試流程,如圖3。
(1)用戶通過HTTP協(xié)議訪問測試服務(wù)器,建立連接,遞交測試申請,傳遞配置參數(shù)以及控制信息;
(2)測試服務(wù)器和測試設(shè)備通過TCP/IP協(xié)議通信,測試服務(wù)器將設(shè)備配置信息和測試執(zhí)行命令下發(fā)給測試設(shè)備;
(3)6LoWPAN協(xié)議性能測試的測試設(shè)備是測試路由器,測試路由器根據(jù)測試案例可以是一個(gè)或多個(gè),測試設(shè)備將測試命令下發(fā)給被測設(shè)備;
圖3 6LoWPAN性能測試流程圖
(4)被測設(shè)備根據(jù)測試命令完成測試執(zhí)行,生成測試響應(yīng);
(5)被測設(shè)備將測試響應(yīng)傳遞給測試設(shè)備;
(6)測試設(shè)備將測試響應(yīng)生成測試數(shù)據(jù)傳遞給測試服務(wù)器;
(7)測試服務(wù)器將測試數(shù)據(jù)進(jìn)行處理、存儲(chǔ)之后,將測試過程信息和測試結(jié)果信息通過HTTP協(xié)議傳遞給測試用戶;
(8)測試結(jié)束。
3.1丟包率測試實(shí)現(xiàn)
丟包率測試的測試執(zhí)行流程如圖4。
圖4 丟包率測試流程
數(shù)據(jù)解析模塊獲得測試數(shù)據(jù)包后,根據(jù)源地址和目的地址在相應(yīng)節(jié)點(diǎn)的統(tǒng)計(jì)上分別計(jì)數(shù)。根據(jù)序列號(hào)判斷抓包器是否本身丟包,如果抓包器丟包,通過計(jì)算序列號(hào)進(jìn)行值的補(bǔ)償。例如,路由節(jié)點(diǎn)獲得某一節(jié)點(diǎn)此次傳來的序列號(hào)為0x3A,而下一次該路由節(jié)點(diǎn)的序列號(hào)為0x3D,說明抓包器有兩個(gè)數(shù)據(jù)包沒抓到,應(yīng)進(jìn)行數(shù)據(jù)補(bǔ)償
3.2時(shí)延和遞交時(shí)間測試實(shí)現(xiàn)
網(wǎng)絡(luò)時(shí)延[12]主要分為兩類,即單向時(shí)延和往返時(shí)延。單向時(shí)延是指數(shù)據(jù)包從發(fā)送端全部發(fā)送到接收端所需要的時(shí)間,單向時(shí)延的測試必須保證發(fā)送端和接收端保持時(shí)間同步。往返時(shí)延是指數(shù)據(jù)發(fā)送端從發(fā)送數(shù)據(jù)開始,到接受到來自接收端的確認(rèn)這段時(shí)間(接收端在接收到數(shù)據(jù)之后必須馬上發(fā)送確認(rèn))。其中單向延遲的測試為數(shù)據(jù)包從發(fā)送設(shè)備出發(fā),帶上起始的時(shí)間戳,然后根據(jù)需要可在網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層分別打上時(shí)間戳,然后傳遞給接收設(shè)備,并打上終止時(shí)間戳。這樣,可通過在發(fā)送設(shè)備上打上的不同時(shí)間戳計(jì)算處理時(shí)延、排隊(duì)時(shí)延以及發(fā)送時(shí)延,而根據(jù)發(fā)送設(shè)備和接受設(shè)備的時(shí)間差可計(jì)算出遞交時(shí)間,如圖5。
圖5 時(shí)延的組成
4.1性能測試平臺(tái)搭建
6LoWPAN協(xié)議性能測試平臺(tái)如圖6。該測試平臺(tái)由3個(gè)測試路由器和多個(gè)標(biāo)準(zhǔn)設(shè)備組成。三個(gè)測試路由器分別充當(dāng)網(wǎng)關(guān)、路由節(jié)點(diǎn)和終端設(shè)備。標(biāo)準(zhǔn)設(shè)備是4個(gè)路由節(jié)點(diǎn)和40個(gè)終端設(shè)備。標(biāo)準(zhǔn)設(shè)備和測試路由器一起組成一個(gè)網(wǎng)絡(luò)。
圖6 6LoWPAN協(xié)議測試平臺(tái)
4.2性能測試系統(tǒng)驗(yàn)證
本節(jié)利用ASP.NET開發(fā)的6LoWPAN協(xié)議性能測試軟件對(duì)6LoWPAN協(xié)議的丟包率,時(shí)延和遞交時(shí)間進(jìn)行測試。
4.2.1丟包率測試
根據(jù)對(duì)丟包率性能測試方法的研究,丟包率測試軟件的運(yùn)行效果如圖7。通信配置區(qū)域?yàn)闇y試路由器的IP地址和端口號(hào)的配置。數(shù)據(jù)統(tǒng)計(jì)區(qū)域包括網(wǎng)絡(luò)中每個(gè)路由節(jié)點(diǎn)實(shí)際收到數(shù)據(jù)包個(gè)數(shù),轉(zhuǎn)發(fā)數(shù)據(jù)包個(gè)數(shù)以及每個(gè)路由節(jié)點(diǎn)的丟包率,還包括整個(gè)網(wǎng)絡(luò)所有路由節(jié)點(diǎn)一共收到數(shù)據(jù)包個(gè)數(shù)和一共轉(zhuǎn)發(fā)數(shù)據(jù)包個(gè)數(shù)以及總丟包率。其頁面還分別用實(shí)時(shí)柱狀圖和實(shí)時(shí)曲線圖分別顯示了每個(gè)節(jié)點(diǎn)處理數(shù)據(jù)包個(gè)數(shù)和總的丟包率變化情況。
圖7 丟包率測試軟件運(yùn)行效果
4.2.2時(shí)延和遞交時(shí)間測試
時(shí)延和遞交時(shí)間測試軟件的運(yùn)行效果如圖8,包含遞交時(shí)間、排隊(duì)時(shí)延、處理時(shí)延和發(fā)送時(shí)延的結(jié)果曲線圖。在各自曲線下方數(shù)據(jù)表格中能夠查看瞬時(shí)偏差、平均值、最大值、最小值。
圖8 時(shí)延測試軟件運(yùn)行效果圖
本文在認(rèn)真分析6LoWPAN協(xié)議的基礎(chǔ)上,針對(duì)無線傳感網(wǎng)的特點(diǎn)[13]和要求以及RFC2544[14]文檔對(duì)性能測試的要求,研究了6LoWPAN網(wǎng)絡(luò)性能測試的目的和方法,設(shè)計(jì)出針對(duì)6LoWPAN無線傳感網(wǎng)的性能測試平臺(tái)并對(duì)丟包率和時(shí)延進(jìn)行了測試,后續(xù)工作還可以考慮添加時(shí)延抖動(dòng)、鏈路帶寬、路由收斂[15]等性能指標(biāo)的測量。
參考文獻(xiàn)
1IETF.IPv6 over Low power WPAN(IPv6)[EB/OL].[2006-07-07
2李俊玲.網(wǎng)絡(luò)性能測試系統(tǒng)功能的分析研究.河北科技大學(xué)碩士學(xué)位論文.2008,12
3易明華,王平,汪春華,陳良華,王浩文.EPA協(xié)議一致性測試方法[J].儀器儀表學(xué)報(bào),2007,03:451-455
4王平,黃源,謝昊飛.EPA應(yīng)用層證實(shí)服務(wù)響應(yīng)時(shí)延測試的研究與實(shí)現(xiàn)[J].廣東通信技術(shù),2009,02:54-57
5甘偉.面向6LoWPAN傳感網(wǎng)測試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].中國科學(xué)院大學(xué),2014
6IEEE 8B.15 WPAN Task Group 4.Standard for Part 15.4:Wireless medium access control(MAC)and physical layer(PHY)specifications for low-rate wireless personal area networks(WAPNs),2006
7T.Winter E,P.Thubert E,Brandt A,et al.RPL:IPv6 routing rotocol for low-power and lossy networks[J].Internet Requests for Comment,2012,rfc 6550
8Mulligan G.The 6LoWPAN architecture[C]//Proceedings of the 4th workshop on embedded networked sensors.ACM,2007:78-82
9海洋,壽國礎(chǔ),胡怡紅.基于RFC2544測試的網(wǎng)絡(luò)測試儀的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2008,34(13):95-97
10徐前方,郭軍.組播網(wǎng)絡(luò)中鏈路丟包率的測量[J].哈爾濱工業(yè)大學(xué)學(xué)報(bào),2009,(05):136-139
11黎文偉,王俊峰,謝高崗等.基于包對(duì)采樣的IP網(wǎng)絡(luò)時(shí)延變化測量方法[J].計(jì)算機(jī)研究與發(fā)展,2004,41(08):1352-1360
12馮建茹.端到端網(wǎng)絡(luò)時(shí)延的性能測量[D].北京郵電大學(xué),2006
13王雪.無線傳感網(wǎng)絡(luò)測量系統(tǒng)[M].機(jī)械工業(yè)出版社,2007
14RFC2544.Benchmarking terminology for network interconnection[S].Harvard University.1999
15張新秀,張淼,張振川.無線傳感器網(wǎng)絡(luò)分簇路由改進(jìn)算法及其性能[J].中國科技論文,2010,(02):92-96
收稿日期:(2015-12-15)
DOI:10.3969/j.issn.1006-6403.2016.03.009