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

Éric Vyncke's HTTP/3 Comments #4762

Merged
merged 6 commits into from Jan 22, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
21 changes: 13 additions & 8 deletions draft-ietf-quic-http.md
Expand Up @@ -104,20 +104,21 @@ code and issues list for this draft can be found at

HTTP semantics ({{!SEMANTICS=I-D.ietf-httpbis-semantics}}) are used for a broad
range of services on the Internet. These semantics have most commonly been used
with HTTP/1.1, over a variety of transport and session layers, and with HTTP/2
over TLS. HTTP/3 supports the same semantics over a new transport protocol,
QUIC.
with HTTP/1.1 and HTTP/2. HTTP/1.1 has been used over a variety of transport
and session layers, while HTTP/2 has been used primarily with TLS over TCP.
HTTP/3 supports the same semantics over a new transport protocol, QUIC.

## Prior versions of HTTP

HTTP/1.1 ({{?HTTP11=I-D.ietf-httpbis-messaging}}) uses whitespace-delimited text
fields to convey HTTP messages. While these exchanges are human-readable, using
whitespace for message formatting leads to parsing complexity and excessive
tolerance of variant behavior. Because HTTP/1.x does not include a multiplexing
layer, multiple TCP connections are often used to service requests in parallel.
However, that has a negative impact on congestion control and network
efficiency, since TCP does not share congestion control across multiple
connections.
tolerance of variant behavior.

Because HTTP/1.1 does not include a multiplexing layer, multiple TCP connections
are often used to service requests in parallel. However, that has a negative
impact on congestion control and network efficiency, since TCP does not share
congestion control across multiple connections.

HTTP/2 ({{?HTTP2=RFC7540}}) introduced a binary framing and multiplexing layer
to improve latency without modifying the transport layer. However, because the
Expand Down Expand Up @@ -1024,6 +1025,10 @@ retry some requests. Including the GOAWAY frame in the same packet as the QUIC
CONNECTION_CLOSE frame improves the chances of the frame being received by
clients.

If there are open streams that have not been explicitly closed, they are
implicitly closed when the connection is closed; see Section 10.2 of
{{QUIC-TRANSPORT}}.

## Transport Closure

For various reasons, the QUIC transport could indicate to the application layer
Expand Down