解析ZigBee堆棧架構
ZigBee標準定義了一種堆棧協(xié)議,這種協(xié)議能夠確保無(wú)線(xiàn)設備在低成本、低功耗和低數據速率網(wǎng)絡(luò )中的互操作性。本文簡(jiǎn)要說(shuō)明ZigBee標準中規定的ZigBee堆棧結構。
本文引用地址:http://dyxdggzs.com/article/83303.htmZigBee堆棧是在IEEE 802.15.4標準基礎上建立的,定義了協(xié)議的MAC和PHY層。ZigBee設備應該包括IEEE802.15.4(該標準定義了RF射頻以及與相鄰設備之間的通信)的PHY和MAC層,以及ZigBee堆棧層:網(wǎng)絡(luò )層(NWK)、應用層和安全服務(wù)提供層。圖1給出了這些組件的概況。
ZigBee堆棧層
每個(gè)ZigBee設備都與一個(gè)特定模板有關(guān),可能是公共模板或私有模板。這些模板定義了設備的應用環(huán)境、設備類(lèi)型以及用于設備間通信的簇。公共模板可以確保不同供應商的設備在相同應用領(lǐng)域中的互操作性。
設備是由模板定義的,并以應用對象(Application Objects)的形式實(shí)現(見(jiàn)圖)。每個(gè)應用對象通過(guò)一個(gè)端點(diǎn)連接到ZigBee堆棧的余下部分,它們都是器件中可尋址的組件。
從應用角度看,通信的本質(zhì)就是端點(diǎn)到端點(diǎn)的連接(例如,一個(gè)帶開(kāi)關(guān)組件的設備與帶一個(gè)或多個(gè)燈組件的遠端設備進(jìn)行通信,目的是將這些燈點(diǎn)亮)。
![]() |
圖1:ZigBee堆棧架構。 |
端點(diǎn)之間的通信是通過(guò)稱(chēng)之為簇的數據結構實(shí)現的。這些簇是應用對象之間共享信息所需的全部屬性的容器,在特殊應用中使用的簇在模板中有定義。圖2就是設備及其接口的一個(gè)例子:
圖2:由模板定義好的設備描述。
每個(gè)接口都能接收(用于輸入)或發(fā)送(用于輸出)簇格式的數據。一共有二個(gè)特殊的端點(diǎn),即端點(diǎn)0和端點(diǎn)255。端點(diǎn)0用于整個(gè)ZigBee設備的配置和管理。應用程序可以通過(guò)端點(diǎn)0與ZigBee堆棧的其它層通信,從而實(shí)現對這些層的初始化和配置。附屬在端點(diǎn)0的對象被稱(chēng)為ZigBee設備對象(ZD0)。端點(diǎn)255用于向所有端點(diǎn)的廣播。端點(diǎn)241到254是保留端點(diǎn)。
所有端點(diǎn)都使用應用支持子層(APS)提供的服務(wù)。APS通過(guò)網(wǎng)絡(luò )層和安全服務(wù)提供層與端點(diǎn)相接,并為數據傳送、安全和綁定提供服務(wù),因此能夠適配不同但兼容的設備,比如帶燈的開(kāi)關(guān)。
APS使用網(wǎng)絡(luò )層(NWK)提供的服務(wù)。NWK負責設備到設備的通信,并負責網(wǎng)絡(luò )中設備初始化所包含的活動(dòng)、消息路由和網(wǎng)絡(luò )發(fā)現。應用層可以通過(guò)ZigBee設備對象(ZD0)對網(wǎng)絡(luò )層參數進(jìn)行配置和訪(fǎng)問(wèn)。
802.15.4 MAC層
IEEE 802.15.4標準為低速率無(wú)線(xiàn)個(gè)人域網(wǎng)(LR-WPAN)定義了OSI模型開(kāi)始的兩層。PHY層定義了無(wú)線(xiàn)射頻應該具備的特征,它支持二種不同的射頻信號,分別位于2450MHz波段和868/915MHz波段。2450MHz波段射頻可以提供250kbps的數據速率和16個(gè)不同的信道。868/915MHz波段中,868MHz支持1個(gè)數據速率為20kbps的信道,915MHz支持10個(gè)數據速率為40kbps的信道。
MAC層負責相鄰設備間的單跳數據通信。它負責建立與網(wǎng)絡(luò )的同步,支持關(guān)聯(lián)和去關(guān)聯(lián)以及MAC層安全:它能提供二個(gè)設備之間的可靠鏈接。
關(guān)于服務(wù)接入點(diǎn)
ZigBee堆棧的不同層與802.15.4 MAC通過(guò)服務(wù)接入點(diǎn)(SAP)進(jìn)行通信。SAP是某一特定層提供的服務(wù)與上層之間的接口。
ZigBee堆棧的大多數層有兩個(gè)接口:數據實(shí)體接口和管理實(shí)體接口。數據實(shí)體接口的目標是向上層提供所需的常規數據服務(wù)。管理實(shí)體接口的目標是向上層提供訪(fǎng)問(wèn)內部層參數、配置和管理數據的機制。
ZigBee的安全性
安全機制由安全服務(wù)提供層提供。然而值得注意的是,系統的整體安全性是在模板級定義的,這意味著(zhù)模板應該定義某一特定網(wǎng)絡(luò )中應該實(shí)現何種類(lèi)型的安全。
每一層(MAC、網(wǎng)絡(luò )或應用層)都能被保護,為了降低存儲要求,它們可以分享安全鑰匙。SSP是通過(guò)ZD0進(jìn)行初始化和配置的,要求實(shí)現高級加密標準(AES)。ZigBee規范定義了信任中心的用途。信任中心是在網(wǎng)絡(luò )中分配安全鑰匙的一種令人信任的設備。
ZigBee堆棧容量和ZigBee設備
根據ZigBee堆棧規定的所有功能和支持,我們很容易推測ZigBee堆棧實(shí)現需要用到設備中的大量存儲器資源。
不過(guò)ZigBee規范定義了三種類(lèi)型的設備,每種都有自己的功能要求:ZigBee協(xié)調器是啟動(dòng)和配置網(wǎng)絡(luò )的一種設備。協(xié)調器可以保持間接尋址用的綁定表格,支持關(guān)聯(lián),同時(shí)還能設計信任中心和執行其它活動(dòng)。一個(gè)ZigBee網(wǎng)絡(luò )只允許有一個(gè)ZigBee協(xié)調器。
ZigBee路由器是一種支持關(guān)聯(lián)的設備,能夠將消息轉發(fā)到其它設備。ZigBee網(wǎng)格或樹(shù)型網(wǎng)絡(luò )可以有多個(gè)ZigBee路由器。ZigBee星型網(wǎng)絡(luò )不支持ZigBee路由器。
ZigBee端終設備可以執行它的相關(guān)功能,并使用ZigBee網(wǎng)絡(luò )到達其它需要與其通信的設備。它的存儲器容量要求最少。
然而需要特別注意的是,網(wǎng)絡(luò )的特定架構會(huì )戲劇性地影響設備所需的資源。NWK支持的網(wǎng)絡(luò )拓撲有星型、樹(shù)型和網(wǎng)格型。在這幾種網(wǎng)絡(luò )拓撲中,星型網(wǎng)絡(luò )對資源的要求最低。
本文小結
ZigBee堆棧應該可以提供ZigBee規范要求的所有功能,因此制造商的重點(diǎn)工作是開(kāi)發(fā)實(shí)際的應用。為了更加容易實(shí)現,如果制造商使用某種公共模板,那么可用大多數現成的配置。如果沒(méi)有合適的公共模板,則可以充分利用其它模板已經(jīng)做過(guò)的工作創(chuàng )建自己的模板。
評論