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@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...

It is notable that the internal interface to the cpu is 1000Mbit,
while the external interface after the built-in switch is only
100Mbit on this device and the switch can drop packets if
the incoming rate is too high.

The switch defaults are:
Back pressure mode: JAM all until BP condition is released
BP_JAM_CNT: 10 (10 packet jam, then one no-jam)
It also supports 'carrier insertion' instead of jamming.
And there are some flow control threshold values that could be
tweaked.

Haven't tried codel yet...

-- 
Tobias                                          PGP: http://8ef7ddba.uguu.de
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to