<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 無(wú)線(xiàn)傳感器網(wǎng)絡(luò )拓撲的監控與維護

無(wú)線(xiàn)傳感器網(wǎng)絡(luò )拓撲的監控與維護

作者: 時(shí)間:2012-05-21 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:以ZigBee協(xié)議為基礎,提出了一種新的結構的方法。創(chuàng )新性地設計了基于葉子節點(diǎn)的通訊模式,該模式運用協(xié)議棧自有運行流程來(lái)獲取節點(diǎn)的加入或丟失信息、實(shí)現,并通過(guò)設計一種基于關(guān)聯(lián)表的鏈表式存儲結構來(lái)進(jìn)行動(dòng)態(tài)。經(jīng)過(guò)在實(shí)際辦公環(huán)境平臺上驗證表明,該方法數據傳輸量小,資源占用少,操作簡(jiǎn)便,具有較強的應用推廣價(jià)值。

本文引用地址:http://dyxdggzs.com/article/160576.htm

關(guān)鍵詞:網(wǎng)絡(luò );ZigBee;拓撲結構;監控與

0 引言

隨著(zhù)網(wǎng)絡(luò )技術(shù)在軍事、工農業(yè)、城市管理、環(huán)境監控等各個(gè)領(lǐng)域的快速發(fā)展,作為系統基礎組成部分的網(wǎng)絡(luò )拓撲結構成為研究的一個(gè)重要方面。目前,國內外的科研機構在網(wǎng)絡(luò )拓撲發(fā)現以及拓撲的監控和管理方面開(kāi)展了大量的相關(guān)研究工作,但大多停留在理論和仿真層面,這些通過(guò)在高性能的PC機上搭建仿真模型來(lái)驗證算法效果的研究,大多缺乏能夠應用到實(shí)際系統的可行性案例。安徽財經(jīng)大學(xué)的趙濤,根據在聚合節點(diǎn)(sink)收集到網(wǎng)絡(luò )內部節點(diǎn)報文接收或丟失的情況,通過(guò)發(fā)現網(wǎng)絡(luò )中所有葉子節點(diǎn)到sink節點(diǎn)的數據傳輸路徑,來(lái)推測網(wǎng)絡(luò )的邏輯拓撲。該方法計算比較復雜,120節點(diǎn)規模網(wǎng)絡(luò )在主頻為2.8 GHz的CPU主機上運行尚需9秒的時(shí)間,同時(shí)會(huì )受到節點(diǎn)資源、計算速度、實(shí)施條件等限制,因此,這種方法很難在實(shí)際應用中實(shí)現。德州儀器(TI)公司的官方網(wǎng)站也給出了一種獲取網(wǎng)絡(luò )拓撲結構的方法,該方法采用發(fā)送網(wǎng)絡(luò )發(fā)現命令的方式,并通過(guò)返回結果來(lái)確定網(wǎng)絡(luò )拓撲結構。此法雖然能夠在實(shí)際應用中實(shí)施,但需要定期向網(wǎng)絡(luò )中的所有節點(diǎn)發(fā)送發(fā)現命令,因而數據消耗量巨大。

本文以Z-stack協(xié)議棧為基礎,采用葉子節點(diǎn)通訊方式,并利用協(xié)議自身的運行流程,提出了一種輕量數據消耗、真正面向應用的拓撲監控方案,同時(shí)通過(guò)設計一種基于關(guān)聯(lián)表的鏈式存儲結構來(lái)實(shí)現對網(wǎng)絡(luò )拓撲信息的維護,因而在解決網(wǎng)絡(luò )監控與維護方面更具有實(shí)際應用價(jià)值。

1 Z-stack協(xié)議棧原理簡(jiǎn)介

作為ZigBee聯(lián)盟的一個(gè)重要的組織成員,2007年,TI公司宣布推出業(yè)界領(lǐng)先的ZigBee協(xié)議棧Z-Stack。Z-Stack符合ZigBee 2006規范,能支持多種平臺,其中包括本系統使用的、面向IEEE 802.15.4/ZigBee的CC2430片上系統解決方案。

1.1 ZigBee協(xié)議棧的體系結構及信息傳遞流程

ZigBee協(xié)議棧的體系結構如圖1所示,由圖可見(jiàn),ZigBee協(xié)議采用分層體系結構,由物理層(PHY)、介質(zhì)接入控制子層(MAC層)、網(wǎng)絡(luò )層(NWK)和應用層(APL)組成。其中,應用層框架包括了應用支持子層(APS)、ZigBee設備對象(ZDO)及由制造商制定的應用對象。

a.JPG

