龍 吟,吳銀鋒,王 霄,馮仁劍,萬江文
(北京航空航天大學儀器科學與光電工程學院,北京 100191)
無線傳感器網絡的服務質量反映網絡運行狀況的優劣。無線傳感器網絡具有節點數量大,節點資源能量受限的特點,評估計算機互聯網和通信網服務質量的方法無法適用于無線傳感器網絡,因此,需要研究新方法來評價無線傳感器網絡的服務質量。
目前,模擬是研究評價無線傳感器網絡服務質量的重要手段,但是現有的無線傳感器網絡模擬工具 ,如 NS-2[1]、GloMoSim[2]、TOSSIM[3]、OPNET[4]、SensorSim[5]、OMNeT++[6]、SENSE[7]等通常都對傳感、信道、拓撲等參數或模型做了諸多簡化和假設,對無線傳感器網絡服務質量的評價帶來理論誤差,難以真實體現無線傳感器網絡服務質量。基于測試系統技術的無線傳感器網絡服務質量評價能夠避免模型簡化帶來的理論誤差,根據網絡實測數據進行服務質量的評價,使評價結果真實可信。哈佛大學的 MoteLab[8]、俄亥俄州立大學的 Kansei[9]等報道了其對無線傳感器網絡測試系統技術的研究進展。他們的測試系統實現了對無線傳感器網絡運行參數的實時捕獲,以及對無線傳感器網絡的部分服務質量指標的量化評價。但是上述測試系統沒有從網絡分層模型的角度對無線傳感器網絡服務質量進行評價指標的劃分和測量,難以分析網絡各層服務質量對于無線傳感器網絡整體服務質量的影響以及網絡各層服務質量之間的影響。而實際上,服務質量的各個評價指標之間有一定的相關性,例如,路由魯棒性雖然無法直接測量,但和丟包率、通信成功率等指標關系密切。
針對上述問題,需要研究一種新的基于測試系統技術的無線傳感器網絡服務質量的評價算法,從網絡分層模型的角度,對無線傳感器網絡服務質量進行評價指標的劃分和測量,并且考慮各個評價指標之間的相關性。鑒于無線傳感器網絡服務質量的多樣性和復雜性,按照網絡分層模型,這里僅對無線傳感器網絡的網絡層服務質量進行量化評價,該方法同樣適用于評價其余層服務質量,具有較好的可擴展性。
如圖 1所示,無線傳感器網絡的測試系統由 PC端、測試床和傳感器節點組成。多個傳感器節點組成無線傳感器網絡,通過無線方式將數據包發送至匯聚節點(Sink節點),Sink節點再通過串口方式將數據包發送至PC端;同時,傳感器節點又通過有線方式將數據包發送至測試床,測試床通過以太網方式轉發給PC端;PC端通過對測試數據的測試處理,實現對無線傳感器網絡的網絡層服務質量的評價。

圖1 無線傳感器網絡測試系統
PC端的用戶應用程序接口如圖 2所示,支持Web訪問方式,用于對測試數據的存儲、分析和顯示。其具體功能包括:注冊功能,注冊節點及測試床的 ID,確保實驗數據的安全可靠;服務質量計算功能,根據原始采集信息及其相關算法,計算出服務質量的各個指標;實時顯示功能,實時顯示節點的信息,包括電源通斷信息、能耗信息、路由信息、傳感器信息、狀態信息等;歷史查詢功能,查詢測試床上傳的節點歷史信息;數據導出功能,將查詢到的數據信息導出到本地計算機上。

圖2 PC端軟件結構圖
目前,國內外關于無線傳感器網絡服務質量的評價指標體系尚未形成標準化和系統化[10-12],本文總結了無線傳感器網絡網絡層服務質量的各項評價指標及相互關系,如圖 3所示。

