Subject: [tsvwg] ecn-l4s-id: Proposed Changed to Normative Classic ECN detection Text

From: Bob Briscoe <[email-masked]>
Date: Sat, 31 Oct 2020 09:54:26 +0000

Folks,

The co-authors of ECN L4S ID have been reviewing the correctness of the 
normative 'Prague' requirements.
     See 
https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-10#section-4.3
This is the second of 2 emails, about 2 of the requirements that we 
think ought to be reworded a little.

If you agree with the rationale, but think the new wording still doesn't 
fully capture the requirement, pls suggest sthg better.
If you disagree with the rationale, pls discuss.

4.3.  Prerequisite Congestion Response
...
CURRENT:

    o  A scalable congestion control MUST react to ECN marking from a
       non-L4S but ECN-capable bottleneck in a way that will coexist with
       a TCP Reno congestion control [RFC5681  <https://tools.ietf.org/html/rfc5681>] (seeAppendix A.1.4  <https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-10#appendix-A.1.4>  for
       rationale).

       Note that a scalable congestion control is not expected to change
       to setting ECT(0) while it falls back to coexist with Reno.

PROPOSED:
    o  A scalable congestion control MUST implement monitoring in order
       to detect a likely non-L4S but ECN-capable AQM at the bottleneck.
       On detection of a likely ECN-capable bottleneck it SHOULD be
       capable (dependent on configuration) of automatically adapting its
       congestion response to coexist with TCP Reno congestion controls
       [RFC5681] (see Appendix A.1.4 for rationale and a referenced
       algorithm).

       Note that a scalable congestion control is not expected to change
       to setting ECT(0) while it falls back to coexist with Reno.

RATIONALE:
1/ The requirement as currently written says what an omniscient sender 
MUST do. So there's an implied requirement that a sender MUST be 
omniscient, which is of course impossible.
2/ The requirement needs to be recast to require a sender to aim to be 
as knowledgeable as possible. Then, what it does as a result needs to 
take into account the a priori likelihood of there being a non-L4S 
bottleneck present.
3/ This includes the possibility that the operator of the host knows 
that the network it serves has not deployed any single queue classic ECN 
AQM (e.g. in a CDN case they're doing out of band testing, or they've 
asked the ISP). So we've included the possibility of fall-back being 
disabled by configuration.
4/ Nonetheless, as has been pointed out on the list, there is still a 
possibility that there is a Classic ECN AQM somewhere else on the path 
(to continue the CDN example, perhaps beyond the ISP in a home network). 
The 'MUST monitor' requirement still stands to ensure the operator 
doesn't miss these cases.
5/ Then, if the server operators have disabled fall-back for their 
deployment, they can reconsider their policy or at least do more focused 
testing if they are frequently detecting a single-queue Classic ECN AQM.

Items 3-5 are the "react via management" model that I've talked about on 
the list, given the unfairness doesn't amount to starvation, and it is 
possible that the prevalence of the problem is very low.

Finally, after the bullet list of requirements in section 4.3, (which 
are prerequisites for setting the ECT1 codepoint), we propose to add the 
following requirement, as suggested on the tsvwg list:

       To participate in the L4S experiment, a scalable congestion 
control MUST
       be capable of being replaced by a Classic congestion control (by
       application and by administrative control). A Classic congestion 
control
       will not tag its packets with the ECT(1) codepoint.

Cheers

Bob

-- 
________________________________________________________________
Bob Briscoehttp://bobbriscoe.net/

---

From: Sebastian Moeller <[email-masked]>
Date: Sat, 31 Oct 2020 15:54:17 +0100

Dear Koen,

since Bob claims that he intends to correspond with my input, I am addressing this response to you, See my comments in-line prefixed [SM].

Tl;dr: I appreciate that team L4S is finally admitting that it over-promised and under-delivered, I am less happy about the solution to this issue by simply reducing the requirments ot match the unsatisfactory state of the L4S implementation. After years of basically adveritizing on these requirements, watering those down at the last minute does not qualify as a good faith effort in my book. It does confirm my negative view on team L4S' acumen and confirms my judgement that L4S "offers too little too late". Unfortunately I do not kid myself that this obvious fact is going to stop the current intenet drafts gaining RFC status without any meanigful changes.

Gesendet: Samstag, 31. Oktober 2020 um 10:54 Uhr

Von: "Bob Briscoe" <[email-masked]>

An: "tsvwg IETF list" <[email-masked]>

Cc: "iccrg IRTF list" <[email-masked]>, "TCP Prague List" <[email-masked]>, "De Schepper, Koen (Koen)" <[email-masked]>

Betreff: [tsvwg] ecn-l4s-id: Proposed Changed to Normative Classic ECN detection Text

