Cake - FQ_codel the next generation
 help / color / mirror / Atom feed
From: Dave Taht <dave.taht@gmail.com>
To: "Toke Høiland-Jørgensen" <toke@redhat.com>
Cc: Maxime Bizon <mbizon@freebox.fr>,
	Cake List <cake@lists.bufferbloat.net>,
	 Make-Wifi-fast <make-wifi-fast@lists.bufferbloat.net>
Subject: Re: [Cake] Advantages to tightly tuning latency
Date: Thu, 23 Apr 2020 09:28:53 -0700	[thread overview]
Message-ID: <CAA93jw4gXbF-SxE7JJw3d_8WNJwFbJwLQZfngh9ZLC03q3XwPA@mail.gmail.com> (raw)
In-Reply-To: <87o8ri76u2.fsf@toke.dk>

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

On Thu, Apr 23, 2020 at 4:57 AM Toke Høiland-Jørgensen <toke@redhat.com> wrote:
>
> Maxime Bizon <mbizon@freebox.fr> writes:
>
> > On Wednesday 22 Apr 2020 à 07:48:43 (-0700), Dave Taht wrote:
> >
> > Hello,
> >
> >> > Free has been using SFQ since 2005 (if I remember well).
> >> > They announced the wide deployment of SFQ in the free.fr newsgroup.
> >> > Wi-Fi in the free.fr router was not as good though.
> >>
> >> They're working on it. :)
> >
> > yes indeed.
> >
> > Switching to softmac approach, so now mac80211 will do rate control
> > and scheduling (using wake_tx_queue model).
> >
> > for 5ghz, we use ath10k
>
> That is awesome! Please make sure you include the AQL patch for ath10k,
> it really works wonders, as Dave demonstrated:
>
> https://lists.bufferbloat.net/pipermail/make-wifi-fast/2020-March/002721.html

and THIS patch is looking lovely at the higher rates I'm testing at.
Yea, it needs to be more robust, but I'm seeing tcp rtt inflation
of exactly the right buffer size (15ms), on an HT20 or VHT80 link,
where before I'd see 30+ms... (it's nice that flent can plot both tcp
rtt and ping rtt now),
ecn "just works",

[-- Attachment #2: 982-do-codel-more-right.patch --]
[-- Type: text/x-patch, Size: 1767 bytes --]

diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
index c431722..92ba09b 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -476,10 +476,11 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata,
 	sta->sta.max_rc_amsdu_len = IEEE80211_MAX_MPDU_LEN_HT_BA;
 
 	sta->cparams.ce_threshold = CODEL_DISABLED_THRESHOLD;
-	sta->cparams.target = MS2TIME(20);
+	sta->cparams.target = MS2TIME(5);
 	sta->cparams.interval = MS2TIME(100);
 	sta->cparams.ecn = true;
-
+	sta_dbg(sdata, "Codel target, interval %d, %d\n", sta->cparams.target,
+		sta->cparams.interval);
 	sta_dbg(sdata, "Allocated STA %pM\n", sta->sta.addr);
 
 	return sta;
@@ -2468,15 +2469,9 @@ static void sta_update_codel_params(struct sta_info *sta, u32 thr)
 	if (!sta->sdata->local->ops->wake_tx_queue)
 		return;
 
-	if (thr && thr < STA_SLOW_THRESHOLD * sta->local->num_sta) {
-		sta->cparams.target = MS2TIME(50);
-		sta->cparams.interval = MS2TIME(300);
-		sta->cparams.ecn = false;
-	} else {
-		sta->cparams.target = MS2TIME(20);
-		sta->cparams.interval = MS2TIME(100);
-		sta->cparams.ecn = true;
-	}
+	sta->cparams.target = MS2TIME(5);
+	sta->cparams.interval = MS2TIME(100);
+	sta->cparams.ecn = true;
 }
 
 void ieee80211_sta_set_expected_throughput(struct ieee80211_sta *pubsta,
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index 535911b..ca50d0a 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -1551,7 +1551,7 @@ int ieee80211_txq_setup_flows(struct ieee80211_local *local)
 
 	codel_params_init(&local->cparams);
 	local->cparams.interval = MS2TIME(100);
-	local->cparams.target = MS2TIME(20);
+	local->cparams.target = MS2TIME(5);
 	local->cparams.ecn = true;
 
 	local->cvars = kcalloc(fq->flows_cnt, sizeof(local->cvars[0]),

  parent reply	other threads:[~2020-04-23 16:29 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-21 18:22 Justin Kilpatrick
2020-04-21 18:40 ` Jonathan Morton
2020-04-21 18:44   ` Dave Taht
2020-04-21 22:25     ` Thibaut
2020-04-21 22:33       ` Jonathan Morton
2020-04-21 22:44         ` Dave Taht
2020-04-21 22:50           ` Dave Taht
2020-04-21 23:07             ` Jonathan Morton
2020-04-21 23:27               ` Dave Taht
2020-04-22  8:28           ` Thibaut
2020-04-22  9:03           ` Luca Muscariello
2020-04-22 14:48             ` Dave Taht
2020-04-22 15:28               ` Luca Muscariello
2020-04-22 17:42                 ` David P. Reed
2020-04-23  9:29               ` Maxime Bizon
2020-04-23 11:57                 ` Toke Høiland-Jørgensen
2020-04-23 12:29                   ` Luca Muscariello
2020-04-23 12:33                   ` Maxime Bizon
2020-04-23 16:42                     ` Toke Høiland-Jørgensen
2020-04-23 17:31                       ` Maxime Bizon
2020-04-23 18:30                         ` Sebastian Moeller
2020-04-23 21:53                           ` Maxime Bizon
2020-04-23 18:35                         ` Toke Høiland-Jørgensen
2020-04-23 21:59                           ` Maxime Bizon
2020-04-23 23:05                             ` Toke Høiland-Jørgensen
2020-04-23 23:11                               ` Dave Taht
2020-04-23 16:28                   ` Dave Taht [this message]
2020-04-21 23:06     ` Justin Kilpatrick
2020-04-21 23:19       ` 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

  List information: https://lists.bufferbloat.net/postorius/lists/cake.lists.bufferbloat.net/

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

  git send-email \
    --in-reply-to=CAA93jw4gXbF-SxE7JJw3d_8WNJwFbJwLQZfngh9ZLC03q3XwPA@mail.gmail.com \
    --to=dave.taht@gmail.com \
    --cc=cake@lists.bufferbloat.net \
    --cc=make-wifi-fast@lists.bufferbloat.net \
    --cc=mbizon@freebox.fr \
    --cc=toke@redhat.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