On 16 Mar, 2011, at 12:19 am, Stephen Hemminger wrote: >> Knowing the occupancy of the hardware buffer is useful if the size of the >> buffer cannot be changed, because it is then possible to simply decline to >> fill the buffer more than a certain amount. If you can also assume that >> packets are sent in order of submission, or by some other easy rule, then >> you can also infer the time that the oldest packet has spent there, and use >> it to tune the future occupancy limit even if you can't cancel the old >> packet. >> >> Cancelling old packets is potentially desirable because it allows TCPs and >> applications to retransmit (which they will do anyway) without fear of >> exacerbating a wireless congestion collapse. I do appreciate that not all >> hardware will support this, however, and it should be totally unnecessary >> for wired links. > > Have you looked at actual hardware interfaces. They usually are designed to > be "fire and go" with little to no checking by CPU. This is intentional > because > of the overhead of bus and CPU access. Once packets go into the tx ring there > is no choice but to send or shutdown the device.
For a wired device that would certainly make sense. For a wireless device some extra flexibility is plausible, even if it doesn't exist in practice. - Jonathan _______________________________________________ Bloat mailing list [email protected] https://lists.bufferbloat.net/listinfo/bloat
