摘要:路由協議是無線傳感器網絡(Wireless"Sensor"Network,WSN)教學中的一個重點和難點,如何讓學生更深刻地理解路由協議,進一步掌握無線傳感器網絡數據傳輸過程有著非常重要的作用。本文闡述了無線傳感器網絡的基本概念,介紹了WSN的五層模型及其路由協議,并借助Matlab仿真軟件,對經典的路由協議進行仿真。最后以Flooding協議和LEACH協議為例,在仿真中分析其性能,讓抽象概念變得直觀和具體。
關鍵詞:路由協議;無線傳感器網絡;Matlab;仿真軟件
中圖分類號:TB"""""""文獻標識碼:A""""""doi:10.19311/j.cnki.16723198.2025.08.077
0"引言
無線傳感器網絡是物聯網工程專業的必修專業課程,學習無線傳感器網絡的原理及其常見技術是理解整個物聯網系統運行方式的基礎。學生通過學習無線傳感器網絡,從而掌握物聯網的核心技術,進一步鞏固專業基礎知識。教師采用合理的現代化教學手段、引入可視化的軟件,將理論與實踐結合,讓抽象的概念變得更加具體和形象,是幫助學生提高技能的有效方式。
傳感器網絡路由協議是無線傳感器網絡課程中比較抽象的一部分內容,本文借助Matlab仿真軟件進行仿真,使復雜的問題簡單化,有利于學生更直觀地掌握路由協議。
1"無線傳感器網絡
1.1"基本概念
無線傳感器網絡是由眾多散布在特定區域內、具備無線通信與計算功能的傳感器節點組成,通過自組織多跳傳輸方式形成WSN網絡體系,旨在感知、收集和處理有限區域內待測對象的信息,并將其傳輸給觀察者[1]。一個常見的傳感器節點包括感知單元、處理單元、通信單元、能量供給單元和其他應用相關單元[2]。而無線傳感器網絡體系又包含了傳感器節點、任務管理節點、匯聚節點、外部網絡和通信衛星等幾個部分[3],如圖1所示。傳感器節點散布在有限的區域內,任意一個傳感器節點都能夠采集該區域內的數據信息,完成數據的分析和簡單處理后,將數據采用“多跳”路由的形式發送到一個指定的匯聚節點。匯聚節點則對收到的數據進一步處理并存儲,然后將它們轉發到外部網絡,從而完成了無線傳感器網絡與外部網絡間的通信。
1.2"分層模型及其功能
WSN通常采用如圖2所示的分層模型,自底向上可以分為5層:物理層、MAC層、網絡層、傳輸層以及應用層。物理層負責產生載波頻率和調制解調等操作;MAC層負責建立網絡結構,并為節點合理分配無線通信資源等工作;網絡層負責數據融合、路由選擇與維護等工作;傳輸層負責管理和控制數據流的傳輸,并與外部網絡進行通信等工作;應用層由應用軟件構成,主要負責管理和監測任務。
1.3"路由協議及分類
路由協議在任何網絡體系中都是不可缺少的組成部分,它的主要作用是尋找源節點與目標節點間的最佳路徑,確保數據沿著最佳路徑正確傳輸。根據WSN網絡管理的邏輯結構,能夠把路由協議分成平面路由和分層路由兩種類型。
平面路由:無線傳感器網絡中各節點具有相同的功能,沒有其他特殊節點,將整個網絡拓撲圖抽象為一個平面圖。常見的平面路由協議包括:SPIN協議、Flooding泛洪協議等。
分層路由:在無線傳感器網絡中引入簇的概念,將區域內的所有節點按照層次進行劃分,每個節點只需知道其相鄰節點的信息,而不用了解整個網絡的拓撲結構。常見的分層路由協議包括:PEGASIS協議、LEACH協議等[4]。
2"Matlab在WSN教學中的應用
下面利用Matlab將抽象的WSN路由協議形象化,方便學習者更好的理解。
2.1"采用Matlab分析Flooding協議
Flooding協議是一種典型的平面路由協議,它的核心思想是將源節點數據副本發送給每一個與它相鄰的節點,接收數據副本的節點又將其發送到與之相鄰的每一個節點(但不包括剛剛給它們發送數據的節點),像這樣循環直至數據傳達到目的節點或者該區域內所有節點均擁有該數據副本為止。
本文在Matlab環境下對Flooding協議進行性能仿真,深刻地理解泛洪協議的優缺點。首先,定義一個長方形區域,在其中部署50個節點,從源節點到目的節點,按照Flooding協議的核心思想傳遞數據副本,為了更深入的理解該協議的性能,觀察3種不同轉發條件下的數據傳遞情況,如圖3所示每個狀態各自運行10次的過程。
狀態一:將收到的數據副本傳輸給所有鄰居節點,用紅線表示路線
狀態二:將收到的數據副本傳輸給5個鄰居節點,用綠線表示路線
狀態三:將收到的數據副本傳輸給3個鄰居節點,用藍線表示路線
完成10條不同路線的查找后,再將這3種狀態下成功獲取查找路線的時間繪成如圖4所示的運行效率對比圖。其中,橫坐標是路線序號,縱坐標是傳輸時延??梢娒看螌祿北緜鬏斀o隨機選取的幾個相鄰節點,而不是采用廣播形式傳輸給所有鄰居,這有利于緩和信息爆炸,但大概率會增加端到端的傳輸時延。
2.2"采用Matlab分析LEACH協議
LEACH協議是一種典型的分層路由協議,它的核心思想是將指定區域內的節點劃分為簇頭節點和簇內節點,通過定期隨機選擇簇頭節點來與簇內節點相協調,簇頭節點還負責整合數據與傳輸數據的工作。LEACH協議以“輪”為周期[5],每一輪包含兩個階段:
簇的建立階段:距離近的節點不斷變化形成簇,隨機選擇簇頭,且每隔一定時間需重新選擇簇頭。
數據通信階段:簇內節點通過單跳的方式將數據發送給距離自己最近的簇頭,簇頭節點將收集到的數據先融合然后再傳輸給匯聚節點。
本文在Matlab環境下對LEACH協議進行性能仿真,深刻地理解LEACH協議的優缺點。
首先,在一個100mm*100mm的方形區域內,部署100個節點[6],假設被選中簇頭的概率p=0.05,初始能量Eo=0.02,最大循環輪數設為3000,如圖5所示WSN分布圖,其中圓點象征著傳感器節點,四角星象征著匯聚節點。
按照LEACH協議的核心思想以“輪”為周期傳遞數據副本,為了更深入地理解該協議的性能,重復進行了5次測試,將這5次運行過程中每一輪變化后死亡節點個數變化的趨勢呈現,LEACH協議以同等概率從不同的節點中選擇簇頭節點,這是一種動態隨機過程,同時將消耗能量較多的數據融合、數據轉發任務也輪流地分配給WSN中的節點,可以避免某些節點能量消耗過快,從而提高整體網絡性能。
3"總結
本文針對無線傳感器網絡這一課程內容作了簡要概述,借助Matlab軟件對較為抽象的WSN路由協議進行仿真,分析了兩個最典型的路由協議各自的性能,通過觀察仿真所展現的有限傳感區域內節點間數據傳輸的過程,能夠更加直觀、深刻地理解這些路由協議運行狀態。
參考文獻
[1]孫利民.無線傳感器網絡[M].北京:清華大學出版社,2005.
[2]李士寧等.傳感網原理與技術[M].北京:機械工業出版社,2014.
[3]陳中倩.各向異性無線傳感器網絡DV-Hop算法研究[D].南京郵電大學,2020.
[4]常宇飛.基于能量優化的無線傳感器網絡分簇路由算法研究[D].華南理工大學,2021.
[5]李登,徐東明.無線傳感器網絡LEACH算法的改進[J].計算機工程與設計,2020,41(07):18521857.
[6]王艷嬌,唐琦.改進的異構無線傳感器網絡路由能量算法[J].計算機工程與應用,2019,55(22):8085.