On 11/5/2023 4:43 PM, Watson Ladd wrote:
On Fri, Nov 3, 2023 at 8:45 AM Lucas Pardue <[email protected]> wrote:

Hi folks,

I'm still trying to come up to speed on this spec. But when I've thought about 
it a little, its seemed very natural to associate the BDP frame (contents) with 
the TLS session. We already have a lot of text about TLS session resumption in 
QUIC. It feels like there is already a template design with HTTP/3 - a server 
sends SETTINGS to tell a client something unique about the active QUIC 
connection. RFC 9114 section 7.2.4.2 [1]states

When a 0-RTT QUIC connection is being used, the initial value of each server 
setting is the value used in the previous session. Clients SHOULD store the 
settings the server provided in the HTTP/3 connection where resumption 
information was provided, but they MAY opt not to store settings in certain 
cases (e.g., if the session ticket is received before the SETTINGS frame). A 
client MUST comply with stored settings -- or default values if no values are 
stored -- when attempting 0-RTT. Once a server has provided new settings, 
clients MUST comply with those values.¶

So with a bit of massaging, if we can link BDP frame to session resumption. we 
know that it is based on a previous trust relationship.

I'd prefer not to incorporate user application related data (which
QUIC info would be) in TLS resumption tickets. There is not a great
way to do this, and particularly as BDP can vary over time so the TLS
layer would have to send more tickets. Not fatal, but more coupling
than I think is ideal.

That's why it would be better to place the data in the address validation tokens, which are explicitly tied to IP addresses. (Watson: address validation tokens are defined in section 8 of RFC 9000. The primary goal is defend against the QUIC equivalent of SYN Attacks, but the servers can use them however they see fit.)

-- Christian Huitema

Reply via email to