Bluetooth core ---------- BR/EDR 的运作程序及模式

版权声明:转载复制请注明出处,谢谢! https://blog.csdn.net/weixin_44216065/article/details/86424983

      蓝牙设备的典型操作模式是连接到其他蓝牙设备(在piconet中),并与这些蓝牙设备交换数据。由于蓝牙是一种特殊的无线通信技术,因此有许多操作过程可以形成piconet,以便进行后续通信。运作程序和模式被应用于蓝牙体系结构的不同层,因此设备可以同时进行一系列的操作和模式。

1、BR/EDR的运作流程

1.1、查询(发现)的过程(Inquiry (Discovering) Procedure)

       蓝牙设备使用查询过程发现附近的设备,或者被其所在位置的设备发现。查询过程是不对称的。试图查找附近其他设备的蓝牙设备称为查询设备,能主动发送查询请求。可被发现的蓝牙设备称为可发现设备,能侦听这些查询请求并发送响应。查询过程中的查询请求和查询响应都是使用一个特殊的物理通道。

       查询设备和可发现设备可能已经连接到piconet中的其他蓝牙设备。任何用于查询或占用查询扫描物理通道的时间都需要与现有逻辑传输上的QoS承诺的需求进行平衡。

       查询过程不使用物理通道之上的任何体系结构层,尽管可以认为在交换查询和查询响应信息期间存在一个临时的物理链接。

1.1.1、扩展查询响应

       扩展查询响应可用于在查询响应过程中提供杂项信息。数据类型是为本地名称和受支持的服务等内容定义的,否则必须通过建立连接来获得这些信息。在扩展查询响应中接收本地名称和受支持服务列表的设备,不必通过连接来执行远程名称请求和SDP服务搜索,从而缩短了获取有用信息的时间。建议设备在扩展查询响应中包含所有受支持的服务和其本地名称的重要部分(如果该名称太长,无法完整发送)。

       扩展查询响应过程向后兼容标准查询响应过程。

1.2、分页(连接)的过程(Paging (Connecting) Procedure)

       形成连接的过程是不对称的,要求一个蓝牙设备执行page(连接)过程,而另一个蓝牙设备是可连接的(page scanning)。该过程是有目标的,因此page过程只由一个指定的蓝牙设备响应。

       可连接设备使用一个特殊的物理通道侦听来自page (connecting) 设备的连接请求包。此物理通道具有特定于可连接设备的属性,因此只有具有可连接设备标识的 paging 设备才能在此通道上通信。

       paging设备和可连接设备可能都已经连接到其他蓝牙设备。

       花费在 page 或占用 page scan 物理通道上的任何时间都需要与现有逻辑传输上的QoS承诺的需求进行平衡。

1.3、已连接模式(Connected Mode)

       在BR/EDR控制器上成功连接过程后,两个设备都连接到一个piconet物理通道,设备之间有物理链接,并且有默认的ACL-C、ACL-U、ASB-C和ASB-U逻辑链接。其中两个链路(ACL-C和ASB-C)传输LMP控制协议,并且对链路管理器(Link Manager)上面的层不可见。ACL-U链路传输L2CAP信令协议和任何多路复用的L2CAP最佳工作通道。ASB-U 链路传输 L2CAP 频道,这些频道向 piconet 上的所有从端设备进行广播。通常引用缺省ACL逻辑传输,它可以通过上下文解析,但通常引用默认的ACL-U 逻辑链接。

       在连接模式下,可以创建和释放额外的逻辑链接,并更改物理和逻辑链接的模式,同时保持与piconet物理通道的连接。设备还可以执行查询(inquiry)、分页(paging )或扫描(scanning)过程,或者连接到其他微微网,而不需要断开与原来的微微网的物理通道的连接。这些操作是使用链接管理器(Link Manager)完成的,它与远程蓝牙设备交换链接管理器协议消息。

       可以在已连接模式(connected mode)下建立AMP物理链路。一旦创建了AMP物理链路,就可以建立一个或多个AMP-U逻辑链路来传输L2CAP用户数据。

       在从端设备主动连接到微微网的期间,从设备和主设备之间始终存在默认的ACL逻辑传输。删除默认ACL逻辑传输(ACL logical transport)的惟一方法是从piconet物理通道中分离设备,此时将删除设备之间的整个层次结构,包括L2CAP通道、逻辑链接和逻辑传输。

1.4、保持模式(Hold Mode)

       保持模式不是一般的设备模式,但适用于物理链路上的未保留槽(unreserved slots)。在这种模式下,物理链路仅在为同步链路类型SCO和eSCO的操作保留的槽(slots)中处于激活状态。所有异步链接都是不激活的。保持模式对每次调用操作一次,完成后退出,返回到以前的模式。

