[Codel] BQL support in Ethernet drivers (and Kathie Nichols and Van Jacobson's new AQM, codel)
Rick Jones
rick.jones2 at hp.com
Mon May 21 13:24:39 EDT 2012
On 05/20/2012 08:48 PM, Dave Taht wrote:
> Thx for the numbers!
>
> Could you do a TCP_RR while under load from UDP_STREAM?
If you want to generate pretty pictures while doing so, you can probably
tweak http://www.netperf.org/svn/netperf2/trunk/doc/examples/bloat.sh
rick jones
>
> On Mon, May 21, 2012 at 1:31 AM, Tobias Diedrich
> <ranma+openwrt at tdiedrich.de> wrote:
>> Tobias Diedrich wrote:
>>> Dave Taht wrote:
>>>> In looking over the enormous stack of boards and drivers that openwrt
>>>> supports, I see that many of the ethernet drivers don't yet support
>>>> Linux 3.3's "Byte Queue Limits", which are discussed here:
>>>>
>>>> http://lwn.net/Articles/454390/
>>>>
>>>> It would be good if more did. They improve network performance in the
>>>> general case enormously, particularly when a link is not connected at
>>>> it's peak wire speed.
>>>>
>>>> *Adding* support for BQL to an ethernet driver is trivial, here's an
>>>> example of how.
>>>
>>> I tried adding BQL to the ramips ethernet driver, however I found
>>> some interesting behaviour while doing
>>> "root at OpenWrt:~# netperf -l 120 -t UDP_STREAM -H myserver"
>>>
>>> It looks like the briding code still needs to implement this as well?
>>>
>>> netperf UDP_STREAM:
>>> iface limit_min inflight tx mbps remote mbps ping ms
>>> eth0 0 ~15000 95.71 95.71 ~10ms
>>> eth0 1000000 ~300000 177.98 23.28(*) ~30ms
>>> br0 0 ~15000 154.88 33.94(*) ~120ms
>>> br0 1000000 ~300000 170.92 25.57(*) ~30ms
>>>
>>> (*) bwm-ng on the server showed ~100mbps incoming...
>> [...]
>>> Haven't tried codel yet...
>>
>> Turns out, it works nicely with codel, even with the bridge:
>>
>> netperf: netperf -l 120 -t UDP_STREAM -H myserver
>> fq_codel: tc qdisc add dev eth0 handle 1: root fq_codel target 5ms
>>
>> iface eth0 qdisc bql inflight tx mbps sys time ping ms
>> eth0 pfifo_fast no n/a 182.98(*) 96.43s ~30ms
>> eth0 fq_codel no n/a 177.98(*) 96.09s ~30ms
>> eth0 pfifo_fast yes ~15000 95.71 42.73s ~10ms
>> eth0 fq_codel yes ~15000 95.19 51.52s ~4ms
>> br0 pfifo_fast yes ~15000 155.19(*) 94.24s ~120ms
>> br0 fq_codel yes ~15000 90.92 65.52s ~4ms
>>
>> (*) 100mbit link after the switch, ifconfig eth0 shows no drops,
>> so I'm assuming they are getting dropped by the switch.
>>
>> --
>> Tobias PGP: http://8ef7ddba.uguu.de
>
>
>
More information about the Codel
mailing list