STEAM GROUP
Steam Client Beta SteamBeta
STEAM GROUP
Steam Client Beta SteamBeta
18,321
IN-GAME
82,091
ONLINE
Founded
8 January, 2013
All Discussions > Bug Reports > Topic Details
Steam content server IPv6 connection problems (cause of long "Starting Download" times)
Short Version

In some regions (including New York and London), a subset of Steam's content servers will fail to allow a connection via IPv6 about 50% of the time. The practical result is that when starting a download, Steam will sit at the "Starting Download" step for a long time, possibly over a minute if you're unlucky. This is completely unnecessary and only happens because one or more content servers has failed to accept the Steam client's IPv6 connection, and the client waits until the connection attempt times out before trying another server.

Note that this seems to be an IPv6-only problem, if your ISP or system only uses IPv4 then it should be unaffected.

This can be avoided by setting another region's content servers in Steam's Download settings. For example if you're in the UK and you change your download region to "France - Paris" you should never get stuck at "Starting Download" again, because the Paris servers seem unaffected by this problem.

Full Details

Taking London as an example, there are 14 Steam content servers currently active. They are named cacheX-lhr1.steamcontent.com, where X is a number in the ranges 1-2 or 5-16. Of those 14 servers, 6 servers will fail to accept an IPv6 connection about 50% of the time, while the other 8 seem to work fine and accept an IPv6 connection 100% of the time.

(At the time of writing the "bad" servers are 1, 5, 6, 10, 13 and 16 and the "good" ones are 2, 7, 8, 9, 11, 12, 14 and 15. This may change over time.)

When Steam starts a download, it will choose one of those servers to retrieve the manifest for each depot that needs to be downloaded. If it chooses a "bad" server then there's 50% change that the IPv6 connection won't be accepted, but the Steam client won't try another server until the connection attempt times out, which takes about 20 seconds. If it hits multiple bad servers then it can take over a minute before it retrieves all of the required depot manifests and can actually start the content download.

You can see this happening in the Steam content log, which is usually located at: C:\Program Files (x86)\Steam\logs\content_log.txt

When a download gets stuck at "Starting Download" you will see "Received 0 (Invalid) HTTP response for depot..." which is the server failing to accept the connection and then the client eventually timing out before trying another server.

It's easy to prove that this is the problem by repeatedly attempting a socket connection to one of the content servers and seeing how many attempt succeed. Here's a Python script that compares the results for London servers 1 (bad) and 2 (good), over 100 IPv6 connection attempts.

import socket TEST_RUNS = 100 TEST_SERVERS = ["cache1-lhr1.steamcontent.com", "cache2-lhr1.steamcontent.com"] for hostname in TEST_SERVERS: addr_ipv6 = socket.getaddrinfo(hostname, 443, socket.AF_INET6)[0][4][0] success = 0 failure = 0 for i in range(TEST_RUNS): with socket.socket(socket.AF_INET6) as s: try: s.settimeout(1) s.connect((addr_ipv6, 443)) success += 1 except Exception as e: failure += 1 print(f"{hostname} ({addr_ipv6}): {(success/TEST_RUNS)*100:.2f}% success, {(failure/TEST_RUNS)*100:.2f}% failure")

Example output:

cache1-lhr1.steamcontent.com (2a01:bc80:4:100::8): 52.00% success, 48.00% failure cache2-lhr1.steamcontent.com (2a01:bc80:4:100::9): 100.00% success, 0.00% failure

And this is an example comparing good/bad New York servers:

cache1-iad1.steamcontent.com (2602:801:f002:101::a2fe:c003): 45.00% success, 55.00% failure cache13-iad1.steamcontent.com (2602:801:f002:102::a2fe:c024): 100.00% success, 0.00% failure

And this is testing every Paris server, showing they all work as they should, with no connection attempts failing:

