[Make-wifi-fast] [PATCH] mac80211: Adjust TSQ pacing shift

Arend van Spriel arend.vanspriel at broadcom.com
Fri Feb 2 15:13:33 EST 2018


On 2/2/2018 5:55 PM, dpreed at deepplum.com wrote:
> I'm curious about the "WiFi Aware" initiative by the WiFi Alliance.
>
> Does LEDE and/or Linux support this protocol? I know gSupplicant is potentially the way such things are supposed to work, at least according to its supporters.
>
> The general NAN (Neighborhood-Aware-Networking) concept makes a lot of sense at one level, but as an Internet guy, it troubles me that they decided to split from the Internet and go a balkanized direction. To me, the neighborhood is interesting only as part of a larger Internet.
>
> It also troubles me that WiFi Aware is a "certification program" rather than a real standard.

It troubles me that you are breaking into an email conversation with a 
topic that in my opinion is totally unrelated. Although probably not 
intended as such it seems rude. Just start your own conversation.

Regards,
Arend

> -----Original Message-----
> From: "Toke Høiland-Jørgensen" <toke at toke.dk>
> Sent: Friday, February 2, 2018 10:11am
> To: make-wifi-fast at lists.bufferbloat.net, linux-wireless at vger.kernel.org
> Cc: "Toke Høiland-Jørgensen" <toke at toke.dk>
> Subject: [Make-wifi-fast] [PATCH] mac80211: Adjust TSQ pacing shift
>
> Since we now have the convenient helper to do so, actually adjust the
> TSQ pacing shift for packets going out over a WiFi interface. This
> significantly improves throughput for locally-originated TCP
> connections. The default pacing shift of 10 corresponds to ~1ms of
> queued packet data. Adjusting this to a shift of 8 (i.e. ~4ms) improves
> 1-hop throughput for ath9k by a factor of 3, whereas increasing it more
> has diminishing returns.
>
> Achieved throughput for different values of sk_pacing_shift (average of
> 5 iterations of 10-sec netperf runs to a host on the other side of the
> WiFi hop):
>
> sk_pacing_shift 10:  43.21 Mbps (pre-patch)
> sk_pacing_shift  9:  78.17 Mbps
> sk_pacing_shift  8: 123.94 Mbps
> sk_pacing_shift  7: 128.31 Mbps
>
> Latency for competing flows increases from ~3 ms to ~10 ms with this
> change. This is about the same magnitude of queueing latency induced by
> flows that are not originated on the WiFi device itself (and so are not
> limited by TSQ).
>
> Signed-off-by: Toke Høiland-Jørgensen <toke at toke.dk>
> ---
>   net/mac80211/tx.c | 8 ++++++++
>   1 file changed, 8 insertions(+)
>
> diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
> index 25904af38839..69722504e3e1 100644
> --- a/net/mac80211/tx.c
> +++ b/net/mac80211/tx.c
> @@ -3574,6 +3574,14 @@ void __ieee80211_subif_start_xmit(struct sk_buff *skb,
>   	if (!IS_ERR_OR_NULL(sta)) {
>   		struct ieee80211_fast_tx *fast_tx;
>
> +		/* We need a bit of data queued to build aggregates properly, so
> +		 * instruct the TCP stack to allow more than a single ms of data
> +		 * to be queued in the stack. The value is a bit-shift of 1
> +		 * second, so 8 is ~4ms of queued data. Only affects local TCP
> +		 * sockets.
> +		 */
> +		sk_pacing_shift_update(skb->sk, 8);
> +
>   		fast_tx = rcu_dereference(sta->fast_tx);
>
>   		if (fast_tx &&
>



More information about the Make-wifi-fast mailing list