Zigbee協議
用於近距離無線連接的網路協議
ZigBee協議適應無線感測器的低花費、低能量、高容錯性等的要求。ZigBee是基於IEEE802.15.4標準的低功耗區域網協議。
無線感測器網路節點要進行相互的數據交流就要有相應的無線網路協議(包括MAC層、路由、網路層、應用層等),傳統的無線協議很難適應無線感測器的低花費、低能量、高容錯性等的要求,這種情況下,ZigBee協議應運而生。Zigbee的基礎是IEEE 802.15.4。但IEEE僅處理低級MAC層和物理層協議,因此Zigbee聯盟擴展了IEEE,對其網路層協議和API進行了標準化。Zigbee是一種新興的短距離、低速率的無線網路技術。主要用於近距離無線連接。它有自己的協議標準,在數千個微小的感測器之間相互協調實現通信。這些感測器只需要很少的能量,以接力的方式通過無線電波將數據從一個感測器傳到另一個感測器,所以它們的通信效率非常高。Zigbee是一個由可多到65000個無線數傳模塊組成的一個無線數傳網路平台,十分類似現有的移動通信的CDMA網或GSM網,每一個Zigbee網路數傳模塊類似移動網路的一個基站,在整個網路範圍內,它們之間可以進行相互通信;每個網路節點間的距離可以從標準的75米,到擴展后的幾百米,甚至幾公里;另外整個Zigbee網路還可以與現有的其它的各種網路連接。通常,符合如下條件之一的應用,就可以考慮採用Zigbee技術做無線傳輸:需要數據採集或監控的網點多;要求傳輸的數據量不大,而要求設備成本低;要求數據傳輸可靠性高,安全性高;設備體積很小,不便放置較大的充電電池或者電源模塊;電池供電;地形複雜,監測點多,需要較大的網路覆蓋;現有移動網路的覆蓋盲區;使用現存移動網路進行低數據量傳輸的遙測遙控系統;使用GPS效果差,或成本太高的局部區域移動目標的定位應用。值得注意的是,在已經發布的ZIGBEE V1.0中並沒有規定具體的路由協議,具體協議由協議棧實現。
ZigBee堆棧是在IEEE 802.15.4標準基礎上建立的,定義了協議的MAC和PHY層。ZigBee設備應該包括IEEE802.15.4(該標準定義了RF射頻以及與相鄰設備之間的通信)的PHY和MAC層,以及ZigBee堆棧層:網路層(NWK)、應用層和安全服務提供層。
每個ZigBee設備都與一個特定模板有關,可能是公共模板或私有模板。這些模板定義了設備的應用環境、設備類型以及用於設備間通信的簇。公共模板可以確保不同供應商的設備在相同應用領域中的互操作性。
設備是由模板定義的,並以應用對象(Application Objects)的形式實現(見圖)。每個應用對象通過一個端點連接到ZigBee堆棧的餘下部分,它們都是器件中可定址的組件。
從應用角度看,通信的本質就是端點到端點的連接(例如,一個帶開關組件的設備與帶一個或多個燈組件的遠端設備進行通信,目的是將這些燈點亮)。
端點之間的通信是通過稱之為簇的數據結構實現的。這些簇是應用對象之間共享信息所需的全部屬性的容器,在特殊應用中使用的簇在模板中有定義。圖2就是設備及其介面的一個例子:
每個介面都能接收(用於輸入)或發送(用於輸出)簇格式的數據。一共有二個特殊的端點,即端點0和端點255。端點0用於整個ZigBee設備的配置和管理。應用程序可以通過端點0與ZigBee堆棧的其它層通信,從而實現對這些層的初始化和配置。附屬在端點0的對象被稱為ZigBee設備對象(ZD0)。端點255用於向所有端點的廣播。端點241到254是保留端點。
所有端點都使用應用支持子層(APS)提供的服務。APS通過網路層和安全服務提供層與端點相接,並為數據傳送、安全和綁定提供服務,因此能夠適配不同但兼容的設備,比如帶燈的開關。
APS使用網路層(NWK)提供的服務。NWK負責設備到設備的通信,並負責網路中設備初始化所包含的活動、消息路由和網路發現。應用層可以通過ZigBee設備對象(ZD0)對網路層參數進行配置和訪問。
802.15.4MAC層
IEEE 802.15.4標準為低速率無線個人域網(LR-WPAN)定義了OSI模型開始的兩層。PHY層定義了無線射頻應該具備的特徵,它支持二種不同的射頻信號,分別位於2450MHz波段和868/915MHz波段。2450MHz波段射頻可以提供250kbps的數據速率和16個不同的通道。868/915MHz波段中,868MHz支持1個數據速率為20kbps的通道,915MHz支持10個數據速率為40kbps的通道。
MAC層負責相鄰設備間的單跳數據通信。它負責建立與網路的同步,支持關聯和去關聯以及MAC層安全:它能提供二個設備之間的可靠鏈接。
Zigbee協議
關於服務接入點
ZigBee堆棧的不同層與802.15.4 MAC通過服務接入點(SAP)進行通信。SAP是某一特定層提供的服務與上層之間的介面。 ZigBee堆棧的大多數層有兩個介面:數據實體介面和管理實體介面。數據實體介面的目標是向上層提供所需的常規數據服務。管理實體介面的目標是向上層提供訪問內部層參數、配置和管理數據的機制。
安全機制由安全服務提供層提供。然而值得注意的是,系統的整體安全性是在模板級定義的,這意味著模板應該定義某一特定網路中應該實現何種類型的安全。
每一層(MAC、網路或應用層)都能被保護,為了降低存儲要求,它們可以分享安全鑰匙。SSP是通過ZD0進行初始化和配置的,要求實現高級加密標準(AES)。ZigBee規範定義了信任中心的用途。信任中心是在網路中分配安全鑰匙的一種令人信任的設備。
根據ZigBee堆棧規定的所有功能和支持,我們很容易推測ZigBee堆棧實現需要用到設備中的大量存儲器資源。
ZigBee規範定義了三種類型的設備,每種都有自己的功能要求:ZigBee協調器是啟動和配置網路的一種設備。協調器可以保持間接定址用的綁定表格,支持關聯,同時還能設計信任中心和執行其它活動。一個ZigBee網路只允許有一個ZigBee協調器。
ZigBee路由器是一種支持關聯的設備,能夠將消息轉發到其它設備。ZigBee網格或樹型網路可以有多個ZigBee路由器。ZigBee星型網路不支持ZigBee路由器。
ZigBee終端設備可以執行它的相關功能,並使用ZigBee網路到達其它需要與其通信的設備。它的存儲器容量要求最少。
然而需要特別注意的是,網路的特定架構會戲劇性地影響設備所需的資源。NWK支持的網路拓撲有星型、樹型和網格型。在這幾種網路拓撲中,星型網路對資源的要求最低。