cache1-par1.steamcontent.com (2a01:bc80:a:100::b919:b603): 100.00% success, 0.00% failure cache2-par1.steamcontent.com (2a01:bc80:a:101::b919:b623): 100.00% success, 0.00% failure cache3-par1.steamcontent.com (2a01:bc80:a:100::b919:b604): 100.00% success, 0.00% failure cache4-par1.steamcontent.com (2a01:bc80:a:101::b919:b624): 100.00% success, 0.00% failure cache5-par1.steamcontent.com (2a01:bc80:a:100::b919:b605): 100.00% success, 0.00% failure cache6-par1.steamcontent.com (2a01:bc80:a:101::b919:b625): 100.00% success, 0.00% failure cache7-par1.steamcontent.com (2a01:bc80:a:100::b919:b607): 100.00% success, 0.00% failure cache8-par1.steamcontent.com (2a01:bc80:a:101::b919:b628): 100.00% success, 0.00% failure cache9-par1.steamcontent.com (2a01:bc80:a:100::b919:b609): 100.00% success, 0.00% failure cache10-par1.steamcontent.com (2a01:bc80:a:100::b919:b60a): 100.00% success, 0.00% failure cache11-par1.steamcontent.com (2a01:bc80:a:100::b919:b60b): 100.00% success, 0.00% failure cache12-par1.steamcontent.com (2a01:bc80:a:101::b919:b62a): 100.00% success, 0.00% failure

I have reproduced the issue from networks other than my own home network (including a Google Cloud VM) so I know it's a problem with my own internet connection, it's a Steam server issue. Not sure if this will make it to anyone at Valve who can do anything about it but it's worth a try!
Last edited by Trilby; 20 Mar @ 1:57am
< >
Showing 1-4 of 4 comments
nian 19 Mar @ 7:21pm 
So that's why sometimes my downloads fail with "connection timeout". Good to know. :steamthumbsup:
I can prevent this issue from happening by disabling IPv6 in my network adapter settings, right? :lunar2020thinkingtiger:
Trilby 20 Mar @ 1:59am 
Originally posted by nian:
So that's why sometimes my downloads fail with "connection timeout". Good to know. :steamthumbsup:
I can prevent this issue from happening by disabling IPv6 in my network adapter settings, right? :lunar2020thinkingtiger:
I don't think this problem will cause downloads to fail completely, as the Steam client always seems to try another content server if it fails to connect to one of them. It's definitely worth trying disabling IPv6 temporarily though, to see if it's this problem or something else IPv6-related.
nian 20 Mar @ 3:07am 
Originally posted by Trilby:
Originally posted by nian:
So that's why sometimes my downloads fail with "connection timeout". Good to know. :steamthumbsup:
I can prevent this issue from happening by disabling IPv6 in my network adapter settings, right? :lunar2020thinkingtiger:
I don't think this problem will cause downloads to fail completely, as the Steam client always seems to try another content server if it fails to connect to one of them. It's definitely worth trying disabling IPv6 temporarily though, to see if it's this problem or something else IPv6-related.
What I meant is that I start a download and it never begins, after a few seconds the download gets cancelled and just shows "content servers unreachable" or "connection timeout". This does not always happen and restarting the Steam client immediately fixes the issue. I have IPv6 enabled, will keep an eye out for the log and post the relevant part here if it happens again.
i bought a game the other day and i was puzzled about how long it took to download it. but it did download it. i dont think im using the uk servers since im in europe. but steam detected my connection speed correct but yet sat there for about 30-60 sec before it even began the download. about halfway in it halted and connection speed dropped from 900mb/s to around 100/150mb/s. so that was a massive drop. took almost 30 min to fully install the game. which is quite a long time to me. in all due respect this game i installed is 110GB. so also aware that can take a few minutes. but still the connection speed while downloading seemed to halt sometimes. but i got it down and i can play it so all good. my download section keep saying administer downloads though, although there is nothing to download in the section. which is rather annoying because you keep checking up in the section just to find there is nothing in there. win11 Pro
Last edited by THEWIZARDDK; 20 Mar @ 3:52am
< >
Showing 1-4 of 4 comments
Per page: 1530 50

All Discussions > Bug Reports > Topic Details
Date Posted: 19 Mar @ 5:01pm
Posts: 4