首页 > 解决方案 > 蓝牙堆栈中的协议和配置文件有什么区别?

问题描述

我不明白蓝牙配置文件和协议是如何区分的。

在Bluetooth的Core_Specification中是这样写的:

蓝牙系统中的应用程序互操作性由蓝牙配置文件完成。蓝牙配置文件定义了蓝牙系统中每一层所需的功能和特性,从 PHY 到 L2CAP 以及本规范之外的任何其他协议。该配置文件定义了层之间的垂直交互以及设备之间特定层的对等交互。(第 277 页) 在此处输入图像描述

在 Kevin Townsend 的“低功耗蓝牙低功耗工具和技术入门”一书中,我发现了以下定义:

协议
符合蓝牙规范的所有设备使用的构建块,协议是实现不同数据包格式、路由、多路复用、编码和解码的层,允许数据在对等点之间有效发送。
配置文件
“垂直切片”功能涵盖所有设备所需的基本操作模式(通用访问配置文件、通用属性配置文件)或特定用例(接近配置文件、葡萄糖配置文件),配置文件本质上定义了应如何使用协议来实现特定目标,无论是通用的还是具体的。

但这并没有真正让我自己理解。

是基带和链路管理器协议吗?他们的名字中没有“协议”一词,这对我来说很奇怪。如果它们不是协议,它们是什么?

我还注意到,在堆栈的主机部分之上,在主机控制器接口的正上方,可以找到最多的术语协议(SMP、ATT、L2CAP)。只有这些真的是协议吗?在控制器部分,该术语没有出现。 在此处输入图像描述

所以问题是,蓝牙堆栈中的协议是什么,配置文件是什么,主要区别是什么?

BLE 规范链接:https ://www.bluetooth.com/specifications/specs/core-specification/

标签: bluetootharchitecturebluetooth-lowenergyprotocolsbluetooth-gatt

解决方案


推荐阅读