<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Aug 27, 2013 at 1:44 PM, Dave Taht <span dir="ltr"><<a href="mailto:dave.taht@gmail.com" target="_blank">dave.taht@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div class="h5">On Tue, Aug 27, 2013 at 9:29 AM, Naeem Khademi <span dir="ltr"><<a href="mailto:naeem.khademi@gmail.com" target="_blank">naeem.khademi@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi<br>
<br>
Slide 37 of below link mentions that SFQRED implemented in Linux 3.4<br>
upwards, "Utilized a better version of RED (“ARED”) from Sally Floyd<br>
in 2002". However I'm unable to find the "adaptive" bit of SFQRED in<br>
the kernel and iproute code. Can anyone (Dave or Eric) confirm that<br>
the mentioned statement is correct?<br>
<br>
<a href="http://netseminar.stanford.edu/seminars/Inside_Codel_and_Fq_Codel.pdf" target="_blank">http://netseminar.stanford.edu/seminars/Inside_Codel_and_Fq_Codel.pdf</a><br>
<br></blockquote><div><br></div></div></div><div>I think you are correct in that the adaptive RED code never formally made it into SFQRED. SFQRED was a brief blip in time before codel showed up... I'd talked about it in that talk as a steppingstone in hybrid fq+aqm history. (prior to that we were working with qfq + red as entirely separate, modular qdiscs). So... oops.<br>
</div></div></div></div></blockquote><div><br></div><div>While I'm correcting slides and trying to keep history straight, after that talk it was pointed out that head drop from the biggest flow had been proposed as early as 1999, and possibly as early as the mid-late 1980s...<br>
<br><a href="https://lists.bufferbloat.net/pipermail/bloat/2013-February/001345.html">https://lists.bufferbloat.net/pipermail/bloat/2013-February/001345.html</a><br><br></div><div>I enjoyed the literature search around that thread a lot. What was new was old again.<br>
</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>
<br>I think the work was interesting and valuable, and if you want to play with the ARED variant probably all you have to do is OR in the TC_ADAPTATIVE value into the flags on the red setup in sch_sfq.c<br><br></div><div>

Eric added ARED support to sch_red in kernel commit: 8af2a218de38f51ea4b4fa48cac1273319ae260c<br><br><a href="https://android.googlesource.com/kernel/exynos/+/8af2a218de38f51ea4b4fa48cac1273319ae260c" target="_blank">https://android.googlesource.com/kernel/exynos/+/8af2a218de38f51ea4b4fa48cac1273319ae260c</a><br>

<br>and some ip route version later corrected "adaptive" to be the user-facing syntax. I just ran a quick, dirty and (nonsensical*) rrul test with this:<br><br>tc qdisc add dev eth0 root red limit 40000 min 30000 max 90000 avpkt 1000 burst 55 ecn adaptive bandwidth 10Mbit<br>

<br>tc -s qdisc show dev eth0<br>qdisc red 8005: root refcnt 2 limit 40000b min 30000b max 90000b ecn adaptive <br> Sent 858913226 bytes 823269 pkt (dropped 4866, overlimits 123 requeues 0) <br> backlog 0b 0p requeues 0 <br>

  marked 0 early 123 pdrop 4743 other 0<br><br></div><div>which "just worked" with ubuntu 13.4.<br><br></div><div>The ARED option could be enabled with GRED/SFQRED with adding the right knob to iproute2.<br></div>

<div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Regards,<br>
Naeem<br>
</blockquote></div><br><br clear="all"></div><div class="gmail_extra">* I have thankfully managed to completely forget how to configure RED or ARED to what little extent I understood it in the first place<span class=""><font color="#888888"><br>
</font></span></div><span class=""><font color="#888888"><div class="gmail_extra">
-- <br>Dave Täht<br><br>Fixing bufferbloat with cerowrt: <a href="http://www.teklibre.com/cerowrt/subscribe.html" target="_blank">http://www.teklibre.com/cerowrt/subscribe.html</a> 
</div></font></span></div>
</blockquote></div><br><br clear="all"><br>-- <br>Dave Täht<br><br>Fixing bufferbloat with cerowrt: <a href="http://www.teklibre.com/cerowrt/subscribe.html" target="_blank">http://www.teklibre.com/cerowrt/subscribe.html</a> 
</div></div>