Subject: [quicwg/base-drafts] Up to two full-sized datagrams, not packets (#2915)

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 06:46:28 -0700

Now that the PTO retransmits Initial and Handshake data, it's possible and likely desirable to bundle multiple QUIC packets in a single datagram.  This change makes it clear that is allowed.
You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Up to two full-sized datagrams, not packets

-- File Changes --

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

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/2915.patch
https://github.com/quicwg/base-drafts/pull/2915.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/2915

---

From: MikkelFJ <[email-masked]>
Date: Sun, 21 Jul 2019 06:59:14 -0700

mikkelfj commented on this pull request.

> @@ -514,7 +514,7 @@ and larger thresholds increase loss detection delay.
 
 ## Probe Timeout {#pto}
 
-A Probe Timeout (PTO) triggers sending one or two probe packets when
+A Probe Timeout (PTO) triggers sending one or two probe datagrams when
 ack-eliciting packets are not acknowledged within the expected period of
 time or the handshake has not been completed.  A PTO enables a connection to
 recover from loss of tail packets or acks. The PTO algorithm used in QUIC

```suggestion
recover from loss of tail packets or ACKs. The PTO algorithm used in QUIC
```

> @@ -598,8 +598,8 @@ discarded.
 
 When a PTO timer expires, a sender MUST send at least one ack-eliciting packet
 as a probe, unless there is no data available to send.  An endpoint MAY send up
-to two ack-eliciting packets, to avoid an expensive consecutive PTO expiration
-due to a single packet loss.
+to two full sized datagrams containing ack-eliciting packets, to avoid an
+expensive consecutive PTO expiration due to a single lost datagram.

Where is that limit of two specified? Here? Why?

-- 
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/2915#pullrequestreview-264538514

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 07:15:52 -0700

@ianswett pushed 1 commit.

e4222702990931ae6002bff60fdf5f2c4d835cf8  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/2915/files/c98ce90760579926bf0983cb2a85b86232e56058..e4222702990931ae6002bff60fdf5f2c4d835cf8

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 07:17:00 -0700

ianswett commented on this pull request.

If you send 1, it might be lost.  Ideally, fewer is better, so the question of 1 or 2 was left to implementers.

-- 
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/2915#discussion_r305620339

---

From: MikkelFJ <[email-masked]>
Date: Sun, 21 Jul 2019 07:27:20 -0700

I mean, there is no limit to coalescing AFAIK, so the limit of two here seems arbitrary, albeit probably very sensible.
https://quicwg.org/base-drafts/draft-ietf-quic-transport.html#rfc.section.12.2

-- 
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/2915#discussion_r305620785

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 21 Jul 2019 12:24:09 -0700

janaiyengar commented on this pull request.

 time or the handshake has not been completed.  A PTO enables a connection to
-recover from loss of tail packets or acks. The PTO algorithm used in QUIC
+recover from loss of tail packets or ACKs. The PTO algorithm used in QUIC

```suggestion
recover from loss of tail packets or acknowledgements. The PTO algorithm used in QUIC
```

-- 
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/2915#pullrequestreview-264550842

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 21 Jul 2019 12:24:43 -0700

```suggestion
to two full-sized datagrams containing ack-eliciting packets, to avoid an
```

-- 
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/2915#pullrequestreview-264550865

---

From: Jana Iyengar <[email-masked]>
Date: Sun, 21 Jul 2019 12:25:31 -0700

janaiyengar approved this pull request.

nits, but lgtm

-- 
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/2915#pullrequestreview-264550901

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 12:26:56 -0700

86bd396336f01afeae18bc302614d25961d29ed0  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/2915/files/e4222702990931ae6002bff60fdf5f2c4d835cf8..86bd396336f01afeae18bc302614d25961d29ed0

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 12:27:03 -0700

cd39516a3929f7b5aaedb98787e579b605b70669  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/2915/files/86bd396336f01afeae18bc302614d25961d29ed0..cd39516a3929f7b5aaedb98787e579b605b70669

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 12:28:17 -0700

There's no limit of 2 packets in a datagram here and I don't think there's one elsewhere?

-- 
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/2915#discussion_r305632363

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 12:28:55 -0700

a1b9bed8a9154f4f251a78d61dddfde676893fa3  Fix a long line

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/2915/files/cd39516a3929f7b5aaedb98787e579b605b70669..a1b9bed8a9154f4f251a78d61dddfde676893fa3

---

From: ianswett <[email-masked]>
Date: Sun, 21 Jul 2019 12:31:02 -0700

Merged #2915 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/2915#event-2498207460

---

From: MikkelFJ <[email-masked]>
Date: Sun, 21 Jul 2019 12:49:25 -0700

> An endpoint MAY send up to two full-sized datagrams containing ack-eliciting packets,

I read that as it MAY NOT send more than two, but it MAY send less.

-- 
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/2915#discussion_r305633121

---

From: MikkelFJ <[email-masked]>
Date: Sun, 21 Jul 2019 12:50:13 -0700

Ah, I am confusing UDP datagrams and packets.

-- 
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/2915#discussion_r305633152