10 分钟路由器 CSI 质量审计:平均 12.68Hz,最大间隔 2.37 秒

作者 Wu Jun · 更新于 2026-10-29 · Wi-Fi CSI, 数据质量, 采样率, GL-MT6000, MT7986, 时间序列 · 约 4 分钟

很多 CSI 教程只给出平均包率或平均测量率。但一个平均值不能证明这份抓包具有均匀时间轴。本文重新打开项目公开的 10 分钟 GL-MT6000 原始文件,直接审计时间轴、链完整度与链路质量。

证据等级 E:下面的数字全部来自本项目公开原始文件和文末审计脚本。抓包没有人、呼吸或跌倒事件的真值, 因此它能证明采集质量,不能证明感知准确率 [1] [2]。

核心结果

文件包含 57,293 条链记录、7,609 个由 chain_info bit15 闭合的测量组,时间跨度 599.924 秒。 进一步要求每条记录都是 256 子载波,且组内至少有一个非零 I/Q 块后,剩下 7,608 个可用测量组。

数量 实测
源文件大小 / SHA-256 60,612,922 字节 / 527466ce…6a440
抓包时长 599.924 秒
链记录 57,293
bit15 闭合组 7,609
可用 256 子载波组 7,608
可用的 8 链 / 4 链组 6,714 / 894
被质量门隔离的 64 子载波组 1
末尾未闭合记录 1
组间隔中位数 41.019ms
第 95 / 99 百分位间隔 321.838 / 945.690ms
最大间隔 2.373 秒
间隔超过 1 / 2 / 5 秒 57 / 2 / 0 次
RSSI 最小 / 平均 / 最大 -48 / -31.30 / -26dBm
SNR 最小 / 平均 / 最大 52 / 53.29 / 55dB

CSI 测量间隔分布与 CDF

7,607 个可用测量组间隔的分布。上图省略 57 个大于 1 秒的间隔,以便看清常见的突发结构;下图给出经验 CDF 与长空档边界。

平均测量率不等于采样时钟

用全部闭合组除以抓包时长,约为 12.683 组/秒;在可用组时间轴上取间隔倒数的平均值,约为 12.680Hz。 两者都是有意义的摘要,但它们不表示每隔 78.9ms 就准时到一个样本。

真实间隔具有强烈的突发性:

这就是只写“12.68Hz”不完整的原因。频谱估计需要为每个样本指定时间;如果处理代码忽略长空档, 插值会把缺失数据变成虚假的低频能量。呼吸、心率与事件检测恰好会寻找这一频带中的细小周期变化, 因此这个错误会直接影响结论。

10 分钟 CSI 时间轴与链路质量

上图:对数尺度的组间隔;中图:每组链记录数;下图:RSSI 与 SNR。约 370 秒附近能明显看到时间模式发生变化。 抓包没有同步记录发包脚本状态或客户端省电状态,因此本文不编造这一变化的具体原因。

这段可见的状态变化也是警告:同一个 10 分钟文件里可能包含不止一种采集状态。把整段拼成一个平稳时间序列, 再做一次频谱估计,可能把不同流量行为混在一起。

4 链组和 8 链组都真实存在

抓包中有:

4 链组不是解析器错觉。把 57,293 除以 8 得到约 7,162,会悄悄丢掉大量 4 链测量;按 bit15 分组才得到 7,609 个闭合组。

完整分析流程后面还会剔除 25 个零值过多的组,使用 7,583 次测量,对应约 12.64Hz。这个分母与 7,609 个闭合组不同,所以本文把过滤规则写清楚,而不把所有“CSI Hz”数字当成可以互换。

方法定义

本次审计采用以下口径:

  1. 记录:外层容器中的一条记录,含 24 字节 CSI 头和 I/Q 载荷。
  2. 测量组:从上一组结束后的第一条记录,到当前 bit15 置位的记录为止。
  3. 组时间戳:组内第一条链记录的外层时间戳。
  4. 可用组:组内每条记录都是 256 子载波,且至少一个 I/Q 块非零。
  5. 间隔:相邻两个可用组时间戳之差。
  6. 长空档:超过给定阈值的正间隔;本文不推断空档原因。

脚本在统计前不做平滑、不插值,也不删除长间隔。这是有意设计:先让算法可能隐藏的时间轴问题显式暴露出来。

建模前的七道质量门

  1. 文件完整性:核对公开分片哈希与整文件 SHA-256。
  2. 记录解析:确认没有异常载荷长度,也没有未读取的尾部字节。
  3. 测量分组:按 bit15 闭合一次测量,绝不拿总记录数除以猜测的链数。
  4. 子载波形状:隔离 data_num 不是预期 256 的测量组。
  5. I/Q 有效性:组内所有链都没有可用非零块时,拒绝该组。
  6. 时间轴审计:报告样本数、时长、中位数、p95、p99、最大值及超过分析阈值的间隔数。
  7. 非平稳性检查:画出整段间隔与链路质量;确认状态后,再选择连续分析窗口。

这些质量门不会“免费净化”数据。它们的作用是让每一次排除都有明确规则、可以复现。

这份抓包能证明什么

现有证据支持以下有限结论:

它不能证明:

这个边界与 CSI 感知文献的原则一致:论文中的方法可能成立,但本地硬件、时间轴、房间和真值仍要单独验证 [3]。

复现与下载

原始文件为 DOI 10.5281/zenodo.23434789 的 10 分钟公开抓包。 下一步不是换一个更大的分类器,而是加入同步真值日志、固定发包负载,并让分析窗口遵守上面这些长空档。

参考与数据来源

本文的每条外部结论都标注来源与证据等级(分级标准);标注 E 级的是本项目可复现的实测数据。

  1. E 级 · 本项目实测 本项目 10 分钟实测抓包(57,293 条 / 600.0 s,SHA-256 00373f83…95e2)
    Router CSI Lab · 2026
    okwujun.pw/zh/datasets/ · 核实: 分片重组逐字节校验通过(2026-10-11) · 本地原始母片 SHA-256 为 00373f83…95e2;公开下载的是去标识派生文件,SHA-256 为 527466ce…a440,两者不可混用。
  2. E 级 · 本项目实测 Router CSI Lab — GL-MT6000 (MT7986) Wi-Fi CSI dataset, 10 s sample + 10 min capture
    Router CSI Lab · 2026
    doi:10.5281/zenodo.23434789 · 核实: CC BY 4.0;SHA-256 已发布;Zenodo DOI 10.5281/zenodo.23434789 · 数据集已获 Zenodo DOI(10.5281/zenodo.23434789),可直接引用。
  3. A 级 · 标准/综述 WiFi Sensing with Channel State Information: A Survey
    W. Ma, W. Zhou, X. Wang · ACM Computing Surveys · 2019
    doi:10.1145/3310194 · 被引 857 · 核实: CrossRef API, 2026-10-11 · 领域内最常被引用的 CSI 感知综述(被引 857 次,核实于 CrossRef)。
  4. E 级 · 本项目实测 Router CSI Toolkit — 采集/分析/守护脚本(MIT,公开仓库)
    Router CSI Lab · 2026
    github.com/jjjwu/router-csi-toolkit · 核实: GitHub API 于 2026-11-02 核实公开仓库、抓包质量预检、成功 CI 与 v0.1.3 Release;归档 SHA-256 为 59f144c0…adea7 · 公开版含无第三方依赖的抓包质量预检;网页端检查器使用同一容器定义和边界口径。