I think agoodm explained it very well.
CDN's can be quite aggressive as I expect they constantly dealing with "its too slow " complaints, so threads get bumped up and the window size gets pumped up to a very high value.
CDN's also bring the internet closer to us, but there is a downside, a low RTT in my opinion aggravates this problem, because steam allows you to choose your mirror, I found as an example choosing a mirror further way was quite effective at mitigating the problem.
In my personal experience I had the problem quite bad when I was on VDSL, I never resolved it in what I consider a proper way, but instead did things like apply a speed limit in the steam download client, traffic shaped downloads on my games consoles, and eventually started traffic shaping my ack's on steam. What I noticed on steam is if you restrict the download speed, it still remained very bursty as agoodm described, so if I as an example set it to 30mbit/sec, instead of being constantly around 30mbit/sec it would burst to 60, then stop for a second then burst to 60 again, so it averaged out slower, but when it bursted, it was prone to harming the quality of my connection. I discovered shaping the ack's upstream would naturally slow it down to a more constant speed by reducing the congestion window on the CDN sending the data. The most effective shaping was using an intermediate VPN and shaping the output to myself from that. I also late on artificially added latency on dummynet for steam and console traffic.
I had all sorts of potential causes of the problem including the very small buffers from the ISP or backhaul provider, but of course none of this was ever proven, it would be very difficult to do so. However one day when I had issues on the VDSL connection I started running my entire lan from 4G over my phone and noticed the behaviour completely changed, it no longer had these symptoms, and I could push the connection to 99% with less of an issue than if I was pushing the VDSL to 80%. Once I witnessed this I started the process of changing to a difference fixed line connection.
I then moved to gig1 on Virgin Media which is carried out over DHCP not PPPoE, and had much more bandwidth, VM do buffer a lot more data as well. The problems completely vanished, I removed all configurations related to managing downstream traffic, and only left a basic upload QoS in place.
I am now on a gigabit both ways connection to CityFibre via AAISP, initially I had a regression although it was nowhere near as bad as VDSL was, I then moved to more powerful hardware so the PPPoE wasnt saturating the CPU and made sure I had working max-mss headers. The connection also uses baby jumbo frames to allow a 1500 byte MTU, all these changes, its now almost as good as things were on VM. It is also worth mentioning I cant fully saturate the connection from a single device due to having a gigabit LAN, this may be helping things, as it kind of acts as a built in QoS that keeps a bit of unutilised bandwidth at all times.
Since gigabit is harder to saturate, I think that alone would improve things, I do think providing you provide enough hardware grunt to drive the PPPoE and make sure you dont have fragmentation issues, then upgrading to a faster connection alone might kill off the problem.
Because of my previous VDSL issues is why I took an interest in your post.
Edited by Chrysalis (Sat 26-Oct-24 18:15:51)