Linux now uses fqcodel as default queue manager. It solves bufferbloat.
The end-user computer has a faster link than its internet connection upload speed, typically a gig ethernet whereas a xDSL upload speed is a few megabits/s.
If you transfer data to a random website (upload) from the computer, packets will accumulate inside router/modem tx queue, because this is the slowest link between the two hops. This is where it's important to have an AQM running to reorder/drop packets in that queue.
Other AQMs could solve it, if properly implemented, but fq_codel needs no tweaking.
CORRECTION:
fq_codel is not default in Linux, but is default in some distributions, like Fedora.