Bluetooth LMP介绍

1. 介绍

LMP即Link Management Protocol,用于链路建立和控制
基于这一层的实体我们称之为链路管理器(LM: Link Managers)

LM将命令转换为Baseband层的操作,包括

- 将Slaves加入到Piconet, 并给他们分配Active Member Addresss 
- 将断开连接的Slaves从Piconet中分离 
- 配置Master、Slaves切换的链路 
- 建立ACL、SCO链路 
- 将连接设置为低功耗模式: Hold, Sniff and Park 
- 控制测试模式

image

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

2. 数据包格式

LMP的PDU有两种数据包格式(Packet Format,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包

image 

3. 程序规则

程序规则,Procedure Rules,在序列图中使用如下符号

image 

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

4. 回应消息

通用回应消息,General Response Messages

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

image

5. 设备特性

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

6. Procedure

LMP详细过程包括七个大类(Vol 2-Park C - 4)

- Connection Control 
- Security 
- Information Requests 
- Role Switch 
- Modes of Operation 
- Logical Transports 
- Test Mode

 

参考:
<Link Management Protocol>

posted @ 2014-07-20 21:41  北落不吉  阅读(3923)  评论(0编辑  收藏  举报