1.5、监听模式(Sniff Mode)

       监听模式不是通用的设备模式,但适用于默认的ACL逻辑传输。在这种模式下,这些逻辑传输的可用性将通过定义由存在(presence)和不存在(absence)的周期组成的占空比来修改。在监听模式下具有默认ACL逻辑传输的设备可以使用缺失的时间段在另一个物理通道上进行活动,或者进入低功耗模式。监听模式只影响默认的ACL逻辑传输(即它们共享的ACL逻辑传输),并不适用于任何可能处于活动状态的其他SCO或eSCO逻辑传输。在piconet物理通道上的物理连接的存在和缺失是由所有在物理连接上建立的逻辑传输的结合而产生的。

       监听子程序提供了一种机制来进一步减少有效的工作周期,从而提高监听模式的节能能力。监听子程序允许主机通过指定最大的传输和接收延迟来创建有保证的类访问连接。这允许基带优化低功耗性能,而无需使用Link Manager命令退出和重新进入监听模式。

       注意,广播逻辑传输没有明确的存在(presence)或缺席(absence)的预期。主设备的目标应该是将广播安排在piconet物理通道中物理链路出现的时间段,但这并不总是可行的。重复广播的定义是为了提高在不重叠存在(presence)时间的情况下到达多个从端设备的可能性。然而,广播逻辑传输不能被认为是可靠的。

1.6、角色转换过程(Role Switch Procedure)

       角色切换过程是一种用于交换piconet中连接的两个设备的角色的方法。该过程涉及从原主设备定义的物理通道移动到新主设备定义的物理通道。在从一个物理信道交换到下一个物理信道的过程中,移除并重建在BR / EDR控制器上的物理链路和逻辑传输的层次,除了由拓扑所隐含并且未被保留的ASB逻辑传输之外。注意角色切换过程不影响AMP物理通道。在角色切换之后,原piconet的物理通道可能会停止存在,或者如果原主设备有其他仍连接到该通道的从设备,则该物理通道可能会继续存在。

       该过程仅将默认ACL逻辑链接和支持层(supporting layers)复制到新的物理通道。此过程不复制任何其他逻辑传输,如果需要,必须由更高的层执行。

       任何受影响的传输的LT_ADDRs将在新的物理通道上重新分配,因此可能会发生更改。如果在原逻辑传输上有任何QoS承诺(QoS commitments),那么在角色切换之后就不会保留这些承诺。这些必须在角色转换完成后重新协商。

1.7、增强型数据传输速率(Enhanced Data Rate)

       增强数据速率是一种扩展蓝牙数据包容量和类型的方法,其目的是增加最大吞吐量,为多个连接提供更好的支持,并降低功耗,而架构的其余部分保持不变。

       可以选择增强的数据速率作为在每个逻辑传输上独立操作的模式。一旦启用,分组报头中的分组类型比特被解释为不同于它们在基本速率模式(Basic Rate mode)中的含义。该不同的解释与报头中的逻辑传输地址字段相结合。这个解释的结果使得数据包的有效载荷和有效载荷能够根据数据包的类型被接收和解调。只能为ACL和eSCO逻辑传输启用增强的数据速率,而不能为SCO和广播逻辑传输(broadcast logical transports)启用增强的数据速率。

1.8、无连接从属广播模式(Connectionless Slave Broadcast Mode)

       无连接从广播模式允许piconet主机使用BR/EDR改编的piconet物理通道将 profile broadcast data 传输到任意数量的连接从设备。要进入此模式,主端设备将特定的逻辑传输保留为专用CSB逻辑传输,并使用无连接的从广播物理链路和 synchronization train procedure 开始广播数据。定义了一个 profile broadcast data 逻辑链路,该链路使用无连接的从广播逻辑传输携带 profile broadcast data 。profile broadcast data 是无框架的,并绕过L2CAP。

       要接收无连接从广播数据包,设备必须连接已建立CSB逻辑传输的 Connectionless Slave Broadcast Transmitter 。为了连接,设备按照同步扫描(Synchronization Scan)过程获取物理链路的时间进度表,然后开始接收 the Connectionless Slave Broadcast packets.。连接后,Connectionless Slave Broadcast receivers 可以接收专用CSB逻辑传输和PBD逻辑链路上的profile broadcast data。

猜你喜欢

转载自blog.csdn.net/weixin_44216065/article/details/86424983
EDR