Slow WiFi connection Ubuntu 18.04 with onboard Intel Wi-Fi 6 AX200

I installed Ubuntu 18.04 and I noticed getting packages and loading websites is very slow. Other WiFi devices on the same network are unaffected. I've iterated through a variety of fixes such as overriding DNS configuration to use Google/Cloudflare hosts, disabling IPv6, and some other obscure suggestions that I've since reverted.

It's a desktop build with onboard intel WiFi on an Asrock Taichi x570 motherboard.

I've noticed a suspicious line at the end of dmesg:

[  218.374518] TCP: wlp6s0: Driver has suspect GRO implementation, TCP performance may be compromised.

Output of lshw -C network

  *-network                
       description: Ethernet interface
       product: Wi-Fi 6 AX200
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:06:00.0
       logical name: wlp6s0
       version: 1a
       serial: dc:fb:48:00:24:63
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical
       configuration: broadcast=yes driver=iwlwifi driverversion=5.4.0-14-generic firmware=48.4fa0041f.0 cc-a0-48.ucode ip=192.168.86.98 latency=0 link=yes multicast=yes
       resources: irq:24 memory:f7500000-f7503fff

Any help would be appreciated. LMK what other info I can provide.

EDIT 1: Since this is a fairly new chipset it's been mentioned that it may not be supported yet. This page mentions

The new 802.11ax WiFi 6 protocol introduced in 2019 is the fastest WiFi protocol available.

Unfortunately, there are no 802.11ax WiFi 6 Linux adapters yet.

https://www.wirelesshack.org/top-linux-compatible-usb-wireless-adapters.html

Though I did find some devices that support this chipset in Ubuntu's hardware certification list, but not my motherboard (I'm not sure if they "certify" onboard motherboard components).

https://certification.ubuntu.com/catalog/component/8086:2723

EDIT 2: Could it be related to power saving mode on the adapter? I've tried deactivating this, but have been unsuccessful.

$ sudo iwconfig wlp6s0 power off
Error for wireless request "Set Power Management" (8B2C) :
    SET failed on device wlp6s0 ; Operation not supported.

https://bbs.archlinux.org/viewtopic.php?pid=1690406#p1690406

EDIT 3: Pastebin for dmesg | grep -e wlp -e iwl: https://pastebin.com/zSUbBX3p


I see nothing alarming in your paste; that is, anything that would obviously hinder speeds.

Does your router have 802.11ax capabilities? If not, let's disable it in the iwlwifi driver as an experiment:

sudo -i
echo "options iwlwifi disable_11ax=Y"  >>  /etc/modprobe.d/iwlwifi.conf
exit

Next, please turn your attention to the router. WPA2-AES is preferred; not any WPA and WPA2 mixed mode and certainly not TKIP. Second, if your router is capable of N speeds, you may have better connectivity with a channel width of 20 MHz in the 2.4 GHz band instead of automatic 20/40 MHz, although it is likely to affect N speeds. I recommend a fixed channel, either 1, 6 or 11, rather than automatic channel selection. Also, be certain the router is not set to use N speeds only; auto B, G and N is preferred. After making these changes, reboot the router.

Next, I recommend that your regulatory domain be set explicitly. Check yours:

sudo iw reg get

If you get 00, that is a one-size-maybe-fits-all setting. Find yours here: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Then set it temporarily:

sudo iw reg set IS

Of course, substitute your country code if not Iceland. Set it permanently:

sudo nano /etc/default/crda

Change the last line to read:

REGDOMAIN=IS

Proofread carefully, save and close the text editor.

Reboot and let us hear the results.


I had this issue (slow data rates: 3 Mbps down, 0.4 Mbps up through WiFi, which didn't occur on other devices on my network), though I'm using Ubuntu 20.04 (KDE neon specifically).

I followed the steps from the other answer, but in the end, what seemed to make all the difference for me was to disable 'power save' mode on my wifi adapter.

root@lithium:/home/rei# iw dev wlp4s0 get power_save
Power save: on
root@lithium:/home/rei# iw dev wlp4s0 set power_save off
root@lithium:/home/rei# iw dev wlp4s0 get power_save
Power save: off

I'm not sure if power saver is meant to be so aggressive -- perhaps there's another bug there, but disabling it allowed me to work around the problem.

Hope this helps someone.