在蓝牙的spec中Host卷GAP篇中对有关广播、扫描、连接以及相关扩展的概念和流程进行了解释和说明。但是如果只看这些抽象的理论是比较难以理解的,而在controller卷LL篇中给出了这些抽象概念的具象化实现,也就是各种各样类型的PDU包。通过对GAP层在LL层中PDU部分的各种实现情况,可以让我们能很好的把握GAP的核心意义。
在spec中,根据使用的物理信道的不同,将PDU分为两大类别。
Advertising physical channel PDU-广播物理通道PDU
Advertising PDUs-广播PDU
Type | 说明 | 特点 |
---|---|---|
ADV_IND | 可扫描可连接非定向广播 | 基本的广播包类型 |
ADV_DIRECT_IND | 可连接定向广播 | 带有主机地址的广播包,只有特定主机才能连接 |
ADV_NONCONN_IND | 不可扫描不可连接广播 | 不响应扫描请求和连接请求 |
ADV_SCAN_IND | 可扫描非定向广播 | 响应扫描请求,但不响应连接请求 |
ADV_EXT_IND | 扩展广播 | 用于主要广播通道 |
AUX_ADV_IND | 扩展广播 | 用于次要广播通道,广播数据的第一个片段,不可连接的、定向扫描的。 |
AUX_SYNC_IND | 扩展广播 | 用于次要广播通道,用于周期性广播,以一定间隔发送不定向的数据包 |
AUX_CHAIN_IND | 扩展广播 | 用于次要广播通道,发送剩余的数据 |
Scanning PDUs-扫描PDU
Type | 说明 | 备注 |
---|---|---|
SCAN_REQ | 扫描请求 | |
SCAN_RSP | 扫描响应 | |
AUX_SCAN_REQ | 扫描请求 | 用于扩展广播应用 |
AUX_SCAN_RSP | 扫描响应 | 用于扩展广播应用 |
Initiating PDUs-初始化PDU
Type | 说明 | 备注 |
---|---|---|
CONNECT_IND | 连接请求 | 用于传统广播 |
AUX_CONNECT_REQ | 连接请求 | 用于扩展广播 |
AUX_CONNECT_RSP | 连接响应 | 用于扩展广播 |
Data Physical Channel PDU-数据物理通道PDU
LL Data PDU -LL数据PDU
对于连接后的数据通道的数据PDU,内容涉及更上层的L2CAP协议和ATT协议,与GAP协议本身关系已经不大了。相关内容将在L2CAP协议的分析博客中再进一步说明。
LL Control PDU-LL控制PDU
数据通道的控制PDU的类型比较多,内容涉及连接参数控制、加密鉴权、时钟同步等内容,这里不作一一说明。
Op Code | Type |
---|---|
0x00 | LL_CONNECTION_UPDATE_IND |
0x01 | LL_CHANNEL_MAP_IND |
0x02 | LL_TERMINATE_IND |
0x03 | LL_ENC_REQ |
0x04 | LL_ENC_RSP |
0x05 | LL_START_ENC_REQ |
0x06 | LL_START_ENC_RSP |
0x07 | LL_UNKNOWN_RSP |
0x08 | LL_FEATURE_REQ |
0x09 | LL_FEATURE_RSP |
0x0A | LL_PAUSE_ENC_REQ |
0x0B | LL_PAUSE_ENC_RSP |
0x0C | LL_VERSION_IND |
0x0D | LL_REJECT_IND |
0x0E | LL_SLAVE_FEATURE_REQ |
0x0F | LL_CONNECTION_PARAM_REQ |
0x10 | LL_CONNECTION_PARAM_RSP |
0x11 | LL_REJECT_EXT_IND |
0x12 | LL_PING_REQ |
0x13 | LL_PING_RSP |
0x14 | LL_LENGTH_REQ |
0x15 | LL_LENGTH_RSP |
0x16 | LL_PHY_REQ |
0x17 | LL_PHY_RSP |
0x18 | LL_PHY_UPDATE_IND |
0x19 | LL_MIN_USED_CHANNELS_IND |
0x1A | LL_CTE_REQ |
0x1B | LL_CTE_RSP |
0x1C | LL_PERIODIC_SYNC_IND |
0x1D | LL_CLOCK_ACCURACY_REQ |
0x1E | LL_CLOCK_ACCURACY_RSP |
参考
上述PDU的结构在spec中
Vol 6: Core System Package [Low Energy Controller volume]
Part B: Link Layer Specification
2 Air interface packets
章节有具体说明,该博客只做类型总结。相关说明需要查看spec中的说明。
标签:PDU,REQ,GAP,IND,广播,BLE,RSP,LL From: https://www.cnblogs.com/simpleGao/p/17482625.html