Subject: [quicwg/base-drafts] Remember Fewer Transport Parameters for 0-RTT (#2464)

From: martinduke <[email-masked]>
Date: Thu, 14 Feb 2019 18:49:45 +0000 (UTC)

Sec 7.3.1 of quic-transport says: 
A client that attempts to send 0-RTT data MUST remember the transport parameters used by the server. The transport parameters that the server advertises during connection establishment apply to all connections that are resumed using the keying material established during that handshake. Remembered transport parameters apply to the new connection until the handshake completes and new transport parameters from the server can be provided.

Later on, the section makes it clear that this is really about the flow control parameters, which makes a lot of sense, but here I am storing all this data to be compliant.

I propose that we change the MUST above to refer to only the 6 FC parameters. This reduces the stuff that clients have to store.

going through each:
original_connection_id: clearly useless
idle_timeout: useless in handshake
stateless_reset_token: clearly useless
max_packet_size: could be useful, but meh
ack_delay_exponent: not useful before we get the server Handshake
max_ack_delay: same
disable_migration: same
preferred_address: same

-- 
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/2464

---

From: Mike Bishop <[email-masked]>
Date: Thu, 14 Feb 2019 10:52:12 -0800

It's not just the flow control parameters -- it's also support for extensions in TPs yet-to-be-defined.  So while I would be amenable to reorienting this issue to create an exception for the ones you've marked as useless, I think this is the correct default rule.

-- 
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/2464#issuecomment-463746439

---

From: martinduke <[email-masked]>
Date: Thu, 14 Feb 2019 10:52:56 -0800

good point. I'm happy to write a PR as you describe if others agree.

-- 
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/2464#issuecomment-463746699

---

From: ianswett <[email-masked]>
Date: Thu, 14 Feb 2019 12:54:45 -0800

I agree that a good number of those are useless.

Possibly we should explicitly state which params need to be stored and extensions should be required to state whether they need to be stored when they're defined?

-- 
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/2464#issuecomment-463791989

---

From: Martin Thomson <[email-masked]>
Date: Thu, 14 Feb 2019 13:06:02 -0800

How is anyone going to know if you don't remember these values?  Just remember the ones you know you need to remember.

-- 
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/2464#issuecomment-463796273

---

From: Mike Bishop <[email-masked]>
Date: Thu, 14 Feb 2019 21:12:56 +0000 (UTC)

A conformance test that deliberately lowers them after accepting 0-RTT and checks whether the client chokes.

-- 
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/2464#issuecomment-463798837

---

From: Martin Thomson <[email-masked]>
Date: Thu, 14 Feb 2019 13:14:58 -0800

You can't lower preferred addresses, disable migration, etc..  Basically, we should allow all those that @martinduke points out make no sense to remember to change.  That's the real fix here.

-- 
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/2464#issuecomment-463799620

---

From: Jana Iyengar <[email-masked]>
Date: Thu, 21 Feb 2019 19:35:59 -0800

This makes sense, and the list is good. 

-- 
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/2464#issuecomment-466261730