From: Sujith Manoharan <sujith@msujith.org>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: netdev@vger.kernel.org
Subject: Re: TCP performance regression
Date: Mon, 11 Nov 2013 13:49:27 +0530 [thread overview]
Message-ID: <21120.37647.979237.40802@gargle.gargle.HOWL> (raw)
In-Reply-To: <1384152853.16391.19.camel@edumazet-glaptop2.roam.corp.google.com>
Eric Dumazet wrote:
> Hmm... apparently ath9k uses :
>
> #define ATH_AMPDU_LIMIT_MAX (64 * 1024 - 1)
This is the maximum AMPDU size, specified in the
802.11 standard.
> And mentions a 4ms time frame :
>
> max_4ms_framelen = ATH_AMPDU_LIMIT_MAX;
The 4ms limitation is a FCC limitation and is used
for regulatory compliance.
> So prior to "tcp: TSQ can use a dynamic limit", the ~128KB bytes TCP
> could queue per TCP socket on qdisc/NIC would happen to please ath9k
Ok.
> ath9k can set rts_aggr_limit to 8*1024 :
>
> if (AR_SREV_9160_10_OR_LATER(ah) || AR_SREV_9100(ah))
> pCap->rts_aggr_limit = ATH_AMPDU_LIMIT_MAX;
> else
> pCap->rts_aggr_limit = (8 * 1024);
The RTS limit is required for some old chips which had HW bugs and
the above code is a workaround.
> A timer would be definitely needed, and it should be rather small (1 or
> 2 ms)
>
> If TCP socket is application limited, it seems ath9k can delay the last
> block by a too long time.
I am not really clear on how this regression can be fixed in the driver
since the majority of the transmission/aggregation logic is present in the
TX completion path.
Sujith
next prev parent reply other threads:[~2013-11-11 8:23 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-11 5:30 TCP performance regression Sujith Manoharan
2013-11-11 5:55 ` Eric Dumazet
2013-11-11 6:07 ` Sujith Manoharan
2013-11-11 6:54 ` Eric Dumazet
2013-11-11 8:19 ` Sujith Manoharan [this message]
2013-11-11 14:27 ` Eric Dumazet
2013-11-11 14:39 ` Eric Dumazet
2013-11-11 16:44 ` Eric Dumazet
2013-11-11 15:05 ` David Laight
2013-11-11 15:29 ` Eric Dumazet
2013-11-11 15:43 ` David Laight
2013-11-11 16:17 ` Eric Dumazet
2013-11-11 16:35 ` David Laight
2013-11-11 17:41 ` Eric Dumazet
2013-11-12 7:42 ` Willy Tarreau
2013-11-12 14:16 ` Eric Dumazet
2013-11-14 9:54 ` Dave Taht
2013-11-11 16:13 ` Sujith Manoharan
2013-11-11 16:38 ` Felix Fietkau
2013-11-11 17:38 ` Eric Dumazet
2013-11-11 17:44 ` Felix Fietkau
2013-11-11 18:03 ` Dave Taht
2013-11-11 18:29 ` Sujith Manoharan
2013-11-11 18:31 ` Dave Taht
2013-11-11 19:11 ` Ben Greear
2013-11-11 19:24 ` Dave Taht
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=21120.37647.979237.40802@gargle.gargle.HOWL \
--to=sujith@msujith.org \
--cc=eric.dumazet@gmail.com \
--cc=netdev@vger.kernel.org \
/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).