Subject: [quicwg/base-drafts] Reference RACK and TLP in recovery section 4.7 (#4596)

From: ianswett <[email-masked]>
Date: Wed, 06 Jan 2021 12:37:06 -0800

Fixes #4467
You can view, comment on, or merge this pull request online at:

  https://github.com/quicwg/base-drafts/pull/4596

-- Commit Summary --

  * Reference RACK and TLP in recovery section 4.7

-- File Changes --

    M draft-ietf-quic-recovery.md (26)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/4596.patch
https://github.com/quicwg/base-drafts/pull/4596.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596

---

From: ianswett <[email-masked]>
Date: Wed, 06 Jan 2021 12:40:10 -0800

@ianswett pushed 1 commit.

23fa77219511a3642ec6a012069cef5b58f77da5  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/1ae9ec8d44475f7c2176d2009ba8a13ef568cfe5..23fa77219511a3642ec6a012069cef5b58f77da5

---

From: ianswett <[email-masked]>
Date: Wed, 06 Jan 2021 12:42:32 -0800

911cb33648d88fa98047db18bb9027f4fda3dae0  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/23fa77219511a3642ec6a012069cef5b58f77da5..911cb33648d88fa98047db18bb9027f4fda3dae0

---

From: ianswett <[email-masked]>
Date: Wed, 06 Jan 2021 12:44:46 -0800

a39ad324bb5131681914d17c19ebcb474165bdde  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/911cb33648d88fa98047db18bb9027f4fda3dae0..a39ad324bb5131681914d17c19ebcb474165bdde

---

From: ianswett <[email-masked]>
Date: Wed, 06 Jan 2021 13:30:36 -0800

78673301021c96221ad73804c1bace7748f6b8da  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/a39ad324bb5131681914d17c19ebcb474165bdde..78673301021c96221ad73804c1bace7748f6b8da

---

From: Martin Thomson <[email-masked]>
Date: Wed, 06 Jan 2021 15:21:02 -0800

@martinthomson approved this pull request.

> @@ -228,13 +228,17 @@ more accurate round-trip time estimate; see Section 13.2 of {{QUIC-TRANSPORT}}.
 ## Probe Timeout Replaces RTO and TLP
 
 QUIC uses a probe timeout (PTO; see {{pto}}), with a timer based on TCP's RTO
-computation.  QUIC's PTO includes the peer's maximum expected acknowledgment
-delay instead of using a fixed minimum timeout. QUIC does not collapse the
-congestion window until persistent congestion ({{persistent-congestion}}) is
-declared, unlike TCP, which collapses the congestion window upon expiry of an
-RTO.  Instead of collapsing the congestion window and declaring everything
-in-flight lost, QUIC allows probe packets to temporarily exceed the congestion
-window whenever the timer expires.
+computation; see {{?RFC6297}}.  QUIC's PTO includes the peer's maximum expected
+acknowledgment delay instead of using a fixed minimum timeout.
+
+As reflected by TLP defined in RACK ({{?RACK=I-D.ietf-tcpm-rack}}), a single

Is TLP expanded on first use?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596#pullrequestreview-563102336

---

From: Jana Iyengar <[email-masked]>
Date: Wed, 06 Jan 2021 19:02:49 -0800

@janaiyengar commented on this pull request.

> +As reflected by TLP defined in RACK ({{?RACK=I-D.ietf-tcpm-rack}}), a single
+packet loss at the tail does not indicate persistent congestion, so QUIC does
+not collapse the congestion window when the PTO expires.  Instead of
+collapsing the congestion window and declaring everything in-flight lost, QUIC
+specifies a time-based definition to ensure one or more packets are sent prior
+to a dramatic decrease in congestion window; see {{persistent-congestion}}.
+QUIC allows probe packets to temporarily exceed the congestion window
+whenever the timer expires.

```suggestion
Similar to the RACK-TLP loss detection algorithm for TCP
({{?RACK=I-D.ietf-tcpm-rack}}), QUIC does not collapse the congestion window
when the PTO expires, since a single packet loss at the tail does not indicate
persistent congestion.  Instead, QUIC collapses the congestion window when
persistent congestion is declared; see {{persistent-congestion}}.

QUIC allows probe packets to temporarily exceed the congestion window whenever
the timer expires.
```

-declared, unlike TCP, which collapses the congestion window upon expiry of an
-RTO.  Instead of collapsing the congestion window and declaring everything
-in-flight lost, QUIC allows probe packets to temporarily exceed the congestion
-window whenever the timer expires.
+computation; see {{?RFC6297}}.  QUIC's PTO includes the peer's maximum expected
+acknowledgment delay instead of using a fixed minimum timeout.
+
+As reflected by TLP defined in RACK ({{?RACK=I-D.ietf-tcpm-rack}}), a single
+packet loss at the tail does not indicate persistent congestion, so QUIC does
+not collapse the congestion window when the PTO expires.  Instead of
+collapsing the congestion window and declaring everything in-flight lost, QUIC
+specifies a time-based definition to ensure one or more packets are sent prior
+to a dramatic decrease in congestion window; see {{persistent-congestion}}.
+QUIC allows probe packets to temporarily exceed the congestion window
+whenever the timer expires.
 
 In doing this, QUIC avoids unnecessary congestion window reductions, obviating

This paragraph applies to the text before the last sentence above. I would move it up and merge it with the para on not collapsing the cwnd.

> @@ -467,7 +466,7 @@ path, whereas loss detection also relies upon key availability.
 
 Acknowledgment-based loss detection implements the spirit of TCP's Fast
 Retransmit ({{?RFC5681}}), Early Retransmit ({{?RFC5827}}), FACK ({{FACK}}),
-SACK loss recovery ({{?RFC6675}}), and RACK ({{?RACK=I-D.ietf-tcpm-rack}}). This
+SACK loss recovery ({{?RFC6675}}), and RACK ({{?RACK}}). This

```suggestion
SACK loss recovery ({{?RFC6675}}), and RACK-TLP ({{?RACK}}). This
```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596#pullrequestreview-563178678

---

From: ianswett <[email-masked]>
Date: Thu, 07 Jan 2021 12:09:36 -0800

3dd1e5c337c1a96511a55ac6318a4330a2731473  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/78673301021c96221ad73804c1bace7748f6b8da..3dd1e5c337c1a96511a55ac6318a4330a2731473

---

From: ianswett <[email-masked]>
Date: Thu, 07 Jan 2021 12:09:50 -0800

609c9c751f6bb71d5df22e31911f4d0822c31485  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/3dd1e5c337c1a96511a55ac6318a4330a2731473..609c9c751f6bb71d5df22e31911f4d0822c31485

---

From: ianswett <[email-masked]>
Date: Thu, 07 Jan 2021 12:12:10 -0800

eaa743adcdab8ea9073e5af038cd5fbf2991cf85  Update draft-ietf-quic-recovery.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596/files/609c9c751f6bb71d5df22e31911f4d0822c31485..eaa743adcdab8ea9073e5af038cd5fbf2991cf85

---

From: ianswett <[email-masked]>
Date: Thu, 07 Jan 2021 12:49:40 -0800

@ianswett commented on this pull request.

Done

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596#discussion_r553579897

---

From: Jana Iyengar <[email-masked]>
Date: Thu, 07 Jan 2021 16:52:58 -0800

Merged #4596 into master.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/4596#event-4182358819