[蓝牙核心规范5.3][Vol 1][Part A 架构]3 数据传输架构

蓝牙文档官网:
https://www.bluetooth.com/specifications/specs/
蓝牙核心规范5.3:
https://download.csdn.net/download/u012906122/74651266

蓝牙数据传输系统分层如下:

 图 3.1:蓝牙通用数据传输架构
由于效率和历史原因,逻辑层被分为逻辑链路层和逻辑传输层。逻辑链路层提供了设备间独立的传输。逻辑传输层描述了逻辑链路之间的相互依赖性。
ACL,SCO和eSCO连接被认为是逻辑传输。

3.1 核心传输成员

蓝牙核心系统有很多传输成员。为了方便显示,下图中左边是较高层次,右边是较低层次。

 图 3.2:蓝牙传输成员
上图中灰色长方形框是核心传输成员。图中左边显示了很多传输类型。例如,视频数据属于固定码率用户数据。
逻辑链路由相关的逻辑传输名和传输的数据类型后缀这两个一起命名(ACL-U,U表示UserData)。C是对于携带LMP或LL信息的控制链路,U是对于携带用户数据的L2CAP链路,S是对于携带非帧同步或异步数据的数据流链路。

3.1.1 帧数据传输

L2CAP层对于异步和同步的用户数据提供了面向帧的传输。
两个蓝牙设备之间的面向连接的L2CAP通道可能因为单播(点对点)数据的传输而创建。
一个无连接的BR/EDR L2CAP通道因为广播数据或单播数据的传输而存在。在微网拓扑下,中心设备总是广播数据的发起者而外围设备是接收者。在无连接L2CAP通道上广播传输是无方向的。在无连接L2CAP通道上单薄数据可能是无方向的或双向的。

3.1.2 非帧数据传输

如果应用不要求使用帧数据传输,可能是因为数据包含流,这时要避免使用L2CAP通道,要直接使用基带逻辑链路。
蓝牙核心系统支持同步和固定码率的应用数据传输,使用SC0-S或eSCO-S逻辑链路。
蓝牙核心系统也支持使用配置广播数据(PBD)的应用数据传输。
LE系统不支持非帧数据传输。

3.2 传输架构实体

 图 3.3:传输架构实体和层次图
BR/EDR物理传输使用BR/EDR通用包结构。LE物理传输使用LE通用包结构。

3.2.1 BR/EDR通用包结构

 图 3.4 BR/EDR包结构
所有的包都有通道接入码。它用来标志一个特定的物理通道的通信,回排除忽略掉其他物理通道的包。
大多数BR/EDR包有包头部。包头部携带LT_ADDR信息,该信息被接收设备接收以确定包是否寻址到设备。

3.2.2 LE通用包结构

LE无线操作基于3个PHY和两个调制方案。表3.1总结了每个LE PHY的属性。每个包使用单个PHY传输。每个PHY使用一个单独的调制方案。两个PHY是无编码的。有两种编码方案:S=8和S=2。

 表 3.1:PHY,调制方案和编码方案的总结
LE未编码PHY的包结构如图 3.5:

 图3.5 LE未编码PHY的包结构
LE编码PHY的包结构如图 3.6:

 图3.6 LE编码PHY的包结构
当使用LE编码PHY时,推荐考虑以下三者的影响:无线电广播时间的能源消耗,占空比和空中共存时间。如LE编码PHY S=8和LE 1M,无线电广播时间和占空比相同情况下,LE编码的包空中共存时间约为LE 1M的8倍。
表3.2显示了不同AdvData包大小下广播事件的广播时间。中间是使用主要广播物理通道的数据。右边是使用次要广播物理通道的数据。

 表3.2 对于不同广播事件的广播时间

3.3 物理通道

蓝牙物理通道通常以物理频率为特征分类。

3.3.1 BR/EDR物理通道

在BR/EDR核心系统中,对端设备使用一个共享的物理通道通信。为了完成这个,他们的接收者需要同时调成同样的物理频率,且需要在一个合适的范围内。
如下定义了几个BR/EDR物理通道。每个有不同的作用。其中,基本微网通道和适配微网通道是与微网有关的,用来已连接设备间的通信。其他BR/EDR物理通道用来发现和连接蓝牙设备。同步扫描物理通道用来获取无连接外围广播物理链路的时间和频率信息。
同一时刻,一个蓝牙设备智能使用一个BR/EDR物理通道。为了支持多个并行操作,设备使用通道间时分复用的方式。
当一个蓝牙设备同步了一个物理通道的时间,频率和接入码时,它被称为已连接到该通道。

