Bluetooth LMP介绍

时间:2023-03-09 06:15:02
Bluetooth LMP介绍

LMP即Link Management Protocol,用于链路建立和控制

1. 介绍

基于这一层的实体我们称之为链路管理器(LM: Link Managers) 
LM将命令转换为Baseband层的操作(包括如下) 
~ 将Slaves加入到Piconet,并给他们分配Active Member Addresss 
~ 将断开连接的Slaves从Piconet中分离 
~ 配置Master、Slaves切换的链路 
~ 建立ACL、SCO链路 
~ 将连接设置为低功耗模式: Hold, Sniff and Park 
~ 控制测试模式

Bluetooth LMP介绍

LMP由一系列消息组成(传输在ACL逻辑传输层的ACL-C逻辑链路) 
这些消息由LM来解释和执行,且不能往高层协议传递

2. 数据包格式(Packet Format)

LMP的PDU有两种格式(Opcode=7/15 bit) 
详细格式参考Vol2-Park C-5

LMP消息以Transaction的形式进行传输,同一组对话有相同的transaction ID 
标识参数为Transaction ID: 
- 0: Master发起Transaction 
- 1: Slave发起Transaction

LMP消息使用DM1包,如果使用HV1 SCO链路、并且Payload长度小于9 bytes,也可个DV包

Bluetooth LMP介绍

3. Procedure Rules

在序列图中使用如下符号

Bluetooth LMP介绍  
PDU1: A  –> B 
PDU2: B  –> A 
PDU3: A  –> B (可选) 
PDU4: B  –> A (可选) 
PDU5: A <-> B

其中,垂直线表示多个PDU可以有选择地发送

4. 通用回应消息(General Response Messages)

LMP_accepted和LMP_not_accepted使用在Opcode=7 bit的情况 
LMP_accepted_ext和LMP_not_accepted_ext使用在Opcode=15 bit的情况

Bluetooth LMP介绍

5. 设备特性(Device Features)

蓝牙设置定义了很多特性,LMP消息在传输时,需确定双方是否支持这些特性(Vol2-Park C-3.2) 
这些特性在LMP消息中以bit mask的形式来反应(Vol2-Park C-3.3) 
-1: 支持 
-0: 不支持

6. Procedure

LMP详细过程包括七个大类(Vol2-Park C-4) 
- Connection Control 
- Security 
- Information Requests 
- Role Switch 
- Modes of Operation 
- Logical Transports 
- Test Mode

也可参考<Link Management Protocol>