本應(yīng)用指南詳細(xì)介紹了測試 Zigbee 網(wǎng)狀網(wǎng)絡(luò)性能的方法。隨著當(dāng)今無線市場上可用的網(wǎng)狀網(wǎng)絡(luò)數(shù)量不斷增加,設(shè)計(jì)人員必須了解這些網(wǎng)絡(luò)的使用情況及其預(yù)期性能。選擇網(wǎng)絡(luò)或設(shè)備時(shí),設(shè)計(jì)人員需要了解網(wǎng)絡(luò)的性能和行為特征,如電池壽命、網(wǎng)絡(luò)吞吐量和延遲,以及網(wǎng)絡(luò)規(guī)模對(duì)可擴(kuò)展性和可靠性的影響。
本應(yīng)用指南介紹了 Zigbee 網(wǎng)狀網(wǎng)絡(luò)在性能和行為方面與其他網(wǎng)狀網(wǎng)絡(luò)的不同。使用能夠運(yùn)行 Zigbee Mesh 和專有協(xié)議的 Silicon Labs Zigbee Mesh 軟件堆棧和Silicon Labs Wireless Gecko SoC 平臺(tái)進(jìn)行了測試。測試環(huán)境是一個(gè)商業(yè)辦公大樓,范圍內(nèi)有 Wi-Fi 和 Zigbee 網(wǎng)絡(luò)。在走廊、會(huì)議室、辦公室和開放區(qū)域部署了無線測試集群。定義了執(zhí)行基準(zhǔn)測試的方法,以便其他人可以運(yùn)行相同的測試。這些結(jié)果主要用于為設(shè)計(jì)實(shí)踐和原則以及預(yù)期的現(xiàn)場性能結(jié)果提供指導(dǎo)。
內(nèi)容要點(diǎn)
說明了 Silicon Labs 研發(fā) (R&D) 中的無線測試網(wǎng)絡(luò)。
評(píng)估了無線條件和環(huán)境。
介紹了網(wǎng)狀網(wǎng)絡(luò)性能,包括吞吐量、延遲和大型網(wǎng)絡(luò)可擴(kuò)展性。
閱讀完整的Zigbee網(wǎng)狀網(wǎng)絡(luò)性能測試報(bào)告:https://www.silabs.com/documents/login/application-notes/an1138-zigbee-mesh-network-performance-cn.pdf
有關(guān)其他技術(shù)的性能基準(zhǔn)測試信息,請(qǐng)參閱http://www.silabs.com/mesh-performance
介紹和背景
在開發(fā)人員會(huì)議和行業(yè)白皮書中,Silicon Labs 提供了嵌入式網(wǎng)狀網(wǎng)絡(luò)的性能測試結(jié)果。系統(tǒng)設(shè)計(jì)人員可以使用吞吐量、延遲和安全影響等基本性能數(shù)據(jù)來定義預(yù)期行為。測試是通過我們的各種網(wǎng)狀網(wǎng)絡(luò)技術(shù)完成的 – Zigbee、Thread 和 Bluetooth,每種都單獨(dú)做了介紹。本應(yīng)用指南介紹了Zigbee 網(wǎng)絡(luò)的性能。
基礎(chǔ)物理層和數(shù)據(jù)包結(jié)構(gòu)
網(wǎng)絡(luò)性能取決于有效荷載的大小,這是因?yàn)閿?shù)據(jù)包開銷中不包含應(yīng)用的使用。
Zigbee 使用 IEEE 802.15.4 2006,127 字節(jié)數(shù)據(jù)包和250 kbps 的基礎(chǔ)數(shù)據(jù)速率。Zigbee 數(shù)據(jù)包格式顯示如下,結(jié)果為 68 字節(jié)有效荷載。對(duì)于 68 字節(jié)以上的有效荷載,Zigbee 會(huì)分成多個(gè)數(shù)據(jù)包。我們的性能數(shù)據(jù)取決于有效荷載大小,因?yàn)檫@是構(gòu)建應(yīng)用時(shí)需要考慮的設(shè)計(jì)參數(shù)。
Zigbee數(shù)據(jù)包格式
網(wǎng)絡(luò)路由差異
Zigbee 專為家庭和建筑自動(dòng)化設(shè)計(jì)。Zigbee 支持多種路由技術(shù),包括用于路由發(fā)現(xiàn)或組消息的網(wǎng)狀網(wǎng)絡(luò)泛洪、用于網(wǎng)狀網(wǎng)絡(luò)中受控消息的下一跳路由、以及到網(wǎng)關(guān)后再使用源路由發(fā)送到設(shè)備的多對(duì)一路由。Zigbee 網(wǎng)絡(luò)通常會(huì)同時(shí)使用這些方法。
網(wǎng)絡(luò)將較大的消息分成較小的消息。對(duì)于 Zigbee,分段是在應(yīng)用層完成的,并且從源到目標(biāo)是端到端。
對(duì)于這些網(wǎng)絡(luò)中的單播轉(zhuǎn)發(fā),只要設(shè)備準(zhǔn)備好發(fā)送,就會(huì)轉(zhuǎn)發(fā)該消息。對(duì)于多播轉(zhuǎn)發(fā),通常有關(guān)于如何轉(zhuǎn)發(fā)消息的網(wǎng)絡(luò)要求。對(duì)于 Zigbee 設(shè)備,只有在抖動(dòng)達(dá)到 64 毫秒后才能通過設(shè)備轉(zhuǎn)發(fā)多播消息。但是,在重發(fā)初始消息之前,發(fā)起設(shè)備有 500 毫秒的時(shí)間差。
Note: 此性能數(shù)據(jù)適用于 Silicon Labs 實(shí)現(xiàn)這些網(wǎng)狀網(wǎng)絡(luò)堆棧。正如為此測試提供的測試網(wǎng)絡(luò)和基礎(chǔ)設(shè)施所顯示的那樣,未使用其他堆?;蛳到y(tǒng)執(zhí)行測試。
目標(biāo)和方法
本應(yīng)用指南定義了一系列用于評(píng)估網(wǎng)狀網(wǎng)絡(luò)性能、可擴(kuò)展性和可靠性的測試。描述了測試條件和基礎(chǔ)設(shè)施,以及消息延遲和可靠性。該測試是通過測試網(wǎng)絡(luò)中的實(shí)際無線設(shè)備進(jìn)行的,而不是模擬。
此測試主要為了提供不同網(wǎng)格技術(shù)之間的對(duì)比,以更好地理解和推薦其用途。不同的網(wǎng)絡(luò)和系統(tǒng)設(shè)計(jì)對(duì)設(shè)備和網(wǎng)絡(luò)有不同的要求。因此,沒有一個(gè)網(wǎng)絡(luò)能夠滿足所有的網(wǎng)絡(luò)要求。但是,我們要對(duì)比的三種網(wǎng)狀網(wǎng)絡(luò)技術(shù)都是針對(duì)家庭和商業(yè)建筑中用于安防監(jiān)控的低功耗和電池供電網(wǎng)狀網(wǎng)絡(luò)。
通常,分析網(wǎng)絡(luò)性能數(shù)據(jù)時(shí),我們會(huì)考慮可以對(duì)網(wǎng)絡(luò)進(jìn)行哪些改進(jìn)以提高性能。因?yàn)槟壳瓣P(guān)于大型網(wǎng)絡(luò)的網(wǎng)狀網(wǎng)絡(luò)性能的公開數(shù)據(jù)有限,所以很難就可能的改進(jìn)或變化進(jìn)行行業(yè)討論。例如,在商業(yè)建筑中,人們擔(dān)心:
其他網(wǎng)絡(luò)流量,因?yàn)榭赡苡性S多子網(wǎng)互相干擾。
正常建筑 Wi-Fi 基礎(chǔ)設(shè)施的 Wi-Fi 干擾,因?yàn)檫@些技術(shù)通常在 2.4 GHz ISM 頻段中運(yùn)行。
網(wǎng)絡(luò)吞吐量和延遲以及大型網(wǎng)絡(luò)多播延遲和可靠性,這是因?yàn)槎嗖コ1挥糜诿芗k公環(huán)境中的照明控制,并且系統(tǒng)用戶預(yù)期照明控制會(huì)有響應(yīng)性。
Note: 這里的測試結(jié)果僅限于在正常運(yùn)行條件下比較系統(tǒng)性能,或者在特定測試中指出的壓力下進(jìn)行比較。本應(yīng)用指南不提供系統(tǒng)干擾或其他此類影響的解決方案,這可參考其他已公布的結(jié)果。不過,測試是在我們的SiliconLabs R&D 設(shè)施進(jìn)行的,其RF范圍內(nèi)有超過100個(gè)Wi-Fi接入點(diǎn)。該設(shè)施還有一個(gè) 300 節(jié)點(diǎn)的Zigbee照明網(wǎng)絡(luò),該網(wǎng)絡(luò)不屬于本測試的一部分,而是用于普通照明控制。
其他性能測試回顧
沒有用于評(píng)估和報(bào)告大型網(wǎng)絡(luò)可靠性、可擴(kuò)展性或延遲的具體、已定義方法。過去,Silicon Labs 發(fā)表了多篇論文,根據(jù)網(wǎng)絡(luò)測試對(duì)比網(wǎng)絡(luò)性能。測試主要關(guān)注設(shè)備行為以及對(duì)電池壽命、網(wǎng)絡(luò)吞吐量和延遲的影響。大規(guī)模多播測試還需要從大型分布式網(wǎng)絡(luò)中采集準(zhǔn)確的時(shí)間和可靠性信息。所有測試均使用能夠運(yùn)行 Zigbee、Thread、Bluetooth Mesh、和專有 RF 協(xié)議的 Silicon Labs Wireless Gecko SoC 平臺(tái)執(zhí)行,以避免測試中設(shè)備本身造成的差異。先前公布的結(jié)果有收發(fā)器、網(wǎng)絡(luò)協(xié)處理器和片上系統(tǒng)設(shè)計(jì)之間的差異。這些設(shè)備全部使用片上系統(tǒng)設(shè)計(jì)。
其他關(guān)于性能的論文有 Kui Liu 編寫的關(guān)于 Zigbee 網(wǎng)絡(luò)性能的碩士畢業(yè)論文“嵌入式電表的 Zigbee 網(wǎng)絡(luò)性能評(píng)估”,由瑞典皇家理工學(xué)院電氣工程系出版。對(duì)于單跳內(nèi)的露天往返時(shí)間,他們測試了不同的范圍,結(jié)果如下:
距離和平均往返行程的數(shù)據(jù)包丟失
該測試使用100毫秒間隔的50字節(jié)有效荷載單播,安全關(guān)閉。請(qǐng)注意,Zigbee 不允許關(guān)閉安全。結(jié)果顯示1跳測試一直需要約18毫秒的往返時(shí)間。在室內(nèi)使用各種干擾條件重復(fù)進(jìn)行該測試,發(fā)現(xiàn)1跳的往返時(shí)間與18毫秒相差不大。未提供多跳測試結(jié)果。
測試網(wǎng)絡(luò)和條件
為了最大限度地減少差異,設(shè)備測試也可以在固定拓?fù)浣Y(jié)構(gòu)中執(zhí)行,其中 RF 路徑通過分路器和衰減器連接在一起,以確保拓?fù)浣Y(jié)構(gòu)不會(huì)隨時(shí)間和測試而發(fā)生變化。此方法在 7 跳測試中用以保證網(wǎng)絡(luò)拓?fù)?。MAC 過濾也可用于實(shí)現(xiàn)網(wǎng)絡(luò)拓?fù)洹?/p>
大型網(wǎng)絡(luò)測試最好在露天環(huán)境中進(jìn)行,其中設(shè)備行為取決于現(xiàn)有的和變化的 RF 條件。Silicon Labs R&D 設(shè)施即被用于此露天測試。
設(shè)施和測試網(wǎng)絡(luò)條件
Silicon Labs R&D 設(shè)施包含一個(gè)帶電梯井的中央核心,其他服務(wù)在大樓西端并有開放式平面圖,辦公室和會(huì)議室位于東端。整個(gè)設(shè)施占地約 120 英尺乘 200 英尺。下圖顯示了設(shè)施布局。較深的線代表堅(jiān)硬的墻壁,其他所有部分都使用立方體分隔。
測試設(shè)備安裝在設(shè)施周圍的不同位置。這些設(shè)備都有以太網(wǎng)反向信道連接,以允許:
固件更新
命令行接口
腳本處理
定時(shí)分析
數(shù)據(jù)包采集
能量測量
典型測試集群
測試集群分布在整個(gè)設(shè)施中,包括高低位置、開放區(qū)域以及封閉的會(huì)議室和辦公室。
該測試網(wǎng)絡(luò)會(huì)定期添加或移除設(shè)備,但在進(jìn)行此測試時(shí),它包含以下設(shè)備:
EM35xx 設(shè)備
EFR32 Mighty Gecko 設(shè)備
這個(gè)網(wǎng)絡(luò)代表了網(wǎng)絡(luò)和軟件質(zhì)量保證團(tuán)隊(duì)用于露天測試的設(shè)備。所有設(shè)備均由中央測試服務(wù)器和基礎(chǔ)設(shè)施控制,可進(jìn)行腳本式的回歸測試或由工程師手動(dòng)測試。
測試和結(jié)果
吞吐量和延遲
在受控網(wǎng)絡(luò)(有線配置)中測試了吞吐量和延遲,以測試各種數(shù)據(jù)包有效荷載下的跳頻。正常配置是測試 6 個(gè)跳頻。
測試是使用一個(gè)源節(jié)點(diǎn)和一系列路由節(jié)點(diǎn)完成的,以便更改跳頻數(shù)量。
測試使用以下配置:
Zigbee 應(yīng)用層消息
延遲測試使用的數(shù)據(jù)包有效荷載為 50 字節(jié)到 300 字節(jié),50 字節(jié)為增量
測試時(shí)開啟安全
從 1 到 6 跳
飛行模式下使用 2 個(gè)數(shù)據(jù)包(第 3 個(gè)在收到第 1 個(gè)確認(rèn)時(shí)發(fā)送…)
在給定確認(rèn)時(shí)間的情況下盡可能快地發(fā)送
測量往返延遲(源到目的地到源),以毫秒為單位
對(duì)于各個(gè)網(wǎng)狀網(wǎng)絡(luò),當(dāng)我們?nèi)缟纤鲈黾佑行Ш奢d大小時(shí),數(shù)據(jù)包分段行為不同。使用較大的數(shù)據(jù)包大小取決于應(yīng)用層,但我們?cè)诖颂峁┍容^數(shù)據(jù),以說明發(fā)生分段時(shí)的相對(duì)性能。
Zigbee 多跳延遲
在這個(gè)多跳延遲測試中有多個(gè)值得注意的地方:
對(duì)于高達(dá) 250 字節(jié)的 1 跳有效荷載,我們看到延遲非常低 (60 毫秒)。
對(duì)于 50 字節(jié)的有效荷載(包含在 1 個(gè)數(shù)據(jù)包內(nèi)),Zigbee 在 6 跳內(nèi)保持了 140 毫秒以下的延遲。
在載荷超過 150 字節(jié)且跳數(shù)超過 5 之前,延遲保持在 200 毫秒以下。
Zigbee 大型網(wǎng)絡(luò)測試結(jié)果
Zigbee 測試是使用最新版本的 Zigbee 堆棧完成的。Zigbee 網(wǎng)絡(luò)測試使用 5、25 和 50 字節(jié)的載荷完成,正常廣播傳輸間隔為 3 秒。
測試時(shí)有以下值得注意的地方:
隨著數(shù)據(jù)包有效荷載的增加,設(shè)備的延遲也增加。這是預(yù)料中的正常的行為,因?yàn)閭鬏斴^大的數(shù)據(jù)包需要更多時(shí)間。
我們看到所有測試的可靠性都是 100%。注意這些是 100 個(gè)廣播測試。對(duì)于低于 100 廣播的測試,可以使用較大的測試以更好地測量可靠性。
隨著網(wǎng)絡(luò)規(guī)模的增長,我們看到延遲也會(huì)增加和擴(kuò)散,這是因?yàn)樗枰嗵拍馨l(fā)送完所有消息。在較大的網(wǎng)絡(luò)中,因?yàn)樗性O(shè)備都在嘗試重復(fù)消息,所以廣播中競爭也更多。
該測試使用 3 秒的廣播間隔,即在發(fā)送下一條消息之前,給網(wǎng)絡(luò)一些恢復(fù)時(shí)間。下面分別顯示了各個(gè)測試中當(dāng)廣播間隔減少時(shí)發(fā)生的情況。
縮短間隔的 Zigbee 網(wǎng)絡(luò)測試
眾所周知,應(yīng)該盡量避免在 15.4 網(wǎng)絡(luò)中使用廣播,因?yàn)樗鼈儠?huì)導(dǎo)致網(wǎng)絡(luò)暫時(shí)泛洪。Zigbee 網(wǎng)絡(luò)有廣播交易記錄,可以防止重復(fù)處理設(shè)備轉(zhuǎn)發(fā)的廣播。該廣播表必須包含至少 9 個(gè)條目,并且它們會(huì)在 9 秒后失效,這意味著平均每秒只支持 1 個(gè)廣播。因?yàn)樯鲜鰷y試使用的是 3 秒的廣播間隔,所以又使用 2 秒和 1 秒的間隔進(jìn)行了其他測試,以分析相對(duì)網(wǎng)絡(luò)規(guī)模的影響。
小結(jié)
Zigbee 表現(xiàn)出優(yōu)異的可靠性且延遲低于通常人類與設(shè)備互動(dòng)所需的 200 毫秒時(shí)間。Zigbee 網(wǎng)絡(luò)在我們測試的 192 節(jié)點(diǎn)的網(wǎng)絡(luò)中表現(xiàn)良好,但如果廣播頻率太高,Zigbee 也會(huì)顯示延遲增加。
隨著網(wǎng)絡(luò)規(guī)模的增加,增加的跳數(shù)和廣播擁塞會(huì)導(dǎo)致延遲有一定程度的增加。隨著數(shù)據(jù)包有效荷載的增加,網(wǎng)絡(luò)中的延遲也會(huì)增加,但這在測試 5、25 和50字節(jié)的有效荷載時(shí)影響較小。廣播間隔降低到 1 秒時(shí),最大延遲會(huì)增加,這對(duì)于某些應(yīng)用可能會(huì)不太理想。
后續(xù)測試注意事項(xiàng)
本應(yīng)用指南中描述的測試需要進(jìn)行后續(xù)測試,以進(jìn)一步定義設(shè)備行為和網(wǎng)絡(luò)運(yùn)行。為后續(xù)測試記錄了以下具體項(xiàng)目:
這些測試中可以添加故障測試以評(píng)估恢復(fù)時(shí)間和對(duì)可靠性的影響,方法是將節(jié)點(diǎn)從網(wǎng)絡(luò)中刪除。
測試應(yīng)使用在片上系統(tǒng)和網(wǎng)絡(luò)協(xié)處理器 (NCP) 模式下運(yùn)行的不同設(shè)備類型執(zhí)行。先前的測試發(fā)現(xiàn)這些運(yùn)行模式之間的一些差異,因此應(yīng)進(jìn)一步表征。