3.3.1.1 基本微网通道

3.3.1.1.1 概述

基本微网通道负责已连接设备间正常操作的通信。

3.3.1.1.2 特点

基本微网通道以伪随机序列为特征,该序列在PHY通道中跳跃。对于微网来说,跳跃序列是唯一的,由中心设备的蓝牙设备地址决定。跳跃序列的相位由中心设备的蓝牙时钟决定。所有微网中的蓝牙设备时间和跳跃同步于通道。
通道被分为多个时间槽,每个槽对应一个PHY跳频。连续跳跃意味着不同的PHY跳频。时间槽以微网的蓝牙时钟排序。
在基本微网通道,中心设备控制着通道的接入。中心设备只在偶数时间槽里开始它的传输。中心设备传输的包可能根据包类型占据5倍的时间槽。

3.3.1.1.3 拓扑

一个基本微网通道可以被任意多个蓝牙设备共享,只被微网中中心设备的可用资源限制。只有一个设备是中心设备,所有其他设备是外围设备。所有的通信是在中心设备和外围设备之间。在微网通道中外围设备之间没有直接的通信。

3.3.1.1.4 支持的层

基本微网通道支持多个物理链路,逻辑传输,逻辑链路和L2CAP通道。

3.3.1.2 适配微网通道

3.3.1.2.1 概述

适配微网通道和基本微网通道不同在两点。一:外围设备传输的频率和中心设备的频率相同。二:适配微网通道可能基于少于79个频率。
拓扑和支持的层和基本微网通道几乎相同,只有一点不同:适配微网通道,对于一个中心设备可以通过使用CPB逻辑传输传输数据到无线数量的外围设备。这种情况下,数据只能从中心设备传输到外围设备。

3.3.1.3 查询扫描通道

3.3.1.3.1 概述

查询扫描通道用来发现设备。一个可被发现设备会在它的查询扫描通道监听查询请求,并对请求响应。为了让一个设备发现其他设备,他以伪随机的方式跳跃所有可能的查询扫描通道频率,在每个频率上发送一个查询请求并监听任何响应。

3.3.1.3.2 特点

查询扫描通道遵循一个较慢的跳频模式。
查询扫描通道使用的接入码来自一组由所有蓝牙设备共享的保留的查询接入码。一个接入码用来通用的请求,其他很多接入码保留用来限制的请求。每个设备接入很多不同的查询扫描通道。因为所有这些通道共享一个相同的跳频模式,一个设备可能同时占有超过一个查询扫描通道。
一个使用了它的查询扫描通道之一的设备会在这个通道上保持被动,直到它从其他蓝牙设备的这个通道中接收到了一个查询消息。这是由合适的查询接入码决定的。这个查询扫描设备会遵循查询响应步骤,返回一个响应信息给到查询设备。
为了搜索到其他蓝牙设备,设备会使用查询扫描通道发送查询请求。查询扫描通道有较少的跳频点和较慢的跳频码率。查询设备在每个查询扫描跳频上传输查询请求并监听查询响应。数据传输在一个更快的码率下完成,允许查询设备覆盖所有的查询扫描频率在一个合理的短时间内。

3.3.1.3.3 拓扑

传输过程中形成的拓扑是简单并即时的点对点连接。

3.3.1.4 页扫描通道

3.3.1.4.1 概述

一个可连接的设备(即准备接收连接的设备)使用也扫描通道。一个可被发现设备会在它的页扫描通道监听页请求,并对请求响应。为了让一个设备发现其他设备,他以伪随机的方式跳跃所有可能的页扫描通道频率,在每个频率上发送一个查询请求并监听任何响应。

3.3.1.4.2 特点

