I'm having very weird performance issue with downloading files.
Networking:
- Huawei HG8240H router ( ISP ) - 1 Gbps FO link
- TP-Link Archer C6 AC1200 connected to that Huawei router with 1 Gbps port serving WiFi 5GHz
Computers:
- ASUS Zephyrus G14 ROG | Ryzen R9 5900HS | 32 GB RAM | USB3 ethernet additional adapters | MediaTek WiFi6 MT7921 built in | Windows 11 Pro | Windows Defender only
- Dell Latitude 5480 | I5-7440HQ | 32 GB RAM | Intel I219-LM built in LAN card | Intel Dual Band Wireless-AC 8265 WiFi built in | Windows 10 Pro | ESET AV
- PC Asrock Z87 Extreme 4 | I7-4700K | 16 GB RAM | Intel I217-V 1 Gbps LAN built in | Windows 7 Pro | ESET AV ( almost 10 year old machine )
USB3 ethernet adapters:
- ASUS 2.5 Gbps C2500 USB RJ45 ( Realtek RTL8156 )
- Ugreen 1 Gbps USB RJ45 ( ASIX AX88179 )
Transfering in LAN or checking speedtest.net get 940+ Mbps over 110 MB/s ( for speedtest in most scenarios multisession ) on all computers.
Issue:
When I download something with USB3 ethernet adapters it's almost in all cases slower 2-8 times than downloading same file with PC with Intel ethernet card on motherboard. In some cases even downloading with WiFi is more stable and faster than with USB3 adapters.
Very often download is starting with good speed like 70-80 MB/s and constantly falling down even to 4-5 MB/s. For example WiFi starts slower and speed is nicely raising then it keeps good stable value like 40 MB/s ( I have 1200 ac ).
I have no idea why this is so wrong.
Here is example video:
USB Adapter: https://youtu.be/JZamlY7rY9s ( verify how bad is after 40 s )
PC Download: https://youtu.be/HVai_LmFSdE ( speed is almost constant )
Tried:
- Removed ASUS C2500 device from Windows & checked 3 drivers - best is from Microsoft (2015 year ), worst are from Realtek (2020 year and 2022 year )
- Tried to plug laptops directly into ISP router, different ports and different cables ( same cable as PC too ).
- Changed USB ports for USB3 adapters - even USB-C with additional adapter ( Unitek ). Also tested it with PC.
- Changed some settings in driver related to TCP Offload and Control Flow Mode Select: Passive / Agressive
- Reseting network - Settings > Network & internet > Advanced network settings > Network reset
- Used TCP Optimizer ( tuning) from https://www.speedguide.net/downloads.php
- Tested different browsers. Edge, Chrome, Firefox, SRW Iron, Opera and wget.
- Checked power/battery plans from silnet, normal, performance. No matter if it's plugged or not to power cord.
- Plugged that USB3 adapter to PC - same problems.
- Lowered MTU from 1500 to lower values like 1458, 1300 etc.
- All computers have fast SSD drives capable of writing much more than 100 MB/s.
- Checked different settings for registry HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters including TcpWindowSize ( values between 131072 and 16000000 ), GlobalMaxTcpWindowSize ( values between 131072 and 16000000 ) and Tcp1323Opts ( 0,1,3 ) - first I thought that it helped but I see that it's slowing down in some scenarios ( on PC it doesn't )
- Changed Congestion Provider from CUBIC to CTCP.
- Tested with Linux Lubuntu BootCD - this one solves issue - speeds are much higher and more stable, but I want to make it fast on Windows 11.
I discovered that if network latency is low like LAN or let's say 3-5 ms speeds are awesome ( over 100 MB/s ) no matter if I use adapter or normal ethernet card, but if it's something from larger distance like other country for example from Germany, Sweden etc. with latency 25+ ms speeds are much lower than with PC ethernet card. I know this might be related to TCP buffers but like I said I used optimized option in TCP Optimizer for that network cards.
TCP Global :: Zephyrus
netsh interface tcp show global
TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State : enabled
Receive Window Auto-Tuning Level : normal <<<<<<<<< enabled
Add-On Congestion Control Provider : default
ECN Capability : disabled
RFC 1323 Timestamps : disabled
Initial RTO : 2000
Receive Segment Coalescing State : disabled
Non Sack Rtt Resiliency : disabled
Max SYN Retransmissions : 2
Fast Open : enabled
Fast Open Fallback : enabled
HyStart : enabled
Proportional Rate Reduction : enabled
Pacing Profile : off
Congestion :: Zephyrus:
Get-NetTCPSetting | Select SettingName, CongestionProvider
SettingName CongestionProvider
----------- ------------------
Automatic
InternetCustom CUBIC
DatacenterCustom CUBIC
Compat NewReno
Datacenter CUBIC
Internet CUBIC
TCP Global & congestion :: PC
Parametry globalne TCP
-------------------------------------------------------
Stan skalowania odbioru : enabled
Stan odciążania (technologia Chimney) : disabled
Stan NetDMA : disabled
Bezpośredni dostęp do pamięci podręcznej (DCA) : enabled
Poziom autodostrajania okna odbierania : normal <<<<<<<< enabled
Dostawca dodatkowej kontroli przeciążenia : ctcp <<<<<<<< different in Win7
Funkcja ECN : disabled
Sygnatury czasowe RFC 1323 : disabled
I changed Congestion Provider from CUBIC to CTCP - it didn't help.
The TCP global default template is internet
TCP Supplemental Parameters
----------------------------------------------
Minimum RTO (msec) : 300
Initial Congestion Window (MSS) : 10
Congestion Control Provider : ctcp
Enable Congestion Window Restart : disabled
Delayed ACK timeout (msec) : 40
Delayed ACK frequency : 2
Enable RACK : enabled
Enable Tail Loss Probe : enabled
Does anyone have idea what else I could check and how to solve this performance problems for laptop without built in ethernet card? It would be great to fix somehow that USB3 adapters. I could buy better WiFi6 router but this is not a preferred solution.
Nothing helps.