From: Bob Briscoe <ietf@bobbriscoe.net>
To: "Bless, Roland (TM)" <roland.bless@kit.edu>,
Jonathan Morton <chromatix99@gmail.com>
Cc: tsvwg IETF list <tsvwg@ietf.org>, bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] [Ecn-sane] [iccrg] Fwd: [tcpPrague] Implementation and experimentation of TCP Prague/L4S hackaton at IETF104
Date: Thu, 21 Mar 2019 14:24:04 +0100 [thread overview]
Message-ID: <b0320cc2-28ec-63e8-c2b8-594616b63cfe@bobbriscoe.net> (raw)
In-Reply-To: <3d6b1619-ce5d-5649-0436-72bb10115e45@kit.edu>
Roland,
On 21/03/2019 08:49, Bless, Roland (TM) wrote:
> Hi,
>
> Am 21.03.19 um 09:02 schrieb Bob Briscoe:
>> Just to rapidly reply,
>>
>>
>> On 21/03/2019 07:46, Jonathan Morton wrote:
>>> The ECN field was never intended to be used as a classifier, except to
>>> distinguish Not-ECT flows from ECT flows (which a middlebox does need
>>> to know, to choose between mark and drop behaviours). It was intended
>>> to be used to convey congestion information from the network to the
>>> receiver. SCE adheres to that ideal.
>> Each PHB has a forwarding behaviour a DSCP re-marking behaviour and an
>> ECN marking behaviour. The ECN field is the claissifer for the ECN
>> marking behaviour.
> That's exactly the reason, why using ECT(1) as classifier for L4S
> behavior is not the right choice. L4S should use a DSCP for
> classification, because it is actually defining a PHB.
1/ First Terminology
The definition of 'PHB' includes the drop or ECN-marking behaviour. For
instance, you see this in WRED or in PCN (Pre-Congestion Notification).
If you want to solely talk about scheduling, pls say the scheduling PHB.
2/ The architectural intent of the ECN field
For many years (long before we thought of L4S) I have been making sure
that ECN propagation through the layers supports the duality of ECN
behaviours as both a classifier (on the way down from L7/L4 to L3/2) and
as a return value (on the way back up).
The architecture of ECN is determined by the valid codepoint
transitions. They are:
1. 00->11
2. 10->11
3. 01->11
4. 10->01
The first three were in RFC3168, but it did not preclude the fourth.
The fourth was first standardized in RFC6660 (which I co-authored). This
had to be isolated from the e2e use of ECN by inclusion of a DSCP as well.
The relatively late addition of the fourth approach means that an
attempt to mark using the SCE approach (10->01) is more likely to find
that it gets reversed when the outer header is decapsulated, if the
decapsulator hasn't been updated to the latest RFC that catered for this
fourth transition (RFC6040, also co-authored by me).
L4S follows the original RFC3168 approach
SCE uses the fourth
So, SCE proposes to use /a/ correct approach, but it might not work.
Whereas L4S uses the original correct approach.
3a/ DualQ L4S AQMs
With the DualQ, the difference between the two queues is both in their
ECN marking behaviour and in their forwarding/scheduling behaviour.
However, whenever there's traffic in the classic queue the coupling
between the AQMs overrides the network scheduler. The coupling is solely
ECN behaviour not scheduling behaviour. So the primary difference
between the queues is in their ECN-marking behaviour.
What do I mean by "the coupling overrides the network scheduler"? The
network scheduler certainly does give priority to L4S packets whenever
they arrive, but the coupling makes the L4S sources control how often
packets arrive. It's tough to reason about, because we haven't had a
mechanism like this before.
2b/ FQ L4S AQMs
If the AQM is implemented with per flow queues, the picture is clearer.
The only difference between the queues is in the ECN marking behaviour
of the different AQMs.
Bob
> Regards
> Roland
--
________________________________________________________________
Bob Briscoe http://bobbriscoe.net/
next prev parent reply other threads:[~2019-03-21 13:24 UTC|newest]
Thread overview: 105+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <AM0PR07MB48198660539171737E4CCAB1E0730@AM0PR07MB4819.eurprd07.prod.outlook.com>
[not found] ` <d91a6a71-5898-9571-2a02-0d9d83839615@bobbriscoe.net>
2019-03-15 10:46 ` [Bloat] " Dave Taht
2019-03-15 13:01 ` Sebastian Moeller
2019-03-15 14:06 ` Dave Taht
2019-03-15 15:52 ` Sebastian Moeller
2019-03-15 17:01 ` [Bloat] [Ecn-sane] " David P. Reed
2019-03-15 17:45 ` Sebastian Moeller
2019-03-15 18:36 ` Mikael Abrahamsson
2019-03-15 19:23 ` Sebastian Moeller
2019-03-15 19:32 ` Jonathan Morton
2019-03-15 19:44 ` David P. Reed
2019-03-15 20:13 ` Jonathan Morton
2019-03-15 23:43 ` David P. Reed
2019-03-16 1:26 ` Jonathan Morton
2019-03-16 7:38 ` Sebastian Moeller
2019-03-16 18:56 ` Michael Richardson
2019-03-15 20:28 ` Jonathan Foulkes
2019-03-15 20:31 ` Dave Taht
2019-03-15 23:45 ` David P. Reed
2019-03-16 9:42 ` Michael Welzl
2019-03-16 10:08 ` Sebastian Moeller
2019-03-16 10:23 ` Nils Andreas Svee
2019-03-16 14:55 ` Jonathan Foulkes
2019-03-16 21:38 ` Holland, Jake
2019-03-16 21:57 ` Vint Cerf
2019-03-16 22:03 ` Dave Taht
2019-03-16 22:05 ` Holland, Jake
2019-03-17 18:07 ` David P. Reed
2019-03-17 18:05 ` Vint Cerf
2019-03-19 1:06 ` Bob Briscoe
2019-03-19 3:18 ` Dave Taht
2019-03-20 19:04 ` Holland, Jake
2019-03-20 19:58 ` Stephen Hemminger
2019-03-20 20:05 ` Holland, Jake
[not found] ` <5C9296E1.4010703@erg.abdn.ac.uk>
2019-03-20 20:00 ` [Bloat] [tsvwg] " Holland, Jake
2019-03-20 20:05 ` Jonathan Morton
2019-03-20 20:55 ` Greg White
2019-03-20 22:12 ` Sebastian Moeller
2019-03-20 22:31 ` Jonathan Morton
2019-03-20 22:56 ` Sebastian Moeller
2019-03-20 23:03 ` Jonathan Morton
2019-03-20 23:11 ` Holland, Jake
2019-03-20 23:28 ` Jonathan Morton
2019-03-21 8:15 ` [Bloat] [Ecn-sane] [tsvwg] " Mikael Abrahamsson
2019-03-21 8:31 ` Mikael Abrahamsson
2019-03-20 23:30 ` [Bloat] [tsvwg] [Ecn-sane] " Sebastian Moeller
2019-03-21 0:15 ` Holland, Jake
2019-03-21 0:41 ` Holland, Jake
2019-03-20 21:48 ` [Bloat] " Greg White
2019-03-20 21:56 ` Jonathan Morton
2019-03-20 22:38 ` Holland, Jake
2019-03-20 22:56 ` Greg White
2019-03-20 23:29 ` Bob Briscoe
2019-03-20 23:51 ` Jonathan Morton
2019-03-21 6:04 ` Bob Briscoe
2019-03-21 7:46 ` Jonathan Morton
2019-03-21 8:02 ` Bob Briscoe
2019-03-21 8:49 ` Bless, Roland (TM)
2019-03-21 13:24 ` Bob Briscoe [this message]
2019-03-22 12:53 ` Bless, Roland (TM)
2019-03-25 2:47 ` Bob Briscoe
2019-03-21 8:45 ` Sebastian Moeller
2019-03-24 20:15 ` alex.burr
2019-03-25 1:34 ` Bob Briscoe
2019-03-27 17:52 ` Alex Burr
2019-03-19 4:44 ` Greg White
2019-03-19 5:35 ` Jonathan Morton
2019-03-19 5:52 ` Greg White
2019-03-19 7:10 ` Jonathan Morton
2019-03-19 8:07 ` Sebastian Moeller
2019-03-19 8:50 ` Sebastian Moeller
2019-03-19 23:59 ` Dave Taht
2019-03-20 10:17 ` Sebastian Moeller
2019-03-16 22:03 ` Jonathan Morton
2019-03-16 22:09 ` Sebastian Moeller
2019-03-17 14:06 ` Mikael Abrahamsson
2019-03-17 17:37 ` Loganaden Velvindron
2019-03-17 17:40 ` Toke Høiland-Jørgensen
2019-03-17 17:44 ` Mikael Abrahamsson
2019-03-17 18:00 ` Dave Taht
2019-03-17 19:38 ` Rodney W. Grimes
2019-03-17 20:50 ` Luca Muscariello
2019-03-17 21:51 ` Toke Høiland-Jørgensen
2019-03-18 4:26 ` Mikael Abrahamsson
2019-03-16 4:04 ` Jonathan Morton
2019-03-16 4:51 ` Dave Taht
2019-03-15 18:07 ` Mikael Abrahamsson
2019-03-15 14:27 ` [Bloat] " Jonathan Morton
2019-03-15 14:44 ` Sebastian Moeller
2019-03-15 15:49 ` Jonathan Morton
2019-03-15 21:34 ` Wesley Eddy
2019-03-22 18:28 [Bloat] [Ecn-sane] " Victor Hou
2019-03-23 8:02 ` Roland Bless
2019-03-23 8:54 ` Luca Muscariello
2019-03-23 10:02 ` Mikael Abrahamsson
2019-03-23 15:03 ` Jonathan Morton
2019-03-23 19:52 ` Roland Bless
2019-03-23 15:19 ` Roland Bless
2019-03-23 17:16 ` Mikael Abrahamsson
2019-03-23 19:45 ` Roland Bless
2019-03-23 17:48 ` Michael Welzl
2019-03-23 18:31 ` Luca Muscariello
2019-03-23 18:40 ` Mikael Abrahamsson
2019-03-23 19:11 ` Michael Welzl
2019-03-23 21:04 ` Luca Muscariello
2019-03-23 19:55 ` Roland Bless
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/bloat.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b0320cc2-28ec-63e8-c2b8-594616b63cfe@bobbriscoe.net \
--to=ietf@bobbriscoe.net \
--cc=bloat@lists.bufferbloat.net \
--cc=chromatix99@gmail.com \
--cc=roland.bless@kit.edu \
--cc=tsvwg@ietf.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