From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (Client CN "mout.gmx.net", Issuer "TeleSec ServerPass DE-1" (verified OK)) by huchra.bufferbloat.net (Postfix) with ESMTPS id 8BB6B21F100 for ; Fri, 27 Dec 2013 16:07:31 -0800 (PST) Received: from [192.168.2.43] ([79.202.23.202]) by mail.gmx.com (mrgmx002) with ESMTPSA (Nemesis) id 0MA8hF-1Vm1FW3qYr-00BKD9 for ; Sat, 28 Dec 2013 01:07:28 +0100 Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 6.6 \(1510\)) From: Sebastian Moeller In-Reply-To: <52BDE104.3080704@imap.cc> Date: Sat, 28 Dec 2013 01:07:25 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <571C0EE5-DC15-4A9C-A195-A97F93A335EB@gmail.com> <52BDD08F.2000904@imap.cc> <52BDD303.8070102@imap.cc> <76A010B1-F6DB-4DF8-98A7-6F43974B72D6@gmx.de> <52BDE104.3080704@imap.cc> To: Fred Stratton X-Mailer: Apple Mail (2.1510) X-Provags-ID: V03:K0:LCfDxE3yb+F0cVQVF0i1wQlMI+e6yNYR6VPuhsClaADLxBBdhVT 47Ucr06XItpoZfCSMLxpcpAvdIzydiqZ9lnK4cIsNxuGzCRDI0ko5vZZ+4bOUeWkna9wg87 Q3JHW/SxUFQoH536dC9Fww/8YLL3y5ves0f1Nfii7hIm32KADcUMKOiqDvUUFxkvwadvv8m 6hvMW+TBaPZnyqtXudmWQ== Cc: cerowrt-devel@lists.bufferbloat.net Subject: Re: [Cerowrt-devel] Fwd: Re: CeroWrt 3.10.24-8 badly bloated? X-BeenThere: cerowrt-devel@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: Development issues regarding the cerowrt test router project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Dec 2013 00:07:32 -0000 Hi Fred, On Dec 27, 2013, at 21:20 , Fred Stratton wrote: > I guessed input into Dangerous options was required, but was unsure of = the syntax. Quite how /etc/config/sqm is read is another matter to be = addressed over ssh. >=20 > I shall paste all in one email response, for you to rearrange at the = other end. Both use simple.qos. >=20 > With pie: >=20 > tc -d qdisc > qdisc fq_codel a: dev se00 root refcnt 2 limit 1000p flows 1024 = quantum 1000 target 5.0ms interval 100.0ms ecn=20 > qdisc htb 1: dev ge00 root refcnt 2 r2q 10 default 12 = direct_packets_stat 6 ver 3.17 > linklayer atm overhead 18 mtu 2047 tsize 128=20 > qdisc pie 110: dev ge00 parent 1:11 limit 1000p target 25000 tupdate = 30000 alpha 2 beta 20=20 > qdisc pie 120: dev ge00 parent 1:12 limit 1000p target 25000 tupdate = 30000 alpha 2 beta 20=20 > qdisc pie 130: dev ge00 parent 1:13 limit 1000p target 25000 tupdate = 30000 alpha 2 beta 20=20 > qdisc ingress ffff: dev ge00 parent ffff:fff1 ----------------=20 > qdisc htb 1: dev ifb0 root refcnt 2 r2q 10 default 12 = direct_packets_stat 0 ver 3.17 > linklayer atm overhead 18 mtu 2047 tsize 128=20 > qdisc pie 110: dev ifb0 parent 1:11 limit 1000p target 20000 tupdate = 30000 alpha 2 beta 20 ecn=20 > qdisc pie 120: dev ifb0 parent 1:12 limit 1000p target 20000 tupdate = 30000 alpha 2 beta 20 ecn=20 > qdisc pie 130: dev ifb0 parent 1:13 limit 1000p target 20000 tupdate = 30000 alpha 2 beta 20 ecn=20 > qdisc mq 1: dev sw10 root=20 > qdisc fq_codel 10: dev sw10 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev sw10 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev sw10 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev sw10 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc mq 1: dev sw00 root=20 > qdisc fq_codel 10: dev sw00 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev sw00 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev sw00 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev sw00 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc mq 1: dev gw00 root=20 > qdisc fq_codel 10: dev gw00 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev gw00 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev gw00 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev gw00 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc mq 1: dev gw10 root=20 > qdisc fq_codel 10: dev gw10 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev gw10 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev gw10 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev gw10 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc fq_codel a: dev pppoe-ge00 root refcnt 2 limit 1000p flows 1024 = quantum 1000 target 5.0ms interval 100.0ms ecn=20 >=20 >=20 > tc class show dev ge00 > class htb 1:11 parent 1:1 leaf 110: prio 1 rate 128000bit ceil = 316000bit burst 1600b cburst 1599b=20 > class htb 1:1 root rate 950000bit ceil 950000bit burst 1599b cburst = 1599b=20 > class htb 1:10 parent 1:1 prio 0 rate 950000bit ceil 950000bit burst = 1599b cburst 1599b=20 > class htb 1:13 parent 1:1 leaf 130: prio 3 rate 158000bit ceil = 934000bit burst 1599b cburst 1599b=20 > class htb 1:12 parent 1:1 leaf 120: prio 2 rate 158000bit ceil = 934000bit burst 1599b cburst 1599b=20 >=20 > with fq_codel, and 25ms target: >=20 > tc -d qdisc > qdisc fq_codel a: dev se00 root refcnt 2 limit 1000p flows 1024 = quantum 1000 target 5.0ms interval 100.0ms ecn=20 > qdisc htb 1: dev ge00 root refcnt 2 r2q 10 default 12 = direct_packets_stat 9 ver 3.17 > linklayer atm overhead 18 mtu 2047 tsize 128=20 > qdisc fq_codel 110: dev ge00 parent 1:11 limit 1000p flows 1024 = quantum 300 target 25.0ms interval 100.0ms=20 > qdisc fq_codel 120: dev ge00 parent 1:12 limit 1000p flows 1024 = quantum 300 target 25.0ms interval 100.0ms=20 > qdisc fq_codel 130: dev ge00 parent 1:13 limit 1000p flows 1024 = quantum 300 target 25.0ms interval 100.0ms=20 Great, so this worked okay, all three fq_codels on ge00 (egress) = have an interval of 25ms, just as the Doctor (aka, Dave) ordered :). = Does this help to get fq_codel subjectively judged performance to be = equal to pie? Best=20 Sebastian > qdisc ingress ffff: dev ge00 parent ffff:fff1 ----------------=20 > qdisc htb 1: dev ifb0 root refcnt 2 r2q 10 default 12 = direct_packets_stat 0 ver 3.17 > linklayer atm overhead 18 mtu 2047 tsize 128=20 > qdisc fq_codel 110: dev ifb0 parent 1:11 limit 1000p flows 1024 = quantum 500 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 120: dev ifb0 parent 1:12 limit 1000p flows 1024 = quantum 1500 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 130: dev ifb0 parent 1:13 limit 1000p flows 1024 = quantum 300 target 5.0ms interval 100.0ms ecn=20 > qdisc mq 1: dev sw00 root=20 > qdisc fq_codel 10: dev sw00 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev sw00 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev sw00 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev sw00 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc mq 1: dev sw10 root=20 > qdisc fq_codel 10: dev sw10 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev sw10 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev sw10 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev sw10 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc mq 1: dev gw00 root=20 > qdisc fq_codel 10: dev gw00 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev gw00 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev gw00 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev gw00 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc mq 1: dev gw10 root=20 > qdisc fq_codel 10: dev gw10 parent 1:1 limit 800p flows 1024 quantum = 500 target 10.0ms interval 100.0ms=20 > qdisc fq_codel 20: dev gw10 parent 1:2 limit 800p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 30: dev gw10 parent 1:3 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms ecn=20 > qdisc fq_codel 40: dev gw10 parent 1:4 limit 1000p flows 1024 quantum = 300 target 5.0ms interval 100.0ms=20 > qdisc fq_codel a: dev pppoe-ge00 root refcnt 2 limit 1000p flows 1024 = quantum 1000 target 5.0ms interval 100.0ms ecn=20 >=20 >=20 > tc class show dev ge00 > class htb 1:11 parent 1:1 leaf 110: prio 1 rate 128000bit ceil = 316000bit burst 1600b cburst 1599b=20 > class htb 1:1 root rate 950000bit ceil 950000bit burst 1599b cburst = 1599b=20 > class htb 1:10 parent 1:1 prio 0 rate 950000bit ceil 950000bit burst = 1599b cburst 1599b=20 > class htb 1:13 parent 1:1 leaf 130: prio 3 rate 158000bit ceil = 934000bit burst 1599b cburst 1599b=20 > class htb 1:12 parent 1:1 leaf 120: prio 2 rate 158000bit ceil = 934000bit burst 1599b cburst 1599b=20 > class fq_codel 110:2c9 parent 110:=20 > class fq_codel 120:1a5 parent 120:=20 > class fq_codel 120:31f parent 120:=20 >=20 >=20 >=20 > On 27/12/13 19:49, Dave Taht wrote: >>=20 >> Pie has a default latency target of 20ms, fq codel 5ms. (But the fq = code target matters less as the target only applies to queue building = flows) >>=20 >> A packet takes 13ms to transit the device at 1mbit. >>=20 >> There is a change to fq codel in this release that should make = fiddling with target a low speeds less needed. (But might have other = problems) Still a comparison at roughly the same target vs a vs pie in = your environment would be very interesting. >>=20 >> I suggested 25ms as a test (as pie never makes 20ms anyway) >>=20 >> I came close to inserting a simple formula to start increasing the = target below 4mbit in this release. >>=20 >> On Dec 27, 2013 11:25 AM, "Sebastian Moeller" = wrote: >> > >> > Hi Fred, >> > >> > you could try to put "target 25ms" without the quotes into the = advanced egress options field in the "Queue Discipline" tab, that is = exposed after checking "Show Dangerous Configuration". I would love to = hear whether that worked or not (I am not able to test anything myself). = Maybe posting the output of "tc -d qdisc" and "tc class show dev ge00" = would help. Good luck=85 >> > >> > >> > Best Regards >> > Sebastian >> > >> > >> > On Dec 27, 2013, at 20:20 , Fred Stratton = wrote: >> > >> > > I have been using pie for approximately 3 weeks. >> > > >> > > You are correct, in that the outbound speed is about 800 - 900 = kb/s. >> > > >> > > I shall try what you suggest, but do not know how to express the = target of 25 ms as a configuration option. >> > > >> > > >> > > On 27/12/13 19:15, Dave Taht wrote: >> > >> Dear fred: are you sticking with pie? I was going to suggest you = try fq codel with a target 25ms on your outbound. (You are at 800kbit or = so as best I recall?) >> > >> >> > >> On Dec 27, 2013 11:10 AM, "Fred Stratton" = wrote: >> > >> I upgraded to 3.10.24-8 on 2013-12-23. >> > >> >> > >> I modified /etc/fixdaemons, adding >> > >> /etc/init.d/sqm restart >> > >> >> > >> input the appropriate sqm settings, transcribed from aqm >> > >> >> > >> rebooted >> > >> >> > >> and the build works very well. For ADSL2+ here, it is the best = so far. >> > >> >> > >> >> > >> On 27/12/13 18:55, Dave Taht wrote: >> > >>> A race condition appears to have crept in... >> > >>> >> > >>> ---------- Forwarded message ---------- >> > >>> From: "Dave Taht" >> > >>> Date: Dec 27, 2013 10:47 AM >> > >>> Subject: Re: [Cerowrt-devel] CeroWrt 3.10.24-8 badly bloated? >> > >>> To: "Richard E. Brown" >> > >>> Cc: >> > >>> >> > >>> Probably didn't start sqm properly >> > >>> >> > >>> Restart it by hand via /etc/init.d/sqm restart >> > >>> >> > >>> tc -s qdisc show dev ge00 >> > >>> >> > >>> Should show htb and fq codel. >> > >>> >> > >>> On Dec 27, 2013 10:36 AM, "Rich Brown" = wrote: >> > >>> So I screwed up my courage and replaced my 3.10.18-? firmware = in my primary router with 3.10.24-8. That version had worked well as a = secondary, so I figured, What the heck=85 Let=92s give it try. >> > >>> >> > >>> The result was not pretty. I set my link speeds in the SQM = page, chose the defaults for the Queue Discipline tab, and link layer to = ATM with no additional overhead for my DSL link. >> > >>> >> > >>> Ping times to google are normally ~51-54 msec. But when I fired = up speedtest.net, they jumped to 1500-2500 msec. Is there something I = should look at before reverting? Thanks. >> > >>> >> > >>> Rich >> > >>> _______________________________________________ >> > >>> Cerowrt-devel mailing list >> > >>> Cerowrt-devel@lists.bufferbloat.net >> > >>> https://lists.bufferbloat.net/listinfo/cerowrt-devel >> > >>> >> > >>> >> > >>> _______________________________________________ >> > >>> Cerowrt-devel mailing list >> > >>> >> > >>> Cerowrt-devel@lists.bufferbloat.net >> > >>> https://lists.bufferbloat.net/listinfo/cerowrt-devel >> > >> >> > > >> > > _______________________________________________ >> > > Cerowrt-devel mailing list >> > > Cerowrt-devel@lists.bufferbloat.net >> > > https://lists.bufferbloat.net/listinfo/cerowrt-devel >> > >=20