Thread (2 messages) 2 messages, 2 authors, 2013-07-02

Re: [PATCH net-next] netem: use rb tree to implement the time queue

From: David Miller <davem@davemloft.net>
Date: 2013-07-02 01:08:08

From: Eric Dumazet <redacted>
Date: Fri, 28 Jun 2013 07:40:57 -0700
From: Eric Dumazet <edumazet@google.com>

Following typical setup to implement a ~100 ms RTT and big
amount of reorders has very poor performance because netem
implements the time queue using a linked list.
-----------------------------------------------------------
ETH=eth0
IFB=ifb0
modprobe ifb
ip link set dev $IFB up
tc qdisc add dev $ETH ingress 2>/dev/null
tc filter add dev $ETH parent ffff: \
   protocol ip u32 match u32 0 0 flowid 1:1 action mirred egress \
   redirect dev $IFB
ethtool -K $ETH gro off tso off gso off
tc qdisc add dev $IFB root netem delay 50ms 10ms limit 100000
tc qd add dev $ETH root netem delay 50ms limit 100000
---------------------------------------------------------

Switch netem time queue to a rb tree, so this kind of setup can work at
high speed.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Stephen Hemminger <stephen@networkplumber.org>
Looks good, nice work Eric, applied.

Let's see how long that skb->{prev,next} trick holds up ;-)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help