
1. 从“ax”聊起为什么换了WiFi 6路由器网速还是老样子最近在无线网络交流群里“ax调度”这个词出现频率很高。第一次看到的人多半会愣一下ax是什么其实就是802.11ax也就是WiFi联盟改名之后所说的WiFi 6。你在路由器后台或者AC网管里看到终端协商速率那一栏写着“1200Mbps / 80MHz / ax”说明这台设备正在用802.11ax协议收发数据。但一个很有意思的现象是不少人把手机、路由器都换成了支持WiFi 6的新款测速却发现比原来WiFi 5提升有限甚至有时候觉得“怎么还卡了”。问题通常不出在硬件上而出在“ax调度”没有真正跑起来。WiFi 6带来的最大变化并不是单条链路跑得有多快而是它把无线空口资源从“一个时间点只能给一个终端用”变成了“频率、空间、时间三个维度同时给多个终端用”。这套调度机制才是ax这个协议代号背后真正值钱的东西。这篇内容我打算用实操的角度把ax调度拆开聊透。我会按频域调度OFDMA、空间域调度MU-MIMO BSS Coloring、时间域调度TWT三条线走最后讲怎么确认调度真的生效以及我在实际网络里调优时踩过的几个坑。适合谁看网络工程师、办公室IT管理员、家里有十几台设备的老折腾用户都适用普通用户当科普看也不亏。1.1 ax这个词代表的是一套协议而不是一个数字802.11ax之前是802.11ac也就是WiFi 5。802.11ac时代最吸引人的是160MHz频宽协商速率能冲到1733Mbps甚至更高但实际用起来相当“看脸”。为什么因为WiFi 5的OFDM机制把整个信道当成一条单车道无论下面挂了多少终端物理上同一时刻只允许一个终端上传或者下载。哪怕你的路由器有8根天线也得排队。802.11ax从设计之初就不想把宝押在“单条链路更快”上。它保留了更高阶的1024-QAM调制把单流速率从上代的最快约433Mbps提升到了约600Mbps80MHz单流但更关键的是引入了OFDMA、上下行MU-MIMO、TWT、BSS Coloring这一整套“调度”机制。WiFi联盟在宣传时用“高效无线网络”这个词其实比“快”更准确。说白了WiFi 6的厉害之处不只是把单车道加宽而是把一个收费站变成了多个并行收费站还加上了预约机制。我经常打一个比方WiFi 4到WiFi 5相当于把单车道的公路拓宽了一点点WiFi 6则是在同样的土地上规划了多条车道、多座立交桥并且让车辆按时间表错峰通行。单看某一辆车的速度变化没有想象中大但整条路的车流量可能翻了好几倍。家里设备一多差距立刻显现。1.2 调度才是WiFi 6的核心价值早期很多人对WiFi 6的印象就是“速度更快”实际上单终端跑满速率的场景WiFi 6和WiFi 5的体验差异并不悬殊。真正拉开差距的是多终端并发场景办公室里二十个人同时开会、家里十几台手机平板智能家居同时在线。WiFi 5在这种场景下会频繁碰撞、退避、重传空口利用率低得可怜WiFi 6通过调度机制让不同终端各占一小块资源同时传输整体吞吐自然就上去了。ax调度具体指什么按我的理解它是三个维度的组合频率维度OFDMA把信道切成多个资源单元RU不同终端用不同的子载波组同时收发。空间维度MU-MIMO利用多天线和波束成形在同一频率上给不同终端传不同数据。时间维度TWT让终端和AP约定唤醒时间按计划轮询收发而不是全挤在一起抢。这三个维度同时工作才是完整的“ax调度”。只看其中一个指标比如协商速率那是远远不够的。接下来我逐个拆开讲每个我都会给出能落地的观测和调优方法。2. OFDMA调度把一条空口车道切成能同时并行的多条小路2.1 从OFDM到OFDMA资源单元RU的前世今生OFDM技术从WiFi 4开始就是无线局域网的基础。它的工作方式是把一个信道分成若干子载波终端在这些子载波上发送数据。但OFDM有个限制虽然子载波很多但一个时间片内只能有一个终端使用整个信道。也就是说即使一个终端只传几十KB的小包也要独占整个信道。这在物联网设备多的环境里是灾难性的——大量智能插座、灯泡每隔几秒发一个状态包把信道占得满满当当。OFDMA把这事儿彻底改了。“O”从OFDM里的正交频分复用变成了正交频分多址多了“多址”两个字核心就是在一个信道里把子载波分组成为资源单元Resource Unit简称RU每个RU可以分配给不同的终端。20MHz信道最多能切成9个最小的26-tone RU也可以组合成更大块的RU给高带宽需求的终端用。我整理了一张常用频宽下的RU分配参考表方便你理解频宽26-tone RU数量52-tone RU数量106-tone RU数量242-tone RU数量484-tone RU数量996-tone RU数量20MHz9421--40MHz188421-80MHz37168421注意这只是典型的分配数量实际调度时会根据终端需求动态组合。比如一个终端需要大带宽下载另一个终端只发小包那么AP可以把26-tone RU分给发小包的设备把剩下的子载波组合成242-tone或更大的RU给下载设备。这就是“调度”的直观体现。2.2 上行OFDMA才是关键很多设备默认只开了下行OFDMA分下行和上行。下行方向AP主动把数据装进不同的RU里发给各个终端实现起来相对简单。上行方向则复杂得多AP要发一个Trigger帧把各个终端“喊”齐告诉它们“第1台用第3个RU第2台用第7个RU现在一起发”。多个终端收到Trigger帧后在同一时间点往各自分配的RU上发数据。为什么说上行OFDMA才是关键因为无线网络里大量的流量是终端发起的视频通话的上行、在线会议发言、文件上传、IoT设备上报状态。如果只有下行OFDMA上行方向还是老一套排队机制那多终端并发时的卡顿问题并没有完全解决。我在不少厂商的AC后台看过默认配置有些版本为了兼容性默认只开下行OFDMA。所以拿到新设备或者新AP第一件事就是去无线配置里找OFDMA相关开关确认上行OFDMA是不是开着。不同厂家的叫法不太一样有的叫“上行OFDMA”、有的叫“UL OFDMA Enhancement”、有的直接叫“多用户调度”但核心就一个上行方向允许多个终端在同一个时间片里同时发数据。2.3 OFDMA调度的观测方法想知道OFDMA有没有生效最直接的办法是做一个并发实测。我分享一个自己在办公室做的测试过程环境单AP支持WiFi 680MHz频宽2x2 MIMO两台WiFi 6手机一台PC通过网线连路由器做iperf3服务端再准备一台平板播放在线视频制造持续的小流量。先在AC后台关闭OFDMA开关保留其他无线参数不变。两台手机同时跑iperf3到PC持续60秒记录总吞吐和延迟抖动。再开启OFDMA同样条件再跑60秒对比数据。同时开第三方设备播放在线视频观察视频播放是否卡顿、空口延迟是否波动。我实测下来4台终端同时播放在线视频的场景下关闭OFDMA时平均空口延迟在12到20毫秒之间波动偶尔飙到50毫秒以上开启OFDMA后平均延迟稳定在5到7毫秒总吞吐从212Mbps提升到了368Mbps。当然这个数据只代表我当时的现场环境终端驱动的差异也会影响结果但方向是明确的并发越多OFDMA收益越明显。有一点要提醒有些WiFi 6路由器的后台里OFDMA开关旁边会出现“兼容性模式”之类的选项。如果选成“仅兼容WiFi 5终端”本质上就是把OFDMA关了。要开就正常开信任802.11ax的向后兼容设计。3. MU-MIMO与BSS Coloring空间域调度的上下行之分3.1 为什么WiFi 5的MU-MIMO是个半成品MU-MIMO这个技术并不是WiFi 6首创802.11ac Wave 2就支持了。但WiFi 5时代的MU-MIMO有两个硬伤第一只支持下行不支持上行第二因为当时没有OFDMA配合多用户调度的资源粒度很粗实用性一般。很多AC Wave 2路由器默认关着MU-MIMO就是因为上行方向使不上劲收益不完整。WiFi 6把MU-MIMO补齐了。上下行都支持最多8条空间流可以和OFDMA同时工作。举个典型的场景一个AP有4根天线同时给两台手机发数据每台手机用2条空间流这叫下行MU-MIMO反过来两台手机同时给AP发数据AP通过信号特征区分用户这叫上行MU-MIMO。OFDMA把频率切成小块MU-MIMO把自己分配到空间上两个机制叠加等于在同一时间片里多个终端既可以用不同频率、又可以用不同空间流收发数据。但MU-MIMO有个前提终端也得支持。如果终端只有单天线或者不支持MU-MIMO它就只能被当作传统终端调度。另外波束成形校准在MU-MIMO里很关键AP要不断追踪每个终端的信道状态信息才能把信号精准地“送”到指定终端。办公室那种人走来走去的环境信道状态变化剧烈MU-MIMO调度的开销也会相应增加。所以空间域调度的收益跟环境稳定性强相关。3.2 BSS Coloring把同频干扰也变成一种调度条件BSS Coloring是802.11ax里常被忽略但实际价值很高的机制。WiFi网络里同频干扰一直是最大的痛点。两个AP用同一个信道信号互相覆盖时其中一个在发数据另一个就要退避等待哪怕它本来要发给的是一个完全不相干的终端。这就是所谓“虚拟载波侦听”带来的过度保守。BSS Coloring的思路是给每个基本服务集BSS涂一个“颜色”帧里带上颜色编号。当一个终端在信道里听到一个帧时如果发现帧的颜色和自己的BSS颜色不同而且信号强度低于某个阈值就可以判断“这是隔壁小区的帧不影响我”于是继续发送不需要退避。相当于本来听到别人说话就闭嘴现在听到的是隔壁房间的翻译腔你判断跟自己无关就可以继续说。这个机制在密集部署场景下效果尤其明显。写字楼、公寓、商场里的高密度AP环境颜色分配合理的话空口利用率能明显提升。我之前在两个相距很近的AP上做过测试AB两台AP设成不同颜色后并发吞吐比相同颜色提升了大约20%到30%。配置一般在射频参数里找“BSS Coloring”或者“OBSS PD”相关的选项有的产品还提供CCA阈值调整。这里有个坑配置时一定要确保相邻AP的颜色值不同如果整个网络里所有AP都设置了同一个颜色那这个功能等于没开。4. TWT时间调度约好时间再上班省电但有个坑4.1 TWT的工作机制三言两语TWT全称是Target Wake Time目标唤醒时间。这个机制在802.11ax里解决的是低功耗设备的问题。WiFi 5时代的省电机制是PSMPower Save Mode终端要收发数据得先醒过来发送一个PS-Poll轮询帧问AP“有没有我的数据”如果没有就继续睡。这个过程本身要耗电而且频繁醒来、频繁轮询效率并不高。TWT换了个思路终端和AP提前商量好约定一组唤醒时间表。比如智能门锁和AP约定每100毫秒唤醒一次到点就醒发完数据继续睡其他时间完全不用监听信道。这样一来终端不再需要反复轮询功耗大大降低。用我习惯的说法TWT就是“约好时间再上班”而不是“不定时地跑过去问有没有活干”。TWT分两种模式Individual TWT单个终端和AP单独约定Broadcast TWTAP同时和一批终端约定同一组唤醒时间适合IoT设备批量管理。2.4GHz频段上IoT设备多TWT的价值更突出。很多做智能家居的企业在WiFi 6协议栈里看到TWT支持首先想到的就是延长电池寿命。4.2 TWT打开后测到的实际功耗与延迟变化我拿一款支持WiFi 6的智能摄像头做过实测。开启TWT并设置服务间隔100毫秒后摄像头待机功耗下降了大约18%到25%而在活跃推流状态时TWT的节能效果反而有限因为数据一直在传终端本来就醒着。这里就是TWT最大的坑延迟和功耗需要权衡。服务间隔设得越长终端睡得越久省电效果越好但数据到达后AP不能立刻发给终端要等终端下一次唤醒所以双向交互延迟会增大。我在另一款智能门锁上测试过TWT服务间隔从100毫秒调大到500毫秒之后手机App远程开门的速度肉眼可见地变慢体验很差。所以TWT不是无脑打开就完事的参数。实际调优原则是对频繁交互的终端比如手机、平板、语音助手TWT服务间隔要短或者直接把这类终端排除在TWT之外。对低频上报的IoT设备比如温湿度传感器、门锁、水位计TWT服务间隔可以适度拉长。同一AP下同时存在传感类设备和视频类设备时建议按SSID或者按终端类型分别配置策略。还要注意兼容性。虽然802.11ax协议是向后兼容的但不少老款WiFi 5终端对TWT的响应并不完善。AP开启Broadcast TWT后有些不支持TWT的老终端在休眠和唤醒的切换过程中出现掉线、延迟抖动。我遇到过最典型的情况是一批老款智能插座在TWT开启后频繁离线排查半天发现是这几个终端的驱动对Trigger帧里的TWT IE响应异常。解决办法就是把这几个设备单独划到一个不开TWT的SSID下。5. 如何确认ax调度真的在生效从协商速率到空口统计的验证方法5.1 终端侧视角先看协议类型和协商速率最基础的一步看终端有没有真正用ax在协商。iPhone在WiFi详情里能看到“Wi-Fi 6”标识安卓手机在WiFi高级设置里能看到“802.11ax”字样Windows笔记本在无线网卡状态里能看到“标准802.11ax”。如果终端显示的还是802.11ac那后面一切调度机制都跟你没关系得先解决终端连接问题。协商速率也能佐证。WiFi 6、2x2天线、80MHz频宽、短保护间隔下理论协商速率是1201Mbps如果看到一个奇怪的数字比如866Mbps说明信号可能不够好降到了较低调制等级或者终端只用1条流。协商速率是调度生效的必要条件但不是充分条件——它只能说明“这个终端有资格被调度”并不能证明OFDMA或者MU-MIMO在实际跑。另外一个小细节看看无线的加密方式和认证方式。如果你还在用WPA2-TKIP这种老加密部分终端的WiFi 6特性会被强制降级。最好用WPA2-AES或者WPA3。我遇到过一个用户的WiFi 6路由器协商速率怎么都上不去后台一看加密选的是WPA-PSK/TKIP改成WPA2-AES之后速率和调度特性马上就正常了。5.2 无线控制器和网管侧找RU和调度相关统计企业网络里AC网管页面会提供比普通家用路由器详细得多的统计信息。不同厂商的菜单路径不一样但关键字段是通用的终端PHY类型、MCS等级、空口利用率、上下行流量、调度次数、RU分配情况、OFDMA成功率等。以我常用的习惯来说登录AC后我会重点看几个地方终端列表里查终端的PHY模式区分802.11ax和802.11ac终端明确哪些终端具备调度资格。射频管理器里看每个AP的空口利用率和信道利用率。如果空口利用率高但实际吞吐低大概率是碰撞重传多调度没发挥作用。有条件的设备上看OFDMA相关的统计计数比如上行OFDMA传输次数、平均每组RU包含多少终端。这些字段有的厂商叫“UL OFDMA statistics”有的叫“Multi-user statistics”。如果AC后台没有这么细的字段还有一个土办法把支持WiFi 6的手机、平板、电脑一共五六台设备同时挂在一个AP下同时跑大流量下载然后在流量图里观察单台设备的速率波动。如果速率是稳定分到几份、彼此互不干扰说明调度在工作如果速率忽高忽低、总吞吐还不如单设备那基本可以判断调度没生效。5.3 抓包验证找Trigger帧和HE MU PPDU要验证OFDMA和上行MU-MIMO有没有真正工作抓包是最实锤的方式。用Wireshark在AP的上联口或者用电脑开启监听模式抓空口包过滤条件可以朝这两个方向去找Trigger帧。上行OFDMA和上行MU-MIMO都依赖AP发送Trigger帧来触发多终端同时上行。抓包里如果能看到Trigger帧说明AP确实在发起多用户调度。HE MU PPDU。802.11ax的物理层协议中多用户传输使用HE MU PPDU格式。抓包里出现HE MU类型的无线帧可以证明下行方向正在进行多用户传输。Wireshark里可以尝试用“wlan.he”这类过滤条件筛选HE相关的帧类型。我个人更习惯直接看“Trigger”关键字因为Trigger帧在协议树里特征非常明显。如果你是第一次看可以抓包的时候同步开一台终端传大文件另一台终端发小包这种情况下Trigger帧出现的概率很高。5.4 并发打流用数据说话最后是压轴测试。准备两台支持WiFi 6的终端连同一个SSID用iperf3往有线侧的服务端打流。WiFi 5时代两个终端同时上传总吞吐会明显低于两台分开传的吞吐相加因为上行只能轮流来。WiFi 6开启上行OFDMA后两台终端同时上传的总吞吐应该更接近顺序相加的数值。命令很简单服务端和客户端各跑一个# 服务端有线侧PC iperf3 -s # 终端A iperf3 -c 192.168.1.100 -u -b 100M -t 60 -i 2 # 终端B iperf3 -c 192.168.1.100 -u -b 100M -t 60 -i 2上行用UDP固定码流打流更接近真实音视频上行场景。对比“单台上行吞吐”和“两台上行吞吐之和”如果后者明显高于前者说明上行链路已经摆脱了排队模型多用户调度在起效。注意测试时两台终端距离AP的远近要尽量一致否则信号强度的差异会直接影响结果。6. ax调度调优的几条经验以及我踩过的三个坑6.1 第一个坑为了兼容老设备把OFDMA整个关了WiFi 6刚普及时网上流传一个说法“OFDMA会跟老设备冲突4G内存的小猫上网设备会掉线不如关了换成传统模式。”这个说法不能说完全没根据但绝大多数情况下问题不在OFDMA本身而在调度器的实现质量。802.11ax在设计时就是向后兼容的。老终端不支持OFDMA也可以正常按传统帧格式发送AP只需要把RU调度空出来给老终端即可。混合环境里正确的做法是让OFDMA开着同时通过路由器后台把老终端限速或者干脆把不支持WiFi 6的设备引导到单独SSID/单独射频上。我之前处理过一个仓库办公混合场景为了几台2015年的老扫码枪把OFDMA关了结果现场所有人的手机直播全部卡顿上行总吞吐直接掉了三成。后来改回默认配置把老扫码枪单独分到一个不开高调制等级的SSID里问题解决新终端体验也恢复了。6.2 第二个坑以为160MHz频宽一定能跑更快160MHz是WiFi 6宣传里的卖点之一单终端协商速率能翻倍。但160MHz频宽占用的信道资源也是成倍的对清静程度要求极高。在办公楼、住宅密集区5GHz频段的可用信道本来就有限开160MHz意味着要把整个5G低段和高段都占上。一旦附近有其他AP占用其中一半信道实际效果很可能适得其反。我做过一次对比测试办公室环境能扫到三十多个外部AP。开160MHz后信道繁忙度明显上升两台终端实测下行总吞吐只有280Mbps左右切回80MHz总吞吐反而到了350Mbps。原因就是160MHz下频繁退避、重传实际有效传输时间被压缩。所以我的建议是先花几天看信道占用情况。如果周围WiFi环境干净160MHz确实香如果扫描结果密密麻麻80MHz才是更稳的选择。5G频段上80MHz已经能提供足够高的协商速率大多数日常应用根本跑不满。6.3 第三个坑把TWT无脑开到所有SSIDTWT省电效果明显但交互延迟代价也明显这一点前面已经说过。我在一个工厂项目里踩过更深的坑客户把所有IoT设备都规划到一个WiFi 6 SSID下我图省事在射频里全局开启了TWT服务间隔按默认的100毫秒配置。刚上线时一切正常视频监视用的IPC偶尔出现延迟波动我没太在意。直到客户投诉“远程回放卡顿”抓包才发现IPC这类持续推流的设备虽然活跃但TWT强制它们按约定间隔唤醒导致视频帧不能及时上传延迟从300毫秒左右涨到了800毫秒以上。后来调整方案把持续交互类的终端IPC、手机、电脑通过终端策略排除在TWT之外只对传感上报类设备保留TWT节能。这次的经验教训是“调度”参数开在哪一层、覆盖哪些终端比“开不开”更重要。企业AC里通常支持按SSID、按终端类型、按DHCP指纹区分策略不要全部堆在默认全局配置里。6.4 我目前的调优顺序和建议经过这些年折腾我自己形成了固定的调优顺序分享出来供参考先确认频宽和信道。用扫描工具看环境干扰优先把信道稳定在干扰最小的位置。加密方式调整为WPA2-AES或WPA3排除老加密对协商速率的影响。开启上下行OFDMA和上下行MU-MIMO不要只开下行。按场景决定TWT策略。传感上报类设备多的SSID开TWT视频和语音交互类SSID关掉或者调短服务间隔。高密度部署时检查BSS Coloring配置避免相邻AP同色。整体思路就是从物理层到调度层一层一层往上排。无线网络的坑大多不是单一因素但调度机制不开后面的努力都是白费。我个人的体会是“ax调度”这四个字看起来像营销热词本质上却是一套把频率、空间、时间三个维度组合起来的系统工程。真正理解了这套机制之后再去调AC、选路由器、排故障思路都会清晰很多。你在自己网络里也可以按这个顺序试试不一定所有参数都要调到最优但至少先确认自己手上的WiFi 6设备调度是真的在跑而不是只在协商速率上好看。