Hi Martin, On 26/09/2023 01:17, Martin Thomson wrote: > Hi Emeric, > > > The server does not need to check this part. The client is expected to set > the DCID on subsequent Initial packets because this is what will ensure that > the packet is routed correctly. Anything else and it is possible that the > Initial and token will not reach a server that are able to understand the > pair of messages. > > Consider the case where you have different token keys on different server > instances. That is possible under the QUIC design, because the server > instance can choose a connection ID that will route to a specific instance> > If the client does not follow the rules and copy the SCID from the Retry into > the DCID of the subsequent Initial packets, then maybe it will work (because > the server doesn't check) or maybe it will. It can fail either because the > server does or because the packet gets routed to an instance that rejects the > attempt to make a connection. >
Makes sense now ! Thank you. > If you want to statically enforce this behaviour at a server, then you will > need extra state (either at the server or in the token, as you say), but I > don't think you absolutely need to do this enforcement. Perhaps we should > have said something about what a server can do here -- maybe with a "MAY" -- > though I don't think this is a huge problem. Indeed, when I notice this behavior, we re-read the RFC at 2 developers here to find out what we should do on our server but the doubt remained so I wrote to ML. But since this check is unnecessary, we will remove it. This way we could validate the token on any subsequent packets regardless the used destID. > My own implementation of this logic only stores a timestamp and the DCID from > the very first client Initial in the retry token plaintext. The source > address is added to the AAD to save space. Of course, that is a toy > implementation, so don't pay too much attention. You might have good cause > to track other state. Removing this ID from the AAD of the token computation we will have the similar content for AAD. So it's fine, Thanks again! Regards, Emeric
