zigbee与蓝牙mesh哪个稳定
扫描二维码
随时随地手机看文章
蓝牙Mesh, ZIGBEE, THREAD网络性能对比?
novaa 智联网事 智联网事
微信号iotthings
功能介绍让思绪, 漂一会;
昨天
本文测试数据主要基于SILABS的应用文档"AN1142 - 网状网络性能对比"。针对蓝牙Mesh性能及特点,可参考
蓝牙Mesh网络性能及网络特点总结(一)
蓝牙Mesh网络性能及网络特点总结(二)
目录
三种Mesh网络概述
吞吐率和延时性能对比
网络性能对比
总结
] 1 [ 三种Mesh网络概述
首先,我们看下三种Mesh技术的概览及网络模型,如图1,2,3,4。
图1 - Mesh网络概览
图2 - Thread网络模型
图3 - Zigbee网络模型
图4 - BLE Mesh网络模型
本文的测试,均是Silabs在研发中心实际环境测试,具体可参考上篇文章。
] 1 [ 吞吐率和延迟测试比拼
吞吐率及传输延时的测试在一个稳定的6Hop拓扑下进行(通过衰减器搭建的稳定的6跳网络),测试节点拓扑如下图。本测试结果主要取决于协议栈本身的PHY及MAC的特性;
图 - 6跳网络示意图
本测试针对未分段8bytes小数据传输下的性能及100Bytes的大数据传输下的数据吞吐率性能进行了验证。分别如图5和图6;我查了下Thread和Zigbee的MAC层结构,都是按照802.15.4的MAC和PHY;由于文档中没有针对具体的数据收发情景做出说明,图5与图6显示Thread能够有更好的结果,大概率与Thread的最终PHY数据包结构有关系;有深入看过协议的朋友可以分享下~
而蓝牙由于分包机制,在大数据包情况下,数据吞吐率,嗯,非常稳定;
图 5 - 8 Bytes吞吐率对比
图 6 - 100 Bytes吞吐率对比
同时,针对小数据包的数据通信延时如图7,这里不得不说,凭什么拿20Bytes的Thread和50Bytes的ZIGBEE对比? 这点不理解?
图 7 - 8 Bytes通信延时对比
接着, SILABS针对4HOP的拓扑下的不同数据长度做了延时的对比,结果如下,简单而言,由于Payload的增大,不同拓扑的分包机制带来的传输延时会成比例增加。当然,我也不理解为什么结果中,ZIGBEE与蓝牙Mesh均是 点状结果+ 预估趋势线而 Thread则是实线? 且Thread分包带来的影响如此之小??
图 8 - 4 Hops下不同数据包延时对比
] 2 [ 网络性能测试
针对Mesh网络实际应用,实际环境下的不同大小网络的性能,也是验证协议栈性能及稳定性,实用性的重要方面;Silabs的网络性能测试,基于如下不同大小的网络,测试100包不同大小数据的传输延时及数据包成功接收比例;
小型网络: 24节点
中型网络:1~48节点
中型网络:2~96节点
大型网络:1~144节点
大型网络:2~192节点
> 24节点网络性能测试
测试结果如下图10,三种网络在约100ms内完成100个数据包的传输,而可以看到的是Thread总体完成时间更快更高效;
图 10- 24节点100Bytes数据包网络性能对比
而如果增大数据包大小,Thread和Zigbee采用50Bytes,蓝牙Mesh 32 Bytes情况下,测试结果如下图11。可以看到Thread还能够在稳定的100ms内完成,而Zigbee时间明显的增加,蓝牙Mesh则呈现出了按时间平均分布的传包率,延时大大增加;从这个结果,结合蓝牙基于Flooding的技术,基因决定蓝牙Mesh适合小数据包?
图 11 - 24节点100Bytes数据包网络性能对比
> 192节点网络性能测试
随着网络增大,存在的冲突会增加,跳数会增加,对应会导致传输延时的增加;192节点小数据包的传输延时如下图12,这里需要注意的是,蓝牙Mesh有~3%的数据包超过250ms才完成传输(有多少传输最终失败就不清楚了,也不明白为什么蓝牙不能是5Bytes)
图 12 - 192节点5 Bytes数据包网络性能对比
随着数据包的增大,分包导致的冲突阻塞,25Bytes下(蓝牙16Bytes)的测试结果如下图13
图 13 - 192节点25 Bytes数据包网络性能对比
] 3 [ 总结
总体来说,本篇应用文档的测试合理性,数据测试及统计具体方法,分析,信息都不够;应用文档里面也有说明,ZIGBEE 他们从2006年开始,Thread从2015,而BLE Mesh从2017,他们针对不同协议的优化程度都不一致;
但是从协议角度看, Thread与Zigbee基于同PHY和MAC,其特性类似;但是蓝牙Mesh由于采用了Flooding技术,其在大网络及大数据包情况下,显得更力不从心;
Mesh网络的性能,稳定性,实用性,不是简单的通过数据吞吐及数据通信延时能够衡量,综上...