BLE链路层空口包--等时物理信道PDU
想象一下这样的场景你戴着无线耳机听音乐左耳和右耳的声音必须严格同步否则音乐就会变得支离破碎或者在一个大型会议室里多个听众的助听器需要同时接收同一声源不能有丝毫延迟。这些场景对蓝牙提出了一个传统BLE难以满足的要求——等时Isochronous传输。蓝牙5.2引入的等时物理信道Isochronous Physical Channel正是为这类“时间敏感”的数据传输而设计的。而承载这些数据的就是本文要深入剖析的主角——等时物理信道PDU。1. 什么是等时传输在深入了解PDU之前先搞清楚一个概念等时Isochronous到底是什么意思蓝牙协议中有三种数据传输方式传输类型特点典型应用异步Asynchronous数据必须可靠送达时间不重要文件传输、网页浏览同步Synchronous数据有固定的时间约束速率恒定传统蓝牙语音等时Isochronous数据有时间约束但速率可以变化LE Audio音频流等时传输的核心是数据有“保质期”——如果在规定时间内没有成功发送数据就会被丢弃因为“过期的数据”对接收端已经没有意义。等时物理信道正是为实现这种传输而设计的专用信道它独立于传统的广播信道和数据信道2. PDU的整体结构等时物理信道PDU的格式与数据信道PDU类似但也有自己的特点。它的基本结构是Header16位包含控制信息具体格式取决于PDU用于CIS还是BISPayload0-251字节实际传输的等时数据MIC可选32位当数据需要加密时存在用于消息完整性检查等时物理信道PDU分为两种类型PDU类型全称适用场景通信方式CIS PDUConnected Isochronous PDU连接型等时流点对点双向BIS PDUBroadcast Isochronous PDU广播型等时流一对多单向3. CIS PDUCISConnected Isochronous Stream是在已建立BLE连接的两个设备之间传输等时数据的逻辑传输方式。它最典型的应用就是LE Audio的“多流音频”——比如手机同时向左耳机和右耳机发送同步的音频流。3.1 CIS PDU头部格式CIS PDU的头部为16位布局如下各字段的含义如下字段位数描述LLID2 bits链路层标识符指示PDU类型SN1 bit序列号类似数据信道PDUNESN1 bit下一个期望的序列号用于ACK/重传CIE1 bit关闭等时事件Close Isochronous EventNPI1 bit空PDU指示Null PDU IndicatorRFU2 bits保留供未来使用Length8 bits有效载荷长度3.2 LLID区分数据类型与数据信道PDU类似CIS PDU也使用LLID来区分载荷类型3.3 SN与NESN有确认的重传机制CIS支持双向通信使用确认协议。SN和NESN的作用与数据信道PDU完全相同发送端每发一个新包SN翻转一次接收端通过NESN告诉发送端期望的下一个SN如果NESN与期望不符发送端会重传数据包这意味着CIS在保证时间约束的同时也提供了可靠性。3.4 CIE提前结束事件的“快捷开关”CIEClose Isochronous Event是CIS PDU独有的控制位。当接收端在某个子事件中成功收到数据后可以将CIE置1告诉发送端这个等时事件可以提前结束不需要等待所有预定的子事件都执行完。这有助于节省功耗和空口资源。3.5 NPI识别“空包”NPINull PDU Indicator用于指示这是一个空PDU。当设备需要发送ACK但没有实际数据时可以发送一个带NPI1的空包既完成了确认又节省了空口带宽。4. BIS PDUBISBroadcast Isochronous Stream用于一对多的广播等时通信。它的典型应用是Auracast广播音频——一个音频源设备可以向无数个接收设备同时广播音频流。BIS与CIS最根本的区别是BIS没有确认机制。数据从广播源单向发出接收端不会回复任何ACK。这降低了复杂性但也意味着无法保证每个接收端都能成功收到数据。4.1 BIS PDU头部格式BIS PDU的头部也是16位但布局比CIS简单得多4.2 LLID与CIS相同但用途略有不同BIS PDU的LLID同样用于区分数据类型但由于BIS没有ACK机制SN和NESN这些流控位都不需要了。4.3 CSSN与CSTF广播控制的“信号灯”BIS引入了两个CIS中没有的控制位CSSNControl Subevent Sequence Number3位控制子事件的序列号CSTFControl Subevent Transmission Flag1位控制子事件传输标志这两个字段用于在BIS事件中指示是否存在控制子事件Control Subevent为什么BIS需要控制子事件在连接型的CIS中控制信息如信道映射更新可以通过ACL连接来传输。但BIS是无连接的广播广播源无法通过ACL告诉所有接收端“我要换信道了”。因此BIS需要通过控制子事件来向所有接收端广播控制信息。CSTF标志告诉接收端“这个BIS事件后面跟着一个控制子事件请注意接收”。CSSN则帮助接收端识别控制信息的版本变化。5. 子事件Subevent无论是CIS还是BIS等时物理信道的数据传输都是以事件Event和子事件Subevent为单位组织的。一个等时事件包含一个或多个子事件。每个子事件是在特定时间点上的一段传输机会CIS中中央Central在子事件中发送一次外设Peripheral响应一次BIS中广播源在子事件中发送数据接收端只收不发子事件的数量是可配置的更多的子事件意味着更多的重传机会但也意味着更高的功耗和空口占用。5.1 CIS的刷新超时Flush Timeout在CIS中每个数据载荷都有一个刷新超时Flush Timeout, FT参数。它定义了该数据包在多少个CIS事件内必须被成功发送收到ACK。如果在FT个事件内没有成功这个数据包就会被丢弃Flush——因为它已经“过期”了。这正是等时传输的精髓宁可丢弃过期的数据也不要让接收端等到“迟到的数据”。5.2 BIS的预传输Pre-transmissionBIS由于没有ACK无法通过重传来提高可靠性。但它可以通过预传输Pre-transmission来弥补——在数据实际需要的时刻之前提前多次发送同一个数据包增加接收端成功收到的概率。6. CIS与BIS对比特性CIS PDUBIS PDU通信方式点对点双向一对多单向确认机制有SN/NESN无头部控制位SN、NESN、CIE、NPICSSN、CSTF典型应用手机→耳机多流音频Auracast广播音频可靠性有重传保证靠预传输提升概率7. 总结等时物理信道PDU是蓝牙LE Audio的基石。它的设计体现了对时间敏感性的深刻理解CIS PDU通过SN/NESN提供可靠的双向等时传输CIE让事件可以提前结束FT机制确保过期的数据被及时丢弃BIS PDU通过CSSN/CSTF支持单向广播等时传输控制子事件弥补了无连接场景下控制信息无法传递的问题子事件机制让等时传输拥有了“时间切片”的精细调度能力重传和预传输则在可靠性和时效性之间找到了平衡无论是手机与耳机之间的多流音频还是Auracast的公共广播音频这些看似简单的用户体验背后都依赖于等时物理信道PDU在链路层的精密设计。理解了它你就理解了LE Audio的底层密码。

