From: Johannes Berg <johannes@sipsolutions.net>
To: Friedrich.Beckmann@infineon.com
Cc: tomasw@gmail.com, linux-wireless@vger.kernel.org, j@w1.fi
Subject: RE: iwlwifi aggregation info
Date: Wed, 30 Jul 2008 15:19:08 +0200 [thread overview]
Message-ID: <1217423948.10489.121.camel@johannes.berg> (raw)
In-Reply-To: <8469FC7DDCBE054D9653D8506E1FF0F001F1E7B606@mucse406.eu.infineon.com>
[-- Attachment #1: Type: text/plain, Size: 2109 bytes --]
> from my understanding the reason for hardware aggregation
> queues is not a different priority level as for the AC queues.
> But there are two things that make hardware aggregation queues
> reasonable:
>
> a) Packets which are aggregated must be in sequence and they
> must belong to the same RA/TID. So if you mix packets which
> belong to that aggregation process with packets which do no
> not belong to that RA/TID, then you must either break the
> aggregation process or you must somehow "jump" over the
> packets to find suitable canditates for aggregation.
Yes, I know this.
> I think a random access to a queue makes it really
> difficult to handle the hardware queues as it is done
> today, because today it is assumed that packets are
> dequeued in the order in that they are enqueued.
>
> Therefore it is more likely that you have to break the
> aggregation process when you find a packet that does not
> fit to the current aggregation process.
Well other drivers would have to handle the aggregation in software,
obviously, and only put the packets onto the queue once enough have been
collected.
I'm fairly do understand what's going on.
How does the hardware make the scheduling decision between the regular
and a-mpdu queue? If it sends out a bunch of aggregated frames whenever
there are enough, how is that _not_ unfair to non-agg stations?
The way I would implement it (and I guess atheros/broadcom do) is to
queue up frames for a station like NAPI does: either for a certain time
(low traffic, and ampdu will be disabled again) or until the txop window
is full, and then queue all of them to the right fifo/hw queue. Which,
in my software design, simply means deferring them a bit inside the
driver. Or for your driver, sticking them into a separate queue. But if
they don't come in via the same qdisc, I don't see how it can be fair.
Please let's get the upper layer considerations before we talk about the
implementation though. Do you not agree that giving an aggregation flow
a separate qdisc is unfair within that AC?
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
next prev parent reply other threads:[~2008-07-30 13:19 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-29 11:32 iwlwifi aggregation info Johannes Berg
2008-07-29 11:36 ` Johannes Berg
2008-07-29 12:25 ` Tomas Winkler
2008-07-29 12:27 ` Johannes Berg
2008-07-29 12:35 ` Tomas Winkler
2008-07-29 12:53 ` Johannes Berg
2008-07-29 13:04 ` Tomas Winkler
2008-07-29 13:07 ` Johannes Berg
2008-07-29 13:18 ` Tomas Winkler
2008-07-29 13:23 ` Johannes Berg
2008-07-29 13:43 ` Tomas Winkler
2008-07-29 13:46 ` Johannes Berg
2008-07-29 14:06 ` Tomas Winkler
2008-07-29 14:21 ` Johannes Berg
2008-07-29 15:55 ` Tomas Winkler
2008-07-30 9:53 ` Johannes Berg
2008-07-30 11:03 ` Friedrich.Beckmann
2008-07-30 13:19 ` Johannes Berg [this message]
2008-07-30 13:45 ` Tomas Winkler
2008-07-30 13:50 ` Johannes Berg
2008-07-30 13:59 ` Tomas Winkler
2008-07-30 15:19 ` Johannes Berg
2008-07-30 16:08 ` Tomas Winkler
2008-07-31 13:05 ` Johannes Berg
2008-07-31 18:14 ` Tomas Winkler
2008-07-31 18:23 ` Johannes Berg
2008-07-31 19:16 ` Tomas Winkler
2008-08-01 12:09 ` Johannes Berg
2008-08-01 12:40 ` Tomas Winkler
2008-08-01 12:54 ` Johannes Berg
2008-08-06 21:45 ` Johannes Berg
2008-08-06 22:05 ` Tomas Winkler
2008-08-06 22:31 ` Tomas Winkler
2008-08-07 11:13 ` mac80211 aggregation (was: iwlwifi aggregation info) Johannes Berg
2008-08-07 12:21 ` Friedrich.Beckmann
2008-08-07 12:31 ` Johannes Berg
2008-08-07 13:00 ` Friedrich.Beckmann
2008-07-30 12:01 ` iwlwifi aggregation info Tomas Winkler
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=1217423948.10489.121.camel@johannes.berg \
--to=johannes@sipsolutions.net \
--cc=Friedrich.Beckmann@infineon.com \
--cc=j@w1.fi \
--cc=linux-wireless@vger.kernel.org \
--cc=tomasw@gmail.com \
/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