On Wed, 2012-11-28 at 09:44 -0800, Paul E. McKenney wrote: > You lost me on this one. It looks to me like net/sched/sch_fq_codel.c > in fact does hash packets into flows, so FQ-CoDel is stochastic in the > the same sense that SFQ is. In particular, FQ-CoDel can hash a thin > session into the same flow as a thick session, which really is the > birthday effect. > > Now FQ-CoDel uses a 1024-bucket hash table compared to SFQ's default > of 128 buckets, so FQ-CoDel will have smaller collision probabilities > than will SFQ on a given set of flows. In addition, FQ-CoDel seems > to be able to tolerate a limited number of collisions among thin flows, > while SFQ doesn't distinguish thin from thick. > > But the possibility of stochastic collision behavior really is there > with FQ-CoDel. I hasten to add that in practice, I do not expect this > possibility of stochastic behavior to be a problem in the common case. > > Or am I missing your point? Or perhaps your definition of either > fairness or stochastic?
Thats absolutely correct, fq_codel uses a stochastic hashing exactly like SFQ. In fact, I wrote fq_codel using same base, after patching SFQ and hitting some limits last year. Note that I played a bit with a version using a non stochastic hash, we tested it here in our labs. This can help if you really want to avoid a thick flow sharing a thin flow bucket, but given that all packets are going eventually into the Internet (or equivalent crowded network), its not really a clear win. Its more an academic issue... _______________________________________________ Cerowrt-devel mailing list [email protected] https://lists.bufferbloat.net/listinfo/cerowrt-devel