页扫描通道使用源自扫描设备的蓝牙设备地址的接入码来确定通道上的通信。相对于基本和适配微网通道页扫描方案使用较低的跳频率。跳频选择算法使用扫描设备的蓝牙设备时钟作为输入。
一个使用它的页扫描通道的设备保持无响应直到它从其他的蓝牙设备中收到了一个页请求。这是由页扫描通道接入码控制的。这两个设备将会遵循页步骤形成一个连接。
如果页扫描设备不知道目标设备的页扫描通道的相位,即不知道目标设备的当前跳频。这时,页扫描设备会在每个页扫描跳频发送页请求,并监听页响应。这将以较快的跳频完成,允许页扫描设备覆盖所有的页扫描频率在一个合理的时间范围内。

3.3.1.4.3 拓扑

传输过程中形成的拓扑是简单并即时的点对点连接。

3.3.1.5 同步扫描通道

3.3.1.5.1 概述

为了接收来自CPB逻辑传输的包,一个设备必须首先获得这些包的时间和频率通道信息。同步扫描通道用来恢复当前微网时钟。

3.3.1.5.2 特点

同步扫描通道使用源自扫描设备的蓝牙设备地址的接入码来同步传输。一旦收到了一个同步包,扫描BR/EDR控制器将会接收CPB逻辑传输的包。

3.3.1.5.3 拓扑

扫描形成的拓扑时暂时的且点对多点的。可以有不限制数量的扫描设备同步接收来自相同同步传输的同步包。

3.3.1.5.4 支持的层

从同步传输设备到扫描设备是一个单向的包传输过程。这一过程中包含暂时的物理链路层。不支持其他的层。

3.3.2 LE物理通道

在LE核心系统中,两个蓝牙设备使用共享的物理通道通信。为此,它们的收发器需要在同一时间调制相同的物理频率,且它们之间需要在一定的频率范围内。
因为物理通道个数的限制,很多蓝牙设备可以相互独立地工作在相同的时空区域,有很大可能两对独立的蓝牙设备会将它们的收发器调制为相同的物理通道,导致冲突。BR/EDR使用一个接入码来标识微网,LE是使用随机生成的接入地址来标识设备间的一个物理通道。
共有4个LE物理通道。每个用来不同的目的。LE微网物理通道用来在已连接的微网中通信,且与一个特别的微网有关。LE广播物理通道用来向LE设备广播包。这些广播包用来发现,连接,或发送用户数据到扫描器或发起设备。周期性物理通道用来以固定时间间隔发送用户数据到扫描设备。LE同步物理通道用来在LE微网里传输同步数据。一个LE设备只能使用这些LE物理通道之一。
LE微网物理通道和LE广播通道的包可以包含一个常量调扩展,用来测向。

3.3.2.1 LE微网物理通道

3.3.2.1.1 概述
用来已连接LE设备间的通信。
3.3.2.1.2 特点
LE微网物理通道有如下特点:接入地址,物理通道的伪随机序列和3个由中心设备提供的额外的参数。
3.3.2.1.3 拓扑
一个LE微网物理通道被两个LE设备共享。
一个LE设备同一时间可能属于一个或多个微网,一个LE设备可能是外围设备或中心设备。
在两个LE设备间只有一个LE微网物理通道存在。
3.3.2.1.4 支持的层
支持L2CAP通道。

3.3.2.2 广播物理通道

3.3.2.2.1 概述
LE广播物理通道用来在两个设备之间建立连接,或在未连接的设备间通信广播信息。
3.3.2.2.2 特点
有两个LE广播物理通道:主要广播物理通道和次要广播物理通道。
主要广播物理通道是一套3个固定物理层通道。可以使用LE 1M或LE Coded PHY。
次要广播物理通道是一套37个固定物理层通道。在次要广播物理通道的广播包不是广播事件的一部分,而是扩展广播事件的一部分。
3.3.2.2.3 拓扑
一个LE广播物理通道可以被任意多个LE设备共享。当共享广播物理通道时任意多个LE设备可以传输广播包。任意多个扫描设备可以监听在广播物理通道上。

3.3.2.3 周期物理通道

3.3.2.3.1 概述
一个LE周期广播物理通道用来在未连接设备间建立周期广播。
3.3.2.3.2 特点
周期物理通道有如下特点:物理通道的伪随机序列和广播者提供的额外参数。

3.3.2.4 LE同步物理通道

3.3.2.4.1 概述
LE同步物理通道用来在已连接和无连接的LE设备间传输同步数据。
3.3.2.4.2 特点
LE同步物理通道有如下特点:物理通道的伪随机序列和一个中心设备或无连接广播者提供的3个额外参数。

