I'd like my game client to download some extra assets in the background, but I want it to rate limit itself so it has less effect on any other network traffic.
I imagine I could rate limit on the server side through a web server setting, but I'd rather the client gets to choose its own rate limit so it can also have times when it downloads at a faster rate.
What is the right way to do this?
I'll be using HTTPS for the downloads.
Is there some way to inform the TCP or HTTP stack that you only want to receive data at a certain speed for a particular connection?
Or do I have to just slow down the rate at which I am reading it from the HTTP stream?
Slowing down my rate of reading seems like I am relying on TCP fallback logic to handle my slow processing speed, rather than informing it up front that I want to be a good citizen and use less bandwidth.