Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Ticket #1222 (closed enhancement: fixed)

Opened 12 years ago

Last modified 11 years ago

Minstrel rate control module

Reported by: mrenzmann Assigned to:
Priority: major Milestone: version 0.9.4
Component: madwifi: other Version: trunk
Keywords: Cc: derek@indranet.co.nz
Patch is attached: 1 Pending:

Description

Moved here from #989:

We wrote a rate control module based on sample, and on an earlier release in 2005. In our assesment, the EWMA is the correct approach because it reduces the significance of old data and places more emphasis on newer data. We did try minor modifications to sample, in an endeavour to fix it. However, it became clear that a rewrite was required, as so much had to be changed.

Minstrel has been extensively tested in an adhoc environment. It has run on several different machines for weeks (3 * 7 * 24 hours).

This patch is against the svn of 2216.

Enjoy! Derek Smithies, <derek@indranet.co.nz>

Attachments

minstrel.patch (71.1 kB) - added by mrenzmann on 03/26/07 06:13:01.
Patch for minstrel, originally added to #989

Change History

03/26/07 06:13:01 changed by mrenzmann

  • attachment minstrel.patch added.

Patch for minstrel, originally added to #989

03/26/07 06:15:23 changed by mrenzmann

  • milestone set to version 0.9.4.

Derek, thanks for the submission of Minstrel. Please don't forget to sign it off, so that it can be committed after review.

03/26/07 06:59:54 changed by scottr

Just read minstrel.txt and it sounds promising! I'll take a look at running it here on my test network for a while and see what hapens. Thanks!

(follow-up: ↓ 6 ) 03/26/07 07:50:13 changed by anonymous

I applied this patch against 0.9.3, and I get the following...

CC [M] /var/tmp/portage/net-wireless/madwifi-ng-0.9.3-r2/work/madwifi-0.9.3/ath_rate/minstrel/minstrel.o

/var/tmp/portage/net-wireless/madwifi-ng-0.9.3-r2/work/madwifi-0.9.3/ath_rate/minstrel/minstrel.c:170: error: size of array 'type name' is negative /var/tmp/portage/net-wireless/madwifi-ng-0.9.3-r2/work/madwifi-0.9.3/ath_rate/minstrel/minstrel.c:171: error: size of array 'type name' is negative /var/tmp/portage/net-wireless/madwifi-ng-0.9.3-r2/work/madwifi-0.9.3/ath_rate/minstrel/minstrel.c:172: error: size of array 'type name' is negative cc1: warnings being treated as errors /var/tmp/portage/net-wireless/madwifi-ng-0.9.3-r2/work/madwifi-0.9.3/ath_rate/minstrel/minstrel.c: In function 'ath_rate_ctl_reset': /var/tmp/portage/net-wireless/madwifi-ng-0.9.3-r2/work/madwifi-0.9.3/ath_rate/minstrel/minstrel.c:707: warning: ISO C90 forbids mixed declarations and code

(-r2 is simply to remove building the rate modules on useflags)

03/26/07 07:54:30 changed by Steev Klimaszewski <steev@gentoo.org>

The above was by me, and I apologize, I thought I was set as my user

03/26/07 11:08:16 changed by scottr

I just patched r2219 and it built fine on Debian Sarge.

(in reply to: ↑ 3 ) 03/26/07 12:37:58 changed by mrenzmann

What GCC version are you using?

03/26/07 19:39:13 changed by Steev Klimaszewski <steev@gentoo.org>

GCC version is 4.1.1, glibc is 2.5, kernel is 2.6.20.4

03/26/07 20:58:25 changed by Steev Klimaszewski <steev@gentoo.org>

From one of Gentoo's kernel guys, the 3rd parameter seems wrong, it should be permissions, not the default value..

03/26/07 21:57:14 changed by Steev Klimaszewski <steev@gentoo.org>

Ok, how I have worked around this for the moment (right or wrong, it builds, and appears to work (managed mode)) I have changed the 3rd parameter for each to be 0600, and I moved the ndx declaration further up where the other declarations are for ath_rate_ctl_reset.

The only thing I have seen so far, has been on module load, I get

pccard: CardBus card inserted into slot 1 ath_hal: 0.9.18.0 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413) wlan: 0.8.4.2 (0.9.3) ath_pci: 0.9.4.5 (0.9.3) PCI: Enabling device 0000:0d:00.0 (0000 -> 0002) ath_rate_minstrel: 1.2 (0.9.3)

Minstrel automatic rate control algorithm.

Look around rate set to 10% EWMA rolloff level set to 75% Max Segment size in the mrr set to 6000 us

wifi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps wifi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps wifi0: turboG rates: 6Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps wifi0: H/W encryption support: WEP AES AES_CCM TKIP wifi0: mac 7.9 phy 4.5 radio 5.6 wifi0: Use hw queue 1 for WME_AC_BE traffic wifi0: Use hw queue 0 for WME_AC_BK traffic wifi0: Use hw queue 2 for WME_AC_VI traffic wifi0: Use hw queue 3 for WME_AC_VO traffic wifi0: Use hw queue 8 for CAB traffic wifi0: Use hw queue 9 for beacons wifi0: Atheros 5212: mem=0x2c000000, irq=11 final ndx too low

(in reply to: ↑ description ) 03/28/07 00:13:36 changed by derek@indranet.co.nz

Replying to mrenzmann:

Moved here from #989: {{{ #!blockquote We wrote a rate control module based on sample, and on an [http ://sourceforge.net/mailarchive/forum.php?forum_id=33966&max_rows=25&style=flat&viewmonth=200501&viewday=5 earlier release] in 2005. In our assesment, the EWMA is the correct approach because it reduces the significance of old data and places more emphasis on newer data. We did try minor modifications to sample, in an endeavour to fix it. However, it became clear that a rewrite was required, as so much had to be changed. Minstrel has been extensively tested in an adhoc environment. It has run on several different machines for weeks (3 * 7 * 24 hours). This patch is against the svn of 2216. Enjoy! Derek Smithies, <derek@indranet.co.nz> }}}

Signed-off-by: Derek J Smithies <derek <at> indranet <dot> co <dot> nz>
This work has been sponsored by Indranet Technologies Ltd

03/28/07 09:07:42 changed by mentor

r2235; read the log message. Leaving ticket open for further commentary.

05/15/07 01:21:28 changed by mentor

  • status changed from new to closed.
  • resolution set to fixed.

OK, closing. Open new issues seperately.