圖3 無線傳感器網絡的網絡層服務質量指標的分類及映射關系
定義 1丟包率 用于衡量無線傳感器網絡的數據傳輸可靠性,與節點電量、信道質量、吞吐量以及環境因素有關。按照測量范圍,丟包率分為節點丟包率和網絡丟包率:①節點丟包率定義為在一個測量周期內,網絡中其余節點發往該節點的數據包數量和該節點實際接收的數據包數量的差值與網絡中其余節點發往該節點的數據包數量的比值。②網絡丟包率定義為在一個測量周期內,所有源節點發送的數據包數量和網絡中所有目的節點實際接收的數據包數量的差值與所有源節點發送的數據包數量的比值。
定義 2通信成功率 定義為網絡中所有源節點向 Sink節點發送一定數量的數據包,Sink節點成功收到的數據包的總和與源節點發送的數據包的總和的比值。
定義 3吞吐量 用于衡量無線傳感器網絡的數據傳輸能力,與無線傳感器網絡的協議棧以及環境因素有關。吞吐量分為節點吞吐量和網絡吞吐量:①節點吞吐量定義為在一個測量周期內,節點產生、轉發和接收的數據包總量;②網絡吞吐量定義為在一個測量周期內,所有節點吞吐量的總和。
定義 4能量效率 用于衡量無線傳感器網絡節點之間傳輸數據包的能耗,與無線傳感器網絡的協議棧以及環境因素有關。能量效率定義為所有源到目的節點對中,傳送一個數據包的平均能耗。
定義 5路由魯棒性 用于衡量無線傳感器網絡在外界環境因素的擾動下仍然能夠保持系統原有性能的能力,主要與無線傳感器網絡的路由協議有關。
上述各個評價指標并非彼此孤立,而是存在相互制約的關系。制約關系分為正相關影響,負相關影響和不確定影響,已如圖 3所示。
假定無線傳感器網絡由 n個節點組成,每個節點分別用 Ni(i=1,2,…n)表示。所有節點實現無線組網的同時都通過有線方式連接到測試床。規定測量周期為 T。
節點丟包率的評價算法 節點 Ni的丟包率表示為 PNi。從節點 N1,..,Ni-1,Ni+1,…Nn中,隨機抽取若干樣本節點,組成發送節點集 S,S中的節點分別以速率v向被測節點 Ni發送數據包。節點 Ni通過有線方式將數據包轉發至測試床,測試床統計包數量記為 Nr。發送節點集 S也通過有線方式將數據包轉發至測試床,測試床統計包數量記為Ns。實驗持續m個測量周期 T,則節點丟包率計算公式如下:

通過對所有節點的節點丟包率取平均,可以得到網絡中的節點平均丟包率,用 PA表示:

網絡丟包率的評價算法 用 PT表示網絡丟包率,在一個 T內,PT維持在一個恒定值。假設源節點數目為 a,目的節點數目為 b。統計 T內網絡中所有源節點發送的數據包總數 NST和網絡中所有目的節點接收到的數據包總數 NRT,實驗持續 m個測量周期 T,則網絡丟包率 PT的計算公式如下:

用 Psuc來表示通信成功率,通過有線方式,統計網絡中所有的源節點發送的數據包數量,記為 Ns。同樣,通過有線方式,統計 Sink節點收到的數據包數量,記為 Nr。在 T內,Psuc維持在一個恒定值,實驗持續 m個測量周期 T,則 Psuc表示為:


用 THRi(i=1,2,…,n)來表示節點 Ni(i=1,2,…,n)的吞吐量,THRt表示網絡吞吐量。節點將接收、轉發和發送的數據包,通過有線方式上傳至測試床,統計出 T內節點 Ni的吞吐量。將所有節點的吞吐量相加,得到 THRt。由于節點在短時間內收到的包數量隨時間不同抖動較大,故采用指數加權位移平均算法,將歷史信息引入最終的測量結果。計算公式如下,其中 α∈(0,1],表示加權因子。

