Subject: [quicwg/base-drafts] Clarify coalesced packet processing (#1844)

From: Igor Lubashev <[email-masked]>
Date: Mon, 08 Oct 2018 15:49:08 -0700

Addressing #1840 
You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Clarify coalesced packet processing

-- File Changes --

    M draft-ietf-quic-transport.md (11)

-- Patch Links --

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

---

From: ianswett <[email-masked]>
Date: Mon, 08 Oct 2018 16:11:48 -0700

ianswett commented on this pull request.

> @@ -960,12 +960,11 @@ Every QUIC packet that is coalesced into a single UDP datagram is separate and
 complete.  Though the values of some fields in the packet header might be
 redundant, no fields are omitted.  The receiver of coalesced QUIC packets MUST
 individually process each QUIC packet and separately acknowledge them, as if
-they were received as the payload of different UDP datagrams.  If one or more
-packets in a datagram cannot be processed yet (because the keys are not yet
-available) or processing fails (decryption failure, unknown type, etc.), the
-receiver MUST still attempt to process the remaining packets.  The skipped
-packets MAY either be discarded or buffered for later processing, just as if the
-packets were received out-of-order in separate datagrams.
+they were received as the payload of separate UDP datagrams.  For example, if
+one or more packets in a datagram cannot be decrypted (the keys are not yet
+available, decryption failure, unknown type), the receiver MAY either discard or

", decryption fails, or the packet is of an unknown type"

-- 
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/1844#pullrequestreview-162669527

---

From: ianswett <[email-masked]>
Date: Mon, 08 Oct 2018 16:12:14 -0700

+buffer for packet for later processing and MUST attempt to process the remaining

for packet -> the packet

-- 
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/1844#pullrequestreview-162669601

---

From: Igor Lubashev <[email-masked]>
Date: Mon, 08 Oct 2018 18:17:16 -0700

@igorlord pushed 1 commit.

6a956a5  Resolve received feedback

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1844/files/20b6b4036d076bffa1e8548fa0c9c76e4bbcdf70..6a956a510f64b5c8f3e8826399325bc376d73a91

---

From: Igor Lubashev <[email-masked]>
Date: Mon, 08 Oct 2018 18:18:18 -0700

igorlord commented on this pull request.

Thanks.  Applied the suggestion.

-- 
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/1844#discussion_r223537658

---

From: Igor Lubashev <[email-masked]>
Date: Mon, 08 Oct 2018 18:18:45 -0700

Fixed

-- 
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/1844#discussion_r223537723

---

From: ianswett <[email-masked]>
Date: Mon, 08 Oct 2018 18:25:00 -0700

ianswett 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/1844#pullrequestreview-162689906

---

From: MikkelFJ <[email-masked]>
Date: Mon, 08 Oct 2018 21:31:18 -0700

mikkelfj commented on this pull request.

If no more long headers are expected, it would seem reasonable to drop the packet.

-- 
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/1844#pullrequestreview-162713077

---

From: Igor Lubashev <[email-masked]>
Date: Mon, 08 Oct 2018 21:43:46 -0700

Long headers are useful for PMTUD to validate (and route) PTB ICMP messages. So we discussed in Seattle the idea of prepending long header packets to PMTUD Probe 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/1844#issuecomment-428057772

---

From: Mike Bishop <[email-masked]>
Date: Tue, 09 Oct 2018 19:34:33 +0000 (UTC)

MikeBishop commented on this pull request.

> @@ -960,12 +960,10 @@ Every QUIC packet that is coalesced into a single UDP datagram is separate and
+decryption fails or the packet is of an unknown type, the receiver MAY either

This seems to lose the case this text was originally added to address, which is that you don't have the keys to process this packet type yet.  While these are non-limiting examples, that's probably a case worth calling out explicitly.

-- 
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/1844#pullrequestreview-163060172

---

From: Igor Lubashev <[email-masked]>
Date: Wed, 10 Oct 2018 12:06:00 -0700

366baba  Add back a mention of unavailable keys as a possible cause of decryption failure.

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1844/files/6a956a510f64b5c8f3e8826399325bc376d73a91..366baba75fcb1b641a3ed7c83ff4edc0927ebf31

---

From: Igor Lubashev <[email-masked]>
Date: Wed, 10 Oct 2018 12:08:05 -0700

Makes sense.  Updated the PR to mention this case specifically.

-- 
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/1844#discussion_r224205349

---

From: janaiyengar <[email-masked]>
Date: Wed, 10 Oct 2018 18:41:49 -0700

janaiyengar commented on this pull request.

+decryption fails (the keys are not yet available or any other reason) or the
+packet is of an unknown type, the receiver MAY either discard or buffer the

"the packet" does not make sense in this context. How about "If one or more packets in a datagram cannot be processed yet, because of decryption failure or any other reason, the receiver MAY either discard or buffer the packets for later processing. The receiver MUST still attempt to process the remaining packets in the UDP datagram."

-- 
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/1844#pullrequestreview-163622324

---

From: Martin Thomson <[email-masked]>
Date: Mon, 15 Oct 2018 02:09:19 -0700

martinthomson commented on this pull request.

That sounds good.  Want to port that over to #1857?

-- 
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/1844#discussion_r225089743

---

From: Igor Lubashev <[email-masked]>
Date: Mon, 15 Oct 2018 08:28:46 -0700

I would omit "yet".  "Yet" implies knowing that it will be possible to decrypt the packet in the future.  It is hard to know the future.

-- 
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/1844#discussion_r225211046

---

From: Martin Thomson <[email-masked]>
Date: Thu, 18 Oct 2018 23:18:42 -0700

Closed #1844 via 2246cec97303a523234f9f97449f578b70791abd.

-- 
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/1844#event-1913968794

---

From: Martin Thomson <[email-masked]>
Date: Thu, 18 Oct 2018 23:18:44 -0700

Merged by hand.

-- 
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/1844#issuecomment-431256789