无线电爱好网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

浅谈蓝牙 Profile 以及解构蓝牙地址

2022-5-13 16:36| 发布者: 闪电| 查看: 1| 评论: 0

摘要: 一、前言什么是蓝牙技术?蓝牙是一种支持设备短距离通信(一般 10m 以内)的无线电技术,被广泛应用于手机、电脑、鼠标、键盘、蓝牙音箱以及当下非常流行的 TWS 应用等。从 1999 年的蓝牙 1.0 进化到 2016 年的蓝牙 ...
  • 一、前言

什么是蓝牙技术?蓝牙是一种支持设备短距离通信(一般 10m 以内)的无线电技术,被广泛应用于手机、电脑、鼠标、键盘、蓝牙音箱以及当下非常流行的 TWS 应用等。从 1999 年的蓝牙 1.0 进化到 2016 年的蓝牙 5.0,从经典蓝牙到低功耗蓝牙,这项技术一直在进步,市场也在不断扩大,在未来蓝牙也是我们生活之中不可缺少的一部分。本文我将为大家介绍蓝牙 Profile 的概念和常见种类,以及如何解构蓝牙地址和搜索 MAC 地址。

  • 二、Profile 的概念和常见种类

蓝牙 Profile:(可以理解为:配置文件、剖面、应用协议、轮廓等)。

所有的 Bluetooth 产品都无须实现全部的 Bluetooth 规范。为了更容易的保持 Bluetooth 设备之间的兼容,Bluetooth 规范中定义了 Profile。Profile 定义了蓝牙系统从 PHY 到 L2CAP 每一层以及其他协议的功能和特性,使设备应当如何实现一种连接或者应用,可以把 Profile 理解为连接层或者应用层。其实是蓝牙对应于每一个具体的应用场景以及每一种应用的不同的协议栈,也即是说它其实是实现某种功能对应的自下而上的协议的组合。类似于对于横向协议的纵向组合。

在所有的 Profile 中,有四种是基本的 Profile,这些 Profile 会被其他的 Profile 使用,他们包括 GAP/SDAP/SPP/GOEP Profile。

  • GAP

GAP Profile:Generic Access Profile,是一个最基本的 Profile,其定义了一个蓝牙设备的最基本要求。该 Profile 保证不同的 Bluetooth 产品可以互相发现对方并建立连接。

一般访问应用规范(GAP)定义了蓝牙设备如何发现和建立与其他设备的安全(或不安全)连接。它处理一些一般模式的业务(如询问、命名和搜索)和一些安全性问题(如担保),同时还处理一些有关连接的业务(如链路建立、信道和连接建立)。GAP 规定的是一些一般性的运行任务。因此,它具有强制性,并作为所有其他蓝牙应用

规范的基础。

  • SDAP

SDAP Profile:Service Discovery Application Profile,通过该 Profile,一个 Bluetooth 设备可以找到其他 Bluetooth 设备提供的服务,以及查询相关的信息。

  • SPP

全称 Serial Port Profile,定义了如何在两台 BT 设备之间建立虚拟串口并进行连接。

例如,在两台电脑或者 Labtop 之间就可以建立这种连接,如下图所示:

 

  • GOEP

GOEP Profile:Generic Object Exchange Profile,通用对象交换。这个 Profile 的名字有些费解,它定义的是数据的传输,包括同步,文件传输,或者推送其他的数据。可以理解成与内容无关的传输层协议,可以被任何应用用来传输自己定义的数据对象。

  • A2DP

A2DP 全名是 Advenced Audio Distribution Profile 蓝牙音频传输模型协定。A2DP 规定了使用蓝牙非同步传输信道方式,传输高质量音乐文件数据的协议堆栈软件和使用方法,基于该协议就能通过以蓝牙方式传输高品质的音乐了,这个技术可以利用立体声蓝牙耳机来收听手机中的音乐了。

所谓的蓝牙其实包括很多版本以及小的功能规范子集,其中一个叫做 A2DP (Advenced Audio Distribution Profile)的,是专门为使用蓝牙传送立体声音乐而制定的只要两个蓝牙设备均支持这种规范,那么即可实现无线传送立体声音乐。

  • DUN

全称 Dial-up Networking(DUN)Profile,实现一台蓝牙设备通过另外一个带无线功能的蓝牙设备共享上网。

  • AVRCP

AVRCP(Audio/Video Remote Control Profile),也就是音频/视频远程控制配置文件。

AVRCP 设计用于提供控制 TV、Hi-Fi 设备等的标准接口。此配置文件用于许可单个控制设备(或其他设备)控制所有用户可以接入的 A/V 设备。它可以与 A2DP 或 VDP配合使用。

