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

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介绍的更多相关文章
- Bluetooth GATT介绍
目录 1. 介绍 2 内容 2.1 Configured Broadcast 2.2 GATT Profile Hierarchy 3 Service Interoperability Require ...
- Bluetooth GAP介绍
目录 1 GAP协议栈 2 Profile Role 3 用户接口 4 模式 5 安全 5.1 认证(Authentication) 5.2 安全模式 6 Idle Mode Procedures 7 ...
- Bluetooth ATT介绍
目录 1 介绍 2 详细内容 2.1 Attribute Type 2.2 Attribute Handle 2.3 Attribute Handle Grouping 2.4 Attribute V ...
- Bluetooth Baseband介绍
目录 1. 概述 1.1 Clock(时钟) 1.2 寻址方式 2. 物理信道(Physical Channels) 3. 物理链路(Physical Links) 4. 逻辑传输层(Logical ...
- Bluetooth HFP介绍
目录 1. 介绍 1.1 目的 1.2 使用场景 1.3 依赖关系 1.4 协议栈 1.5 角色 2. 应用层 3. 空白章节 4. 互操作性要求 4.1 介绍 4.2 Service Level C ...
- Bluetooth RFCOMM介绍
目录 1. 介绍 2. 服务概述 2.1 RS-232控制信号 2.2 Null Modem Emulation 2.3 多串口仿真 3. 服务接口描述 4. RFCOMM帧类型 5. RFCOMM帧 ...
- Bluetooth HCI介绍
目录 1. HCI功能 2. HCI Packet 1. HCI Command 2. HCI Event 3. HCI Data 3. HCI传输层 HCI, 主机控制接口(Host Control ...
- Bluetooth L2CAP介绍
目录 1. 通用操作 1. L2CAP Channel 2. 设备间操作 3. 层间操作 4. 操作模式 2. 数据包格式(Data Packet Format) 1. B-Frame 2. G-Fr ...
- Bluetooth SDP介绍
目录 1. 概念 2. 服务记录(Service Record) 3. 服务属性(Service Attribute) 4. 服务类(Service Class) 5. 服务查找 5.1 UUID 5 ...
随机推荐
- Adapter适配器
1.概念 *连接后端数据和前端显示的适配器接口 *数据和UI之间的重要连接 2. ArrayAdapter ArrayAdapter构造器如下: ArrayAdapter(Context con ...
- 玩转Android Camera开发(一):Surfaceview预览Camera,基础拍照功能完整demo
杂家前文是在2012年的除夕之夜仓促完成,后来很多人指出了一些问题,琐事缠身一直没有进行升级.后来随着我自己的使用,越来越发现不出个升级版的demo是不行了.有时候就连我自己用这个demo测一些性能. ...
- CodeForces 404C Ivan and Powers of Two
Ivan and Powers of Two Time Limit:1000MS Memory Limit:262144KB 64bit IO Format:%I64d & % ...
- PHP 读取逐条数据库记录,以及提交下拉菜单选项
<?php $db_host=localhost; //MYSQL服务器名$db_user=root; //MYSQL用户名$db_pass="******"; //MYSQ ...
- 【BZOJ】1074: [SCOI2007]折纸origami
http://www.lydsy.com/JudgeOnline/problem.php?id=1074 题意:一开始有一个左上角是(0,100),右下角是(100,0)的纸片,现在可以沿有向直线折n ...
- C#并行编程--命令式数据并行(Parallel.Invoke)---与匿名函数一起理解(转载整理)
命令式数据并行 Visual C# 2010和.NETFramework4.0提供了很多令人激动的新特性,这些特性是为应对多核处理器和多处理器的复杂性设计的.然而,因为他们包括了完整的新的特性,开 ...
- JS中定义类的方法
JS中定义类的方式有很多种: 1.工厂方式 function Car(){ var ocar = new Object; ocar.color = "blue" ...
- FLTK 1.3.3 VS 2010 Configuration 配置
Download FLTK 1.3.3 Download VS2010 I assume you've already installed VS2010 correctly. Compile the ...
- 简单Qt网络通信
最近要用到Qt的Socket部分,网上关于这部分的资料都比较复杂,我在这总结一下,把Socket的主要部分提取出来,实现TCP和UDP的简单通信. 1.UDP通信 UDP没有特定的server端和cl ...
- post可以直接把get请求代入到目标url中
Feigong --非攻 非攻 取自<秦时明月>--非攻,针对不同情况自由变化的武器 Feigong,针对各种情况自由变化的mysql注入脚本 Feigong,In view of the ...