相关新闻

Node-RED实战:快速构建HTTP API与避坑指南

Node-RED实战:快速构建HTTP API与避坑指南

1. 从零开始:为什么选择Node-RED处理HTTP请求如果你正在寻找一种能快速连接各种API、设备或服务,又不想写太多代码的方法,那么Node-RED很可能就是你的答案。我第一次接触Node-RED,就是被它处理HTTP请求的便捷性所吸引。当时我需要…

2026/10/13 12:01:03 阅读更多 →
XIAO ESP32C6物联网开发板Arduino环境搭建与Wi-Fi/BLE实战指南

XIAO ESP32C6物联网开发板Arduino环境搭建与Wi-Fi/BLE实战指南

1. 从零上手:为什么选择XIAO ESP32C6作为你的下一个物联网项目核心?如果你最近在寻找一款尺寸迷你、性能强劲且支持最新无线协议的物联网开发板,那么Seeed Studio的XIAO ESP32C6很可能已经进入了你的视野。作为一个经常折腾各种嵌入式设备的开…

2026/10/13 20:39:07 阅读更多 →
数据中台选型:隐性能力决定90%成败的关键要素

数据中台选型:隐性能力决定90%成败的关键要素

1. 数据中台的冰山隐喻:表面功能与底层支撑的辩证关系在数据中台建设领域,存在一个鲜为人知却至关重要的现象:企业决策者往往只关注那些看得见的10%功能特性,而忽视了支撑系统长期稳定运行的90%隐性要素。这种现象与心理学上的&qu…

