Bluetooth技术学习笔记 ——L2CAP之状态机

今晚月色真美。
参考:core_v5.0 vol 3. Part A
1. 状态
  • CLOSED:信道未连接

  • WAIT_CONNECT_RSPconnection request 消息已发送,并正在等待connection response

  • WAIT_CONNECTconnection request消息已收到,回复了携带“pending”指示的connection response

  • CONFIG
    WAIT_CONFIGconnection response已发送或已收到,但未发起或收到configuration request
    WAIT_SEND_CONFIG:对于发起端,未发送 configuration request;对于响应端,已收到合适选项的 configuration request
    WAIT_CONFIG_REQ_RSP
    WAIT_CONFIG_RSP
    WAIT_CONFIG_REQ
    WAIT_IND_FINAL_RSP
    WAIT_FINAL_RSP
    WAIT_CONTROL_IND

  • OPEN :连接已建立,配置已完成,数据流正在传输。

  • WAIT_DISCONNECT

  • WAIT_CREATE

  • WAIT_CREATE_RSP

  • WAIT_MOVE

  • WAIT_MOVE_RSP

  • WAIT_CONFIRM_RSP

2. 事件
  • OpenChannel_req、OpenChannel_Rsp、CloseChannel_Req
  • L2CAP_ConnectReq、L2CAP_ConnectRsp
  • L2CAP_ConfigReq、L2CAP_ConfigRsp
  • L2CAP_DisconnectReq、L2CAP_DisconnectRsp
  • L2CAP_CreateChanReq、L2CAP_CreateChanRsp、
  • L2CAP_MoveChanReq、L2CAP_MoveChanRsp、L2CAP_MoveChanConfirm、L2CAP_MoveChanConfirmRsp
  • SendData_req
  • ReconfigureChannel_
    Req
3. 定时器事件

(1)RTX:Response Timeout eXpired timer

  • 启动:当本端向远端发送信令请求消息时启动该定时器。
  • 停止:当收到来自远端的信令响应时停止该定时器。
  • 超时:当定时器第一次超时时,本端可重新发送信令请求消息或者断开信道。当重新发送信令请求消息时,重置RTX的值,至少为原值的两倍。
  • 初始RTX取值范围:1~60s。

(2)ERTX:Extended Response Timeout eXpired

  • 启动:当收到来自远端的信令响应,且携带“pending”指示时,启动该定时器。
  • 停止:当收到来自远端的正式响应或物理链路断开时,停止该定时器。
  • 超时:本端可重新发送信令请求消息或者断开信道。当重发请求消息时,定时器使用ERTX。
  • ERTX取值范围:60~300s。
4. 状态机
  • States and transitions
    在这里插入图片描述
  • Configuration states and transitions
    在这里插入图片描述
发布了103 篇原创文章 · 获赞 41 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/u012800825/article/details/88947622