认识BLE 5协议栈 —— 逻辑链路控制与适配协议层

L2CAP实现了协议复用和分段传输,协议复用主要是指Host能够通过L2CAP与LE控制器,BR/EDR控制,以及AMP控制器多种控制器通信,L2CAP充当了一个适配器的角色。分段传输可以将上层数据分成数据片段,再依次传输。分段的依据是MTU和MPS,它是属性协议层的ATT_MTU参数的基础。

认识BLE 5协议栈 —— 主机控制器接口

HCI接口向Host提供了操控Controller的接口,Host对底层一切行为都通过HCI命令来实现。Controller完成命令后,向Host发送命令执行状态事件。HCI的命令和事件非常多,了解每个命令和事件的细节对一个普通开发者而言是一件不可能的事情。

认识BLE 5协议栈 —— 链路层

链路层定义了五种状态机,分别是广播状态、扫描状态、发起状态、连接状态和待机状态。围绕这几种状态机,实现了广播、扫描、连接等各种操作。广播和连接过程比较复杂,涉及到许多细致的分类,BLE 5对广播包进行了扩展,进一步增加了广播事件的复杂性。