BLE协议简介
Bluetooth Low Energy(BLE)协议详解
一、BLE 协议是什么?
Bluetooth Low Energy(BLE,蓝牙低功耗) 是 Bluetooth 4.0 之后推出的一种无线通信技术,专为低功耗、低数据速率的短距离无线通信设计。与经典蓝牙(BR/EDR)相比,BLE 具有更低的功耗、较短的连接时长,并且适用于周期性数据传输、状态更新等应用。
典型应用
- 智能穿戴(如智能手环、智能手表)
- 智能家居(如智能门锁、BLE 灯泡)
- 医疗设备(如心率监测器、血糖仪)
- 物联网(IoT)(如工业传感器、资产追踪)
- 汽车应用(如车载娱乐、无钥匙进入)
二、BLE 协议分层结构
**BLE 采用了 **OSI 参考模型 的简化结构,分为 Controller(控制器) 和 Host(主机) 两部分,具体协议栈如下:
协议层 | 主要功能 |
---|---|
应用层(Application) | 设备特定的应用逻辑 |
通用访问配置文件(GAP) | 设备发现、连接管理、广播 |
通用属性协议(GATT) | 设备间数据交换(基于 ATT) |
逻辑链路控制与适配协议(L2CAP) | 数据封装、分片与重组 |
安全管理器(SMP) | 加密、身份验证、密钥交换 |
链路层(LL) | 设备连接、数据包管理、功耗控制 |
物理层(PHY) | 负责无线信号传输(GFSK 调制) |
协议栈结构
1. 物理层(PHY)
调制方式
- GFSK(高斯频移键控),调制指数为 0.5。
- 数据速率:****1 Mbps(LE 1M)、2 Mbps(LE 2M),以及 Coded PHY(125 kbps、500 kbps)。
信道划分
- 40 个信道
,其中:- 37 个数据信道(用于通信,频率范围 2.402–2.480 GHz)
- 3 个广播信道(用于设备发现,位于 2.402 GHz、2.426 GHz 和 2.480 GHz)
- **采用 **跳频技术 以减少干扰。
安全关联:物理层
- 物理层本身无安全机制,所有安全特性均由更高层(如 SMP)提供。
2. 直接测试模式(Direct Test Mode)
用途
- **用于 BLE 设备的 **射频测试 和 性能评估。
接口
- **通过 **HCI(Host Controller Interface) 命令控制。
关键参数
- 发射功率(最大 10 dBm,最小 -20 dBm)
- 接收灵敏度(典型值 -85 dBm 以下)
- 误码率(BER)测试
3. 链路层(LL)
功能
- 广播(Advertising):用于设备发现和连接。
- 扫描(Scanning):搜索附近的 BLE 设备。
- 连接(Connection):建立和管理 BLE 设备间的连接。
- 数据传输(Data Transfer):通过 PDU(协议数据单元)进行数据交换。
- 功耗优化:支持 睡眠模式 和 定期唤醒机制。
链路层状态
- 广告(Advertising)
- 扫描(Scanning)
- 已连接(Connected)
- 非连接状态(Idle)
4. 逻辑链路控制与适配协议(L2CAP)
功能
- 数据封装:将 ATT/GATT/SMP 数据封装为 BLE 数据包。
- 分片与重组(Segmentation & Reassembly):处理大数据包的传输。
- 流控(Flow Control):管理不同协议的数据流量。
- 信道管理:支持固定信道(如 ATT)和动态信道(如 GATT)。
L2CAP 数据包结构
字段 | 长度 | 说明 |
---|---|---|
Length | 2 字节 | 数据包长度 |
Channel ID | 2 字节 | 目标协议通道(如 0x0004 表示 ATT) |
Payload | N 字节 | 实际数据 |
5. 安全管理器(SMP)
功能
- 配对(Pairing):建立加密连接。
- 身份验证(Authentication):确保通信双方可信。
- 密钥管理(Key Distribution):分发加密密钥。
- 隐私保护(Privacy):支持随机地址生成。
BLE 安全模式
安全模式 | 级别 | 说明 |
---|---|---|
Security Mode 1 | Level 1 | 无安全(No Security) |
Security Mode 1 | Level 2 | 未认证加密(Unauthenticated Encryption) |
Security Mode 1 | Level 3 | 认证加密(Authenticated Encryption) |
Security Mode 1 | Level 4 | LE Secure Connections(FIPS 认证加密) |
配对方法
- Just Works(无认证)
- Passkey Entry(密码输入)
- Numeric Comparison(数值比对)
- OOB(Out-of-Band,带外认证)
广播结构体:
服务特性
UUID
每一个服务都对应一个uuid
总结
- **BLE 采用 **分层架构,从 PHY(物理层)到应用层,每层都承担不同的功能。
- ATT/GATT 负责数据组织,L2CAP 负责数据封装,SMP 负责安全。
- 链路层(LL) 管理设备发现、连接和数据传输。
- **BLE 通过低功耗设计,使其适用于 IoT、智能穿戴和医疗设备等场景。
BLE 作为现代无线通信的关键技术之一,在物联网和智能设备中发挥着越来越重要的作用。
评论