android 蓝牙数据分包_无线组网技术谁能问鼎云巅-蓝牙Mesh, ZIGBEE, THREAD

​本文测试数据主要基于SILABS的应用文档"AN1142 - 网状网络性能对比"。

前言: 蓝牙Mesh在阿里的大力推广下,2018/2019出货巨大,直接跳至千万级量;Zigbee的江湖地位已经收到严重威胁;而Thread作为新秀,能否黑马逆袭?我们先看看三个网络技术层面的特点及性能

目录

  • 三种Mesh网络概述
  • 吞吐率和延时性能对比
  • 网络性能对比
  • 总结

01

三种Mesh网络概述

首先,我们看下三种Mesh技术的概览及网络模型,如图1,2,3,4。

46730d7eb96a84791eac6b73db04432c.png

图1 - Mesh网络概览

3ff646ff982210b23820b886a1488b89.png

图2 - Thread网络模型

858dfc999052be13d2eb072cdb038900.png

图3 - Zigbee网络模型

a70d48a31b69e334a577ac069f313c8e.png

图4 - BLE Mesh网络模型


本文的测试,均是Silabs在研发中心实际环境测试,具体可参考上篇文章。

02

吞吐率和延迟测试比拼

吞吐率及传输延时的测试在一个稳定的6Hop拓扑下进行(通过衰减器搭建的稳定的6跳网络),测试节点拓扑如下图。本测试结果主要取决于协议栈本身的PHY及MAC的特性;

f03535e259a9e7b966ad5cdcdca6e7ae.png

图 X 跳网络示意图

本测试针对未分段8bytes小数据传输下的性能及100Bytes的大数据传输下的数据吞吐率性能进行了验证。分别如图5和图6;我查了下Thread和Zigbee的MAC层结构,都是按照802.15.4的MAC和PHY;由于文档中没有针对具体的数据收发情景做出说明,图5与图6显示Thread能够有更好的结果,大概率与Thread的最终PHY数据包结构有关系;有深入看过协议的朋友可以分享下~

而蓝牙由于分包机制,在大数据包情况下,数据吞吐率,嗯,非常稳定;

7bdb576b083c0a82b230618962e87759.png

图 5 - 8 Bytes吞吐率对比

fd5075ab6ae57c45782e4e9b1f29ebed.png

图 6 - 100 Bytes吞吐率对比


同时,针对小数据包的数据通信延时如图7,这里不得不说,凭什么拿20Bytes的Thread和50Bytes的ZIGBEE对比? 这点不理解?

87a44965e35bb62561b49accbcde109f.png

图 7 - 8 Bytes通信延时对比

接着, SILABS针对4HOP的拓扑下的不同数据长度做了延时的对比,结果如下,简单而言,由于Payload的增大,不同拓扑的分包机制带来的传输延时会成比例增加。当然,我也不理解为什么结果中,ZIGBEE与蓝牙Mesh均是 点状结果+ 预估趋势线而 Thread则是实线? 且Thread分包带来的影响如此之小??

图 8 - 4 Hops下不同数据包延时对比

cd20f36eb100db8871773ba51fc25cc0.png

图 8 - 4 Hops下不同数据包延时对比

03

网络性能测试

针对Mesh网络实际应用,实际环境下的不同大小网络的性能,也是验证协议栈性能及稳定性,实用性的重要方面;Silabs的网络性能测试,基于如下不同大小的网络,测试100包不同大小数据的传输延时及数据包成功接收比例;

小型网络: 24节点
中型网络:1~48节点
中型网络:2~96节点
大型网络:1~144节点
大型网络:2~192节点


> 24节点网络性能测试


测试结果如下图10,三种网络在约100ms内完成100个数据包的传输,而可以看到的是Thread总体完成时间更快更高效;

e6a80f8a66855ee6e307bde63f3034e0.png

图 10- 24节点100Bytes数据包网络性能对比


而如果增大数据包大小,Thread和Zigbee采用50Bytes,蓝牙Mesh 32 Bytes情况下,测试结果如下图11。可以看到Thread还能够在稳定的100ms内完成,而Zigbee时间明显的增加,蓝牙Mesh则呈现出了按时间平均分布的传包率,延时大大增加;从这个结果,结合蓝牙基于Flooding的技术,基因决定蓝牙Mesh适合小数据包?

3a4a41c59c17e4244416ca837415412b.png

图 11 - 24节点100Bytes数据包网络性能对比


> 192节点网络性能测试

随着网络增大,存在的冲突会增加,跳数会增加,对应会导致传输延时的增加;192节点小数据包的传输延时如下图12,这里需要注意的是,蓝牙Mesh有~3%的数据包超过250ms才完成传输(有多少传输最终失败就不清楚了,也不明白为什么蓝牙不能是5Bytes)

f9faf7f4c5ebe1c801befe3ea9da91bc.png

图 12 - 192节点5 Bytes数据包网络性能对比


随着数据包的增大,分包导致的冲突阻塞,25Bytes下(蓝牙16Bytes)的测试结果如下图13

2bf47af807f956557adb4e967b4f3549.png

图 13 - 192节点25 Bytes数据包网络性能对比

04

总结


总体来说,本篇应用文档的测试合理性,数据测试及统计具体方法,分析,信息都不够;应用文档里面也有说明,ZIGBEE 他们从2006年开始,Thread从2015,而BLE Mesh从2017,他们针对不同协议的优化程度都不一致;

但是从协议角度看, Thread与Zigbee基于同PHY和MAC,其特性类似;但是蓝牙Mesh由于采用了Flooding技术,其在大网络及大数据包情况下,显得更力不从心;

然而,针对家庭类的情景,考虑到数目有限,加上智能设备出于移动过程中,BLE Mesh这种“游击网”比起ZIGBEE和Thread的"阵地网",还是会有部分的加层优势。这也是除去阿里这样企业推动Mesh生态外,Mesh发展迅速的原因。

欢迎添加个人V好友,沟通交流无线技术的应用。 (更多内容可关注公众号 智联网事)

98a7e3e4401f9cb71e89359967b31405.png

欢迎来撩

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值