蓝牙核心规范(V5.2)3.2-深入详解之数据传输架构
目录
1.1.2 BR/EDR L2CAP通道相中的数据帧数据传输
2.2.1 不包含常音扩展的各种数据物理信道数据包的广播时间
1.核心传输承载
上图中逻辑链接使用关联逻辑传输的名称和指定传输数据类型的后缀命名:
C后缀:携带LMP或LL消息的链接。
U后缀:承载用户数据的L2CAP链接(L2CAP PDU)
S后缀:携带未格式化的同步或等时数据的流链路。
通常会从逻辑链接中删除后缀,而不会引入歧义,因此,可以将对默认ACL逻辑传输的引用解析为讨论LMP协议时的ACL-C逻辑链接,讨论LL协议时的LE-C逻辑链接,讨论PAL协议时的AMP-C逻辑链接,或讨论L2CAP层时的ACL-U、LE-U或AMP-U逻辑链接。
图2中的应用程序流量类型到蓝牙核心流量承载的映射是基于流量特征与承载特征的匹配。建议使用这些映射,因为它们提供了传输具有给定特性的最自然和有效的方法。
然而,一个应用程序(或蓝牙核心系统的实现)可以选择使用一个不同的流量承载,或一个不同的映射来实现类似的结果。例如,在只有一个从属服务器的BR/EDRpiconet中,主服务器可以选择通过ACL-U逻辑链路而不是通过ASB-U逻辑链路传输L2CAP广播。就带宽而言,这可能会更有效(如果物理信道质量没有太低)。只有在保留应用程序流量类型的特性时,才可以使用图2中这些路径的替代传输路径。
图3.2显示了许多应用程序流量类型。这些数据用于对可能提交给蓝牙核心系统的数据类型进行分类。如果介入进程修改,原始数据流量类型可能与提交给蓝牙核心系统的类型不同。例如,视频数据以恒定的速率生成,但中间编码过程可以将其改变为可变的速率,例如。通过MPEG4编码。就蓝牙核心系统而言,只关注提交的数据的特性。
1.1 帧数据传输
1.1.1 L2CAP层服务
L2CAP层服务为异步和等时用户数据提供了面向帧的传输。应用程序在中向此服务提交数据
可变大小的帧(通道的最大协商值)以及帧以相同的形式传递给服务器上的相应应用程序远程设备。
可以为单播传输创建面向连接的L2CAP信道两个蓝牙设备之间的(点对点)数据。面向连接
通道提供一个上下文,在该上下文中可以应用特定属性在通道上传输的数据。面向连接的L2CAP通道是使用L2CAP连接过程创建的。
1.1.2 BR/EDR L2CAP通道相中的数据帧数据传输
存在无连接BR/EDR L2CAP信道,用于广播数据或单播数据的传输。在微微网拓扑的情况下,主设备是广播数据源和从属设备始终是接收者。无连接L2CAP频道上的广播流量是单向的。在无连接L2CAP信道上发送的单播数据可以是单向、定向或双向的。在L2CAP无连接上发送的单播数据通道提供了另一种机制来发送具有相同级别数据的数据在基本模式下运行的L2CAP连接导向通道的可靠性但是没有打开面向L2CAP连接的通道所产生的额外延迟。不支持LE L2CAP无连接通道。
BR/EDRL2CAP通道有一个相关的QoS设置,它定义了对数据帧传输的约束。这些QoS设置可用于指示(例如)数据是等时的,因此可作用时间有限,之后它将无效,或者数据应该在给定的时间段内交付,或者数据是可靠的,应该无错误交付,无论这需要多长时间。
1.1.3 L2CAP通道和通道管理器
一些L2CAP通道是在建立ACL-U和/或LEU逻辑链路时创建的固定通道。这些固定的通道具有固定的通道标识符和固定的配置,在创建后不允许对配置进行协商。这些固定通道用于BR/EDR和LEL2CAP信令(ACL-U或LE-U)、无连接信道(ACLU和ASB-U)、AMP管理器协议(ACL-U)、安全管理器协议(LE-U)、属性协议(ACL-U或LE-U)和AMP测试管理器(ACL-U)。
L2CAP通道管理器的作用
负责安排在适当的基带逻辑链路上传输L2CAP链道数据帧,可能将其与具有类似特性的其他L2CAP链路复用到基带逻辑链路上。
1.2 非帧数据传输
1.2.1 SCO或eSCO逻辑链路
蓝牙核心系统支持应用程序数据的直接传输使用SCO-S或eSCO-S逻辑链路,是等时且恒定速率(比特率或预帧数据的帧速率)。这些逻辑链接保留物理通道带宽并提供恒定速率传输锁定到微网时钟。数据以固定大小的数据包以固定的间隔传输,在通道建立期间对这两个参数进行协商。eSCO链路提供了更多的比特率选择,也通过在出现错误时使用有限的重传输提供了更大的可靠性。eSCO支持增强的数据速率操作,不是为SCO逻辑传输。SCO和eSCO逻辑传输不支持多路逻辑链路或蓝牙核心内的任何进一步分层。应用程序可以选择在提交的SCO/eSCO流中分层多个流,只要提交的流是或其外观为恒定速率流。
1.2.2 配置文件广播数据逻辑链路
蓝牙核心系统还支持使用配置文件广播数据(PBD)逻辑链路直接传输应用程序数据。这个逻辑链路类似于SCO-S和eSCO-S,因为它保留了物理信道带宽,提供了锁定到微型时钟的恒定速率传输,并以固定的间隔传输数据。它不支持多路逻辑链路或蓝牙核心内的任何进一步分层,但与SCO-S和eSCO-S不同,它支持数据从单个发射器广播数据到许多接收器。
应用程序从基带上可用的逻辑链接中选择最合适的逻辑链接类型,并创建和配置它以传输数据流,并在完成后发布它。(该应用程序通常还将使用一帧化的L2CAP单播通道,将其c平面信息传输到远程设备上的对等应用程序。)
如果应用数据是等时的,且速率是可变的,则这可能只能由L2CAP单播通道携带,因此将被视为帧数据。
在LE系统中不支持无帧化的数据传输
1.3 可靠的传输承载
1.3.1 BR/EDR可靠性
数据包提供可靠性的措施:
基带数据包报头使用正向纠错(FEC)编码,允许接收器进行纠错,并通过报头错误检查(HEC)检测纠错后剩余的错误。某些基带数据包类型包括有效负载的FEC。此外,一些基带数据包类型包括循环冗余错误检查(CRC)。
ACL逻辑传输提供可靠性的措施:
在ACL逻辑传输上,使用错误检测算法的结果驱动一个简单的ARQ协议。这通过重新发送未通过接收器错误检查算法的数据包来提高可靠性。信息技术可以通过以下方式修改此方案以支持对延迟敏感的数据包:如果数据包的使用寿命已过期,在发送器处丢弃未成功传输的数据包。eSCO链接使用此链接的修改版本通过允许有限次数的重传来提高可靠性的方案。
ARQ方案的缺点:
ARQ方案所获得的可靠性仅与HEC和CRC代码检测错误的能力一样可靠。对于较长的数据包类型,未检测到的错误的概率太高,无法支持典型的应用程序,特别是那些传输大量数据的应用程序。
L2CAP层提供可靠性措施:
L2CAP层提供了一个额外的错误控制级别,其设计用于检测基带未检测到的偶尔的错误,并请求受影响数据的重新传输。这提供了典型的蓝牙应用程序所需的可靠性级别。
广播链路没有反馈路由,无法使用ARQ方案(尽管接收器仍然能够检测到接收到的数据包中的错误)。每个数据包被发送几次,希望接收者是正确的能够成功接收至少一份副本。尽管如此仍然无法保证成功接收,因此这些链接是无效的被认为是不可靠的。
总之,如果链路或信道是可靠的,这意味着接收器能够检测接收到的数据包中的错误并请求重传,直到错误被删除。由于使用了错误检测系统,一些残留(未检测到)的错误可能仍然保留在接收到的数据中。对于L2CAP信道,这些信道的级别与其他通信信道相当系统,尽管对于逻辑链路,剩余错误级别稍高。
发送器可以从发送队列中移除包,使接收器不接收该序列中的所有包。如果发生这种情况,检测到丢失的数据包将被委托给L2CAP层。
根据当前运行条件,流链路具有可靠链路之间的可靠性特性。
1.3.2 LE可靠性
提高LE可靠性的措施:LL数据包使用24位循环冗余错误检查(CRC)来覆盖数据包有效负载的内容。如果数据包有效负载上的CRC验证失败,则接收方不确认数据包,并且数据包由发送方重新传输。
广播链路没有反馈路由,并且无法使用确认方案(尽管接收器仍然能够检测到接收到的数据包中的错误)。相反,每个数据包被传输到增加接收器能够成功接收到至少一个副本的概率。尽管有这种方法,仍然不能保证成功的接收,因此这些链接被认为是不可靠的。
总之,如果链路或通道是可靠的,这意味着接收器能够检测接收到的数据包中的错误并请求重传,直到错误被删除。
在不可靠的链路上,接收器能够检测到接收到的数据包中的错误,但不能请求重传输。接收器传递的数据包可能没有错误,但不能保证序列中的所有数据包都被接收。因此,这种链接被认为从根本是不可靠的。这种链接的用途有限,这些用途通常依赖于有效的高层数据的持续重复。
1.3.3 AMP可靠性
每个AMP的可靠性取决于底层的MAC/PHY技术。一些AMP仅在标记为可刷新时刷新用户流量,而其他amp可以刷新用户流量。
蓝牙核心通过强制对AMP上使用的任何L2CAP通道使用增强的重传模式或流媒体模式,从而保持了核心以上的协议和概要文件的可靠性水平。
2.传输架构实体
BR/EDR物理传输封装了BR/EDR物理通道。使用BR/EDR物理传输的传输使用BR/EDR通用数据包结构。
LE物理传输封装了LE物理通道。使用LE物理传输的传输使用LE通用数据包结构。
2.1 BR/EDR 通用包结构
通道访问代码:
所有的数据包都包括通道访问代码。这用于识别特定物理信道上的通信,并排除或忽略不同物理信道上恰好使用相同的射频载波的数据包。
BR/EDR数据包结构中没有表示或的直接字段包含与物理链接相关的信息。此信息由数据包中携带的逻辑传输地址(LT_ADDR)的组合标头和通道访问代码(CAC)。
BR/EDR数据包头:
- 数据包报头总是存在于在支持物理链路、逻辑传输和逻辑链路的物理通道上传输的数据包中。该包头携带LT_ADDR,每个接收设备使用该LT_ADDR来确定该包是否被寻址到该设备,并用于在内部路由该包。
- 数据包报头还携带部分链路控制(LC)协议,该协议按逻辑传输操作(操作执行任意逻辑传输的共享LC协议的ACL和SCO传输除外)。
负载头:
有效负载报头存在于支持多个逻辑链接。有效负载报头包括逻辑链路标识符字段用于路由有效负载,以及指示有效负载长度的字段身体。一些数据包类型还包括数据包有效负载末尾的CRC
用于检测所接收数据包中的大多数错误的。当AES-CCM加密已启用,ACL数据包包括消息完整性检查(MIC)就在CRC之前。
负载体:
数据包有效负载主体用于传输用户数据。此数据的解释取决于逻辑传输和逻辑链接标识符。对于ACL逻辑传输,链路管理器协议(LMP)消息和L2CAP信号在数据包有效载荷体中传输,以及来自应用程序的一般用户数据。
2.2 LE通用包结构
表1中提到的“访问头”包括在PDU头开始之前与特定PHY相关联的包格式的所有位,但不包括前缀。前缀被排除在外,因为这是对所有phy未编码的。
表1中提到的“有效负载”包括从PDU报头到数据包末尾的数据包格式中的所有位。
在使用LE编码的PHY时,需要考虑无线电接通的用电时间和占空比对调度和空中共存的影响。当考虑到无线电接通时间和占空比时,使用S=8编码的LE编码PHY(125kb/s)是最坏的情况,即通过空中发送的每个数据包大约是LE1M的8倍。
2.2.1 各种广告活动的播出时间
注:未卸载的事件使用三个ADV_IND计算PDU,而卸载事件使用三个ADV_EXT_IND PDU仅包含AuxPtr和ADI字段加上一个AUX_ADV_IND PDU,带有AdvA和ADI字段显示并保存AdvA数据。
2.2.1 不包含常音扩展的各种数据物理信道数据包的广播时间
3.物理通道
3.1 BR/EDR 物理通道
在BR/EDR核心系统中,对等设备使用共享的物理通道进行通信。为了实现这一点,他们的收发器需要同时调谐到相同的PHY频率,并且它们需要在彼此的标称范围内。
鉴于射频载波的数量有限,并且许多蓝牙设备可能在同一时空区域内独立运行,因此,两个独立的蓝牙设备的收发器被调谐到相同的射频载波,从而导致物理信道碰撞。为了减轻这种碰撞的不良影响,物理通道上的每个传输都从一个访问代码开始,该代码被调谐到物理通道的设备用作相关代码。此通道访问代码是物理通道的一个属性。访问代码出现在每个传输数据包的开始处。
定义了几个BR/EDR物理通道。每一个都被优化并用于不同的目的。其中两个物理通道(基本的微极通道和适应的微极通道)用于连接设备之间的通信,并与特定的微极通道相关联。其他BR/EDR物理通道用于发现(查询扫描通道)和连接(页面扫描通道)蓝牙设备。同步扫描物理通道被设备用于获取关于无连接从广播物理链路的定时和频率信息,或恢复当前的微型时钟。
蓝牙设备在任何给定的时间都只能使用一个BR/EDR物理通道。为了支持多个并发操作,设备在通道之间使用时分多路复用。这样,蓝牙设备就可以了似乎在多个微微网中同时运行,并且可发现和可连接。
每当蓝牙设备与物理信道的时间、频率和访问代码同步时,它就被称为“连接”到该信道(无论它是否主动参与在该信道上的通信)。蓝牙规范假定一个设备在任何时候都只能连接到一个物理通道。高级设备可能能够同时连接到多个物理通道,但该规范并不假定这是可能的。
3.1.1 基本微网通道
基本的微型网络通道用于正常运行时连接设备之间的通信。
3.1.1 .1 特点
基本的微型网络通道特征是通过PHY通道跳跃的伪随机序列。跳变序列对于微型网络是唯一的,并由主机的蓝牙设备地址决定。跳变序列中的相位由主机的蓝牙时钟决定。有参与微网集的蓝牙设备都是按时间和跳数同步到通道的。
该通道被划分为时隙,其中每个插槽对应一个PHY跳频率。连续的跳数对应于不同的PHY跳数频率。时隙根据微型主机的蓝牙时钟进行编号。数据包由参与网络的蓝牙设备传输,从插槽边界开始。每个数据包以通道访问码开始,该码来自微网的主节点的蓝牙设备地址。
在基本微网信道上,主机控制对信道的访问。这个主机仅在偶数时隙中开始传输。小包主节点发送的数据与时隙起始点对齐,并定义脉冲时间。根据包类型,由主包传输的包最多可能占用5个时隙。
每个主传输都是携带其中一个逻辑传输上的信息的包。从设备可以在物理通道上传输作为响应。响应的特性由所处理的逻辑传输来定义。
例如,在异步面向连接的逻辑传输(ACL)上,寻址从设备通过发送包含同一逻辑传输信息的分组,该传输名义上与下一个(奇数))的插槽开始对齐。这样的数据包可能占用多达5个时隙,这取决于数据包的类型。在广播逻辑传输上,不允许从属服务器响应。
3.1.1.2 拓扑结构
一个基本的主通道可以由任何数量的蓝牙设备共享,仅受主主设备上可用资源的限制。只有一个设备是主设备,其他的都是从设备。所有的通信都在主设备和从设备之间。微型网络通道上的从属设备之间没有直接通信。
但是,在微网可以支持的逻辑传输的数量存在限制。这意味着,尽管理论上对共享通道的蓝牙设备的数量没有限制,但这些可以主动参与与主服务器交换数据的设备的数量限制。
3.1.1.3 微型网络支持哪些层?
基本的微型网络通道支持许多用于通用通信的物理链路、逻辑传输、逻辑链路和L2CAP通道。
3.1.2 自适应微网通道
自适应微网信道与基本微微网信道有两个不同之处方式:
首先,从机传输的频率与其主服务器在上一次传输中使用的频率相同。换句话说,在主数据包和随后的从数据包之间不会重新计算频率。
第二,所适应的微网通道可能基于少于完整的79个频率。许多频率可以通过被标记为“未使用的”而被排除在跳变模式之外。其余的79个频率也包括在内。这两个序列是相同的,除了当基本的伪随机跳变序列选择一个未使用的频率时,它将被替换为从所使用的集合中选择的另一个频率。所使用的一组频率可能在同一适应的微网通道上的不同物理链路之间发生变化。
由于适应的微网通道使用与基本通道相同的时间和访问代码,两个通道上的物理链接通常是一致的。它允许基本的图片通道或适应的微型通道中的从调整它们到主的同步。
所适应的微型物理通道的拓扑结构和支持层与基本的微型物理通道相同,只有一个例外:在适应的微网物理通道上,单个主服务器可以传输数据使用单个CSB逻辑传输到无限数量的从服务器。然而,在这种情况下,数据只从主传输到从,而不是从从转移到主。
3.1.3 查询扫描通道
为了发现一个设备,我们使用了一个查询扫描通道。可发现的设备在其查询扫描通道上监听查询请求,然后对该请求发送响应。为了使设备发现其他设备,它以伪随机的方式迭代(跳跃)所有可能的查询扫描通道频率,对每个频率发送查询请求,并侦听任何响应。
3.1.3.1 特点
查询扫描通道遵循较慢的跳变模式,并使用访问代码来区分使用不同物理通道的两个共定位设备偶尔占用相同的无线电频率。
在查询扫描通道上使用的访问代码取自一组由所有蓝牙设备共享的保留的查询访问代码。一个访问代码用于一般查询,并且一些额外的访问代码被保留用于有限的查询。每个设备都可以访问许多不同的查询扫描通道。由于所有这些信道共享相同的跳变模式,如果设备能够同时关联多个访问代码,则可以同时占用多个查询扫描信道。
使用查询扫描通道的设备在该通道上保持被动直到它从另一个频道接收到此频道的查询消息
蓝牙设备。这由相应的查询访问代码标识。这个然后,查询扫描设备将按照查询响应程序向查询设备返回响应。
为了让一个设备发现其他蓝牙设备,它使用查询扫描通道来发送查询请求。由于它没有要发现的设备,它不能知道查询扫描通道的确切特征。
该设备利用了查询扫描通道的跳频数减少,跳频率较慢的事实。查询设备对每个查询扫描跳点频率发送查询请求,并侦听查询响应。传输以更快的速度完成,允许查询设备在相当短的时间内覆盖所有查询扫描频率。
3.1.3.2 拓扑结构
查询和可发现的设备使用一个简单的数据包交换来完成查询功能。在此事务过程中形成的拓扑结构是一个简单而短暂的点对点连接。
3.1.3.3 支持层
在查询和可发现设备之间交换数据包时,可以认为这些设备之间存在临时的物理链接。然而,这个概念是相当不相关的,因为它没有物理表示,而只是在设备之间的简短事务中暗示。不认为需要支持进一步的架构层。
3.1.4 页面扫描通道
可连接的设备(准备接受连接的设备)使用页面扫描通道。可连接的设备监听其页面扫描通道上的页面请求,一旦接收到,将与该设备进行一系列交换。为了使一个设备连接到另一个设备,它以伪随机的方式迭代(跳跃)通过所有的页面扫描通道频率,对每个频率发送一个页面请求,并侦听一个响应。
3.1.4.1 特点
页面扫描通道使用从扫描派生的访问代码设备的蓝牙设备地址,用于识别通道上的通信。页面扫描通道使用的跳转速率低于页面的跳转速率基本和适配微网信道。跳选择算法使用作为输入的扫描设备的蓝牙设备时钟。
使用其页面扫描通道的设备将保持被动,直到收到来自另一个蓝牙设备的页面请求。这是由页面扫描通道访问代码标识的。然后,这两个设备将按照页面步骤形成连接。在成功完成页面过程后,两个设备切换到基本的图片网通道,其特征是将寻页设备作为主通道。
为了使一个设备连接到另一个蓝牙设备,它使用目标设备的页面扫描通道来发送页面请求。如果寻呼设备不知道目标设备的页面扫描通道的相位,因此它不知道目标设备的当前跳点频率。分页设备对每个页面扫描跳点频率发送页面请求,并侦听页面响应。这是以更快的跳跃速度完成的,
寻呼设备可以了解目标设备的蓝牙时钟(在两个设备之间的先前查询事务期间指示,或由于先前与设备参与微网的结果),在这种情况下,它能够预测目标设备的页面扫描通道的阶段。它可以使用此信息来优化分页和页面扫描过程的同步,并加快连接的形成。
3.1.4.2 拓扑结构
分页和可连接的设备使用简单的数据包交换来完成分页功能。在此事务过程中形成的拓扑结构是一个简单而短暂的点对点连接。
3.1.4.3 支持层
在分页和可连接设备之间的数据包交换时,可以认为这些设备之间存在临时的物理链路。然而,这个概念是相当不相关的,因为它没有物理表示,而只是在设备之间的简短事务中暗示。不认为需要支持进一步的架构层。
3.1.5 同步扫描通道
为了接收在CSB逻辑传输上发送的数据包,设备必须首先获取关于这些数据包的定时和频率信道的信息。如果设备错过了粗时钟调整通知,它需要恢复当前的小时钟。为这些目的提供了同步扫描通道。扫描设备监听同步扫描通道上的同步列车数据包。一旦接收到同步列车包,该设备可能会停止监听同步列车包,因为它具有开始接收在CSB逻辑传输上发送的包或恢复微型卫星时钟所需的定时和频率信息。
3.2 LE物理通道
在LE核心系统中,两个蓝牙设备使用一个共享的物理通道进行通信。为了实现这一点,它们的收发器需要同时调谐到相同的PHY频率,并且它们需要在彼此的标称范围内。考虑到它的数量。
由于PHY通道的数量有限,许多蓝牙设备可以在相同的时空区域内独立运行,两对独立的蓝牙设备很有可能将它们的收发器调谐到相同的PHY通道,从而导致碰撞。与BR/EDR不同,一个访问代码被用来识别图片,LE使用一个随机生成的访问地址来识别设备之间的物理通道。与BR/EDR不同,一个访问代码被用来识别微网,LE使用一个随机生成的访问地址来识别设备之间的物理通道。
如果两个设备碰巧在同一区域中共享相同的PHY通道,则目标设备访问地址被用作相关器,以确定通信被定向到哪个设备。
LE四个物理通道工作任务:
- LE微网物理通道用于连接设备之间的通信,并与特定的微网相关联。
- LE广告物理频道用于向LE设备广播广告。这些广告可用于发现、连接或将用户数据发送到扫描仪或启动器设备。
- LE周期物理通道用于以指定的间隔定期广告向扫描器发送用户数据的设备。
- LE等时物理通道用于在LEPiconet中的LE设备之间传输等时数据,或在未连接的LE设备之间传输等时数据。
LE如何实现多并发?
LE设备在任何给定时间只能使用这些LE物理通道中的一个时间为了支持多个并发操作,设备在通道之间使用时分多路复用。通过这种方式,蓝牙设备可以支持连接的设备,同时发送广告广播。
每当LE设备同步到物理信道的定时和频率时,它就被称为连接或同步到该信道(无论它是否主动参与该信道上的通信)。
LE微网物理频道和LE广告广播频道上的数据包都可以包含一个恒定的音调扩展,可用于查找方向。
3.2.1 LE微网物理通道
LE微网物理通道在正常运行时用于已连接的LE设备之间的通信。
3.2.1.1 特点
LE微网物理通道的特征是PHY通道的伪随机序列和主通道提供的三个附加参数:
第一个是通道映射,它指示在映射中使用的PHY通道集。
第二个是一个伪随机数,用作完整的PHY通道集的索引。
第三个是在连接请求之后由主机发送的第一数据包的时间。
该通道分为连接事件,其中每个连接事件对应于一个PHY跳跃通道。连续的连接事件对应于不同的PHY跳跃通道。在连接建立之后,主服务器发送的第一个数据包为所有未来连接事件的时间设置了一个锚点。在连接事件中,主端将数据包发送给微网的从端,并且从端可以用它自己的数据包做出响应。
在LE微型网物理通道上,主通道控制对该通道的访问。主服务器在定期发生的连接事件中启动其传输。主机传输的数据包与连接事件开始对齐,并定义脉冲时间。
每个主传输包含一个携带其中一个逻辑传输上的信息的包。从设备可以在物理通道上传输作为响应。
LE的物理通道类似于BR/EDR适应的物理通道,因为所使用的PHY通道集可以进行修改以避免干扰。通道映射中使用的通道集由主机在连接设置期间建立。而在连接中,主服务器可以在必要时更改通道映射,以避免新的干扰。
3.2.1.2 拓扑
LE微网物理通道可以由任何数量的LE设备共享,但仅微网内主设备上可用资源的限制。只有一个设备是主;其他的都是从。所有的通信都在主设备和从设备之间。微型网络通道上的从属设备之间没有直接通信。
在微网内可以支持的逻辑传输的数量几乎没有限制。这意味着对与主机共享通道的蓝牙设备的数量没有理论限制。
在两个LE设备标识或不可解析的专用地址之间只能存在一个LE微网物理通道。
3.2.1.3 支持层
LE微网物理通道支持用于通用通信的L2CAP通道。
3.2.2 广播物理通道
LE广告物理信道用于建立两个设备之间的连接或在未连接的设备之间通信广播信息。
3.2.2.1 特点
有两个LE广播物理通道:主广播物理频道和辅助广播物理频道。
主广播物理信道是一组在LE频谱上均匀分布的三个固定PHY频道。该广播设备可以减少主要广播PHY频道的数量,以减少干扰。主广播物理频道可以使用LE1M或LE编码的PHY。
在主广播物理通道上,广播设备控制对该物理通道的访问。广播设备在广播事件中开始传输,并在一个或多个主要广告PHY频道上传输广告包。每个广告包以固定的时间间隔在不同的广告PHY频道上发送。可以使用七种类型的广告事件,每种广告事件类型具有不同大小的广告包。这些广告数据包的PDU有效负载的长度可以从6到37八进位不等。
辅广播物理通道是一组横跨LE频谱的37个固定的PHY通道。这些是数据物理通道使用的固定LE PHY通道。辅广播物理通道使用与数据物理通道相同的通道索引。辅广播物理频道上使用的广告包的有效载荷长度从0到255八字制不等。辅广播物理频道上的广告包不是广告活动的一部分,而是扩展广告活动的一部分。这些扩展的广告事件与主要广告物理频道上的广播事件同时开始,并以次要广播物理频道上的最后一个数据包结束。
辅广播物理通道用于卸载否则将在主广告物理通道上传输的数据。当有足够的无线时间可用时,辅广告物理频道上的广告数据包(“辅助数据包”)将由广播设备安排。主广告物理通道上的广告包包含PHY通道和对辅助包的开始时间的偏移量。
辅广告物理频道可以使用任何LE PHY。在同一扩展广告事件中,辅广告物理频道上的所有广告包都使用相同的PHY,这是在主广告物理频道上的广告包中指定的。
3.2.2.2 拓扑
一个LE广告物理通道可以由任意数量的LE设备共享。任何数量的LE设备都可以在共享广告物理通道的同时传输广告数据包。任意数量的扫描设备都可以使用收听广告物理频道。广告设备可以同时进行广告,并在LE微网物理通道上连接。扫描设备也可以同时连接到一个或多个LE微网络物理通道。
3.2.3 周期性物理信道
LE周期物理信道用于设置未连接设备之间的定期广播。
3.2.3.1 特点
周期性物理通道的特征是PHY通道的伪随机序列和广播设备提供的附加参数。这些是指示周期广播中使用的PHY信道集的信道映射、用于确定信道跳变序列的事件计数器、指示第一周期广播包的时间的偏移量以及连续周期广播之间的间隔。
该频道分为周期性广告事件,其中周期性广告事件的开始对应于一个PHY跳频通道。连续的周期性广告事件的开始对应于不同的PHY跳频通道。在广播建立后,广播设备发送的第一个数据包为未来所有周期性的广告事件的时间设置了一个锚点。
在周期性的物理通广播传输的数据包与定期的广告事件和指定的广播时间对齐。广播设备发送的数据包的有效载荷长度从00到255不等。
每个广告设备传输都包含一个携带有关PADVB逻辑传输的信息的数据包。扫描设备无法在物理通道上进行传输。
有37个物理通道。广播设备可以通过指示已使用的通道映射来减少这个数字。当跳变模式到达未使用的通道时,未使用的通道被替换为已使用通道集的替代通道。周期性的物理通道可以使用任何PHY。所有的周期性广告事件都使用与广告商在描述周期性物理通道特征的数据包中使用的相同的PHY。
3.2.3.2 拓扑
一个LE周期的物理通道可以由任何数量的LE设备共享。任何数量的LE设备都可以定期传输广告数据包共享相同的周期性物理PHY通道。任何数量的扫描设备都可以侦听周期性的物理通道。广告设备可以同时在LE周期性物理通道上进行广告和同步。扫描设备也可以同时同步到一个或多个LE周期性物理通道。
3.2.4 LE异步物理通道
LE异步物理通道用于在已连接或未连接的LE设备之间传输等时数据。
3.2.4.1 特点
LE异步物理信道的特征是PHY信道的伪随机序列和由主服务器或无连接广播器提供的三个附加参数。第一个参数是指示PHY通道集的通道映射。第二个参数是一个伪随机数,用作完整的PHY通道集的索引。第三个参数是第一个数据包的时间。CIS的第一包的时间将在链路层消息中提供,该消息在CIS建立阶段在关联的ACL连接中发送。BIS的第一包的时间由与BIS相关联的周期性广告事件引用。
LE异步物理通道用于传输定时发生的等时事件中的异步数据。每个异步事件被分为一个或多个子事件。每个子事件都使用一个由通道选择算法选择的PHY通道。在异步连接中的任何子事件中,主端向从端发送数据包,从端可以用自己的包做出响应。主服务器控制对LE异步物理通道的访问。在每个异步事件中,主服务器在第一个子事件开始传输。由主机传输的数据包与每个子事件的开始进行时间对齐。LE异步物理通道使用在LE微网物理通道上启用的PHY通道集。
一种广播异步发射机传输等时数据包和控制包。任何同步到BIS的设备都可以接收这些数据包。广播设备控制对LE等时物理通道的访问。在异步事件中,广播设备在第一个子事件中开始其传输。由广播设备传输的数据包与每个子事件的开始点对齐。
有37个物理通道。主或异步流发射器可以通过指示所使用通道的通道映射来减少此数字。当通道选择算法选择未使用的通道时,未使用的通道被替换为已使用通道集中的替代通道。LE异步物理通道可以使用任何LE PHY。
3.2.4.2 拓扑
CIS中的LE异步物理信道可用于LE图片网络内的设备之间的一对一通信。主服务器可以用一个或多个从机建立一个或多个CISes。每个LE异步物理信道可以携带一个或多个CIS逻辑传输。当相关的LE微网物理通道终止时,LE异步物理通道和它所携带的所有CISes都被终止。
LE异步物理信道可用于未连接的LE设备的一对多通信拓扑。每个LE异步物理信道可以携带一个或多个BIS逻辑传输。
3.3 AMP物理通道
AMP物理通道用于连接设备之间的通信。它与相关的BR/EDR控制器之间的一个适应的微型通道并行使用。
3.3.1 拓扑
一个AMP物理通道可以由任何数量的蓝牙设备共享,但仅受微网BR/EDR主设备上的可用资源和可用的LT_ADDRs数量的限制。不使用AMP物理通道中的角色。所有通信都在BR/EDR微网主服务器和单个BR/EDR微网从服务器之间。BR/EDR微型从设备在AMP物理通道之间没有直接通信。
虽然理论上对可以共享AMP物理通道的蓝牙设备的数量没有限制,类似于基本的和适应的微网通道,但这些可以积极参与与主节点交换数据的设备的数量是有限的。
3.3.2 支持层
AMP物理信道支持许多用于通用通信的物理链路、逻辑传输、逻辑链路和L2CAP信道。
4.物理链接
物理链路表示蓝牙设备之间的基带连接。一个物理链路只与一个物理通道相关联(尽管一个物理通道可能支持多个物理链路)。在蓝牙系统中,物理链路是一个虚拟概念,在传输包的结构中没有直接表示的概念。
在BR/EDR中,访问码包字段与主蓝牙设备的时钟和地址一起用于识别物理通道。在LE中,访问地址和信道映射,包括通道选择算法#1的跳跃增量或通道选择算法#2的事件计数器,用于识别物理信道。对于BR/EDR和LE,数据包中没有直接标识物理链接的后续部分。相反,物理链路可以通过与逻辑传输的关联来识别,因为每个逻辑传输只在一个物理链路上接收。
某些物理链接类型具有可能被修改的属性。其中的一个例子就是链路的传输功率。其他物理链接类型没有可修改的属性。在具有可修改属性的BR/EDR物理链接中,LM协议用于调整这些属性。在具有可修改属性的LE物理链接中,LL协议用于调整这些属性。由于更高层支持LM协议(BR/EDR)或LL协议(LE)(通过逻辑链路),因此适当的物理链路通过传输LM或LL信令的逻辑链路的暗示来识别。
4.1 BR/EDR链接由基本的和自适应的微网物理通道支持
基本的微网物理通道支持可能只活动的物理链接。调整后的微网物理通道可以支持多个物理链接,包括活动的和无连接的从广播。活动的物理链接是主节点和从节点之间的点对点链接。无连接从服务器广播物理链接是主从服务器和零或多个从服务器之间的点到多点链接。当从节点在网络中同步时,网络物理通道上至少存在一个物理链接。
4.1.1 活动物理链接
如果主设备之间存在默认的ACL逻辑传输,则主设备和从设备之间的物理链接处于活动状态。活动物理链接本身没有直接标识,但通过与有一对一对应的默认ACL逻辑传输ID的关联来标识。
活动物理链路具有在每个方向上的无线电发射功率的相关特性。
- 从从设备的传输总是通过活动物理链路定向到主,并使用从链路的属性的传输功率到主方向。
- 主设备的传输可以通过单个活动物理链接(到特定从节点)或多个物理链接(到微网中的一组从节点)引导。
活动的物理链接可以放置在保持或嗅探模式。这些模式的效果是修改物理链路处于活动状态并可能承载流量的时段。具有定义的调度特性的逻辑传输不受这些模式的影响,并根据其预定义的调度行为继续运行。默认的ACL逻辑传输和其他具有未定义调度特性的链路受活动物理链路的模式的约束。
4.1.2 无连接的从机广播物理链路
当从机在存在CSB逻辑传输的微微网中同步。在主,当CSB发生故障时,存在无连接从属广播物理链路无论是否同步任何从属设备,逻辑传输都存在。这个无连接从机广播物理链路为点对多点主设备和零个或多个从设备之间的单向链路。
活动物理链路具有无线发射功率的相关特性每个方向,每个方向可能不同。设备使用相关物理链路的适当发射功率。
无连接的从属广播数据包会定期发送。BR/EDR控制器在主机请求的范围内选择一个时间间隔。
4.2 扫描物理通道支持的BR/EDR链接
在查询扫描和页面扫描通道的情况下,物理链路所存在的时间相对较短,不能以任何方式进行控制或修改。
4.3 由LE物理通道支持的LE链接
LE微网物理通道支持LE活动物理链路。物理链接是主链和从设备之间的点对点链接。当从机与主机连接时,它总是存在。
LE广播物理通道支持LE广告物理链接。该物理链路是在广告商设备和一个或多个扫码设备或启动器设备之间的广播。当广播不在时,它总是存在的广播广告活动。
LE周期物理通道支持一个LE周期物理链路。该物理链接是在广告商设备和一个或多个扫描设备之间的广播。当广告者定期播放广告活动时,它总是出现的。
LE异步物理通道支持LE等时物理链接。LE等时物理链路可以是主机和从机之间的点对点链路,也可以是广播等时发射机和多个接收设备之间的无连接链路。
4.3.1 活动物理链接
如果主设备之间存在默认的LE ACL逻辑传输,则主设备和从设备之间的物理链接处于活动状态。活动物理链路都与一个单独的微网物理通道相关联,该物理通道又由链路层包中使用的随机生成的访问地址标识。每个访问地址与活动物理链接的主机和从机有一对一的关系。
活动物理链路具有在每个方向上的无线电发射功率的相关属性,这在每个方向上可能是不同的。一个设备对相关的物理链路使用适当的传输功率。
4.3.2 广播物理链接
为了形成连接(活动物理链接)的广告设备和启动设备之间的广告物理链接可以在相对较短的时间内存在。这些广告物理链接不能以任何方式进行控制或修改,这些类型的物理链接也没有进一步阐述。
广告设备和用于定期广播用户数据的扫描设备之间的广告物理链接可以存在较长的时间。在协议中没有关于物理链路的标识信息。通过使用蓝牙设备地址,建立广告与蓝牙扫描设备之间的关系。
4.3.3 周期物理链接
广告设备与一个或多个扫描设备之间的周期性物理链接通常存在很长一段时间。周期物理链路都与一个单独的周期物理通道相关联,该通道又由链路层包中使用的随机生成的访问地址标识。每个访问地址与定期物理链接的广播设备有一对一的关系。
4.3.4 异步物理链接
异步物理链路使用等时物理通道,并携带CIS和BIS逻辑传输。
携带CIS(es)的同步物理链路为相关的物理链路使用适当的传输功率级别。设备使用相关的ACL-C逻辑链路上的电源控制,以调整物理链路的传输功率级别。
携带BIS(es)的同步物理链路不支持电源控制,因为没有从观察器到广播器的反馈。流量总是从单个广播器定向到零或多个观察者。
4.4 AMP物理通道支持的链接
一个AMP物理链路总是只与一个AMP物理通道相关联(尽管一个AMP物理通道可能支持多个AMP物理链路)。AMP物理链路是两个路径之间的点对点链路。AMP物理链路的特性取决于底层的AMP技术。
5. 逻辑链接和逻辑传输
5.1 Casting
第一类是casting。这可以是单播或广播。
- 单播链接完全存在于两个端点之间。流量可以在单播链路上向任何一个方向发送。
- 在一个源设备和零个或多个接收器设备之间存在广播链路。流量是单向的,即仅从源设备发送到接收器设备。广播链接是无连接的,这意味着没有创建这些链接的过程,数据可以在任何地方通过它们发送时间。广播链路不可靠,也不能保证数据会被接收。
5.2 调度和确认方案
第二类与该链路的调度和确认方案有关,并表示该链路所支持的流量类型。这些都是同步的、等时的或异步的。没有定义特定的等时链接,尽管默认的ACL链接可以配置为以这种方式操作。
- 同步链路提供了一种将传输的数据与蓝牙微网时钟相关联的方法。这是通过在物理通道上保留常规的插槽,并定期传输固定大小的数据包来实现的。这种链接适用于恒定速率的等时数据。
- 异步链路提供了一种传输没有基于时间的特性的数据的方法。通常情况下,数据将被重新传输,直到成功接收,每个数据实体可以在收到后的任何时候进行处理,而不参考对流中任何以前或连续实体的接收时间(只要保留数据实体的顺序)。
- 同步链路提供了一种传输具有基于时间的特性的数据的方法。这些数据可以被重新传输,直到收到或过期。链路上的数据速率不必是恒定的(这是与同步链路的主要区别)。
5.3 数据类别
最后一个类别与链路所携带的数据类相关。这可以是控件(LMP或PAL)数据或用户数据。用户数据类别可细分为L2CAP(或帧)数据和流(非帧)数据。
- 控制链路仅用于在两个链路管理器之间传输LMP消息。这些链接在基带层上方是不可见的,并且不能由应用程序直接实例化、配置或发布,除非通过使用隐式地具有这种效果的连接和断开服务。控制链路总是与等效的L2CAP链路多路复用到ACL或ASB逻辑传输上。根据定义ARQ方案的规则,控制链路流量始终优先于L2CAP链路流量。
- L2CAP链路用于传输L2CAPPDU,L2CAPPDU可能携带L2CAP信令通道(仅在默认的ACL-U逻辑链路上)或提交给用户实例化的L2CAP的CAP通道。提交给基带的L2CAP帧可能大于可用的基带数据包。当帧以多个片段的形式传输到接收器时,嵌入在LLID字段中的链路控制协议保留了帧开始和帧延续语义。
- 流链接用于传输在传递数据时不应该保留的固有框架的用户数据。丢失的数据可以被接收器上的填充所替换。
5.4 逻辑传输
5.4.1 面向BR/EDR异步连接(ACL)
面向异步连接(ACL)逻辑传输用于携带LMP和L2CAP控制信令和尽最大努力的异步用户数据。ACL逻辑传输使用1位ARQN/SEQN方案来提供简单的信道可靠性。微网内的每个活动从设备都有一个到PCL主节点的ACL逻辑传输,称为默认ACL。
当设备连接Piconet(连接到基本Piconet物理通道)时,在主和从之间创建默认ACL。这个默认的ACL由微型网主服务器分配了一个逻辑传输地址(LT_ADDR)。此LT_ADDR也用于在需要时识别活动的物理链接(或作为一个微网上活动的成员标识符,有效地用于相同的目的)。
默认ACL的LT_ADDR被重复用于同一主节点和从属节点之间的面向连接的同步逻辑传输。因此,LT_ADDR本身并不足以识别默认的ACL。但是,ACL上使用的包类型与同步连接导向逻辑传输上使用的包类型不同。因此,可以通过分组头中的LT_ADDR字段与分组类型字段结合来识别ACL逻辑传输。
默认的ACL可用于等时数据传输,通过将其配置为在数据包过期后自动刷新数据包。通过将异步数据包标记为非自动流动,可以通过配置为同步通信量的ACL逻辑传输发送异步通信量。这允许将同步流量和异步流量同时传输到单个设备。
如果从活动的物理链接中删除了默认的ACL,则主机和从机之间存在的所有其他逻辑传输也将被删除。如果意外丢失到微网物理通道的同步,则在检测到此同步丢失时,物理链路以及所有逻辑传输和逻辑链路不再存在。
5.4.2 面向BR/EDR同步连接(SCO)
面向同步连接(SCO)逻辑传输是主机和特定从机之间的一种对称的点对点传输。SCO逻辑传输在物理通道上保留了插槽,因此可以被视为主机和从机之间的电路交换连接。SCO逻辑传输携带与微型时钟同步的64kb/s的信息。通常,这些信息是一个编码的语音流。
5.5 逻辑链接
5.5.1 BR/EDR逻辑链接
在BR/EDR逻辑传输中,逻辑链路由携带数据有效负载的基带数据包的有效负载头中的逻辑链路标识符(LLID)位来标识。逻辑链路区分能够在逻辑传输上传输和接收数据的有限核心协议。并非所有的逻辑传输都能够承载所有的逻辑链接。特别是BR/EDRSCO和eSCO逻辑传输只能携带恒定的数据速率流,并且这些数据流由LT_ADDR唯一标识。这种逻辑传输只使用不包含有效负载头的数据包,因为它们的长度,不需要LLID.
5.5.2 LE逻辑链接
在LE逻辑传输中,逻辑链路由携带数据有效负载的基带数据包的有效负载报头中的逻辑链路标识符(LLID)位来标识。逻辑链路区分能够在逻辑传输上传输和接收数据的有限核心协议。并非所有的逻辑传输都能够承载所有的逻辑链接。
6.L2ACP通道
L2CAP提供了一个多路复用角色,允许许多不同的应用程序共享ACL-U、ASB-U、LE-U或AMP-U逻辑链接。应用程序和服务协议与L2CAP的接口,使用面向通道的接口来创建到其他设备上的等效实体的连接。
L2CAP通道端点通过通道标识符(CID)标识给其客户端。这是由L2CAP分配的,并且任何设备上的每个L2CAP通道端点都有一个不同的CID。
L2CAP通道可以被配置为为应用程序提供适当的服务质量(QoS)。L2CAP将该通道映射到ACL-U、ASB-U、LE-U或其中一个AMP-U逻辑链路上。
L2CAP支持面向连接的通道和其他面向组的通道。面向组的信道可以映射到ASB-U逻辑链路上,或者可以通过ACL-U逻辑链路依次作为迭代传输到每个成员来实现。
除了创建、配置和拆除通道外,L2CAP的主要作用是将通道客户端的业务数据单元(SDU)重用到ACL-U、ASB-U、LE-U或AMP-U逻辑链路上,并执行简单级别的调度安排,根据相对优先级选择SDU。
L2CAP可以提供具有对应L2CAP层的每个通道流量控制(在ASB-U逻辑链路上的除外)。当建立通道时,应用程序会选择此选项。L2CAP还可以提供增强的错误检测和重传到(a)减少未检测到的被传递给应用程序的错误的概率,并且(b)当基带对ACL-U逻辑链路执行刷新时,从用户数据的部分丢失中恢复。
在存在HCI的情况下,还需要使用L2CAP,以将L2CAPSDU分割成适合基带缓冲区的片段,并对HCI操作基于令牌的流控制过程,仅在允许时向基带提交片段。这可能会影响调度算法。
7.同步适应层(ISOAL)
ISOAL提供了一种机制,使得用于在上层生成或接收等时数据的时间可以独立于用于携带等时数据的CIS或BIS逻辑传输中使用的时间。例如,音频编解码器数据可以以10ms的间隔生成,而CIS的ISO间隔值可以为11.25ms。ISOAL将上层等时数据单元转换为下层等时数据包(或采用其他方式)。
8.功率控制
8.1 BR/EDR功率控制
在BR/EDR中,有两种电源控制机制(传统的和增强的电源控制)。这两种机制都支持要求增量更改传输功率级别。增强的功率控制机制还允许请求更改到最大发射功率电平。请求的更改可以同时应用于所有支持的调制,因为调制可以在数据包之间动态更改。
8.2 LE功率控制
在LE中,设备可以请求远程设备在给定的PHY上对远程设备的功率电平进行指定的更改。与增量变化相比,这允许更快地过渡到所需的功率水平。响应设备还可以返回一个值,以指示功率电平的可接受的减少,从而允许请求设备将其发射功率电平进一步降低到可能的最低电平,从而节省能量。本地和远程设备还可以在此交换过程中共享其当前的传输功率水平,以使设备能够计算它们之间的链路路径损耗。设备还允许自主更改本地传输功率级别,并指示对远程设备的更改。
在LE中,ACL连接可以具有像CIS(es)这样相关的连接。在ACL和相关连接上使用的所有PHYs的电源控制都通过ACL连接进行管理。主机可以使用ACL连接的连接句柄来检索ACL和相关连接上使用的所有PHY的信息。
文章来源: xintiaobao.blog.csdn.net,作者:心跳包,版权归原作者所有,如需转载,请联系作者。
原文链接:xintiaobao.blog.csdn.net/article/details/119821787
- 点赞
- 收藏
- 关注作者
评论(0)