逻辑链路控制和适配协议(Logical Link Control and Adaptation Protocol),是蓝牙系统中的核心协议
相应的规范位于Core Version 4.1的vol 3:Part A
L2CAP负责适配基带中的上层协议。它同LM并行工作,向上层协议提供面向连接和无连接的数据服务,并提供多路复用,分段和重组操作
允许高层次的协议和应用能够以64KB的长度发送和接收数据包(L2CAP Serveice Data Units, SDU)。
L2CAP提供了逻辑信道,名为L2CAP Channels,即在一个或多个逻辑链路上进行多路复用。
L2CAP可分为两个部件
~1 Channel Manager
~2 Resource Manager
总的来说,L2CAP提供了如下功能
~1 协议/信道多路复用
~2 分段和重组
~3 服务质量
tip:
L2CAP只支持ACL,而不支持SCO/eSCO(用预留宽带进行实时语音传输)
L2CAP不支持可靠的广播信道
1. 通用操作
1. L2CAP Channel
L2CAP基于信道的概念,信道的每一个端点被称为信道标识符(CID)
不同设备间CID可复用,但本地设备CID不可复用
以下是CID ACL-U和AMP-U链路的name space(LE-U未列出)
CID | Description | Logical Link Supported |
0x0000 | Null identifier | |
0x0001 | L2CAP Signalling Channel | ACL-U |
0x0002 | Connectionless Channel | ACL-U |
0x0003 | AMP Manager Protocol | ACL-U |
0x0004~0x003E | Reserved | ACL-U |
0x003F | AMP Test Manager | ACL-U |
0x0040~0xFFFF | Dynamically allocated | ACL-U, AMP-U |