Bluetooth Core Architecture Blocks (蓝牙核心架构)(一)

来源:互联网 发布:cba数据统计 编辑:程序博客网 时间:2024/05/16 18:13
首先,第一幅图是蓝牙官网上的图示,对应蓝牙4.0版本。(2012年7月份最新更新)
因为该图不很清楚,有人重画了下,稍微修改了其中一部分,如下图:

为便于理解,附上v1.0的架构图示如下:

为了便于理解,最后附上M$上关于蓝牙协议的图示,如下图:

下面就是关于蓝牙官网上文章的翻译了,因为时间和水平有限,主要是水平有限,翻译难免有误差之处,欢迎斧正。

(https://www.bluetooth.org/Building/HowTechnologyWorks/Architecture/Overview.htm)

 

Core System Definition

The Bluetooth core system covers the four lowest layers andassociated protocols defined by theBluetooth specificationas well as one common service layer protocol, theservice discovery protocol (SDP) and the overall profile requirements arespecified in the generic access profile (GAP). A completeBluetooth application requires a number of additional servicesand higher layer protocols that are defined in theBluetooth specification.

(这段话的理解非常重要,为了准确翻译这段话,我还深入研究了“as well as”的用法)

蓝牙核心系统覆盖了蓝牙spec中定义的最低层的四个部分以及相关协议,同时还包括一个通用服务层协议,服务发现协议以及在GAP中指出的全部需求。同时,一个完整的蓝牙应用程序还需要其他一些附加的服务和在蓝牙spe中定义的更高层的协议。

BluetoothController

The lowest three layers aresometimes grouped into a subsystem known as the Bluetooth controller. This is a common implementation involvinga standard physical communications interface between theBluetooth controller and remainder of theBluetooth system including the L2CAP, service layers and higherlayers (known as theBluetooth host). Although this interface is optional, the architecture is designedto allow for its existence and characteristics. TheBluetooth specification enables interoperability betweenindependentBluetooth enabledsystems by defining the protocol messages exchanged between equivalent layers,and also interoperability between independentBluetooth sub-systems by defining a common interface betweenBluetooth controllers andBluetooth hosts.

蓝牙控制部分

最底下的三层有时候被归为一组成为一个子系统称做蓝牙控制器。这是一个通用的执行部分,包括一个用于蓝牙控制器和蓝牙系统其他剩余部分之间的标准的物理通信接口,这些剩余部分包括L2CAP,服务层以及更高级的层次(常叫做蓝牙host)。虽然这个接口并非必不可少,但是本架构设计上允许它的存在和特点。蓝牙说明书通过定义同等层间的协议信息交换来使得独立的蓝牙系统之间协调工作,同时,通过定义一个蓝牙控制器和蓝牙host间的通用接口,保障了蓝牙子系统之间的协调工作能力。


 

A number of functional blocksare shown and the path of services and data between these. The functionalblocks shown in the diagram are informative; in general theBluetooth specification does not define the details ofimplementations except where this is required for interoperability.

很多功能块以及他们之间的服务和数据传输路径如图所示。这些功能块提供了很多的信息。总的来说,蓝牙spec不会定义执行体之间的细节部分,除非他们之间要求协同工作。

Core System Protocols andSignaling

Standard interactions aredefined for all inter-device operation, where Bluetooth devices exchange protocol signaling according to theBluetooth specification. TheBluetooth core system protocols are the radio (RF) protocol,link control (LC) protocol, link manager (LM) protocol and logical link controland adaptation protocol (L2CAP), all of which are fully defined in subsequentparts of theBluetoothspecification. In addition, the service discovery protocol (SDP) is a servicelayer protocol required by allBluetooth applications.

核心系统协议和信号

为内部设备之间的操作定义了标准的交互流程,在这些内部操作中,根据蓝牙spec蓝牙设备交互协议信号。蓝牙核心系统协议栈包括RF协议,链接控制协议,链接管理西医和逻辑连接控制适应协议(L2CAP),这些协议在蓝牙spec随后部分中都均有定义。另外,服务发现协议是一个所有蓝牙应用程序都需要的服务层协议。


The Bluetooth core system offers services through a number ofservice access points that are shown in the diagram as ellipses. These servicesconsist of the basic primitives that control theBluetooth core system. The services can be split into threetypes. There are device control services that modify the behavior and modes ofaBluetooth device,transport control services that create, modify and release traffic bearers(channels and links), and data services that are used to submit data fortransmission over traffic bearers. It is common to consider the first two asbelonging to the C-plane and the last as belonging to the U-plane.

 蓝牙核心系统为许多服务通路点(AP)提供服务,如图中椭圆点处所示。这些服务有控制蓝牙核心系统的基元组成。这些服务可以分成三种类型。第一种是设备控制服务用于修改蓝牙设备的行为和工作方式,第二种是传输控制服务用于创建、修改以及释放通信送信单元(信道和链接),第三种是数据服务用于在通信送信单元上为传送功能传递数据。很容易的理解前两个属于C层面,最后一个属于U层面。


Host to ControllerInterface (HCI): Splits Bluetooth Stack Into Controller and Host

A service interface to the Bluetooth controller sub-system is defined such that theBluetooth controller may be considered a standard part. In thisconfiguration theBluetoothcontroller operates the lowest three layers and the L2CAP layer is containedwith the rest of theBluetooth application in a host system. The standard interface is called the hostto controller interface (HCI). Implementation of this standard serviceinterface is optional.

主机和控制器接口(HCI):划分蓝牙协议栈为控制器和主机

和蓝牙控制器子系统的服务接口定义如下:蓝牙控制器被认为是一个标准的部分。在一个主机系统中,蓝牙控制器操作最底下的三层和L2CAP的这种配置包含在蓝牙应用程序的其他部分。标准接口称为HCI。对这个标准服务的接口的实现是可有可无的。


As the Bluetooth architecture is defined with the possibility of aseparate host and controller communicating through an HCI, a number of generalassumptions are made. TheBluetooth controller is assumed to have limited data buffering capabilities incomparison with the host. Therefore the L2CAP layer is expected to carry outsome simple resource management when submitting L2CAP PDUs to the controllerfor transport to a peer device. This includes segmentation of L2CAP SDUs intomore manageable PDUs and then the fragmentation of PDUs into start andcontinuation packets of a size suitable for the controller buffers, andmanagement of the use of controller buffers to ensure availability for channelswith quality of service (QoS) commitments.

既然蓝牙架构可以定义成通过HCI通信的一个主机和一个控制器,所以就须假设一些通用的东西。和主机相比,假设蓝牙控制器有着有限的数据缓存能力。因此就期望在给一个对等的设备传输数据时,当递交L2CAP PDU给控制器过程中,L2CAP层来执行一些简单的资源管理工作。这些工作包括把L2CAP SDU分割成更多的可以管理的PDU以及进一步把PDU细化成更小的部分,这些部分可以适合在控制器缓冲中进行开始和延续大小的包,还有为了却确保信道的QoS责任的可行性进行的对控制器缓冲利用的管理工作。


 

Error Detection in L2CAP Layer

The baseband layer providesthe basic ARQ protocol in Bluetooth technology. The L2CAP layer can optionally provide a further errordetection and retransmission to the L2CAP PDUs. This feature is recommended forapplications with requirements for a low probability of undetected errors inthe user data. A further optional feature of L2CAP is a window-based flowcontrol that can be used to manage buffer allocation in the receiving device.Both of these optional features augment the QoS performance in certainscenarios.

L2CAP层的错误检测

在蓝牙技术中,基带层提供基本的ARQ协议。L2CAP可以有选择性地提供深层次的错误检测和对L2CAP PDU的重传机制。这个特性对一些应用程序有推荐作用,这些应用程序在对用户数据没有检测到错误存在低的可能性有着一定的要求。L2CAP的的另外一个可能的特性是,基于窗口的流控制在接受设备端可被应用来管理缓冲分配。这两个可选择性的特性在一定场景提高了QoS的性能。


 

Although these assumptions maynot be required for embedded Bluetooth technology implementations that combine all layers in a single system,the general architectural and QoS models are defined with these assumptions inmind, in effect a lowest common denominator.

 对于那些将所有的层联合在一个独立系统的嵌入式蓝牙技术来说,在实现来上,虽然这些假设可能并没有要求,依据这些假设的通用架构和QoS模式已经在大脑中形成,实际上是最小公分母。


 

Testing Interfaces: RF and Test Control Interface (TCI)

Automated conformance testingof implementations of the Bluetooth core system is required. This is achieved by allowing the tester tocontrol the implementation through the RF interface, which is common to allBluetooth systems, and through the test control interface(TCI), which is only required for conformance testing.

测试接口:射频和测试控制接口

蓝牙核心系统实现的自动化一致性测试是必须的。这个测试是通过允许测试人员通过射频接口来控制它的实现来得到的,这对所有的蓝牙系统来说很普通的,并且通过这个测试控制接口(TCI),这是在一致性测试中唯一要求的。

 

The tester uses exchanges withthe implementation under test (IUT) through the RF interface to ensure thecorrect responses to requests from remote devices. The tester controls the IUTthrough the TCI to cause the IUT to originate exchanges through the RF interfaceso that these can also be verified as conformant.

测试人员通过射频接口和执行体进行数据交互来确保给远端设备提供正确的回复。测试人员通过TCI来控制IUT使得IUT通过射频接口发起数据交换,这样数据能够得到一致性的验证。


The TCI uses a differentcommand-set (service interface) for the testing of each architectural layer andprotocol. A subset of the HCI command-set issued as the TCI service interfacefor each of the layers and protocols within theBluetooth controller subsystem. A separate service interface isused for testing the L2CAP layer and protocol. As an L2CAP service interface isnot defined in theBluetooth core specification it is defined separately in the TCI specification.Implementation of the L2CAP service interface is only required for conformancetesting.

TCI利用一个不同的服务接口对架构上的每一个层次和协议进行测试。一个HCI服务接口的子集发行出来

作为TCI为蓝牙控制子系统每一层和协议服务的接口。一个分离的服务接口被用来测试L2CAP层及协议。L2CAP层服务接口没有在蓝牙核心Spec中定义,而是独立地定义在TCISpec中。L2CAP服务接口的实现是一致性测试的唯一要求。

预报: 下一篇:Core Architecture Blocks (核心架构模块)


原创粉丝点击