AVRCP 定义了如何控制流媒体的特征。包括暂停、停止、启动重放、音量控制及其它类型的远程控制操作。AVRCP 定义了两个角色,即控制器和目标设备。控制器通常为远程控制设备,而目标设备为特征可以更改的设备。在 AVRCP 中,控制器将检测到的用户操作翻译为 A/V 控制信号,然后再将其传输至远程 Bluetooth 设备。对于随身听类型的媒体播放器,控制设备可以是允许跳过音轨的耳机,而目标设备则是实际的播放器。常规红外遥控器的可用功能可以在此协议中实现。

AVRCP 协议规定了 AV/C 数字接口命令集(AV/C 命令集,由 1394 行业协会定义)的应用范围,实现了简化实施和易操作性。此协议为控制消息采用了 AV/C 设备模式和命令格式,这些消息可以通过音频/视频控制传输协议 (AVCTP) 传输。

  • HID

HID 全称 Human Interface Device Profile ,即人机接口设备 Profile。像键鼠类应用,通常它的 Profile 是属于 HID 类的。

  • 三、解构蓝牙地址以及蓝牙 MAC 地址查询

Bluetooth Device Address 蓝牙设备地址可分为两类:公开设备地址(public device address)和随机地址(random device address)。Bluetooth Address 即 Public address ,并不针对 BLE 的 random address。公开设备地址需要向 IEEE 协会申请,是需要购买的,但是可以保证地址的唯一性。Bluetooth Address(BD_ADDR):是制造商分配给每个蓝牙设备的唯一 48 位。它是用来唯一识别一个物理设备的标识。正常情况下,该地址需要向IEEE 申请(购买),可以确保地址的唯一性。蓝牙地址通常显示为 6 个字节,以 16 进制表示,用冒号分隔(示例:- 00:11:22:33:FF:EE )。其中,蓝牙地址的 upper part(即most-significant 24 bits)被称为 Organizationally Unique Identifier(OUI)。它可以用来确定设备的制造商。OUI 是由电气和电子工程师协会IEEE Assigned。另外,蓝牙设备地址还被用来在蓝牙设备之间的无线通信中确定跳频模式。

  • Bluetooth Address Structure:

由三部分组成:NAP,UAP,LAP

举例如下图所示:


从图可知:OUI 包含 NAP 和 UAP 两部分。其中 NAP(Non-significant Address Part)部分 2 字节,为 OUI 的前 16 位;NAP 值,用于跳频同步帧。另外,UAP(upper address part)1 字节,包含剩余的 8 位 OUI;UAP 值,被用作为各种蓝牙规范算法中的种子。     除了 OUI 之外,剩下的 3 字节,为 LAP(Lower Address Part),这部分蓝牙地址由设备供应商自己分配。LAP 值,作为每一个 transmitted Frame中 Access Code 的一部分,来唯一地标识蓝牙设备。LAP 和 UAP 构成蓝牙地址的重要地址部分(SAP)。

解决的问题:

从 Bluetooth Address 的构成来看,属于设备商自己定义的部分,只有 LAP Part,即最多可以定义 2^24=16777216 个设备地址?但是这似乎对于某些大厂,如 Apple、HUAWEI 来讲,不够用,怎么办?目前看来,最主要的解决方式是,每家公司多申请一些 OUI,比如 Apple就申请了几十个之多。那么怎样通过地址,查询到厂商的信息呢?

可以输入网址 https://macaddresschanger.com/bluetooth-mac-lookup

Click the “Lookup”,就可得到结果:

  • 这一套不适合 BLE 的 Random Address ?

是的。因为 Random Address 的设备地址不是固定分配的,而是在设备启动后随机生成的,而且会根据一定的周期发生变化。它的出现正是为了规避 Public Address申请/维护成本高、复杂等的问题的,当然这主要是可以保证地址可变,更安全。

 

  • 四、总结

以上则是对蓝牙 Profile 以及蓝牙地址的介绍,BLE 的应用还是相当广泛的,我们如果要继续钻研这个技术方向,必须要对 Profile 以及蓝牙框架有相当深的理解。后续会为大家继续推送关于蓝牙基础知识以及基于 NXP QN9080 的键鼠应用的技术文章,请多多关注。

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。


路过

雷人

握手

鲜花

鸡蛋

相关阅读

QQ|关于本站|小黑屋|Archiver|手机版|无线电爱好网 ( 粤ICP备15040352号 ) 无线电爱好技术交流5 无线电爱好技术交流1无线电爱好技术交流9开关电源讨论群LED照明应用、电源无线电爱好技术交流4无线电爱好技术交流8无线电爱好技术交流10无线电爱好技术交流11

粤公网安备 44030702001224号

GMT+8, 2022-5-13 16:36 , Processed in 0.140401 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

返回顶部