L2CAP 信道管理器负责依据适当的基带逻辑链路安排传输 theL2CAP 信道数据帧,有可能会将其在具有其它具类似特征的 L2CAP 信道的基带逻辑链路上进行链路复用传送。
非帧化数据通信量
如果应用程序不要求按帧传输数据(可能因为包含流帧,或者数据为纯流形式),则可以避免使用 L2CAP 信道而直接使用基带逻辑链路。
Bluetooth 核心系统支持使用 SCO-S 或 eSCO-S 逻辑链路直接传输等时且速度恒定(预帧化数据的比特率或帧率)的应用数据。这些逻辑链路保留了物理信道带宽,并提供根据微微网时钟而锁定的恒速传输。数据在固定间隔以固定大小的数据包(这些参数在建立信道期间协商好)形式传输。eSCO 链路通过在错误情况下使用限制转播,提供了多种比特率选择及高度的可靠性。eSCO 支持增强数据速率操作,但 SCO 逻辑传输不支持。SCO 和 eSCO 逻辑传输在 Bluetooth 核心系统中不支持复用逻辑链路或深入分层。如果提交的流是或像是恒速流,应用程序可以选择在提交的 SCO/eSCO 流内将流细分为多层。
应用程序可以从基带的可用逻辑链路中选择最适当的类型,创建并配置链路以传输数据流,并在完成后释放。(应用程序通常还会使用以帧为单位的 L2CAP 单播信道将控制平面 (C-plane) 信息传输给远程设备上的对等应用程序。)
如果应用程序数据为等时变速类型,则仅可通过 L2CAP 单播信道承载,并因此被视为以帧为单位的数据。
通信量载体的可靠性
Bluetooth 技术是一种无线通信系统。在不好的射频环境中,此系统应被视为内在不可靠。为抵消此劣势,系统在每层都提供了不同级别的保护。基带包头采用前向纠错 (FEC) 编码支持接收方进行错误纠正,并采用头部错误检验 (HEC) 检测纠正后是否还有遗留错误。某些基带数据包类型包括适用于净荷的 FEC。此外,一些基带数据包类型还包括循环冗余错误检查 (CRC)。
在 ACL 逻辑传输上,错误检测算法的结果被用来推动简单的 ARQ 协议。这可以重新传输未通过接收方错误检测算法的数据包,增强了可靠性。此方案还可以修改,如果数据包的使用期限已过,则放弃发送方未成功传输的数据包,以支持延迟敏感型数据包。eSCO 链路使用此方案的修订版,允许有限数量的重新传输,增强了可靠性。
此 ARQ 方案的可靠性与 HEC 及 CRC 代码检测错误的能力一样,并不是完全值得信赖。在多数情况下这足够可靠,但对于较长的数据包类型,发生检测不出的错误的可能性太大,难以支持普通应用,尤其是传输大量数据的应用。
L2CAP 层提供有附加错误控制级别,旨在检测偶尔在基带层中未检测到的错误,并请求重新传输受影响数据。这就保证了普通 Bluetooth 应用所必须的可靠性。
广播链路不具有反馈路由,无法使用 ARQ 方案(尽管接收方仍可以检测收到的数据包中的错误)。但它会多次传输每个数据包,以期接收方至少能成功收到其中一份。尽管如此,还是不能保证对方能成功接收,因此这些链路被视为不可靠。
总而言之,如果链路或信道表现可靠,则说明接收方可以检测收到的数据包中的错误,并请求重新传输直到排除错误。由于使用的错误检测系统的原因,仍可能有一些残留(未检测到)错误保留在收到的数据中。对于 L2CAP 信道,这种风险等级与其它通信系统不相上下,但对于逻辑链路而言,残留错误等级则偏高。
共14页: 上一页 [1] 2 [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] 下一页
|