From owner-freebsd-wireless@FreeBSD.ORG Wed Mar 7 13:30:36 2012 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A3192106566C for ; Wed, 7 Mar 2012 13:30:36 +0000 (UTC) (envelope-from jhugo@meraka.csir.co.za) Received: from marge.meraka.csir.co.za (marge.meraka.csir.co.za [IPv6:2001:4200:7000:3::1]) by mx1.freebsd.org (Postfix) with ESMTP id 3DB038FC14 for ; Wed, 7 Mar 2012 13:30:34 +0000 (UTC) Received: from jeep.localnet (unknown [IPv6:2001:4200:7000:3:223:aeff:fea7:a3c2]) by marge.meraka.csir.co.za (Postfix) with ESMTP id D82DCD0CC03 for ; Wed, 7 Mar 2012 15:30:32 +0200 (SAST) Resent-From: Johann Hugo Resent-To: freebsd-wireless@freebsd.org Resent-Date: Wed, 7 Mar 2012 15:30:32 +0200 Resent-Message-ID: <201203071530.32330.jhugo@meraka.csir.co.za> From: Johann Hugo To: Adrian Chadd Date: Wed, 7 Mar 2012 14:39:01 +0200 User-Agent: KMail/1.13.7 (FreeBSD/9.0-RELEASE; KDE/4.7.3; amd64; ; ) References: <201202281639.05140.jhugo@meraka.csir.co.za> <201203061258.16786.jhugo@meraka.csir.co.za> In-Reply-To: X-KMail-Markup: true MIME-Version: 1.0 Content-Type: Multipart/Mixed; boundary="Boundary-00=_lb1VPMasuW8zRQA" Message-Id: <201203071439.01993.jhugo@meraka.csir.co.za> X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: Re: performance in adhoc mode X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Mar 2012 13:30:36 -0000 --Boundary-00=_lb1VPMasuW8zRQA Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit On Tuesday 06 March 2012 18:19:21 Adrian Chadd wrote: > Can you please try 8.0-REL too? We have a wireless (olsr) mesh and we recently moved it from 7.2 to 9.0, skipping 8. I've just installed 8.0 on my two test nodes in the lab and got more or less the same results as with 9. FreeBSD 8.0-STABLE #10: Sun Feb 7 20:16:49 SAST 2010 Adhoc mode: nodeA iperf = 21.3 Mbits/sec NodeB iperf = 21.5 Mbits/sec AP/client mode NodeA iperf = 27.0 Mbits/sec NodeB iperf = 27.0 Mbits/sec Johann > > > adrian > > On 6 March 2012 02:58, Johann Hugo wrote: > > On Wednesday 29 February 2012 19:48:53 you wrote: > >> Ok, long_retry means that the hardware had to try more times to get > >> > >> the frame out. > >> > >> > >> > >> Either it's picking too high a rate, or the ACKs can't be heard. > > > > Should be ok, they are one meter apart. > > > >> I wonder what changes in the MAC and driver when we flip on adhoc > >> > >> mode. I know it changes how the beacon queue is handled, I didn't > >> > >> think anything else changed.. > >> > >> > >> > >> Can you try forcing a lower rate on both ends (ifconfig wlanX > >> > >> ucastrate Y) and do your tests? > > > > Are the parameters that one get with (ifconfig -m wlanX) still valid ? > > > > > > > > See attached for tests. > > > > > > > > B.t.w. I get better performance with our old FreeBSD-7.2 distro in adhoc > > mode than with our new FreeBSD-9.0 distro on the same hardware. > > > > > > > > FreeBSD-7.2 > > > > NodeA: iperf = 25.1 Mbits/sec > > > > NodeB: iperf = 25.2 Mbits/sec > > > > > > > > FreeBSD-9.0 > > > > NodeA: iperf = 20.5 Mbits/sec > > > > NodeB: iperf =20.8 Mbits/sec > > > >> Please file a PR with this. :) > > > > Will do so. > > > > > > > > Regards > > > > Johann > > > >> Thanks! > >> > >> > >> > >> > >> > >> Adrian > >> > >> On 29 February 2012 01:51, Johann Hugo wrote: > >> > On Tuesday 28 February 2012 17:50:39 Adrian Chadd wrote: > >> >> I've not looked into adhoc _at all_. > >> > > >> > please_do > >> > > >> >> I'd start by looking at the behaviour of the rate control code - do > >> >> > >> >> > >> >> > >> >> 'sysctl dev.ath.X sample_stats=1' after you've done some traffic and > >> >> > >> >> > >> >> > >> >> check dmesg. > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> Just ensure that the same rates are being used and the error rate is > >> >> > >> >> low. > >> > > >> > The rates differ a bit and also some of the dev.ath.0 sysctl's. > >> > > >> > dev.ath.0.stats.ast_tx_longretry is more than double in adhoc mode. > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > Johann --Boundary-00=_lb1VPMasuW8zRQA Content-Type: text/plain; charset="UTF-8"; name="FreeBSD-8-tests.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="FreeBSD-8-tests.txt" FreeBSD mesh-2893 8.0-STABLE FreeBSD 8.0-STABLE #10: Sun Feb 7 20:16:49 SAST 2010 nodeA iperf = 21.3 Mbits/sec mesh-2893:/var/db/pkg # sysctl dev.ath.0.sample_stats=1 dev.ath.0.sample_stats: 0 [00:80:48:4f:28:93] refcnt 4 static_rix 0 ratemask 0x0 [ 250] cur rix 0 since switch: packets 0 ticks 0 [ 250] last sample 0 cur sample 0 packets sent 0 [ 250] packets since sample 0 sample tt 0 [1600] cur rix 0 since switch: packets 0 ticks 0 [1600] last sample 0 cur sample 0 packets sent 0 [1600] packets since sample 0 sample tt 0 [00:80:48:4f:28:70] refcnt 3 static_rix -1 ratemask 0xff [ 250] cur rix 5 since switch: packets 1216 ticks 144811 [ 250] last sample 6 cur sample -1 packets sent 25295 [ 250] packets since sample 6 sample tt 448 [1600] cur rix 0 since switch: packets 0 ticks 0 [1600] last sample 0 cur sample -1 packets sent 0 [1600] packets since sample 0 sample tt 0 [ 6: 250] 1:1 (100%) T 1 F 0 avg 760 last 28755 [ 9: 250] 12:12 (100%) T 13 F 0 avg 722 last 28451 [12: 250] 67:67 (100%) T 81 F 0 avg 751 last 28356 [18: 250] 243:243 (100%) T 275 F 0 avg 667 last 28346 [24: 250] 2739:2737 ( 99%) T 3097 F 0 avg 507 last 28343 [24:1600] 2:0 ( 0%) T 10 F 2 avg 940 last 29173 [36: 250] 6338:6338 (100%) T 7116 F 0 avg 490 last 28343 [48: 250] 7427:7426 ( 99%) T 8300 F 0 avg 664 last 28344 [48:1600] 1:0 ( 0%) T 5 F 1 avg 672 last 28886 [54: 250] 8472:8471 ( 99%) T 9463 F 0 avg 495 last 28347 [54:1600] 1:0 ( 0%) T 5 F 1 avg 644 last 47852 NodeB iperf = 21.5 Mbits/sec mesh-2870:~ # sysctl dev.ath.0.sample_stats=1 dev.ath.0.sample_stats: 0 [00:80:48:4f:28:70] refcnt 4 static_rix 0 ratemask 0x0 [ 250] cur rix 0 since switch: packets 0 ticks 0 [ 250] last sample 0 cur sample 0 packets sent 0 [ 250] packets since sample 0 sample tt 0 [1600] cur rix 0 since switch: packets 0 ticks 0 [1600] last sample 0 cur sample 0 packets sent 0 [1600] packets since sample 0 sample tt 0 [00:80:48:4f:28:93] refcnt 3 static_rix -1 ratemask 0xff [ 250] cur rix 7 since switch: packets 1 ticks 28012 [ 250] last sample 0 cur sample -1 packets sent 9 [ 250] packets since sample 9 sample tt 0 [1600] cur rix 7 since switch: packets 1558 ticks 27917 [1600] last sample 6 cur sample -1 packets sent 36287 [1600] packets since sample 0 sample tt 672 [18:1600] 1:1 (100%) T 1 F 0 avg 1124 last 58722 [24:1600] 9:9 (100%) T 10 F 0 avg 1072 last 39726 [36: 250] 1:1 (100%) T 1 F 0 avg 464 last 59433 [36:1600] 418:418 (100%) T 457 F 0 avg 859 last 39338 [48:1600] 20590:20590 (100%) T 22300 F 0 avg 744 last 39336 [54: 250] 8:8 (100%) T 8 F 0 avg 444 last 39335 [54:1600] 15270:15269 ( 99%) T 16876 F 0 avg 664 last 39337 --------------------------------------------------------------- AP/ client mode: --------------------------------------------------------------- NodeA iperf = 27.0 Mbits/sec mesh-2893:~ # sysctl dev.ath.0.sample_stats=1 dev.ath.0.sample_stats: 0 [00:80:48:4f:28:93] refcnt 4 static_rix 0 ratemask 0x0 [ 250] cur rix 0 since switch: packets 0 ticks 0 [ 250] last sample 0 cur sample 0 packets sent 0 [ 250] packets since sample 0 sample tt 0 [1600] cur rix 0 since switch: packets 0 ticks 0 [1600] last sample 0 cur sample 0 packets sent 0 [1600] packets since sample 0 sample tt 0 [00:80:48:4f:28:70] refcnt 3 static_rix -1 ratemask 0xff [ 250] cur rix 7 since switch: packets 1340 ticks 14608 [ 250] last sample 5 cur sample -1 packets sent 14895 [ 250] packets since sample 15 sample tt 464 [1600] cur rix 0 since switch: packets 0 ticks 0 [1600] last sample 0 cur sample -1 packets sent 0 [1600] packets since sample 0 sample tt 0 [ 6: 250] 1:1 (100%) T 1 F 0 avg 760 last 12719 [18: 250] 3:3 (100%) T 3 F 0 avg 524 last 727 [24: 250] 1:1 (100%) T 1 F 0 avg 492 last 863 [36: 250] 89:89 (100%) T 90 F 0 avg 464 last 472 [48: 250] 2996:2996 (100%) T 3055 F 0 avg 448 last 474 [54: 250] 11806:11806 (100%) T 12032 F 0 avg 453 last 470 mesh-2893:~ # sysctl dev.ath.0 dev.ath.0.%desc: Atheros 5413 dev.ath.0.%driver: ath dev.ath.0.%location: slot=1 function=0 dev.ath.0.%pnpinfo: vendor=0x168c device=0x001b subvendor=0x168c subdevice=0x2063 class=0x020000 dev.ath.0.%parent: pci0 dev.ath.0.smoothing_rate: 95 dev.ath.0.sample_rate: 10 dev.ath.0.sample_stats: 0 dev.ath.0.countrycode: 0 dev.ath.0.regdomain: 0 dev.ath.0.slottime: 9 dev.ath.0.acktimeout: 25 dev.ath.0.ctstimeout: 25 dev.ath.0.softled: 0 dev.ath.0.ledpin: 0 dev.ath.0.ledon: 0 dev.ath.0.ledidle: 270 dev.ath.0.txantenna: 1 dev.ath.0.rxantenna: 1 dev.ath.0.diversity: 0 dev.ath.0.txintrperiod: 5 dev.ath.0.diag: 0 dev.ath.0.tpscale: 0 dev.ath.0.tpc: 0 dev.ath.0.tpack: 63 dev.ath.0.tpcts: 63 dev.ath.0.intmit: 1 dev.ath.0.monpass: 24 dev.ath.0.dbaprep: 2 dev.ath.0.swbaprep: 10 dev.ath.0.guardtime: 0 dev.ath.0.superframe: 0 dev.ath.0.setcca: 0 NodeB: iperf = 27.0 Mbits/sec mesh-2870:~ # sysctl dev.ath.0.sample_stats=1 dev.ath.0.sample_stats: 0 [00:80:48:4f:28:93] refcnt 4 static_rix -1 ratemask 0xff [ 250] cur rix 7 since switch: packets 1 ticks 14179 [ 250] last sample 0 cur sample -1 packets sent 6 [ 250] packets since sample 6 sample tt 0 [1600] cur rix 7 since switch: packets 2106 ticks 14084 [1600] last sample 6 cur sample -1 packets sent 23377 [1600] packets since sample 19 sample tt 672 [36: 250] 1:1 (100%) T 1 F 0 avg 464 last 12893 [36:1600] 5:5 (100%) T 5 F 0 avg 764 last 975 [48:1600] 430:430 (100%) T 435 F 0 avg 672 last 646 [54: 250] 5:5 (100%) T 5 F 0 avg 444 last 644 [54:1600] 22942:22942 (100%) T 23497 F 0 avg 688 last 645 mesh-2870:~ # sysctl dev.ath.0 dev.ath.0.%desc: Atheros 5413 dev.ath.0.%driver: ath dev.ath.0.%location: slot=1 function=0 dev.ath.0.%pnpinfo: vendor=0x168c device=0x001b subvendor=0x168c subdevice=0x2063 class=0x020000 dev.ath.0.%parent: pci0 dev.ath.0.smoothing_rate: 95 dev.ath.0.sample_rate: 10 dev.ath.0.sample_stats: 0 dev.ath.0.countrycode: 0 dev.ath.0.regdomain: 0 dev.ath.0.slottime: 9 dev.ath.0.acktimeout: 25 dev.ath.0.ctstimeout: 25 dev.ath.0.softled: 0 dev.ath.0.ledpin: 0 dev.ath.0.ledon: 0 dev.ath.0.ledidle: 270 dev.ath.0.txantenna: 1 dev.ath.0.rxantenna: 1 dev.ath.0.diversity: 0 dev.ath.0.txintrperiod: 5 dev.ath.0.diag: 0 dev.ath.0.tpscale: 0 dev.ath.0.tpc: 0 dev.ath.0.tpack: 63 dev.ath.0.tpcts: 63 dev.ath.0.intmit: 1 dev.ath.0.monpass: 24 dev.ath.0.dbaprep: 2 dev.ath.0.swbaprep: 10 dev.ath.0.guardtime: 0 dev.ath.0.superframe: 0 dev.ath.0.setcca: 0 --Boundary-00=_lb1VPMasuW8zRQA--