1.简介 一个BLE设备,可以使用两种类型的地址(一个BLE设备可以同时具备两种地址):Public Device Address(公共设备地址)和Random Device Address(随机设备地址)。而Random
一个BLE设备,可以使用两种类型的地址(一个BLE设备可以同时具备两种地址):Public Device Address(公共设备地址)和Random Device Address(随机设备地址)。而Random Device Address又分为Static Device Address(静态设备地址)和Private Device Address(私密设备地址)两类。其中Private Device Address又可以分为Non-resolvable Private Address(不可解析私密地址)和Resolvable Private Address(可解析私密地址)。关系如下图:
在通信系统中,设备地址是用来唯一识别一个物理设备的。如tcp/IP网络中的Mac地址、传统蓝牙中的蓝牙地址等等。对设备地址而言,一个重要的特性,就是唯一性(或者说一定范围内的唯一性),否则很有可能造成很多问题。蓝牙通信系统也不例外。
对经典蓝牙(BR/EDR)来说,其设备地址是一个48bits(6字节)的数字,称作“48-bit universal LAN MAC address”(和电脑的MAC地址一样)。正常情况下,该地址需要向IEEE申请购买。通过付费,来保证地址的唯一性。这种地址分配的方式,在BLE中也保留了下来,也就是Public Device Address(公共设备地址)。Public Device Address由24-bit的company_id和24-bit的company_addigned组成,如下图所示:
高24位是公司标示,低24位公司内部自己赋值。
目前而言,只有Public Device Address明显不够用了,有如下原因:
为了解决上述问题,BLE协议新增了一种地址:Random Device Address(随机设备地址),即设备地址不是固定分配的,而是在设备启动后随机生成的。根据不同的目的,Random Device Address分为Static Device Address(静态设备地址)和Private Device Address(私密设备地址)两类。
Static Device Address是设备在上电时随机生成的地址,格式如下:
Static Device Address静态设备地址的特性可总结为:
Static Device Address静态设备地址的使用场景可总结为:
Static Device Address通过地址随机生成的方式,解决了部分问题,Private Device Address则更进一步,通过定时更新和地址加密两种方法,提供蓝牙地址的可靠性和安全性。根据地址是否加密,Private Device Address又分为两类,Non-resolvable Private Address(不可解析私密地址)和Resolvable Private Address(可解析私密地址)。
Non-resolvable Private Address和Static Device Address类似,不同之处在于,Non-resolvable Private Address会定时更新。更新的周期是由GAP规定的,称为T_GAP(private_addr_init),建议值是15分钟。其格式如下:
特征可总结为:
注:Non-resolvable private address在实际中并不常用,因为地址经常变动,所以应用场景不多。
Resolvable Private Address 是通过一个随机数和一个称为identity resolving key(IRK)的密码生成的。因此只能被拥有相同IRK的设备扫描到,可以防止被未知设备扫描和跟踪。格式如下:
特征如下:
来源地址:https://blog.csdn.net/qq_26226375/article/details/128481073
--结束END--
本文标题: 蓝牙学习七(MAC地址)
本文链接: https://lsjlt.com/news/411355.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-01-21
2023-10-28
2023-10-28
2023-10-27
2023-10-27
2023-10-27
2023-10-27
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0