Folks,

The co-authors of ECN L4S ID have been reviewing the correctness of the normative 'Prague' requirements.

[SM] This seems less about correctness and more about whether you managed ot hit those targets with your implementation. Changing those requirements post-hoc might be justified, but pleas do not frame that as a correctness isssue.

See https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-10#section-4.3

This is the second of 2 emails, about 2 of the requirements that we think ought to be reworded a little.

If you agree with the rationale, but think the new wording still doesn't fully capture the requirement, pls suggest sthg better.

o A scalable congestion control MUST react to ECN marking from a
non-L4S but ECN-capable bottleneck in a way that will coexist with
a TCP Reno congestion control [RFC5681] (see Appendix A.1.4 for
rationale).

PROPOSED:

algorithm).

[SM] This is a significantly watering down, and it seems rather non-logical, IFF an implementation does not want/need to actually react to the result of a detection then performing that detection seems pure busy work. So make both of these MUSTs. Otherwise your requirments pretend to care about existing rfc3168 AQMs but in name only.

RATIONALE:

1/ The requirement as currently written says what an omniscient sender MUST do. So there's an implied requirement that a sender MUST be omniscient, which is of course impossible.

2/ The requirement needs to be recast to require a sender to aim to be as knowledgeable as possible. Then, what it does as a result needs to take into account the a priori likelihood of there being a non-L4S bottleneck present.

3/ This includes the possibility that the operator of the host knows that the network it serves has not deployed any single queue classic ECN AQM (e.g. in a CDN case they're doing out of band testing, or they've asked the ISP). So we've included the possibility of fall-back being disabled by configuration.

4/ Nonetheless, as has been pointed out on the list, there is still a possibility that there is a Classic ECN AQM somewhere else on the path (to continue the CDN example, perhaps beyond the ISP in a home network). The 'MUST monitor' requirement still stands to ensure the operator doesn't miss these cases.

5/ Then, if the server operators have disabled fall-back for their deployment, they can reconsider their policy or at least do more focused testing if they are frequently detecting a single-queue Classic ECN AQM.

[SM] And we are back to engineering/network administration by wishful thinking... Again with a syszem (L4S) that has not yet been proven to actually work over the existing internet with the sole exception of short RTT/low hop count paths (CDN to end-user fast-lanes copme to mind).

Items 3-5 are the "react via management" model that I've talked about on the list, given the unfairness doesn't amount to starvation, and it is possible that the prevalence of the problem is very low.

[SM] Given that you never offered your own specific defintion of what starvation entails, I fail to see how that claim can b tre in a verifiable fashion?

Finally, after the bullet list of requirements in section 4.3, (which are prerequisites for setting the ECT1 codepoint), we propose to add the following requirement, as suggested on the tsvwg list:

To participate in the L4S experiment, a scalable congestion control MUST

application and by administrative control). A Classic congestion control

[SM] +1; I would appreciate if we could add a sentence like:

"In the unlikely case of the L4S experiment being declared a failure, this replacement will need to be permanent, and the ECT(1) responsive elements in AQM nodes also needs to be disabled".

I added the unlikely in spite of my own predictions, to account for the fact that the drafts are written on the hypothesis that L4S works as advertized....

Best

Sebastian

Cheers

Bob

--
________________________________________________________________
Bob Briscoe http://bobbriscoe.net/

---

From: "De Schepper, Koen (Nokia - BE/Antwerp)" <[email-masked]>
Date: Sat, 31 Oct 2020 23:42:00 +0000

Hi Sebastian,

>> I appreciate that team L4S is finally admitting that it over-promised and under-delivered

I think the problem is that you interpret “requirements” as “promises”. Most people understand the potential of L4S and accept that special care needs to be taken to protect Single Q Classic ENC bottlenecks. The draft needs to put the attention to (potential) problems that need to be solved or avoided by interesting parties that want to develop their L4S Prague-compliant CCs. So it is in the best interest for CC developers to push for feasible/realistic requirements. I heard quite some people (including you) being concerned about the feasibility of detecting a Single Queue Classic ECN AQM, and said they would rather apply other mechanisms to avoid issues with these types of bottlenecks (ref operational guidelines that tries to collect all useful ideas that were shared during list discussions). So the changes announced by Bob should reflect this. I understood you are quite OK with the wording? If not, then your suggestions are very welcome.

>> "In the unlikely case of the L4S experiment being declared a failure, this replacement will need to be permanent, and the ECT(1) responsive elements in AQM nodes also needs to be disabled".

L4S will succeed if 1) L4S capable network nodes get deployed (including Classic ECN bottlenecks being upgraded) and 2) CCs are deployed that can meet the TCP Prague requirements (is not disrupting Classic flows and other L4S flows) AND can show great benefits. If one of those or both will not happen (like with Classic ECN deployment) it fails!! So I guess no need to worry about disabling permanently if it never gets deployed 😊.

