You are not logged in.
Hello,
My desktop internet speeds when downloading packages or using speedtest-cli are showing as ~10Mbps. At first I thought it was my mirrors, but after testing with speedtest-cli, using Reflector to set up some faster mirrors, and switching ethernet cables, I believe there's something wrong with my configuration itself. My router (Unifi's "Dream Machine Pro") has a speed test built in, and it reports between 700 and 900 Mbps.
What are some other steps I could take to troubleshoot this issue?
I'm connected directly to the router via ethernet using this device:
$ lspci -v
<...>
22:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)
Subsystem: Micro-Star International Co., Ltd. [MSI] Device 7b85
Flags: bus master, fast devsel, latency 0, IRQ 36, IOMMU group 15
Memory at f7500000 (32-bit, non-prefetchable) [size=128K]
I/O ports at f000 [disabled] [size=32]
Memory at f7520000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
Capabilities: [70] MSI-X: Enable+ Count=5 Masked-
Capabilities: [a0] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Device Serial Number 2c-f0-5d-ff-ff-07-fb-77
Capabilities: [1a0] Transaction Processing Hints
Kernel driver in use: igb
Kernel modules: igb
<...>
And this interface:
$ ip a
<...>
2: enp34s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 2c:f0:5d:07:fb:77 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.225/24 brd 192.168.1.255 scope global dynamic noprefixroute enp34s0
valid_lft 85666sec preferred_lft 85666sec
inet 192.168.1.226/24 brd 192.168.1.255 scope global secondary dynamic noprefixroute enp34s0
valid_lft 85672sec preferred_lft 74872sec
inet6 fe80::459a:69fd:937d:7bfb/64 scope link noprefixroute
valid_lft forever preferred_lft forever
Here's what ethtool reports about the interface; I believe this is all correct (auto-negotiation is on and duplex is full).
$ sudo ethtool enp34s0
Settings for enp34s0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
dhcpcd is running fine and reports no errors:
Apr 14 13:31:26 kong.network dhcpcd[558]: enp34s0: carrier acquired
Apr 14 13:31:26 kong.network dhcpcd[558]: enp34s0: IAID 5d:07:fb:77
Apr 14 13:31:26 kong.network dhcpcd[558]: enp34s0: adding address fe80::e0b4:918d:cdee:b582
Apr 14 13:31:27 kong.network dhcpcd[558]: enp34s0: soliciting an IPv6 router
Apr 14 13:31:27 kong.network dhcpcd[558]: enp34s0: rebinding lease of 192.168.1.226
Apr 14 13:31:27 kong.network dhcpcd[558]: enp34s0: probing address 192.168.1.226/24
Apr 14 13:31:32 kong.network dhcpcd[558]: enp34s0: leased 192.168.1.226 for 86400 seconds
Apr 14 13:31:32 kong.network dhcpcd[558]: enp34s0: adding route to 192.168.1.0/24
Apr 14 13:31:32 kong.network dhcpcd[558]: enp34s0: adding default route via 192.168.1.1
Apr 14 13:31:40 kong.network dhcpcd[558]: enp34s0: no IPv6 Routers available
Hosts are set up (I believe) correctly:
$ cat /etc/hostname
kong.network
$ cat /etc/hosts
# Static table lookup for hostnames.
# See hosts(5) for details.
127.0.0.1 localhost
::1 localhost
127.0.1.1 kong.network
From a few other support threads[0,1], I've tried the following:
$ sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = cubic
$ sysctl net.ipv4.tcp_ecn=0
net.ipv4.tcp_ecn = 0
[0]: https://bbs.archlinux.org/viewtopic.php?id=235178
[1]: https://bbs.archlinux.org/viewtopic.php?id=245690
Last edited by lucianolaratelli (2022-04-14 18:02:23)
Offline
Why on earth has your network adapter a secondary IPv4 address (192.168.1.226/24)?
Offline
Why on earth has your network adapter a secondary IPv4 address (192.168.1.226/24)?
I think that was my fault. I incorrectly installed dhcpcd while troubleshooting because I forgot Network Manager has a DHCP client built in. I uninstalled it and now only have a primary IPv4 address.
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp34s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 2c:f0:5d:07:fb:77 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.225/24 brd 192.168.1.255 scope global dynamic noprefixroute enp34s0
valid_lft 86196sec preferred_lft 86196sec
inet6 fe80::459a:69fd:937d:7bfb/64 scope link noprefixroute
valid_lft forever preferred_lft forever
Offline
Conflicting services fighting over the NIC will slow down the average throughput…
find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
Offline
$ find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
bluetooth.service | bluetooth.target.wants
dbus-org.bluez.service | system
dbus-org.freedesktop.nm-dispatcher.service | system
dbus-org.freedesktop.timesync1.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
p11-kit-server.socket | sockets.target.wants
pipewire-media-session.service | pipewire.service.wants
pipewire-pulse.socket | sockets.target.wants
pipewire-session-manager.service | user
pipewire.socket | sockets.target.wants
reflector.service | multi-user.target.wants
remote-fs.target | multi-user.target.wants
systemd-timesyncd.service | sysinit.target.wants
xdg-user-dirs-update.service | default.target.wants
Offline
You're down to NM only - do the throughput issues remain?
Offline
Things have improved! I'm at half of the speed my router is reporting. Is that the max I can expect?
Offline
The problem is thta you're performing async tests - the speedtest on your client doesn't match the one on your router.
1. https://bbs.archlinux.org/viewtopic.php … 6#p2017886
2. Can your run other speedtests/scripts/downloads on the router?
Offline