[Codel] [PATCH net-next] codel: use Newton method instead of sqrt() and divides

Roger Jørgensen rogerj at gmail.com
Mon May 14 07:34:53 EDT 2012


On Mon, May 14, 2012 at 10:23 AM, Eric Dumazet <eric.dumazet at gmail.com> wrote:
> On Mon, 2012-05-14 at 08:51 +0200, Roger Jørgensen wrote:
>
>> could you pass me the script for setting that up, got nowhere with any
>> of the previous... will try the same on some 10GigE servers over v6...
>
> If multi-queue, you probably could use :
>
> EST="est 1sec 4sec"
> TXQUEUES=24
>
> DEV=eth7
> # ethtool -K $DEV tso off gso off
> tc qdisc del dev $DEV root 2>/dev/null
> tc qdisc add dev $DEV root handle 1: mq
>
> for i in `seq 1 $TXQUEUES`
> do
>  hexa=$(printf %02x $i)
>  tc qdisc add dev $DEV parent 1:$hexa fq_codel
> done

I did it much simpler, with nothing changed I get  2.42Gbits/sec
through my range of VMs.


                         rtt min    avg     max     mdev    bw test showing
plain                  1,037      2,327  5,123   0,558    2,4Gbps
TBF                   1,529      2,87   8,275   0,547    1,5Gbps
fq_codel +ecn     0,907     1,82    5,214   0,547    1,4Gbps
fq_codel noec     0,905     1,913   4,95    0,586   1,4Gbps



regular ping is like this then

--- 2a00:d740:110:8000::a ping statistics ---
500 packets transmitted, 500 received, 0% packet loss, time 499742ms
rtt min/avg/max/mdev = 1.037/2.327/5.123/0.558 ms



when I add fq_codel to the mix:
root at codel-core:~# tc  qdisc show
...
qdisc fq_codel 804b: dev eth1 root refcnt 2 limit 5p flows 5 quantum
1514 target 499us interval 5.0ms ecn
qdisc pfifo_fast 0: dev eth2 root refcnt 2 bands 3 priomap  1 2 2 2 1
2 0 0 1 1 1 1 1 1 1 1


--- 2a00:d740:110:8000::a ping statistics ---
500 packets transmitted, 500 received, 0% packet loss, time 499770ms
rtt min/avg/max/mdev = 0.907/1.820/5.214/0.547 ms


fq_codel without ecn
root at codel-core:~# tc  qdisc show
...
qdisc fq_codel 804c: dev eth1 root refcnt 2 limit 5p flows 5 quantum
1514 target 499us interval 5.0ms
qdisc pfifo_fast 0: dev eth2 root refcnt 2 bands 3 priomap  1 2 2 2 1
2 0 0 1 1 1 1 1 1 1 1

--- 2a00:d740:110:8000::a ping statistics ---
500 packets transmitted, 500 received, 0% packet loss, time 499763ms
rtt min/avg/max/mdev = 0.905/1.913/4.950/0.586 ms





using tbf,
root at codel-core:~# tc qdisc show
...
qdisc tbf 804a: dev eth1 root refcnt 2 rate 1560Mbit burst 20280b lat 5.0ms
qdisc pfifo_fast 0: dev eth2 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0

--- 2a00:d740:110:8000::a ping statistics ---
500 packets transmitted, 500 received, 0% packet loss, time 499746ms
rtt min/avg/max/mdev = 1.529/2.879/7.275/0.547 ms



-- 

Roger Jorgensen           | ROJO9-RIPE
rogerj at gmail.com          | - IPv6 is The Key!
http://www.jorgensen.no   | roger at jorgensen.no



More information about the Codel mailing list