1、 为什么不可能达到BLE的理论速度?
1 Mbps (LE 1M PHY)、2 Mbps (LE 2M PHY)、125 kbps 和 500 kbps(均使用 S=8 和 S=2 的 LE 编码 PHY)的数据速率是无线电的速率 传输数据,但由于以下原因,这对于应用程序吞吐量无法实现:
l 每个连接间隔的数据包数量限制
l 数据包之间的帧间空间 (IFS) 延迟 (150 us)
l 即使没有数据可用于传输,也需要从设备发送空数据包
l 数据包开销--并非数据包中的所有字节都用于有效载荷
1 Mbps (LE 1M PHY)、2 Mbps (LE 2M PHY)、125 kbps 和 500 kbps(均使用 S=8 和 S=2 的 LE 编码 PHY)的数据速率是无线电的速率 传输数据,但由于以下原因,这对于应用程序吞吐量无法实现:
每个连接间隔的数据包数量限制
数据包之间的帧间空间 (IFS) 延迟 (150 us)
即使没有数据可用于传输,也需要从设备发送空数据包
数据包开销——并非数据包中的所有字节都用于有效载荷
为了更好地了解这些因素并了解影响应用吞吐量的因素,我们必须更深入地研究数据包格式。 下图显示了 LE 1M PHY 和 2M PHY 数据包的样子:
蓝牙数据格式
我们感兴趣的部分(也是真正定义应用程序数据的部分)是 ATT Payload。 从图中可以看出,Bluetooth Low Energy 中的每一层都使用了许多开销字节。
l 在 4.0 和 4.1 中,最大 ATT Payload 为 20 字节。
l 在 4.2 和 5.0 中,一项称为数据长度扩展 (DLE) 的新功能允许 ATT 有效负载最多容纳 244 字节的数据。
2、 蓝牙 5 速度:利用新的 2M PHY 提高 2 倍速度
了解在蓝牙 5 中使用新的 LE 2M PHY 的局限性很有用:
l 不能用于传输primary advertisements(在primary频道上)。
l 可用于在与数据包相同的通道(37 个通道:0-36)上发送的辅助“辅助数据包”。
l LE 1M 是强制性的,而 LE 2M 是可选的。 因此,并非所有声称支持蓝牙 5 的芯片都一定能够处理更高的吞吐量。
l 广告和发现可以发生在 LE 2M PHY 上,然后连接发生在使用 LE 2M PHY 的次要广播通道上
应用程序数据从一个设备到另一个设备的传输通常发生在两个设备之间的连接期间。 连接的设备可以通过 PHY 更新程序协商使用不同的 PHY。 它可以在建立连接后由从设备或主设备启动,但主设备将最终决定每个方向使用哪些 PHY(基于从设备的请求和主设备支持的 PHY)。
3、 影响/决定数据吞吐量的因素
有几个因素会影响 B