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. 【HTML5】拖放(Drag 和 drop)

    效果图: <!DOCTYPE HTML> <html> <head> <style type="text/css"> #div1 { ...

  2. php操作数据库找不到列

  3. Fragment基础讲解

    //新建一个碎片public class LeftFragment extends Fragment { @Override public View onCreateView(LayoutInflat ...

  4. CodeForces 222B Cosmic Tables

    Cosmic Tables Time Limit:3000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Subm ...

  5. JVM的GC实现详解

    新生代中的98%对象都是“朝生夕死”的,所以并不需要按照1:1的比例来划分内存空间,而是将内存分为一块比较大的Eden空间和两块较小的Survivor空间,每次使用Eden和其中一块Survivor. ...

  6. 什么是C#编程语言明明白白学C#

    什么是C#编程语言明明白白学C# C#是微软公司发布的一门面向对象的编程语言.它作为一门语言,则具备语言的四个要素.并且,它符合编程语言的四个要素的特性.同时,它作为面向对象的编程语言,可以解决各种复 ...

  7. BZOJ4345 : [POI2016]Korale

    只考虑第一问,将珠子按照价值从小到大排序,设排序后第$i$小的为$b[i]$,定义二元组$(x,y)$表示当前珠子的总价值为$x$,用的价值最大的珠子为$y$,用一个小根堆来维护所有状态.一开始往堆中 ...

  8. BZOJ3828 : [Poi2014]Criminals

    对于每个位置求出L[i]表示左边最大的j,满足从j开始到i-1中存在第一个子序列 R[i]表示右边最小的j,满足从j开始到i-1中存在第二个子序列 然后枚举颜色是相遇点的位置,如果L[i]左边.R[i ...

  9. 使用CSS 3创建不规则图形 文字围绕

    前言 CSS 创建复杂图形的技术即将会被广泛支持,并且应用到实际项目中.本篇文章的目的是为大家开启它的冰山一角.我希望这篇文章能让你对不规则图形有一个初步的了解. 现在,我们已经可以使用CSS 3 常 ...

  10. Session赋值(备注)

    Session赋值也是在后台赋,不是在前台赋 追问 不好意思 那还真能在AJAX中赋值 我已经解决了 加一个接口IRequiresSessionState 就OK 提问者评价 太感谢了,真心有用