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 
~ 控制测试模式

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包

3. Procedure Rules

在序列图中使用如下符号

  
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的情况

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>

Bluetooth LMP介绍的更多相关文章

  1. Bluetooth GATT介绍

    目录 1. 介绍 2 内容 2.1 Configured Broadcast 2.2 GATT Profile Hierarchy 3 Service Interoperability Require ...

  2. Bluetooth GAP介绍

    目录 1 GAP协议栈 2 Profile Role 3 用户接口 4 模式 5 安全 5.1 认证(Authentication) 5.2 安全模式 6 Idle Mode Procedures 7 ...

  3. Bluetooth ATT介绍

    目录 1 介绍 2 详细内容 2.1 Attribute Type 2.2 Attribute Handle 2.3 Attribute Handle Grouping 2.4 Attribute V ...

  4. Bluetooth Baseband介绍

    目录 1. 概述 1.1 Clock(时钟) 1.2 寻址方式 2. 物理信道(Physical Channels) 3. 物理链路(Physical Links) 4. 逻辑传输层(Logical ...

  5. Bluetooth HFP介绍

    目录 1. 介绍 1.1 目的 1.2 使用场景 1.3 依赖关系 1.4 协议栈 1.5 角色 2. 应用层 3. 空白章节 4. 互操作性要求 4.1 介绍 4.2 Service Level C ...

  6. Bluetooth RFCOMM介绍

    目录 1. 介绍 2. 服务概述 2.1 RS-232控制信号 2.2 Null Modem Emulation 2.3 多串口仿真 3. 服务接口描述 4. RFCOMM帧类型 5. RFCOMM帧 ...

  7. Bluetooth HCI介绍

    目录 1. HCI功能 2. HCI Packet 1. HCI Command 2. HCI Event 3. HCI Data 3. HCI传输层 HCI, 主机控制接口(Host Control ...

  8. Bluetooth L2CAP介绍

    目录 1. 通用操作 1. L2CAP Channel 2. 设备间操作 3. 层间操作 4. 操作模式 2. 数据包格式(Data Packet Format) 1. B-Frame 2. G-Fr ...

  9. Bluetooth SDP介绍

    目录 1. 概念 2. 服务记录(Service Record) 3. 服务属性(Service Attribute) 4. 服务类(Service Class) 5. 服务查找 5.1 UUID 5 ...

随机推荐

  1. 利用mapreduce将数据从hdfs导入到hbase遇到的问题

    现象: 15/08/12 10:19:30 INFO mapreduce.Job: Job job_1439396788627_0005 failed with state FAILED due to ...

  2. 神奇的HTML5离线存储(应用程序缓存)

    声明:本文为原创文章,如需转载,请注明来源并保留原文链接前端小尚,谢谢! 前言 使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. HTML5引入 ...

  3. &1的用法

    看到不少大神都喜欢用&1来判断一些东西,但是作为渣渣的我总是不理解这个&1到底是有什么作用. 今天写了程序看了一下,其实是判断奇偶用的. 如果是奇数,其结果为1,偶数结果为false. ...

  4. HealthKit开发快速入门教程之HealthKit数据的操作

    HealthKit开发快速入门教程之HealthKit数据的操作 数据的表示 在HealthKit中,数据是最核心的元素.通过分析数据,人们可以看到相关的健康信息.例如,通过统计步数数据,人们可以知道 ...

  5. SPOJ287 Smart Network Administrator(最大流)

    题目大概是说,一个村庄有n间房子,房子间有m条双向路相连.1号房子有网络,有k间房子要通过与1号房子相连联网,且一条路上不能有同样颜色的线缆,问最少要用几种颜色的线缆. 二分枚举颜色个数,建立容量网络 ...

  6. tiledmap2

    1 1.1 将tiledmap 保存为xml格式 1.2 在unity当中设置摄像机为"Orthogonal", 1.3 拖拽tiledmap prefab从project视图到H ...

  7. java多次替换(replace不行)

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class test { public static vo ...

  8. 配置当前用户使用豆瓣pip源

    配置当前用户使用豆瓣pip源   mkdir ~/.pip/ cat ~/.pip/pip.conf [global] index-url = http://pypi.douban.com/simpl ...

  9. libtiff4.04

    http://www.linuxfromscratch.org/blfs/view/svn/general/libtiff.html 安装方法 : ./configure --prefix=/usr ...

  10. asp.net 微信企业号办公系统-流程设计--保存与发布

    如果流程未设计完时可以先保存,以后再打开接着设计.点击工具栏上的保存按钮即可保存当前流程设计: 如果下次要接着设计,则可以打开该流程继续设计: 如果流程设计完成,可以点击安装按钮来发布流程,流程安装成 ...