在ZigBee網(wǎng)絡(luò )中,信息或數據的傳遞將依照上述層次結構實(shí)現。上層發(fā)送的數據或指令按照應用層-網(wǎng)絡(luò )層-MAC層-物理層的順序,從上至下依次進(jìn)行處理;底層返回的數據則按照物理層-MAC層-網(wǎng)絡(luò )層-應用層的順序,從下至卜處理后返回給上層用戶(hù)。每個(gè)層次負責發(fā)送到本層數據的分析和判斷,并對于屬于本層次的數據或指令做出相應的動(dòng)作響應;對于不屬十本層的數據,則按照規定格式打包后發(fā)送給上、下一層。

1.2 節點(diǎn)加入與失步流程

為了維護系統的正常運行,ZigBee協(xié)議棧還提供了一些必須的消息響應流程,其中包括節點(diǎn)加入網(wǎng)絡(luò )和失步響應的流程。

b.JPG

節點(diǎn)加入流程如圖2所示。當子節點(diǎn)申請加入網(wǎng)絡(luò )時(shí),會(huì )啟動(dòng)加入流程。子節點(diǎn)的加入請求通過(guò)其N(xiāo)WK層、MAC層、PHY層傳遞給父節點(diǎn);父節點(diǎn)收到加入通知消息后,又通過(guò)其PHY層、MAC層、NWK層將該情況上傳給應用層,最后通過(guò)ZDO JoinIndicationCB()函數的調用,得到子節點(diǎn)加入的消息。

節點(diǎn)失步流程是指終端節點(diǎn)丟失其父節點(diǎn)的同步信號時(shí),向上層報告的失步情況發(fā)生的流程。其具體流程如圖3所示。

c.JPG

終端節點(diǎn)每隔一段時(shí)間就會(huì )開(kāi)啟與父節點(diǎn)的同步,當在設定時(shí)間內沒(méi)有接收到父節點(diǎn)的同步信號時(shí),就會(huì )產(chǎn)生失步指示信息,協(xié)議棧將該失步信息層層上傳,最后通過(guò)調用ZDOSynclndicationCB()函數,將信息傳達到應用層。

1.3 關(guān)聯(lián)表

TI的Z-stack協(xié)議棧在全功能節點(diǎn)中可以維護associateddevices t結構的關(guān)聯(lián)表,關(guān)聯(lián)表中保存有與本節點(diǎn)直接關(guān)聯(lián)(父子節點(diǎn))的相關(guān)信息,包括關(guān)聯(lián)節點(diǎn)的短地址、設備類(lèi)型、連接狀態(tài)等,基本上可以滿(mǎn)足網(wǎng)絡(luò )拓撲結構監控和維護的信息需求。

TI的ZigBee協(xié)議棧雖然可為用戶(hù)開(kāi)發(fā)提供強大支持,但是在網(wǎng)絡(luò )監控和維護上并沒(méi)有專(zhuān)用的接口。一方面,該協(xié)議棧只能發(fā)現節點(diǎn)加入網(wǎng)絡(luò ),但是無(wú)法發(fā)現節點(diǎn)非主動(dòng)性的丟失或退出,因而不具備網(wǎng)絡(luò )拓撲監控的功能;另一方面,協(xié)議在每個(gè)全功能節點(diǎn)中部維護了與之關(guān)聯(lián)設備的關(guān)聯(lián)表,但是并沒(méi)有維護整體網(wǎng)絡(luò )的關(guān)聯(lián)信息,因而無(wú)法掌控網(wǎng)絡(luò )拓撲的全貌。鑒于協(xié)議棧在網(wǎng)絡(luò )拓撲功能上的不足和缺陷,本文以協(xié)議基本流程為基礎,提出一種實(shí)現整體網(wǎng)絡(luò )拓撲監控和維護的方法,該方法可以滿(mǎn)足一般系統對于拓撲結構的監控和維護需求。

2 網(wǎng)絡(luò )拓撲結構監控

網(wǎng)絡(luò )拓撲結構監控的主要目的是實(shí)現拓撲結構的建立和在結構發(fā)生變化時(shí)及時(shí)獲取變化情況,其中最主要的是實(shí)現節點(diǎn)加入和退出事件的捕捉。節點(diǎn)加入事件的獲取相對容易,可以通過(guò)加入節點(diǎn)主動(dòng)上報等方式來(lái)獲??;而節點(diǎn)丟失事件獲取要復雜得多?,F階段,對節點(diǎn)丟失情況的監控多采用系統定期查詢(xún)的手段。采用查詢(xún)方法時(shí),其實(shí)時(shí)性與查詢(xún)周期的長(cháng)短直接相關(guān):查詢(xún)周期設置較長(cháng),拓撲變化反映時(shí)間增長(cháng),實(shí)時(shí)性變差;而查詢(xún)周期設置較短,則傳輸數據量增大,占用系統資源,往往很難在二者之間找到平衡點(diǎn)。協(xié)議棧中數據或消息的傳遞是一個(gè)復雜的過(guò)程,為了盡可能地降低系統資源的占用、節約能耗,除了維護系統正常運行所必須的數據通訊外,還應盡量減少人為添加(應用層)的數據通訊量。因此,最好的辦法就是利用協(xié)議自身的數據傳遞或者節點(diǎn)加入、失步等流程來(lái)實(shí)現相關(guān)信息的獲取。

