BT-L2CAP(蓝牙)

一、BT-L2CAP在蓝牙中定位

下图从整体架构上最能将蓝牙的层次结构表达清楚,但也是将复杂技术简化的结果,便于将蓝牙技术的纲要拎清楚。蓝牙协议也像WIFI协议一样,是通信协议的一种,有自己的完整独立的定义,和WIFI共用一样的物理频道,2.4GHz~2.4835GHz,所以易受WIFI信号干扰。如下图,蓝牙协议氛围四个层次:物理层(Physical Layer)、逻辑层(Logical Layer)、L2CAP Layer和应用层(APP Layer)。

  1. 物理层,负责数据的物理通道,可根据频率不同选择不同物理信道,与数据内容无关,具体传输什么数据由逻辑层面自己定义。
  2. 逻辑层,在物理层的基础上,抽象出对数据的分类,提供两个或多个设备间、和物理无关的逻辑传输通道,又称逻辑信号,根据传输数据内容不容,如控制指令、数据、广播数据等不同,分为不同信号,抽象出来的逻辑分类,对物理通道来说,花里胡哨,并不管传输的是什么数据。
  3. L2CAP层,L2CAP层是专业叫法是逻辑链路控制和适配协议(Logical Link Control and Adaptation Protocol),负责管理逻辑层提供的逻辑链路,用人话讲,就是将不同设备抽象出的不同的数据类型,通过逻辑定义的一个端口来共同传输,像抽象出的独木桥一样,所有类型数据经过协调共同从桥上通过,谁先过谁后过,谁过去后继续从那条路传输,传输给谁,都是这层来定义。
  4. APP层,即PROFILE,蓝牙中特有名词,就是代表上层不同平台下不同设备的统称,可以兼容多种平台多种设备,为每个应用场景定义不同APP规范,规范统一才可以共同通过蓝牙传输数据。

具体每层详细讲解参考链接http://www.wowotech.net/bluetooth/bt_protocol_arch.html,讲的很清晰。

       BT-L2CAP(蓝牙)_第1张图片

二、功能

L2CAP位于Bluetooth Host中,包括两个子模块:

Channel Manager主要负责创建、管理、释放L2CAP channel。

L2CAP Resource Manager负责统一管理、调度L2CAP channel上传递的PDU(Packet Data Unit),以确保那些高QoS的packet可以获得对物理信道的控制权。如下图所示,重点介绍L2CAP。

BT-L2CAP(蓝牙)_第2张图片

三、实现流程

具体实现流程可参考链接,文中通过一个实例音乐数据的传输,层层通过函数调用,清楚的介绍CAP层在整个蓝牙数据传输中的作用,讲的非常好。https://blog.csdn.net/u010657219/article/details/42680321

你可能感兴趣的:(蓝牙)