【蓝牙抓包篇】BLE抓包分析GATT连接过程

工具:蓝牙分析仪

软件:ComProbe

本文讲解通过BLE抓包分析GATT链接过程。

背景知识

GAP中的四个角色

Broadcaster, Observer, Peripheral(外设), and Central(集中器)

GAP、ATT、GATT三者的联系 

GATT的两个角色

GATT defines two roles: Server and Client.
The GATT client is also an ATT client. The GATT server is also an ATT server.

本文中描述的Master就是GATT Client、GAP的集中器角色。 

Slave是GATT Server、GAP的外设角色。

在实际的BLE配网应用中, Master相当于手机APP、Slave就相当于IoT设备。

抓包方法

1. 与Wi-Fi无线抓包类似,需要设置好抓包过滤蓝牙MAC地址。

2. 开始抓包。

分析抓包

前提:已过滤蓝牙MAC地址,得出想要分析的设备蓝牙包。

如何判断哪个包是蓝牙连接的发起过程呢?

看到下图846帧, BDADDR上有地址,这一包开始,是BLE连接开始的过程。

BLE连接过程的都做了哪些事情

1. 从机发起广播包,主机扫描。主机扫描到目标设备,发起连接。

点击到LE ADV栏目看广播包,看到846帧前面高亮的841帧、842帧和843帧。

这三帧对应LE Advertising Report event

, 详见BLE Core Specification 5.2   7.7.65.2

 当看到SCAN RSP帧代表从机发起的广播包响应,也可以说明有设备(主机)连上来了 。

回到846帧,CONNECT_IND 包代表有主机连上来了。

2. 主机和从机之间进行服务发现以及设置。

看到ATT栏目, 高亮处为服务发现相关。

这个阶段还会有MTU交换等过程。

 3. GATT 客户端和服务端数据交换

待补充

参考 BLE Core Specification 5.2

GATT_Specification_Supplement_v4

  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值