From: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
To: Jonathan Morton <chromatix99@gmail.com>
Cc: "Toke Høiland-Jørgensen" <toke@toke.dk>,
"Cake List" <cake@lists.bufferbloat.net>
Subject: Re: [Cake] Testing variants of the MTU latency scaling
Date: Tue, 24 Apr 2018 08:11:33 +0000 [thread overview]
Message-ID: <6B59CEAA-D5C0-44C6-81BD-C3F144F751C0@darbyshire-bryant.me.uk> (raw)
In-Reply-To: <AB6B6E8A-4BD1-406F-845D-5031174A86C1@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1900 bytes --]
> On 23 Apr 2018, at 11:50, Jonathan Morton <chromatix99@gmail.com> wrote:
>
>> Right. Pushed the patch to the cobalt branch, feel free to fix it up :)
>
> Given that I basically had to revert 80% of it and start again, perhaps not the best policy.
Ha :-)
cobalt_should_drop(&flow->cvars, &b->cparams, now, skb,
b->bulk_flow_count * !!(q->rate_flags & CAKE_FLAG_INGRESS)
I like the conditional multiply (by 1) based on ingress mode, so we only pass a non zero flow count in ingress mode only. Saves passing an additional parameter which I disliked but could see no way around.
I’m not sure that the replacement code in cobalt_should_drop itself is an equivalent of what Toke tested in his many combinations:
bool over_target = sojourn > p->target && (
sojourn > p->mtu_time * bulk_flows * 2 ||
sojourn > p->mtu_time * 4 );
So in egress mode the first part of the OR statement will always be true (p->mtu_time * bulk_flows (0) * 2) is always 0, I’d like to think sojourn will always be bigger than 0. So at run time it simplifies to
bool over_target = sojourn > p->target
ingress mode is more interesting since bulk_flows is now non zero.
sojourn > p->mtu_time * bulk_flows * 2 (I think in essence this is ‘permit up to 2 outstanding MTU packets(time) per flow overall) - this wasn’t tested
OR
sojourn > p->mtu_time * 4 ); (up to 4 MTU packets(time) on this flow only) - this I believe was tested.
and this particular combination of the two wasn’t tested. I wonder if I could politely ask Toke to run his test on this version.
I’m arguing/commenting from a position of ignorance and a double migraine yesterday, so to say I’m foggy today is an understatement!
Cheers,
Kevin D-B
012C ACB2 28C6 C53E 9775 9123 B3A2 389B 9DE2 334A
[-- Attachment #2: Message signed with OpenPGP --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2018-04-24 8:11 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-22 20:46 Toke Høiland-Jørgensen
2018-04-22 21:09 ` Jonathan Morton
2018-04-22 21:31 ` Toke Høiland-Jørgensen
2018-04-23 11:23 ` Jonas Mårtensson
2018-04-24 11:45 ` Toke Høiland-Jørgensen
2018-04-24 19:04 ` Jonas Mårtensson
2018-04-24 19:22 ` Kevin Darbyshire-Bryant
2018-04-24 20:27 ` Jonas Mårtensson
2018-04-24 21:11 ` Sebastian Moeller
2018-04-23 9:52 ` Jonathan Morton
2018-04-23 10:13 ` Toke Høiland-Jørgensen
2018-04-23 10:50 ` Jonathan Morton
2018-04-24 8:11 ` Kevin Darbyshire-Bryant [this message]
2018-04-24 8:14 ` Jonathan Morton
2018-04-24 8:29 ` Kevin Darbyshire-Bryant
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=6B59CEAA-D5C0-44C6-81BD-C3F144F751C0@darbyshire-bryant.me.uk \
--to=kevin@darbyshire-bryant.me.uk \
--cc=cake@lists.bufferbloat.net \
--cc=chromatix99@gmail.com \
--cc=toke@toke.dk \
/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