用 Ee來描述能量效率,單位為 J/packet。用ENi表示節點 Ni的能耗,UNi代表節點 Ni的電壓,INi代表節點 Ni的電流,TNi代表節點 Ni的測量時間。網絡中節點通過有線方式將能耗信息上傳至測試床,測試床通過統計 T內所有節點上傳的能耗信息,計算出總能耗,根據總能耗與網絡吞吐量的比值得到 Ee。能量效率計算公式如下:

路由魯棒性是一個抽象的概念,具有模糊性和隨機性。文獻[13]提出了一種利用云模型量化評價路由魯棒性的算法,該算法解決了路由魯棒性量化評價的問題,但是算法是在 Matlab環境下仿真實現的,數據來源是理想化的,存在較大的理論誤差。因此,需要通過實驗床測試真實無線傳感器網絡的運行參數,利用云模型算法計算真實環境下的無線傳感器網絡的路由魯棒性指標,以避免模擬環境下的理論誤差。
路由魯棒性的評價算法:在一定的節點丟包率下的網絡通信成功率大小在一定程度上反映了一個路由算法魯棒性的高低。首先,建立并云化規則前件。選擇節點平均丟包率 PA和網絡通信成功率Psuc作為規則前件,這兩個參數是可以準確測得的。然后,建立并云化規則后件。選擇路由魯棒性作為規則后件。規則前件及規則后件的等級劃分如表 1所示,對應的云模型數字特征如表 2所示。

表1 規則前件及規則后件的等級劃分

表2 規則前件及規則后件對應的云模型數字特征
最后,結合專家系統建立推理規則,推理規則矩陣 R如下:

其中,Ci表示在規則前件 Ai和 Bj的作用下,輸出的路由魯棒性等級。比如r23=C4代表的規則為,在丟包率為 A2,通信成功率為 B3的條件下,路由魯棒性為 C4。
在普通大樓內實驗室環境下部署 32個節點,定時采集室內環境信息并向監控終端匯報。節點集成Atmega128處理器、CC2420無線射頻收發器以及相應傳感器;節點上運行 TinyOS2.0操作系統;4個測試床對節點提供在線編程服務、供電控制服務以及實時能耗監測服務;監控終端收集并顯示節點上報數據,通過相應測試命令對網絡層服務質量進行綜合量化評價。實驗設置測量周期為 20 m in,數據包大小為 39字節,節點發包速率為 1packet/6s。無線傳感器網絡的測試系統如圖 4所示。

圖4 無線傳感器網絡的測試系統
Active Message Protocol(AM)是伯克利實驗室實現的 Many-to-one可靠路由協議,適用于數據收集型傳感器網絡。它建立一個以 Sink為根節點的星型拓撲,每個節點將自己的數據經由單跳方式傳送至 Sink節點。
Tymo Protocol是 IETF國際性互聯網標準化組織提出的基于 TinyOS的多跳路由協議。此協議主要針對具有點對點、自組織、大規模特性的網絡進行設計的。
根據前述網絡層服務質量評價算法,采用自主研發的無線傳感器網絡實驗床(包括傳感器節點、測試床和 PC端)分別對 AM協議和 Tymo協議進行量化評價,由實驗結果分析這二種路由協議對網絡層服務質量的影響。
(1)丟包率測試 根據前述丟包率測試算法,分別對基于 AM路由協議和 Tymo路由協議的無線傳感器網絡進行測量,根據公式(1)得到節點丟包率如表3、表 4所示。根據公式(2)得到網絡的節點平均丟包率:AM路由協議為 24%,Tymo路由協議為 28%。

表3 基于AM的節點丟包率信息

表4 基于 Tymo的節點丟包率信息
(2)通信成功率測試 通過統計 Sink節點接收數據包的數量和網絡中所有發往 Sink節點的數據包的數量,根據公式(4)得到測量周期內網絡通信成功率:AM路由協議為 76%,Tymo路由協議為81%。
(3)吞吐量測量 通過統計測量周期內,節點產生、轉發和接收數據包的總量,得到節點吞吐量如表 5所示。根據公式(6)得到測量周期內網絡的吞吐量為 :6 816 packet。

