You are not logged in.
Pages: 1
Disclaimer: I am new to Arch and Linux as a whole so I might have not debugged this properly
I've been having issues with very slow Wi-Fi recently (my Wi-Fi speeds should be around 500 Mbps but they are going as low as 10 Mbps).
My system has an Intel Wi-Fi 6 AX201 network card (it's built into my ROG MAXIMUS XII HERO (Wi-Fi) motherboard), and the CPU is an Intel Core i9-10900K.
I am using NetworkManager with iwd as the backend (one of the things I did trying to fix the problem) and dhcpd for DCPH (also something I did trying to fix the problem).
I am on Kernel Version 5.16.1-arch1-1 x86_64.
I have tried everything that I can find on the Arch Wiki about NetworkManager, iwd, and Network Configuration like:
- Disabled TCP Window Scaling (using the "good solution" on the Arch Wiki)
- Using iwd as my network backend,
- Changing the DCPH client to dhcpd
- Changing Intel network card settings
Here is /etc/modprobe.d/iwlwifi.conf
options iwlwifi lar_disable=1
options iwlwifi swcrypto=1
options iwlwifi 11n_disable=8
options iwlwifi bt_coex_active=0
What I think it might be is my network registry seems to be not working because of the Intel card being self managed.
If I run `sudo iw reg get` it gives this output:
global
country 00: DFS-UNSET
(2402 - 2472 @ 40), (N/A, 20), (N/A)
(2457 - 2482 @ 20), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN
(5490 - 5730 @ 160), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN
(5735 - 5835 @ 80), (N/A, 20), (N/A), PASSIVE-SCAN
(57240 - 63720 @ 2160), (N/A, 0), (N/A)
phy#0 (self-managed)
country 00: DFS-UNSET
(2402 - 2437 @ 40), (6, 22), (N/A), AUTO-BW, NO-HT40MINUS, NO-80MHZ, NO-160MHZ
(2422 - 2462 @ 40), (6, 22), (N/A), AUTO-BW, NO-80MHZ, NO-160MHZ
(2447 - 2482 @ 40), (6, 22), (N/A), AUTO-BW, NO-HT40PLUS, NO-80MHZ, NO-160MHZ
(5170 - 5190 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, PASSIVE-SCAN
(5190 - 5210 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40PLUS, PASSIVE-SCAN
(5210 - 5230 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, PASSIVE-SCAN
(5230 - 5250 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40PLUS, PASSIVE-SCAN
(5250 - 5270 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5270 - 5290 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5290 - 5310 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5310 - 5330 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5490 - 5510 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5510 - 5530 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5530 - 5550 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5550 - 5570 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5570 - 5590 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5590 - 5610 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5610 - 5630 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5630 - 5650 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5650 - 5670 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, NO-160MHZ, PASSIVE-SCAN
(5670 - 5690 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, NO-160MHZ, PASSIVE-SCAN
(5690 - 5710 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, NO-160MHZ, PASSIVE-SCAN
(5710 - 5730 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, NO-160MHZ, PASSIVE-SCAN
(5735 - 5755 @ 80), (6, 22), (N/A), AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, NO-160MHZ, PASSIVE-SCAN
(5755 - 5775 @ 80), (6, 22), (N/A), AUTO-BW, IR-CONCURRENT, NO-HT40PLUS, NO-160MHZ, PASSIVE-SCAN
(5775 - 5795 @ 80), (6, 22), (N/A), AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, NO-160MHZ, PASSIVE-SCAN
(5795 - 5815 @ 80), (6, 22), (N/A), AUTO-BW, IR-CONCURRENT, NO-HT40PLUS, NO-160MHZ, PASSIVE-SCAN
(5815 - 5835 @ 20), (6, 22), (N/A), AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, NO-HT40PLUS, NO-80MHZ, NO-160MHZ, PASSIVE-SCAN
After that I ran `sudo iw reg set CA` (I live in Canada), if I re-run `sudo iw reg get` then it only changes the value for `global` but not `phy#0` (which I believe is my wireless card) to
global
country CA: DFS-FCC
(2402 - 2472 @ 40), (N/A, 30), (N/A)
(5150 - 5250 @ 80), (N/A, 23), (N/A), NO-OUTDOOR, AUTO-BW
(5250 - 5350 @ 80), (N/A, 24), (0 ms), DFS, AUTO-BW
(5470 - 5600 @ 80), (N/A, 24), (0 ms), DFS
(5650 - 5730 @ 80), (N/A, 24), (0 ms), DFS
(5735 - 5835 @ 80), (N/A, 30), (N/A)
Also every time I restart this resets and the registry reverts to what it was before.
I think it might have something to do with the network card being self managed, so I read that I can turn that off by appending `options iwlwifi lar_disable=1` to `/etc/modprobe.d/iwlwifi.conf` however that doesn't seem to do anything and even on a restart it still appears as self managed.
Does anyone have any idea what could be going on here?
Last edited by syncinus (2022-01-22 02:45:54)
Offline
I guess a station dump would be interesting, https://wiki.archlinux.org/title/Networ … _interface
What do you measure the throughput against? LANl AP/server or WAN?
Since it happened a lot recently: you're not confusing megabytes (eg. wget default metric) and megabits in the performance test?
I am using NetworkManager with iwd as the backend (one of the things I did trying to fix the problem) and dhcpd for DCPH (also something I did trying to fix the problem).
"DHCP" - sanity check to make sure you didn't make things worse:
find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -fOnline
What do you measure the throughput against? LANl AP/server or WAN?
I'm measuring it against https://speed.cloudflare.com
In addition to the actual download being slow the jitter is sometimes high, it goes up to 200 ms, and the ping is usually up to 100ms or more.
I am definitely not messing up Mbps with mB/s (I know that it gets mixed up a lot).
"DHCP" - sanity check to make sure you didn't make things worse:
The output of it is
cpupower.service | multi-user.target.wants
dbus-org.freedesktop.nm-dispatcher.service | system
dirmngr.socket | sockets.target.wants
display-manager.service | system
gcr-ssh-agent.socket | sockets.target.wants
getty@tty1.service | getty.target.wants
gpg-agent-browser.socket | sockets.target.wants
gpg-agent-extra.socket | sockets.target.wants
gpg-agent.socket | sockets.target.wants
gpg-agent-ssh.socket | sockets.target.wants
NetworkManager.service | multi-user.target.wants
NetworkManager-wait-online.service | network-online.target.wants
nordvpnd.service | default.target.wants
p11-kit-server.socket | sockets.target.wants
pipewire-media-session.service | pipewire.service.wants
pipewire-session-manager.service | user
pipewire.socket | sockets.target.wants
pulseaudio.socket | sockets.target.wants
reflector.service | multi-user.target.wants
remote-fs.target | multi-user.target.wants
snapd.socket | sockets.target.wants
var-lib-snapd-snap-bare-5.mount | multi-user.target.wants
var-lib-snapd-snap-clion-178.mount | multi-user.target.wants
var-lib-snapd-snap-core18-2284.mount | multi-user.target.wants
var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-161.mount | multi-user.target.wants
var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1519.mount | multi-user.target.wants
var-lib-snapd-snap-nordpass-124.mount | multi-user.target.wants
var-lib-snapd-snap-snapd-14295.mount | multi-user.target.wants
xdg-user-dirs-update.service | default.target.wantsI guess a station dump would be interesting, https://wiki.archlinux.org/title/Networ … _interface
This is the output of a station dump:
Station 08:a7:c0:97:32:87 (on wlan0)
inactive time: 727 ms
rx bytes: 21644567
rx packets: 21666
tx bytes: 8674622
tx packets: 11674
tx retries: 1123
tx failed: 0
beacon loss: 0
beacon rx: 4123
rx drop misc: 5
signal: -53 [-53, -56] dBm
signal avg: -52 dBm
beacon signal avg: -48 dBm
tx bitrate: 1080.6 MBit/s 80MHz HE-MCS 10 HE-NSS 2 HE-GI 0 HE-DCM 0
tx duration: 0 us
rx bitrate: 1200.9 MBit/s 80MHz HE-MCS 11 HE-NSS 2 HE-GI 0 HE-DCM 0
rx duration: 0 us
authorized: yes
authenticated: yes
associated: yes
preamble: long
WMM/WME: yes
MFP: no
TDLS peer: no
DTIM period: 1
beacon interval:100
short slot time:yes
connected time: 430 seconds
associated at [boottime]: 3.954s
associated at: 1642870793966 ms
current time: 1642871223117 msAlso, the output of
iw dev wlan0 linkConnected to 08:a7:c0:97:32:87 (on wlan0)
SSID: Helios
freq: 5220
RX: 21662301 bytes (21740 packets)
TX: 8681380 bytes (11744 packets)
signal: -53 dBm
rx bitrate: 1200.9 MBit/s 80MHz HE-MCS 11 HE-NSS 2 HE-GI 0 HE-DCM 0
tx bitrate: 1080.6 MBit/s 80MHz HE-MCS 10 HE-NSS 2 HE-GI 0 HE-DCM 0
bss flags: short-slot-time
dtim period: 1
beacon int: 100Offline
nordvpnd.service | default.target.wants
The absolute and only obvious thing here would be to test w/o the VPN.
(The station dump looks fine and you're also not running concurrent services)
Online
The absolute and only obvious thing here would be to test w/o the VPN.
Alright I've disabled
nordvpnd.service, doing it seems to have fixed my network jitter being very high though my speeds still remain very low.
I've also done a few other things like switch NetworkManger back to its default backend and DHCP, and update the Intel Wi-Fi drivers to the latest ones.
Interestingly this seems to have switch the country code to the right thing
phy#0 (self-managed)
country CA: DFS-UNSET
(2402 - 2437 @ 40), (6, 22), (N/A), AUTO-BW, NO-HT40MINUS, NO-80MHZ, NO-160MHZ
(2422 - 2462 @ 40), (6, 22), (N/A), AUTO-BW, NO-80MHZ, NO-160MHZ
(2447 - 2482 @ 40), (6, 22), (N/A), AUTO-BW, NO-HT40PLUS, NO-80MHZ, NO-160MHZ
(5170 - 5190 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, PASSIVE-SCAN
(5190 - 5210 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40PLUS, PASSIVE-SCAN
(5210 - 5230 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40MINUS, PASSIVE-SCAN
(5230 - 5250 @ 160), (6, 22), (N/A), NO-OUTDOOR, AUTO-BW, IR-CONCURRENT, NO-HT40PLUS, PASSIVE-SCAN
(5250 - 5270 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5270 - 5290 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5290 - 5310 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5310 - 5330 @ 160), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5490 - 5510 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5510 - 5530 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5530 - 5550 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5550 - 5570 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5570 - 5590 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5590 - 5610 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5610 - 5630 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, PASSIVE-SCAN
(5630 - 5650 @ 240), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, PASSIVE-SCAN
(5650 - 5670 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, NO-160MHZ, PASSIVE-SCAN
(5670 - 5690 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, NO-160MHZ, PASSIVE-SCAN
(5690 - 5710 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40MINUS, NO-160MHZ, PASSIVE-SCAN
(5710 - 5730 @ 80), (6, 22), (0 ms), DFS, AUTO-BW, NO-HT40PLUS, NO-160MHZ, PASSIVE-SCAN
(5735 - 5755 @ 80), (6, 22), (N/A), AUTO-BW, NO-HT40MINUS, NO-160MHZ
(5755 - 5775 @ 80), (6, 22), (N/A), AUTO-BW, NO-HT40PLUS, NO-160MHZ
(5775 - 5795 @ 80), (6, 22), (N/A), AUTO-BW, NO-HT40MINUS, NO-160MHZ
(5795 - 5815 @ 80), (6, 22), (N/A), AUTO-BW, NO-HT40PLUS, NO-160MHZ
(5815 - 5835 @ 20), (6, 22), (N/A), AUTO-BW, NO-HT40MINUS, NO-HT40PLUS, NO-80MHZ, NO-160MHZI've also done a few other things, mainly reverting the stuff I already did, like switching the backend and DHCP of NetworkManager to what it was before and undo all the changes I made to iwlwifi.conf, despite this speeds remain slow.
Also if it helps I know that this probably isn't a physical issue since earlier (~2 days ago) my Wi-Fi speeds were regular (400 Mbps download, 50 Mbps upload), it's only recently they have dropped.
Offline
Ideally test a LAN host w/ eg. https://wiki.archlinux.org/title/Benchmarking#iperf but to take cloudflare and the flashy web graphics and your browser out of the equation:
wget -O /dev/null http://speedtest.toronto1.linode.com/1GB-toronto.binOnline
Pages: 1