基于節(jié)能的無線傳感器網(wǎng)絡(luò)路由協(xié)議研究
盡管LEACH協(xié)議具備以上優(yōu)點,但也存在一些不足之處。
(1)由于LEACH算法假定所有節(jié)點能夠與匯聚節(jié)點直接通信,并且每個節(jié)點都具備支持不同MAC協(xié)議的計算能力,因此該協(xié)議不適合在大規(guī)模的無線傳感器網(wǎng)絡(luò)中應(yīng)用。
(2)LEACH算法是讓網(wǎng)絡(luò)中自組織的形成簇,由于簇頭節(jié)點是隨機產(chǎn)生的,這樣無法保證簇頭節(jié)點的合理分布。因此,很有可能出現(xiàn)被選擇的簇頭節(jié)點集中在網(wǎng)絡(luò)中某一區(qū)域的現(xiàn)象,這樣就會使得一些節(jié)點的周圍沒有任何簇。
(3)LEACH算法忽略了被選簇頭在網(wǎng)絡(luò)內(nèi)的分布狀態(tài)和節(jié)點間不同的通信距離而導(dǎo)致的節(jié)點能量損耗的不平衡。
1.2 PEGASIS協(xié)議
PEG ASIS(Power一Efficient Gathering in Sensor、Information Systems)協(xié)議是在LEACH基礎(chǔ)上改進設(shè)計的。PEGASIS算法的主要思想是在傳感器網(wǎng)絡(luò)中形成一條覆蓋所有節(jié)點的“鏈”,節(jié)點從它的一邊的鄰居節(jié)點接收數(shù)據(jù),然后將接收到的數(shù)據(jù)和自身的數(shù)據(jù)進行融合處理之后形成一個與原來數(shù)據(jù)包同樣大小的新數(shù)據(jù)包,再將得到的新數(shù)據(jù)包發(fā)送給它的另外一邊的鄰居節(jié)點,以此類推,數(shù)據(jù)最終被傳到一個“領(lǐng)導(dǎo)”節(jié)點,由這個“領(lǐng)導(dǎo)”節(jié)點把數(shù)據(jù)發(fā)送給基站。節(jié)點充當(dāng)“領(lǐng)導(dǎo)”節(jié)點與基站通信是輪流的,當(dāng)網(wǎng)絡(luò)中的所有節(jié)點都充當(dāng)過“領(lǐng)導(dǎo)”節(jié)點后,節(jié)點再進行新一回合的輪流通信。
在PEGASIS算法中,“鏈”的形成過程是整個通信的關(guān)鍵?!版湣钡男纬刹捎玫姆椒ㄊ牵汗?jié)點發(fā)送能量遞減的測試信號通過監(jiān)測應(yīng)答來確定離自己最近的相鄰節(jié)點。通過這種方式,網(wǎng)絡(luò)中的所有節(jié)點能夠了解彼此的位置關(guān)系,找到自己的鄰居節(jié)點,每一輪通信中節(jié)點只需要與自己的鄰居節(jié)點進行通信。為確保每個節(jié)點都有其相鄰節(jié)點,從離基站最遠(yuǎn)的節(jié)點開始構(gòu)建,鏈中鄰居節(jié)點的距離會逐漸增大,因為已經(jīng)在鏈中的節(jié)點不能被再次訪問。依次下去,最終形成一條包含網(wǎng)絡(luò)中所有節(jié)點的鏈。
當(dāng)節(jié)點鏈形成并且選舉出領(lǐng)導(dǎo)節(jié)點后,就開始了數(shù)據(jù)傳輸過程。PEGASIS中的數(shù)據(jù)傳輸使用Token(令牌)機制,如圖1所示。Token很小,故能耗較少。在一輪通信中,領(lǐng)導(dǎo)節(jié)點用Token控制數(shù)據(jù)從鏈尾開始傳輸。圖中,C2為領(lǐng)導(dǎo)節(jié)點,將Token沿著鏈傳給C0,Co傳數(shù)據(jù)給C1,C1將C0數(shù)據(jù)和自身數(shù)據(jù)進行融合后形成一個相同長度的數(shù)據(jù)包,再傳給C2。然后,C2將Token傳給C4,C2以相同的方式接收來自C3,C4的數(shù)據(jù)。這些數(shù)據(jù)在C2處進行融合后,發(fā)給基站。本文引用地址:http://cafeforensic.com/article/163861.htm
PEGASIS是在LEACH基礎(chǔ)上建立的路由協(xié)議,PEGASIS比LEACH節(jié)省能量主要體現(xiàn)在以下幾個方面:
(1)在本地數(shù)據(jù)聚合階段,PEGASIS算法中每個節(jié)點只與離自己最近的鄰居節(jié)點進行通信,而不是像LEACH算法一樣需要與簇頭節(jié)點進行通信,PEGAS―IS算法大大減小了每輪通信中每個節(jié)點的通信距離,從而降低了每個節(jié)點在每一輪通信中所消耗的能量。
(2)LEACH算法中,一個簇頭要接收多個簇成員節(jié)點發(fā)送過來的數(shù)據(jù),而PEGASIS算法中,一個領(lǐng)導(dǎo)節(jié)點最多只需要接收2個節(jié)點發(fā)送過來的數(shù)據(jù)包。
(3)在每一輪通信中,PEGASIS算法只有1個領(lǐng)導(dǎo)節(jié)點與基站通信,而LEACH中則有多個簇頭節(jié)點與基站通信。PEGASIS也存在一些不足之處:節(jié)點維護位置信息(相當(dāng)于傳統(tǒng)網(wǎng)絡(luò)的拓?fù)湫畔?需要額外的資源,在網(wǎng)絡(luò)全局信息比較難以獲得的情況下就不合適了,而且領(lǐng)導(dǎo)節(jié)點的惟一性使得其成為整個通信過程的瓶頸。
2 其他典型路由協(xié)議
2.1 SPIN協(xié)議
SPIN(Sensor Protocols for Information via Nego―tiation)協(xié)議的設(shè)計思想是:每個節(jié)點在發(fā)送數(shù)據(jù)前通過協(xié)商來確定其他節(jié)點是否需要該數(shù)據(jù);同時,節(jié)點通過“元數(shù)據(jù)”確定接收數(shù)據(jù)中是否有重復(fù)信息存在。節(jié)點通過3種消息進行通信:ADV(數(shù)據(jù)描述),REQ(數(shù)據(jù)請求)和DATA(數(shù)據(jù))。源節(jié)點在傳送DATA信息之前,首先向相鄰節(jié)點廣播包含DATA數(shù)據(jù)描述機制的ADV信息,需要該DATA信息的鄰節(jié)點向信息源發(fā)送REQ請求信息,源節(jié)點在收到REQ信息后,有選擇地將DATA信息發(fā)送給相應(yīng)的鄰節(jié)點。收到DATA后,該鄰節(jié)點可以作為信息源,按照前述過程將DATA信息繼續(xù)傳播到網(wǎng)絡(luò)中的其他節(jié)點。該協(xié)議的優(yōu)點是:ADV消息減輕了內(nèi)爆問題;通過數(shù)據(jù)命名解決了交疊問題;節(jié)點根據(jù)自身資源和應(yīng)用信息決定是否進行ADV通告,避免了資源利用盲目的問題,進而有效地節(jié)約了能量。其缺陷是:當(dāng)產(chǎn)生或收到數(shù)據(jù)的節(jié)點的所有鄰節(jié)點均不需要該數(shù)據(jù)時,將導(dǎo)致數(shù)據(jù)不能繼續(xù)轉(zhuǎn)發(fā),會使較遠(yuǎn)節(jié)點無法得到數(shù)據(jù)。
評論