Bluetooth技术学习笔记 ——蓝牙核心系统架构
参考:蓝牙协议 core_v5.0
PALs:Protocol Adaptation Layers ,协议适配层。
AMPs:Alternate MAC/PHYs。
L2CAP:Logical Link Control and Adaptation protocol ,逻辑链路控制与适配协议。
HCI:Host Controller Interface,主机控制器接口。
1. 蓝牙核心系统架构
蓝牙核心系统由主机、主控制器,零个或多个辅控制器组成。
蓝牙核心系统架构如下图所示:
2. 最小配置
(1)BR/EDR核心系统的最小配置包括:
- 四个底层:BR/EDR射频物理层(PHY)、链路控制器(LC)、基带资源管理器、链路管理器。
- Service Discovery Protocol :服务发现协议
- Generic Access Profile:通用访问规范
- 若BR/EDR支持AMPs,则配置中需包括:AMPs和协议适配层 (PALs)。
(2)LE核心系统的最小配置包括:
- 四个底层:BR/EDR射频物理层(PHY)、链路控制器(LC)、基带资源管理器、链路管理器。
- Security Manage:安全管理
- Attribute Protocol :属性协议
- Generic Attribute Profile:通用属性规范
- Generic Access Profile:通用访问规范
3. 主机(Host)架构模块
(1)Channel Manager:信道管理器,主要负责创建、管理和关闭用于传输服务协议和应用层数据流的L2CAP信道。
- 信道管理器利用L2CAP协议与远程(对端)终端上的信道管理器进行交互,以创建L2CAP信道。
- 信道管理器与本地链路管理器或AMP PAL进行交互,以创建新的逻辑链路和配置这些链路,从而为传输数据提供所需的服务质量。
(2)L2CAP Resource Manager:L2CAP资源管理器。
- 主要负责管理传递给基带PDU片段的有序性和信道之间的调度, 以确保具有QoS承诺的L2CAP通道不会因为控制器资源耗尽而被拒绝访问物理通道。
- 还可能执行流量一致性政策,以保证提交的L2CAP SDU在协商的QoS范围内。
(3)Security Manager Protocol:安全管理协议,端对端协议。
- 生成加密秘钥和身份标识秘钥,并存储。
- 使用专有的固有的L2CAP信道。
- 生成随机地址,并将随机地址解析为已知设备标识。
- 直接与控制器交互,在加密和配对过程中提供加密和鉴权的秘钥。
(4)Attribute Protocol:属性协议,端对端协议,服务器和客户端之间的协议。
- ATT客户端通过专用的固定L2CAP通道与远程设备上的ATT服务端通信。
- ATT客户端向ATT服务端发送命令、请求和确认。
- ATT服务端向客户端发送响应、通知和指示。
- ATT客户端的命令和请求提供了在ATT服务端的对等设备上读、写属性值的方法。
(5)Generic Attribute Profile:通用属性规范,描述属性服务器的功能,选择性地描述属性客户端的功能。
- 描述了服务层次、特点,以及属性服务器的属性。
- 提供发现、读、写以及服务特点和属性的接口。
(6)AMP Manager Protocol,AMP管理协议。
- 使用专有的L2CAP信号信道与远程设备的AMP管理器进行通信。
- 直接与AMP PAL交互,以便于AMP控制。
- 发现远程AMP,并确定其有效性。
- 收集远程AMP信息,以便于建立和管理AMP物理链路。
(7)Generic Access Profile:通用访问规范,描述所有蓝牙设备的通用基本功能。
- GAP服务包括:设备发现、连接模式、安全、鉴权、服务发现、关联模型。
4. BR/EDR/LE控制器架构模块(主控制器)
(1)Device Manager:设备管理器,用于控制蓝牙设备的行为,负责除数据传输外的所有蓝牙系统的操作,包括:
- 搜索附近的蓝牙设备、连接蓝牙设备、标记本地蓝牙设备为可发现的、可连接的等。
- 为了执行相应的功能,设备管理器需要访问基带资源管理器的传输媒介。
- 设备资源管理器通过一系列HCI命令控制本地设备的行为,如管理设备名字,存储链路秘钥等。
(2)Link Manager:链路管理器,负责创建、修改或释放逻辑链路,以及更新设备之间的相关物理链路参数。
- 链路管理器利用链路管理协议(LMP, ER/EDR)或链路层协议(LL,LE)与远程蓝牙设备的链路管理器通信。
- LM、LL协议允许在设备之间创建新的逻辑链路和逻辑通道,控制逻辑链路和通道的属性,如使能链路安全、调整BR/EDR物理链路的发送功率、逻辑链路的QoS设置。
(3)Baseband Resource Manager:基带资源管理器,负责所有无线媒介的访问,它主要有两个功能:
- 时间调度器,负责给已协商约定的所有访问实体分配物理信道时间。
- 协商约定,与访问实体协商访问参数,以便于给用户程序提供一个确定的QoS质量。
- 时间调度和协商约定必须考虑到需要主控制器的所用行为,包括已连接设备在逻辑链路和逻辑通道上的所有数据交互,执行查询、连接、可被发现、可连接、可读等的无线媒介使用情况。
(4)Link Controller:链路控制器。
- 编解码蓝牙数据包。蓝牙数据包为物理信道、逻辑传输和逻辑链路的相关数据负载和参数。
- 携带链路控制协议信令( BR/EDR)或链路层协议(LE),包括流控、确认、重传请求信令。
(5)PHY:物理层,负责物理信道上数据的发送和接收。
5. AMP控制器架构模块(辅控制器)
(1)AMP HCI:AMP主机控制器接口,AMP控制器与主机之间的逻辑接口。
- 支持AMPs需要额外的与AMP物理信号和逻辑信道管理、QoS、流控相关的HCI命令和事件。
- 一个AMP控制器对应一个HCI逻辑实体,一个BR/EDR控制器对应一个HCI逻辑实体。当多个控制器在同一个物理单元时,一个物理HCI传输层管理多个复用在同一物理传输线上的控制器。
(2)AMP PAL:AMP协议适应层,AMP MAC与Host之间的接口。
- 将Host命令或事件转化成MAC服务命令或事件,将MAC服务命令或事件转化为host能明白的命令和事件。
- 支持AMP信道管理、基于特定流控模板的数据流量管理、电源效率管理等。
(3)AMP MAC:AMP MAC层。
(4)AMP PHY:AMP物理层。
Bluetooth技术学习笔记 ——蓝牙核心系统架构相关推荐
- 【Android系统蓝牙开发】蓝牙基础知识-蓝牙核心系统架构
什么是蓝牙? 在开启基于蓝牙Spec v5.2的学习前,我们先了解下什么是蓝牙?蓝牙在我们日常生活中又存在哪些实际应用呢? 蓝牙无线技术是一种短距离无线通信系统,其核心特性主要是以下三点: robus ...
- 【学习笔记】秒杀系统架构设计
秒杀其实主要解决两个问题 并发读 VS 并发写 并发读的核心优化理念是尽量减少用户到服务端来"读"数据,或者让他们读更少的数据 并发写的处理原则也一样,它要求我们在数据库层面独立出 ...
- Bluetooth技术学习笔记 ——GAP
佛系学习,想学就学,不想学就不学. core_v5.0 vol 3. Part C GAP:Generic access profile,通用访问协议,定义了基本过程,包括设备发现,链路管理,配置,安 ...
- Bluetooth技术学习笔记 ——HFP控制功能之连接管理
参考:HFP_v1.7.1 SLC:Service Level Connection,服务级连接 AG:Audio Gateway,音频网关 HF,hands-free,免提 Service Leve ...
- Bluetooth技术学习笔记 ——HFP之Call
1. 来电 若收到来电,AG会一直给HF重复发送RING alerts,直到接通电话,或者拒接电话. HF在收到RING alerts后,开始响铃.铃声根据实际情况而定,或AG设置的铃声,或HF自带的 ...
- Bluetooth技术学习笔记 ——LE广播、扫描、连接参数设置
core_v5.0 vol 2. Part E 1. 广播参数设置 (1)广播间隔说明 Advertising_Interval_Min ≤ Advertising_Interval_Max 当Adv ...
- 蓝牙架构(4)—— 2 蓝牙系统架构 (2.0 核心系统架构)
Vol 1架构和术语概述 Part A 2 蓝牙系统架构 Agenda: 2.0 核心系统架构. 2.0.1 蓝牙BR/EDR最小系统. 2.0.3 蓝牙BR/EDR/LE最小系统. 2.0.4 蓝牙 ...
- 二 蓝牙系统架构 - 2.1 核心系统架构
蓝牙核心系统包括一个主机,一个主要控制器和零到多个次要控制器. 2.1.1 蓝牙BR/EDR最小系统 蓝牙BR/EDR最小核心系统包括: 控制器中四个最底层,BR/EDR射频物理层(PHY),链路控制 ...
- Android Bluetooth模块学习笔记
一.蓝牙基础知识 1.蓝牙( Bluetooth )是一种无线技术标准,可实现固定设备.移动设备和楼宇个人域网之间的短距离数据交换.蓝牙基于设备低成本的收发器芯片,传输距离近.低功耗. 2.微波频段: ...
最新文章
- tensorflow中转置卷积运算例子
- getopt实现传参自动识别
- (转)Linux环境变量的设置和查看方法
- C# 互通操作 (二)基础知识1
- CSS动画示例(上一篇是CSS过渡…)
- php _invoke 闭包,PHP新特性之闭包、匿名函数
- 【python函数】函数
- POJ3461 【KMP(粗糙模板)】
- php-5.6.2-Win32-VC11-x64.zip+ apache2.4.10 +php_xdebug-2.2.5-5.6-vc11-x86_64.dll+mysql5.6安装配置
- 【泛微E9开发】E9客户端下载页面修改方法
- 模电笔记之共射放大电路
- 很全很强大的图形学相关的论文和源码
- 夏天第一图noob sky
- 雪豹学院主办“2019年《ASM敏捷大咖》见修系列公开课”深圳宝安站活动圆满结束
- 把一个人的特点写具体作文_把一个人的特点写具体
- 冷门节日借势营销策略分析
- GTA5 无法登陆,无法创建登陆令牌问题解决
- 【3】天猫精灵开放实验平台实验— 切换意图,参数传递
- 电脑的windows键已被停用解决方法
- 第十六章:垃圾回收相关概念
热门文章
- 2022应届校招面试总结
- 计算机排版打字操作,五笔字型与计算机排版培训教程2版 第9章 打字与排版的首选—Word 2007.ppt...
- (2)二叉树由后序(LRD)和中序(LDR)得到前序(DLR)
- 程序员想拿高薪,你还缺了这些,在寒冬下如何选择?创业or进阶
- 使用机器人工具箱在matlab上进行六轴机器人(6R)运动学建模【个人简记】
- typora中插入LaTeX数学公式
- Cross_entropy和softmax
- 用计算机命令合成机械头像,PHOTOSHOP合成的逼真机械头像
- Qt OpenGL(08)通过递归细分正二十面体逼近球面
- 一个汉字转拼音的小工具