x220解决wlan时延问题
之前x220跑windows还算勉强能用,除了需要耐心和屏幕瞎眼以外好像也没有太大的缺点。在debian11-xfce上不跑服务仅仅当作浏览器启动器也算体验良好
然而最近重新整备的时候,却发现本机在运行debian12的情况下,使用内网中其他机器访问他的无线网卡时延时居然游离在1~300ms不等,这在内网算是天文数字了……换第二张无线网卡,换网络服务后端问题依旧,详情在:关于x220掌托排线更换提问 - 经典ThinkPad专区 - 专门网 。找不到解决方法后暂时搁置了一段时间
后来抱着试一试的心态从debian12-lxqt换了manjaro-cinnamon。遂发现在某种特定配置下无线网卡就能到达一个相对正常的状态。但manjaro上存在某些我无法接受又找不到workaround和solution的问题,而且都用manjaro了我为什么不用他的上游archlinux呢?因此决定在archlinux live cd上再次debug无线网卡延时问题
参考:
Is iwlwifi or iwldvm or wext the wireless driver? - Ask Ubuntu
Fixing Intel Wi-Fi 6 AX200 latency and ping spikes in Linux – The Z-Issue
wifi - Make "iw wlan0 set power_save off" permanent - Raspberry Pi Stack Exchange
解决思路
1 - 排查后端
首先检查无线服务的后端。archlinux的livecd无线服务后端默认是iwd;而manjaro-cinnamon的无线服务后端为wpa_supplicant,使用NetworkManager作为前端控制。我的manjaro不存在这个问题,当然一把梭wpa_supplicant+NetworkManager。这时踢到第一个铁板——把iwd服务停掉后无线网卡掉设备了。无奈,google发现解决方案Reddit - Dive into anything :
1 | rmmod iwlmvm |
尝试后网卡回来了,就是名字从wlan0变成了wlp3s0,连上wifi后测试问题依旧
2 - 排查内核参数
经过多轮搜索发现有部分老哥也有高延迟或者类似问题:
High latency and sound distortion when using WiFi (X200t) - Thinkpads Forum
networking - Thinkpad x220 wireless network slows down after some time - Ask Ubuntu
他们都指出了这个参数11n_disable
。开启后问题依旧
3 - 问题源头
继续查阅资料发现了一点端倪Fixing Intel Wi-Fi 6 AX200 latency and ping spikes in Linux – The Z-Issue 。这篇博文描述的情况跟我几乎一模一样,尝试了同样的解决方法iw wlan0 set power_save off
问题解决
关于这个配置的持久化可以参考这里wifi - Make “iw wlan0 set power_save off” permanent - Raspberry Pi Stack Exchange
显然配置一个systemd unit作为脚本开机自启的方法有点笨重,并且我也懒得配置iwlwifi的模块参数。因此我决定用NetworkManager自带的nmcli工具来实现这个配置的持久化
解决手段
UPDATE:2024.8.15
NetworkManager的无线后端需要为wpa_supplicant, iwd以下不生效,建议cron或者systemd执行以上iw命令
检查powersaver状态可以用这条命令
iwconfig wlan0 | grep Power Management
nmcli的connection配置中有一段:
1 | root@archiso ~ # nmcli connection show myssid |grep 802-11-wireless.powersave |
这个选项默认是3(该处有误,默认是多少忘了),只需要把他改成2并up一下即可解决这个问题:
1 | root@archiso ~ # nmcli connection modify myssid 802-11-wireless.powersave 2 |
关于其他选项具体作用详细查看nm-settings-nmcli
手册
尚未连接过的wifi没有相关配置文件,因此modify无法补全参数。建议先使用nmcli连接一次wifi生成connection文件再修改这个选项
可以使用
nmcli device wifi connect myssid --ask
或者添加connection文件 以连接wifi
疑问
latency和delay的区别实在没分清,稍后解决
- 标题: x220解决wlan时延问题
- 作者: 7cmb
- 创建于 : 2024-04-22 00:36:49
- 更新于 : 2024-10-12 23:07:35
- 链接: https://7cmb.com/x220解决wlan时延问题/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。