ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

WiFi调优必读:SNR/RSSI与MCS对照表及现场查表方法

WiFi调优必读:SNR/RSSI与MCS对照表及现场查表方法 简介这是一份面向无线网络工程师、运维人员及Wi-Fi协议学习者的802.11n/802.11ac信噪比SNR与接收信号强度RSSI标准参数速查文档。内容以表格形式覆盖HT与VHT模式整理MCS 0-9在20/40/80/160MHz带宽下的最低SNR要求、RSSI阈值及对应数据速率区分800ns与400ns保护间隔、不同空间流数量并列出BPSK、QPSK、16-QAM、64-QAM、256-QAM等调制编码方式下的指标借助这些对应关系可在无线网络规划中快速评估信号余量、选择合适的MCS和带宽也能用于排查弱覆盖或干扰导致的速率下降。压缩包内为单个PDF文件大小约30KB便于离线查阅目前已有368人学习/下载适合作为现场调优和方案对比的便捷参考。1. 为什么 wifi 现场调优要带着一张 SNR/RSSI 参数表进场某写字楼客服区改造AP 信号强度显示 -58dBm终端协商速率却始终上不去徘徊在 130Mbps 左右换了三个安装位置都没解决。后来把接入点的底噪数据抓出来才发现-102dBm 的底噪上面叠加了一段 -85dBm 的干扰表观信号看着满格实际信噪比只有 27dB已经撑不起 256-QAM 高阶调制了。这件事之后我把 802.11n/HT 和 802.11ac/VHT 的 MCS、SNR、RSSI 标准参数整理成一张随手能查的对照表进场先读表再谈穿墙、换天线和限速策略。这份资源解决的就是这一类问题它按 MCS 索引、调制编码方式、最小 SNR、对应 RSSI 阈值、信道带宽以及空间流数量把 20/40/80/160MHz 下的数据速率和接收门限列在同一张表里。对 WiFi 运维、无线覆盖设计、协议测试人员来说它是一份链路层查表工具不是泛泛的信号科普。下面我会拆解这张表的读法、换算逻辑和现场应用最后给一个可以带进项目的速查思路。2. 读懂表头MCS、带宽、空间流和 GI 取值之间的换算关系2.1 表的分组逻辑HT/VHT、信道带宽与空间流拿到这张参数表的第一眼印象是“列很多、像乱码”其实它的分组非常规律。每一行对应一个 MCS 索引从 0 到 9每一组列是“数据速率、最小 SNR、RSSI”的三元组而这样的三元组会按“带宽 × 空间流”组合展开。802.11nHT只支持 20MHz 和 40MHz 两种信道带宽802.11acVHT在它基础上增加了 80MHz 和 160MHz所以表里出现了 20/40/80/160 四段。空间流方面HT 最多支持 4 流VHT 最多支持 8 流这份资源采集的是工程里最常用的 1、2、3 流三档覆盖了绝大多数 AP 和终端组合。查表时先锁定三个维度信道带宽、空间流数量、MCS 索引。比如要在 80MHz 带宽、单空间流下查 MCS9 的门限就找 VHT、80MHz、1SS 那一组得到最小 SNR 约 37dBRSSI 约 -51dBm。如果只看“MCS9”就到处找很容易拿 20MHz 或 40MHz 的列来套结果偏差超过 9dB。提示表中 1SS、2SS、3SS 对应的数据速率是成倍叠加的MCS 索引相同不代表速率相同。查表前先把“几流、多宽”定下来否则容易拿错列。看表时还会注意到每组速率有两个值分别对应 800ns 和 400ns 两种保护间隔GI。400ns 短保护间隔能压缩符号之间的等待时间让速率提升约 11%。例如单流 20MHz 下 MCS9 的速率800ns 是 87.8Mbps400ns 是 97.5Mbps。实际抓包工具里显示的大多是 400ns GI 下的速率因为 802.11ac 设备默认会用短 GI除非遇到多径特别严重的环境才会回退。2.2 MCS 0-9 的调制编码映射MCS 是 Modulation and Coding Scheme 的缩写它把“调制方式”和“编码率”合并成一个索引。表里出现的调制方式从低到高依次是 BPSK、QPSK、16-QAM、64-QAM、256-QAM具体映射如下MCS 索引调制方式编码率单流 20MHz 速率800/400ns0BPSK1/26.5 / 7.2 Mbps1QPSK1/213 / 14.4 Mbps2QPSK3/419.5 / 21.7 Mbps316-QAM1/226 / 28.9 Mbps416-QAM3/439 / 43.3 Mbps564-QAM2/352 / 57.8 Mbps664-QAM3/458.5 / 65 Mbps764-QAM5/665 / 72.2 Mbps8256-QAM3/478 / 86.7 Mbps9256-QAM5/687.8 / 97.5 Mbps调制级别越高的方案单个符号携带的比特数越多星座点之间的距离越近。256-QAM 每个符号能携带 8 个比特比 64-QAM 多 2 个比特但相邻星座点挨得很近相位噪声和幅度误差稍大一点就会判错符号所以对 SNR 的要求明显更高。这也是为什么 MCS8、MCS9 的门限比 MCS7 高出一大截而不是线性递增。编码率也要注意。同样是 QPSK编码率 1/2 和 3/4 的有效速率差了 1.5 倍但 3/4 意味着冗余保护比特更少抗误码能力更弱因此最小 SNR 从 5dB 提升到 9dB。查表时不能只看调制方式编码率一变门限就变。2.3 SNR 与 RSSI别把 dB 和 dBm 混在一起看表里的 SNR 单位是 dBRSSI 单位是 dBm物理含义完全不同。RSSI 是接收信号强度指示反映天线口收到的信号功率SNR 是信噪比等于信号功率减去噪声功率。两者之间有换算关系但不能直接画等号。举一个现场例子。终端上报 RSSI 为 -70dBm如果底噪是 -95dBmSNR 就是 25dB如果附近有干扰源把底噪抬到 -85dBmSNR 就掉到 15dB。同样的 -70dBm前者能稳定跑 MCS7 甚至 MCS8后者可能只能回退到 MCS4。只看 RSSI 判断链路质量会被底噪变化带偏。反过来RSSI 对现场布点仍然很有用因为它可以直接换算链路余量。把 AP 发射功率、天线增益、空间损耗代入链路预算算出来的接收电平就是理论上终端应该看到的 RSSI。这张表给出的 RSSI 阈值恰好可以作为“信号能不能撑起某个 MCS”的快速判据。注意不同芯片对 RSSI 的校准方式有差异同一位置用不同品牌终端读出的 RSSI 可能差 23dBm。表里的 RSSI 值适合做趋势判断和门限参考不适合跨设备做绝对对比。3. 查表三件套把最小 SNR、最小 RSSI 与协商速率对上号3.1 20MHz 单流基线MCS 0-9 的完整阈值先把最基础的场景拎出来20MHz 带宽、单空间流对应 802.11n 最典型的部署形态。这张表的这一列是所有后续推算的锚点MCS最小 SNRdB建议 RSSIdBm协商速率800ns02-826.5 Mbps15-7913 Mbps29-7719.5 Mbps311-7426 Mbps415-7039 Mbps518-6652 Mbps620-6558.5 Mbps725-6465 Mbps829-5978 Mbps931-5787.8 Mbps这里有两个容易被忽略的细节。第一MCS7 和 MCS6 之间 SNR 要求差了 5dB但速率只从 58.5Mbps 提到 65Mbps增长很有限。原因是 64-QAM 5/6 编码率接近极限需要更多 SNR 余量来保证误码率。边缘覆盖场景如果 SNR 只有 22dB硬撑 MCS7 反而会因为重传率高而实际吞吐掉得更厉害不如主动锁 MCS6。第二RSSI 从 -79 到 -77 只差 2dB但 MCS1 到 MCS2 的速率从 13Mbps 提到 19.5Mbps。现场调试时如果看到设备在这两个速率之间跳变不要急着换天线先看底噪水平。降底噪 2dB 有时比增加 2dB 信号更容易实现。3.2 2SS 与 3SS空间流数增加带来的门限累积MIMO 是 802.11n 和 802.11ac 提升速率的核心手段但空间流不是白送的。每增加一个空间流接收端需要额外的射频链路和解调能力对 SNR 的要求会整体抬高。表中单流 20MHz 的 MCS0 门限是 2dB双流变成 5dB三流变成 8dB大致呈每个流 3dB 的规律。需要注意这个 3dB 只是近似。实际表里中低阶 MCS 的偏移在 34dB 之间波动因为多流解调还要考虑流间干扰和信道相关性。现场做估算时可以按 3dB 累加但做最终方案时一定要查实际那一列。空间流数MCS0 最小 SNRMCS9 最小 SNRMCS9 协商速率20MHz/800ns1 流2dB31dB87.8 Mbps2 流5dB34dB175.5 Mbps3 流8dB37dB263.3 Mbps从这张小表能看出一个工程结论在 SNR 只有 20dB 的位置双流终端即使连上 AP也很难跑出双流速率因为双流高端 MCS 的门限已经到 30dB 以上。与其纠结空间流数不如先保证基础 SNR。很多现场“明明连了 5GHz 却只有 200Mbps”的投诉查到最后都是单流在跑因为第二个空间流的 SNR 不够。3.3 80MHz 与 160MHz带宽翻倍背后的 SNR 代价802.11ac 把带宽从 40MHz 扩展到 80MHz 和 160MHz速率确实翻倍但 SNR 门限也在同步提高。以单流 MCS9 为例带宽最小 SNR建议 RSSI协商速率800/400ns20MHz31dB-57dBm87.8 / 97.5 Mbps40MHz34dB-54dBm180 / 200 Mbps80MHz37dB-51dBm390 / 433.3 Mbps160MHz40dB-48dBm780 / 866.7 Mbps带宽每翻一倍速率翻倍但 SNR 门限也提高约 3dBRSSI 阈值相应收紧 3dBm。这意味着 160MHz 不是想开就能开的如果现场 SNR 只有 35dB80MHz 还能稳跑 MCS9160MHz 却会频繁降速到 MCS8 甚至 MCS7最终吞吐不一定比 80MHz 高。还有一层隐藏代价是干扰概率。160MHz 在 5GHz 频段要占用连续 8 个信道DFS 信道和雷达共存问题更加突出。城市环境里很多 AP 开了 160MHz 后频繁做信道切换实际体验反而不如 80MHz。大带宽适合做高密度会议室、电竞场馆这类短距离高 SNR 场景不适合做长距离覆盖。4. 链路预算与速率回退把表值换算成可执行的部署判断4.1 一条典型的 AP 到终端链路预算拿到这张表终归要落到现场。最常见的使用方式是做链路预算。以一个典型 AP 部署为例AP 发射功率 20dBm馈线损耗 1dB天线增益 3dBi终端天线增益 1dBi终端离 AP 约 30 米空间损耗按 75dB 估算。接收端 RSSI 20 - 1 3 1 - 75 -52dBm。如果此时底噪是 -95dBmSNR 就是 43dB远高于表里 160MHz MCS9 的 40dB 门限理论上可以跑满 160MHz 最高速率。但现场不会这么理想。隔一堵石膏板墙空间损耗增加 58dB隔一堵混凝土墙增加 1218dB。同样 30 米的距离隔墙后 RSSI 可能变成 -68dBmSNR 掉到 27dB。这时候按表查20MHz 下最高只能稳跑 MCS740MHz 下 MCS7 都费劲80MHz 就更不用想。我做现场方案时习惯这样算先按最远覆盖距离算 RSSI再叠加 3dB 雨衰或人体吸收余量然后反查表得到“可预期的最高 MCS”。这个 MCS 对应的速率才是设计文档里应该写的承诺速率而不是 AP 包装盒上标的理论速率。4.2 边缘覆盖下带宽与 MCS 的选择策略边缘场景是最容易把参数表用起来的地方。假设某楼宇走廊尽头测得 SNR 为 25dB终端是 2 流 802.11ac 设备怎么选带宽和 MCS按表推算20MHz 双流下MCS7 需要 28dB达不到MCS6 需要 23dB有 2dB 余量。所以 20MHz 下最高稳跑 MCS6协商速率约 117Mbps。如果切到 40MHz门限整体抬高 3dBMCS6 需要 26dB余量只剩 -1dB实际跑起来会频繁降速。结论是边缘位置用 20MHz 反而能拿到更稳定的协商速率40MHz 带来的速率翻倍被 MCS 降档抵消最终吞吐可能差不多但时延抖动更明显。这个反直觉的结论直接从表里就能读出来不需要反复试错。4.3 用 AP 统计指标反向校准表值参数表给的是理论门限现场射频环境复杂设备厂商的实现也有差异所以我会用 AP 的统计指标做反向校准。具体做法是看终端上报的 RSSI、AP 记录的底噪 SNR、以及一段时间内的 MCS 分布和重传率。如果终端 SNR 已经达到表里 MCS8 的门限但实际 MCS 分布集中在 MCS5说明链路里存在表值没覆盖的问题可能是干扰、多径、或者终端省电策略。这时候不要急着调 AP 功率先抓一个小时的底噪曲线看是否有周期性脉冲干扰。校准的方法也简单把 AP 的发射功率降低 3dB观察终端 SNR 是否同步下降 3dBMCS 是否降档。如果 SNR 降了但 MCS 没降说明之前有 3dB 以上的余量表值偏保守如果 SNR 没怎么降而 MCS 大降说明干扰主导调功率没有意义。这一招在现场非常管用能快速判断链路是噪声受限还是功率受限。5. 避坑指南SNR/RSSI 参数表落地时最常踩的五个坑5.1 RSSI 看着很好速率却上不去把 RSSI 当 SNR 用现象终端显示信号强度 -55dBm信号满格但协商速率只有 200Mbps 左右测速也上不去。原因RSSI 只代表信号功率不代表信号比噪声好多少。如果底噪被抬到 -80dBm 以上即使信号有 -55dBmSNR 也只有 25dB撑不起高阶 MCS。这个场景在办公区特别常见大量 2.4GHz 干扰设备、相邻 AP 同频、甚至 LED 驱动电源都会抬高底噪。解决用 AP 或终端的底噪读数计算 SNR再查表判断。不要看信号格数要看 SNR。部署时优先排查底噪异常常见做法是通过扫描工具先测每个信道的底噪选底噪最低的信道而不是信号最强的信道。5.2 协商速率比表值低 10% 左右忽略了 400ns GI现象查表应该跑 433.3Mbps终端却只协商到 390Mbps怎么看都差一截。原因表中同一 MCS、同一带宽下有两个速率对应 800ns 和 400ns 两种保护间隔。老设备或不支持短 GI 的终端只能用 800ns GI速率比短 GI 约低 10%11%。解决查表时先确认终端能力。大部分 802.11ac 终端支持 400ns 短 GI但部分 IoT 模组和老的 802.11n 设备不支持。现场以 800ns 值为准做下限估算短 GI 值做上限参考。5.3 高端 MCS 速率忽高忽低忽略了对端能力协商现象MCS8、MCS9 的速率在测速软件里波动剧烈同一位置一会儿 700Mbps一会儿 300Mbps。原因MCS 不是 AP 单方面决定的它是 AP 和终端根据双方能力、SNR、重传率动态协商的结果。如果终端的驱动或天线设计较差即使 SNR 够它也会主动选择低一档的 MCS。此外802.11ac 的 MCS8/9 只对 VHT 设备生效如果终端只支持 HT最高只能到 MCS7。解决用无线抓包看管理帧里的 HT/VHT 能力字段确认终端支持的最高 MCS 和空间流数。不能只看表值还要看协商结果。现场排查时优先确认对端是 2 流还是 3 流设备很多“速率不达标”问题其实是终端能力上限就摆在那里。5.4 开 160MHz 反而更慢大带宽 SNR 门限没算进去现象把 AP 从 80MHz 调到 160MHz 之后协商速率显示翻倍但实际吞吐没提升时延反而变大。原因160MHz 的 SNR 门限比 80MHz 高约 3dB在 SNR 不够的位置设备会从 MCS9 降到 MCS8 甚至 MCS7。表面速率翻倍实际有效吞吐被降档抵消。而且 160MHz 占用信道更多遇到雷达或同频干扰的概率显著上升。解决开启 160MHz 前先测量预期覆盖区域内最差位置的 SNR要求高于 40dB 才值得开。如果边缘位置 SNR 只有 35dB 左右保持 80MHz 通常体验更好。这个判断直接查表决定不用靠试错。5.5 用单流表值推断双流场景空间流数没对上现象按表算出来能跑 MCS7实际终端却只在 MCS4MCS5 徘徊而且稳定在双流协商值的一半。原因拿 1SS 的门限去套 2SS 的链路。表中双流 MCS7 的门限比单流高约 3dB三流再高约 3dB。如果 SNR 刚好卡在单流门限附近双流根本协商不上去终端会自动退到单流模式速率减半。解决先确认终端当前实际使用的空间流数再对号入座查表。很多网管系统的速率显示不区分流数需要登录终端侧或抓数据帧看 MCS 和 NSS 字段。做覆盖设计时按终端支持的最大流数计算现场验证时按实际协商流数核对。6. 把参数表变成速查计算器一个极简的 Python 函数这张表最终要变成能随手用的工具我习惯把它压成三个规律20MHz 单流 MCS9 门限 31dB带宽每翻倍门限加 3dB空间流每增加一个门限加约 3dB。基于这三个规律可以写一个极简的速查函数import math snr_min_1ss_20mhz [2, 5, 9, 11, 15, 18, 20, 25, 29, 31] mcs_names [fMCS{i} for i in range(10)] def estimate_mcs(snr_db, bw_mhz20, n_ss1): bw_shift 3 * math.log2(bw_mhz / 20) ss_shift 3 * (n_ss - 1) thresholds [round(s bw_shift ss_shift, 1) for s in snr_min_1ss_20mhz] available [(mcs_names[i], t) for i, t in enumerate(thresholds) if snr_db t] if not available: return 低于 MCS0 门限链路不可用 mcs, t available[-1] return f最高可达 {mcs}该 MCS 最小 SNR 约 {t}dB print(estimate_mcs(25, bw_mhz20, n_ss1)) print(estimate_mcs(25, bw_mhz40, n_ss1)) print(estimate_mcs(25, bw_mhz80, n_ss2))逻辑说明函数以 20MHz 单流的最小 SNR 数组为基线再用带宽对数项和空间流线性项做偏移。bw_shift用 log2 计算因为 40MHz 是 20MHz 的两倍偏移 3dB80MHz 是四倍偏移 6dBss_shift按每多一个空间流增加 3dB 近似。最后从低到高遍历阈值表返回当前 SNR 能支撑的最高 MCS。参数说明snr_db是实测或链路预算得到的信噪比bw_mhz取 20/40/80/160n_ss取 1/2/3。需要说明的是这个函数是高阶近似MCS7 到 MCS8 之间、不同厂商射频链路之间的实际门限可能有 2dB 左右的波动最终方案仍以原表的精确值或设备厂商白皮书为准。我一般用这个函数在项目方案阶段做快速筛选进场后用 AP 统计和实测数据覆盖校准。从那以后我每次做覆盖设计都会先跑一遍这个估算函数把“SNR 25dB 在 80MHz 双流下到底能跑多快”这类问题在方案里直接算出结果而不是到现场才翻表。输出结果和实测值做对比偏差超过 2dB 就查底噪和多径。这样反复几次这张参数表里的值就变成了自己的判断直觉希望这个速查思路能帮你在下次进场时少走几个弯。本文还有配套的精品资源点击获取
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进