经典蓝牙连接建立过程--L2CAP建立以及SDP过程

时间:2024-05-23 15:12:51

其中L2CAP建立部分参考:https://blog.****.net/u010657219/article/details/42192481#commentBox

前面文件描述蓝牙设备在物理通道上建立了链接,但上层应用若需要在设备之间通信,那么还需要在L2CAP层次建立连接,L2CAP 的CID(通道ID)好比是计算机的端口号,在访问网络时每个应用程序会对应不同的端口号。在L2CAP层中也类似,对应过来的是每个协议/profile实列对应L2CAP层的一个CID。

1 L2CAP 发现过程
层协议需发送数据时都需要在Master 和Salve之间建立对应的L2CAP通道,举个列子来说,SDP在获取信息时,会先在L2CAP层次建立连接通道,如下图所示:

经典蓝牙连接建立过程--L2CAP建立以及SDP过程

 

2 SDP

2.1  Service Record

经典蓝牙连接建立过程--L2CAP建立以及SDP过程

2.2 Service Attribute

经典蓝牙连接建立过程--L2CAP建立以及SDP过程

2.3 Service Class

 每一个Service都是ServiceClass的一个实例,一个Service Record就是一个Service Class的实例,Service Class可以表示一个Record里的所有Attribute。每一个Service Class有一个ID,包含在ServiceClassIDList这个Attribute的value里,称之为UUID。

2.4 Searching for services

服务发现简单过程:

经典蓝牙连接建立过程--L2CAP建立以及SDP过程