On Thu, 2012-08-30 at 15:59 -0700, Dave Taht wrote: > I have finally found the source of the issues I was having with htb + > fq_codel at low bandwidths, and it wasn't htb to the extent I thought > it was. > > It was fq_codel's use of byte quantums, which was resulting in head of > line blocking for multiple streams. > > The undesirable behavior (quantum of 1500) > > A new stream, 15 acks (1500 bytes or so) > B new stream, 4 acks (66 bytes each) > C new stream, 1 packet, 1500 bytes > > Each stream would be delivered in an entire quantum's quantity before > the next. This is basically something that is nearly unnoticable at > higher bandwidths, but down here in the slow moving mud, it's quite > significant. At 1 mbit, 1500 bytes is forever... > > Better mixing behavior results from > > A 1 packet > B 1 packet > C 1 packet (if not larger than quantum) > A 1 packet "" > B 1 packet "" > ... > > While I have a patch for this (all 5 lines of it), which does this > sort of mixing, it crashes under load, but I'll get there. Behavior > before it crashes is rather nice, where before I was observing > something like 36 ms of delay with htb for: small packets, "sparse" or > ANT streams under a variety of loads, it drops below 3ms in the > general case for those. Both qos-scripts and simple-qos benefit > hugely. > > One of these three sets of changes to fq_codel_dequeue or enqueue is > dubious. (well, I have a half dozen other patches and fixups to codel > and fq_codel in the queue too, so have to rip out each). But yea! this > is the low bandwidth behavior we want!
You dont need a patch, fq_codel has a quantum parameter, default to 1514 Just set it to 256 if you really feel the need. _______________________________________________ Codel mailing list Codel@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/codel