本文設計了一種基于網(wǎng)關(guān)——葉子節點(diǎn)通訊的節點(diǎn)丟失情況獲取方法,該方法可以利用協(xié)議棧自身的運行流程,以較少的數據通訊量和簡(jiǎn)單的操作,實(shí)現網(wǎng)絡(luò )中所有節點(diǎn)的丟失情況獲取。

2.1 節點(diǎn)加入事件的獲取

通常情況下,節點(diǎn)加入事件多采用加入節點(diǎn)主動(dòng)上報的方法來(lái)獲取。該方法操作簡(jiǎn)單,但是需要人為地發(fā)送相關(guān)加入信息,會(huì )增加系統數據通訊量。由圖2所示的節點(diǎn)加入流程可知,如果有子節點(diǎn)加入網(wǎng)絡(luò ),加入的指示信息都會(huì )通過(guò)ZDOJoinIndmationCB()函數的調用報告給父節點(diǎn)。即該函數的調用證明有了節點(diǎn)的加入事件。因此,本文通過(guò)在此函數中添加向應用程序報告的功能,即可通知用戶(hù)了節點(diǎn)加入事件的發(fā)生。

2.2 節點(diǎn)丟失信息的獲取

由圖3所示的流程可知,協(xié)議棧通過(guò)調用vold ZDOSyncIndicationCB(byte type,uint16 shortAddr)函數可實(shí)現失步情況的報告。該函數具有節點(diǎn)丟失的指示功能,并能夠指示丟失節點(diǎn)與本節點(diǎn)的父子關(guān)系和短地址等。但在實(shí)際的應用中發(fā)現,該函數的調用是有條件限制的,具體實(shí)施條件如下:

父節點(diǎn)丟失:從失步報告流程可知,終端節點(diǎn)能夠自動(dòng)輪詢(xún)發(fā)現其父節點(diǎn)同步信號的丟失,而無(wú)需人為添加任何觸發(fā)條件,引發(fā)函數調用。但路由節點(diǎn)不支持與父節點(diǎn)的輪詢(xún)機制,因而不能產(chǎn)生父節點(diǎn)丟失情況的報告。

子節點(diǎn)丟失:對于包括終端節點(diǎn)在內的所有類(lèi)型節點(diǎn)的子節點(diǎn)丟失,在未加相應處理的情況下,協(xié)議棧都不會(huì )引發(fā)該函數的調用。

由實(shí)施條件可知,該函數的丟失指示并不適用于所有類(lèi)型節點(diǎn)的丟失情況,因此,如果要得到除終端父節點(diǎn)外網(wǎng)絡(luò )中所有節點(diǎn)的丟失情況,就需要人為加入其他處理,以觸發(fā)ZDOsynclndicationCB()函數的調用,從而實(shí)現丟失事件的獲取。

2.3 葉子節點(diǎn)通訊觸發(fā)方法

通常采用的基于查詢(xún)的網(wǎng)絡(luò )發(fā)現機制部需要在所有節點(diǎn)間發(fā)送數據,因而增大系統的數據開(kāi)銷(xiāo)。這里以圖4所示的拓撲結構為例,圖中的葉子通訊需要進(jìn)行14條數據的查詢(xún)和14條數據的應答才能夠完成一次節點(diǎn)丟失情況的獲取。為了盡可能減少數據通訊和操作的復雜度,本文設計了一種基于網(wǎng)關(guān)——葉子節點(diǎn)通訊的節點(diǎn)丟失情況獲取方法,以便用較少的數據通訊量和簡(jiǎn)單的操作來(lái)實(shí)現網(wǎng)絡(luò )中聽(tīng)有節點(diǎn)的丟失情況獲取。

d.JPG

研究發(fā)現,失步函數的觸發(fā)可以通過(guò)加入數據通訊來(lái)實(shí)現。因為在數據發(fā)送的過(guò)程中,協(xié)議棧會(huì )開(kāi)啟數據發(fā)送流程,數據發(fā)送后則會(huì )自動(dòng)檢測接收方應答幀。這樣,如果節點(diǎn)丟失,則發(fā)送節點(diǎn)無(wú)法接收到有效應答,進(jìn)而引發(fā)節點(diǎn)失步指示函數的觸發(fā)。

具體觸發(fā)時(shí),如果節點(diǎn)之間有數據通訊,發(fā)送數據節點(diǎn)則能夠發(fā)現接收數據節點(diǎn)的丟失,從而引發(fā)vold ZDOSynclndicationCB(byte type,uint16 shortAddr)函數的調用。


上一頁(yè) 1 2 3 4 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>