Wi-Fi 速度问题
背景说明
家里的Wi-Fi 速度不是很理想,为什么1200Mbps的速率传输文件只有30-50Mb/s呢,于是便上网查阅各种资料,看过一些被赞助的视频、一些实际体验视频、一些技术资料,都未能解答我的疑问,在经过两天的学习与资料收集汇总,对 Wi-Fi 速度进行一次测试,并整理出来分享,希望能帮助到其他与我有相同疑问的朋友。
实际速度测试
本测试根据自有设备经行测试,因不同环境、不同设备、不同方式结果会所有差异,故本测试仅作为参考;
测试环境
普通家庭环境,200M宽带,存在较多的2.4Ghz、 5Ghz的Wi-Fi信号;
测试设备
Wi-Fi 路由器: 网件MK63;连接终端设备约7台;
测试服务器: 千兆有线连接的电脑一台
测试终端设备: macbook pro 14 M1,三星Tab S7,cenos 7服务器(有线)
- 连接信息
- 信号干扰
测试工具
测试工具使用iperf3
, nginx部署web服务
;
电脑端: iperf3
命令,curl
命令,ping
命令;
android 平板: ( he.net)network tools
;Termux
中curl
命令,ping
命令;
网络拓朴
笔记本与平板与WiFi 距离约2米。
互联网<-->赠送千兆光猫<--千兆RJ45-->路由器(NEATGEAR R7000)<--千兆RJ45-->服务器(CENTOS 7) (2.208)
^ <--千兆RJ45-->服务器(CENTOS 7) (2.112)
|
|
v
NEATGEAR Mk63(MR60)<--WiFi 6(ax)--> macbook pro 14(M1)
<--WiFi 6(ax)--> 三星tab S7
测试结果
- Iperf3 测速度
Macbook pro 14
# 第1次测速
➜ ~ iperf3 -c 192.168.2.208 -R
Connecting to host 192.168.2.208, port 5201
Reverse mode, remote host 192.168.2.208 is sending
[ 5] local 10.0.0.13 port 56127 connected to 192.168.2.208 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 67.6 MBytes 567 Mbits/sec
[ 5] 1.00-2.00 sec 93.5 MBytes 785 Mbits/sec
[ 5] 2.00-3.00 sec 102 MBytes 853 Mbits/sec
[ 5] 3.00-4.00 sec 101 MBytes 850 Mbits/sec
[ 5] 4.00-5.00 sec 104 MBytes 875 Mbits/sec
[ 5] 5.00-6.00 sec 104 MBytes 876 Mbits/sec
[ 5] 6.00-7.00 sec 105 MBytes 879 Mbits/sec
[ 5] 7.00-8.00 sec 105 MBytes 880 Mbits/sec
[ 5] 8.00-9.00 sec 106 MBytes 887 Mbits/sec
[ 5] 9.00-10.00 sec 105 MBytes 879 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.01 sec 999 MBytes 837 Mbits/sec 346 sender
[ 5] 0.00-10.00 sec 993 MBytes 833 Mbits/sec receiver
iperf Done.
# 第2次测速
➜ ~ iperf3 -c 192.168.2.208 -R
Connecting to host 192.168.2.208, port 5201
Reverse mode, remote host 192.168.2.208 is sending
[ 5] local 10.0.0.13 port 56661 connected to 192.168.2.208 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 53.5 MBytes 449 Mbits/sec
[ 5] 1.00-2.00 sec 89.7 MBytes 752 Mbits/sec
[ 5] 2.00-3.00 sec 96.9 MBytes 813 Mbits/sec
[ 5] 3.00-4.00 sec 102 MBytes 859 Mbits/sec
[ 5] 4.00-5.00 sec 103 MBytes 865 Mbits/sec
[ 5] 5.00-6.00 sec 105 MBytes 880 Mbits/sec
[ 5] 6.00-7.00 sec 105 MBytes 884 Mbits/sec
[ 5] 7.00-8.00 sec 107 MBytes 895 Mbits/sec
[ 5] 8.00-9.00 sec 107 MBytes 899 Mbits/sec
[ 5] 9.00-10.00 sec 107 MBytes 896 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.02 sec 981 MBytes 822 Mbits/sec 355 sender
[ 5] 0.00-10.00 sec 977 MBytes 819 Mbits/sec receiver
iperf Done.
- curl下载
# 第1次测速
➜ ~ curl -o test.ts http://192.168.2.208/test.ts
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1416M 100 1416M 0 0 58.1M 0 0:00:24 0:00:24 --:--:-- 60.9M
# 第2次测速
➜ ~ curl -o test.ts http://192.168.2.208/test.ts
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1416M 100 1416M 0 0 55.7M 0 0:00:25 0:00:25 --:--:-- 61.7M
- ping(延迟)
# 第1次测试
➜ ~ ping 192.168.2.208 -t 4
PING 192.168.2.208 (192.168.2.208): 56 data bytes
64 bytes from 192.168.2.208: icmp_seq=0 ttl=63 time=249.895 ms
64 bytes from 192.168.2.208: icmp_seq=1 ttl=63 time=2.600 ms
64 bytes from 192.168.2.208: icmp_seq=2 ttl=63 time=3.901 ms
64 bytes from 192.168.2.208: icmp_seq=3 ttl=63 time=3.756 ms
--- 192.168.2.208 ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 2.600/65.038/249.895/106.728 ms
# 第2次测试
➜ ~ ping 192.168.2.208 -t 4
PING 192.168.2.208 (192.168.2.208): 56 data bytes
64 bytes from 192.168.2.208: icmp_seq=0 ttl=63 time=264.768 ms
64 bytes from 192.168.2.208: icmp_seq=1 ttl=63 time=5.021 ms
64 bytes from 192.168.2.208: icmp_seq=2 ttl=63 time=3.200 ms
64 bytes from 192.168.2.208: icmp_seq=3 ttl=63 time=2.657 ms
--- 192.168.2.208 ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 2.657/68.911/264.768/113.081 ms
- 网速测试(宽带200M)
三星 TAB S7
- Iperf3 测速度
第一次测速
第二次测速
- curl下载
# 第1次测试
$ curl -o test.ts http://192.168.2.208/test.ts
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1416M 100 1416M 0 0 62.1M 0 0:00:22 0:00:22 --:--:-- 62.9M
# 第2次测试
$ curl -o test.ts http://192.168.2.208/test.ts
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1416M 100 1416M 0 0 57.1M 0 0:00:24 0:00:24 --:--:-- 55.6M
- ping测试(延迟)
# 第1次测试
$ ping -c 4 192.168.2.208
PING 192.168.2.208 (192.168.2.208) 56(84) bytes of data.
64 bytes from 192.168.2.208: icmp_seq=1 ttl=63 time=23.5 ms
64 bytes from 192.168.2.208: icmp_seq=2 ttl=63 time=24.6 ms
64 bytes from 192.168.2.208: icmp_seq=3 ttl=63 time=22.4 ms
64 bytes from 192.168.2.208: icmp_seq=4 ttl=63 time=22.5 ms
--- 192.168.2.208 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3007ms
rtt min/avg/max/mdev = 22.400/23.286/24.659/0.918 ms
# 第2次测试
$ ping -c 4 192.168.2.208
PING 192.168.2.208 (192.168.2.208) 56(84) bytes of data.
64 bytes from 192.168.2.208: icmp_seq=1 ttl=63 time=20.4 ms
64 bytes from 192.168.2.208: icmp_seq=2 ttl=63 time=22.1 ms
64 bytes from 192.168.2.208: icmp_seq=3 ttl=63 time=22.3 ms
64 bytes from 192.168.2.208: icmp_seq=4 ttl=63 time=21.3 ms
--- 192.168.2.208 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3007ms
rtt min/avg/max/mdev = 20.450/21.572/22.316/0.748 ms
服务器2.112
延迟对比
[[email protected] ~]# ping 192.168.2.208 -c 4
PING 192.168.2.208 (192.168.2.208) 56(84) bytes of data.
64 bytes from 192.168.2.208: icmp_seq=1 ttl=64 time=0.441 ms
64 bytes from 192.168.2.208: icmp_seq=2 ttl=64 time=0.390 ms
64 bytes from 192.168.2.208: icmp_seq=3 ttl=64 time=0.393 ms
64 bytes from 192.168.2.208: icmp_seq=4 ttl=64 time=0.399 ms
--- 192.168.2.208 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 0.390/0.405/0.441/0.032 ms
[[email protected] ~]# ping 192.168.2.208 -c 4
PING 192.168.2.208 (192.168.2.208) 56(84) bytes of data.
64 bytes from 192.168.2.208: icmp_seq=1 ttl=64 time=0.403 ms
64 bytes from 192.168.2.208: icmp_seq=2 ttl=64 time=0.399 ms
64 bytes from 192.168.2.208: icmp_seq=3 ttl=64 time=0.435 ms
64 bytes from 192.168.2.208: icmp_seq=4 ttl=64 time=0.408 ms
--- 192.168.2.208 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 0.399/0.411/0.435/0.020 ms
测试汇总
Wi-Fi 6 80Mhz 2×2 1200Mbps 的测试速度:
设备 | 测试方式 | 协商速率 | 测试结果(取接收速度取平均值) | 损耗率 | 有效率 |
---|---|---|---|---|---|
Macbookpro 14 | Iperf3 | 1200Mbits/sec | 826 Mbits/sec | 31.17% | 68.83% |
Macbookpro 14 | curl | 1200Mbits/sec | 455.2Mbits/sec | 62.07% | 37.93% |
三星Tab S7 | Iperf3 | 864Mbits/sec | 593.35 Mbits/sec | 31.33% | 68.67% |
三星Tab S7 | curl | 864Mbits/sec | 476.8Mbits/sec | 44.81% | 55.19% |
延迟:
Macbookpro 14 | 连接方式 | 平均延迟 | 最大延迟 | 最小延迟 |
---|---|---|---|---|
三星Tab S7 | Wi-Fi 6 | 22.429ms | 24.659ms | 22.400ms |
Macbookpro 14 | Wi-Fi 6 | 66.9734ms | 264.768ms | 2.600ms |
服务器2.112 | RJ45 千兆 | 0.408ms | 0.435ms | 0.390ms |
文件下载速率:
➜ ~ scp [email protected]:/web/test.ts ~/Downloads/
[email protected]'s password:
test.ts 100% 1416MB 13.6MB/s 01:44
差异:
方式 | 测试结果(取接收速度取平均值) |
---|---|
curl | 455.2Mbits/sec |
Scp | 108.8Mbits/sec |
补充macbookpro 14 scp
命令,此处主要说明测试方式不同,也会造成结果不同,scp
传输使用了加密传输故性能不如curl
。
测试总结
- 影响因素多
由于WIFI设备、路由器、终端设备、传输协议(TCP、UDP)、传输方式(http、ssh)、干扰(同频干扰、噪音等)等等诸多影响因素。
-
稳定性
有线网络延迟基本低于1ms,而Wi-Fi最快也许要2.6ms,最大去到了264ms,故Wi-Fi稳定性不如有线、对网络稳定性要求较高尽量选择有线。
-
真实速度
理论速度基本是无法实现的,实际速度均小于理论速度,由于Wi-Fi为半双工模式,虽然有矩阵并行发送;但是大多传输协议在传输过程中均有确认校验机制;故实际效率传输过程中约有10%左右的时间在进行确认校验通讯,总结为:
真实速度=理论速度-物理损耗-确认校验损耗
; 基于以上结论: Wi-Fi 实际效率约为理论速率的 60-70%,损耗约30-40%;如果使用的通讯需要确认校验;那么还将损耗进一步损耗,具体损耗多少根据协议不同而不同。
-
实际使用
在实际使用当中,文件传输30-60MB/s之间;部分协议速率可能在10MB/s左右;speedtest互联网网速测试也能在145Mbps(200M宽带,有其他用户在使用的情况下),满足基本娱乐、办公等需求;专业场景建议使用有线;
经过一番测试之后,发现Wi-Fi 6 在实际家庭环境中(城市的楼层房屋)实际速度400Mbps正负200Mbps(相当于有线网络200-500M左右),跟宣传还是存在一定差距,玩游戏还是需要在Wi-Fi 旁边。
特别说明
本测试内容均在家庭Wi-Fi 两米距离内,测试过隔一堵墙协商速率下降到400Mbps,文件传输约20MB/S,两堵墙协商速率下降到100Mbps左右,文件传输约5-10MB/S左右;三堵墙能搜索到信号,开始出现超高延迟,丢包等情况;如果遇到承重墙,或者金属吊顶等情况信号衰减更严重,可能一堵墙就能出现高延迟、调包等情况。
附录
2022年国内常见Wi-Fi
路由器端: 截至目前,国内较多使用Wi-Fi 5,部分用户使用Wi-Fi 6;
手机设备:大多数手机均已支持WIFI 6; 但使用较多依然是Wi-Fi 5。例如:iPhone 11 、iPhone 12 、iPhone 13 、IPhone 14 是 82×2 80 MHz最大1.2Gbps;
Wi-Fi 6使用的技术
OFDM——即正交频分复用技术,它是多载波调制的一种。通过频分复用实现高速串行数据的并行传输, 它具有较好的抗多径衰弱的能力,能够支持多用户接入。
OFDMA——即正交频分多址,它是将无线信道划分为多个子信道(子载波),形成一个个频率资源块,用户数据承载在每个资源块上,而不是占用整个信道,实现在每个时间段内多个用户同时并行传输。
速率单位
常规文件系统用MB标识1兆字节大小的文件。
MB 是 Megabyte,Mb 是 Megabit;
Mbps 就是 Megabit per second
1 MB/s = 8 Mb/s = 8Mbps
运营商速率
宽带运营商所宣传的100M,1000M,指的是1000Mbps
;
路由器速率
有线设备速率使用的也是Mbps
;
Wi-Fi 路由器中宣传的也是Mbps
;
宣传中的超大速率
3000Mbps 的无线路由器,是指 2.4G Wi-Fi 最高协商速率是 574Mbps,5G Wi-Fi 的最高协商速率是2402Mbps,加起来就是 2976Mbps,通常宣传的3000Mbps 是指这个值。
理论速度
理论速度通常为最大速度,由于现实各种物理限制,基本是无法完全达到的,例如设备差异、噪音、材料工艺、传输方式等都会影响最终速度。接口
有线速率
序号 | 类型 | 速率 |
---|---|---|
1 | RJ11 电话线 | 理论8Mbps |
2 | RJ45 Cat5e网线 | 理论1000Mbps |
3 | RJ45 Cat6网线 | 理论 1000Mbps/10Gbps |
4 | RJ45 Cat6a网线 | 理论 10Gbps |
5 | GG45 Cat7网线 | 10Gbps |
无线速率
计算公式
Wi-Fi理论带宽 =(符号位长×码率×子载波数量×空间流)÷ 传输时间
IEEE 802.11 Wi-Fi 协议摘要
协议 | 频率 | 通道宽度 | MIMO | 最大数据速率 (理论上) |
---|---|---|---|---|
802.11ax | 2.4 或 5GHz | 20, 40, 80, 160MHz | 多用户 (MU-MIMO) | 2.4 Gbps1 |
802.11ac wave2 | 5 GHz | 20, 40, 80, 160MHz | 多用户 (MU-MIMO) | 1.73 Gbps2 |
802.11ac wave1 | 5 GHz | 20, 40, 80MHz | 单用户 (SU MIMO) | 866.7 Mbps2 |
802.11n | 2.4 或 5 GHz | 20、40MHz | 单用户 (SU MIMO) | 450 Mbps3 |
802.11g | 2.4 GHz | 20 MHz | 不适用 | 54 Mbps |
802.11a | 5 GHz | 20 MHz | 不适用 | 54 Mbps |
802.11b | 2.4 GHz | 20 MHz | 不适用 | 11 Mbps |
传统 802.11 | 2.4 GHz | 20 MHz | 不适用 | 2 Mbps |
传统 802.11
1997 年发布。两个原始数据率,1 Mbps 和 2 Mbps。
802.11b
1999 年发布。各种调制类型的数据传输率:1、2、5.5 和 11 Mbps
802.11a
1999 年发布。各种调制类型的数据传输率:6、9、12、18、24、36、48 和 54 Mbps。
802.11g
2003 年发布。各种调制类型的数据传输率:6、9、12、18、24、36、48 和 54 Mbps;
802.11n
各种调制类型的数据传输率:1、2、5.5、6、9、11、12、18、24、36、48 和 54 Mbps(参见下表)
Mode | 最大速率 | 天线传输/ 接收阵列 |
---|---|---|
1×1 20 MHz | 72.2 Mbps | 1 TX 1 RX |
1×1 40 Mhz | 150 Mbps | 1 TX 1 RX |
2×2 20 MHz | 144.4 Mbps | 2 TX 2 RX |
2×2 40 MHz | 300 Mbps | 2 TX 2 RX |
3×3 20 MHz | 216.7 Mbps | 3 TX 3 RX |
3×3 40 MHz | 450 Mbps | 3 TX 3 RX |
802.11ac wave1
2014 年 1 月发布。数据速率变化的调制类型和数量的空间流;200 Mbps、400 Mbps、433 Mbps、600 Mbps、867 Mbps。参见下表。
Mode | 最大速率 | 天线传输/ 接收阵列 |
---|---|---|
1×1 40 MHz | 200 Mbps | 1 TX 1 RX |
2×2 40 MHz | 400 Mbps | 2 TX 2 RX |
1×1 80 MHz | 433 Mbps | 1 TX 1 RX |
2×2 80 MHz | 866 Mbps | 2 TX 2 RX |
802.11ac wave2
- 2016 年 6 月发布。
- Wi-Fi 客户端的主要新功能:
- 多用户 MIMO
- 160 Mhz 信道
Mode | 最大速率 | 天线传输/ 接收阵列 |
---|---|---|
1×1 40 MHz | 200 Mbps | 1 TX(传输、上传) 1 RX(接收、下载) |
2×2 40 MHz | 400 Mbps | 2 TX 2 RX |
1×1 80 MHz | 433 Mbps | 1 TX 1 RX |
2×2 80 MHz | 866 Mbps | 2 TX 2 RX |
1×1 160 MHz | 866 Mbps | 1 TX 1 RX |
2×2 160 MHz | 1.73 Gbps | 2 TX 2 RX |
802.11ax (Wi-Fi 6)
- 支持 2.4 和 5 GHz
Mode | 最大速率 | 天线传输/ 接收阵列 |
---|---|---|
1×1 20 MHz | 143 Mbps | 1 TX(传输、上传) 1 RX(接收、下载) |
2×2 20 MHz | 287 Mbps | 2 TX 2 RX |
1×1 40 MHz | 287 Mbps | 1 TX 1 RX |
2×2 40 MHz | 574 Mbps | 2 TX 2 RX |
1×1 80 MHz | 601 Mbps | 1 TX 1 RX |
2×2 80 MHz | 1.2 Gbps | 2 TX 2 RX |
1×1 160 MHz | 1.2 Gbps | 1 TX 1 RX |
2×2 160 MHz | 2.4 Gbps | 2 TX 2 RX |
最大速度
2.4GWiFi即2.4Ghz~2.5GHz的无线频率。
最高速率300Mbps,也就是在802.11n下最常见的两根天线无线路由。有部分商家宣传能到达600Mbps,是因为在40MHz宽带下,再加了4根天线。
5G WiFi即4.9GHz~5.9GHz的无线频率。
最高速率2.4 Gbps,也就是802.11ax 下的最快速度,但是需要路由器、具体设备(手机、电脑等)同时支持2×2 160 MHz ;其中2×2指用于5G WiFi天线4根,2 TX传输 2 RX 接收;
WiFi 通信模式
到Wi-Fi 6,使用OFDMA,仍然是半双工。