steam-for-linux
steam-for-linux copied to clipboard
Http2 makes downloading speed slow
I had been having slow download speeds under steam on linux and was looking for a fix when i came across this reddit forum and my speeds got instantly improved
https://www.reddit.com/r/linux_gaming/s/4NCYHM9WvP
But what could be causing this?
Iv tried several linux distros this past week from nobara, fedora, debian, and now opensuse and they all have the same issue and disabling http2 using a .cfg in .steam/steam/steam_dev.cfg fixes the issue on all of them
@nClientDownloadEnableHTTP2PlatformLinux 0 @fDownloadRateImprovementToAddAnotherConnection 1 @cMaxInitialDownloadSources 15
Here is a video of someone explaining it aswell and showing the improvements it made
https://youtu.be/A_kRdad3eb4?si=5EgmSu4ZpW26aE2K
Can confirm this improves speeds, although in an apples to apples test with Windows; download speeds are half of what is possible with the same hardware.
Weight prioritization appears to be incorrectly set by the Linux client. Normally this is a browser request, but without knowing how the client is sending the request we're in the dark. Hopefully a Valve dev sees this and can chime in or fix it.
Also experiencing this issue and have tried multiple distros also because I thought it might be an Arch linux specific problem. Lucky if I can get 3MB/s from my gigabit connection. By adding those options to the file I top out at around 40MB/s. My Windows 11 install pulls over 100MB/s. Hope this gets looked at soon, honestly surprised there's not more people talking about this.
The fix helps me get better speeds, although Windows 10/11 is much faster still. 650mbps minimum with my local server.
Meanwhile I gotta switch to US Boston on any Linux distro and even then it goes between 150-500mbps after adding the steam_dev.cfg fix.
Not sure how long it's been happening for but Ubuntu, Arch, and Fedora based distros all have this problem.
Yup same fix helps, but I'm still missing about ~30MB/s even with the fix (110MB/s before or on windows down to ~80MB/s[measly 35MB/s without the fix])
On my Arch setup the second line actually slows download speeds. Only the HTTP2 one is needed.
- Without cfg: 30-40mbps
- With both lines: 100mbps
- With just the first: 600mbps
This is on a 1Gbit connection in northern Europe.
Thank you so much. With just "@nClientDownloadEnableHTTP2PlatformLinux 0" in the .cfg my speeds went from 10MB/s to 48MB/s, which is still far off from the 74MB/s that I used to get way back when I used Windows, but it's a MASSIVE improvement. The second line: "@fDownloadRatelmprovement ToAddAnother Connection 1.0" trashed the speed again so I left it out.
I'm experiencing the exact same results as @laurirasanen 1.5gbps connection in Ontario, Canada, Arch.
My steam deck is also getting the same ~30mbps download speeds as my Arch desktop. I have not tested the fix on it.
@iamshadow2008 Your issues may also be DNS related. I was observing ~10mbps before I set up a caching server. Check the arch wiki's steam troubleshooting guide for slow download speeds here (if you're not on arch these instructions won't really help but checking the DNS resolution time of repetitive requests may help)
I can confirm that disabling HTTP2 fixed it on my NixOS desktop as well as my Steamdeck - I went from ~15Mbps on each to ~500Mbps on each.
I was also having slow download speeds, I'm only on linux (pop-os), can't tell about the Windows world if its faster or not. Adding these 2 settings fixed completely my issue. Went from 15-20 MB/sec to 46MB/sec, which is my max speed (360Mbps). I haven't tried if the second setting is needed,probably not but in my case I'm still maxing out.
It seems something recent, because I have been with the same ISP and internet package for the past 4-5 years and always did my max speed when downloading with steam.
is it possible for ISPs to have an effect on this issue? I had no problems on EndeavourOS for a couple of years until i had to move to a new neighborhood. With a new neighborhood usually comes a new ISP, which was when I started seeing this issue. The recommended fix in the OP remedied the issue. Sadly, I don't know anyone in my old neighborhood, i'd be interested to know if anyone had a similar experience to mine.
Before I did anything I was seeing exactly half of the speed I see in Windows 10. With adding dnsmasq I saw a speed increase for a time, but it dropped to half again. Turning off HTTP2, I've got around 98% of my windows speed. Happy with that - lets hope it sticks :-)
This only "improves" download speed on my end. but it still isn't able to reach the full potential i get when using Windows. There is something wrong. And all the fixes out there only seem to "improve". Though if you have a somewhat fast connection you still might notice slower speeds than possible. For example i never get my 1Gbps i only get around 700Mbps.. if i disable Https2.. if i don't disable it i will be at around 300Mbps.. while in Windows i'm at pretty much 900+Mbps. I assume lots of people who claim this fixes the issue don't have such a fast connection therwfore it already maxes speed after that fixes.
All the workarounds that are around do not really fix the issue. Just in case someone mentions them again:
- Disabling ipv6 - doesn't work it even makes using Steam impossible on my End - it wont connect at all after that.
- Using dnsmasq - has no effect i litterally tried all kind of combinations - didn't get rid of the issue
- Some MTU fix that is around: No effect, don'T waste your time on this
- using the http2 fix is the only fix that has an impact so far though it still doesn't give me fullspeed downloads
@YoinkerBoinker I also have a Gigabit connection and with HTTP2 disabled I max out at around 900 Mbit/s, which is approximately 930 Mbit/s on the wire. Can't compare to Windows but that is the maximum my connection allows.
With HTTP2 enabled I also end up somewhere at around 300 Mbit/s.
@YoinkerBoinker I also have a Gigabit connection and with HTTP2 disabled I max out at around 900 Mbit/s, which is approximately 930 Mbit/s on the wire. Can't compare to Windows but that is the maximum my connection allows.
With HTTP2 enabled I also end up somewhere at around 300 Mbit/s.
Interessting. Also interesting: I have a second system. And when i disable HTTP2 on that system nothing changes. The speed stays slow on that system. I can litterally do whatever i want. Even reinstalled Arch there twice and also tried Suse. No luck. My Mainsystem however will see speeds close to Max after disable HTTP2.. but still windows is faster. It seems like Hardware/Networkchip also has something to do with this. Because i have no clue why my other PC wouldn't be able to benefit from that workaround at all (on Windows that system also will get fullspeed).
Hello! Sorry if this isn't helpful, but I had the same issue across every distribution I tried, which was: Ubuntu, Arch, EndeaverOS, and Mint. Tonight I tried Bazzite which is based off Fedora 39. It looks like the issue is fixed specifically with this distribution but I'm not sure if it's something they've done, or if it's part of something in Fedora 39. If any of you have some time, could you try Bazzite or Fedora 39 and report back if this issue is fixed for you?
It might be helpful to check and see if it's fixed this for anyone else and then maybe work from there.
Bazzite has in their github page saying they applied that fix and the gui helper they have also has this fix that can be applied
Replying to https://github.com/ValveSoftware/steam-for-linux/issues/10248#issuecomment-1962293361
Where is that? I checked their github page but can't seem to find it getting mentioned (or i'm just too stupid).
On Windows I consistently get 90-95 Mbit/s, on Linux, before the fix 20Mbit/s and now after the fix 80 Mbit/s There's still room for improvement ;)
The fix:
@nClientDownloadEnableHTTP2PlatformLinux 0
Kubuntu 22.04
does using ipv4 instead of ipv6 have any impact for anyone else? I'm using OPNSense router, and had issues with ipv6 that resulted in a strange bug where some elements of steam were not loading properly. I resolved them by configuring ipv6 DNS to cloudflare's. I just recently found a setting to prefer ipv4 over ipv6 and the result is i get a small bump in download speed (in addition to disabling HTTP/2):
I found another setting that has made a difference to my download speeds, @cMaxInitialDownloadSources
. Steam still isn't using the full 2.5Gbps of my connection, but now it's much closer.
Config | Speed |
---|---|
Stock | 20MB/s |
Http2 Disable, Rate Improvement | 65MB/s |
Http2 Disable, Rate Improvement, Initial Sources | 170MB/s |
My steam_dev.cfg file:
@nClientDownloadEnableHTTP2PlatformLinux 0
@fDownloadRateImprovementToAddAnotherConnection 1
@cMaxInitialDownloadSources 15
I noticed that download_sources
in the steam console only ever showed me connected to 4 servers.
I found that setting @cMaxInitialDownloadSources 15
made it connect to 15 servers immediately. My download speed jumped to a max of 170MB/s after only a few seconds, rather than the previous max of 65MB/s it reached after 30 seconds.
its weird that these things havent been applied to the steam client with an update, its another thing that some windows user might notice and go "oh linux is worse at downloading my games on steam, im going back to windows" when that isnt the case, its just certain things need to be enabled to work better. hopefully valve enables these or figures out a better solution to solve this.
Hi, author of the original Reddit post chiming in.
If you decided to change the @fDownloadRateImprovementToAddAnotherConnection
, you should probably set it to 1.1
or just remove it altogether, since setting it to 1
just tells it to connect to any servers, without verifying that it actually downloads faster.
You could also try more than 1.2
, however it might connect to less servers with that value, effectively lowering download speed.
Also of note, for some setups streaming off a single server might be faster than connecting to multiple servers, but take that advice with a grain of salt.
Hello, I've tried
- Adding the two lines to my steam_dev.cfg
- Changing download servers to the next closest one
- dnsmasq
- and this combination's helped me go from sub100 KBPs to sub1MBPs (generally spiking to around 400 - 600KB/s, occasionally 1MB/s, and then steadily decreasing) but it's still very peculiar.
Interestingly, when I tried downloading something on Steam a couple months back, I don't recall any discrepancy in download speed of any sort. I'm not sure what I've changed in my setup since then - if anything, but none of the three fixes I tried above have helped in any significant way.
Usually, I get ~4 MB/s.
so i hade pretty much max for a while using the "fix". Now i'm at 500Mbps again on a connection that should be 1000Mbps. Frustrating.
Same problem and same fix on manjaro and ALT Regular Kde linux create ~/.steam/steam/steam_dev.cfg and added lines:
@nClientDownloadEnableHTTP2PlatformLinux 0
@fDownloadRatelmprovement ToAddAnother Connection 1.0
For me the fix didn't work... I can get around 90MB/s - 100MB/s on windows right at the start of the download process... With Linux i'm getting a max of 11MB/s, (ONLY 10%). I tried the steam_dev.cfg file with all tree suggested commands, also tried them individually, sadly no success. The only improvement it did to me is that the download gets to its top speed (11MB/s) much faster now...
Downloads are slower, CS2 almost unplayable when comparing to Windows... Idk, i'm almost quiting...
----EDIT---- I WAS STUPID
Guys, for some reason the steam installed on Windows defaulted to show the download speed in bits per second, while the Linux version is using bytes per second... so sorry...
For me the fix didn't work... I can get around 90MB/s - 100MB/s on windows right at the start of the download process... With Linux i'm getting a max of 11MB/s, (ONLY 10%). I tried the steam_dev.conf file with all tree suggested commands, also tried them individually, sadly no success. The only improvement it did to me is that the download gets to its top speed (11MB/s) much faster now...
Downloads are slower, CS2 almost unplayable when comparing to Windows... Idk, i'm almost quiting...
The file is supposed to be a .cfg not conf
Make sure its in
.steam/steam/steam_dev.cfg
Also make sure you're using system package steam and not flatpak as that would be a different location for the .cfg
Sorry, I misstyped, the file is a .cfg and it is in the correct place. I'm using the .deb package provided by my distro (POP OS 22.04)
On Windows I get constant speed 930-970Mbps. On Linux maximum 93Mbps. Neither one suggested command helped here. Difference using mentioned commands were about 2-3Mbps. Doesn't matter which location I choose.
Kubuntu 23.10
edit: my big fail. I made some cabling recently, and by mistake used only 100Mbps cable.
The second and third line don't seem to help in my small test case. But the first line helped me the first time and then didn't help me today. I input it via the steam console by going to steam://open/console. The first time I jumped from like 50 M bits ps, to like 300. Today no change. I'm stuck at like 60 Mbps.
Using Fedora 40 Workstation (Intel 12400 CPU, if that helps narrow it down I dunno). Steam flatpak from Flathub. The native RPM had other issues if I remember correctly.
I'm on ethernet Linux Kernel Version: " Linux 6.8.7-300.fc40.x86_64 " uuhh ... MSI motherboard: MSI PRO B660M-G DDR4 LGA 1700 Intel B660 Ethernet is: Realtek® RTL8125BG 2.5Gbps LAN controller
And similarly, speeds are faster when I boot into Windows and download Steam games. This is really frustrating, I hope Valve knows about this.