linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Simon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de>
To: Felix Fietkau <nbd@openwrt.org>
Cc: Simon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de>,
	linux-wireless@vger.kernel.org, thomas@net.t-labs.tu-berlin.de,
	johannes@sipsolutions.net,
	Mathias Kretschmer <mathias.kretschmer@fokus.fraunhofer.de>
Subject: Re: Question regarding minstrel(_ht) and retry limits
Date: Thu, 7 Mar 2013 19:06:35 +0100	[thread overview]
Message-ID: <20130307180635.GA31210@pandem0nium> (raw)
In-Reply-To: <5138B69C.4000102@openwrt.org>

[-- Attachment #1: Type: text/plain, Size: 2257 bytes --]

Hey Felix,

On Thu, Mar 07, 2013 at 04:47:40PM +0100, Felix Fietkau wrote:
> On 2013-03-07 4:31 PM, Simon Wunderlich wrote:
> > Hello list,
> > 
> > as you might be aware, it is possible to set short and long retry limits
> > to specify how often a frame should be retransmitted before getting dropped.
> > 
> > However, it appears that minstrel completely ignores any retry limit, and it is
> > also not applied later in the code path. I've hacked minstrel_ht a little bit
> > to apply the retry limits in minstrel_get_rate() before returning the rates
> > (i.e. just cutting retries at the end from the struct ieee80211_tx_rate array).
> > 
> > This worked for me, but is probably not clean either and might disturb minstrel
> > operation. Also minstrel uses much more retries than default retry limits
> > (short: 7, long: 4), so this patch might introduce behaviour changes.
> > 
> > What is your opinion on this? Can we get it properly supported? Does it hurt
> > to just use the first $retry_limit retries, and cut the rest at other rates
> > at the end?
> I think simply cutting off from the end of the retry chain is a bad idea
> - if there are too many scheduled retries in the max throughput rate, it
> will not make it to the fallback to a reliable rate if that fails. A
> better approach is to make minstrel use fewer retries per rate.
> 
> - Felix
> 

Are there any theoritical constraints to consider? I don't know too much
about minstrel theory, but from what I understand:

The ieee80211_tx_rate array has 4 entries with rate + count number, where
the last entries may be empty (count = 0).

Would you suggest to decrease the count numbers of each array entry uniformly
to meet the limit requirement? From what I've seen, minstrel assigns more than
7 tries in total quite often - will it be problematic if we decrease the count
number uniformally? And finally, is there any more elegant way than adjusting
to the limits just before returning and after minstrel made all its choices?
This is how I've implemented the cutting as described above, but it appears
that there are some limits in minstrel too ... not sure if they can be used
to enforce the total count limit though. :)

Thanks,
	Simon

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2013-03-07 18:06 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-07 15:31 Question regarding minstrel(_ht) and retry limits Simon Wunderlich
2013-03-07 15:40 ` Karl Beldan
2013-03-07 18:14   ` Simon Wunderlich
2013-03-07 19:10     ` Karl Beldan
2013-03-07 15:47 ` Felix Fietkau
2013-03-07 18:06   ` Simon Wunderlich [this message]
2013-03-07 21:32     ` Bob Copeland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130307180635.GA31210@pandem0nium \
    --to=simon.wunderlich@s2003.tu-chemnitz.de \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=mathias.kretschmer@fokus.fraunhofer.de \
    --cc=nbd@openwrt.org \
    --cc=thomas@net.t-labs.tu-berlin.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).