表5 基于Tymo的節點吞吐量信息
(4)能量效率測量 節點供電電壓恒為 3.3V,節點電流測量如表 6所示。根據公式(7),計算網絡所有節點的能耗為:3115.2J。根據能量效率的定義,令能耗除以測量周期內的網絡吞吐量,得到能量效率為 :0.45J/packet。

表6 基于Tymo的節點能耗信息
(5)路由魯棒性測試 根據 AM和 Tymo路由協議下的節點平均丟包率和網絡通信成功率,計算出網絡的路由魯棒性如表 7所示。其中 AM路由協議的魯棒性為 0.51,屬于魯棒性中。Tymo路由協議的魯棒性為 0.72,屬于魯棒性良。通過云模型得到的結論和實際應用相吻合。

表7 路由魯棒性測試信息
基于無線傳感器網絡測試系統技術的網絡層服務質量的評價算法,從網絡分層模型角度實現對丟包率、通信成功率、吞吐量、能量效率和路由魯棒性指標的量化評價,可以避免采用仿真方法帶來的理論誤差,并且能夠兼顧各個指標之間的相關性。實驗證明,該評價算法可信有效,具有較好的易用性和可擴展性。
[1]NS-2網絡模擬基礎與應用[M].國防工業出版社,2008.
[2]高振國,趙蘊龍,李香,等.GloMoSim無線網絡仿真器剖析[J].系統仿真學報,2006,18(suppl.2):672-675.
[3]Philip Levis,Nelson Lee,Matt Welsh,et al.TOSSIM:Accurate and Scalable Simulation of Entire TinyOS Applications[C]//Proceedings of SenSys'03,First ACM Conference on Embeded Networked Sensor Systems,November,2003:126-137.
[4]陳敏.OPENT網絡仿真[M].北京:清華大學出版社,2004.
[5]Sung Park,Andreas Savvides,Mani B.Srivastava.SensorSim:A Simulation Framework for Sensor Networks[C]//Proceedings of the 3rd ACM International Workshop on Modeling,Analysis and Simulation of Wireless and Mobile Systems,Aug,2000:104-111.
[6]Andras Varga,Rudolf Horning.An Overview of the OMNeT++Simulation Environment[C]//Proceedings of the 1st International Conference on Simulation Tools and Techniques for Communications,Networks and Systems& Workshops,2008:1-10.
[7]Advances in Pervasive Computing and Networking[M].B.Szymanski and B.Yener,Springer,2004.
[8]Werner-Allen G,SwieskowskiP,Welsh M.MoteLab:A Wireless Sensor Network Testbed[C]//IPSN'05.Fourth International Symposium on Information Processing in Sensor Networks,15 April,2005:483-488.
[9]Em re E,Anish A,Rajiv R,et al.Kansei:Sensor Testbed for At-Scale Experiments[C]//IPSN'06.second International TinyOS Technology Exchange,9-21 April,2006:399-406.
[10]文浩,林闖,任豐原,等.無線傳感器網絡的 QoS體系結構[J].計算機學報,2009,32(3):432-440.
[11]Pelemban E,Lee C G,Ekici E,et al.Probabilistic QoS Guarantee in Reliability and Timeliness Domains in Wireless Sensor Networks[C]//Proceedings of the IEEE INFO-COM.Miam i,2005:2646-2657.
[12]Wang Y,Liu X,Yin J.Requirement of Quality of Service in W ireless Sensor Network[C]//Proceedings of the International Conference on Networking,International Conference on Systems and International Conference on Mobile Communications and Learning Technologies.Mauritius,2006:116-120.
[13]閆斌,周小佳,王厚軍,等.無線傳感器網絡路由魯棒性研究[J].計算機應用研究,2009,26(6):2184-2186.