关于BLE协议的一些基础概念

4 BLE
4.1 GAP
Ble 协议栈中的 GAP 层负责处理设备访问模式,包括设备发现、建立连接、终止连接、初始
化安全管理和设备配置,所以在 ble 协议栈中有不少函数均是以 GAP 为前缀,这些函数会
负责以上的内容。
GAP 层总是作为下面四种角色之一:
⚫ Broadcaster 广播者——不可以连接的一直在广播的设备;
⚫ Observer 观测者——可扫描广播设备,但不能发起建立连接的设备;
⚫ Peripheral 从机 ——可被连接的广播设备,可以在单个链路层连接中作从机。
⚫ Central 主机 ——可以扫描广播设备并发起连接,在单个链路层或多链路层中
作为主机。
在典型的蓝牙低功耗系统中,从机设备广播特定的数据,以便让主机知道他是一个
可以连接的设备,广播内容包括设备地址以及一些额外的数据,如设备名、服务等。主机收
到广播数据后,会向从机发送扫描请求 ScanRequest,然后从机将特定的数据回应给主机,
称为扫描回应 ScanResponse。主机收到扫描回应后,便知道这是一个可以建立连接的外部
设备,这就是设备发现的全过程。此时,主机可以向从机发起建立连接的请求,连接请求包
(2020.9) 23 / 28
括下面一些参数。
连接间隔——在两个 BLE 设备的连接中使用调频机制,两个设备使用特定的信道收发数据,
然后过一段时间后再使用新的信道。(链路层处理信道切换),两设备在信道切换后收发数据
称之为连接事件,即使没有应用数据的收发,两个设备任然会通过交换链路层数据来维持连
接,连接间隔就是两个连接事件之间的时间间隔,连接间隔以 1.25ms 为单位,连接间隔的
值为 6(7.5ms) ~3200(4s)。
从机延时——这个参数的设置可以使从机跳过若干连接事件,这给了从机更多的灵活度,如
果它没有数据发送时,可以选择跳过连接时间继续休眠,以节省功耗。
管理超时——这是两个成功连接事件之间的最大允许的间隔,如果超过了这个时间(这个值
的单位是 10ms)而没有成功的连接事件,设备被认为丢失连接,返回到未连接状态,管理
超时的范围是 100(100ms) ~3200(32s)另外,超时值必须大于有效的连接间隔[有效的连
接间隔=连接间隔*(1+从机延时) ]。
安全管理——只有已认证的连接中,特定的数据数据才能被读写,一旦连接建立,两个设备
进行配对,当配对完成后,形成加密连接的密钥,在典型的应用中,外设请求集中器提供密
钥来完成配对工作。密钥是一个固定的值,如 000000,也可以随机生成一个数据提供给使
用者,当主机设备发送正确的密钥后,两设备交换安全密钥并加密认证链接。在许多情况下,
同一对外设和主机会不时的连接和断开, ble 的安全机制中有一项特性,允许两个设备之间
建立长久的安全密钥信息,这种特性称为绑定,他允许两设备连接时快速的完成加密认证,
而不需要每次连接时执行配对的完整过程。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值