許多設計人員都聽說過 zigbee 與 IEEE 802.15.4 標準,但不清楚到底應該選擇zigbee,還是 802.15.4,抑或是開發自己的專有網絡協議。本文將以專有協議為例,介紹各種協議的優勢,并在性能和應用領域方面進行對比區分。討論不同的網絡拓撲、資源要求以及靈活特性,從而幫助利益相關方(interested party)選擇最適合自己應用需求的開發協議。
本文分三部分講述低功耗網絡及在他們之間如何選擇的問題。第一部分論述網絡基礎知識以及低功耗網絡選擇標準;第二部分繼續探討選擇標準,并介紹802.15.4 協議;第三部分介紹 zigbee 和專有網絡協議 SimpliciTI,并根據上述選擇標準衡量這些協議。
第一部分
電子市場中的最主要趨勢之一就是越來越多的產品都開始添加無線連接功能。水電氣表、家庭安全系統、電視遙控或健身設備等各種產品都添加了無線連接功能,這一方面是為了方便用戶使用,用戶可通過無線遙控在房間任意位置操控,不像紅外線遙控非要瞄準設備才能工作;另一方面,這種無線操控也是為了減少房間重新布線的昂貴成本例如不用重新布線就能安裝家庭安全系統等。此外,自動抄表系統 (AMR) 或高級電表架構 (AMI) 等設備也越來越依賴低功耗協議使設備的電池使用壽命能夠長達數年之久。
本文將概括介紹無線網絡協議,不過將重點介紹 zigbee 與 802.15.4 協議,并將其與專有網絡協議進行對比,這些協議根據設計都能滿足低功耗應用的要求。盡管許多工程師對這些網絡協議都已經比較熟悉了,但可能還沒有仔細對其加以評估。即便有人曾經評估過這些協議,但在特定應用時可能仍不清楚到底哪種協議最合適。本文分三部分。第一部分,我們將介紹網絡基礎知識,其中包括常見的網絡術語、開放系統互連 (OSI) 網絡模型等,并探討在為特定應用選擇網絡時應考慮的因素;第二部分,我們將給出一系列網絡選擇標準,根據這些標準對三種網絡協議加以對比;第三部分,我們將詳細介紹 802.15.4、zigbee 以及 SimpliciTI 專有網絡協議,并給出具體實例,說明如何根據選擇標準確定適合特定應用的最佳網絡協議。
目前,推出的無線網絡協議種類繁多。下面我們僅列出部分網絡協議:
WiFi(802.11b)、藍牙、zigbee、zigbee Pro、802.15.4、RFID 以及 Wireless USB 等標準化協議。
芯片廠商、第三方等推出的專有協議,本文稱之為“DIY”網絡協議,僅用于推出該協議的公司自己生產的產品中。
圖 1 顯示了多種網絡協議及其重點應用領域和典型資源要求等。我們在比較低功耗協議(如 zigbee/802.15.4 與其它協議)時,應重點關注低功耗無線網絡區別于其它網絡的一些關鍵特性,比如數據速率低、連接距離短、幀開銷低、復雜性低等,還有就是協議本身的電源管理要求。上述各項設計因素都是為了最終實現降低網絡單位節點功耗的目的。如圖 1 所示,zigbee/802.15.4 協議理想適用于環境監控市場領域中的相關應用,不僅可確保電池供電設備能長時間最佳工作,而且相對于支持更大型復雜化協議的硬件來說還能有效降低成本。
低功耗網絡主要設計用于為電池供電設備(電池使用壽命達數月或數年之久)間提供無線連接。大多數低功耗無線系統中,以無線電發送和接收數據最為耗電。因此,我們應盡可能降低無線電的功耗,這對延長電池使用壽命至關重要。由于信號發送和接收之間的距離與天線的功率輸入成正比,因此不同節點間的無線網絡覆蓋范圍一般有限。無線協議還應降低自身的復雜性,以降低計算開銷,避免使用大容量存儲器,從而降低成本。
網絡基礎知識
圖 2 顯示了典型低功耗網絡節點的結構圖。通常,節點中有一個或多個傳感器負責收集數據或狀態和/或向系統提供用戶接口。微控制器連接于傳感器并控制無線電(本例中為 CC1100 或 CC2500),而無線電則負責傳輸和接收狀態。
圖 2 — 典型低功耗網絡結構圖(本例顯示的是自動抄表系統應用)
不管是有線網絡還是無線網絡,我們在概念上都可將網絡節點通信視為如圖 3 所示的網絡開放系統互連 (OSI) 基本參考模型。這一模型于上世紀 70 年代末由國際標準化組織 (ISO) 制定,該模型將網絡協議實施組件(component)分為不同的軟件層。在不同設備上的兩個應用要想通信,消息必須穿過應用層,經過物理層到達另一側。每一層都只能與其相鄰層通信。
怎么理解分層軟件架構呢?我們可以設想一下寄信的過程。信件本身就相當于應用數據。我們把信投在信箱里,等著郵遞員取出,再拿到郵局。郵局根據收信人地址將所有信件分類,再通過航空、海運或陸路方式將信件寄到最終目的地。信件要想達到收信人的手中,在收信人一方的郵局也必須經過相反的一套程序,先是寄到收信人所在的郵局,按目的地分類,再發送到收信人的郵箱,最終達到收信人手里。寄信過程實際反映了一個四層通信協議。寫信是第一層,當地郵局的收發是第二層,郵局對信件分類是第三層,而信件運輸方式則是第四層。每一層都有自身的任務,也只同相鄰層有關。信件只有從整個環節的一端傳送到另一端,信件的內容(或應用數據)才能在雙方之間得到成功交流。
OSI 模型涉及 7 個不同的軟件層。應用層是直接針對用戶的界面。表示層將消息格式化為進出網絡的格式,通常體現為消息加密和/或編碼。會話層創建并管理網絡上任何兩個設備間的邏輯鏈接。傳輸層負責提供可靠的端對端通信功能。如果傳輸層的故障過于頻繁,那么通道噪聲可能過大,或鏈接本身質量不佳,這時就要通知會話層在發生故障的節點間建立新的鏈接。網絡層負責網絡路由機制,而不同設備間的消息傳輸則由數據鏈路層負責。數據鏈路層確保消息點對點交付,但消息在物理介質上的實際傳輸則由物理層負責。這樣,消息就能從 OSI 模型的一端傳輸至另一端。
設計人員可以選擇實施不同數量層的協議,并能根據應用需要選擇定制其它層。目前大多數網絡實施方案實際上都不能完全實施所有的層,需要根據協議要求將某些層的功能加以混合。事實上,OSI 模型是我們理解協議架構復雜性和不同功能的最佳框架。設計人員應當明白自己的解決放案要實施哪些功能,哪些功能可不予以考慮。
為了明確到底在 zigbee、802.15.4 和專有網絡之中選擇何種無線協議,我們列出一些選擇標準:
應用考慮事項
穩健性與可靠性
簡便易用性
硬件及 RF 考慮事項
下面我們將詳細討論上述各標準。
應用考慮事項
網絡設計的初始步驟與其它任何系統設計工作一樣,都是定義應用的高級要求。下面我們列出一些最重要的網絡參數,這是在確定任何無線協議作為最終解決方案之前都應加以明確定義的。我們隨后在本文中將根據這些標準來介紹可能的實施方案,而這些選擇標準和協議本身都將得到進一步詳細說明。
網絡拓撲
應用需要多少個節點?節點采取什么樣的基本組織形式?
通信可靠性
網絡對每個數據包的接收有多重要?
網絡安全性
數據是否需要確保安全?如果需要的話,網絡數據傳輸的絕對安全性到底有多重要?
定制和設計的靈活性
網絡協議解決方案需要進行多大程度的定制化以滿足應用需求,協議是否提供無約束設計?
開發時間及協議復雜性
這一條與第 4 項密切相關,有關協議本身的復雜性有多高?
互操作性
與其他廠商技術的互操作性是否能使最終產品受益?最終產品是否會成為完全專有解決方案?
圖4給出了四種最常見的無線網絡拓撲實施方案。
點對點網絡拓撲支持網絡上不同節點間的單向或雙向鏈接。只有節點處在連接范圍以內時才會相互通信,因為保持直接的物理鏈接是其通信的必要條件;唯一的例外是廣播消息,其可以通過網絡重復廣播傳播。樹狀網絡拓撲中,每個網絡節點都與其父節點相關聯,網絡尋址也會反映出這種節點關系,這與 IP 因特網地址非常類似。這樣,我們就能實施更加有效的路由算法,因為更多的節點網絡地址位數可以反映出某個節點相對于其對等節點的關系。星形網絡可將單個節點視為網絡協調點,負責各種可能的網絡管理控制工作,如節點關聯、節點網絡加入與鏈接許可、消息轉發以及安全交換等。星形網絡依靠協調點來保持網絡通信,如果協調節點出了問題,網絡通信也會受到影響。
從最基本的意義上說,網狀網絡是指每個節點至少要有兩條連接路徑的網絡。而全網狀網絡是指每個節點都有到其它節點的直接連接的網絡。全網狀網絡在許多情況下是不合理的,因為這很快就會將網絡規模限制在連接能力最弱的設備所覆蓋的最小網絡范圍內,而網狀網絡的要求又過于嚴格。然而,人們會在兩種情況之間找到某種折中,通過某個中央節點發起網絡,用樹狀尋址技術來定位節點并管理節點間的關聯關系。范圍擴展器也稱路由節點,可在網絡中發送消息,如果一個節點或協調節點出了問題,網絡仍能繼續正常工作,只是會在一定程度上影響操作性。自愈路由發現以及路由過期 (route expiration)等其它優異特性可提高路由算法的可靠性與效率。
需要考慮的另一個重要因素是使用某協議所涉及的財務成本。使用某組織提供的專有網絡協議一般要支付會員費或專利使用費。不過使用 zigbee 無需支付專利使用費,但要求加入該聯盟并每年交納象征性的會員費的。此外,驗證過程也需要投入大量的時間和金錢。芯片廠商的專有協議通常要求其產品只許在其特許場所使用。
穩健性與可靠性
低功耗網絡協議實施的穩健性與可靠性可歸結為三點:消息交付、物理層考慮事項以及消息發送協議。消息交付取決于路由技術來確保數據包的成功傳輸以及網絡交易的安全性。物理層考慮事項涉及工作通道內的噪聲或其它傳輸信號的干擾問題。消息發送協議則定義了通道的分區,確保所有設備都能使用物理介質,而不會在傳輸過程中導致數據包沖突。上述三點均有助于提高網絡服務質量 (QOS),是一系列用以測量數據包通信效率、傳輸速率及故障率的網絡標準。
通道掃描即偵聽通道中傳輸量或噪聲大小的能力,屬于物理層考慮事項。網絡協議通過通道掃描來查找特定工作頻帶內最不可能干擾節點間通信的通道。頻率捷變性是指網絡改變網絡上所有節點的工作通道的能力,這樣即便某條通道遭到干擾,網絡仍能繼續工作。我們還能通過確認機制來改善消息交付能力,即讓接收節點在成功接收數據包后向最初的發送節點反饋一個 ACK 確認信息。點對點確認機制配合消息重試次數定義有助于大幅降低數據包丟失的可能性。而端對端確認機制將提供另一層安全性,確保數據包不會丟失,這在采用復雜路由算法的大型多跳轉網絡中尤其重要。
消息發送協議定義了網絡帶寬是如何獲得并進行分區的。不同的無線協議可定義不同的帶寬分區,其可能包括頻分、空分、時分或碼分等。頻分可理解為一屋子的人用高低不同的聲音談話;空分可理解成一屋子的人在不同方向上談話;時分可理解成一屋子的人都競爭說話權,但只要有一個人搶先發言,其他人就不再說話了;碼分則可理解為一屋子的人用高低不同的聲音講不同的語言。在本文涉及的協議中只討論時分,也就是時分多址協議,這種協議有同步和異步通信兩種可能的實施方案。
協調節點廣播周期性網絡信標并將不同信標間的時間間隔劃分為相同的時隙,從而實現同步通信。單個網絡信標以及出現在下一信標之前的各時隙均稱作超幀。超幀的時隙可進一步分為活動和非活動通信期,這樣協調節點在非活動期的低功耗模式下就能進入休眠狀態。我們可通過通道偵聽多址(CSMA)技術或通信前偵聽算法來確保或讓各方爭用時隙。
CSMA 算法定義了多個節點同時嘗試通信時判優RF 通道使用的協議。最常見的實施方案是采用 CSMA/CA 算法,這里的 CA是指防碰撞系統,因為發送節點一旦偵聽到通道繁忙將取消發送消息。CSMA 算法還有其它的實施,如 CSMA/CD(碰撞檢測)和CSMA/CR(碰撞解決)等,但這些在 RF 協議實施中并不常見,也不在本文討論的范圍之內。
安全性是影響無線通信穩健性的另一個重要因素,同時也是網絡的主要功能。例如,家庭安全網絡可能包含一個車庫門開啟器,用它來開關車庫門鎖。這種系統需具有高度的安全性,防止偷聽或出現安全漏洞,確保隱私。我們可通過采用不同級別的安全密鑰和加密機制、進行消息驗證與完整性保護、使用安全信任中心(trust center)等方式來確保安全性,也就是說,通過網絡上的單個節點(通常是網絡協調節點)而不是采用分布式安全機制來解決所有安全問題。如果采用分布式安全機制,在創建不同鏈接時會分別交換對稱密鑰,某個攻擊節點會繞開管理節點的直接驗證,很容易進入網絡。
第二部分
在本文第一部分,我們討論了包括開放系統互連(OSI)網絡模型在內的網絡基礎知識,并介紹了低功耗網絡的特點以及包括應用考慮事項和穩健性與可靠性等在內的相關選擇標準。在第二部分中,我們將探討更多選擇標準,介紹802.15.4協議并將其與上述選擇標準進行了比較。
簡便易用性
簡便易用性反映為對協議可用性的主觀分析。包括代碼可讀性、支持文檔、直接工程設計支持和簡化的 API 等在內的多種因素都有助于簡化對哪怕是最復雜軟件系統的學習進程;不過,本文所說的簡便易用性是從協議的復雜程度角度來說的。根據不同應用要求,設計人員可能認為須采用高度復雜的協議,但我們應認識到,軟件實施方案越復雜,特性集也就越豐富。802.15.4、zigbee 和 SimpliciTI 等低功耗無線協議正好實現了復雜性與簡便易用性的最佳平衡,其提供的完整協議架構,便于設計人員理解并發揮特性集的全部優勢。如實施方案過于復雜,即便經驗豐富的嵌入式開發人員都可能感到頭疼。因此,協議特性與簡便易用性相平衡是我們要考慮的一個重要選擇標準。
硬件與 RF 考慮事項
我們應考慮的一些硬件和應用問題,其中包括系統的物理規模、傳輸距離、成本預算、功耗預算,以及應用特性(如要求語音識別或用戶接口)等。只有回答了這些問題,我們才能確定采用何種無線協議,才能明確支持何種微控制器特性。在超低功耗協議設計中應考慮的關鍵硬件選擇標準如圖 5所示。
上述選擇標準適用于本文所討論的有關協議,也是在實施最終解決方案評估硬件時可借鑒的重要依據。我們還應處理一些系統級問題,如硬件的物理尺寸,因為這會限制MCU和/或無線電的選擇。在某些情況下,在單個器件上集成了MCU和無線電的片上系統(SOC)是一款具有最佳尺寸與特性的解決方案。而在其它情況下,尺寸的限制意味著支持集成模擬功能的 ADC 等會決定 MCU 的選擇。此外,硬件的選擇還會受到協議本身對存儲器和 MCU 資源要求的影響。如果協議實施的資源要求對MCU的應用性能有一定局限,那么設計人員就可選擇專門用來支持實施方案的無線應用處理器,如zigbee 協議棧處理器,這樣就能讓“應用”MCU來實施定制應用功能。
在詳細討論協議之前,圖 6 以 MSP4304618 MCU 和 CC2420 無線電廣播為例顯示了協議的范例編制,使讀者對實際實施中的內存占用情況有個一般性的了解。
802.15.4
802.15.4 標準是由 IEEE 802.15第4任務組 (IEEE 802.15 Task Group 4) 開發的低功耗無線網絡標準。原始標準于 2003 年發布,后經修改由 2006 年版取代。隨著越來越多的電子設計人員要求一種適用于低復雜性、低數據速率以及(大多數情況下)電池供電應用的實施方案,該標準應運而生。具休而言,開發該標準旨在面向家庭自動化、工業控制、農業以及安全監控等領域的應用。包括 zigbee和 zigbee Pro 等在內的若干種其它協議也采用 802.15.4 作為物理層和數據鏈路層。
也有人將 802.15.4 標準稱為 MAC,即媒體接入控制 (Medium Access Control) 標準,因為其可定義網絡中任意兩個對等設備的通信協議。從概念上講,我們能夠以全功能設備 (FFD) 或簡約功能設備 (RFD) 的方式實施802.15.4 個人局域網 (PAN) 中的設備。FFD 節點具備網絡協調器的能力,一般由主電源供電。不過由于每個星型配置的 PAN 只能有一個 FFD 節點,所以 FFD 一般不會始終用作網絡協調器。FFD 可用作通用節點。RFD 節點在設計上相對簡單,因而不能充分發揮網絡協調器的全部功能,只能與 FFD 節點通信。RFD 節點對于應用的實施要求很低,從而可降低 IC 的成本,有可能作為應用中啟用傳感器或制動器的節點,而且由于運行占空比極低,也比較有可能適合采用電池供電。如錯誤!未找到引用源。 所示,若 FFD 協調器向子節點之一(也必須為 FFD)分配新的 PAN 標識 (PAN ID) 后就能夠對 802.15.4 網絡的星型拓樸進行擴展,從而創建僅有協調器節點才可以交換信息的 PAN 群集。注意該標準不直接支持路由。
通過定義兩個節點之間的通信,如網絡管理基礎,802.15.4 標準可為開發 zigbee 等更高級別的網絡實施提供靈活的基礎。
雖然 802.15.4 標準是開發更高級別網絡的良好基礎,但其存在一定的復雜性,這在適當的應用考慮條件下,可以直接當作一種可靠的通信方式進行部署。一般來說,如果要滿足下列要求,設計人員應考慮采用802.15.4 標準:
要求采用業界標準化的物理層與較低層協議
可自由設計自己的較高層協議
能夠靈活選擇各種硬件與較低層軟件廠商
具備物理層與較低協議層的互操作性
實現較低的設計與開發成本
由第三方廠商/供應商提供支持與維護
且愿意接受下列劣勢:
需要設計與開發較高層協議和應用
根據標準會存在無線電廣播通道限制
為便于理解這些應用級考慮事項符合 802.15.4 標準的原因,對協議本身的穩健性、可靠性以及總體實施進行分析非常重要。圖 8 是該協議層的概念組織結構與先前討論的 OSI 模型的比較。
實際上,“媒體接入控制”僅指 802.15.4 標準的數據鏈路層。物理層,也稱為 PHY 層,能夠定義無線電廣播設備間在歐洲(868 MHz)、美國(915 MHz)以及世界范圍(2.4 GHz)工業、科學以及醫療(ISM)頻帶上工作的物理鏈接。PHY 層可通過 DSSS RF 調制方案最終提供節點之間的數據傳輸服務,并設定 868/915MHz 通道的數據速率為 20 kbps 或 40kbps,2.4 GHz 通道的工作數據速率為 250kbps。此外,PHY 層還可規定網絡節點的特性要求,如接收機功率檢測、鏈接質量指示、無干擾通道評估以及尋址方案(包含 64 位 IEEE 尋址和 16 位網絡地址,可在網絡中設定 64,000 個節點)。
協議的 MAC 層提供的特性能夠實現可靠的對等通信,如數據包幀管理、節點關聯、對等確認等。802.15.4網絡可實現同步或異步通信。同步通信由 16 個時隙構成的超幀定義,可以選擇其中的 7 個時隙提供擔保,或者所有時隙都可以使用 CSMA/CA 協議。完全按照 CSMA/CA 協議處理異步通信,如果通道繁忙會引起對傳送節點的隨機的指數時長的退避,直到下一次嘗試傳輸數據包。在任一情況下,在發送與接收節點之間都可實施確認方案,以最大限度地降低數據包事務交易的丟包可能性。如果發送方接收到 NACK,就意味著該數據包未被成功接收。在這種情況下,基于超時的重發方案與用戶定義的重試次數將最有可能確保數據包的成功交付。為實現異步通信,802.15.4 網絡中的 FFD 節點也會實施存儲并轉發功能。
802.15.4 沒有指定加密方式。不過,符合標準的軟件平臺可以實施某些功能,以使用戶能夠輕松地在較高層實施中添加對稱加密方法。這樣,用戶就可對其應用采用的安全方式進行優化。
802.15.4 協議的相對易用性與功能性的平衡使得現有的軟件實施具有良好的易用性。由于協議提供的高可靠性,一般來說如果結合采用某種低級別任務調度程序,則工程設計小組從上手到充分利用現有解決方案只需要很少時間。參見圖 6,協議對內存占用、資源要求以及協議開銷等也沒有限制性要求。
第三部分
本文第一部分和第二部分討論了網絡的基本知識,其中包括開放系統互連 (OSI) 網絡模式、低功耗網絡和802.15.4的特點與選用標準(如應用層問題、穩健性/可靠性)以及如何根據這些選擇標準進行比較判斷。第三部分將討論 zigbee 和 SimpliciTI,并將提供如何選擇協議的相應例子。
zigbee
zigbee 采用 802.15.4 標準作為其對等通信的基礎。該標準由 zigbee 聯盟 (zigbee Alliance) 開發并管理。zigbee Alliance 是一家投資于該標準并在無線領域進行推廣的聯合組織,并且日益為業界所關注。不過zigbee 擁有自己獨特的應用功能,用戶應對此進行充分了解,而不是倉促地將其應用于所有的低功耗無線應用領域。
zigbee 最常用作異步通信標準,其具備 CSMA/CA 通道接入能力,并擁有 802.15.4 章節所述的所有功能。針對相同市場領域的情況下,相比之下 zigbee 可為尋求準擔保信息交付、大規模輕松網絡集成以及設備間互操作性的開發人員提供眾多優勢,同時還提供眾多 802.15.4 標準不能直接解決的較高級別網絡問題的解決方案。
zigbee 網絡的實施有三種拓撲,如圖 9 所示。與 802.15.4 類似,zigbee 支持對等通信與星型配置。zigbee 在 802.15.4 規范之上添加了路由協議與層級網絡尋址方案,可實現群集樹拓撲結構(具有相同PAN ID)以及多跳網狀網絡拓撲。
這些拓撲結構均由可實現三種邏輯抽象功能之一的 802.15.4 FFD 和 RFD 節點提供支持。必須為 FFD 的zigbee 協調器將啟動網絡和管理網絡連接與安全密鑰等大多數網絡參數,是路由消息不可分割的組成部分。zigbee 路由器也必須為 FFD,負責轉發往返于其他網絡節點的消息,并實現 zigbee 網絡的網狀網特性,同時擴展網絡的總體覆蓋范圍。zigbee 協調器與路由器一般由主電源供電,因為它們應能夠在任何時間接收和傳輸消息。如果預計應用的數據傳輸是周期性的,則 zigbee 也可以采用 802.15.4 同步網絡的TDMA 消息傳輸協議。zigbee 終端設備以 RFD 方式實施,可以最大限度地減少其占空比和資源要求,從而實現采用電池供電并長期工作的目的。
zigbee 理想適用于具有下列要求的應用:
采用標準化的物理層與較低層協議 (IEEE 802.15.4)
標準化的較高層協議(比如網狀網拓撲,多跳等)
全面互操作性,甚至達到應用層級別(公共配置文件)
設計與開發要求低(僅限于應用)
技術支持與維護廠商/供應商之間競爭激烈
zigbee 可接受下列劣勢:
zigbee Alliance 成員費用
認證費用(如果不專門針對符合 zigbee 或者 zigbee 認證的產品則無需此費用)
代碼量(功能性的開銷可能大到難以使用)
無線電廣播通道限制(限于在 IEEE 802.15.4 中指定的通道)
上述所列各項表明需要對許多項目進一步澄清,因此首先對標準化的較高層協議進行描述。與 802.15.4 相比,如圖 10 所示,zigbee 可向上實施至 OSI 無線應用網絡模型的傳輸層,甚至能夠達到部分會話層。
對 802.15.4 協議最突出的三項新特性是網狀網路由算法,一個功能強大的安全實施,以及應用級抽象以在目標市場領域中實現設備與可互操作“應用配置文件”的強大關聯性。
zigbee 網絡的網狀網路由算法使其成為網絡上終端設備之間數據交付的極可靠方式。除了能夠在網絡中確保分組交付的可選端到端確認,zigbee 還定義了能夠圍繞故障節點進行通信的路由發現算法,這也稱為zigbee 的通信自愈能力。路由發現是一種可由任何路由器設備啟動并始終針對特定目的地執行的最短路徑算法。計算的原理是由于每個節點都一直保留著至所有相鄰設備的“鏈接成本”記錄,其中鏈接成本是測量所接收信號的信號強度。累加沿路由所有鏈接的鏈接成本就可得出“路由成本”,并可計算網絡中每個路由的路由成本。
節點可以通過向其相鄰設備廣播針對特定目的地的路由請求 (RREQ) 數據包來請求路由發現。每當某節點接收 RREQ 時,其就會向路由成本累加其鏈接成本,然后再相應廣播 RREQ。這種情況將反復進行,直至所有 RREQ 均到達目的地設備。然后目的地設備將選擇路由成本最低的 RREQ 數據包,并廣播路由回復 (Route Reply)。當 RREP 數據包返回至源地,所有中間節點將更新它們的路由表,指示通往目的地的路由。這樣,節點可丟失至下一跳的連接,并向網絡發送路由錯誤 (RERR) 數據包,以便在下一次有人試圖向其發送消息時,就會啟動新的路由發現。
zigbee 可實施廣泛的安全措施。zigbee 采用三種安全性密鑰,即用于長期安全性的主密鑰、加入網絡的網絡密鑰,以及用于對等通信的加密密鑰。采用 AES-128 位加密標準執行加密。在檢驗消息的完整性方面,zigbee 采用 MIC-128,即消息完整性代碼。此外,通過使用協調器作為信任中心從單個節點管理所有安全性,網絡還能夠定期選擇對對稱加密密鑰進行更新,從而實現安全通信的無限管理。
不過,應用級抽象可能是 zigbee 最具有競爭力的特性??梢詫γ總€節點進行匯編以容納多達 270 個“端點”或者應用。舉例來說,每個端點都可以代表一個電燈開關或者一個燈泡(燈泡 01、燈泡 02 等)。每個端點可以接受任意類型的數據,也可以發送任意類型的數據。從某端點輸出到另一端點的輸入數據有單個描述符,一般稱為群集 (Cluster)。為繼續使用燈泡作為例子,假定被命名為“light_status_on_off”的燈泡開關狀態是這些稱為群集的數據描述符之一。然后,每個端點就可以根據端點 ID (1-270) 及其群集列表(接收或者傳輸的數據類型)進行描述。在群集匹配的情況下,就可以進行一對一或者一對多端點的邏輯綁定。在該例中,某一燈泡開關可以與任一或者所有被描述為支持“light_status_on_off”群集的燈泡邏輯綁定。這種應用級的一對一或者一對多綁定是 zigbee 協議功能強大的特性。
如果 zigbee Alliance 當時定義了群集列表和解釋端點間群集流的方法,就可以為特定應用(如電燈開關/電燈泡等)指定標準,且無需擔心用于實施應用的具體硬件。zigbee Alliance 正好已經完成了這項任務,將這些標準稱為應用配置文件,從而不僅使來自不同廠商的應用能夠完全實現互操作性,而且還加強了zigbee 低功耗無線網絡目標市場領域的整體競爭性。
如果互操作性不是設計人員的主要意圖,zigbee Alliance 還可以讓設計人員定義不共享的企業專用型應用配置文件。為簡明扼要,我們就不對 zigbee 實施的其他特性進行詳細討論了,這些特性包括群組尋址、頻率捷變、會話故障的自動重加入和協議最新版本 zigbee 2007(也稱為 zigbee PRO)提供的系列附加特性。zigbee PRO 基本上仍屬于 zigbee 標準范疇,但在編輯時增加了用于優化支持超大網絡集成的特性。如欲了解更多詳情,敬請訪問 zigbee Alliance 網站:www.zigbee.org。
采用 zigbee 協議進行產品設計的劣勢包括與開發 zigbee 產品相關的成本:按年支付給 zigbee Alliance的成員費用、認證產品是否符合 zigbee 的費用以及協議本身的存儲器占用。zigbee 協議加載的特性很難在每項應用中都得到充分利用,從而在定制解決方案的情況下需要設計額外的存儲器資源。在某些情況下,對存儲器與資源的要求甚至可以限制到最終應用級。因此,部分企業推出了具備集成 MCU、預加載了 zigbee 軟件協議棧的無線電廣播組件,其運行則由少量 API 對另一個以應用為中心的 MCU 的調用來控制。通過采用 SPI 通信來更新zigbee芯片的配置,應用 MCU 可以免受協議對存儲器與資源要求的限制,可以有效地處理其他應用任務。
SimpliciTI
SimpliciTI 是現有低級別協議實施的范例,設計人員在開發時間有限、網絡拓撲簡單的應用時可以用來實施。實際上,不符合現有低功耗無線標準的專有網絡非常多,不僅跨多個應用空間而且還具有各種不同的實施復雜性。之所以將 SimpliciTI 選作范例協議,是因為其與 802.15.4 和 zigbee 相比具有更小的尺寸以及更低的復雜度。不過還有眾多其他實施方案也值得納入考慮范圍,簡單來說有 Ant、Blue Robin、MiWi或者 SunSpot 等。SimpliciTI 擁有眾多優異的關鍵特性,如內存占用少、方便易用、復雜度低等。
SimpliciTI 專注于支持簡單星型網絡的對等拓撲,即指最大化地利用稱為接入點 (Access Point) 的單個網絡協調器。圖 12是一個家庭自動化網絡的范例,其中 SimpliciTI 網絡還定義了范圍擴展器 (Range Extender) 與終端設備 (End Device) 抽象概念??蓪⒃摼W絡擴展至包括多達四個范圍擴展器。
SimpliciTI 提供簡化的網絡管理功能,包括可實現終端設備休眠功能的存儲并轉發緩存、網絡初始化、基本鏈接管理以及網絡探索。圖 13 顯示的該協議架構很難直接與 OSI 模型并行,因為其在物理層、數據鏈路層以及網絡層中實施的功能都有所簡化,難以充分滿足各層全面實施的要求。
SimpliciTI 采用能夠與提供管理功能的網絡層通信、非常類似于 TCP/IP 協議的端口架構,并可維護最少的電路板支持數據包層,即 BSP 層來與無線廣播和MCU進行接口相連。SimpliciTI 沒有正式的物理層描述,因此也沒有對頻率、數據速率或者調制提供要求,從而為設計人員提供了廣闊的硬件級設計空間。
此外,需要重點指出的是,SimpliciTI 協議也沒有定義路由、確認或者確??煽啃缘钠渌椒āS脩舯仨毺幚砣缦⒊^最大應用有效負荷、數據丟失以及數據冗余等眾多問題。但這不是一種局限,因為低功耗應用往往對數據數率和要求都相當低,這里或者那里丟失一個數據包不是什么問題。以自動調溫器為例,丟失一個包的數據對應用來說并不構成重大問題。如果通信的可靠性對應用非常重要,用戶也可在應用級實施可靠性協議。比如,可重復多次發送數據,可實施對等層確認,或實施可通知接收設備是否丟包的事務交易計數器。
SimpliciTI 與多數其他現有的低級別實施適用于具有如下要求的應用:
可自由設計自己的較高層協議
與純粹的專有解決方案相比設計和開發成本更低
采用可用的較低層協議進行簡單方便的即用型實施
且愿意接受如下劣勢:
需要設計與開發較高層協議和應用
可能對芯片廠商有硬件要求
可能需要向推廣標準的公司組織繳納專利費或成員費
免費提供 SimpliciTI 的完整源碼,且免專利費,但僅限于使用協議設計方德州儀器 (TI) 所推出硬件的情況。更多詳情,敬請訪問 www.ti.com/simpliciti。
協議選擇范例
本節將探討如何應用上面闡述的選擇標準根據假定設計要求來進行選用的一些范例。
數據日志器
第一個例子是每隔五分鐘就記錄濕度與氣壓數據的制造監控系統。在此情況下,根據相關標準要求,數據必須保存至少五年,但如果每隔幾個小時可能丟失某次采樣數據,也不是什么大問題。數據應該保密。安裝該系統后,將取代原有的機械監控方法,而且在此情況下有線系統并不適用。工廠生產線長度不一,但最長可達到 27 米,而且相關規則要求每 7 米設一個感測站。設計進度安排非常緊,系統需要在 6 個月內就完成推出。
從上述要求來看,該設計標準如下:
應用方面的考慮事項
系統可用于每隔五分鐘捕獲一次濕度與氣壓數據
最多 5 個感測站
基站必須向 PC 網絡傳輸數據
系統用于工廠改造,以取代原有的機械記錄方法
穩健性與可靠性
工廠數據應保密
在工廠生產期間將數據記錄下來,而且根據規則要求必須保留五年,但偶有缺失并不造成關鍵問題
易用性
系統應在 6 個月內投放市場
硬件與 RF的考慮事項
用電池供電,電池工作時間最少為兩年
在本例中建議采用 SimpliciTI,這主要是由于設計進度安排比較緊,而且系統本身并不復雜。
家庭安全網絡
第二與第三個例子將顯示出,如果要求略有變動就會導致選擇不同的協議。本系統是一個在已裝修好的家居環境中安裝的家庭安全網絡,因此重新布線會花銷太大。我們可選配安裝幾種不同的傳感器,如煙霧傳感器、玻璃破損傳感器、運動傳感器以及門禁控制感測 (access control) 等。每個傳感器都與基站通信,然后基站再與家庭安全監控公司通信。該系統應能夠與其它傳感器實現互操作性,舉例來說,從一家公司采購的煙霧檢測器可以配合另一家公司生產的運動檢測器。該網絡必須具有高度安全性,以防竊聽或篡改。設計進度安排能允許工程師有一定的學習時間,以加快網絡協議的設計工作。
應用方面的考慮事項
家庭安全網絡
煙霧檢測、玻璃破損、運動檢測以及占用檢測等
用戶界面必須直觀易懂
需要遵循業界標準
應能夠從不同廠商技術之間的互操作性及其相關支持方面受益***
穩健性與可靠性
關鍵的設計標準
系統必須具有高度的安全性,以防篡改、竊聽
易用性
需要標準化的實施方案實現可靠性與安全性***
計劃在總體的家庭自動化網絡中集成家庭安全性應用
愿意花時間學習與充分利用更復雜的 API
硬件與 RF的考慮事項
大多數網絡設備都采用電池供電
本例中的最終結果應選擇使用 zigbee,因為不僅需要與不同廠商提供的設備互操作,還要確保滿足標準化的可靠性與安全性要求。
結論
低功耗無線網絡對改進使用體驗、提高功能性有著巨大的潛力。本文概括性地介紹了基本的無線網絡架構及相關術語,此外還探討了如何通過相關標準并在一定框架基礎上選用何種低功耗無線協議,而且專門講解了 802.15.4、zigbee 以及低層專有特性集的范例。我們首先重點討論了高級別應用的考慮事項,隨后再深入討論包括穩健性、可靠性、易用性以及硬件等在內的各項具體標準,以幫助設計人員應用框架來為其應用選擇正確的協議,從而為更多產品提供低功耗的無線連接能力。