蓝牙核心系统覆盖 4 个最低层及其关联协议(后者由蓝牙规格定义)以及一个通用服务层协议—服务发现协议 (SDP),所有的配置文件要求则由通用访问配置文件 (GAP) 指定。完整的蓝牙应用要求多项附加服务和较高层协议,这些在蓝牙规格中定义。
最低的 3 层有时被归为一个子系统,称为蓝牙控制器。这是一种常见的实施方式,在蓝牙控制器和蓝牙系统其余部分(包括 L2CAP、服务层以及被称为蓝牙主机的较高层)之间有标准的物理通信接口。虽然此接口是可选的,但架构的设计使它自有存在的意义和特性。蓝牙规格通过定义对等层之间交换的协议消息,实现在启用蓝牙的独立系统之间的互操作性,并通过定义蓝牙控制器和蓝牙主机之间的常用接口,实现在独立蓝牙子系统之间的互操作性。
后文描述了若干功能块以及这些功能块之间的服务和数据路径。图表中显示的功能块提供大量信息;通常蓝牙规格不定义有关实施的详细信息,除非该实施是实现互操作性所必需的。
规格对所有设备间操作定义了标准交互方式,蓝牙设备根据蓝牙规格交换协议信令。蓝牙核心系统协议包括射频 (RF) 协议、链路控制 (LC) 协议、链路管理器 (LM) 协议和逻辑链路控制和适配协议 (L2CAP),蓝牙规格后续部分对所有这些协议进行了完整的定义。另外,服务发现协议 (SDP) 是所有蓝牙应用必备的服务层协议。
蓝牙核心系统通过多个服务接入点(见图中的椭圆部分)提供服务。这些服务由控制蓝牙核心系统的基础服务原语组成。服务可分为 3 种类型。即:用于修改蓝牙设备行为和模式的设备控制服务,用于创建、修改和释放通信载体(信道和链路)的传输控制服务,以及通过通信载体提交传输数据的数据服务。通常前两项服务被视为控制平面 (C-plane) 类,最后一项则属于用户平面 (U-plane) 类。
至蓝牙控制器子系统的服务接口的定义将蓝牙控制器视为标准组成部分。在这种配置中,蓝牙控制器操作最低的三层,而 L2CAP 层与其它蓝牙应用则包含在主机系统中。这一标准接口被称为主机到控制器接口 (HCI)。可选择是否实施此标准服务接口。
由于蓝牙架构是在独立的主机和控制器可通过 HCI 进行通信这一前提下定义的,定义过程采用了若干假设。不妨假设:与主机相比,蓝牙控制器只具有有限的数据缓冲能力。因此,L2CAP 层在将 L2CAP PDU 提交到控制器以便再传输到对等设备时应执行一些简单的资源管理。这包括将 L2CAP SDU 分段成更便于管理的 PDU,然后再将 PDU 分段成大小适合控制器缓冲区的起始和延续数据包;以及管理控制器缓冲区的使用,以便确保具有服务质量 (QoS) 承诺的信道的可用性。
基带层提供蓝牙技术的基础 ARQ 协议。L2CAP 层可选择性地提供深入错误检测和指向 L2CAP PDU 的重新传输。对于要求尽量避免用户数据中存在未检测到的错误的应用,建议使用此功能。L2CAP 的另一可选功能是基于视窗的流控制功能,该功能可用于管理接收设备中的缓冲区分配。这两项可选功能都将提高 QoS 在特定应用中的性能。
尽管对于在一个系统中组合各层的嵌入式蓝牙技术实施来说,这些假设并不是必备条件,但一般架构和 QoS 模型都是基于这些假设定义的,并以之作为实际的最低通用标准。
对蓝牙核心系统实施进行自动化符合性测试是必须的。要做到这一点,可允许测试人员通过蓝牙系统通用的射频接口和进行符合性测试才需要的测试控制接口 (TCI) 来控制实施。
测试人员使用通过射频接口与被测实施 (IUT) 进行的交换来确保对远程设备发出的请求作出正确回应。测试人员通过 TCI 控制 IUT,以便让 IUT 通过射频接口发起交换,这样就能验证这些交换的符合性。
对于每一架构层和协议测试,TCI 所使用的命令集(服务接口)是不同的。HCI 命令集的子集将作为蓝牙控制器子系统的每一层和每一个协议的 TCI 服务接口。L2CAP 层和协议使用独立的服务接口测试。由于蓝牙核心规格中没有定义 L2CAP 服务接口,该接口在 TCI 规格中单独定义。只有在进行符合性测试时才要求实施 L2CAP 服务接口。
核心架构块
信道管理器
信道管理器负责创建、管理和破坏用于服务协议和应用数据流传输的 L2CAP 信道。信道管理器通过 L2CAP 协议与远程(对等)设备上的信道管理器交互,以创建这些 L2CAP 信道并将它们的端点连接到对应的实体。信道管理器与本地链路管理器交互来创建新的逻辑链路(如有此需要)和配置这些链路,以提供被传输数据类型要求的 QoS。
L2CAP 资源管理器
L2CAP 资源管理器块负责管理发送至基带的 PDU 片段的提交顺序以及信道间的相关调度,以确保不会因为蓝牙控制器资源耗尽而导致带有 QoS 承诺的 L2CAP 信道对物理信道的访问被拒绝。这是必须的,因为架构模型不会假设蓝牙控制器拥有无限大缓冲,也不会假设 HCI 是具有无限大带宽的管道。
L2CAP 资源管理器也可以执行通信量符合性管制功能,以确保这些应用在它们协商好的 QoS 设置的限制范围内提交 L2CAP SDU。一般的蓝牙数据传输模型会假设每项应用都符合相关要求,而不会定义某项具体实施应如何处理此类问题。
设备管理器
设备管理器是基带的功能块,用于控制启用蓝牙的设备的一般行为。它负责蓝牙系统所有与数据传输无直接关系的操作,例如查询附近是否有其它启用蓝牙的设备,连接到其它启用蓝牙的设备,或使本地启用蓝牙的设备可被其它设备发现或连接。
设备管理器请求从基带资源控制器访问传输媒体,以执行它的功能。
设备管理器还控制多个 HCI 命令指示的本地设备行为,例如管理设备本地名称、任何已存储的链路密钥和其它功能。
链路管理器
链路管理器负责创建、修改和释放逻辑链路(以及与这些链路关联的逻辑传输,如有需要),还可以更新与设备之间的物理链路有关的参数。链路管理器通过使用链路管理协议 (LMP) 与远程蓝牙设备通信来实现此功能。
LMP 可以根据需要在设备之间创建新逻辑链路和逻辑传输,并进行对链路和传输特性的总体控制,例如启用逻辑传输加密、调节物理链路上的传输功率或调整逻辑链路的 QoS 设置。
基带资源管理器
基带资源管理器负责对无线媒介的所有访问。它主要有两项功能。它的核心是一个调度程序,用于将物理信道上的时间授予所有已协商达成访问协定的实体。另一个主要功能是与这些实体协商访问协定。访问协定实际上是一项承诺,提供必要的特定 QoS,以为用户应用提供期望性能。
访问协定和调度功能必须考虑所有需要使用蓝牙无线电的行为。例如,这包括已连接设备之间通过逻辑链路和逻辑传输进行正常数据交换,以及使用无线电媒介实现查询、建立连接、变为可发现或可连接、或者在使用 AFH 模式过程中从未使用的载波中获取读数。
在某些情况下,逻辑链路调度会导致从先前使用的物理信道更换为另一物理信道。这可能是因为涉及到散射网、定期查询功能或寻呼扫描等。如果物理信道未按时隙对齐,则资源管理器还会考虑原物理信道上的时隙和新物理信道上的时隙之间的重新对齐时间。某些情况会自动对齐时隙,这是因为两个物理信道使用相同的设备时钟作为参考。
链路控制器
链路控制器负责蓝牙数据包与数据净荷及物理信道、逻辑传输和逻辑链路相关参数的编码和解码操作。
链路控制器发出链路控制协议信令(与资源管理器的调度功能紧密结合),用于传达流控制及确认和重新传输请求信号。对这些信号进行翻译是与基带数据包相关联逻辑传输的特征。链路控制信令的翻译和控制通常与资源管理器的调度程序相关联。
射频
射频块负责在物理信道上传输和接收数据包。基带和射频块之间的控制通道让基带功能块可以控制射频功能块的时间和频率载波。射频块可将物理信道和基带上传输的数据流转换成所需格式。

Copyright 2007