你说的“ax调度”,如果放到无线网络圈子里,第一反应就是 802.11ax,也就是大家更熟悉的 Wi-Fi 6。我最初接触这个词,是在一次办公室无线网络改造的项目里——明明终端都支持 Wi-Fi 6,路由器也换了支持 802.11ax 的企业级 AP,可一到中午人多的时候,视频会议照样卡顿,延迟忽高忽低。当时我一度怀疑是运营商出口带宽的问题,直到我把抓包文件翻了个底朝天,才意识到真正的问题出在“调度”这两个字上:802.11ax 引入了 OFDMA、MU-MIMO、TWT 等一系列资源调度机制,但不是说设备支持就万事大吉,AP 端的调度算法、终端的上报行为、固件里默认开启的开关,每一项都在影响最终体验。这篇文章就是想把“ax 调度”这件事彻底讲透,从协议原理到实际排障,适合正在做无线网络优化、或者对 Wi-Fi 6 路由器选购有兴趣的朋友参考。
1. “ax”到底是谁:从命名混乱说起
1.1 为什么老网工习惯叫 802.11ax,厂商却叫 Wi-Fi 6
搞无线网络久了的人,基本都经历过那段“命名混乱期”。早期标准叫 802.11a/b/g/n/ac,工程师之间讨论问题靠协议编号区分,比如“你那个 AP 是不是 802.11ac 的”,大家一听就懂。但普通用户根本分不清 ac 和 ax 有什么区别,厂商也觉得这编号太不亲民,于是 Wi-Fi 联盟推出了面向大众的命名方式:802.11n 对应 Wi-Fi 4,802.11ac 对应 Wi-Fi 5,802.11ax 对应 Wi-Fi 6。
所以当你看到“ax”这个词时,它不一定指代某个具体设备,更多时候是 802.11ax 这个协议代次。而“ax 调度”这个热词,准确讲的是 802.11ax 为了解决多用户并发场景而引入的那一整套资源分配机制。行业内聊起来经常简写成“OFDMA 调度”“MU-MIMO 调度”或者直接说“ax 的调度机制”。
1.2 ax 要解决的核心问题:密集场景下的多终端并发
在 802.11ac 时代,一个 AP 在同一时刻只能和一个终端完成数据传输,也就是说信道资源是“时分复用”的。哪怕路由器有 4x4 MIMO,能同时向 4 个终端发数据,但这是基于空间流的并行,前提是每个终端都支持 MU-MIMO 且天线数匹配。而现实情况是,会议室里 20 台手机、平板、笔记本,大部分只有 1-2 根天线,很多终端甚至不支持 MU-MIMO,结果就是 AP 必须排队逐个服务,信道利用率很低。
802.11ax 的思路就是:把“排队过独木桥”改成“多车道并行”。一方面继续强化 MU-MIMO,另一方面引入了 OFDMA 技术,从频率维度把信道切成更小的资源块,分给不同终端同时使用。再配合 TWT(目标唤醒时间)和 BSS Coloring,让整个无线网络在高密度场景下也能保持较低延迟和较高吞吐。这正是“调度”二字的含义所在:AP 像交通调度中心一样,决定谁在什么时间、什么频率资源上发送数据。
| 协议 | 频段 | 最大带宽 | 多用户技术 | 调制方式 |
|---|---|---|---|---|
| 802.11n | 2.4GHz/5GHz | 40MHz | 无标准 MU | 64-QAM |
| 802.11ac | 5GHz | 160MHz | DL MU-MIMO | 256-QAM |
| 802.11ax | 2.4GHz/5GHz/6GHz | 160MHz | DL/UL OFDMA + MU-MIMO | 1024-QAM |
从这张表可以直观看出,802.11ax 和前两代的关键差异不在峰值速率,而在“多用户并发能力”。峰值速率提升只是把 256-QAM 换成了 1024-QAM,撑死了提升 30% 上下,但 OFDMA 和上下行 MU-MIMO 带来的并发效率提升,在高密度场景下是数量级的差别。
2. OFDMA 调度:ax 里最值钱的那个技术
2.1 用“拼桌吃饭”来理解 OFDMA 和 OFDM 的区别
传统 OFDM 的做法,就像一个餐厅里只有一张大桌,每次只接待一桌客人,哪怕这桌只有一个人,整张桌子也是他的,其他人只能排队等。这个“一个人占一整张桌子”的效率问题,在多人同时用网时非常致命。
OFDMA 的做法是把这张大桌切分成若干小区域,每个区域(RU,Resource Unit,资源单元)可以分配给不同的客人。比如 80MHz 带宽的信道,可以切出 9 个 26-tone 大小的 RU,同时服务 9 个低速率需求的终端。AP 就是这个餐厅的调度员,它根据每个终端的流量需求、缓存数据量、信道质量,决定把哪些 RU 分给谁、用多宽的 RU、持续多长时间。
2.2 RU 是怎么划分的:子载波分组逻辑
这里有一个容易被忽略的细节:802.11ax 的 RU 大小不是随意切分的,最小单位是 26-tone RU。一个 tone 就是一条子载波,26-tone RU 里实际包含 24 个数据子载波和 2 个导频子载波。更大的 RU 包括 52-tone、106-tone、242-tone、484-tone、996-tone,以及 160MHz 下的 2x996-tone。
不同大小的 RU 不仅影响能容纳的用户数,还直接影响单用户能达到的最大速率。比如 26-tone RU 因为可用子载波太少,很多高阶调制方式(如 1024-QAM)根本没法用,所以在 OFDMA 调度的实际表现中,AP 往往会尽量分配 106-tone 或更大的 RU 给高吞吐需求的终端。
| 带宽 | RU 划分可能组合(用户数) | 适用场景 |
|---|---|---|
| 20MHz | 9 个 26-tone RU,或 4 个 52-tone RU,或 2 个 106-tone RU,或 1 个 242-tone RU | 单人高带宽 vs 多人低并发 |
| 40MHz | 18 个 26-tone RU,或 8 个 52-tone RU,或 4 个 106-tone RU,或 2 个 242-tone RU | 中型房间多终端 |
| 80MHz | 37 个 26-tone RU,或 16 个 52-tone RU,或 8 个 106-tone RU,或 4 个 242-tone RU,或 2 个 484-tone RU,或 1 个 996-tone RU | 大型办公区 |
| 160MHz | 74 个 26-tone RU,或 32 个 52-tone RU,或 16 个 106-tone RU,或 8 个 242-tone RU,或 4 个 484-tone RU,或 2 个 996-tone RU | 高吞吐密集场景 |
这里要提醒一点,这张表是理论上的最大组合方式,实际调度中 AP 还要考虑每个终端的信道质量、业务优先级、Buffer 状态,所以不可能每次都按最大化用户数来切分。我在实测中发现,很多 AP 在终端数量少于 5 个时,宁愿分配更大的 RU 给单个终端,也不愿意把信道切得太碎,因为切得太碎会让单用户的速率明显下降。
2.3 下行 OFDMA:AP 说了算的调度
下行 OFDMA 相对简单,因为 AP 是发送方,它天然掌握所有终端的缓存数据量。AP 会周期性地为每个终端评估流量需求,然后在一个下行 PPDU(物理层协议数据单元)里,把不同 RU 分配给不同终端,一次性发出去。
这个过程中,调度器要解决的是“RU 分配比例”问题。比如关联的终端 A 正在看高清视频,终端 B 只是偶尔发个心跳包,那么调度器分配给 A 的资源就应该是 B 的几十倍。802.11ax 协议本身没有规定具体的调度算法,这部分是由芯片厂商自己实现的,所以不同品牌 AP 在相同环境下的 OFDMA 效率可能差异很大。这也是为什么拿着同样支持 Wi-Fi 6 的路由器,实测吞吐却可能差出一倍的原因。
2.4 上行 OFDMA:需要终端配合的“复杂调度”
上行 OFDMA 就复杂多了。AP 虽然是调度中心,但它并不知道每个终端的上行队列里有多少数据。如果让所有终端自由竞争发送,OFDMA 就无从谈起。所以协议设计了“AP 主动触发,终端被动响应”的机制:AP 发送 Trigger 帧,里面包含 RU 分配信息和各终端的发送参数,收到 Trigger 的终端才在指定的资源上发送自己的数据。
这个机制具体到抓包里的样子,是你能看到 AP 周期性发出 Trigger 帧,指向多个终端地址,随后这些终端在对应的 RU 上分别回应。如果你在 Wireshark 里看不到 Trigger 帧,或者看到大量终端在非 OFDMA 方式下竞争发送,那就说明这个 AP 的调度效率不高。
3. 上行调度链路拆解:Trigger、BSR 与缓存状态
3.1 BSR 是如何“告诉”AP 我该吃多少的
上行 OFDMA 调度中有一个非常关键的角色叫 BSR(Buffer Status Report,缓存状态报告)。终端通过在特定 MAC 控制帧里携带自己上行缓冲区的数据量信息,告诉 AP:我这里有大约 X 字节的数据要发。AP 收到所有终端的 BSR 后,再综合信道状况和业务优先级,计算出各终端的 RU 分配方案。
这里涉及一个细节:BSR 不是终端随时上报的,而是 AP 在需要时用 BSRP(Buffer Status Report Poll)触发帧来“询问”。所以在无线抓包里,你经常能看到 AP 先发 BSRP,然后各终端在短帧间间隔里回复各自的上行数据长度,紧接着 AP 发出携带 RU 分配的 Trigger 帧,整个调度流程就像一个“点名问答—按号分配—同时发送”的循环。
3.2 一次完整上行 OFDMA 调度的实际交互
为了让你更直观地理解这条链路,我把它拆成四个步骤,这也是我在排查无线问题时最喜欢画给同事看的过程:
- AP 定期发送 BSRP 触发帧,点名询问关联终端的缓存状态。
- 各终端收到 BSRP 后,在各自被分配的上行资源或竞争窗口内回复 BSR,报告自己的上行数据量。
- AP 根据 BSR、RSSI 和信道质量表,决定 RU 大小和位置,生成 Trigger 帧并广播。
- 被点名的终端收到 Trigger 帧后,直接在指定的 RU 上同时发送上行数据,不需要再走 CSMA/CA 竞争。
你在抓包里看到的现象就是:BSRP 之后跟着一连串紧凑的 QoS Null 或 Data 帧,这些帧的大小不均匀,因为每个终端的数据量不同。如果某个终端始终不回 BSR,那它大概率就是一台“调度不配合”的老旧设备,AP 只能退而求其次,给它分配传统竞争资源。
3.3 为什么有些终端连上了 802.11ax 却不快
这是我在实际项目里踩过最深的坑。很多用户换了大几千的路由器,手机也显示 Wi-Fi 6 图标,但速度就是跑不上去。用抓包一看,问题出在两个地方:
第一,终端虽然支持 802.11ax,但没有实现 BSR 上报功能,或者驱动里默认关闭了这个能力。这类终端在上行 OFDMA 调度里只会被动等 AP 分配,但 AP 缺少它的缓存信息,只能按保守策略分配资源,效率大打折扣。
第二,很多终端的省电策略会主动关闭 OFDMA 参与资格。安卓和 iOS 系统都有一套“低功耗模式”,在不活跃时会让 Wi-Fi 芯片进入深度睡眠,这时候 AP 的调度中心根本没法把资源分给它。
所以如果你发现某个 Wi-Fi 6 终端速度异常,不要急着骂路由器。可以先在电脑上用 Wireshark 抓一下信令,看看 BSRP 之后有没有这个终端的响应;如果没有,尝试关闭终端的省电模式或者更新无线网卡驱动,很多时候问题就解决了。
4. MU-MIMO 与 OFDMA 的协同:一套组合调度逻辑
4.1 一个管空间,一个管频率
OFDMA 解决的是频率维度的复用,MU-MIMO 解决的是空间维度的复用。两者不冲突,可以叠加。AP 在一个 PPDU 里既能混合不同终端的 RU,又能让多个终端同时使用不同空间流,这被称 OFDMA + MU-MIMO 联合调度。
打个比方:商场里的餐饮区,既有多家不同店铺(频率上的 OFDMA),每家店里又有多个座位(空间上的 MU-MIMO)。调度中心要做的,是让尽可能多的人在同一时刻坐下来吃饭,而不是让整层楼只有一个人坐在一张大桌上。
4.2 联合调度的实际限制:端口数、天线与协议版本
但联合调度不是没有代价。芯片的基带处理能力有限,多用户帧的调制编码、导频设计、信道估计复杂度会成倍增加。实际产品中,很多 Wi-Fi 6 路由器的 OFDMA + MU-MIMO 联合能力只能同时处理 4-8 个用户,超过这个数量后,AP 会把剩余终端排到下一轮。
另外,MU-MIMO 对终端的空间流数量有硬性要求。一个 2x2 天线终端只能占用 2 个空间流,如果 AP 是 4x4 天线,那它最多只支持 2 个这样终端同时做 MU-MIMO。相比之下,OFDMA 对终端天线数量的要求更低,哪怕是单天线的 IoT 设备,也可以分配一个 26-tone RU 和 4x4 的高端终端同时通信。
所以在多用户高密度场景里,OFDMA 往往是比 MU-MIMO 更有效的调度手段。我在办公室实测时,用 iperf3 同时跑 6 台终端的下行带宽,打开 OFDMA 后总吞吐提升了接近 2 倍,而 MU-MIMO 的提升却没有这么明显,原因就在于 6 台终端基本都是 1x1 或 2x2 的笔记本和手机,空间流叠加能力有限。
4.3 调度算法比协议参数更影响体验
协议只是定了一个框架,具体怎么调度完全看厂商。有的厂商调度器偏爱公平性,给所有终端平分 RU;有的偏爱最大化吞吐,给信道质量好的终端更大的 RU;有的则按照 QoS 队列来区分优先级,保证语音视频业务的低延迟。
对于自己做无线网络优化的人来说,这个信息的意义在于:当你发现某个 AP 的上行吞吐上不去,不要惯性思维去调发射功率,而是先查一下该型号 AP 的固件里有没有 OFDMA 调度相关参数。很多企业级 AP 系统里有“OFDMA 调度模式”选项,可以选择“效率优先”“公平优先”或“平衡模式”,改一次可能比调天线角度效果更明显。
5. 不只是带宽:TWT 与 BSS Coloring 的另类“调度”
5.1 TWT:给终端安排“闹钟”的省电调度
很多人聊 802.11ax 只盯着速率,忽略了 TWT(Target Wake Time,目标唤醒时间)才是真正改变 Wi-Fi 使用方式的机制。TWT 允许 AP 和终端协商一个“唤醒时间表”,终端平时可以深度睡眠,只有到约定时间才唤醒接收数据,相当于调度中心给每个终端排了一个闹钟。
对手机和平板来说,TWT 能显著降低待机功耗。对物联网设备来说,TWT 的意义更大——一批传感器可以分别约定不同的唤醒窗口,避免同时醒来争抢信道。我在一个智能楼宇项目里测试过,把几十个温湿度传感器全部接入 Wi-Fi 6 AP 并开启 TWT 后,设备平均功耗下降约 40%,同时信道竞争明显减少。
但 TWT 也有副作用,对延迟敏感的应用可能反而变差。因为终端在非约定时间内处于睡眠状态,AP 如果突然有高优先级数据要发给它,必须等它的下一个唤醒窗口。所以很多 AP 在 TWT 设计上做了一层“按需突发”机制:如果 AP 缓存了高优先级数据,会提前唤醒目标终端。这个机制的调度决策和 OFDMA 是两套逻辑,但都非常依赖芯片实现。
5.2 BSS Coloring:给信道“涂颜色”实现空间复用
BSS Coloring 是 802.11ax 在信道接入层面的调度优化。传统 Wi-Fi 要求终端在发送数据前先监听信道,如果信道忙就退避等待,哪怕这个“忙”是隔壁 AP 的信号。密集办公区里到处都是 AP,传统 CSMA/CA 导致大量无效退避。
BSS Coloring 的思路是给每个 BSS 分配一个 6bit 的 Color 值。终端收到帧时,先看看帧里的 Color 是自己的还是邻居的。如果是邻居的,只要信号强度低于某个阈值,就允许终端忽略这个“外部干扰”并行发送,从而提高空间复用效率。
这个机制在调试中有一个坑:BSS Coloring 开启后,原本应该退避的终端会变得更加“激进”,如果在 AP 部署过密的环境里不加限制地开启,反而可能造成隐藏节点增多、丢包率上升。我在现场通常会把 Color 阈值从默认的 -72dBm 往上调几档,或者干脆关闭,让终端更保守一点。
5.3 实测:ax 调度对时延和续航的影响
如果只看峰值速率,Wi-Fi 6 和 Wi-Fi 5 的差别可能不明显,但在时延稳定性上差距非常大。我在一个 40 人左右的培训教室做过对比测试:在同一台 AP 下接入 40 台终端,跑一个每隔 5 秒上报一次数据的客户端程序。
关闭 OFDMA 和 TWT 的状态下,上报延迟的抖动范围在 120ms 到 1.8 秒之间,大量时间消耗在信道竞争和退避上。开启完整的 ax 调度机制后,延迟抖动被压缩到稳定的 20-60ms。原因很好理解:OFDMA 让 40 台终端分批次并行上报,不用再互相打架;TWT 让不上报的终端保持睡眠,不参与竞争。
省电效果方面,TWT 的收益最直观。用同一台手机,连续刷 30 分钟短视频,开启 TWT 的续航比关闭状态多出约 15% 耗电优势。这个数字在不同终端上差异较大,但方向是明确的。
6. 从“ax 调度”反推无线路由器和终端的实际选择
6.1 如何确认路由器真的支持 OFDMA 调度
现在市面上几乎所有标着 Wi-Fi 6 的路由器都支持 OFDMA,但支持程度有区别。入门级方案可能只支持下行 OFDMA,上行 OFDMA 被省略了;高端的芯片组则支持完整的上下行 OFDMA + MU-MIMO + TWT。
判断方法有两个:一是看拆解评测,找芯片型号对应的规格表;二是直接抓包确认。如果你有 Wireshark 和一台支持监听模式的无线网卡,可以在连接 Wi-Fi 6 路由器后,在 5GHz 频段上过滤wlan.fc.type_subtype == 0x1c(Trigger 帧),能看到周期性 Trigger 帧说明下行调度正常,能看到 BSRP(wlan.fc.type_subtype == 0x1a配合帧控制里的 QoS 类型)说明上行调度也比较完整。
6.2 固件里的调度开关,别一上来就全开
多数企业级 AP 和新款家用路由器的后台里,都有 MU-MIMO、OFDMA、TWT 等参数。我的建议是:不要把所有调度功能同时打开,要结合实际环境来调整。
如果家里终端数量少于 10 台,且基本都是高性能手机和电脑,OFDMA 的意义不大,反而可能因为频繁的 Trigger 开销拉低速率,这时候可以保持默认状态就行。如果是办公室、教室、商场这种高密度场景,重点打开 OFDMA,并检查终端兼容性;TWT 是否启用则需要看终端业务类型——如果是视频会议和高频交互应用,TWT 的省电收益远小于带来的时延不确定性,建议关闭。
我做过一组对照测试:在 20 台终端的教室里,开启 OFDMA + 关闭 TWT 的模式,实测交互延迟最低;同时开启 OFDMA + TWT,延迟有小幅上升,但终端续航明显改善。这是一个典型的“按业务取舍”的调度决策。
6.3 三个容易踩的坑,都是实测换来的
第一个坑是路由器里的 OFDMA 开关名称五花八门。有的厂商叫“OFDMA 智能调度”,有的叫“多用户加速”,有的藏在“高级无线设置”里,还有的干脆默认关闭,需要手动打开。不看说明书的话,你可能以为自己的路由器根本没这功能。
第二个坑是老终端拖累新调度的效率。802.11ax 的 OFDMA 是向下兼容传统终端的,但如果一个 AP 关联的终端里混有大量老旧 Wi-Fi 4/5 设备,AP 无法对它们做 OFDMA 调度,为了兼容它们,整个信标周期里都要预留传统竞争窗口,导致新终端的调度效率被拉低。遇到这种情况,要么把老终端尽量迁移到另一个 AP 或频段,要么干脆把 2.4GHz 和 5GHz 分开,让老设备待在 2.4GHz 上,别拖累 5GHz 的 ax 调度。
第三个坑是同时开启了 WPA2/WPA3 混合加密模式,某些终端的驱动在混合模式下会主动禁用部分 802.11ax 特性,特别是 TWT 和 BSR。我遇到过好几次,把路由器的加密改成纯 WPA3 后,终端的速率和调度参与度立刻恢复正常。如果你排查无线问题时发现 ax 相关功能出不来,先看看加密模式设置。
做了这么多年无线网络,我最大的感受是 802.11ax 这套调度机制本身设计得足够好,真正影响体验的往往是设备厂商的实现细节,以及我们对这些细节的认知。遇到“ax”相关的网络问题,先别急着换硬件,从调度机制入手做一次排查,可能成本最低、见效最快。