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. C#中使用ListView动态添加数据不闪烁并显示当前插入值

    首先,自定义一个类ListViewNF,继承自 System.Windows.Forms.ListView class ListViewNF : System.Windows.Forms.ListVi ...

  2. mysql数据库版本引发的问题

    改前: 改后:

  3. node连接--MongoDB

    简介: 传统关系类型(ORM:Object-Relational Mapper),MongoDB(ODM:Object Document Mapper); MongoDB是一个面向文档,schme无关 ...

  4. HashMap两种遍历数据的方式

    HashMap的遍历有两种方式,一种是entrySet的方式,另外一种是keySet的方式. 第一种利用entrySet的方式: Map map = new HashMap(); Iterator i ...

  5. ural 1273. Tie

    1273. Tie Time limit: 1.0 secondMemory limit: 64 MB The subway constructors are not angels. The work ...

  6. BZOJ1401 : Hexagon

    这题显然是一个最小斯坦纳树的模型,直接上模板即可,就是正六边形比较恶心. #include<cstdio> #include<cstring> #include<algo ...

  7. RN组件之Navigator

    一.Navigator 1.使用导航器可以在应用的不同场景(页面)间进行切换.导航器通过路由对象来分辨不同的场景.利用renderScene方法,导航栏可以根据 指定的路由来渲染场景. 可以通过con ...

  8. ASCII Table - ASCII码对照表

    ASCII控制字符 二进制 十进制 十六进制 缩写 可以显示的表示法 名称/意义 0000 0000 0 00 NUL ␀ 空字符(Null) 0000 0001 1 01 SOH ␁ 标题开始 00 ...

  9. Java主要有那几种文件类型,各自作用

    java提供了两类数据类型:基本类型,引用类型. 1.基本类型包括:boolean ,byte,char,int,short,float,long,double,值得注意的是:在原始数据类型中,除了b ...

  10. python中的list的方法

    list1=[1,3,5,"a"]print(dir(list1)) """ ['__add__', '__class__', '__contains ...