Thanks and regards,
Koen.

From: Sebastian Moeller <[email-masked]>
Sent: Saturday, October 31, 2020 3:54 PM
To: Bob Briscoe <[email-masked]>
Cc: tsvwg IETF list <[email-masked]>; iccrg IRTF list <[email-masked]>; TCP Prague List <[email-masked]>; De Schepper, Koen (Nokia - BE/Antwerp) <[email-masked]>
Subject: Aw: [tsvwg] ecn-l4s-id: Proposed Changed to Normative Classic ECN detection Text

Dear Koen,

Gesendet: Samstag, 31. Oktober 2020 um 10:54 Uhr
Von: "Bob Briscoe" <[email-masked]<mailto:[email-masked]>>
An: "tsvwg IETF list" <[email-masked]<mailto:[email-masked]>>
Cc: "iccrg IRTF list" <[email-masked]<mailto:[email-masked]>>, "TCP Prague List" <[email-masked]<mailto:[email-masked]>>, "De Schepper, Koen (Koen)" <[email-masked]<mailto:[email-masked]>>
Betreff: [tsvwg] ecn-l4s-id: Proposed Changed to Normative Classic ECN detection Text
Folks,

...

CURRENT:

      a TCP Reno congestion control [RFC5681<https://tools.ietf.org/html/rfc5681>] (see Appendix A.1.4<https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-10#appendix-A.1.4> for

      rationale).

PROPOSED:

RATIONALE:

Best
        Sebastian

Cheers

Bob

--

---

From: Christian Huitema <[email-masked]>
Date: Sat, 31 Oct 2020 18:07:58 -0700

I am reading the L4S ECN-AQM proposal with an eye on responding to it in
an implementation of QUIC, and I have a couple of questions regarding
use of ECN marking with QUIC.

The document does not mention QUIC, yet QUIC is already used in a large
fraction of Internet traffic. QUIC does specify support for ECN, and
QUIC acknowledgements may carry counts of each category of ECN marks
received from the peer -- three counters for ECT(0), ECT(1) and CE. In
theory, QUIC implementations could take advantage of L4S -- in fact, at
least one implementation supports DC-TCP like CC already. Is there
interest in specifying L4S for QUIC?

My next question regards the interaction of the proposed L4S ECN-AQM
with CC algorithms like BBR that attempt to discover the bottleneck
packet rate for the connection, and use pacing to send packets at that
rate. I observed that BBR is never mentioned in the draft, yet BBR is
used in a sizeable part of Internet traffic. Do we have data on how a
non-L4S aware implementation of BBR interacts with the proposed L4S AQM?

My last question regards potential use of ECT(1) marking. Most current
implementations set ECT(0), but setting ECT(1) instead is trivial. This
should elicit an L4S compatible response in L4S-AQM, and the BBR
implementation might be modified to use the signals as part of the
bottleneck bandwidth tracking. But there is a small issue there. With
BBR, QUIC packets are supposedly paced at just under the bottleneck
rate, except during "probe" periods in which they probe for 1 RTT at a
slightly higher rate. The L4S AGM might degenerate in a form of ON-OFF
control -- no feedback at all most of the time, then a bunch of CE marks
if the probe rate exceeds the bottleneck bandwidth. As anyone
experimented with that?

-- Christian Huitema

On 10/31/2020 2:54 AM, Bob Briscoe wrote:
> If you agree with the rationale, but think the new wording still
> doesn't fully capture the requirement, pls suggest sthg better.
>       a TCP Reno congestion control [RFC5681 <https://tools.ietf.org/html/rfc5681>] (see Appendix A.1.4 <https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-10#appendix-A.1.4> for
>       rationale).
>
> that the network it serves has not deployed any single queue classic
> ECN AQM (e.g. in a CDN case they're doing out of band testing, or
> they've asked the ISP). So we've included the possibility of fall-back
> being disabled by configuration.
> (to continue the CDN example, perhaps beyond the ISP in a home
> network). The 'MUST monitor' requirement still stands to ensure the
> operator doesn't miss these cases.
> deployment, they can reconsider their policy or at least do more
> focused testing if they are frequently detecting a single-queue
> Classic ECN AQM.
>
> Items 3-5 are the "react via management" model that I've talked about
> on the list, given the unfairness doesn't amount to starvation, and it
> is possible that the prevalence of the problem is very low.
>
>
> are prerequisites for setting the ECT1 codepoint), we propose to add
> the following requirement, as suggested on the tsvwg list:
>
> _______________________________________________
> tcpPrague mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/tcpprague