Subject: [quicwg/base-drafts] PING/PONG ambiguity (#1051)

From: Manuel Kieweg <[email-masked]>
Date: Sun, 14 Jan 2018 19:00:29 +0000 (UTC)

The definition of PING and PONG frames are ambiguous.   

Section 8.9 states:
> If the Data field is not empty, the recipient of this frame MUST generate a 
> PONG frame (Section 8.15) containing the same Data. 

Section 8.15 states:
> If the content of a PONG frame does not match the content of a PING frame
> previously sent by the endpoint, the endpoint MAY generate a connection error of type
> UNSOLICITED_PONG.

The way I see it either the `MAY` in Section 8.15 has to be a `MUST` to solve this ambiguity or the part in Section 8.9 has to be c hanged into something less strict. 
This would be my preferred option since it gives the PING/PONG frames a little bit more semantic leeway.

-- 
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/issues/1051

---

From: MikkelFJ <[email-masked]>
Date: Sun, 14 Jan 2018 11:41:59 -0800

Even if the PONG'er behaves correctly, arbitrary network delays and packet duplication may cause PONG packets to arrive after they are no longer remembered by the PING'er. Requiring a MUST makes correct evalutation much harder, either by storing PING frames indefinitely or by using some hashing to confirm the validity of the PONG frame.

-- 
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/issues/1051#issuecomment-357536326

---

From: Martin Thomson <[email-masked]>
Date: Mon, 15 Jan 2018 04:06:56 +0000 (UTC)

@mikkelfj's answer here is the reason that this isn't a MUST. @boisjacques, do you think that there needs to be some better explanation of 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/issues/1051#issuecomment-357578472

---

From: Manuel Kieweg <[email-masked]>
Date: Mon, 15 Jan 2018 03:59:51 -0800

Thank you for the clarification, for me it's clear now. However it might help to make the implicit explanation more explicit. 

-- 
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/issues/1051#issuecomment-357663386