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. Adapter适配器

    1.概念 *连接后端数据和前端显示的适配器接口 *数据和UI之间的重要连接   2. ArrayAdapter  ArrayAdapter构造器如下: ArrayAdapter(Context con ...

  2. 玩转Android Camera开发(一):Surfaceview预览Camera,基础拍照功能完整demo

    杂家前文是在2012年的除夕之夜仓促完成,后来很多人指出了一些问题,琐事缠身一直没有进行升级.后来随着我自己的使用,越来越发现不出个升级版的demo是不行了.有时候就连我自己用这个demo测一些性能. ...

  3. CodeForces 404C Ivan and Powers of Two

    Ivan and Powers of Two Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & % ...

  4. PHP 读取逐条数据库记录,以及提交下拉菜单选项

    <?php $db_host=localhost; //MYSQL服务器名$db_user=root; //MYSQL用户名$db_pass="******"; //MYSQ ...

  5. 【BZOJ】1074: [SCOI2007]折纸origami

    http://www.lydsy.com/JudgeOnline/problem.php?id=1074 题意:一开始有一个左上角是(0,100),右下角是(100,0)的纸片,现在可以沿有向直线折n ...

  6. C#并行编程--命令式数据并行(Parallel.Invoke)---与匿名函数一起理解(转载整理)

    命令式数据并行   Visual C# 2010和.NETFramework4.0提供了很多令人激动的新特性,这些特性是为应对多核处理器和多处理器的复杂性设计的.然而,因为他们包括了完整的新的特性,开 ...

  7. JS中定义类的方法

    JS中定义类的方式有很多种: 1.工厂方式    function Car(){     var ocar = new Object;     ocar.color = "blue" ...

  8. FLTK 1.3.3 VS 2010 Configuration 配置

    Download FLTK 1.3.3 Download VS2010 I assume you've already installed VS2010 correctly. Compile the ...

  9. 简单Qt网络通信

    最近要用到Qt的Socket部分,网上关于这部分的资料都比较复杂,我在这总结一下,把Socket的主要部分提取出来,实现TCP和UDP的简单通信. 1.UDP通信 UDP没有特定的server端和cl ...

  10. post可以直接把get请求代入到目标url中

    Feigong --非攻 非攻 取自<秦时明月>--非攻,针对不同情况自由变化的武器 Feigong,针对各种情况自由变化的mysql注入脚本 Feigong,In view of the ...