The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S)
Metadata
- Publisher
- IETF
- Doc Type
- Experimental
- Pages
- 52
- Abstract
- This specification defines the protocol to be used for a new network service called Low Latency, Low Loss, and Scalable throughput (L4S). L4S uses an Explicit Congestion Notification (ECN) scheme at the IP layer that is similar to the original (or 'Classic') ECN approach, except as specified within. L4S uses 'Scalable' congestion control, which induces much more frequent control signals from the network, and it responds to them with much more fine-grained adjustments so that very low (typically sub-millisecond on average) and consistently low queuing delay becomes possible for L4S traffic without compromising link utilization. Thus, even capacity-seeking (TCP-like) traffic can have high bandwidth and very low delay at the same time, even during periods of high traffic load. The L4S identifier defined in this document distinguishes L4S from 'Classic' (e.g., TCP-Reno-friendly) traffic. Then, network bottlenecks can be incrementally modified to distinguish and isolate existing traffic that still follows the Classic behaviour, to prevent it from degrading the low queuing delay and low loss of L4S traffic. This Experimental specification defines the rules that L4S transports and network elements need to follow, with the intention that L4S flows neither harm each other's performance nor that of Classic traffic. It also suggests open questions to be investigated during experimentation. Examples of new Active Queue Management (AQM) marking algorithms and new transports (whether TCP-like or real time) are specified separately.
- Publication Date
- 2023-01-01
- Status Note
- Experimental
- DOI
10.17487/RFC9331- Link
- https://doi.org/10.17487/RFC9331
- Author(s)
- Koen De SchepperBob Briscoe
- Keyword(s)
- Burstiness, Queuing Delay, One-way Delay, RTT, Jitter, Congestion Control, Congestion Avoidance, Quality Of Service, QoS, Quality of Experience, QoE, AQM, ECN, Pacing
Latest version of IETF RFC 9331
Document Versions — IETF RFC 9331
-
▶ IETF RFC 9331 (2023-01-01)THIS DOC [ACTIVE] [LATEST VERSION]
Normative Reference(s)
- IETF RFC 2119 [Active*]
- IETF RFC 3168 [Active*]
- IETF RFC 4774 [Active*]
- IETF RFC 6679 [Active*]
Bibliographic Reference(s)
- 10.1109-LANMAN.2019.8847054 — COBALT EXTERNAL
- 10.1109-TC.2014.2345393 — A2DTCP EXTERNAL
- 10.1145-505696.505704 — SCWA99 EXTERNAL
- 10.1145-1080091.1080098 — VCP EXTERNAL
- 10.1145-1111322.1111336 — Dukkipati06 EXTERNAL
- 10.1145-1993744.1993753 — ADCTCP EXTERNAL
- 10.1145-2999572.2999578 — PI2 EXTERNAL
- 10.48550-arXiv.1904.07598 — sub-mss-prob EXTERNAL
- 10.48550-arXiv.1911.00710 — ecn-fallback EXTERNAL
- 10.48550-arXiv.2209.01078 — L4Seval22 EXTERNAL
- GITHUB.EricssonResearch.scream — SCReAM-L4S EXTERNAL
- GITHUB.google.bbr — BBRv2 EXTERNAL
- GITHUB.heistp.l4s-tests — Heist21 EXTERNAL
- IETF.draft-briscoe-docsis-q-protection-06 — I-D.briscoe-docsis-q-protection EXTERNAL
- IETF.draft-briscoe-iccrg-prague-congestion-control-01 — I-D.briscoe-iccrg-prague-congestion-control EXTERNAL
- IETF.draft-briscoe-tsvwg-l4s-diffserv-02 — I-D.briscoe-tsvwg-l4s-diffserv EXTERNAL
- IETF draft-cardwell-iccrg-bbr-congestion-control-02 [Active*]
- IETF.draft-ietf-tcpm-accurate-ecn-22 — I-D.ietf-tcpm-accurate-ecn EXTERNAL
- IETF.draft-ietf-tcpm-generalized-ecn-10 — I-D.ietf-tcpm-generalized-ecn EXTERNAL
- IETF.draft-ietf-trill-ecn-support-07 — I-D.ietf-trill-ecn-support EXTERNAL
- IETF.draft-ietf-tsvwg-ecn-encap-guidelines-17 — I-D.ietf-tsvwg-ecn-encap-guidelines EXTERNAL
- IETF.draft-ietf-tsvwg-l4sops-03 — I-D.ietf-tsvwg-l4sops EXTERNAL
- IETF.draft-ietf-tsvwg-nqb-15 — I-D.ietf-tsvwg-nqb EXTERNAL
- IETF.draft-ietf-tsvwg-rfc6040update-shim-15 — I-D.ietf-tsvwg-rfc6040update-shim EXTERNAL
- IETF.draft-mathis-iccrg-relentless-tcp-00 — I-D.mathis-iccrg-relentless-tcp EXTERNAL
- IETF.draft-sridharan-tcpm-ctcp-02 — CTCP EXTERNAL
- IETF.draft-stewart-tsvwg-sctpecn-05 — SCTP-ECN EXTERNAL
- Briscoe, B., "Notes: DCTCP evolution 'bar BoF': Tue 21 Jul 2015, 17:40, Prague", message to the tcpPrague mailing list, July 2015, <https://www.ietf.org/mail-archive/web/tcpprague/current/msg00001.html>. EXTERNAL
- De Schepper, K., Bondarenko, O., Tilmans, O., and B. Briscoe, "'Data Centre to the Home': Ultra-Low Latency for All", Updated RITE project Technical Report, July 2019, <https://bobbriscoe.net/projects/latency/dctth_journal_draft20190726.pdf>. EXTERNAL
- Misund, J. and B. Briscoe, "Paced Chirping - Rethinking TCP start-up", Proceedings of Linux Netdev 0x13, March 2019, <https://legacy.netdevconf.info/0x13/session.html?talk-chirp>. EXTERNAL
- Ahmed, A.S., "Extending TCP for Low Round Trip Delay", Master's Thesis, University of Oslo, August 2019, <https://www.duo.uio.no/handle/10852/70966>. EXTERNAL
- The Bufferbloat community, "Bufferbloat", <https://bufferbloat.net/>. EXTERNAL
- Jacobson, V. and M. J. Karels, "Congestion Avoidance and Control", Laurence Berkeley Labs Technical Report, November 1988, <https://ee.lbl.gov/papers/congavoid.pdf>. EXTERNAL
- Albisser, O., De Schepper, K., Briscoe, B., Tilmans, O., and H. Steen, "DUALPI2 - Low Latency, Low Loss and Scalable (L4S) AQM", Proceedings of Linux Netdev 0x13, March 2019, <https://www.netdevconf.org/0x13/session.html?talk-DUALPI2-AQM>. EXTERNAL
- Briscoe, B., De Schepper, K., Albisser, O., Misund, J., Tilmans, O., Kühlewind, M., and A. Ahmed, "Implementing the 'TCP Prague' Requirements for L4S", Proceedings of Linux Netdev 0x13, March 2019, <https://www.netdevconf.org/0x13/session.html?talk-tcp-prague-l4s>. EXTERNAL
- Briscoe, B. and P. Hurtig, "Report on Prototype Development and Evaluation of Network and Interaction Techniques", RITE Technical Report, Deliverable 2.3, Appendix C.2: "Up to Speed with Queue View", September 2015, <https://riteproject.files.wordpress.com/2015/12/rite-deliverable-2-3.pdf>. EXTERNAL
- Floyd, S., Gummadi, R., and S. Shenker, "Adaptive RED: An Algorithm for Increasing the Robustness of RED's Active Queue Management", ACIRI Technical Report 301, August 2001, <https://www.icsi.berkeley.edu/icsi/node/2032>. EXTERNAL
- IETF RFC 2474 [Active*]
- IETF RFC 3246 [Active*]
- IETF RFC 3540 [Active*]
- IETF RFC 3649 [Active*]
- IETF RFC 4301 [Active, Amended*]
- IETF RFC 4302 [Active*]
- IETF RFC 4303 [Active*]
- IETF RFC 4340 [Active*]
- IETF RFC 4341 [Active*]
- IETF RFC 4342 [Active*]
- IETF RFC 4960 [Superseded*]
- IETF RFC 5033 [Superseded*]
- IETF RFC 5129 [Active*]
- IETF RFC 5348 [Active*]
- IETF RFC 5562 [Active*]
- IETF RFC 5622 [Active*]
- IETF RFC 5681 [Active*]
- IETF RFC 5706 [Active*]
- IETF RFC 5865 [Active*]
- IETF RFC 5925 [Active*]
- IETF RFC 6040 [Active*]
- IETF RFC 6077 [Active*]
- IETF RFC 6660 [Active*]
- IETF RFC 6675 [Active*]
- IETF RFC 7560 [Active*]
- IETF RFC 7567 [Active*]
- IETF RFC 7713 [Active*]
- IETF RFC 8033 [Active*]
- IETF RFC 8083 [Active*]
- IETF RFC 8085 [Active*]
- IETF RFC 8174 [Active*]
- IETF RFC 8257 [Active*]
- IETF RFC 8290 [Active*]
- RFC8298 — RFC8298 EXTERNAL
- IETF RFC 8311 [Active*]
- IETF RFC 8312 [Superseded*]
- IETF RFC 8511 [Active*]
- IETF RFC 8888 [Active*]
- IETF RFC 8985 [Active*]
- IETF RFC 9000 [Active*]
- IETF RFC 9001 [Active*]
- IETF RFC 9147 [Active*]
- IETF RFC 9330 [Active*]
- IETF RFC 9332 [Active*]
Source Data (JSON)
Full registry record with provenance metadata. Open directly: /api/doc/RFC9331.json
Reference Tree
Explore all references and references to this document, as a navigable tree.
Open Reference TreeReference this Doc
Plain text (ISO 690 compliant)
Preview:
IETF RFC 9331, The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S). Available at https://doi.org/10.17487/RFC9331
Snippet:
IETF RFC 9331, The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S). Available at https://doi.org/10.17487/RFC9331
HTML (ISO 690 compliant)
Preview:
IETF RFC 9331, The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S). Available at https://doi.org/10.17487/RFC9331
Snippet:
<span class="citation"><cite>IETF RFC 9331</cite>, The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S). Available at <a href="https://doi.org/10.17487/RFC9331" target="_blank" rel="noopener">https://doi.org/10.17487/RFC9331</a></span>
SMPTE's HTML Pub
Preview:
IETF RFC 9331, The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S)
doi: 10.17487/RFC9331
url: https://doi.org/10.17487/RFC9331
doi: 10.17487/RFC9331
url: https://doi.org/10.17487/RFC9331
Snippet:
<li> <cite id="bib-rfc9331">IETF RFC 9331</cite>, The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S) <span class="doi">10.17487/RFC9331</span> </li>
Referenced By
- IETF RFC 9330 [Active*]
- IETF RFC 9332 [Active*]
- IETF RFC 9599 [Active*]
- IETF RFC 9600 [Active*]
- IETF RFC 9601 [Active*]