Transport Area working group (tsvwg) G. White Internet-Draft B. Briscoe, Ed. Intended status: Experimental CableLabs Expires: September 26, 2019 March 25, 2019 Per-Flow-Queue AQM Support for both SCE and L4S draft-briscoe-tsvwg-aqm-sce-l4s-00 Abstract This memo proposes an enhancement to an node that supports Some Congestion Experienced (SCE) marking to allow SCE experiments to better coexist with L4S experiments on the Internet. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on September 26, 2019. Copyright Notice Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. White & Briscoe Expires September 26, 2019 [Page 1] Internet-Draft DualQ Coupled AQMs March 2019 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Coexistence Proposal . . . . . . . . . . . . . . . . . . . . 2 3. Coexistence Cases . . . . . . . . . . . . . . . . . . . . . . 3 4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 6.1. Normative References . . . . . . . . . . . . . . . . . . 5 6.2. Informative References . . . . . . . . . . . . . . . . . 5 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 1. Introduction This brief document assumes that readers understand ECN [RFC3168], as updated by [RFC8311], and that they know or will find out about both the SCE and L4S approaches from the references. Briefly the two approaches are: o Low Latency Low Loss Scalable throughput (L4S) [I-D.ietf-tsvwg-l4s-arch] achieves ultra-low queuing delay (consistently below 1-2ms) even when L4S flows are capacity- seeking (like TCP) and even when they all share a First in First Out (FIFO) queue. The low latency of L4S flows can be isolated from classic traffic, either using the DualQ Coupled AQM [I-D.ietf-tsvwg-aqm-dualq-coupled]) or per-flow queuing. o The SCE approach [I-D.morton-taht-sce] also aims to ensure very low queuing delay when flows are capacity seeking. It separates flows capable of ultra-low queuing delay from classic flows using per-flow queuing. This document proposes a way in which both approaches can better co- exist in the Internet. It is not intended to compare the two approaches - that's for elsewhere. The focus is solely on inter- operation with each other. 2. Coexistence Proposal Currently, 'L4S behaviour' means an AQM that alters more ECT(1) packets to CE the more the instantaneous queue exceeds a shallow threshold. 'SCE behaviour' means an AQM that alters more ECT(0) packets to ECT(1) the more the instantaneous queue exceeds a shallow threshold. And it alters more ECT(0) or ECT(1) to CE the more the queue persistently exceeds a deeper target, e.g. as driven by CoDel [RFC8289] or PIE [RFC8033]. White & Briscoe Expires September 26, 2019 [Page 2] Internet-Draft DualQ Coupled AQMs March 2019 Currently, if per-flow queuing (FQ) is implemented, an L4S or an SCE approach can be used. The proposal is for an FQ AQM that embodies both approaches. It is easier to describe as a modification to an SCE AQM, as follows. To allow both schemes to co-exist, a per-flow queue that already supported SCE would need the following minor alteration: An SCE AQM's flow state defaults to SCE behaviour, until it sees an ECT(1) packet when it switches its flow state to L4S behaviour, unless it has ever seen or ever sees an ECT(0) packet. To be clear, flow state in an SCE network node is expected to be ephemeral, and is not expected to survive as long as the e2e flow state (but it's fine if it does). In particular, the above logic can be reset when a queue is moved to the "Empty" state [RFC8290]. The reason this proposal improves compatibility is that a flow- queuing node can recognize the type of the flow and adapt its behaviour accordingly. And even though an SCE node introduces some ECT(1) into a flow, if this hits another SCE node downstream, it can tell that the ECT(1) did not come from a Prague sender, because there is some ECT(0) mixed in the same flow. In L4S specification terms, this would require a tweak to the section in the existing L4S requirement about network nodes with transport- layer awareness (Section 5.3 of [I-D.ietf-tsvwg-ecn-l4s-id]). In SCE network node implementation terms, this proposal would require an extra mode for an SCE network node and the different ECN-marking transition for any AQM within a flow-queue in this mode. 3. Coexistence Cases Figure 1 shows all the combinations of Sender Congestion Control (CC), and AQM without the proposed compromise. Figure 2 shows the same combinations with the proposed approach (using the abbreviation FQ3). In each figure, two AQMs are shown on the path, one upstream of the other, in order to show how two AQMs using all the combinations of the two approaches would interact. A 'Low Delay' outcome means as good as the state-of the art with FQ-CoDel [RFC8290] or PIE [RFC8033], [RFC8034] (before these new schemes). 'Ultra-Low-Delay' is the outcome hoped for from SCE and achieved by L4S. White & Briscoe Expires September 26, 2019 [Page 3] Internet-Draft DualQ Coupled AQMs March 2019 Sender CC Upstream Downstrm Delay Box Box SCE-CC ----> FQ2 ---> FQ2 Ultra-Low \ \-> 2QC Low/Ultra-Low & Reordering \-> 2QC ---> FQ2 Low \-> 2QC Low Prague ----> FQ2 ---> FQ2 Low \ \-> 2QC Low \-> 2QC ---> FQ2 Low \-> 2QC Ultra-Low 2QC = DualQ-Coupled AQM; FQ2 = FQ-2-Threshold (SCE) AQM Figure 1: Without the Proposed Compromise Sender CC Upstream Downstrm Delay Box Box SCE-CC ----> FQ3 ---> FQ3 Ultra-Low \ \-> 2QC Low/Ultra-Low & Reordering \-> 2QC ---> FQ3 Low \-> 2QC Low Prague ----> FQ3 ---> FQ3 Ultra-Low \ \-> 2QC Ultra-Low \-> 2QC ---> FQ3 Ultra-Low \-> 2QC Ultra-Low 2QC = DualQ-Coupled AQM; FQ3 = FQ-3-Mode AQM (the proposed compromise) Figure 2: With the Proposed Compromise Without the proposed compromise, it can be seen that the only combinations that give or potentially give ultra-low delay are those where all three elements on the path are from the same approach. In all the other case except one, the combination is no worse than the state-of-the-art today. The exception is where the three output states of the SCE protocol depart from the ground rules for ECN experimentation in [RFC8311], which were assumed in the design of the L4S DualQ Coupled AQM. This particular incompatibility is not addressed or solved by the present proposal. White & Briscoe Expires September 26, 2019 [Page 4] Internet-Draft DualQ Coupled AQMs March 2019 With the proposed compromise, there are three more combinations where Ultra-Low Queuing Delay is achieved. It is not problematic that some cases do not achieve ultra-low delay - the SCE approach accepts that it will often not improve delay. Nonetheless, achieving ultra-low delay in more than half the cases is beneficial. 4. Security Considerations This proposal allows a single ECT(0) packet to switch the (probably ephemeral) flow-state of an AQM into a different ECN-marking mode. It is not believed that this could be used as an attack vector, but intuitively it feels rather brittle. 5. Acknowledgements Thanks to Jason Livingood for suggesting we try to work out a compromise proposal that makes both schemes work. 6. References 6.1. Normative References [RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition of Explicit Congestion Notification (ECN) to IP", RFC 3168, DOI 10.17487/RFC3168, September 2001, . [RFC8311] Black, D., "Relaxing Restrictions on Explicit Congestion Notification (ECN) Experimentation", RFC 8311, DOI 10.17487/RFC8311, January 2018, . 6.2. Informative References [I-D.ietf-tsvwg-aqm-dualq-coupled] Schepper, K., Briscoe, B., Bondarenko, O., and I. Tsang, "DualQ Coupled AQMs for Low Latency, Low Loss and Scalable Throughput (L4S)", draft-ietf-tsvwg-aqm-dualq-coupled-08 (work in progress), November 2018. [I-D.ietf-tsvwg-ecn-l4s-id] Schepper, K. and B. Briscoe, "Identifying Modified Explicit Congestion Notification (ECN) Semantics for Ultra-Low Queuing Delay (L4S)", draft-ietf-tsvwg-ecn-l4s- id-06 (work in progress), March 2019. White & Briscoe Expires September 26, 2019 [Page 5] Internet-Draft DualQ Coupled AQMs March 2019 [I-D.ietf-tsvwg-l4s-arch] Briscoe, B., Schepper, K., and M. Bagnulo, "Low Latency, Low Loss, Scalable Throughput (L4S) Internet Service: Architecture", draft-ietf-tsvwg-l4s-arch-03 (work in progress), October 2018. [I-D.morton-taht-sce] Morton, J. and D. Taht, "The Some Congestion Experienced ECN Codepoint", draft-morton-taht-sce-00 (work in progress), March 2019. [RFC8033] Pan, R., Natarajan, P., Baker, F., and G. White, "Proportional Integral Controller Enhanced (PIE): A Lightweight Control Scheme to Address the Bufferbloat Problem", RFC 8033, DOI 10.17487/RFC8033, February 2017, . [RFC8034] White, G. and R. Pan, "Active Queue Management (AQM) Based on Proportional Integral Controller Enhanced PIE) for Data-Over-Cable Service Interface Specifications (DOCSIS) Cable Modems", RFC 8034, DOI 10.17487/RFC8034, February 2017, . [RFC8289] Nichols, K., Jacobson, V., McGregor, A., Ed., and J. Iyengar, Ed., "Controlled Delay Active Queue Management", RFC 8289, DOI 10.17487/RFC8289, January 2018, . [RFC8290] Hoeiland-Joergensen, T., McKenney, P., Taht, D., Gettys, J., and E. Dumazet, "The Flow Queue CoDel Packet Scheduler and Active Queue Management Algorithm", RFC 8290, DOI 10.17487/RFC8290, January 2018, . Authors' Addresses Greg White CableLabs Louisville, CO US Email: g.white@cablelabs.com White & Briscoe Expires September 26, 2019 [Page 6] Internet-Draft DualQ Coupled AQMs March 2019 Bob Briscoe (editor) CableLabs UK Email: ietf@bobbriscoe.net URI: http://bobbriscoe.net/ White & Briscoe Expires September 26, 2019 [Page 7]