Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move connection ID change to only Server Cleartext #589

Merged
merged 3 commits into from
Jun 6, 2017
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 9 additions & 4 deletions draft-ietf-quic-transport.md
Original file line number Diff line number Diff line change
Expand Up @@ -592,8 +592,8 @@ It carries cryptographic handshake messages and acknowledgments. It is used
by a server that wishes to perform a stateless retry (see
{{stateless-retry}}).

The packet number and connection ID fields echo the packet number of the
triggering client packet. This allows a client to verify that the server
The packet number and connection ID fields echo the corresponding fields from
the triggering client packet. This allows a client to verify that the server
received its packet.

After receiving a Server Stateless Retry packet, the client uses a new Client
Expand Down Expand Up @@ -725,14 +725,19 @@ location in all packet headers, making it straightforward for middleboxes, such
as load balancers, to locate and use it.

The client MUST choose a random connection ID and use it in Client Initial
packets ({{packet-client-initial}}). If the client has received any packet from
the server, it uses the connection ID it received from the server.
packets ({{packet-client-initial}}) and 0-RTT packets ({{packet-protected}}).
If the client has received any packet from the server, it uses the connection ID
it received from the server.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sentence is slightly misleading, since 0-RTT packets will continue using the client Connection ID. I would remove this sentence since paras below cover everything else.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"... for all packets other than 0-RTT packets." ?


When the server receives a Client Initial packet and decides to proceed with the
handshake, it chooses a new value for the connection ID and sends that in a
Server Cleartext packet. The server MAY choose to use the value that the client
initially selects.

Once the client receives the connection ID that the server has chosen, it uses
this for all subsequent packets that it sends, except for any 0-RTT packets,
which all have the same connection ID.


## Packet Numbers {#packet-numbers}

Expand Down