Subject: Re: [quicwg/base-drafts] Do not reset pto_count on Initial ACKs (#3551)

From: ianswett <[email-masked]>
Date: Wed, 01 Apr 2020 18:35:17 -0700

@ianswett pushed 1 commit.

5a7994cad149f467f72ff21e240c62cfaf0523d8  Merge branch 'master' into ianswett-initial-pto

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3551/files/4b278382d1703d6433ae5a1cb2a5ff9628227f27..5a7994cad149f467f72ff21e240c62cfaf0523d8

---

From: ianswett <[email-masked]>
Date: Thu, 02 Apr 2020 06:48:08 -0700

3bd99fbdbfcc74e15f1a0402f2168b9f30ab14a5  Kazuho's suggestion

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3551/files/5a7994cad149f467f72ff21e240c62cfaf0523d8..3bd99fbdbfcc74e15f1a0402f2168b9f30ab14a5

---

From: ianswett <[email-masked]>
Date: Thu, 02 Apr 2020 06:48:31 -0700

@ianswett commented on this pull request.

> @@ -501,7 +501,13 @@ and prevents a server from sending a 1-RTT packet on a PTO expiration before it
 has the keys to process an acknowledgement.
 
 When a PTO timer expires, the PTO period MUST be set to twice its current
-value. This exponential reduction in the sender's rate is important because
+value. The PTO period is set back to the original value upon receiving an
+acknowledgement for a non-Initial packet. The PTO timer is not decreased when
+the client receives an Initial ACK to ensure the client's anti-deadlock timer

Agreed, accepted with some small editorial changes.

-- 
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/3551#discussion_r402326578

---

From: Marten Seemann <[email-masked]>
Date: Thu, 02 Apr 2020 21:10:14 -0700

@marten-seemann approved this pull request.

-- 
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/3551#pullrequestreview-386925016

---

From: Kazuho Oku <[email-masked]>
Date: Fri, 03 Apr 2020 02:14:23 -0700

@kazuho approved this pull request.

Looks great!

-- 
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/3551#pullrequestreview-387087511

---

From: Tatsuhiro Tsujikawa <[email-masked]>
Date: Fri, 03 Apr 2020 18:08:03 -0700

@tatsuhiro-t approved this pull request.

-- 
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/3551#pullrequestreview-387650662

---

From: Jana Iyengar <[email-masked]>
Date: Wed, 08 Apr 2020 19:28:54 -0700

@janaiyengar commented on this pull request.

Thanks, Ian, a couple of comments.

> @@ -501,7 +501,13 @@ packet on a PTO expiration before confirming that the server is able to decrypt
 expiration before it has the keys to process an acknowledgement.
 
 When a PTO timer expires, the PTO period MUST be set to twice its current
-value. This exponential reduction in the sender's rate is important because
+value.  The PTO period is reset based on the latest rtt information when

```suggestion
value.  The PTO period is set based on the latest RTT information when
```

> @@ -501,7 +501,13 @@ packet on a PTO expiration before confirming that the server is able to decrypt
 expiration before it has the keys to process an acknowledgement.
 
 When a PTO timer expires, the PTO period MUST be set to twice its current
-value. This exponential reduction in the sender's rate is important because
+value.  The PTO period is reset based on the latest rtt information when
+receiving an acknowledgement if the peer has completed address validation.
+The PTO timer is not decreased while the peer is validating the

```suggestion
The PTO backoff is not decreased even on receiving an
acknowledgement as long as the peer is validating this endpoint's
```

> +address, to ensure the endpoint's anti-deadlock timer does not fire too
+aggressively when the server does not yet have handshake data to send.

```suggestion
address. Doing so ensures that the endpoint's anti-deadlock timer is not 
set too aggressively when the server seems to be slow in responding with
handshake data.
```

> @@ -1147,7 +1153,10 @@ OnAckReceived(ack, pn_space):
     OnPacketsLost(lost_packets)
   OnPacketsAcked(newly_acked_packets)
 
-  pto_count = 0
+  // Reset pto_count unless the server has not yet
+  // validated the client's address.
+  if (PeerCompletedAddressValidation()):
+    pto_count = 0
   SetLossDetectionTimer()

Should this also be done only when pto_count is set to 0? Why restart the timer here if the pto_count hasn't changed?

-- 
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/3551#pullrequestreview-390450027

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 08:58:08 -0700

-  pto_count = 0

A new RTT measurement is available, so the alarm value should always be updated.

-- 
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/3551#discussion_r406308067

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 08:58:35 -0700

a1eff954c33c39d35b62d3a5491099e83562f0e2  Apply suggestions from code review

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3551/files/3bd99fbdbfcc74e15f1a0402f2168b9f30ab14a5..a1eff954c33c39d35b62d3a5491099e83562f0e2

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 08:59:53 -0700

53b4584e6fc28ba304486f63e98294ffce326233  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/3551/files/a1eff954c33c39d35b62d3a5491099e83562f0e2..53b4584e6fc28ba304486f63e98294ffce326233

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 09:04:00 -0700

5226e28d34da20c95106cc8022668b5b09751577  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/3551/files/53b4584e6fc28ba304486f63e98294ffce326233..5226e28d34da20c95106cc8022668b5b09751577

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 09:05:07 -0700

e701772e6c33bd6002546787c017b54878b392e4  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/3551/files/5226e28d34da20c95106cc8022668b5b09751577..e701772e6c33bd6002546787c017b54878b392e4

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 09:08:01 -0700

e192b697af82865eedc302435a35bd99bede506b  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/3551/files/e701772e6c33bd6002546787c017b54878b392e4..e192b697af82865eedc302435a35bd99bede506b

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 09:08:22 -0700

Taken with a small tweak.

-- 
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/3551#discussion_r406314359

---

From: ianswett <[email-masked]>
Date: Thu, 09 Apr 2020 09:11:56 -0700

02069cd3461402b75d3a6b5924728875ae58277e  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/3551/files/e192b697af82865eedc302435a35bd99bede506b..02069cd3461402b75d3a6b5924728875ae58277e

---

From: ianswett <[email-masked]>
Date: Sat, 18 Apr 2020 09:12:49 -0700

1a1e49b557c6d913461b4b692aa38884e7aecd1a  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/3551/files/02069cd3461402b75d3a6b5924728875ae58277e..1a1e49b557c6d913461b4b692aa38884e7aecd1a

---

From: ianswett <[email-masked]>
Date: Sat, 18 Apr 2020 09:13:32 -0700

7826ec1e1a5db2c03eebd43ff9dfd5ef6b3e4f69  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/3551/files/1a1e49b557c6d913461b4b692aa38884e7aecd1a..7826ec1e1a5db2c03eebd43ff9dfd5ef6b3e4f69

---

From: ianswett <[email-masked]>
Date: Sat, 18 Apr 2020 09:16:59 -0700

2687b58c43c63eee2bf2f2a229dc95e5b1d05654  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/3551/files/7826ec1e1a5db2c03eebd43ff9dfd5ef6b3e4f69..2687b58c43c63eee2bf2f2a229dc95e5b1d05654

---

From: ianswett <[email-masked]>
Date: Sun, 19 Apr 2020 14:46:42 -0700

beca7cd89fadd8ab85d81aee9856aa53e90648f9  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/3551/files/2687b58c43c63eee2bf2f2a229dc95e5b1d05654..beca7cd89fadd8ab85d81aee9856aa53e90648f9

---

From: ianswett <[email-masked]>
Date: Sun, 19 Apr 2020 14:52:25 -0700

1f178bd4d73ac7f3f7c2168e775fe5f64c92dc61  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/3551/files/beca7cd89fadd8ab85d81aee9856aa53e90648f9..1f178bd4d73ac7f3f7c2168e775fe5f64c92dc61

---

From: ianswett <[email-masked]>
Date: Sun, 19 Apr 2020 14:54:20 -0700

eb935271a7446ecdf7d598c794db2ebfd4c4ff39  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/3551/files/1f178bd4d73ac7f3f7c2168e775fe5f64c92dc61..eb935271a7446ecdf7d598c794db2ebfd4c4ff39

---

From: ianswett <[email-masked]>
Date: Sun, 19 Apr 2020 15:08:38 -0700

Merged #3551 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/3551#event-3249532462