我找来三台无线路由器做测试,分别代表了高通博通和联发科的,而且都是能在路由器上查看实时连接速率的。如下图的华硕TUF BE6500和TUF BE3600,联发科的代表就是用锐捷BE72 Pro。
先看看IPhone 16手机Wi-Fi 支持4096-QAM的情况如何。看看连接速率会是多少,分在AP端和STA端上查看速率,还有从抓到的空包里查看。然后测个简单的0距离测速,0距离不是绝对的0距离,有时会负距离。
苹果手机的2.4G Wi-Fi 都只支持20MHz频宽。这一点很恶心的,用不用20频宽应该由用户来选择。包括苹果6s和SE2都是这样。其它型号你们有的可以自己测测看是不是。有人说用20频宽可以提升搞干扰什么的。任由你说什么优点,都改变不了这么恶心的设定。
上面的图我只是顺手截来了,一看,,67了只有229Mbps速率。IPhone 16手机就放在华硕TUF BE6500的旁边呀,20MHz频宽的1024-QAM不会只有229Mbps呀,连接华硕TUF BE3600和TP-LINK的7TR13090也是这个速率。抓包看看,好家伙:
EHT-MCS Map (20 MHz-Only Non-AP STA): 0x00002222
…. …. …. …. …. …. …. 0010 = RX Max NSS That Supports EHt-MCS 0-7: 0x2
…. …. …. …. …. …. 0010 …. = TX Max NSS That Supports EHt-MCS 0-7: 0x2
…. …. …. …. …. 0010 …. …. = RX Max NSS That Supports EHt-MCS 8-9: 0x2
…. …. …. …. 0010 …. …. …. = TX Max NSS That Supports EHt-MCS 8-9: 0x2
…. …. …. 0000 …. …. …. …. = RX Max NSS That Supports EHt-MCS 10-11: 0x0
…. …. 0000 …. …. …. …. …. = TX Max NSS That Supports EHt-MCS 10-11: 0x0
…. 0000 …. …. …. …. …. …. = RX Max NSS That Supports EHt-MCS 12-13: 0x0
0000 …. …. …. …. …. …. …. = TX Max NSS That Supports EHt-MCS 12-13: 0x0
苹果16这手机的2.4G Wi-Fi 只支持到MCS9,即256QAM,所以在20Mhz频宽下的速率是229.41Mbps。用IPhone 16手机自身的快捷指令获取到的协议是802.11be-Wi Fi 7 ,真是有点讽刺。(苹果SE2手机的2.4G也是229Mbps速率)
大有在设置2.4G参数的时候,为了多些带机量和减少抗干扰,可以设置低一些的MCS和鼻频段,多数路由设置不了QAM,但能设置频宽和无线模式,我们可以苹果的优化,把无线路由器(AP)的2.4G频宽设置为20MHz,把无线模式设置为802.11bgn,这样间接设置成了64-QAM。适合家里有几十个智能家居设备的环境。
接下来重点是测5G。
三款不同的无线芯片方案,IPhone 16的5G 连接速率均是2401Mbps,不管是手要上显示还是路由器还是空包里显示。都是不支持MCS13的,即不支持4096-QAM,而且测带太慢了,慢得有点过份,这只是LAN to WLAN呀。还是有6%增益补偿的自建speedtest测速。如果IPhone 16是男人,这慢一点是好事呀。你们说呢!
在测试上面5G 项目的时候,发现两个问题:
一是:连接博通芯片的那款TUF BE3600时,大多数时候速率为2268Mbps,即保护间隔(Short GI)为1600ns,如果是要达到2402Mbps,就要用800ns。上图表中的TUF3600的速率,是多次查看后等出来的结果。
二是:连接锐捷BE72 Pro的5G 测速时,IPhone 16手机的测速会掉速严重,多数会发生在苹果手机自动息屏后的测速,已经复现过两次,但不是每次都这样。有这样的设备的可以测测!(BE72 Pro的版本:ReyeeOS 1.268.2120)
上图测速时所对应的无线连接速率如下:
抓都抓开来了,顺便看看这台新出的苹果手机支持不支持MU-MIMO。Wi-Fi 7对MU-MIMO没有什么改动,因此在“EHT(802.11ac)功能”字段里也没找到相关的,不过没关系,只要在VHT(802.11ac)和HE(802.11ax)里能看见MU-MIMO特征就行。
小米手机是支持的,因为最开始上高通搞的MU-MIMO(2015年的记忆,不知对否),先看看小米13Pro连接华硕TUF BE6500这台无线路由器,两者握手时的空包情况。在VHT里面查找MU beamformee Capable,是支持的,就是支持MU-MIMO。Beamformee是接收端的一方,即手机本身。我之前经常说过,波束成形(Beamforming)是MU-MIMO的支撑基础,是必要算法,能支持MU-MIMO就一定能支持波束成形,反之不一定。在HE字段内,看Full Bandwidth UL MU-MIMO也是支持的。这是上行MU-MIMO,在Wi-Fi 5时代,MU-MIMO只支持下行MU-MIMO,所以在Wi-Fi 6 的字段里加了这个特征。
然后,下面是IPhone 16的MU-MIMO支持情况 :
两个特征后面都是不支持,所以IPhone 16不支持MU-MIMO。要不实测一下?
把华硕TUF这台BE6500无线路由器的5G 固定80MHz频宽,这样容易出效果呀!为啥不用BE3600来测?2×2的路由器测毛的MU-MIMO,手机都是2x2MIMO的年代了。对了,华硕这款BE6500在无线记录里查不了MUBF这个参数,但BE3600上就有这个参数,可能只有博通的才支持查看MUBF(MU-Beamformee)。
MU-MIMO的终端可以是用不同品牌的混搭,之前都详细测试过了。先拿两台BE200无线网卡试试,在win11的cmd命令行里输入:netsh wlan show wirelesscapabilities,就会有详细的支持列表,其中就有MU-MIMO这一项,BE200是支持的。如下图中的红色划线位置 :
这个命令还能查看无线网卡是否支持kvr,也能查看是否支持MLO。即下图中的支持的MLO连接数:0, 0就是不支持MLO。支持的辅助STA最大数量也是0,所以BE200目前的驱动在国内不支持MLO。
支持MLO的是怎样的数值?拿WCN7851看看就知道了。支持MLO连接数为2,即最多同时连接2个链路,而辅助的STA最大值为1。这就是支持MLO的特征。
测试MU-MIMO,我用7TR13090做AP,然后设置80MHz频宽,因为之前测MU-MIMO也是用80MHz(其实用160MHz频宽也是可以支持MU-MIMO,是没问题的。)
真奇怪,BE200用23.40.0、23.60.1、23.80.0.7,连接7TR1309的5G都不能4096-QAM。那就对了,既然苹果16手机也是不支持4096-QAM。可以组合对比一下了。测试方式是用IxChariot工上,从10G LAN口上同时发送数据到两台终端设备,组合方式是BE200+BE200、BE200+小米13 Pro、BE200+IPhone 16。比如这样:
所有组合的测试结果如下:
BE200+小米 13Pro是可以有MU-MIMO效果的,而BE200+IPhone 16是没有效果。所以这台苹果手机确实不支持MU-MIMO。
最后看IPhone16对MLO的支持与否,我重点看看支持不支持叠加模式。MLO的模式有好几种,叠加模式是其中之一,下图摘自Intel对Wi-Fi 7的说明文档第47页里的:
(链接:https://www.intel.com/content/dam/www/central-libraries/us/en/documents/2022-06/wi-fi-tutorial-long.pdf)
然后要区分MLMR里的NSTR和STR模式,弟50页有这样的说明与图例:
区别是能不能同时发送和接收:NSTR不可以同时收和发,STR可以同时收和发。也就是MLMR里的NSTR和STR都可以同时在多条链接上传输,都能达到叠加速度增加无线吞吐量的效果。
我还是希望能通过抓包找出一些特征,再配合实测来说明问题。从WCN7851和MT7925,还有小米13 Pro,这些无线终端连接各种MLO进行实测,我找出一个支持叠加与否的特征,就是在公共信息里面的TID-To-Link Mapping Negotiation Support,在后面的那个值就是重点。
从网上找来这堆资料:(我这几天来看了好多网页,这一段忘记出处了)