3.4 物理链路

一个物理链路表示蓝牙设备之间的一个基带连接。一个物理链路总是与一个物理通路关联。在蓝牙系统中,一个物理链路是一个虚拟概念。

3.4.1 被基本和适配微网物理通道支持的BR/EDR链路

基本微网物理通道支持一个活动的物理链路。适配微网物理通道支持几个物理链路,包含活动的和无连接外围广播的。一个在中心设备和外围设备之间的活动的物理链路是一个点对点的链路。一个无连接外围广播的物理链路是中心设备和外围设备之间的点对多点的链路。

3.4.1.1 活动物理链路

如果一个默认的ACL逻辑传输存在于设备间,我们就说一个中心设备和一个外围设备之间的物理链路是活跃的。
活动物理链路具有在每个方向上的无线电发射功率的相关特性。

3.4.1.3 无连接的外围设备广播物理链路

3.4.2 被扫描物理通道支持的BR/EDR链路

在查询扫描和页面扫描通道的情况下,物理链路所存在的时间相对较短,不能以任何方式进行控制或修改。

3.4.3 被LE物理通道支持的LE链路

LE微网物理通道支持一个LE活跃物理链路。物理链路是中心设备和外围设备之间的点对点链路。中心设备和外围设备处于一个连接内时该链路总是存在。
LE广播物理通道支持一个LE广播物理链路。物理链路是广播者和多个扫描者之间的广播。当广播者在发送广播时该链路总是存在。
LE周期物理通道支持一个LE周期物理链路。 物理链路是广播者和多个扫描者之间的广播。当广播者在发送周期性广播时该链路总是存在。
LE同步物理通道支持一个LE同步物理链路。一个LE同步物理链路可以是中心设备和外围设备之间点对点链路或广播发送者和多个接收者之间的无连接链路。
3.4.3.1 活动物理链路
3.4.3.2 广播物理链路
3.4.3.3 周期物理链路
3.4.3.4 同步物理链路

3.5 逻辑链路和逻辑传输

每个逻辑链路关联一个逻辑传输。逻辑传输有如下特点:流控,认证/重传机制,排序。逻辑传输可以承载不同类型的逻辑链路。表3.4列出了所有的逻辑传输类型,支持的逻辑链路类型,对应的物理链路和物理通道,以及一个简单的描述。

 

 表3.4 逻辑传输类型
每个链路类型的分类遵循以下3个范畴。

3.5.1 投射

第一个范畴是投射。分为单播和多播情况。
单播链路存在两个节点间。数据传输可以在单播链路的任意方向。
多播链路存在一个源设备和多个接收设备之间。数据传输是单向的,只能由源设备传到接收设备。广播链路是无连接的,意味着无需创建这些链路,数据可以在任意时间发送。广播链路不可靠,不能保证数据包被接收。

3.5.2 调度和认证方案

第二个范畴是链路的调度和认证方案,暗示了链路支持的传输类型。这些类型包含同步的,等时的或异步的。没有定义特定的等时链路,虽然默认的ACL链路嫩被配置成这个方式。

3.5.3 数据类别

最后一个范畴是链路携带的数据类别。分为控制数据或用户数据。用户数据分为L2CAP数据,流数据和周期广播数据。
控制链路只是用来传输两个控制器间LMP或链路层信息。
L2CAP链路用来传输L2CAP PDUs。
流链路用来传输用户数据。
周期广播数据以等时间间隔传输。

3.5.4 逻辑传输

3.5.4.1 BR/EDR异步的面向连接的(ACL)

异步的面向连接的(ACL)逻辑传输用来携带LMP和L2CAP控制信号和异步用户数据。每个微网内活动的外围设备和中心设备之间有一个ACL逻辑传输,称为默认ACL。
默认ACL是在中心设备和外围设备之间创建的,当一个设备加入微网(连接到基本微网物理通道)时。默认ACL和一个微网中心设备的逻辑传输地址(LT_ADDR)相关联。当需要时,LT_ADDR用来确定活动物理链路。

3.5.4.2 BR/EDR同步的面向连接的(SCO)

