I wonder why there isn't more effort put in the direction of implementing QoS mechanisms (like throttling blockchain downloads) in the protocol. After all, the network as a whole does not become more efficient when single nodes hog down other nodes due to misconfigured blockchain downloading.
It's complicated. TL;DR the consensus is that first we need to fix the inefficiencies in how Bitcoin Core transmits data, as that could alleviate many of the problems. Here's the 3 year long debate on the subject:
https://github.com/bitcoin/bitcoin/issues/273