HI Aaron,
On Jun 3, 2015, at 07:45 , Aaron Wood <[email protected]> wrote: > I wrote this up on my blog, where I can intersperse text and graphs a bit > better: > > http://burntchrome.blogspot.com/2015/06/htb-rate-limiting-not-quite-lining-up.html > > Basically, I ran a series of tcp_download tests, using increasing ingress > rates with sqm_scripts, and then used flent's box-plots to put the results > into a combined image for comparing. > > On the 3800, it never meets the rate, but it's only off by maybe 5%. As Jonathan pointed out already this is in the range of the difference between raw rates and tcp good put, so nothing to write home about ;) > But on my new WRT1900AC, it's wildly off, even over the same performance > range (I tested it from 80-220Mbps rates in 20Mbps jumps, and saw from > 40-150Mbps. So you started with the WRT1900AC where the wndr3800 dropped off? I wonder maybe the Belkin is also almost linear for the lower range? I also note we adjust the quantum based on the rates: from functions .sh: get_mtu() { BW=$2 F=`cat /sys/class/net/$1/mtu` if [ -z "$F" ] then F=1500 fi if [ $BW -gt 20000 ] then F=$(($F * 2)) fi if [ $BW -gt 30000 ] then F=$(($F * 2)) fi if [ $BW -gt 40000 ] then F=$(($F * 2)) fi if [ $BW -gt 50000 ] then F=$(($F * 2)) fi if [ $BW -gt 60000 ] then F=$(($F * 2)) fi if [ $BW -gt 80000 ] then F=$(($F * 2)) fi echo $F } which we use in the htb invocations via this indirection: LQ="quantum `get_mtu $IFACE $CEIL`” $TC qdisc add dev $DEV root handle 1: `get_stab_string` htb default 12 $TC class add dev $DEV parent 1: classid 1:1 htb $LQ rate ${CEIL}kbit ceil ${CEIL}kbit `get_htb_adsll_string` $TC class add dev $DEV parent 1:1 classid 1:10 htb $LQ rate ${CEIL}kbit ceil ${CEIL}kbit prio 0 `get_htb_adsll_string` $TC class add dev $DEV parent 1:1 classid 1:11 htb $LQ rate 32kbit ceil ${PRIO_RATE}kbit prio 1 `get_htb_adsll_string` $TC class add dev $DEV parent 1:1 classid 1:12 htb $LQ rate ${BE_RATE}kbit ceil ${BE_CEIL}kbit prio 2 `get_htb_adsll_string` $TC class add dev $DEV parent 1:1 classid 1:13 htb $LQ rate ${BK_RATE}kbit ceil ${BE_CEIL}kbit prio 3 `get_htb_adsll_string` So maybe we need to extend the quantum increases beyond 80Mbps to keep things linear? I don’t know but it sure looks suspicious… > > I have no idea where to start looking for the cause. But for now, I'm just > setting my ingress rate MUCH higher than I should, because it's working out > to the right value as a result. It would be great to understand why we need to massively under-shape in that situation to get decent shaping and decent latency under load. Best Regards Sebastian > > -Aaron > _______________________________________________ > Cerowrt-devel mailing list > [email protected] > https://lists.bufferbloat.net/listinfo/cerowrt-devel _______________________________________________ Cerowrt-devel mailing list [email protected] https://lists.bufferbloat.net/listinfo/cerowrt-devel