同步的面向连接的逻辑传输是中心设备和外围设备之间对称的,点对点的传输。SCO逻辑通道携带了同步于微网时钟的64kb/s的信息。典型场景是信息会编码为音频流。存在3个不同的SCO配置参数,提供了鲁棒性,延迟和带宽消耗之间的平衡。

3.5.4.3 BR/EDR扩展的同步的面向连接的(eSCO)

扩展的同步的面向连接的逻辑传输是中心设备和外围设备之间对称的或非对称的,点对点的传输。

3.5.4.4 BR/EDR活动外围广播(APB)

活动外围广播逻辑传输用来向微网中连接到物理通道的所有设备传输LMP控制信号和无线L2CAP用户数据。
APB通道不会携带L2CAP控制信号。

3.5.4.6 LE异步连接(LE ACL)

LE异步连接逻辑传输用来携带LL和L2CAP控制信号和异步用户数据。每个微网内活动的外围设备和中心设备之间有一个LE ACL逻辑传输,称为默认LE ACL。

3.5.4.7 LE广播(ADVB)

LE广播逻辑传输用来传输广播控制和用户数据到给定区域的所有扫描设备。LE广播逻辑传输数据只被携带在LE广播链路上。

3.5.4.8 无连接的外围广播(CPB)

无连接的外围广播逻辑传输用来传输配置广播数据到所有已连接到无连接外围广播逻辑传输的设备。

3.5.4.9 LE周期广播(PADVB)

LE周期广播逻辑传输用来传输周期广播控制和用户数据到给定区域的所有扫描设备。

3.5.4.10 连接的等时流(CIS)

CIS是在中心设备和外围设备之间的数据对称的或数据非对称的,点对点的逻辑传输。

3.5.4.11 连接的等时组(CIG)

每个CIS是一个CIG的一部分。

3.5.4.12 广播等时流(BIS)

广播等时流逻辑传输用来传输一个或多个等时数据流。

3.5.4.13 广播等时组(BIG)

每个BIS是一个BIG的一部分。

3.5.5 逻辑链路

3.5.5.1 BR/EDR逻辑链路

3.5.5.1.1 ACL控制逻辑链路(ACL-C和APB-C)
用来携带微网中设备间的BR/EDR LMP信号。
3.5.5.1.2 用户异步/等时逻辑链路(ACL-U and APB-U)
用来携带所有异步和等时的帧用户数据。
3.5.5.1.3 用户同步/扩展同步逻辑链路(SCO-S/eSCO-S)
用来支持无帧格式流中的等时数据传输。
3.5.5.1.4 配置广播数据逻辑链路
用来广播等时无帧数据到多个接收者,用在CPB逻辑传输。

3.5.5.2 LE逻辑链路

3.5.5.2.1 控制逻辑链路(LE-C)
LE-C用来携带微网中两个设备间的LE LL信号。控制链路只负载到默认的LE ACL逻辑传输上。
3.5.5.2.2 用户异步逻辑链路(LE-U)
LE-U用来负载所有的异步帧格式用户数据。
3.5.5.2.3 广播控制逻辑链路(ADVB-C)
ADVB-C用来携带未连接设备间的LE LL信号。
3.5.5.2.4 广播用户数据逻辑链路(ADVB-U)
ADVB-U用来携带LE广播和LE周期广播用户数据。
3.5.5.2.5 低功耗流(LE-S)
LE-S用来携带非帧格式等时数据包。
3.5.5.2.6 低功耗帧(LE-F)
LE-F用来携带帧格式等时数据包。
3.5.5.2.7 低功耗广播控制(LEB-C)
LEB-C用于BIS逻辑传输以携带控制信息。

3.6 L2CAP通道

L2CAP提供了一个多路复用角色,允许多个不同的应用共享ACL-U,APB-U或LE-U逻辑链路。使用L2CAP接口的应用和服务协议使用面向通道的接口建立连接。

3.8 功率控制

功率控制提供了一种机制,请求远端设备调整基于本地信号质量信息调整他的发送功率等级。这种机制在BR/EDR活动物理链路和LE活动物理链路上支持。

3.8.1 BR/EDR功率控制

两个电源控制机制可用(legacy and enhanced power control)。

3.8.2 LE功率控制

在LE中,设备可以请求远程设备在给定的PHY上对远程设备的功率电平进行指定的更改。这允许更快地过渡到所需的功率水平。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值