-
Notifications
You must be signed in to change notification settings - Fork 205
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
A day in the life #3225
A day in the life #3225
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed you didn't write anything about Retry. Was that intentional?
draft-ietf-quic-transport.md
Outdated
protocol. Streams ({{streams}}) is the primary mechanism by which an | ||
application protocol exchanges information. | ||
|
||
Each connection starts with an handshake phase, during which client and server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
s/an/a
draft-ietf-quic-transport.md
Outdated
--> | ||
A QUIC connection is a stateful interaction between a client and server, the | ||
primary purpose of which is to support the exchange of data by an application | ||
protocol. Streams ({{streams}}) is the primary mechanism by which an |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
s/is/are?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really didn't know which here. But I think that you are right.
draft-ietf-quic-transport.md
Outdated
securely without adversely affecting privacy. | ||
|
||
For connections that are no longer needed or desired, there are several ways for | ||
a client and server to agree to remove connection state ({{termination}}). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This paragraph feels incomplete. What are those different ways? Are you referring to silent close vs. immediate close?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I had that in the first cut, but then removed it. The referenced section has enough information about closing. It's not super-important to duplicate all that text when it is so succinctly stated later.
Retry is there, but at one level higher up ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps also some discussion on termination - silent idle timeout vs connection close, and risk of loss of close packet.
draft-ietf-quic-transport.md
Outdated
The use of connection IDs ({{connection-id}}) allows connections to migrate to a | ||
new network path, both as a direct choice of an endpoint and when forced by a | ||
change in a middlebox. {{migration}} describes how a migration can be performed | ||
securely without adversely affecting privacy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is a strong claim. "... with as little impact on privacy as practically possible" would be more precise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm surprised that you aren't also contesting the security claim as well :) Because that too is in question.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We all know that security is an illusion :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
{{migration}} describes potential mitigations for the security and privacy implications of migration.
|
||
Each connection starts with an handshake phase, during which client and server | ||
Each connection starts with a handshake phase, during which client and server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unless of course your intended audience is primarily from East End
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MikeBishop Cockney an 'andshake
Co-Authored-By: MikkelFJ <mikkelfj@gmail.com>
Co-Authored-By: ianswett <ianswett@users.noreply.github.com>
An application protocol can also operate in a limited fashion during the | ||
handshake phase. 0-RTT allows application messages to be sent by a client | ||
before receiving any messages from the server. However, 0-RTT lacks certain key | ||
security guarantees. In particular, there is no protection against replay |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
security guarantees. In particular, there is no protection against replay | |
security guarantees. In particular, there is no protection against replay |
draft-ietf-quic-transport.md
Outdated
The use of connection IDs ({{connection-id}}) allows connections to migrate to a | ||
new network path, both as a direct choice of an endpoint and when forced by a | ||
change in a middlebox. {{migration}} describes how a migration can be performed | ||
securely without adversely affecting privacy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
{{migration}} describes potential mitigations for the security and privacy implications of migration.
For connections that are no longer needed or desired, there are several ways for | ||
a client and server to terminate a connection ({{termination}}). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The PR talks about birth, marriage, divorce and death.
Perhaps it is pertinent to have a paragraph the mentions the connection's role in the steady-state between some of these things. In fact, mentioning that it is mainly the application mapping's responsibility to define the specifics might help.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have a suggestion? I hit that briefly in the first paragraph with the "this is for sending stuff by application protocols", but I realize that might not be satisfactory.
So we have little diagrams for send and receive stream states. Any chance this section could include a state diagram and transitions for the overall connection state? |
...and now we know how many holes it takes to fill the Albert Hall.
This section has existed for a long time as "TBD". No longer. It also
takes the opportunity to explain a little bit about what 0-RTT is for.
Closes #2856.
Closes #2843.