欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > 【android bluetooth 协议分析 06】【l2cap详解 5】【通俗易懂l2cap 定时器rtx和ertx】

【android bluetooth 协议分析 06】【l2cap详解 5】【通俗易懂l2cap 定时器rtx和ertx】

2025/4/2 7:19:48 来源:https://blog.csdn.net/qq_33689469/article/details/146767906  浏览:    关键词:【android bluetooth 协议分析 06】【l2cap详解 5】【通俗易懂l2cap 定时器rtx和ertx】

RTX 和 ERTX 定时器详解

在蓝牙 L2CAP 协议中,RTX(Response Timeout eXpired)和 ERTX(Extended Response Timeout eXpired)是两种关键的超时定时器,用于管理信号请求的响应和重传逻辑。以下是它们的核心区别、工作机制及实际应用场景。


1. RTX(基础响应超时定时器)
  • 定义
    RTX 用于检测远程设备对信号请求的无响应情况。当本地发送一个信号请求(如 L2CAP_ConnectReqL2CAP_ConfigReq)时启动,若未在指定时间内收到响应,则触发超时处理。

  • 核心特性

    • 初始超时值:1 秒(最小值)至 60 秒(最大值),具体值由实现决定。

    • 最大总超时时间:从首次启动到最终终止通道的最长时间为 60 秒

    • 重传机制:若超时后选择重传请求,新的 RTX 超时值需至少为前一次的两倍(指数退避)。

    • 终止条件:收到响应、物理链路断开或达到最大超时时间。

  • 典型场景

    • 发送 L2CAP_ConnectReq 后等待 L2CAP_ConnectRsp

    • 发送 L2CAP_ConfigReq 后等待 L2CAP_ConfigRsp

  • 处理流程

发送信号请求
启动RTX定时器
收到响应?
停止RTX, 正常处理
RTX超时?
重传请求或断开连接
重置RTX为2倍值

2. ERTX(扩展响应超时定时器)
  • 定义
    ERTX 是 RTX 的扩展版本,用于处理需要额外处理时间的场景。当远程设备返回“待定”响应(如 L2CAP_ConnectRsp 中状态为 pending)时启动。

  • 核心特性

    • 初始超时值:60 秒(最小值)至 300 秒(最大值)。

    • 最大总超时时间:从首次启动到最终终止通道的最长时间为 300 秒

    • 与 RTX 的关系:ERTX 超时后若重传请求,原 ERTX 定时器会被 替换为新的 RTX,流程重新开始。

    • 终止条件:收到最终响应、物理链路断开或达到最大超时时间。

  • 典型场景

    • 收到 L2CAP_ConnectRsp 结果为 pending(0x0001)。

    • 远程设备需要额外时间处理请求(如资源分配、控制器协商)。

  • 处理流程

收到Pending响应
启动ERTX定时器
收到最终响应?
停止ERTX, 正常处理
ERTX超时?
重传请求或断开连接
替换为RTX定时器
按RTX流程处理

3. RTX 与 ERTX 的关键区别
特性RTXERTX
触发条件发送普通信号请求收到“pending”响应
超时范围1–60 秒60–300 秒
总超时上限60 秒300 秒
重传后行为超时值翻倍,继续使用 RTX超时后替换为 RTX,流程重启
典型应用连接请求、配置请求待定响应的后续处理
控制器交互无特殊要求可能涉及控制器流规范验证

4. 实际应用示例
场景 1:标准连接请求(RTX)
  1. 设备 A 发送 L2CAP_ConnectReq,启动 RTX(初始值 2 秒)。

  2. 设备 B 在 1.5 秒内返回 L2CAP_ConnectRsp(成功)→ RTX 停止,通道进入 CONFIG 状态。

  3. 若设备 B 无响应,RTX 在 2 秒后超时 → 设备 A 重传请求,RTX 重置为 4 秒。

  4. 若连续超时,RTX 值持续翻倍,直至总时间达到 60 秒后断开通道。

场景 2:带Pending响应的连接(ERTX)
  1. 设备 A 发送 L2CAP_ConnectReq,设备 B 返回 L2CAP_ConnectRsp(pending)。

  2. 设备 A 启动 ERTX(初始值 120 秒)。

  3. 设备 B 在 100 秒后完成处理,发送最终 L2CAP_ConnectRsp(成功)→ ERTX 停止,进入 CONFIG 状态。

  4. 若设备 B 超时未响应,ERTX 在 120 秒后触发 → 设备 A 重传请求,ERTX 替换为 RTX(初始值 1 秒),后续按 RTX 流程处理。


5. 实现注意事项
  • 定时器独立性:每个未完成的信号请求需关联独立的 RTX/ERTX 定时器。

  • 物理链路影响:若物理链路断开(如蓝牙断开),所有定时器立即终止。

  • LE 传输的特殊性:在低功耗蓝牙(LE)中,外围设备的主机可能在 RTX 超时后主动断开链路。

  • 模式兼容性:在无限重传模式(如 Enhanced Retransmission Mode)中,L2CAP 层可能不进行重传,依赖物理层重传。


通过合理配置 RTX 和 ERTX,L2CAP 协议能够在复杂网络环境下平衡响应速度和可靠性,确保蓝牙设备高效完成逻辑链路的建立与管理。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词