summary refs log tree commit diff
path: root/net/sched/sch_qfq.c
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2012-01-01 18:33:31 +0000
committerDavid S. Miller <davem@davemloft.net>2012-01-03 12:52:09 -0500
commitd47a0ac7b66883987275598d6039f902f4410ca9 (patch)
treed70709d26a3833e2747126d221bbb2aa3f28ebd7 /net/sched/sch_qfq.c
parent1c015b3b82c92fad375ce7dfff54799cfdfb7a15 (diff)
downloadlinux-d47a0ac7b66883987275598d6039f902f4410ca9.tar.gz
sch_sfq: dont put new flow at the end of flows
SFQ enqueue algo puts a new flow _behind_ all pre-existing flows in the
circular list. In fact this is probably an old SFQ implementation bug.

100 Mbits = ~8333 full frames per second, or ~8 frames per ms.

With 50 flows, it means your "new flow" will have to wait 50 packets
being sent before its own packet. Thats the ~6ms.

We certainly can change SFQ to give a priority advantage to new flows,
so that next dequeued packet is taken from a new flow, not an old one.

Reported-by: Dave Taht <dave.taht@gmail.com>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_qfq.c')
0 files changed, 0 insertions, 0 deletions