2026/10/12 19:07:53 阅读更多 →

最新新闻

BL0940电能计量芯片设计实战:从硬件采样到量产校准

BL0940电能计量芯片设计实战:从硬件采样到量产校准

简介:面向硬件与嵌入式开发者的BL0940电能计量专用电路设计资料,涵盖芯片外围电路、代码实现与完整工程文件。资料围绕BL0940在智能电网、智能家居、工业自动化等场景的高精度电能测量需求,重点讲解模拟前端信号调理、数字信号处理及RS485/Mo…

2026/10/13 20:38:51 阅读更多 →
SYCL编码实践与编译设计:从缓冲区内核到设备二进制

SYCL编码实践与编译设计:从缓冲区内核到设备二进制

SYCL这套东西,我前后花了不少时间才把它从“会写一点点”掰扯到“敢说懂了一层”的状态。前两篇笔记里,我把队列、处理器、缓冲区这些基础组件过了一遍,顺手整理了几个能跑通的最小例子。这篇是第三篇,我打算把重心换一下&#xf…

2026/10/13 20:38:51 阅读更多 →
AI日报制作全流程:从信息源筛选到自动化辅助的工程实践

AI日报制作全流程:从信息源筛选到自动化辅助的工程实践

1. 一份AI日报的诞生逻辑:为什么值得认真做每天早上花十五分钟翻一遍行业动态,这个习惯我坚持了快三年。最开始只是自己看,后来顺手整理成几条发在群里,再后来有朋友说“你干脆做成日报吧,省得我们到处翻”。于是就有了…

2026/10/13 20:38:51 阅读更多 →
PIPE4.3.0 Petri网建模仿真实战:从建模到验证避坑指南

PIPE4.3.0 Petri网建模仿真实战:从建模到验证避坑指南

简介:PIPE 4.3.0 是一款基于 Petri 网的可视化建模与仿真工具,面向软件工程、计算机科学、流程管理等领域的研究者与工程师。它通过图形化的库所(Place)、变迁(Transition)和弧线构建系统模型,支…

2026/10/13 20:38:51 阅读更多 →
Firebase-Gantt:DHTMLX甘特图实时协同的轻量级适配方案

Firebase-Gantt:DHTMLX甘特图实时协同的轻量级适配方案

简介:这是一份面向Web前端开发者与实时协作应用构建者的JavaScript工具库,专为将dhtmlxGantt甘特图组件无缝集成至Firebase后端而设计。它解决了传统甘特图数据需手动同步、难以实现实时协同编辑与离线操作的痛点,适用于项目管理SaaS、团队任…

2026/10/13 20:38:51 阅读更多 →
学编程前先做一件事:用“问题倒推法”明确目标,让学习效率翻倍

学编程前先做一件事:用“问题倒推法”明确目标,让学习效率翻倍

很多人问我:编程到底怎么学才能不痛苦?我带过的新人不少,也看过很多自学者的成长路径。有一个人让我印象特别深,他学某个语言学了大半年,语法书翻了三遍,视频课存了几十个G,收藏夹里堆满了各种教…

2026/10/13 20:37:49 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →