更具魯棒性的ZigBee解決方案的開發(fā)設(shè)計
3. ZigBee路由
ZigBee包括一個用于AODV網(wǎng)狀路由的基本框架。如果一個設(shè)備需要向其它設(shè)備發(fā)送數(shù)據(jù),它首先需要發(fā)現(xiàn)一條可能要經(jīng)過多臺路由器才能到達(dá)目標(biāo)設(shè)備的路由。網(wǎng)狀路由允許動態(tài)地建立、修改或替換傳輸路徑,從而保持設(shè)備間有一條可靠的路徑。
然而,除網(wǎng)狀路由之外,ZigBee規(guī)范還經(jīng)常依賴樹狀路由。在樹狀路由中,數(shù)據(jù)將在源設(shè)備和目標(biāo)設(shè)備之間的“樹”狀路由上嚴(yán)格地按照從父到子或從子到父的路徑傳輸。
當(dāng)節(jié)點移動或刪除時路由可能出現(xiàn)問題。這時如果單個節(jié)點無法從一條路由中隔離開來,那么整個樹狀路由就無法定位故障點。而網(wǎng)狀網(wǎng)絡(luò)就能在現(xiàn)有路由發(fā)生故障時發(fā)現(xiàn)一條新路由。ZigBee協(xié)議棧按照規(guī)范采用樹狀和網(wǎng)狀路由的ZigBee 1.0標(biāo)準(zhǔn)而建立。兩種路由之間的交互是相當(dāng)復(fù)雜的,而且協(xié)議棧之間的交互也是不斷變化的。但是,增強(qiáng)型ZigBee規(guī)范(2006)增加了一個nwkUseTreeRouting功能,該功能可以使整個樹狀路由徹底斷開,再由(NLME)路由發(fā)現(xiàn)請求(route-discovery-request)原語根據(jù)需要強(qiáng)制進(jìn)行路由發(fā)現(xiàn)。這些功能可以解決與樹狀路由相關(guān)的問題,并且允許開發(fā)商充分發(fā)揮網(wǎng)狀路由的優(yōu)勢。
4. ZigBee互操作性
ZigBee規(guī)范包括一些可以用來定義各種網(wǎng)絡(luò)的配置功能。開發(fā)商可以很容易地配置以下參數(shù):目標(biāo)系統(tǒng)中的路由器和/或終端設(shè)備數(shù)量;安全級別;路由表和鄰居表規(guī)模;網(wǎng)絡(luò)最大深度(從協(xié)調(diào)器到最遠(yuǎn)派生設(shè)備的連接深度);協(xié)調(diào)器/父路由器允許的子路由器和終端設(shè)備的最大數(shù)量。
ZigBee聯(lián)盟研發(fā)出了為這些不同協(xié)議棧建立通用設(shè)置的公共框架-可配置參數(shù)表。為了完成框架(如家庭控制協(xié)議棧框架就定義了開燈、關(guān)燈、或切換一個燈光的簇ID)內(nèi)的共同任務(wù),該框架還定義了一些稱作簇ID的接口。
終端設(shè)備必須圍繞可互操作的同一框架來設(shè)計。因此,應(yīng)用開發(fā)商必須設(shè)置他們的協(xié)議棧參數(shù)以匹配公共框架所規(guī)定的參數(shù)值,從而確保與采用同一框架的其它解決方案的互操作性。另外,開發(fā)商也可以為了滿足其設(shè)計而通過采用專用(定制)的框架來自由修改協(xié)議棧參數(shù)。不過,在專用框架中所定義的簇ID不具備與基于公共框架的設(shè)備互操作的能力。
由于開發(fā)商具有選擇框架的靈活性,從而并非所有的ZigBee設(shè)備都能互操作。雖然這種靈活性一開始會在市場上引起一些混亂,但允許開發(fā)商決定其產(chǎn)品是否要與其他供應(yīng)商的設(shè)備進(jìn)行互操作。在不需要互操作性的場合,功能強(qiáng)大的ZigBee可以圍繞一個專用框架進(jìn)行開發(fā),并剪裁協(xié)議棧參數(shù)來滿足特殊應(yīng)用需求。
評論