From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi0-x233.google.com (mail-oi0-x233.google.com [IPv6:2607:f8b0:4003:c06::233]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by huchra.bufferbloat.net (Postfix) with ESMTPS id 6C4BF21F277 for ; Sun, 22 Mar 2015 17:24:06 -0700 (PDT) Received: by oifl3 with SMTP id l3so98667836oif.0 for ; Sun, 22 Mar 2015 17:24:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=PdQBDjaMD/G64hRfHcE7kG7T9Nini2eTPzRleRPmh0I=; b=r6cfoMGPdMMk+Db1OZ/MAa7x+Be1CYLiYd9b+MNX9FzMZCJnRASdqXlVw6ZrPpUu/F fia9hKHzALaCxwLz9GmcrndHY3il5DclhW142BWNdQewMZI3w7ABIfJ7uOt/rZjeXVIa 7gzvkJoShH4rVGdTnvY+HKqhcNozDaKRvPkZoBe5HZXEt1fcTipnxwRAeQR9KJSq397G /haU7Z4sN9+i9FStbWk9WWcQ7fz1pIxviMGWJOEM1OVqhQgR+VOImkRR/3+B+xg6KOQS i79RjyHNIbMp2ia3W38qMaeC/WFZRx0FCu/aro5j3D7gbpzmctGdnmS4sC6/FVhbeQwB jbMQ== MIME-Version: 1.0 X-Received: by 10.182.144.136 with SMTP id sm8mr72872964obb.63.1427070245927; Sun, 22 Mar 2015 17:24:05 -0700 (PDT) Received: by 10.202.51.66 with HTTP; Sun, 22 Mar 2015 17:24:05 -0700 (PDT) Date: Sun, 22 Mar 2015 17:24:05 -0700 Message-ID: From: Dave Taht To: "cerowrt-devel@lists.bufferbloat.net" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Cerowrt-devel] archer c7 v2, policing, hostapd, test openwrt build 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: Mon, 23 Mar 2015 00:24:35 -0000 so I had discarded policing for inbound traffic management a long while back due to it not handling varying RTTs very well, the burst parameter being hard, maybe even impossible to tune, etc. And I'd been encouraging other people to try it for a while, with no luck. So anyway... 1) A piece of good news is - using the current versions of cake and cake2, that I can get on linux 3.18/chaos calmer, on the archer c7v2 shaping 115mbit download with 12mbit upload... on a cable modem... with 5% cpu to spare. I haven't tried a wndr3800 yet... htb + fq_codel ran out of cpu at 94mbit... 2) On the same test rig I went back to try policing. With a 10k burst parameter, it cut download rates in half... However, with a 100k burst parameter, on the rrul and tcp_download tests, at a very short RTT (ethernet) I did get full throughput and lower latency. How to try it: run sqm with whatever settings you want. Then plunk in the right rate below for your downlink. tc qdisc del dev eth0 handle ffff: ingress tc qdisc add dev eth0 handle ffff: ingress tc filter add dev eth0 parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 police rate 115000kbit burst 100k drop flowid :1 I don't know how to have it match all traffic, including ipv6 traffic(anyone??), but that was encouraging. However, the core problem with policing is that it doesn't handle different RTTs very well, and the exact same settings on a 16ms path.... cut download throughput by a factor of 10. - set to 115000kbit I got 16mbits on rrul. :( Still... I have long maintained it was possible to build a better fq_codel-like policer without doing htb rate shaping, ("bobbie"), and I am tempted to give it a go in the coming months. However I tend to think backporting the FIB patches and making cake run faster might be more fruitful. (or finding faster hardware) 3) There may be some low hanging fruit in how hostapd operates. Right now I see it chewing up cpu, and when running, costing 50mbit of throughput at higher rates, doing something odd, over and over again. clock_gettime(CLOCK_MONOTONIC, {1240, 843487389}) =3D 0 recvmsg(12, {msg_name(12)=3D{sa_family=3DAF_NETLINK, pid=3D0, groups=3D00000000}, msg_iov(1)=3D[{"\0\0\1\20\0\25\0\0\0\0\0\0\0\0\0\0;\1\0\0\0\10\0\1\0\0\0\1\= 0\10\0&"..., 16384}], msg_controllen=3D0, msg_flags=3D0}, 0) =3D 272 clock_gettime(CLOCK_MONOTONIC, {1240, 845060156}) =3D 0 clock_gettime(CLOCK_MONOTONIC, {1240, 845757477}) =3D 0 _newselect(19, [3 5 8 12 15 16 17 18], [], [], {3, 928211}) =3D 1 (in [12], left {3, 920973}) I swear I'd poked into this and fixed it in cerowrt 3.10, but I guess I'll have to go poking through the patch set. Something involving random number obtaining, as best as I recall. 4) I got a huge improvement in p2p wifi tcp throughput between linux 3.18 and linux 3.18 + the minstrel-blues and andrew's minimum variance patches - a jump of over 30% on the ubnt nanostation m5. 5) Aside from that, so far the archer hasn't crashed on me, but I haven't tested the wireless much yet on that platform. My weekend's test build: http://snapon.lab.bufferbloat.net/~cero3/ubnt/ar71xx/ --=20 Dave T=C3=A4ht Let's make wifi fast, less jittery and reliable again! https://plus.google.com/u/0/107942175615993706558/posts/TVX3o84jjmb