BLE LL Control Procedure

LLCP Overview

  LLCP(Link Layer Control Protocol),链路控制协议用于对链路间的相关参数或状态进行协商和控制。其包括诸如链接参数更新,加密等流程(Procedure),Procedure即LL Control PDU的交互组成的流程或步骤。如右表所示为Spec 4.0至5.0的所有Procdure 。

Link Layer Control

  Link Layer Controller Procedure主要是对LL Control PDU交互的描述,Spec中一般对一个流程的描述可以分为5点:

  1. 目的(Purpose)
  2. 发起方式(Initiator)
  3. 交互过程(Procedure)
  4. 完成方式(Complete)
  5. 条件限制(Condition)

  Link Layer Controller Procedure与固件的实现强相关,固件里的实现可能会表现出Spec描述之外的行为,由于双方发起的流程间没有明确规定限制条件,因此可能会导致最终使用的参数和预期的不一致,或导致链路断开等问题。

Procedure Collisions

  由于LL Control PDU的交互并非阻塞式的,因此slave和master发起流程时可能会导致冲突,如发起相同的流程或发起不兼容的流程。不兼容的流程指的是LL Control PDU包含Instant的流程。
  一个设备在响应上一个不兼容流程的LL Control PDU之后不应重新发起新的不兼容流程。
 如果设备为master,则在遇到流程冲突的情况时将使用LL_REJECT_EXT_IND或LL_REJECT_IND PDU来拒绝slave,并执行master发起的流程。slave则应该接受并执行master发起的流程。

Procedure Timeout

  流程超时规则适用于所有的流程,但是ConneCtion Update和Channel Map Update流程并不采用该规则。
  当发起流程时,流程响应超时定时器T将会重置并开启,当流程完成时,T将会被关闭。如果T计时到达40s,Controller将认为ACL connection丢失并通知Host。

Procedure Instant

  Instant指的是流程生效时的connEventCount,如参数更新生效时,链路信道更新生效时,connEventCount指的是建立连接后对每个connection event的计数。
  当slave接收到包含Instant的PDU时(Instant-connEventCount) modulo 655636小于32767时(公式中的connEventCount指收到LL Control PDU时的connEventCount),slave将监听所有的connection events直到确认master接收到该PDU的响应或connEventCount等于Instant。

the slave shall listen to all the connection events until it has
confirmation that the master has received its acknowledgment of the PDU or connEventCount equals
Instant.

  当slave接收到包含Instant的PDU时(Instant-connEventCount) modulo 655636大于32767时(Instant在过去),此时将认为链路已经丢失。

Link Layer Control Procedure

Version Exchange

Purpose:Exchanged parameters for version information
Condition:v4.0, Connection state
Initiator:Master or Slave, Host request or Control autonomously(自主得)
Complete:LL_VERSION_IND has been received from the peer device
Special & Constraint:
一个设备在一次连接只能发起一次LL_VERSION_IND

HCI
LL Control PDU
MSC
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值