链路层状态可同时进行多个连接 [英] Link Layer state for more than one simultaneous connection

查看:88
本文介绍了链路层状态可同时进行多个连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我正确理解了链路层,则它始终完全处于待机",广告",正在扫描",正在启动"或已连接"五个状态之一.那么,如何同时连接两个设备呢?当我连接到一台设备时,链路层处于已连接"状态.要连接到另一台设备,它必须切换到正在启动"或正在广告"状态(取决于其GAP角色),同时保持已连接设备的已连接"状态.但是然后它同时处于两种状态,这是禁止的.

If I understood the Link Layer correctly, it is always exactly in one of the five states "Standby", "Advertising", "Scanning", "Initiating", or "Connected". So how is it possible that I can connect to two devices simultaneously? When I am connected to one device, the Link Layer is in "Connected" state. To connect to another device, it would have to switch to "Initiating" or "Advertising" state (depending on its GAP role), while maintaining the "Connected" state to the already connected device. But then it is in two states simultaneously, which is forbidden.

我在哪里错了?

推荐答案

您对链接层状态的理解是正确的;核心规范(1)中的图中对此进行了演示:-

You are correct in your understanding of the Link Layer states; this is demonstrated in a figure in the Core Specification (1):-

但是,该规范还指出,链路层可以选择支持多个状态机,如下所示(2):-

However, the specification also states that the Link Layer may optionally support multiple state machines as follows (2):-

  • 处于连接状态的链路层可以同时充当主角色和从角色.
  • 处于从属角色的连接状态中的链路层可能具有多个连接.
  • 处于主角"角色的连接状态"中的链路层可能具有多个连接.
  • 也可以支持状态和角色的所有其他组合.
  • 处于连接状态的链路层最多应具有一个与处于连接状态的另一链路层的连接.

下表列出了链路层状态(3)的几种可能的组合:-

The table below lists a couple of possible combinations of Link Layer states (3):-

我希望这会有所帮助.

  1. 蓝牙规范,版本5.0,第6卷,B部分,一般说明,第2553页
  2. 蓝牙规范,版本5.0,第6卷,B部分,一般说明,第2554页
  3. 蓝牙规范,版本5.0,第6卷,B部分,一般说明,第2555页

这篇关于链路层状态可同时进行多个连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