diff --git a/draft-ietf-quic-http.html b/draft-ietf-quic-http.html index f1c9f0a55f..bf59312951 100644 --- a/draft-ietf-quic-http.html +++ b/draft-ietf-quic-http.html @@ -384,7 +384,7 @@ - + @@ -405,10 +405,10 @@ Intended status: Standards Track -October 21, 2019 +October 22, 2019 -Expires: April 23, 2020 +Expires: April 24, 2020 @@ -428,7 +428,7 @@

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

-

This Internet-Draft will expire on April 23, 2020.

+

This Internet-Draft will expire on April 24, 2020.

Copyright Notice

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

@@ -777,10 +777,10 @@

The HEADERS and PUSH_PROMISE frames might reference updates to the QPACK dynamic table. While these updates are not directly part of the message exchange, they must be received and processed before the message can be consumed. See Section 4.1.1 for more details.

The “chunked” transfer encoding defined in Section 4.1 of [RFC7230] MUST NOT be used.

A response MAY consist of multiple messages when and only when one or more informational responses (1xx; see [RFC7231], Section 6.2) precede a final response to the same request. Non-final responses do not contain a payload body or trailers.

-

If an endpoint receives an invalid sequence of frames on either a request or a push stream, it MUST respond with a connection error of type HTTP_FRAME_UNEXPECTED (Section 8). In particular, a DATA frame before any HEADERS frame, or a HEADERS or DATA frame after the trailing HEADERS frame is considered invalid.

+

If an endpoint receives an invalid sequence of frames on either a request or a push stream, it MUST respond with a connection error of type H3_FRAME_UNEXPECTED (Section 8). In particular, a DATA frame before any HEADERS frame, or a HEADERS or DATA frame after the trailing HEADERS frame is considered invalid.

An HTTP request/response exchange fully consumes a bidirectional QUIC stream. After sending a request, a client MUST close the stream for sending. Unless using the CONNECT method (see Section 4.2), clients MUST NOT make stream closure dependent on receiving a response to their request. After sending a final response, the server MUST close the stream for sending. At this point, the QUIC stream is fully closed.

-

When a stream is closed, this indicates the end of an HTTP message. Because some messages are large or unbounded, endpoints SHOULD begin processing partial HTTP messages once enough of the message has been received to make progress. If a client stream terminates without enough of the HTTP message to provide a complete response, the server SHOULD abort its response with the error code HTTP_REQUEST_INCOMPLETE.

-

A server can send a complete response prior to the client sending an entire request if the response does not depend on any portion of the request that has not been sent and received. When this is true, a server MAY abort reading the request stream with error code HTTP_EARLY_RESPONSE, send a complete response, and cleanly close the sending part of the stream. Clients MUST NOT discard complete responses as a result of having their request terminated abruptly, though clients can always discard responses at their discretion for other reasons.

+

When a stream is closed, this indicates the end of an HTTP message. Because some messages are large or unbounded, endpoints SHOULD begin processing partial HTTP messages once enough of the message has been received to make progress. If a client stream terminates without enough of the HTTP message to provide a complete response, the server SHOULD abort its response with the error code H3_REQUEST_INCOMPLETE.

+

A server can send a complete response prior to the client sending an entire request if the response does not depend on any portion of the request that has not been sent and received. When this is true, a server MAY abort reading the request stream with error code H3_EARLY_RESPONSE, send a complete response, and cleanly close the sending part of the stream. Clients MUST NOT discard complete responses as a result of having their request terminated abruptly, though clients can always discard responses at their discretion for other reasons.

4.1.1. Header Formatting and Compression

@@ -794,16 +794,16 @@

4.1.2. Request Cancellation and Rejection

-

Clients can cancel requests by resetting and aborting the request stream with an error code of HTTP_REQUEST_CANCELLED (Section 8.1). When the client aborts reading a response, it indicates that this response is no longer of interest. Implementations SHOULD cancel requests by abruptly terminating any directions of a stream that are still open.

-

When the server rejects a request without performing any application processing, it SHOULD abort its response stream with the error code HTTP_REQUEST_REJECTED. In this context, “processed” means that some data from the stream was passed to some higher layer of software that might have taken some action as a result. The client can treat requests rejected by the server as though they had never been sent at all, thereby allowing them to be retried later on a new connection. Servers MUST NOT use the HTTP_REQUEST_REJECTED error code for requests which were partially or fully processed. When a server abandons a response after partial processing, it SHOULD abort its response stream with the error code HTTP_REQUEST_CANCELLED.

-

When a client resets a request with the error code HTTP_REQUEST_CANCELLED, a server MAY abruptly terminate the response using the error code HTTP_REQUEST_REJECTED if no processing was performed. Clients MUST NOT use the HTTP_REQUEST_REJECTED error code, except when a server has requested closure of the request stream with this error code.

+

Clients can cancel requests by resetting and aborting the request stream with an error code of H3_REQUEST_CANCELLED (Section 8.1). When the client aborts reading a response, it indicates that this response is no longer of interest. Implementations SHOULD cancel requests by abruptly terminating any directions of a stream that are still open.

+

When the server rejects a request without performing any application processing, it SHOULD abort its response stream with the error code H3_REQUEST_REJECTED. In this context, “processed” means that some data from the stream was passed to some higher layer of software that might have taken some action as a result. The client can treat requests rejected by the server as though they had never been sent at all, thereby allowing them to be retried later on a new connection. Servers MUST NOT use the H3_REQUEST_REJECTED error code for requests which were partially or fully processed. When a server abandons a response after partial processing, it SHOULD abort its response stream with the error code H3_REQUEST_CANCELLED.

+

When a client resets a request with the error code H3_REQUEST_CANCELLED, a server MAY abruptly terminate the response using the error code H3_REQUEST_REJECTED if no processing was performed. Clients MUST NOT use the H3_REQUEST_REJECTED error code, except when a server has requested closure of the request stream with this error code.

If a stream is cancelled after receiving a complete response, the client MAY ignore the cancellation and use the response. However, if a stream is cancelled after receiving a partial response, the response SHOULD NOT be used. Automatically retrying such requests is not possible, unless this is otherwise permitted (e.g., idempotent actions like GET, PUT, or DELETE).

4.1.3. Malformed Requests and Responses

A malformed request or response is one that is an otherwise valid sequence of frames but is invalid due to the presence of extraneous frames, prohibited header fields, the absence of mandatory header fields, or the inclusion of uppercase header field names.

A request or response that includes a payload body can include a content-length header field. A request or response is also malformed if the value of a content-length header field does not equal the sum of the DATA frame payload lengths that form the body. A response that is defined to have no payload, as described in Section 3.3.2 of [RFC7230] can have a non-zero content-length header field, even though no content is included in DATA frames.

-

Intermediaries that process HTTP requests or responses (i.e., any intermediary not acting as a tunnel) MUST NOT forward a malformed request or response. Malformed requests or responses that are detected MUST be treated as a stream error (Section 8) of type HTTP_GENERAL_PROTOCOL_ERROR.

+

Intermediaries that process HTTP requests or responses (i.e., any intermediary not acting as a tunnel) MUST NOT forward a malformed request or response. Malformed requests or responses that are detected MUST be treated as a stream error (Section 8) of type H3_GENERAL_PROTOCOL_ERROR.

For malformed requests, a server MAY send an HTTP response prior to closing or resetting the stream. Clients MUST NOT accept a malformed response. Note that these requirements are intended to protect against several types of common attacks against HTTP; they are deliberately strict because being permissive can expose implementations to these vulnerabilities.

4.2. The CONNECT Method @@ -812,9 +812,9 @@

A CONNECT request in HTTP/3 functions in the same manner as in HTTP/2. The request MUST be formatted as described in [HTTP2], Section 8.3. A CONNECT request that does not conform to these restrictions is malformed (see Section 4.1.3). The request stream MUST NOT be closed at the end of the request.

A proxy that supports CONNECT establishes a TCP connection ([RFC0793]) to the server identified in the “:authority” pseudo-header field. Once this connection is successfully established, the proxy sends a HEADERS frame containing a 2xx series status code to the client, as defined in [RFC7231], Section 4.3.6.

All DATA frames on the stream correspond to data sent or received on the TCP connection. Any DATA frame sent by the client is transmitted by the proxy to the TCP server; data received from the TCP server is packaged into DATA frames by the proxy. Note that the size and number of TCP segments is not guaranteed to map predictably to the size and number of HTTP DATA or QUIC STREAM frames.

-

Once the CONNECT method has completed, only DATA frames are permitted to be sent on the stream. Extension frames MAY be used if specifically permitted by the definition of the extension. Receipt of any other frame type MUST be treated as a connection error of type HTTP_FRAME_UNEXPECTED.

+

Once the CONNECT method has completed, only DATA frames are permitted to be sent on the stream. Extension frames MAY be used if specifically permitted by the definition of the extension. Receipt of any other frame type MUST be treated as a connection error of type H3_FRAME_UNEXPECTED.

The TCP connection can be closed by either peer. When the client ends the request stream (that is, the receive stream at the proxy enters the “Data Recvd” state), the proxy will set the FIN bit on its connection to the TCP server. When the proxy receives a packet with the FIN bit set, it will terminate the send stream that it sends to the client. TCP connections which remain half-closed in a single direction are not invalid, but are often handled poorly by servers, so clients SHOULD NOT close a stream for sending while they still expect to receive data from the target of the CONNECT.

-

A TCP connection error is signaled by abruptly terminating the stream. A proxy treats any error in the TCP connection, which includes receiving a TCP segment with the RST bit set, as a stream error of type HTTP_CONNECT_ERROR (Section 8.1). Correspondingly, if a proxy detects an error with the stream or the QUIC connection, it MUST close the TCP connection. If the underlying TCP implementation permits it, the proxy SHOULD send a TCP segment with the RST bit set.

+

A TCP connection error is signaled by abruptly terminating the stream. A proxy treats any error in the TCP connection, which includes receiving a TCP segment with the RST bit set, as a stream error of type H3_CONNECT_ERROR (Section 8.1). Correspondingly, if a proxy detects an error with the stream or the QUIC connection, it MUST close the TCP connection. If the underlying TCP implementation permits it, the proxy SHOULD send a TCP segment with the RST bit set.

4.3. HTTP Upgrade

@@ -824,13 +824,13 @@

Server push is an interaction mode introduced in HTTP/2 [HTTP2] which permits a server to push a request-response exchange to a client in anticipation of the client making the indicated request. This trades off network usage against a potential latency gain. HTTP/3 server push is similar to what is described in HTTP/2 [HTTP2], but uses different mechanisms.

Each server push is identified by a unique Push ID. This Push ID is used in a single PUSH_PROMISE frame (see Section 7.2.5) which carries the request headers, possibly included in one or more DUPLICATE_PUSH frames (see Section 7.2.8), then included with the push stream which ultimately fulfills those promises.

-

Server push is only enabled on a connection when a client sends a MAX_PUSH_ID frame (see Section 7.2.7). A server cannot use server push until it receives a MAX_PUSH_ID frame. A client sends additional MAX_PUSH_ID frames to control the number of pushes that a server can promise. A server SHOULD use Push IDs sequentially, starting at 0. A client MUST treat receipt of a push stream with a Push ID that is greater than the maximum Push ID as a connection error of type HTTP_ID_ERROR.

+

Server push is only enabled on a connection when a client sends a MAX_PUSH_ID frame (see Section 7.2.7). A server cannot use server push until it receives a MAX_PUSH_ID frame. A client sends additional MAX_PUSH_ID frames to control the number of pushes that a server can promise. A server SHOULD use Push IDs sequentially, starting at 0. A client MUST treat receipt of a push stream with a Push ID that is greater than the maximum Push ID as a connection error of type H3_ID_ERROR.

The header of the request message is carried by a PUSH_PROMISE frame (see Section 7.2.5) on the request stream which generated the push. This allows the server push to be associated with a client request. Promised requests MUST conform to the requirements in Section 8.2 of [HTTP2].

The same server push can be associated with additional client requests using a DUPLICATE_PUSH frame (see Section 7.2.8).

Ordering of a PUSH_PROMISE or DUPLICATE_PUSH in relation to certain parts of the response is important. The server SHOULD send PUSH_PROMISE or DUPLICATE_PUSH frames prior to sending HEADERS or DATA frames that reference the promised responses. This reduces the chance that a client requests a resource that will be pushed by the server.

When a server later fulfills a promise, the server push response is conveyed on a push stream (see Section 6.2.2). The push stream identifies the Push ID of the promise that it fulfills, then contains a response to the promised request using the same format described for responses in Section 4.1.

Due to reordering, DUPLICATE_PUSH frames or push stream data can arrive before the corresponding PUSH_PROMISE frame. When a client receives a DUPLICATE_PUSH frame for an as-yet-unknown Push ID, the request headers of the push are not immediately available. The client can either delay generating new requests for content referenced following the DUPLICATE_PUSH frame until the request headers become available, or can initiate requests for discovered resources and cancel the requests if the requested resource is already being pushed. When a client receives a new push stream with an as-yet-unknown Push ID, both the associated client request and the pushed request headers are unknown. The client can buffer the stream data in expectation of the matching PUSH_PROMISE. The client can use stream flow control (see section 4.1 of [QUIC-TRANSPORT]) to limit the amount of data a server may commit to the pushed stream.

-

If a promised server push is not needed by the client, the client SHOULD send a CANCEL_PUSH frame. If the push stream is already open or opens after sending the CANCEL_PUSH frame, the client can abort reading the stream with an error code of HTTP_REQUEST_CANCELLED. This asks the server not to transfer additional data and indicates that it will be discarded upon receipt.

+

If a promised server push is not needed by the client, the client SHOULD send a CANCEL_PUSH frame. If the push stream is already open or opens after sending the CANCEL_PUSH frame, the client can abort reading the stream with an error code of H3_REQUEST_CANCELLED. This asks the server not to transfer additional data and indicates that it will be discarded upon receipt.

5. Connection Closure

@@ -850,7 +850,7 @@

Requests on Stream IDs less than the Stream ID in the GOAWAY frame might have been processed; their status cannot be known until a response is received, the stream is reset individually, or the connection terminates. Servers MAY reject individual requests on streams below the indicated ID if these requests were not processed.

Servers SHOULD send a GOAWAY frame when the closing of a connection is known in advance, even if the advance notice is small, so that the remote peer can know whether a request has been partially processed or not. For example, if an HTTP client sends a POST at the same time that a server closes a QUIC connection, the client cannot know if the server started to process that POST request if the server does not send a GOAWAY frame to indicate what streams it might have acted on.

A client that is unable to retry requests loses all requests that are in flight when the server closes the connection. A server MAY send multiple GOAWAY frames indicating different stream IDs, but MUST NOT increase the value they send in the last Stream ID, since clients might already have retried unprocessed requests on another connection. A server that is attempting to gracefully shut down a connection SHOULD send an initial GOAWAY frame with the last Stream ID set to the maximum value allowed by QUIC’s MAX_STREAMS and SHOULD NOT increase the MAX_STREAMS limit thereafter. This signals to the client that a shutdown is imminent and that initiating further requests is prohibited. After allowing time for any in-flight requests (at least one round-trip time), the server MAY send another GOAWAY frame with an updated last Stream ID. This ensures that a connection can be cleanly shut down without losing requests.

-

Once all accepted requests have been processed, the server can permit the connection to become idle, or MAY initiate an immediate closure of the connection. An endpoint that completes a graceful shutdown SHOULD use the HTTP_NO_ERROR code when closing the connection.

+

Once all accepted requests have been processed, the server can permit the connection to become idle, or MAY initiate an immediate closure of the connection. An endpoint that completes a graceful shutdown SHOULD use the H3_NO_ERROR code when closing the connection.

If a client has consumed all available bidirectional stream IDs with requests, the server need not send a GOAWAY frame, since the client is unable to make further requests.

5.3. Immediate Application Closure @@ -872,7 +872,7 @@

6.1. Bidirectional Streams

All client-initiated bidirectional streams are used for HTTP requests and responses. A bidirectional stream ensures that the response can be readily correlated with the request. This means that the client’s first request occurs on QUIC stream 0, with subsequent requests on stream 4, 8, and so on. In order to permit these streams to open, an HTTP/3 server SHOULD configure non-zero minimum values for the number of permitted streams and the initial stream flow control window. It is RECOMMENDED that at least 100 requests be permitted at a time, so as to not unnecessarily limit parallelism.

-

HTTP/3 does not use server-initiated bidirectional streams, though an extension could define a use for these streams. Clients MUST treat receipt of a server-initiated bidirectional stream as a connection error of type HTTP_STREAM_CREATION_ERROR unless such an extension has been negotiated.

+

HTTP/3 does not use server-initiated bidirectional streams, though an extension could define a use for these streams. Clients MUST treat receipt of a server-initiated bidirectional stream as a connection error of type H3_STREAM_CREATION_ERROR unless such an extension has been negotiated.

6.2. Unidirectional Streams

@@ -890,21 +890,21 @@

Some stream types are reserved (Section 6.2.3). Two stream types are defined in this document: control streams (Section 6.2.1) and push streams (Section 6.2.2). [QPACK] defines two additional stream types. Other stream types can be defined by extensions to HTTP/3; see Section 9 for more details.

The performance of HTTP/3 connections in the early phase of their lifetime is sensitive to the creation and exchange of data on unidirectional streams. Endpoints that excessively restrict the number of streams or the flow control window of these streams will increase the chance that the remote peer reaches the limit early and becomes blocked. In particular, implementations should consider that remote peers may wish to exercise reserved stream behavior (Section 6.2.3) with some of the unidirectional streams they are permitted to use. To avoid blocking, the transport parameters sent by both clients and servers MUST allow the peer to create at least one unidirectional stream for the HTTP control stream plus the number of unidirectional streams required by mandatory extensions (three being the minimum number required for the base HTTP/3 protocol and QPACK), and SHOULD provide at least 1,024 bytes of flow control credit to each stream.

Note that an endpoint is not required to grant additional credits to create more unidirectional streams if its peer consumes all the initial credits before creating the critical unidirectional streams. Endpoints SHOULD create the HTTP control stream as well as the unidirectional streams required by mandatory extensions (such as the QPACK encoder and decoder streams) first, and then create additional streams as allowed by their peer.

-

If the stream header indicates a stream type which is not supported by the recipient, the remainder of the stream cannot be consumed as the semantics are unknown. Recipients of unknown stream types MAY abort reading of the stream with an error code of HTTP_STREAM_CREATION_ERROR, but MUST NOT consider such streams to be a connection error of any kind.

+

If the stream header indicates a stream type which is not supported by the recipient, the remainder of the stream cannot be consumed as the semantics are unknown. Recipients of unknown stream types MAY abort reading of the stream with an error code of H3_STREAM_CREATION_ERROR, but MUST NOT consider such streams to be a connection error of any kind.

Implementations MAY send stream types before knowing whether the peer supports them. However, stream types which could modify the state or semantics of existing protocol components, including QPACK or other extensions, MUST NOT be sent until the peer is known to support them.

A sender can close or reset a unidirectional stream unless otherwise specified. A receiver MUST tolerate unidirectional streams being closed or reset prior to the reception of the unidirectional stream header.

6.2.1. Control Streams

A control stream is indicated by a stream type of 0x00. Data on this stream consists of HTTP/3 frames, as defined in Section 7.2.

-

Each side MUST initiate a single control stream at the beginning of the connection and send its SETTINGS frame as the first frame on this stream. If the first frame of the control stream is any other frame type, this MUST be treated as a connection error of type HTTP_MISSING_SETTINGS. Only one control stream per peer is permitted; receipt of a second stream which claims to be a control stream MUST be treated as a connection error of type HTTP_STREAM_CREATION_ERROR. The sender MUST NOT close the control stream, and the receiver MUST NOT request that the sender close the control stream. If either control stream is closed at any point, this MUST be treated as a connection error of type HTTP_CLOSED_CRITICAL_STREAM.

+

Each side MUST initiate a single control stream at the beginning of the connection and send its SETTINGS frame as the first frame on this stream. If the first frame of the control stream is any other frame type, this MUST be treated as a connection error of type H3_MISSING_SETTINGS. Only one control stream per peer is permitted; receipt of a second stream which claims to be a control stream MUST be treated as a connection error of type H3_STREAM_CREATION_ERROR. The sender MUST NOT close the control stream, and the receiver MUST NOT request that the sender close the control stream. If either control stream is closed at any point, this MUST be treated as a connection error of type H3_CLOSED_CRITICAL_STREAM.

A pair of unidirectional streams is used rather than a single bidirectional stream. This allows either peer to send data as soon as it is able. Depending on whether 0-RTT is enabled on the connection, either client or server might be able to send stream data first after the cryptographic handshake completes.

6.2.2. Push Streams

Server push is an optional feature introduced in HTTP/2 that allows a server to initiate a response before a request has been made. See Section 4.4 for more details.

A push stream is indicated by a stream type of 0x01, followed by the Push ID of the promise that it fulfills, encoded as a variable-length integer. The remaining data on this stream consists of HTTP/3 frames, as defined in Section 7.2, and fulfills a promised server push by zero or more non-final HTTP responses followed by a single final HTTP response, as defined in Section 4.1. Server push and Push IDs are described in Section 4.4.

-

Only servers can push; if a server receives a client-initiated push stream, this MUST be treated as a connection error of type HTTP_STREAM_CREATION_ERROR.

+

Only servers can push; if a server receives a client-initiated push stream, this MUST be treated as a connection error of type H3_STREAM_CREATION_ERROR.

@@ -917,7 +917,7 @@ 

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 2: Push Stream Header

-

Each Push ID MUST only be used once in a push stream header. If a push stream header includes a Push ID that was used in another push stream header, the client MUST treat this as a connection error of type HTTP_ID_ERROR.

+

Each Push ID MUST only be used once in a push stream header. If a push stream header includes a Push ID that was used in another push stream header, the client MUST treat this as a connection error of type H3_ID_ERROR.

6.2.3. Reserved Stream Types

@@ -1035,8 +1035,8 @@

Frame Payload:
A payload, the semantics of which are determined by the Type field.
-

Each frame’s payload MUST contain exactly the fields identified in its description. A frame payload that contains additional bytes after the identified fields or a frame payload that terminates before the end of the identified fields MUST be treated as a connection error of type HTTP_FRAME_ERROR.

-

When a stream terminates cleanly, if the last frame on the stream was truncated, this MUST be treated as a connection error (Section 8) of type HTTP_FRAME_ERROR. Streams which terminate abruptly may be reset at any point in a frame.

+

Each frame’s payload MUST contain exactly the fields identified in its description. A frame payload that contains additional bytes after the identified fields or a frame payload that terminates before the end of the identified fields MUST be treated as a connection error of type H3_FRAME_ERROR.

+

When a stream terminates cleanly, if the last frame on the stream was truncated, this MUST be treated as a connection error (Section 8) of type H3_FRAME_ERROR. Streams which terminate abruptly may be reset at any point in a frame.

7.2. Frame Definitions

@@ -1044,7 +1044,7 @@

7.2.1. DATA

DATA frames (type=0x0) convey arbitrary, variable-length sequences of bytes associated with an HTTP request or response payload.

-

DATA frames MUST be associated with an HTTP request or response. If a DATA frame is received on a control stream, the recipient MUST respond with a connection error (Section 8) of type HTTP_FRAME_UNEXPECTED.

+

DATA frames MUST be associated with an HTTP request or response. If a DATA frame is received on a control stream, the recipient MUST respond with a connection error (Section 8) of type H3_FRAME_UNEXPECTED.

@@ -1069,7 +1069,7 @@ 

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 5: HEADERS frame payload

-

HEADERS frames can only be sent on request / push streams. If a HEADERS frame is received on a control stream, the recipient MUST respond with a connection error (Section 8) of type HTTP_FRAME_UNEXPECTED.

+

HEADERS frames can only be sent on request / push streams. If a HEADERS frame is received on a control stream, the recipient MUST respond with a connection error (Section 8) of type H3_FRAME_UNEXPECTED.

7.2.3. CANCEL_PUSH

@@ -1077,7 +1077,7 @@

When a client sends CANCEL_PUSH, it is indicating that it does not wish to receive the promised resource. The server SHOULD abort sending the resource, but the mechanism to do so depends on the state of the corresponding push stream. If the server has not yet created a push stream, it does not create one. If the push stream is open, the server SHOULD abruptly terminate that stream. If the push stream has already ended, the server MAY still abruptly terminate the stream or MAY take no action.

When a server sends CANCEL_PUSH, it is indicating that it will not be fulfilling a promise and has not created a push stream. The client should not expect the corresponding promise to be fulfilled.

Sending CANCEL_PUSH has no direct effect on the state of existing push streams. A server SHOULD NOT send a CANCEL_PUSH when it has already created a corresponding push stream, and a client SHOULD NOT send a CANCEL_PUSH when it has already received a corresponding push stream.

-

A CANCEL_PUSH frame is sent on the control stream. Receiving a CANCEL_PUSH frame on a stream other than the control stream MUST be treated as a connection error of type HTTP_FRAME_UNEXPECTED.

+

A CANCEL_PUSH frame is sent on the control stream. Receiving a CANCEL_PUSH frame on a stream other than the control stream MUST be treated as a connection error of type H3_FRAME_UNEXPECTED.

@@ -1088,17 +1088,17 @@ 

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 6: CANCEL_PUSH frame payload

-

The CANCEL_PUSH frame carries a Push ID encoded as a variable-length integer. The Push ID identifies the server push that is being cancelled (see Section 7.2.5). If a CANCEL_PUSH frame is received which references a Push ID greater than currently allowed on the connection, this MUST be treated as a connection error of type HTTP_ID_ERROR.

-

If the client receives a CANCEL_PUSH frame, that frame might identify a Push ID that has not yet been mentioned by a PUSH_PROMISE frame due to reordering. If a server receives a CANCEL_PUSH frame for a Push ID that has not yet been mentioned by a PUSH_PROMISE frame, this MUST be treated as a connection error of type HTTP_ID_ERROR.

+

The CANCEL_PUSH frame carries a Push ID encoded as a variable-length integer. The Push ID identifies the server push that is being cancelled (see Section 7.2.5). If a CANCEL_PUSH frame is received which references a Push ID greater than currently allowed on the connection, this MUST be treated as a connection error of type H3_ID_ERROR.

+

If the client receives a CANCEL_PUSH frame, that frame might identify a Push ID that has not yet been mentioned by a PUSH_PROMISE frame due to reordering. If a server receives a CANCEL_PUSH frame for a Push ID that has not yet been mentioned by a PUSH_PROMISE frame, this MUST be treated as a connection error of type H3_ID_ERROR.

7.2.4. SETTINGS

The SETTINGS frame (type=0x4) conveys configuration parameters that affect how endpoints communicate, such as preferences and constraints on peer behavior. Individually, a SETTINGS parameter can also be referred to as a “setting”; the identifier and value of each setting parameter can be referred to as a “setting identifier” and a “setting value”.

-

SETTINGS frames always apply to a connection, never a single stream. A SETTINGS frame MUST be sent as the first frame of each control stream (see Section 6.2.1) by each peer, and MUST NOT be sent subsequently. If an endpoint receives a second SETTINGS frame on the control stream, the endpoint MUST respond with a connection error of type HTTP_FRAME_UNEXPECTED.

-

SETTINGS frames MUST NOT be sent on any stream other than the control stream. If an endpoint receives a SETTINGS frame on a different stream, the endpoint MUST respond with a connection error of type HTTP_FRAME_UNEXPECTED.

+

SETTINGS frames always apply to a connection, never a single stream. A SETTINGS frame MUST be sent as the first frame of each control stream (see Section 6.2.1) by each peer, and MUST NOT be sent subsequently. If an endpoint receives a second SETTINGS frame on the control stream, the endpoint MUST respond with a connection error of type H3_FRAME_UNEXPECTED.

+

SETTINGS frames MUST NOT be sent on any stream other than the control stream. If an endpoint receives a SETTINGS frame on a different stream, the endpoint MUST respond with a connection error of type H3_FRAME_UNEXPECTED.

SETTINGS parameters are not negotiated; they describe characteristics of the sending peer, which can be used by the receiving peer. However, a negotiation can be implied by the use of SETTINGS - each peer uses SETTINGS to advertise a set of supported values. The definition of the setting would describe how each peer combines the two sets to conclude which choice will be used. SETTINGS does not provide a mechanism to identify when the choice takes effect.

Different values for the same parameter can be advertised by each peer. For example, a client might be willing to consume a very large response header, while servers are more cautious about request size.

-

The same setting identifier MUST NOT occur more than once in the SETTINGS frame. A receiver MAY treat the presence of duplicate setting identifiers as a connection error of type HTTP_SETTINGS_ERROR.

+

The same setting identifier MUST NOT occur more than once in the SETTINGS frame. A receiver MAY treat the presence of duplicate setting identifiers as a connection error of type H3_SETTINGS_ERROR.

The payload of a SETTINGS frame consists of zero or more parameters. Each parameter consists of a setting identifier and a value, both encoded as QUIC variable-length integers.

@@ -1136,7 +1136,7 @@

For clients using a 1-RTT QUIC connection, the initial value of each server setting is the default value. 1-RTT keys will always become available prior to SETTINGS arriving, even if the server sends SETTINGS immediately. Clients SHOULD NOT wait indefinitely for SETTINGS to arrive before sending requests, but SHOULD process received datagrams in order to increase the likelihood of processing SETTINGS before sending the first request.

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 connection where resumption information was provided, but 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.

A server can remember the settings that it advertised, or store an integrity-protected copy of the values in the ticket and recover the information when accepting 0-RTT data. A server uses the HTTP/3 settings values in determining whether to accept 0-RTT data. If the server cannot determine that the settings remembered by a client are compatible with its current settings, it MUST NOT accept 0-RTT data. Remembered settings are compatible if a client complying with those settings would not violate the server’s current settings.

-

A server MAY accept 0-RTT and subsequently provide different settings in its SETTINGS frame. If 0-RTT data is accepted by the server, its SETTINGS frame MUST NOT reduce any limits or alter any values that might be violated by the client with its 0-RTT data. The server MUST include all settings which differ from their default values. If a server accepts 0-RTT, but then sends a SETTINGS frame which reduces a setting the client understands or omits a value that was previously specified to have a non-default value, this MUST be treated as a connection error of type HTTP_SETTINGS_ERROR.

+

A server MAY accept 0-RTT and subsequently provide different settings in its SETTINGS frame. If 0-RTT data is accepted by the server, its SETTINGS frame MUST NOT reduce any limits or alter any values that might be violated by the client with its 0-RTT data. The server MUST include all settings which differ from their default values. If a server accepts 0-RTT, but then sends a SETTINGS frame which reduces a setting the client understands or omits a value that was previously specified to have a non-default value, this MUST be treated as a connection error of type H3_SETTINGS_ERROR.

7.2.5. PUSH_PROMISE

@@ -1162,10 +1162,10 @@

Header Block:
QPACK-compressed request header fields for the promised response. See [QPACK] for more details.
-

A server MUST NOT use a Push ID that is larger than the client has provided in a MAX_PUSH_ID frame (Section 7.2.7). A client MUST treat receipt of a PUSH_PROMISE frame that contains a larger Push ID than the client has advertised as a connection error of HTTP_ID_ERROR.

-

A server MUST NOT use the same Push ID in multiple PUSH_PROMISE frames. A client MUST treat receipt of a Push ID which has already been promised as a connection error of type HTTP_ID_ERROR.

-

If a PUSH_PROMISE frame is received on the control stream, the client MUST respond with a connection error (Section 8) of type HTTP_FRAME_UNEXPECTED.

-

A client MUST NOT send a PUSH_PROMISE frame. A server MUST treat the receipt of a PUSH_PROMISE frame as a connection error of type HTTP_FRAME_UNEXPECTED.

+

A server MUST NOT use a Push ID that is larger than the client has provided in a MAX_PUSH_ID frame (Section 7.2.7). A client MUST treat receipt of a PUSH_PROMISE frame that contains a larger Push ID than the client has advertised as a connection error of H3_ID_ERROR.

+

A server MUST NOT use the same Push ID in multiple PUSH_PROMISE frames. A client MUST treat receipt of a Push ID which has already been promised as a connection error of type H3_ID_ERROR.

+

If a PUSH_PROMISE frame is received on the control stream, the client MUST respond with a connection error (Section 8) of type H3_FRAME_UNEXPECTED.

+

A client MUST NOT send a PUSH_PROMISE frame. A server MUST treat the receipt of a PUSH_PROMISE frame as a connection error of type H3_FRAME_UNEXPECTED.

See Section 4.4 for a description of the overall server push mechanism.

7.2.6. GOAWAY @@ -1181,16 +1181,16 @@

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 9: GOAWAY frame payload

-

The GOAWAY frame is always sent on the control stream. It carries a QUIC Stream ID for a client-initiated bidirectional stream encoded as a variable-length integer. A client MUST treat receipt of a GOAWAY frame containing a Stream ID of any other type as a connection error of type HTTP_ID_ERROR.

-

Clients do not need to send GOAWAY to initiate a graceful shutdown; they simply stop making new requests. A server MUST treat receipt of a GOAWAY frame on any stream as a connection error (Section 8) of type HTTP_FRAME_UNEXPECTED.

-

The GOAWAY frame applies to the connection, not a specific stream. A client MUST treat a GOAWAY frame on a stream other than the control stream as a connection error (Section 8) of type HTTP_FRAME_UNEXPECTED.

+

The GOAWAY frame is always sent on the control stream. It carries a QUIC Stream ID for a client-initiated bidirectional stream encoded as a variable-length integer. A client MUST treat receipt of a GOAWAY frame containing a Stream ID of any other type as a connection error of type H3_ID_ERROR.

+

Clients do not need to send GOAWAY to initiate a graceful shutdown; they simply stop making new requests. A server MUST treat receipt of a GOAWAY frame on any stream as a connection error (Section 8) of type H3_FRAME_UNEXPECTED.

+

The GOAWAY frame applies to the connection, not a specific stream. A client MUST treat a GOAWAY frame on a stream other than the control stream as a connection error (Section 8) of type H3_FRAME_UNEXPECTED.

See Section 5.2 for more information on the use of the GOAWAY frame.

7.2.7. MAX_PUSH_ID

The MAX_PUSH_ID frame (type=0xD) is used by clients to control the number of server pushes that the server can initiate. This sets the maximum value for a Push ID that the server can use in PUSH_PROMISE and CANCEL_PUSH frames. Consequently, this also limits the number of push streams that the server can initiate in addition to the limit maintained by the QUIC transport.

-

The MAX_PUSH_ID frame is always sent on the control stream. Receipt of a MAX_PUSH_ID frame on any other stream MUST be treated as a connection error of type HTTP_FRAME_UNEXPECTED.

-

A server MUST NOT send a MAX_PUSH_ID frame. A client MUST treat the receipt of a MAX_PUSH_ID frame as a connection error of type HTTP_FRAME_UNEXPECTED.

+

The MAX_PUSH_ID frame is always sent on the control stream. Receipt of a MAX_PUSH_ID frame on any other stream MUST be treated as a connection error of type H3_FRAME_UNEXPECTED.

+

A server MUST NOT send a MAX_PUSH_ID frame. A client MUST treat the receipt of a MAX_PUSH_ID frame as a connection error of type H3_FRAME_UNEXPECTED.

The maximum Push ID is unset when a connection is created, meaning that a server cannot push until it receives a MAX_PUSH_ID frame. A client that wishes to manage the number of promised server pushes can increase the maximum Push ID by sending MAX_PUSH_ID frames as the server fulfills or cancels server pushes.

@@ -1202,13 +1202,13 @@

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 10: MAX_PUSH_ID frame payload

-

The MAX_PUSH_ID frame carries a single variable-length integer that identifies the maximum value for a Push ID that the server can use (see Section 7.2.5). A MAX_PUSH_ID frame cannot reduce the maximum Push ID; receipt of a MAX_PUSH_ID that contains a smaller value than previously received MUST be treated as a connection error of type HTTP_ID_ERROR.

+

The MAX_PUSH_ID frame carries a single variable-length integer that identifies the maximum value for a Push ID that the server can use (see Section 7.2.5). A MAX_PUSH_ID frame cannot reduce the maximum Push ID; receipt of a MAX_PUSH_ID that contains a smaller value than previously received MUST be treated as a connection error of type H3_ID_ERROR.

7.2.8. DUPLICATE_PUSH

The DUPLICATE_PUSH frame (type=0xE) is used by servers to indicate that an existing pushed resource is related to multiple client requests.

-

The DUPLICATE_PUSH frame is always sent on a request stream. Receipt of a DUPLICATE_PUSH frame on any other stream MUST be treated as a connection error of type HTTP_FRAME_UNEXPECTED.

-

A client MUST NOT send a DUPLICATE_PUSH frame. A server MUST treat the receipt of a DUPLICATE_PUSH frame as a connection error of type HTTP_FRAME_UNEXPECTED.

+

The DUPLICATE_PUSH frame is always sent on a request stream. Receipt of a DUPLICATE_PUSH frame on any other stream MUST be treated as a connection error of type H3_FRAME_UNEXPECTED.

+

A client MUST NOT send a DUPLICATE_PUSH frame. A server MUST treat the receipt of a DUPLICATE_PUSH frame as a connection error of type H3_FRAME_UNEXPECTED.

@@ -1219,7 +1219,7 @@ 

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 11: DUPLICATE_PUSH frame payload

-

The DUPLICATE_PUSH frame carries a single variable-length integer that identifies the Push ID of a resource that the server has previously promised (see Section 7.2.5), though that promise might not be received before this frame. A server MUST NOT use a Push ID that is larger than the client has provided in a MAX_PUSH_ID frame (Section 7.2.7). A client MUST treat receipt of a DUPLICATE_PUSH that contains a larger Push ID than the client has advertised as a connection error of type HTTP_ID_ERROR.

+

The DUPLICATE_PUSH frame carries a single variable-length integer that identifies the Push ID of a resource that the server has previously promised (see Section 7.2.5), though that promise might not be received before this frame. A server MUST NOT use a Push ID that is larger than the client has provided in a MAX_PUSH_ID frame (Section 7.2.7). A client MUST treat receipt of a DUPLICATE_PUSH that contains a larger Push ID than the client has advertised as a connection error of type H3_ID_ERROR.

This frame allows the server to use the same server push in response to multiple concurrent requests. Referencing the same server push ensures that a promise can be made in relation to every response in which server push might be needed without duplicating request headers or pushed responses.

Allowing duplicate references to the same Push ID is primarily to reduce duplication caused by concurrent requests. A server SHOULD avoid reusing a Push ID over a long period. Clients are likely to consume server push responses and not retain them for reuse over time. Clients that see a DUPLICATE_PUSH that uses a Push ID that they have since consumed and discarded are forced to ignore the DUPLICATE_PUSH.

@@ -1227,7 +1227,7 @@

Frame types of the format 0x1f * N + 0x21 for integer values of N are reserved to exercise the requirement that unknown types be ignored (Section 9). These frames have no semantics, and can be sent on any open stream when application-layer padding is desired. They MAY also be sent on connections where no data is currently being transferred. Endpoints MUST NOT consider these frames to have any meaning upon receipt.

The payload and length of the frames are selected in any manner the implementation chooses.

-

Frame types which were used in HTTP/2 where there is no corresponding HTTP/3 frame have also been reserved (Section 11.2). These frame types MUST NOT be sent, and receipt MAY be treated as an error of type HTTP_FRAME_UNEXPECTED.

+

Frame types which were used in HTTP/2 where there is no corresponding HTTP/3 frame have also been reserved (Section 11.2). These frame types MUST NOT be sent, and receipt MAY be treated as an error of type H3_FRAME_UNEXPECTED.

8. Error Handling

@@ -1241,39 +1241,39 @@

-
HTTP_NO_ERROR (0x100):
+
H3_NO_ERROR (0x100):
No error. This is used when the connection or stream needs to be closed, but there is no error to signal.
-
HTTP_GENERAL_PROTOCOL_ERROR (0x101):
+
H3_GENERAL_PROTOCOL_ERROR (0x101):
Peer violated protocol requirements in a way which doesn’t match a more specific error code, or endpoint declines to use the more specific error code.
-
HTTP_INTERNAL_ERROR (0x102):
+
H3_INTERNAL_ERROR (0x102):
An internal error has occurred in the HTTP stack.
-
HTTP_STREAM_CREATION_ERROR (0x103):
+
H3_STREAM_CREATION_ERROR (0x103):
The endpoint detected that its peer created a stream that it will not accept.
-
HTTP_CLOSED_CRITICAL_STREAM (0x104):
+
H3_CLOSED_CRITICAL_STREAM (0x104):
A stream required by the connection was closed or reset.
-
HTTP_FRAME_UNEXPECTED (0x105):
+
H3_FRAME_UNEXPECTED (0x105):
A frame was received which was not permitted in the current state or on the current stream.
-
HTTP_FRAME_ERROR (0x106):
+
H3_FRAME_ERROR (0x106):
A frame that fails to satisfy layout requirements or with an invalid size was received.
-
HTTP_EXCESSIVE_LOAD (0x107):
+
H3_EXCESSIVE_LOAD (0x107):
The endpoint detected that its peer is exhibiting a behavior that might be generating excessive load.
-
HTTP_ID_ERROR (0x108):
+
H3_ID_ERROR (0x108):
A Stream ID or Push ID was used incorrectly, such as exceeding a limit, reducing a limit, or being reused.
-
HTTP_SETTINGS_ERROR (0x109):
+
H3_SETTINGS_ERROR (0x109):
An endpoint detected an error in the payload of a SETTINGS frame.
-
HTTP_MISSING_SETTINGS (0x10A):
+
H3_MISSING_SETTINGS (0x10A):
No SETTINGS frame was received at the beginning of the control stream.
-
HTTP_REQUEST_REJECTED (0x10B):
+
H3_REQUEST_REJECTED (0x10B):
A server rejected a request without performing any application processing.
-
HTTP_REQUEST_CANCELLED (0x10C):
+
H3_REQUEST_CANCELLED (0x10C):
The request or its response (including pushed response) is cancelled.
-
HTTP_REQUEST_INCOMPLETE (0x10D):
+
H3_REQUEST_INCOMPLETE (0x10D):
The client’s stream terminated without containing a fully-formed request.
-
HTTP_EARLY_RESPONSE (0x10E):
+
H3_EARLY_RESPONSE (0x10E):
The remainder of the client’s request is not needed to produce a response. For use in STOP_SENDING only.
-
HTTP_CONNECT_ERROR (0x10F):
+
H3_CONNECT_ERROR (0x10F):
The connection established in response to a CONNECT request was reset or abnormally closed.
-
HTTP_VERSION_FALLBACK (0x110):
+
H3_VERSION_FALLBACK (0x110):
The requested operation cannot be served over HTTP/3. The peer should retry over HTTP/1.1.

@@ -1499,103 +1499,103 @@

-HTTP_NO_ERROR +H3_NO_ERROR 0x0100 No error Section 8.1 -HTTP_GENERAL_PROTOCOL_ERROR +H3_GENERAL_PROTOCOL_ERROR 0x0101 General protocol error Section 8.1 -HTTP_INTERNAL_ERROR +H3_INTERNAL_ERROR 0x0102 Internal error Section 8.1 -HTTP_STREAM_CREATION_ERROR +H3_STREAM_CREATION_ERROR 0x0103 Stream creation error Section 8.1 -HTTP_CLOSED_CRITICAL_STREAM +H3_CLOSED_CRITICAL_STREAM 0x0104 Critical stream was closed Section 8.1 -HTTP_FRAME_UNEXPECTED +H3_FRAME_UNEXPECTED 0x0105 Frame not permitted in the current state Section 8.1 -HTTP_FRAME_ERROR +H3_FRAME_ERROR 0x0106 Frame violated layout or size rules Section 8.1 -HTTP_EXCESSIVE_LOAD +H3_EXCESSIVE_LOAD 0x0107 Peer generating excessive load Section 8.1 -HTTP_ID_ERROR +H3_ID_ERROR 0x0108 An identifier was used incorrectly Section 8.1 -HTTP_SETTINGS_ERROR +H3_SETTINGS_ERROR 0x0109 SETTINGS frame contained invalid values Section 8.1 -HTTP_MISSING_SETTINGS +H3_MISSING_SETTINGS 0x010A No SETTINGS frame received Section 8.1 -HTTP_REQUEST_REJECTED +H3_REQUEST_REJECTED 0x010B Request not processed Section 8.1 -HTTP_REQUEST_CANCELLED +H3_REQUEST_CANCELLED 0x010C Data no longer needed Section 8.1 -HTTP_REQUEST_INCOMPLETE +H3_REQUEST_INCOMPLETE 0x010D Stream terminated early Section 8.1 -HTTP_EARLY_RESPONSE +H3_EARLY_RESPONSE 0x010E Remainder of request not needed Section 8.1 -HTTP_CONNECT_ERROR +H3_CONNECT_ERROR 0x010F TCP reset or error on CONNECT request Section 8.1 -HTTP_VERSION_FALLBACK +H3_VERSION_FALLBACK 0x0110 Retry over HTTP/1.1 Section 8.1 @@ -1849,11 +1849,11 @@

NO_ERROR (0x0):
-
HTTP_NO_ERROR in Section 8.1.
+
H3_NO_ERROR in Section 8.1.
PROTOCOL_ERROR (0x1):
-
This is mapped to HTTP_GENERAL_PROTOCOL_ERROR except in cases where more specific error codes have been defined. This includes HTTP_FRAME_UNEXPECTED and HTTP_CLOSED_CRITICAL_STREAM defined in Section 8.1.
+
This is mapped to H3_GENERAL_PROTOCOL_ERROR except in cases where more specific error codes have been defined. This includes H3_FRAME_UNEXPECTED and H3_CLOSED_CRITICAL_STREAM defined in Section 8.1.
INTERNAL_ERROR (0x2):
-
HTTP_INTERNAL_ERROR in Section 8.1.
+
H3_INTERNAL_ERROR in Section 8.1.
FLOW_CONTROL_ERROR (0x3):
Not applicable, since QUIC handles flow control.
SETTINGS_TIMEOUT (0x4):
@@ -1861,21 +1861,21 @@

STREAM_CLOSED (0x5):
Not applicable, since QUIC handles stream management.
FRAME_SIZE_ERROR (0x6):
-
HTTP_FRAME_ERROR error code defined in Section 8.1.
+
H3_FRAME_ERROR error code defined in Section 8.1.
REFUSED_STREAM (0x7):
-
HTTP_REQUEST_REJECTED (in Section 8.1) is used to indicate that a request was not processed. Otherwise, not applicable because QUIC handles stream management.
+
H3_REQUEST_REJECTED (in Section 8.1) is used to indicate that a request was not processed. Otherwise, not applicable because QUIC handles stream management.
CANCEL (0x8):
-
HTTP_REQUEST_CANCELLED in Section 8.1.
+
H3_REQUEST_CANCELLED in Section 8.1.
COMPRESSION_ERROR (0x9):
Multiple error codes are defined in [QPACK].
CONNECT_ERROR (0xa):
-
HTTP_CONNECT_ERROR in Section 8.1.
+
H3_CONNECT_ERROR in Section 8.1.
ENHANCE_YOUR_CALM (0xb):
-
HTTP_EXCESSIVE_LOAD in Section 8.1.
+
H3_EXCESSIVE_LOAD in Section 8.1.
INADEQUATE_SECURITY (0xc):
Not applicable, since QUIC is assumed to provide sufficient security on all connections.
-
HTTP_1_1_REQUIRED (0xd):
-
HTTP_VERSION_FALLBACK in Section 8.1.
+
H3_1_1_REQUIRED (0xd):
+
H3_VERSION_FALLBACK in Section 8.1.

Error codes need to be defined for HTTP/2 and HTTP/3 separately. See Section 11.4.

diff --git a/draft-ietf-quic-http.txt b/draft-ietf-quic-http.txt index 5b4ce5f716..f2b805c23b 100644 --- a/draft-ietf-quic-http.txt +++ b/draft-ietf-quic-http.txt @@ -4,8 +4,8 @@ QUIC M. Bishop, Ed. Internet-Draft Akamai -Intended status: Standards Track October 21, 2019 -Expires: April 23, 2020 +Intended status: Standards Track October 22, 2019 +Expires: April 24, 2020 Hypertext Transfer Protocol Version 3 (HTTP/3) @@ -45,7 +45,7 @@ Status of This Memo time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 23, 2020. + This Internet-Draft will expire on April 24, 2020. @@ -53,7 +53,7 @@ Status of This Memo -Bishop Expires April 23, 2020 [Page 1] +Bishop Expires April 24, 2020 [Page 1] Internet-Draft HTTP/3 October 2019 @@ -109,7 +109,7 @@ Table of Contents -Bishop Expires April 23, 2020 [Page 2] +Bishop Expires April 24, 2020 [Page 2] Internet-Draft HTTP/3 October 2019 @@ -143,15 +143,15 @@ Internet-Draft HTTP/3 October 2019 12.1. Normative References . . . . . . . . . . . . . . . . . . 42 12.2. Informative References . . . . . . . . . . . . . . . . . 44 12.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 44 - Appendix A. Considerations for Transitioning from HTTP/2 . . . . 45 + Appendix A. Considerations for Transitioning from HTTP/2 . . . . 44 A.1. Streams . . . . . . . . . . . . . . . . . . . . . . . . . 45 A.2. HTTP Frame Types . . . . . . . . . . . . . . . . . . . . 45 A.2.1. Prioritization Differences . . . . . . . . . . . . . 46 A.2.2. Header Compression Differences . . . . . . . . . . . 46 A.2.3. Guidance for New Frame Type Definitions . . . . . . . 46 A.2.4. Mapping Between HTTP/2 and HTTP/3 Frame Types . . . . 47 - A.3. HTTP/2 SETTINGS Parameters . . . . . . . . . . . . . . . 48 - A.4. HTTP/2 Error Codes . . . . . . . . . . . . . . . . . . . 49 + A.3. HTTP/2 SETTINGS Parameters . . . . . . . . . . . . . . . 47 + A.4. HTTP/2 Error Codes . . . . . . . . . . . . . . . . . . . 48 Appendix B. Change Log . . . . . . . . . . . . . . . . . . . . . 50 B.1. Since draft-ietf-quic-http-22 . . . . . . . . . . . . . . 50 B.2. Since draft-ietf-quic-http-21 . . . . . . . . . . . . . . 51 @@ -165,7 +165,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 3] +Bishop Expires April 24, 2020 [Page 3] Internet-Draft HTTP/3 October 2019 @@ -221,7 +221,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 4] +Bishop Expires April 24, 2020 [Page 4] Internet-Draft HTTP/3 October 2019 @@ -277,7 +277,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 5] +Bishop Expires April 24, 2020 [Page 5] Internet-Draft HTTP/3 October 2019 @@ -333,7 +333,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 6] +Bishop Expires April 24, 2020 [Page 6] Internet-Draft HTTP/3 October 2019 @@ -389,7 +389,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 7] +Bishop Expires April 24, 2020 [Page 7] Internet-Draft HTTP/3 October 2019 @@ -445,7 +445,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 8] +Bishop Expires April 24, 2020 [Page 8] Internet-Draft HTTP/3 October 2019 @@ -501,7 +501,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 9] +Bishop Expires April 24, 2020 [Page 9] Internet-Draft HTTP/3 October 2019 @@ -557,7 +557,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 10] +Bishop Expires April 24, 2020 [Page 10] Internet-Draft HTTP/3 October 2019 @@ -572,7 +572,7 @@ Internet-Draft HTTP/3 October 2019 If an endpoint receives an invalid sequence of frames on either a request or a push stream, it MUST respond with a connection error of - type HTTP_FRAME_UNEXPECTED (Section 8). In particular, a DATA frame + type H3_FRAME_UNEXPECTED (Section 8). In particular, a DATA frame before any HEADERS frame, or a HEADERS or DATA frame after the trailing HEADERS frame is considered invalid. @@ -589,14 +589,13 @@ Internet-Draft HTTP/3 October 2019 processing partial HTTP messages once enough of the message has been received to make progress. If a client stream terminates without enough of the HTTP message to provide a complete response, the server - SHOULD abort its response with the error code - HTTP_REQUEST_INCOMPLETE. + SHOULD abort its response with the error code H3_REQUEST_INCOMPLETE. A server can send a complete response prior to the client sending an entire request if the response does not depend on any portion of the request that has not been sent and received. When this is true, a server MAY abort reading the request stream with error code - HTTP_EARLY_RESPONSE, send a complete response, and cleanly close the + H3_EARLY_RESPONSE, send a complete response, and cleanly close the sending part of the stream. Clients MUST NOT discard complete responses as a result of having their request terminated abruptly, though clients can always discard responses at their discretion for @@ -609,17 +608,16 @@ Internet-Draft HTTP/3 October 2019 fields, see the "Message Header Field" registry maintained at https://www.iana.org/assignments/message-headers [4]. + Just as in previous versions of HTTP, header field names are strings + of ASCII characters that are compared in a case-insensitive fashion. - -Bishop Expires April 23, 2020 [Page 11] +Bishop Expires April 24, 2020 [Page 11] Internet-Draft HTTP/3 October 2019 - Just as in previous versions of HTTP, header field names are strings - of ASCII characters that are compared in a case-insensitive fashion. Properties of HTTP header field names and values are discussed in more detail in Section 3.2 of [RFC7230], though the wire rendering in HTTP/3 differs. As in HTTP/2, header field names MUST be converted @@ -665,22 +663,21 @@ Internet-Draft HTTP/3 October 2019 "SETTINGS_MAX_HEADER_LIST_SIZE" parameter. An implementation which has received this parameter SHOULD NOT send an HTTP message header which exceeds the indicated size, as the peer will likely refuse to + process it. However, because this limit is applied at each hop, + messages below this limit are not guaranteed to be accepted. -Bishop Expires April 23, 2020 [Page 12] +Bishop Expires April 24, 2020 [Page 12] Internet-Draft HTTP/3 October 2019 - process it. However, because this limit is applied at each hop, - messages below this limit are not guaranteed to be accepted. - 4.1.2. Request Cancellation and Rejection Clients can cancel requests by resetting and aborting the request - stream with an error code of HTTP_REQUEST_CANCELLED (Section 8.1). + stream with an error code of H3_REQUEST_CANCELLED (Section 8.1). When the client aborts reading a response, it indicates that this response is no longer of interest. Implementations SHOULD cancel requests by abruptly terminating any directions of a stream that are @@ -688,22 +685,22 @@ Internet-Draft HTTP/3 October 2019 When the server rejects a request without performing any application processing, it SHOULD abort its response stream with the error code - HTTP_REQUEST_REJECTED. In this context, "processed" means that some + H3_REQUEST_REJECTED. In this context, "processed" means that some data from the stream was passed to some higher layer of software that might have taken some action as a result. The client can treat requests rejected by the server as though they had never been sent at all, thereby allowing them to be retried later on a new connection. - Servers MUST NOT use the HTTP_REQUEST_REJECTED error code for - requests which were partially or fully processed. When a server - abandons a response after partial processing, it SHOULD abort its - response stream with the error code HTTP_REQUEST_CANCELLED. + Servers MUST NOT use the H3_REQUEST_REJECTED error code for requests + which were partially or fully processed. When a server abandons a + response after partial processing, it SHOULD abort its response + stream with the error code H3_REQUEST_CANCELLED. When a client resets a request with the error code - HTTP_REQUEST_CANCELLED, a server MAY abruptly terminate the response - using the error code HTTP_REQUEST_REJECTED if no processing was - performed. Clients MUST NOT use the HTTP_REQUEST_REJECTED error - code, except when a server has requested closure of the request - stream with this error code. + H3_REQUEST_CANCELLED, a server MAY abruptly terminate the response + using the error code H3_REQUEST_REJECTED if no processing was + performed. Clients MUST NOT use the H3_REQUEST_REJECTED error code, + except when a server has requested closure of the request stream with + this error code. If a stream is cancelled after receiving a complete response, the client MAY ignore the cancellation and use the response. However, if @@ -722,16 +719,17 @@ Internet-Draft HTTP/3 October 2019 A request or response that includes a payload body can include a "content-length" header field. A request or response is also malformed if the value of a content-length header field does not + equal the sum of the DATA frame payload lengths that form the body. + A response that is defined to have no payload, as described in + -Bishop Expires April 23, 2020 [Page 13] +Bishop Expires April 24, 2020 [Page 13] Internet-Draft HTTP/3 October 2019 - equal the sum of the DATA frame payload lengths that form the body. - A response that is defined to have no payload, as described in Section 3.3.2 of [RFC7230] can have a non-zero content-length header field, even though no content is included in DATA frames. @@ -739,7 +737,7 @@ Internet-Draft HTTP/3 October 2019 intermediary not acting as a tunnel) MUST NOT forward a malformed request or response. Malformed requests or responses that are detected MUST be treated as a stream error (Section 8) of type - HTTP_GENERAL_PROTOCOL_ERROR. + H3_GENERAL_PROTOCOL_ERROR. For malformed requests, a server MAY send an HTTP response prior to closing or resetting the stream. Clients MUST NOT accept a malformed @@ -777,20 +775,19 @@ Internet-Draft HTTP/3 October 2019 number of TCP segments is not guaranteed to map predictably to the size and number of HTTP DATA or QUIC STREAM frames. + Once the CONNECT method has completed, only DATA frames are permitted + to be sent on the stream. Extension frames MAY be used if + specifically permitted by the definition of the extension. Receipt - -Bishop Expires April 23, 2020 [Page 14] +Bishop Expires April 24, 2020 [Page 14] Internet-Draft HTTP/3 October 2019 - Once the CONNECT method has completed, only DATA frames are permitted - to be sent on the stream. Extension frames MAY be used if - specifically permitted by the definition of the extension. Receipt of any other frame type MUST be treated as a connection error of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. The TCP connection can be closed by either peer. When the client ends the request stream (that is, the receive stream at the proxy @@ -805,8 +802,8 @@ Internet-Draft HTTP/3 October 2019 A TCP connection error is signaled by abruptly terminating the stream. A proxy treats any error in the TCP connection, which includes receiving a TCP segment with the RST bit set, as a stream - error of type HTTP_CONNECT_ERROR (Section 8.1). Correspondingly, if - a proxy detects an error with the stream or the QUIC connection, it + error of type H3_CONNECT_ERROR (Section 8.1). Correspondingly, if a + proxy detects an error with the stream or the QUIC connection, it MUST close the TCP connection. If the underlying TCP implementation permits it, the proxy SHOULD send a TCP segment with the RST bit set. @@ -834,19 +831,19 @@ Internet-Draft HTTP/3 October 2019 Server push is only enabled on a connection when a client sends a MAX_PUSH_ID frame (see Section 7.2.7). A server cannot use server push until it receives a MAX_PUSH_ID frame. A client sends + additional MAX_PUSH_ID frames to control the number of pushes that a + server can promise. A server SHOULD use Push IDs sequentially, + starting at 0. A client MUST treat receipt of a push stream with a -Bishop Expires April 23, 2020 [Page 15] +Bishop Expires April 24, 2020 [Page 15] Internet-Draft HTTP/3 October 2019 - additional MAX_PUSH_ID frames to control the number of pushes that a - server can promise. A server SHOULD use Push IDs sequentially, - starting at 0. A client MUST treat receipt of a push stream with a Push ID that is greater than the maximum Push ID as a connection - error of type HTTP_ID_ERROR. + error of type H3_ID_ERROR. The header of the request message is carried by a PUSH_PROMISE frame (see Section 7.2.5) on the request stream which generated the push. @@ -888,19 +885,19 @@ Internet-Draft HTTP/3 October 2019 If a promised server push is not needed by the client, the client SHOULD send a CANCEL_PUSH frame. If the push stream is already open or opens after sending the CANCEL_PUSH frame, the client can abort - reading the stream with an error code of HTTP_REQUEST_CANCELLED. + reading the stream with an error code of H3_REQUEST_CANCELLED. This + asks the server not to transfer additional data and indicates that it + will be discarded upon receipt. -Bishop Expires April 23, 2020 [Page 16] + +Bishop Expires April 24, 2020 [Page 16] Internet-Draft HTTP/3 October 2019 - This asks the server not to transfer additional data and indicates - that it will be discarded upon receipt. - 5. Connection Closure Once established, an HTTP/3 connection can be used for many requests @@ -946,18 +943,17 @@ Internet-Draft HTTP/3 October 2019 identifier MAY be zero if no requests were processed. Servers SHOULD NOT permit additional QUIC streams after sending a GOAWAY frame. + Clients MUST NOT send new requests on the connection after receiving + GOAWAY; a new connection MAY be established to send additional + requests. -Bishop Expires April 23, 2020 [Page 17] +Bishop Expires April 24, 2020 [Page 17] Internet-Draft HTTP/3 October 2019 - Clients MUST NOT send new requests on the connection after receiving - GOAWAY; a new connection MAY be established to send additional - requests. - Some requests might already be in transit. If the client has already sent requests on streams with a Stream ID greater than or equal to that indicated in the GOAWAY frame, those requests will not be @@ -998,22 +994,22 @@ Internet-Draft HTTP/3 October 2019 Once all accepted requests have been processed, the server can permit the connection to become idle, or MAY initiate an immediate closure of the connection. An endpoint that completes a graceful shutdown - SHOULD use the HTTP_NO_ERROR code when closing the connection. + SHOULD use the H3_NO_ERROR code when closing the connection. + If a client has consumed all available bidirectional stream IDs with + requests, the server need not send a GOAWAY frame, since the client + is unable to make further requests. -Bishop Expires April 23, 2020 [Page 18] + +Bishop Expires April 24, 2020 [Page 18] Internet-Draft HTTP/3 October 2019 - If a client has consumed all available bidirectional stream IDs with - requests, the server need not send a GOAWAY frame, since the client - is unable to make further requests. - 5.3. Immediate Application Closure An HTTP/3 implementation can immediately close the QUIC connection at @@ -1061,7 +1057,11 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 19] + + + + +Bishop Expires April 24, 2020 [Page 19] Internet-Draft HTTP/3 October 2019 @@ -1081,7 +1081,7 @@ Internet-Draft HTTP/3 October 2019 HTTP/3 does not use server-initiated bidirectional streams, though an extension could define a use for these streams. Clients MUST treat receipt of a server-initiated bidirectional stream as a connection - error of type HTTP_STREAM_CREATION_ERROR unless such an extension has + error of type H3_STREAM_CREATION_ERROR unless such an extension has been negotiated. 6.2. Unidirectional Streams @@ -1117,7 +1117,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 20] +Bishop Expires April 24, 2020 [Page 20] Internet-Draft HTTP/3 October 2019 @@ -1142,8 +1142,8 @@ Internet-Draft HTTP/3 October 2019 by the recipient, the remainder of the stream cannot be consumed as the semantics are unknown. Recipients of unknown stream types MAY abort reading of the stream with an error code of - HTTP_STREAM_CREATION_ERROR, but MUST NOT consider such streams to be - a connection error of any kind. + H3_STREAM_CREATION_ERROR, but MUST NOT consider such streams to be a + connection error of any kind. Implementations MAY send stream types before knowing whether the peer supports them. However, stream types which could modify the state or @@ -1164,22 +1164,22 @@ Internet-Draft HTTP/3 October 2019 the connection and send its SETTINGS frame as the first frame on this stream. If the first frame of the control stream is any other frame type, this MUST be treated as a connection error of type - HTTP_MISSING_SETTINGS. Only one control stream per peer is - permitted; receipt of a second stream which claims to be a control - stream MUST be treated as a connection error of type - HTTP_STREAM_CREATION_ERROR. The sender MUST NOT close the control - stream, and the receiver MUST NOT request that the sender close the - control stream. If either control stream is closed at any point, + H3_MISSING_SETTINGS. Only one control stream per peer is permitted; + receipt of a second stream which claims to be a control stream MUST + be treated as a connection error of type H3_STREAM_CREATION_ERROR. + The sender MUST NOT close the control stream, and the receiver MUST + NOT request that the sender close the control stream. If either -Bishop Expires April 23, 2020 [Page 21] + +Bishop Expires April 24, 2020 [Page 21] Internet-Draft HTTP/3 October 2019 - this MUST be treated as a connection error of type - HTTP_CLOSED_CRITICAL_STREAM. + control stream is closed at any point, this MUST be treated as a + connection error of type H3_CLOSED_CRITICAL_STREAM. A pair of unidirectional streams is used rather than a single bidirectional stream. This allows either peer to send data as soon @@ -1203,7 +1203,7 @@ Internet-Draft HTTP/3 October 2019 Only servers can push; if a server receives a client-initiated push stream, this MUST be treated as a connection error of type - HTTP_STREAM_CREATION_ERROR. + H3_STREAM_CREATION_ERROR. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 @@ -1218,7 +1218,7 @@ Internet-Draft HTTP/3 October 2019 Each Push ID MUST only be used once in a push stream header. If a push stream header includes a Push ID that was used in another push stream header, the client MUST treat this as a connection error of - type HTTP_ID_ERROR. + type H3_ID_ERROR. 6.2.3. Reserved Stream Types @@ -1229,7 +1229,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 22] +Bishop Expires April 24, 2020 [Page 22] Internet-Draft HTTP/3 October 2019 @@ -1285,7 +1285,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 23] +Bishop Expires April 24, 2020 [Page 23] Internet-Draft HTTP/3 October 2019 @@ -1327,11 +1327,11 @@ Internet-Draft HTTP/3 October 2019 its description. A frame payload that contains additional bytes after the identified fields or a frame payload that terminates before the end of the identified fields MUST be treated as a connection - error of type HTTP_FRAME_ERROR. + error of type H3_FRAME_ERROR. When a stream terminates cleanly, if the last frame on the stream was truncated, this MUST be treated as a connection error (Section 8) of - type HTTP_FRAME_ERROR. Streams which terminate abruptly may be reset + type H3_FRAME_ERROR. Streams which terminate abruptly may be reset at any point in a frame. @@ -1341,7 +1341,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 24] +Bishop Expires April 24, 2020 [Page 24] Internet-Draft HTTP/3 October 2019 @@ -1356,7 +1356,7 @@ Internet-Draft HTTP/3 October 2019 DATA frames MUST be associated with an HTTP request or response. If a DATA frame is received on a control stream, the recipient MUST respond with a connection error (Section 8) of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 @@ -1382,7 +1382,7 @@ Internet-Draft HTTP/3 October 2019 HEADERS frames can only be sent on request / push streams. If a HEADERS frame is received on a control stream, the recipient MUST respond with a connection error (Section 8) of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. 7.2.3. CANCEL_PUSH @@ -1397,7 +1397,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 25] +Bishop Expires April 24, 2020 [Page 25] Internet-Draft HTTP/3 October 2019 @@ -1420,7 +1420,7 @@ Internet-Draft HTTP/3 October 2019 A CANCEL_PUSH frame is sent on the control stream. Receiving a CANCEL_PUSH frame on a stream other than the control stream MUST be - treated as a connection error of type HTTP_FRAME_UNEXPECTED. + treated as a connection error of type H3_FRAME_UNEXPECTED. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 @@ -1435,13 +1435,13 @@ Internet-Draft HTTP/3 October 2019 cancelled (see Section 7.2.5). If a CANCEL_PUSH frame is received which references a Push ID greater than currently allowed on the connection, this MUST be treated as a connection error of type - HTTP_ID_ERROR. + H3_ID_ERROR. If the client receives a CANCEL_PUSH frame, that frame might identify a Push ID that has not yet been mentioned by a PUSH_PROMISE frame due to reordering. If a server receives a CANCEL_PUSH frame for a Push ID that has not yet been mentioned by a PUSH_PROMISE frame, this MUST - be treated as a connection error of type HTTP_ID_ERROR. + be treated as a connection error of type H3_ID_ERROR. 7.2.4. SETTINGS @@ -1453,7 +1453,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 26] +Bishop Expires April 24, 2020 [Page 26] Internet-Draft HTTP/3 October 2019 @@ -1466,12 +1466,12 @@ Internet-Draft HTTP/3 October 2019 stream (see Section 6.2.1) by each peer, and MUST NOT be sent subsequently. If an endpoint receives a second SETTINGS frame on the control stream, the endpoint MUST respond with a connection error of - type HTTP_FRAME_UNEXPECTED. + type H3_FRAME_UNEXPECTED. SETTINGS frames MUST NOT be sent on any stream other than the control stream. If an endpoint receives a SETTINGS frame on a different stream, the endpoint MUST respond with a connection error of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. SETTINGS parameters are not negotiated; they describe characteristics of the sending peer, which can be used by the receiving peer. @@ -1487,8 +1487,7 @@ Internet-Draft HTTP/3 October 2019 The same setting identifier MUST NOT occur more than once in the SETTINGS frame. A receiver MAY treat the presence of duplicate - setting identifiers as a connection error of type - HTTP_SETTINGS_ERROR. + setting identifiers as a connection error of type H3_SETTINGS_ERROR. The payload of a SETTINGS frame consists of zero or more parameters. Each parameter consists of a setting identifier and a value, both @@ -1509,7 +1508,8 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 27] + +Bishop Expires April 24, 2020 [Page 27] Internet-Draft HTTP/3 October 2019 @@ -1565,7 +1565,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 28] +Bishop Expires April 24, 2020 [Page 28] Internet-Draft HTTP/3 October 2019 @@ -1597,7 +1597,7 @@ Internet-Draft HTTP/3 October 2019 server accepts 0-RTT, but then sends a SETTINGS frame which reduces a setting the client understands or omits a value that was previously specified to have a non-default value, this MUST be treated as a - connection error of type HTTP_SETTINGS_ERROR. + connection error of type H3_SETTINGS_ERROR. 7.2.5. PUSH_PROMISE @@ -1621,7 +1621,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 29] +Bishop Expires April 24, 2020 [Page 29] Internet-Draft HTTP/3 October 2019 @@ -1635,19 +1635,19 @@ Internet-Draft HTTP/3 October 2019 A server MUST NOT use a Push ID that is larger than the client has provided in a MAX_PUSH_ID frame (Section 7.2.7). A client MUST treat receipt of a PUSH_PROMISE frame that contains a larger Push ID than - the client has advertised as a connection error of HTTP_ID_ERROR. + the client has advertised as a connection error of H3_ID_ERROR. A server MUST NOT use the same Push ID in multiple PUSH_PROMISE frames. A client MUST treat receipt of a Push ID which has already - been promised as a connection error of type HTTP_ID_ERROR. + been promised as a connection error of type H3_ID_ERROR. If a PUSH_PROMISE frame is received on the control stream, the client MUST respond with a connection error (Section 8) of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. A client MUST NOT send a PUSH_PROMISE frame. A server MUST treat the receipt of a PUSH_PROMISE frame as a connection error of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. See Section 4.4 for a description of the overall server push mechanism. @@ -1672,12 +1672,12 @@ Internet-Draft HTTP/3 October 2019 QUIC Stream ID for a client-initiated bidirectional stream encoded as a variable-length integer. A client MUST treat receipt of a GOAWAY frame containing a Stream ID of any other type as a connection error - of type HTTP_ID_ERROR. + of type H3_ID_ERROR. -Bishop Expires April 23, 2020 [Page 30] +Bishop Expires April 24, 2020 [Page 30] Internet-Draft HTTP/3 October 2019 @@ -1685,12 +1685,11 @@ Internet-Draft HTTP/3 October 2019 Clients do not need to send GOAWAY to initiate a graceful shutdown; they simply stop making new requests. A server MUST treat receipt of a GOAWAY frame on any stream as a connection error (Section 8) of - type HTTP_FRAME_UNEXPECTED. + type H3_FRAME_UNEXPECTED. The GOAWAY frame applies to the connection, not a specific stream. A client MUST treat a GOAWAY frame on a stream other than the control - stream as a connection error (Section 8) of type - HTTP_FRAME_UNEXPECTED. + stream as a connection error (Section 8) of type H3_FRAME_UNEXPECTED. See Section 5.2 for more information on the use of the GOAWAY frame. @@ -1705,11 +1704,11 @@ Internet-Draft HTTP/3 October 2019 The MAX_PUSH_ID frame is always sent on the control stream. Receipt of a MAX_PUSH_ID frame on any other stream MUST be treated as a - connection error of type HTTP_FRAME_UNEXPECTED. + connection error of type H3_FRAME_UNEXPECTED. A server MUST NOT send a MAX_PUSH_ID frame. A client MUST treat the receipt of a MAX_PUSH_ID frame as a connection error of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. The maximum Push ID is unset when a connection is created, meaning that a server cannot push until it receives a MAX_PUSH_ID frame. A @@ -1729,18 +1728,16 @@ Internet-Draft HTTP/3 October 2019 identifies the maximum value for a Push ID that the server can use (see Section 7.2.5). A MAX_PUSH_ID frame cannot reduce the maximum Push ID; receipt of a MAX_PUSH_ID that contains a smaller value than + previously received MUST be treated as a connection error of type + H3_ID_ERROR. - -Bishop Expires April 23, 2020 [Page 31] +Bishop Expires April 24, 2020 [Page 31] Internet-Draft HTTP/3 October 2019 - previously received MUST be treated as a connection error of type - HTTP_ID_ERROR. - 7.2.8. DUPLICATE_PUSH The DUPLICATE_PUSH frame (type=0xE) is used by servers to indicate @@ -1749,11 +1746,11 @@ Internet-Draft HTTP/3 October 2019 The DUPLICATE_PUSH frame is always sent on a request stream. Receipt of a DUPLICATE_PUSH frame on any other stream MUST be treated as a - connection error of type HTTP_FRAME_UNEXPECTED. + connection error of type H3_FRAME_UNEXPECTED. A client MUST NOT send a DUPLICATE_PUSH frame. A server MUST treat the receipt of a DUPLICATE_PUSH frame as a connection error of type - HTTP_FRAME_UNEXPECTED. + H3_FRAME_UNEXPECTED. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 @@ -1770,7 +1767,7 @@ Internet-Draft HTTP/3 October 2019 that is larger than the client has provided in a MAX_PUSH_ID frame (Section 7.2.7). A client MUST treat receipt of a DUPLICATE_PUSH that contains a larger Push ID than the client has advertised as a - connection error of type HTTP_ID_ERROR. + connection error of type H3_ID_ERROR. This frame allows the server to use the same server push in response to multiple concurrent requests. Referencing the same server push @@ -1789,7 +1786,10 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 32] + + + +Bishop Expires April 24, 2020 [Page 32] Internet-Draft HTTP/3 October 2019 @@ -1810,7 +1810,7 @@ Internet-Draft HTTP/3 October 2019 Frame types which were used in HTTP/2 where there is no corresponding HTTP/3 frame have also been reserved (Section 11.2). These frame types MUST NOT be sent, and receipt MAY be treated as an error of - type HTTP_FRAME_UNEXPECTED. + type H3_FRAME_UNEXPECTED. 8. Error Handling @@ -1835,65 +1835,64 @@ Internet-Draft HTTP/3 October 2019 terminating streams, aborting reading of streams, or immediately closing connections. - HTTP_NO_ERROR (0x100): No error. This is used when the connection - or stream needs to be closed, but there is no error to signal. + H3_NO_ERROR (0x100): No error. This is used when the connection or + stream needs to be closed, but there is no error to signal. - HTTP_GENERAL_PROTOCOL_ERROR (0x101): Peer violated protocol + H3_GENERAL_PROTOCOL_ERROR (0x101): Peer violated protocol requirements in a way which doesn't match a more specific error code, or endpoint declines to use the more specific error code. -Bishop Expires April 23, 2020 [Page 33] +Bishop Expires April 24, 2020 [Page 33] Internet-Draft HTTP/3 October 2019 - HTTP_INTERNAL_ERROR (0x102): An internal error has occurred in the + H3_INTERNAL_ERROR (0x102): An internal error has occurred in the HTTP stack. - HTTP_STREAM_CREATION_ERROR (0x103): The endpoint detected that its + H3_STREAM_CREATION_ERROR (0x103): The endpoint detected that its peer created a stream that it will not accept. - HTTP_CLOSED_CRITICAL_STREAM (0x104): A stream required by the + H3_CLOSED_CRITICAL_STREAM (0x104): A stream required by the connection was closed or reset. - HTTP_FRAME_UNEXPECTED (0x105): A frame was received which was not + H3_FRAME_UNEXPECTED (0x105): A frame was received which was not permitted in the current state or on the current stream. - HTTP_FRAME_ERROR (0x106): A frame that fails to satisfy layout + H3_FRAME_ERROR (0x106): A frame that fails to satisfy layout requirements or with an invalid size was received. - HTTP_EXCESSIVE_LOAD (0x107): The endpoint detected that its peer is + H3_EXCESSIVE_LOAD (0x107): The endpoint detected that its peer is exhibiting a behavior that might be generating excessive load. - HTTP_ID_ERROR (0x108): A Stream ID or Push ID was used incorrectly, + H3_ID_ERROR (0x108): A Stream ID or Push ID was used incorrectly, such as exceeding a limit, reducing a limit, or being reused. - HTTP_SETTINGS_ERROR (0x109): An endpoint detected an error in the + H3_SETTINGS_ERROR (0x109): An endpoint detected an error in the payload of a SETTINGS frame. - HTTP_MISSING_SETTINGS (0x10A): No SETTINGS frame was received at the + H3_MISSING_SETTINGS (0x10A): No SETTINGS frame was received at the beginning of the control stream. - HTTP_REQUEST_REJECTED (0x10B): A server rejected a request without + H3_REQUEST_REJECTED (0x10B): A server rejected a request without performing any application processing. - HTTP_REQUEST_CANCELLED (0x10C): The request or its response - (including pushed response) is cancelled. + H3_REQUEST_CANCELLED (0x10C): The request or its response (including + pushed response) is cancelled. - HTTP_REQUEST_INCOMPLETE (0x10D): The client's stream terminated + H3_REQUEST_INCOMPLETE (0x10D): The client's stream terminated without containing a fully-formed request. - HTTP_EARLY_RESPONSE (0x10E): The remainder of the client's request - is not needed to produce a response. For use in STOP_SENDING - only. + H3_EARLY_RESPONSE (0x10E): The remainder of the client's request is + not needed to produce a response. For use in STOP_SENDING only. - HTTP_CONNECT_ERROR (0x10F): The connection established in response - to a CONNECT request was reset or abnormally closed. + H3_CONNECT_ERROR (0x10F): The connection established in response to + a CONNECT request was reset or abnormally closed. - HTTP_VERSION_FALLBACK (0x110): The requested operation cannot be + H3_VERSION_FALLBACK (0x110): The requested operation cannot be served over HTTP/3. The peer should retry over HTTP/1.1. @@ -1901,7 +1900,8 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 34] + +Bishop Expires April 24, 2020 [Page 34] Internet-Draft HTTP/3 October 2019 @@ -1957,7 +1957,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 35] +Bishop Expires April 24, 2020 [Page 35] Internet-Draft HTTP/3 October 2019 @@ -2013,7 +2013,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 36] +Bishop Expires April 24, 2020 [Page 36] Internet-Draft HTTP/3 October 2019 @@ -2069,7 +2069,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 37] +Bishop Expires April 24, 2020 [Page 37] Internet-Draft HTTP/3 October 2019 @@ -2125,7 +2125,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 38] +Bishop Expires April 24, 2020 [Page 38] Internet-Draft HTTP/3 October 2019 @@ -2181,7 +2181,7 @@ Internet-Draft HTTP/3 October 2019 -Bishop Expires April 23, 2020 [Page 39] +Bishop Expires April 24, 2020 [Page 39] Internet-Draft HTTP/3 October 2019 @@ -2201,88 +2201,87 @@ Internet-Draft HTTP/3 October 2019 The entries in the following table are registered by this document. - +----------------------------+--------+-------------+---------------+ - | Name | Code | Description | Specification | - +----------------------------+--------+-------------+---------------+ - | HTTP_NO_ERROR | 0x0100 | No error | Section 8.1 | - | | | | | - | HTTP_GENERAL_PROTOCOL_ERRO | 0x0101 | General | Section 8.1 | - | R | | protocol | | - | | | error | | - | | | | | - | HTTP_INTERNAL_ERROR | 0x0102 | Internal | Section 8.1 | - | | | error | | - | | | | | - | HTTP_STREAM_CREATION_ERROR | 0x0103 | Stream | Section 8.1 | - | | | creation | | - | | | error | | - | | | | | - | HTTP_CLOSED_CRITICAL_STREA | 0x0104 | Critical | Section 8.1 | - | M | | stream was | | - | | | closed | | - | | | | | - | HTTP_FRAME_UNEXPECTED | 0x0105 | Frame not | Section 8.1 | - | | | permitted | | - | | | in the | | - | | | current | | - | | | state | | - | | | | | - | HTTP_FRAME_ERROR | 0x0106 | Frame | Section 8.1 | - | | | violated | | - | | | layout or | | - | | | size rules | | - | | | | | - | HTTP_EXCESSIVE_LOAD | 0x0107 | Peer | Section 8.1 | - | | | generating | | - - - -Bishop Expires April 23, 2020 [Page 40] + +---------------------------+--------+--------------+---------------+ + | Name | Code | Description | Specification | + +---------------------------+--------+--------------+---------------+ + | H3_NO_ERROR | 0x0100 | No error | Section 8.1 | + | | | | | + | H3_GENERAL_PROTOCOL_ERROR | 0x0101 | General | Section 8.1 | + | | | protocol | | + | | | error | | + | | | | | + | H3_INTERNAL_ERROR | 0x0102 | Internal | Section 8.1 | + | | | error | | + | | | | | + | H3_STREAM_CREATION_ERROR | 0x0103 | Stream | Section 8.1 | + | | | creation | | + | | | error | | + | | | | | + | H3_CLOSED_CRITICAL_STREAM | 0x0104 | Critical | Section 8.1 | + | | | stream was | | + | | | closed | | + | | | | | + | H3_FRAME_UNEXPECTED | 0x0105 | Frame not | Section 8.1 | + | | | permitted in | | + | | | the current | | + | | | state | | + | | | | | + | H3_FRAME_ERROR | 0x0106 | Frame | Section 8.1 | + | | | violated | | + | | | layout or | | + | | | size rules | | + | | | | | + | H3_EXCESSIVE_LOAD | 0x0107 | Peer | Section 8.1 | + | | | generating | | + | | | excessive | | + + + +Bishop Expires April 24, 2020 [Page 40] Internet-Draft HTTP/3 October 2019 - | | | excessive | | - | | | load | | - | | | | | - | HTTP_ID_ERROR | 0x0108 | An | Section 8.1 | - | | | identifier | | - | | | was used | | - | | | incorrectly | | - | | | | | - | HTTP_SETTINGS_ERROR | 0x0109 | SETTINGS | Section 8.1 | - | | | frame | | - | | | contained | | - | | | invalid | | - | | | values | | - | | | | | - | HTTP_MISSING_SETTINGS | 0x010A | No SETTINGS | Section 8.1 | - | | | frame | | - | | | received | | - | | | | | - | HTTP_REQUEST_REJECTED | 0x010B | Request not | Section 8.1 | - | | | processed | | - | | | | | - | HTTP_REQUEST_CANCELLED | 0x010C | Data no | Section 8.1 | - | | | longer | | - | | | needed | | - | | | | | - | HTTP_REQUEST_INCOMPLETE | 0x010D | Stream | Section 8.1 | - | | | terminated | | - | | | early | | - | | | | | - | HTTP_EARLY_RESPONSE | 0x010E | Remainder | Section 8.1 | - | | | of request | | - | | | not needed | | - | | | | | - | HTTP_CONNECT_ERROR | 0x010F | TCP reset | Section 8.1 | - | | | or error on | | - | | | CONNECT | | - | | | request | | - | | | | | - | HTTP_VERSION_FALLBACK | 0x0110 | Retry over | Section 8.1 | - | | | HTTP/1.1 | | - +----------------------------+--------+-------------+---------------+ + | | | load | | + | | | | | + | H3_ID_ERROR | 0x0108 | An | Section 8.1 | + | | | identifier | | + | | | was used | | + | | | incorrectly | | + | | | | | + | H3_SETTINGS_ERROR | 0x0109 | SETTINGS | Section 8.1 | + | | | frame | | + | | | contained | | + | | | invalid | | + | | | values | | + | | | | | + | H3_MISSING_SETTINGS | 0x010A | No SETTINGS | Section 8.1 | + | | | frame | | + | | | received | | + | | | | | + | H3_REQUEST_REJECTED | 0x010B | Request not | Section 8.1 | + | | | processed | | + | | | | | + | H3_REQUEST_CANCELLED | 0x010C | Data no | Section 8.1 | + | | | longer | | + | | | needed | | + | | | | | + | H3_REQUEST_INCOMPLETE | 0x010D | Stream | Section 8.1 | + | | | terminated | | + | | | early | | + | | | | | + | H3_EARLY_RESPONSE | 0x010E | Remainder of | Section 8.1 | + | | | request not | | + | | | needed | | + | | | | | + | H3_CONNECT_ERROR | 0x010F | TCP reset or | Section 8.1 | + | | | error on | | + | | | CONNECT | | + | | | request | | + | | | | | + | H3_VERSION_FALLBACK | 0x0110 | Retry over | Section 8.1 | + | | | HTTP/1.1 | | + +---------------------------+--------+--------------+---------------+ 11.5. Stream Types @@ -2290,15 +2289,15 @@ Internet-Draft HTTP/3 October 2019 types. The "HTTP/3 Stream Type" registry governs a 62-bit space. This space is split into three spaces that are governed by different policies. Values between "0x00" and 0x3f (in hexadecimal) are + assigned via the Standards Action or IESG Review policies [RFC8126]. -Bishop Expires April 23, 2020 [Page 41] +Bishop Expires April 24, 2020 [Page 41] Internet-Draft HTTP/3 October 2019 - assigned via the Standards Action or IESG Review policies [RFC8126]. Values from "0x40" to "0x3fff" operate on the Specification Required policy [RFC8126]. All other values are assigned to Private Use [RFC8126]. @@ -2343,22 +2342,18 @@ Internet-Draft HTTP/3 October 2019 Data in HTTP", RFC 8470, DOI 10.17487/RFC8470, September 2018, . + [HTTP2] Belshe, M., Peon, R., and M. Thomson, Ed., "Hypertext + Transfer Protocol Version 2 (HTTP/2)", RFC 7540, + DOI 10.17487/RFC7540, May 2015, + . - - - -Bishop Expires April 23, 2020 [Page 42] +Bishop Expires April 24, 2020 [Page 42] Internet-Draft HTTP/3 October 2019 - [HTTP2] Belshe, M., Peon, R., and M. Thomson, Ed., "Hypertext - Transfer Protocol Version 2 (HTTP/2)", RFC 7540, - DOI 10.17487/RFC7540, May 2015, - . - [QPACK] Krasic, C., Bishop, M., and A. Frindell, Ed., "QPACK: Header Compression for HTTP over QUIC", draft-ietf-quic- qpack (work in progress), October 2019. @@ -2401,19 +2396,20 @@ Internet-Draft HTTP/3 October 2019 DOI 10.17487/RFC7231, June 2014, . + [RFC7838] Nottingham, M., McManus, P., and J. Reschke, "HTTP + Alternative Services", RFC 7838, DOI 10.17487/RFC7838, + April 2016, . -Bishop Expires April 23, 2020 [Page 43] + + +Bishop Expires April 24, 2020 [Page 43] Internet-Draft HTTP/3 October 2019 - [RFC7838] Nottingham, M., McManus, P., and J. Reschke, "HTTP - Alternative Services", RFC 7838, DOI 10.17487/RFC7838, - April 2016, . - [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, June 2017, @@ -2456,23 +2452,20 @@ Internet-Draft HTTP/3 October 2019 [4] https://www.iana.org/assignments/message-headers +Appendix A. Considerations for Transitioning from HTTP/2 + HTTP/3 is strongly informed by HTTP/2, and bears many similarities. + This section describes the approach taken to design HTTP/3, points + out important differences from HTTP/2, and describes how to map + HTTP/2 extensions into HTTP/3. - -Bishop Expires April 23, 2020 [Page 44] +Bishop Expires April 24, 2020 [Page 44] Internet-Draft HTTP/3 October 2019 -Appendix A. Considerations for Transitioning from HTTP/2 - - HTTP/3 is strongly informed by HTTP/2, and bears many similarities. - This section describes the approach taken to design HTTP/3, points - out important differences from HTTP/2, and describes how to map - HTTP/2 extensions into HTTP/3. - HTTP/3 begins from the premise that similarity to HTTP/2 is preferable, but not a hard requirement. HTTP/3 departs from HTTP/2 where QUIC differs from TCP, either to take advantage of QUIC @@ -2514,14 +2507,6 @@ A.2. HTTP Frame Types Many of the differences arise from the fact that HTTP/2 provides an absolute ordering between frames across all streams, while QUIC - - - -Bishop Expires April 23, 2020 [Page 45] - -Internet-Draft HTTP/3 October 2019 - - provides this guarantee on each stream only. As a result, if a frame type makes assumptions that frames from different streams will still be received in the order sent, HTTP/3 will break them. @@ -2530,6 +2515,13 @@ Internet-Draft HTTP/3 October 2019 general guidance to extension frame implementors converting an HTTP/2 extension to HTTP/3. + + +Bishop Expires April 24, 2020 [Page 45] + +Internet-Draft HTTP/3 October 2019 + + A.2.1. Prioritization Differences HTTP/2 specifies priority assignments in PRIORITY frames and @@ -2570,20 +2562,22 @@ A.2.3. Guidance for New Frame Type Definitions those frames which depend on the presence of flags need to allocate space for flags as part of their frame payload. + Other than this issue, frame type HTTP/2 extensions are typically + portable to QUIC simply by replacing Stream 0 in HTTP/2 with a + control stream in HTTP/3. HTTP/3 extensions will not assume + ordering, but would not be harmed by ordering, and would be portable + to HTTP/2 in the same manner. + + + -Bishop Expires April 23, 2020 [Page 46] +Bishop Expires April 24, 2020 [Page 46] Internet-Draft HTTP/3 October 2019 - Other than this issue, frame type HTTP/2 extensions are typically - portable to QUIC simply by replacing Stream 0 in HTTP/2 with a - control stream in HTTP/3. HTTP/3 extensions will not assume - ordering, but would not be harmed by ordering, and would be portable - to HTTP/2 in the same manner. - A.2.4. Mapping Between HTTP/2 and HTTP/3 Frame Types DATA (0x0): Padding is not defined in HTTP/3 frames. See @@ -2626,14 +2620,6 @@ A.2.4. Mapping Between HTTP/2 and HTTP/3 Frame Types so many HTTP/3 frame types have no equivalent HTTP/2 code points. See Section 11.2. - - - -Bishop Expires April 23, 2020 [Page 47] - -Internet-Draft HTTP/3 October 2019 - - A.3. HTTP/2 SETTINGS Parameters An important difference from HTTP/2 is that settings are sent once, @@ -2641,6 +2627,13 @@ A.3. HTTP/2 SETTINGS Parameters change. This eliminates many corner cases around synchronization of changes. + + +Bishop Expires April 24, 2020 [Page 47] + +Internet-Draft HTTP/3 October 2019 + + Some transport-level options that HTTP/2 specifies via the SETTINGS frame are superseded by QUIC transport parameters in HTTP/3. The HTTP-level options that are retained in HTTP/3 have the same value as @@ -2680,38 +2673,37 @@ A.3. HTTP/2 SETTINGS Parameters larger (62 bits versus 16 bits), so many HTTP/3 settings have no equivalent HTTP/2 code point. See Section 11.3. + As QUIC streams might arrive out-of-order, endpoints are advised to + not wait for the peers' settings to arrive before responding to other + streams. See Section 7.2.4.2. + +A.4. HTTP/2 Error Codes + QUIC has the same concepts of "stream" and "connection" errors that + HTTP/2 provides. However, there is no direct portability of HTTP/2 -Bishop Expires April 23, 2020 [Page 48] +Bishop Expires April 24, 2020 [Page 48] Internet-Draft HTTP/3 October 2019 - As QUIC streams might arrive out-of-order, endpoints are advised to - not wait for the peers' settings to arrive before responding to other - streams. See Section 7.2.4.2. - -A.4. HTTP/2 Error Codes - - QUIC has the same concepts of "stream" and "connection" errors that - HTTP/2 provides. However, there is no direct portability of HTTP/2 error codes to HTTP/3 error codes; the values are shifted in order to prevent accidental or implicit conversion. The HTTP/2 error codes defined in Section 7 of [HTTP2] logically map to the HTTP/3 error codes as follows: - NO_ERROR (0x0): HTTP_NO_ERROR in Section 8.1. + NO_ERROR (0x0): H3_NO_ERROR in Section 8.1. - PROTOCOL_ERROR (0x1): This is mapped to HTTP_GENERAL_PROTOCOL_ERROR + PROTOCOL_ERROR (0x1): This is mapped to H3_GENERAL_PROTOCOL_ERROR except in cases where more specific error codes have been defined. - This includes HTTP_FRAME_UNEXPECTED and - HTTP_CLOSED_CRITICAL_STREAM defined in Section 8.1. + This includes H3_FRAME_UNEXPECTED and H3_CLOSED_CRITICAL_STREAM + defined in Section 8.1. - INTERNAL_ERROR (0x2): HTTP_INTERNAL_ERROR in Section 8.1. + INTERNAL_ERROR (0x2): H3_INTERNAL_ERROR in Section 8.1. FLOW_CONTROL_ERROR (0x3): Not applicable, since QUIC handles flow control. @@ -2722,37 +2714,37 @@ A.4. HTTP/2 Error Codes STREAM_CLOSED (0x5): Not applicable, since QUIC handles stream management. - FRAME_SIZE_ERROR (0x6): HTTP_FRAME_ERROR error code defined in + FRAME_SIZE_ERROR (0x6): H3_FRAME_ERROR error code defined in Section 8.1. - REFUSED_STREAM (0x7): HTTP_REQUEST_REJECTED (in Section 8.1) is used + REFUSED_STREAM (0x7): H3_REQUEST_REJECTED (in Section 8.1) is used to indicate that a request was not processed. Otherwise, not applicable because QUIC handles stream management. - CANCEL (0x8): HTTP_REQUEST_CANCELLED in Section 8.1. + CANCEL (0x8): H3_REQUEST_CANCELLED in Section 8.1. COMPRESSION_ERROR (0x9): Multiple error codes are defined in [QPACK]. - CONNECT_ERROR (0xa): HTTP_CONNECT_ERROR in Section 8.1. + CONNECT_ERROR (0xa): H3_CONNECT_ERROR in Section 8.1. - ENHANCE_YOUR_CALM (0xb): HTTP_EXCESSIVE_LOAD in Section 8.1. + ENHANCE_YOUR_CALM (0xb): H3_EXCESSIVE_LOAD in Section 8.1. + INADEQUATE_SECURITY (0xc): Not applicable, since QUIC is assumed to + provide sufficient security on all connections. + H3_1_1_REQUIRED (0xd): H3_VERSION_FALLBACK in Section 8.1. + Error codes need to be defined for HTTP/2 and HTTP/3 separately. See + Section 11.4. -Bishop Expires April 23, 2020 [Page 49] - -Internet-Draft HTTP/3 October 2019 - INADEQUATE_SECURITY (0xc): Not applicable, since QUIC is assumed to - provide sufficient security on all connections. - HTTP_1_1_REQUIRED (0xd): HTTP_VERSION_FALLBACK in Section 8.1. +Bishop Expires April 24, 2020 [Page 49] + +Internet-Draft HTTP/3 October 2019 - Error codes need to be defined for HTTP/2 and HTTP/3 separately. See - Section 11.4. Appendix B. Change Log @@ -2795,19 +2787,21 @@ B.1. Since draft-ietf-quic-http-22 o Clarify that Upgrade and the 101 status code are prohibited (#2898,#2889) - - -Bishop Expires April 23, 2020 [Page 50] - -Internet-Draft HTTP/3 October 2019 - - o Clarify that frame types reserved for greasing can occur on any stream, but frame types reserved due to HTTP/2 correspondence are prohibited (#2997,#2692,#2693) o Unknown error codes cannot be treated as errors (#2998,#2816) + + + + +Bishop Expires April 24, 2020 [Page 50] + +Internet-Draft HTTP/3 October 2019 + + B.2. Since draft-ietf-quic-http-21 o No changes @@ -2851,16 +2845,18 @@ B.3. Since draft-ietf-quic-http-20 * Remove HTTP_PUSH_ALREADY_IN_CACHE error (#2812, #2813) + * Refactor Push ID related errors (#2818, #2820) + * Rationalize HTTP/3 stream creation errors (#2821, #2822) -Bishop Expires April 23, 2020 [Page 51] - -Internet-Draft HTTP/3 October 2019 - * Refactor Push ID related errors (#2818, #2820) - * Rationalize HTTP/3 stream creation errors (#2821, #2822) + +Bishop Expires April 24, 2020 [Page 51] + +Internet-Draft HTTP/3 October 2019 + B.4. Since draft-ietf-quic-http-19 @@ -2907,15 +2903,17 @@ B.7. Since draft-ietf-quic-http-16 * Remove exclusive reprioritization + * Changes to Prioritized Element Type bits + -Bishop Expires April 23, 2020 [Page 52] + + +Bishop Expires April 24, 2020 [Page 52] Internet-Draft HTTP/3 October 2019 - * Changes to Prioritized Element Type bits - o Define DUPLICATE_PUSH frame to refer to another PUSH_PROMISE (#2072) @@ -2965,7 +2963,9 @@ B.10. Since draft-ietf-quic-http-13 -Bishop Expires April 23, 2020 [Page 53] + + +Bishop Expires April 24, 2020 [Page 53] Internet-Draft HTTP/3 October 2019 @@ -3021,7 +3021,7 @@ B.16. Since draft-ietf-quic-http-07 -Bishop Expires April 23, 2020 [Page 54] +Bishop Expires April 24, 2020 [Page 54] Internet-Draft HTTP/3 October 2019 @@ -3077,7 +3077,7 @@ B.22. Since draft-ietf-quic-http-01 -Bishop Expires April 23, 2020 [Page 55] +Bishop Expires April 24, 2020 [Page 55] Internet-Draft HTTP/3 October 2019 @@ -3133,7 +3133,7 @@ Acknowledgements -Bishop Expires April 23, 2020 [Page 56] +Bishop Expires April 24, 2020 [Page 56] Internet-Draft HTTP/3 October 2019 @@ -3189,4 +3189,4 @@ Author's Address -Bishop Expires April 23, 2020 [Page 57] +Bishop Expires April 24, 2020 [Page 57] diff --git a/draft-ietf-quic-invariants.html b/draft-ietf-quic-invariants.html index 571a91a733..0ffa1ffcb9 100644 --- a/draft-ietf-quic-invariants.html +++ b/draft-ietf-quic-invariants.html @@ -305,7 +305,7 @@ - + @@ -326,10 +326,10 @@ Intended status: Standards Track -October 21, 2019 +October 22, 2019 -Expires: April 23, 2020 +Expires: April 24, 2020 @@ -349,7 +349,7 @@

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

-

This Internet-Draft will expire on April 23, 2020.

+

This Internet-Draft will expire on April 24, 2020.

Copyright Notice

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

diff --git a/draft-ietf-quic-invariants.txt b/draft-ietf-quic-invariants.txt index e94d18a2b2..3c4839de6b 100644 --- a/draft-ietf-quic-invariants.txt +++ b/draft-ietf-quic-invariants.txt @@ -4,8 +4,8 @@ QUIC M. Thomson Internet-Draft Mozilla -Intended status: Standards Track October 21, 2019 -Expires: April 23, 2020 +Intended status: Standards Track October 22, 2019 +Expires: April 24, 2020 Version-Independent Properties of QUIC @@ -42,7 +42,7 @@ Status of This Memo time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 23, 2020. + This Internet-Draft will expire on April 24, 2020. Copyright Notice @@ -53,7 +53,7 @@ Copyright Notice -Thomson Expires April 23, 2020 [Page 1] +Thomson Expires April 24, 2020 [Page 1] Internet-Draft QUIC Invariants October 2019 @@ -109,7 +109,7 @@ Table of Contents -Thomson Expires April 23, 2020 [Page 2] +Thomson Expires April 24, 2020 [Page 2] Internet-Draft QUIC Invariants October 2019 @@ -165,7 +165,7 @@ Internet-Draft QUIC Invariants October 2019 -Thomson Expires April 23, 2020 [Page 3] +Thomson Expires April 24, 2020 [Page 3] Internet-Draft QUIC Invariants October 2019 @@ -221,7 +221,7 @@ Internet-Draft QUIC Invariants October 2019 -Thomson Expires April 23, 2020 [Page 4] +Thomson Expires April 24, 2020 [Page 4] Internet-Draft QUIC Invariants October 2019 @@ -277,7 +277,7 @@ Internet-Draft QUIC Invariants October 2019 -Thomson Expires April 23, 2020 [Page 5] +Thomson Expires April 24, 2020 [Page 5] Internet-Draft QUIC Invariants October 2019 @@ -333,7 +333,7 @@ Internet-Draft QUIC Invariants October 2019 -Thomson Expires April 23, 2020 [Page 6] +Thomson Expires April 24, 2020 [Page 6] Internet-Draft QUIC Invariants October 2019 @@ -389,7 +389,7 @@ Internet-Draft QUIC Invariants October 2019 -Thomson Expires April 23, 2020 [Page 7] +Thomson Expires April 24, 2020 [Page 7] Internet-Draft QUIC Invariants October 2019 @@ -445,7 +445,7 @@ Appendix A. Incorrect Assumptions -Thomson Expires April 23, 2020 [Page 8] +Thomson Expires April 24, 2020 [Page 8] Internet-Draft QUIC Invariants October 2019 @@ -501,7 +501,7 @@ Author's Address -Thomson Expires April 23, 2020 [Page 9] +Thomson Expires April 24, 2020 [Page 9] Internet-Draft QUIC Invariants October 2019 @@ -557,4 +557,4 @@ Internet-Draft QUIC Invariants October 2019 -Thomson Expires April 23, 2020 [Page 10] +Thomson Expires April 24, 2020 [Page 10] diff --git a/draft-ietf-quic-qpack.html b/draft-ietf-quic-qpack.html index 5682599e83..1137c8e6c3 100644 --- a/draft-ietf-quic-qpack.html +++ b/draft-ietf-quic-qpack.html @@ -357,7 +357,7 @@ - + @@ -381,7 +381,7 @@ M. Bishop -Expires: April 23, 2020 +Expires: April 24, 2020 Akamai Technologies @@ -394,7 +394,7 @@ -October 21, 2019 +October 22, 2019 @@ -413,7 +413,7 @@

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

-

This Internet-Draft will expire on April 23, 2020.

+

This Internet-Draft will expire on April 24, 2020.

Copyright Notice

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

diff --git a/draft-ietf-quic-qpack.txt b/draft-ietf-quic-qpack.txt index 3e9ed09801..4858a81c2b 100644 --- a/draft-ietf-quic-qpack.txt +++ b/draft-ietf-quic-qpack.txt @@ -5,10 +5,10 @@ QUIC C. Krasic Internet-Draft Netflix Intended status: Standards Track M. Bishop -Expires: April 23, 2020 Akamai Technologies +Expires: April 24, 2020 Akamai Technologies A. Frindell, Ed. Facebook - October 21, 2019 + October 22, 2019 QPACK: Header Compression for HTTP/3 @@ -46,14 +46,14 @@ Status of This Memo time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 23, 2020. + This Internet-Draft will expire on April 24, 2020. -Krasic, et al. Expires April 23, 2020 [Page 1] +Krasic, et al. Expires April 24, 2020 [Page 1] Internet-Draft QPACK October 2019 @@ -109,7 +109,7 @@ Table of Contents -Krasic, et al. Expires April 23, 2020 [Page 2] +Krasic, et al. Expires April 24, 2020 [Page 2] Internet-Draft QPACK October 2019 @@ -165,7 +165,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 3] +Krasic, et al. Expires April 24, 2020 [Page 3] Internet-Draft QPACK October 2019 @@ -221,7 +221,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 4] +Krasic, et al. Expires April 24, 2020 [Page 4] Internet-Draft QPACK October 2019 @@ -277,7 +277,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 5] +Krasic, et al. Expires April 24, 2020 [Page 5] Internet-Draft QPACK October 2019 @@ -333,7 +333,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 6] +Krasic, et al. Expires April 24, 2020 [Page 6] Internet-Draft QPACK October 2019 @@ -389,7 +389,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 7] +Krasic, et al. Expires April 24, 2020 [Page 7] Internet-Draft QPACK October 2019 @@ -445,7 +445,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 8] +Krasic, et al. Expires April 24, 2020 [Page 8] Internet-Draft QPACK October 2019 @@ -501,7 +501,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 9] +Krasic, et al. Expires April 24, 2020 [Page 9] Internet-Draft QPACK October 2019 @@ -557,7 +557,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 10] +Krasic, et al. Expires April 24, 2020 [Page 10] Internet-Draft QPACK October 2019 @@ -613,7 +613,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 11] +Krasic, et al. Expires April 24, 2020 [Page 11] Internet-Draft QPACK October 2019 @@ -669,7 +669,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 12] +Krasic, et al. Expires April 24, 2020 [Page 12] Internet-Draft QPACK October 2019 @@ -725,7 +725,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 13] +Krasic, et al. Expires April 24, 2020 [Page 13] Internet-Draft QPACK October 2019 @@ -781,7 +781,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 14] +Krasic, et al. Expires April 24, 2020 [Page 14] Internet-Draft QPACK October 2019 @@ -837,7 +837,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 15] +Krasic, et al. Expires April 24, 2020 [Page 15] Internet-Draft QPACK October 2019 @@ -893,7 +893,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 16] +Krasic, et al. Expires April 24, 2020 [Page 16] Internet-Draft QPACK October 2019 @@ -949,7 +949,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 17] +Krasic, et al. Expires April 24, 2020 [Page 17] Internet-Draft QPACK October 2019 @@ -1005,7 +1005,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 18] +Krasic, et al. Expires April 24, 2020 [Page 18] Internet-Draft QPACK October 2019 @@ -1061,7 +1061,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 19] +Krasic, et al. Expires April 24, 2020 [Page 19] Internet-Draft QPACK October 2019 @@ -1117,7 +1117,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 20] +Krasic, et al. Expires April 24, 2020 [Page 20] Internet-Draft QPACK October 2019 @@ -1173,7 +1173,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 21] +Krasic, et al. Expires April 24, 2020 [Page 21] Internet-Draft QPACK October 2019 @@ -1229,7 +1229,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 22] +Krasic, et al. Expires April 24, 2020 [Page 22] Internet-Draft QPACK October 2019 @@ -1285,7 +1285,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 23] +Krasic, et al. Expires April 24, 2020 [Page 23] Internet-Draft QPACK October 2019 @@ -1341,7 +1341,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 24] +Krasic, et al. Expires April 24, 2020 [Page 24] Internet-Draft QPACK October 2019 @@ -1397,7 +1397,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 25] +Krasic, et al. Expires April 24, 2020 [Page 25] Internet-Draft QPACK October 2019 @@ -1453,7 +1453,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 26] +Krasic, et al. Expires April 24, 2020 [Page 26] Internet-Draft QPACK October 2019 @@ -1509,7 +1509,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 27] +Krasic, et al. Expires April 24, 2020 [Page 27] Internet-Draft QPACK October 2019 @@ -1565,7 +1565,7 @@ Appendix A. Static Table -Krasic, et al. Expires April 23, 2020 [Page 28] +Krasic, et al. Expires April 24, 2020 [Page 28] Internet-Draft QPACK October 2019 @@ -1621,7 +1621,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 29] +Krasic, et al. Expires April 24, 2020 [Page 29] Internet-Draft QPACK October 2019 @@ -1677,7 +1677,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 30] +Krasic, et al. Expires April 24, 2020 [Page 30] Internet-Draft QPACK October 2019 @@ -1733,7 +1733,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 31] +Krasic, et al. Expires April 24, 2020 [Page 31] Internet-Draft QPACK October 2019 @@ -1789,7 +1789,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 32] +Krasic, et al. Expires April 24, 2020 [Page 32] Internet-Draft QPACK October 2019 @@ -1845,7 +1845,7 @@ Appendix B. Sample One Pass Encoding Algorithm -Krasic, et al. Expires April 23, 2020 [Page 33] +Krasic, et al. Expires April 24, 2020 [Page 33] Internet-Draft QPACK October 2019 @@ -1901,7 +1901,7 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 34] +Krasic, et al. Expires April 24, 2020 [Page 34] Internet-Draft QPACK October 2019 @@ -1957,7 +1957,7 @@ C.6. Since draft-ietf-quic-qpack-03 -Krasic, et al. Expires April 23, 2020 [Page 35] +Krasic, et al. Expires April 24, 2020 [Page 35] Internet-Draft QPACK October 2019 @@ -2013,7 +2013,7 @@ C.10. Since draft-ietf-quic-qcram-00 -Krasic, et al. Expires April 23, 2020 [Page 36] +Krasic, et al. Expires April 24, 2020 [Page 36] Internet-Draft QPACK October 2019 @@ -2069,7 +2069,7 @@ Authors' Addresses -Krasic, et al. Expires April 23, 2020 [Page 37] +Krasic, et al. Expires April 24, 2020 [Page 37] Internet-Draft QPACK October 2019 @@ -2125,4 +2125,4 @@ Internet-Draft QPACK October 2019 -Krasic, et al. Expires April 23, 2020 [Page 38] +Krasic, et al. Expires April 24, 2020 [Page 38] diff --git a/draft-ietf-quic-recovery.html b/draft-ietf-quic-recovery.html index 96fa57ecb1..625af0d6ac 100644 --- a/draft-ietf-quic-recovery.html +++ b/draft-ietf-quic-recovery.html @@ -380,7 +380,7 @@ - + @@ -404,12 +404,12 @@ I. Swett, Ed. -Expires: April 23, 2020 +Expires: April 24, 2020 Google -October 21, 2019 +October 22, 2019 @@ -428,7 +428,7 @@

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

-

This Internet-Draft will expire on April 23, 2020.

+

This Internet-Draft will expire on April 24, 2020.

Copyright Notice

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

diff --git a/draft-ietf-quic-recovery.txt b/draft-ietf-quic-recovery.txt index 5048c9a092..8e86f04833 100644 --- a/draft-ietf-quic-recovery.txt +++ b/draft-ietf-quic-recovery.txt @@ -5,8 +5,8 @@ QUIC J. Iyengar, Ed. Internet-Draft Fastly Intended status: Standards Track I. Swett, Ed. -Expires: April 23, 2020 Google - October 21, 2019 +Expires: April 24, 2020 Google + October 22, 2019 QUIC Loss Detection and Congestion Control @@ -42,7 +42,7 @@ Status of This Memo time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 23, 2020. + This Internet-Draft will expire on April 24, 2020. Copyright Notice @@ -53,7 +53,7 @@ Copyright Notice -Iyengar & Swett Expires April 23, 2020 [Page 1] +Iyengar & Swett Expires April 24, 2020 [Page 1] Internet-Draft QUIC Loss Detection October 2019 @@ -109,7 +109,7 @@ Table of Contents -Iyengar & Swett Expires April 23, 2020 [Page 2] +Iyengar & Swett Expires April 24, 2020 [Page 2] Internet-Draft QUIC Loss Detection October 2019 @@ -165,7 +165,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 3] +Iyengar & Swett Expires April 24, 2020 [Page 3] Internet-Draft QUIC Loss Detection October 2019 @@ -221,7 +221,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 4] +Iyengar & Swett Expires April 24, 2020 [Page 4] Internet-Draft QUIC Loss Detection October 2019 @@ -277,7 +277,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 5] +Iyengar & Swett Expires April 24, 2020 [Page 5] Internet-Draft QUIC Loss Detection October 2019 @@ -333,7 +333,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 6] +Iyengar & Swett Expires April 24, 2020 [Page 6] Internet-Draft QUIC Loss Detection October 2019 @@ -389,7 +389,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 7] +Iyengar & Swett Expires April 24, 2020 [Page 7] Internet-Draft QUIC Loss Detection October 2019 @@ -445,7 +445,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 8] +Iyengar & Swett Expires April 24, 2020 [Page 8] Internet-Draft QUIC Loss Detection October 2019 @@ -501,7 +501,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 9] +Iyengar & Swett Expires April 24, 2020 [Page 9] Internet-Draft QUIC Loss Detection October 2019 @@ -557,7 +557,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 10] +Iyengar & Swett Expires April 24, 2020 [Page 10] Internet-Draft QUIC Loss Detection October 2019 @@ -613,7 +613,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 11] +Iyengar & Swett Expires April 24, 2020 [Page 11] Internet-Draft QUIC Loss Detection October 2019 @@ -669,7 +669,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 12] +Iyengar & Swett Expires April 24, 2020 [Page 12] Internet-Draft QUIC Loss Detection October 2019 @@ -725,7 +725,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 13] +Iyengar & Swett Expires April 24, 2020 [Page 13] Internet-Draft QUIC Loss Detection October 2019 @@ -781,7 +781,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 14] +Iyengar & Swett Expires April 24, 2020 [Page 14] Internet-Draft QUIC Loss Detection October 2019 @@ -837,7 +837,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 15] +Iyengar & Swett Expires April 24, 2020 [Page 15] Internet-Draft QUIC Loss Detection October 2019 @@ -893,7 +893,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 16] +Iyengar & Swett Expires April 24, 2020 [Page 16] Internet-Draft QUIC Loss Detection October 2019 @@ -949,7 +949,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 17] +Iyengar & Swett Expires April 24, 2020 [Page 17] Internet-Draft QUIC Loss Detection October 2019 @@ -1005,7 +1005,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 18] +Iyengar & Swett Expires April 24, 2020 [Page 18] Internet-Draft QUIC Loss Detection October 2019 @@ -1061,7 +1061,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 19] +Iyengar & Swett Expires April 24, 2020 [Page 19] Internet-Draft QUIC Loss Detection October 2019 @@ -1117,7 +1117,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 20] +Iyengar & Swett Expires April 24, 2020 [Page 20] Internet-Draft QUIC Loss Detection October 2019 @@ -1173,7 +1173,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 21] +Iyengar & Swett Expires April 24, 2020 [Page 21] Internet-Draft QUIC Loss Detection October 2019 @@ -1229,7 +1229,7 @@ A.1. Tracking Sent Packets -Iyengar & Swett Expires April 23, 2020 [Page 22] +Iyengar & Swett Expires April 24, 2020 [Page 22] Internet-Draft QUIC Loss Detection October 2019 @@ -1285,7 +1285,7 @@ A.2. Constants of interest -Iyengar & Swett Expires April 23, 2020 [Page 23] +Iyengar & Swett Expires April 24, 2020 [Page 23] Internet-Draft QUIC Loss Detection October 2019 @@ -1341,7 +1341,7 @@ A.4. Initialization -Iyengar & Swett Expires April 23, 2020 [Page 24] +Iyengar & Swett Expires April 24, 2020 [Page 24] Internet-Draft QUIC Loss Detection October 2019 @@ -1397,7 +1397,7 @@ A.6. On Receiving an Acknowledgment -Iyengar & Swett Expires April 23, 2020 [Page 25] +Iyengar & Swett Expires April 24, 2020 [Page 25] Internet-Draft QUIC Loss Detection October 2019 @@ -1453,7 +1453,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 26] +Iyengar & Swett Expires April 24, 2020 [Page 26] Internet-Draft QUIC Loss Detection October 2019 @@ -1509,7 +1509,7 @@ A.8. Setting the Loss Detection Timer -Iyengar & Swett Expires April 23, 2020 [Page 27] +Iyengar & Swett Expires April 24, 2020 [Page 27] Internet-Draft QUIC Loss Detection October 2019 @@ -1565,7 +1565,7 @@ Internet-Draft QUIC Loss Detection October 2019 -Iyengar & Swett Expires April 23, 2020 [Page 28] +Iyengar & Swett Expires April 24, 2020 [Page 28] Internet-Draft QUIC Loss Detection October 2019 @@ -1621,7 +1621,7 @@ A.10. Detecting Lost Packets -Iyengar & Swett Expires April 23, 2020 [Page 29] +Iyengar & Swett Expires April 24, 2020 [Page 29] Internet-Draft QUIC Loss Detection October 2019 @@ -1677,7 +1677,7 @@ B.1. Constants of interest -Iyengar & Swett Expires April 23, 2020 [Page 30] +Iyengar & Swett Expires April 24, 2020 [Page 30] Internet-Draft QUIC Loss Detection October 2019 @@ -1733,7 +1733,7 @@ B.2. Variables of interest -Iyengar & Swett Expires April 23, 2020 [Page 31] +Iyengar & Swett Expires April 24, 2020 [Page 31] Internet-Draft QUIC Loss Detection October 2019 @@ -1789,7 +1789,7 @@ B.5. On Packet Acknowledgement -Iyengar & Swett Expires April 23, 2020 [Page 32] +Iyengar & Swett Expires April 24, 2020 [Page 32] Internet-Draft QUIC Loss Detection October 2019 @@ -1845,7 +1845,7 @@ B.7. Process ECN Information -Iyengar & Swett Expires April 23, 2020 [Page 33] +Iyengar & Swett Expires April 24, 2020 [Page 33] Internet-Draft QUIC Loss Detection October 2019 @@ -1901,7 +1901,7 @@ C.2. Since draft-ietf-quic-recovery-21 -Iyengar & Swett Expires April 23, 2020 [Page 34] +Iyengar & Swett Expires April 24, 2020 [Page 34] Internet-Draft QUIC Loss Detection October 2019 @@ -1957,7 +1957,7 @@ C.5. Since draft-ietf-quic-recovery-18 -Iyengar & Swett Expires April 23, 2020 [Page 35] +Iyengar & Swett Expires April 24, 2020 [Page 35] Internet-Draft QUIC Loss Detection October 2019 @@ -2013,7 +2013,7 @@ C.7. Since draft-ietf-quic-recovery-16 -Iyengar & Swett Expires April 23, 2020 [Page 36] +Iyengar & Swett Expires April 24, 2020 [Page 36] Internet-Draft QUIC Loss Detection October 2019 @@ -2069,7 +2069,7 @@ C.12. Since draft-ietf-quic-recovery-10 -Iyengar & Swett Expires April 23, 2020 [Page 37] +Iyengar & Swett Expires April 24, 2020 [Page 37] Internet-Draft QUIC Loss Detection October 2019 @@ -2125,7 +2125,7 @@ C.20. Since draft-ietf-quic-recovery-02 -Iyengar & Swett Expires April 23, 2020 [Page 38] +Iyengar & Swett Expires April 24, 2020 [Page 38] Internet-Draft QUIC Loss Detection October 2019 @@ -2181,4 +2181,4 @@ Authors' Addresses -Iyengar & Swett Expires April 23, 2020 [Page 39] +Iyengar & Swett Expires April 24, 2020 [Page 39] diff --git a/draft-ietf-quic-tls.html b/draft-ietf-quic-tls.html index 217b7bc880..34e70e3381 100644 --- a/draft-ietf-quic-tls.html +++ b/draft-ietf-quic-tls.html @@ -367,7 +367,7 @@ - + @@ -391,12 +391,12 @@ S. Turner, Ed. -Expires: April 23, 2020 +Expires: April 24, 2020 sn3rd -October 21, 2019 +October 22, 2019 @@ -415,7 +415,7 @@

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

-

This Internet-Draft will expire on April 23, 2020.

+

This Internet-Draft will expire on April 24, 2020.

Copyright Notice

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

@@ -1331,7 +1331,7 @@

[HTTP2-TLS13] -Benjamin, D., "Using TLS 1.3 with HTTP/2", Internet-Draft draft-ietf-httpbis-http2-tls13-02, September 2019. +Benjamin, D., "Using TLS 1.3 with HTTP/2", Internet-Draft draft-ietf-httpbis-http2-tls13-03, October 2019. [IMC] diff --git a/draft-ietf-quic-tls.txt b/draft-ietf-quic-tls.txt index 028ce74b35..d227da4036 100644 --- a/draft-ietf-quic-tls.txt +++ b/draft-ietf-quic-tls.txt @@ -5,8 +5,8 @@ QUIC M. Thomson, Ed. Internet-Draft Mozilla Intended status: Standards Track S. Turner, Ed. -Expires: April 23, 2020 sn3rd - October 21, 2019 +Expires: April 24, 2020 sn3rd + October 22, 2019 Using TLS to Secure QUIC @@ -42,7 +42,7 @@ Status of This Memo time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 23, 2020. + This Internet-Draft will expire on April 24, 2020. Copyright Notice @@ -53,7 +53,7 @@ Copyright Notice -Thomson & Turner Expires April 23, 2020 [Page 1] +Thomson & Turner Expires April 24, 2020 [Page 1] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -109,7 +109,7 @@ Table of Contents -Thomson & Turner Expires April 23, 2020 [Page 2] +Thomson & Turner Expires April 24, 2020 [Page 2] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -165,7 +165,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 3] +Thomson & Turner Expires April 24, 2020 [Page 3] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -221,7 +221,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 4] +Thomson & Turner Expires April 24, 2020 [Page 4] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -277,7 +277,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 5] +Thomson & Turner Expires April 24, 2020 [Page 5] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -333,7 +333,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 6] +Thomson & Turner Expires April 24, 2020 [Page 6] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -389,7 +389,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 7] +Thomson & Turner Expires April 24, 2020 [Page 7] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -445,7 +445,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 8] +Thomson & Turner Expires April 24, 2020 [Page 8] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -501,7 +501,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 9] +Thomson & Turner Expires April 24, 2020 [Page 9] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -557,7 +557,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 10] +Thomson & Turner Expires April 24, 2020 [Page 10] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -613,7 +613,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 11] +Thomson & Turner Expires April 24, 2020 [Page 11] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -669,7 +669,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 12] +Thomson & Turner Expires April 24, 2020 [Page 12] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -725,7 +725,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 13] +Thomson & Turner Expires April 24, 2020 [Page 13] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -781,7 +781,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 14] +Thomson & Turner Expires April 24, 2020 [Page 14] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -837,7 +837,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 15] +Thomson & Turner Expires April 24, 2020 [Page 15] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -893,7 +893,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 16] +Thomson & Turner Expires April 24, 2020 [Page 16] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -949,7 +949,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 17] +Thomson & Turner Expires April 24, 2020 [Page 17] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1005,7 +1005,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 18] +Thomson & Turner Expires April 24, 2020 [Page 18] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1061,7 +1061,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 19] +Thomson & Turner Expires April 24, 2020 [Page 19] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1117,7 +1117,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 20] +Thomson & Turner Expires April 24, 2020 [Page 20] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1173,7 +1173,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 21] +Thomson & Turner Expires April 24, 2020 [Page 21] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1229,7 +1229,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 22] +Thomson & Turner Expires April 24, 2020 [Page 22] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1285,7 +1285,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 23] +Thomson & Turner Expires April 24, 2020 [Page 23] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1341,7 +1341,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 24] +Thomson & Turner Expires April 24, 2020 [Page 24] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1397,7 +1397,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 25] +Thomson & Turner Expires April 24, 2020 [Page 25] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1453,7 +1453,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 26] +Thomson & Turner Expires April 24, 2020 [Page 26] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1509,7 +1509,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 27] +Thomson & Turner Expires April 24, 2020 [Page 27] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1565,7 +1565,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 28] +Thomson & Turner Expires April 24, 2020 [Page 28] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1621,7 +1621,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 29] +Thomson & Turner Expires April 24, 2020 [Page 29] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1677,7 +1677,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 30] +Thomson & Turner Expires April 24, 2020 [Page 30] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1733,7 +1733,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 31] +Thomson & Turner Expires April 24, 2020 [Page 31] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1789,7 +1789,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 32] +Thomson & Turner Expires April 24, 2020 [Page 32] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1845,7 +1845,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 33] +Thomson & Turner Expires April 24, 2020 [Page 33] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1901,7 +1901,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 34] +Thomson & Turner Expires April 24, 2020 [Page 34] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -1957,7 +1957,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 35] +Thomson & Turner Expires April 24, 2020 [Page 35] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2013,7 +2013,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 36] +Thomson & Turner Expires April 24, 2020 [Page 36] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2049,7 +2049,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 [HTTP2-TLS13] Benjamin, D., "Using TLS 1.3 with HTTP/2", draft-ietf- - httpbis-http2-tls13-02 (work in progress), September 2019. + httpbis-http2-tls13-03 (work in progress), October 2019. [IMC] Katz, J. and Y. Lindell, "Introduction to Modern Cryptography, Second Edition", ISBN 978-1466570269, @@ -2069,7 +2069,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 37] +Thomson & Turner Expires April 24, 2020 [Page 37] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2125,7 +2125,7 @@ A.1. Keys -Thomson & Turner Expires April 23, 2020 [Page 38] +Thomson & Turner Expires April 24, 2020 [Page 38] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2181,7 +2181,7 @@ A.2. Client Initial -Thomson & Turner Expires April 23, 2020 [Page 39] +Thomson & Turner Expires April 24, 2020 [Page 39] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2237,7 +2237,7 @@ Internet-Draft Using TLS to Secure QUIC October 2019 -Thomson & Turner Expires April 23, 2020 [Page 40] +Thomson & Turner Expires April 24, 2020 [Page 40] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2293,7 +2293,7 @@ A.3. Server Initial -Thomson & Turner Expires April 23, 2020 [Page 41] +Thomson & Turner Expires April 24, 2020 [Page 41] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2349,7 +2349,7 @@ B.4. Since draft-ietf-quic-tls-18 -Thomson & Turner Expires April 23, 2020 [Page 42] +Thomson & Turner Expires April 24, 2020 [Page 42] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2405,7 +2405,7 @@ B.8. Since draft-ietf-quic-tls-12 -Thomson & Turner Expires April 23, 2020 [Page 43] +Thomson & Turner Expires April 24, 2020 [Page 43] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2461,7 +2461,7 @@ B.17. Since draft-ietf-quic-tls-02 -Thomson & Turner Expires April 23, 2020 [Page 44] +Thomson & Turner Expires April 24, 2020 [Page 44] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2517,7 +2517,7 @@ B.20. Since draft-thomson-quic-tls-01 -Thomson & Turner Expires April 23, 2020 [Page 45] +Thomson & Turner Expires April 24, 2020 [Page 45] Internet-Draft Using TLS to Secure QUIC October 2019 @@ -2573,4 +2573,4 @@ Authors' Addresses -Thomson & Turner Expires April 23, 2020 [Page 46] +Thomson & Turner Expires April 24, 2020 [Page 46] diff --git a/draft-ietf-quic-transport.html b/draft-ietf-quic-transport.html index b1e752373e..24cb03e5e2 100644 --- a/draft-ietf-quic-transport.html +++ b/draft-ietf-quic-transport.html @@ -477,7 +477,7 @@ - + @@ -501,12 +501,12 @@ M. Thomson, Ed. -Expires: April 23, 2020 +Expires: April 24, 2020 Mozilla -October 21, 2019 +October 22, 2019 @@ -525,7 +525,7 @@

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

-

This Internet-Draft will expire on April 23, 2020.

+

This Internet-Draft will expire on April 24, 2020.

Copyright Notice

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

diff --git a/draft-ietf-quic-transport.txt b/draft-ietf-quic-transport.txt index 28e8195919..e2a3070e00 100644 --- a/draft-ietf-quic-transport.txt +++ b/draft-ietf-quic-transport.txt @@ -5,8 +5,8 @@ QUIC J. Iyengar, Ed. Internet-Draft Fastly Intended status: Standards Track M. Thomson, Ed. -Expires: April 23, 2020 Mozilla - October 21, 2019 +Expires: April 24, 2020 Mozilla + October 22, 2019 QUIC: A UDP-Based Multiplexed and Secure Transport @@ -43,7 +43,7 @@ Status of This Memo time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 23, 2020. + This Internet-Draft will expire on April 24, 2020. Copyright Notice @@ -53,7 +53,7 @@ Copyright Notice -Iyengar & Thomson Expires April 23, 2020 [Page 1] +Iyengar & Thomson Expires April 24, 2020 [Page 1] Internet-Draft QUIC Transport Protocol October 2019 @@ -109,7 +109,7 @@ Table of Contents -Iyengar & Thomson Expires April 23, 2020 [Page 2] +Iyengar & Thomson Expires April 24, 2020 [Page 2] Internet-Draft QUIC Transport Protocol October 2019 @@ -165,7 +165,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 3] +Iyengar & Thomson Expires April 24, 2020 [Page 3] Internet-Draft QUIC Transport Protocol October 2019 @@ -221,7 +221,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 4] +Iyengar & Thomson Expires April 24, 2020 [Page 4] Internet-Draft QUIC Transport Protocol October 2019 @@ -277,7 +277,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 5] +Iyengar & Thomson Expires April 24, 2020 [Page 5] Internet-Draft QUIC Transport Protocol October 2019 @@ -333,7 +333,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 6] +Iyengar & Thomson Expires April 24, 2020 [Page 6] Internet-Draft QUIC Transport Protocol October 2019 @@ -389,7 +389,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 7] +Iyengar & Thomson Expires April 24, 2020 [Page 7] Internet-Draft QUIC Transport Protocol October 2019 @@ -445,7 +445,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 8] +Iyengar & Thomson Expires April 24, 2020 [Page 8] Internet-Draft QUIC Transport Protocol October 2019 @@ -501,7 +501,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 9] +Iyengar & Thomson Expires April 24, 2020 [Page 9] Internet-Draft QUIC Transport Protocol October 2019 @@ -557,7 +557,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 10] +Iyengar & Thomson Expires April 24, 2020 [Page 10] Internet-Draft QUIC Transport Protocol October 2019 @@ -613,7 +613,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 11] +Iyengar & Thomson Expires April 24, 2020 [Page 11] Internet-Draft QUIC Transport Protocol October 2019 @@ -669,7 +669,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 12] +Iyengar & Thomson Expires April 24, 2020 [Page 12] Internet-Draft QUIC Transport Protocol October 2019 @@ -725,7 +725,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 13] +Iyengar & Thomson Expires April 24, 2020 [Page 13] Internet-Draft QUIC Transport Protocol October 2019 @@ -781,7 +781,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 14] +Iyengar & Thomson Expires April 24, 2020 [Page 14] Internet-Draft QUIC Transport Protocol October 2019 @@ -837,7 +837,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 15] +Iyengar & Thomson Expires April 24, 2020 [Page 15] Internet-Draft QUIC Transport Protocol October 2019 @@ -893,7 +893,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 16] +Iyengar & Thomson Expires April 24, 2020 [Page 16] Internet-Draft QUIC Transport Protocol October 2019 @@ -949,7 +949,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 17] +Iyengar & Thomson Expires April 24, 2020 [Page 17] Internet-Draft QUIC Transport Protocol October 2019 @@ -1005,7 +1005,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 18] +Iyengar & Thomson Expires April 24, 2020 [Page 18] Internet-Draft QUIC Transport Protocol October 2019 @@ -1061,7 +1061,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 19] +Iyengar & Thomson Expires April 24, 2020 [Page 19] Internet-Draft QUIC Transport Protocol October 2019 @@ -1117,7 +1117,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 20] +Iyengar & Thomson Expires April 24, 2020 [Page 20] Internet-Draft QUIC Transport Protocol October 2019 @@ -1173,7 +1173,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 21] +Iyengar & Thomson Expires April 24, 2020 [Page 21] Internet-Draft QUIC Transport Protocol October 2019 @@ -1229,7 +1229,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 22] +Iyengar & Thomson Expires April 24, 2020 [Page 22] Internet-Draft QUIC Transport Protocol October 2019 @@ -1285,7 +1285,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 23] +Iyengar & Thomson Expires April 24, 2020 [Page 23] Internet-Draft QUIC Transport Protocol October 2019 @@ -1341,7 +1341,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 24] +Iyengar & Thomson Expires April 24, 2020 [Page 24] Internet-Draft QUIC Transport Protocol October 2019 @@ -1397,7 +1397,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 25] +Iyengar & Thomson Expires April 24, 2020 [Page 25] Internet-Draft QUIC Transport Protocol October 2019 @@ -1453,7 +1453,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 26] +Iyengar & Thomson Expires April 24, 2020 [Page 26] Internet-Draft QUIC Transport Protocol October 2019 @@ -1509,7 +1509,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 27] +Iyengar & Thomson Expires April 24, 2020 [Page 27] Internet-Draft QUIC Transport Protocol October 2019 @@ -1565,7 +1565,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 28] +Iyengar & Thomson Expires April 24, 2020 [Page 28] Internet-Draft QUIC Transport Protocol October 2019 @@ -1621,7 +1621,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 29] +Iyengar & Thomson Expires April 24, 2020 [Page 29] Internet-Draft QUIC Transport Protocol October 2019 @@ -1677,7 +1677,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 30] +Iyengar & Thomson Expires April 24, 2020 [Page 30] Internet-Draft QUIC Transport Protocol October 2019 @@ -1733,7 +1733,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 31] +Iyengar & Thomson Expires April 24, 2020 [Page 31] Internet-Draft QUIC Transport Protocol October 2019 @@ -1789,7 +1789,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 32] +Iyengar & Thomson Expires April 24, 2020 [Page 32] Internet-Draft QUIC Transport Protocol October 2019 @@ -1845,7 +1845,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 33] +Iyengar & Thomson Expires April 24, 2020 [Page 33] Internet-Draft QUIC Transport Protocol October 2019 @@ -1901,7 +1901,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 34] +Iyengar & Thomson Expires April 24, 2020 [Page 34] Internet-Draft QUIC Transport Protocol October 2019 @@ -1957,7 +1957,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 35] +Iyengar & Thomson Expires April 24, 2020 [Page 35] Internet-Draft QUIC Transport Protocol October 2019 @@ -2013,7 +2013,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 36] +Iyengar & Thomson Expires April 24, 2020 [Page 36] Internet-Draft QUIC Transport Protocol October 2019 @@ -2069,7 +2069,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 37] +Iyengar & Thomson Expires April 24, 2020 [Page 37] Internet-Draft QUIC Transport Protocol October 2019 @@ -2125,7 +2125,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 38] +Iyengar & Thomson Expires April 24, 2020 [Page 38] Internet-Draft QUIC Transport Protocol October 2019 @@ -2181,7 +2181,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 39] +Iyengar & Thomson Expires April 24, 2020 [Page 39] Internet-Draft QUIC Transport Protocol October 2019 @@ -2237,7 +2237,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 40] +Iyengar & Thomson Expires April 24, 2020 [Page 40] Internet-Draft QUIC Transport Protocol October 2019 @@ -2293,7 +2293,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 41] +Iyengar & Thomson Expires April 24, 2020 [Page 41] Internet-Draft QUIC Transport Protocol October 2019 @@ -2349,7 +2349,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 42] +Iyengar & Thomson Expires April 24, 2020 [Page 42] Internet-Draft QUIC Transport Protocol October 2019 @@ -2405,7 +2405,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 43] +Iyengar & Thomson Expires April 24, 2020 [Page 43] Internet-Draft QUIC Transport Protocol October 2019 @@ -2461,7 +2461,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 44] +Iyengar & Thomson Expires April 24, 2020 [Page 44] Internet-Draft QUIC Transport Protocol October 2019 @@ -2517,7 +2517,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 45] +Iyengar & Thomson Expires April 24, 2020 [Page 45] Internet-Draft QUIC Transport Protocol October 2019 @@ -2573,7 +2573,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 46] +Iyengar & Thomson Expires April 24, 2020 [Page 46] Internet-Draft QUIC Transport Protocol October 2019 @@ -2629,7 +2629,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 47] +Iyengar & Thomson Expires April 24, 2020 [Page 47] Internet-Draft QUIC Transport Protocol October 2019 @@ -2685,7 +2685,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 48] +Iyengar & Thomson Expires April 24, 2020 [Page 48] Internet-Draft QUIC Transport Protocol October 2019 @@ -2741,7 +2741,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 49] +Iyengar & Thomson Expires April 24, 2020 [Page 49] Internet-Draft QUIC Transport Protocol October 2019 @@ -2797,7 +2797,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 50] +Iyengar & Thomson Expires April 24, 2020 [Page 50] Internet-Draft QUIC Transport Protocol October 2019 @@ -2853,7 +2853,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 51] +Iyengar & Thomson Expires April 24, 2020 [Page 51] Internet-Draft QUIC Transport Protocol October 2019 @@ -2909,7 +2909,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 52] +Iyengar & Thomson Expires April 24, 2020 [Page 52] Internet-Draft QUIC Transport Protocol October 2019 @@ -2965,7 +2965,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 53] +Iyengar & Thomson Expires April 24, 2020 [Page 53] Internet-Draft QUIC Transport Protocol October 2019 @@ -3021,7 +3021,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 54] +Iyengar & Thomson Expires April 24, 2020 [Page 54] Internet-Draft QUIC Transport Protocol October 2019 @@ -3077,7 +3077,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 55] +Iyengar & Thomson Expires April 24, 2020 [Page 55] Internet-Draft QUIC Transport Protocol October 2019 @@ -3133,7 +3133,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 56] +Iyengar & Thomson Expires April 24, 2020 [Page 56] Internet-Draft QUIC Transport Protocol October 2019 @@ -3189,7 +3189,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 57] +Iyengar & Thomson Expires April 24, 2020 [Page 57] Internet-Draft QUIC Transport Protocol October 2019 @@ -3245,7 +3245,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 58] +Iyengar & Thomson Expires April 24, 2020 [Page 58] Internet-Draft QUIC Transport Protocol October 2019 @@ -3301,7 +3301,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 59] +Iyengar & Thomson Expires April 24, 2020 [Page 59] Internet-Draft QUIC Transport Protocol October 2019 @@ -3357,7 +3357,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 60] +Iyengar & Thomson Expires April 24, 2020 [Page 60] Internet-Draft QUIC Transport Protocol October 2019 @@ -3413,7 +3413,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 61] +Iyengar & Thomson Expires April 24, 2020 [Page 61] Internet-Draft QUIC Transport Protocol October 2019 @@ -3469,7 +3469,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 62] +Iyengar & Thomson Expires April 24, 2020 [Page 62] Internet-Draft QUIC Transport Protocol October 2019 @@ -3525,7 +3525,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 63] +Iyengar & Thomson Expires April 24, 2020 [Page 63] Internet-Draft QUIC Transport Protocol October 2019 @@ -3581,7 +3581,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 64] +Iyengar & Thomson Expires April 24, 2020 [Page 64] Internet-Draft QUIC Transport Protocol October 2019 @@ -3637,7 +3637,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 65] +Iyengar & Thomson Expires April 24, 2020 [Page 65] Internet-Draft QUIC Transport Protocol October 2019 @@ -3693,7 +3693,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 66] +Iyengar & Thomson Expires April 24, 2020 [Page 66] Internet-Draft QUIC Transport Protocol October 2019 @@ -3749,7 +3749,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 67] +Iyengar & Thomson Expires April 24, 2020 [Page 67] Internet-Draft QUIC Transport Protocol October 2019 @@ -3805,7 +3805,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 68] +Iyengar & Thomson Expires April 24, 2020 [Page 68] Internet-Draft QUIC Transport Protocol October 2019 @@ -3861,7 +3861,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 69] +Iyengar & Thomson Expires April 24, 2020 [Page 69] Internet-Draft QUIC Transport Protocol October 2019 @@ -3917,7 +3917,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 70] +Iyengar & Thomson Expires April 24, 2020 [Page 70] Internet-Draft QUIC Transport Protocol October 2019 @@ -3973,7 +3973,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 71] +Iyengar & Thomson Expires April 24, 2020 [Page 71] Internet-Draft QUIC Transport Protocol October 2019 @@ -4029,7 +4029,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 72] +Iyengar & Thomson Expires April 24, 2020 [Page 72] Internet-Draft QUIC Transport Protocol October 2019 @@ -4085,7 +4085,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 73] +Iyengar & Thomson Expires April 24, 2020 [Page 73] Internet-Draft QUIC Transport Protocol October 2019 @@ -4141,7 +4141,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 74] +Iyengar & Thomson Expires April 24, 2020 [Page 74] Internet-Draft QUIC Transport Protocol October 2019 @@ -4197,7 +4197,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 75] +Iyengar & Thomson Expires April 24, 2020 [Page 75] Internet-Draft QUIC Transport Protocol October 2019 @@ -4253,7 +4253,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 76] +Iyengar & Thomson Expires April 24, 2020 [Page 76] Internet-Draft QUIC Transport Protocol October 2019 @@ -4309,7 +4309,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 77] +Iyengar & Thomson Expires April 24, 2020 [Page 77] Internet-Draft QUIC Transport Protocol October 2019 @@ -4365,7 +4365,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 78] +Iyengar & Thomson Expires April 24, 2020 [Page 78] Internet-Draft QUIC Transport Protocol October 2019 @@ -4421,7 +4421,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 79] +Iyengar & Thomson Expires April 24, 2020 [Page 79] Internet-Draft QUIC Transport Protocol October 2019 @@ -4477,7 +4477,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 80] +Iyengar & Thomson Expires April 24, 2020 [Page 80] Internet-Draft QUIC Transport Protocol October 2019 @@ -4533,7 +4533,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 81] +Iyengar & Thomson Expires April 24, 2020 [Page 81] Internet-Draft QUIC Transport Protocol October 2019 @@ -4589,7 +4589,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 82] +Iyengar & Thomson Expires April 24, 2020 [Page 82] Internet-Draft QUIC Transport Protocol October 2019 @@ -4645,7 +4645,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 83] +Iyengar & Thomson Expires April 24, 2020 [Page 83] Internet-Draft QUIC Transport Protocol October 2019 @@ -4701,7 +4701,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 84] +Iyengar & Thomson Expires April 24, 2020 [Page 84] Internet-Draft QUIC Transport Protocol October 2019 @@ -4757,7 +4757,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 85] +Iyengar & Thomson Expires April 24, 2020 [Page 85] Internet-Draft QUIC Transport Protocol October 2019 @@ -4813,7 +4813,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 86] +Iyengar & Thomson Expires April 24, 2020 [Page 86] Internet-Draft QUIC Transport Protocol October 2019 @@ -4869,7 +4869,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 87] +Iyengar & Thomson Expires April 24, 2020 [Page 87] Internet-Draft QUIC Transport Protocol October 2019 @@ -4925,7 +4925,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 88] +Iyengar & Thomson Expires April 24, 2020 [Page 88] Internet-Draft QUIC Transport Protocol October 2019 @@ -4981,7 +4981,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 89] +Iyengar & Thomson Expires April 24, 2020 [Page 89] Internet-Draft QUIC Transport Protocol October 2019 @@ -5037,7 +5037,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 90] +Iyengar & Thomson Expires April 24, 2020 [Page 90] Internet-Draft QUIC Transport Protocol October 2019 @@ -5093,7 +5093,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 91] +Iyengar & Thomson Expires April 24, 2020 [Page 91] Internet-Draft QUIC Transport Protocol October 2019 @@ -5149,7 +5149,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 92] +Iyengar & Thomson Expires April 24, 2020 [Page 92] Internet-Draft QUIC Transport Protocol October 2019 @@ -5205,7 +5205,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 93] +Iyengar & Thomson Expires April 24, 2020 [Page 93] Internet-Draft QUIC Transport Protocol October 2019 @@ -5261,7 +5261,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 94] +Iyengar & Thomson Expires April 24, 2020 [Page 94] Internet-Draft QUIC Transport Protocol October 2019 @@ -5317,7 +5317,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 95] +Iyengar & Thomson Expires April 24, 2020 [Page 95] Internet-Draft QUIC Transport Protocol October 2019 @@ -5373,7 +5373,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 96] +Iyengar & Thomson Expires April 24, 2020 [Page 96] Internet-Draft QUIC Transport Protocol October 2019 @@ -5429,7 +5429,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 97] +Iyengar & Thomson Expires April 24, 2020 [Page 97] Internet-Draft QUIC Transport Protocol October 2019 @@ -5485,7 +5485,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 98] +Iyengar & Thomson Expires April 24, 2020 [Page 98] Internet-Draft QUIC Transport Protocol October 2019 @@ -5541,7 +5541,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 99] +Iyengar & Thomson Expires April 24, 2020 [Page 99] Internet-Draft QUIC Transport Protocol October 2019 @@ -5597,7 +5597,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 100] +Iyengar & Thomson Expires April 24, 2020 [Page 100] Internet-Draft QUIC Transport Protocol October 2019 @@ -5653,7 +5653,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 101] +Iyengar & Thomson Expires April 24, 2020 [Page 101] Internet-Draft QUIC Transport Protocol October 2019 @@ -5709,7 +5709,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 102] +Iyengar & Thomson Expires April 24, 2020 [Page 102] Internet-Draft QUIC Transport Protocol October 2019 @@ -5765,7 +5765,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 103] +Iyengar & Thomson Expires April 24, 2020 [Page 103] Internet-Draft QUIC Transport Protocol October 2019 @@ -5821,7 +5821,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 104] +Iyengar & Thomson Expires April 24, 2020 [Page 104] Internet-Draft QUIC Transport Protocol October 2019 @@ -5877,7 +5877,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 105] +Iyengar & Thomson Expires April 24, 2020 [Page 105] Internet-Draft QUIC Transport Protocol October 2019 @@ -5933,7 +5933,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 106] +Iyengar & Thomson Expires April 24, 2020 [Page 106] Internet-Draft QUIC Transport Protocol October 2019 @@ -5989,7 +5989,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 107] +Iyengar & Thomson Expires April 24, 2020 [Page 107] Internet-Draft QUIC Transport Protocol October 2019 @@ -6045,7 +6045,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 108] +Iyengar & Thomson Expires April 24, 2020 [Page 108] Internet-Draft QUIC Transport Protocol October 2019 @@ -6101,7 +6101,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 109] +Iyengar & Thomson Expires April 24, 2020 [Page 109] Internet-Draft QUIC Transport Protocol October 2019 @@ -6157,7 +6157,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 110] +Iyengar & Thomson Expires April 24, 2020 [Page 110] Internet-Draft QUIC Transport Protocol October 2019 @@ -6213,7 +6213,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 111] +Iyengar & Thomson Expires April 24, 2020 [Page 111] Internet-Draft QUIC Transport Protocol October 2019 @@ -6269,7 +6269,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 112] +Iyengar & Thomson Expires April 24, 2020 [Page 112] Internet-Draft QUIC Transport Protocol October 2019 @@ -6325,7 +6325,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 113] +Iyengar & Thomson Expires April 24, 2020 [Page 113] Internet-Draft QUIC Transport Protocol October 2019 @@ -6381,7 +6381,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 114] +Iyengar & Thomson Expires April 24, 2020 [Page 114] Internet-Draft QUIC Transport Protocol October 2019 @@ -6437,7 +6437,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 115] +Iyengar & Thomson Expires April 24, 2020 [Page 115] Internet-Draft QUIC Transport Protocol October 2019 @@ -6493,7 +6493,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 116] +Iyengar & Thomson Expires April 24, 2020 [Page 116] Internet-Draft QUIC Transport Protocol October 2019 @@ -6549,7 +6549,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 117] +Iyengar & Thomson Expires April 24, 2020 [Page 117] Internet-Draft QUIC Transport Protocol October 2019 @@ -6605,7 +6605,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 118] +Iyengar & Thomson Expires April 24, 2020 [Page 118] Internet-Draft QUIC Transport Protocol October 2019 @@ -6661,7 +6661,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 119] +Iyengar & Thomson Expires April 24, 2020 [Page 119] Internet-Draft QUIC Transport Protocol October 2019 @@ -6717,7 +6717,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 120] +Iyengar & Thomson Expires April 24, 2020 [Page 120] Internet-Draft QUIC Transport Protocol October 2019 @@ -6773,7 +6773,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 121] +Iyengar & Thomson Expires April 24, 2020 [Page 121] Internet-Draft QUIC Transport Protocol October 2019 @@ -6829,7 +6829,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 122] +Iyengar & Thomson Expires April 24, 2020 [Page 122] Internet-Draft QUIC Transport Protocol October 2019 @@ -6885,7 +6885,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 123] +Iyengar & Thomson Expires April 24, 2020 [Page 123] Internet-Draft QUIC Transport Protocol October 2019 @@ -6941,7 +6941,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 124] +Iyengar & Thomson Expires April 24, 2020 [Page 124] Internet-Draft QUIC Transport Protocol October 2019 @@ -6997,7 +6997,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 125] +Iyengar & Thomson Expires April 24, 2020 [Page 125] Internet-Draft QUIC Transport Protocol October 2019 @@ -7053,7 +7053,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 126] +Iyengar & Thomson Expires April 24, 2020 [Page 126] Internet-Draft QUIC Transport Protocol October 2019 @@ -7109,7 +7109,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 127] +Iyengar & Thomson Expires April 24, 2020 [Page 127] Internet-Draft QUIC Transport Protocol October 2019 @@ -7165,7 +7165,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 128] +Iyengar & Thomson Expires April 24, 2020 [Page 128] Internet-Draft QUIC Transport Protocol October 2019 @@ -7221,7 +7221,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 129] +Iyengar & Thomson Expires April 24, 2020 [Page 129] Internet-Draft QUIC Transport Protocol October 2019 @@ -7277,7 +7277,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 130] +Iyengar & Thomson Expires April 24, 2020 [Page 130] Internet-Draft QUIC Transport Protocol October 2019 @@ -7333,7 +7333,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 131] +Iyengar & Thomson Expires April 24, 2020 [Page 131] Internet-Draft QUIC Transport Protocol October 2019 @@ -7389,7 +7389,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 132] +Iyengar & Thomson Expires April 24, 2020 [Page 132] Internet-Draft QUIC Transport Protocol October 2019 @@ -7445,7 +7445,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 133] +Iyengar & Thomson Expires April 24, 2020 [Page 133] Internet-Draft QUIC Transport Protocol October 2019 @@ -7501,7 +7501,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 134] +Iyengar & Thomson Expires April 24, 2020 [Page 134] Internet-Draft QUIC Transport Protocol October 2019 @@ -7557,7 +7557,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 135] +Iyengar & Thomson Expires April 24, 2020 [Page 135] Internet-Draft QUIC Transport Protocol October 2019 @@ -7613,7 +7613,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 136] +Iyengar & Thomson Expires April 24, 2020 [Page 136] Internet-Draft QUIC Transport Protocol October 2019 @@ -7669,7 +7669,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 137] +Iyengar & Thomson Expires April 24, 2020 [Page 137] Internet-Draft QUIC Transport Protocol October 2019 @@ -7725,7 +7725,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 138] +Iyengar & Thomson Expires April 24, 2020 [Page 138] Internet-Draft QUIC Transport Protocol October 2019 @@ -7781,7 +7781,7 @@ Appendix A. Sample Packet Number Decoding Algorithm -Iyengar & Thomson Expires April 23, 2020 [Page 139] +Iyengar & Thomson Expires April 24, 2020 [Page 139] Internet-Draft QUIC Transport Protocol October 2019 @@ -7837,7 +7837,7 @@ B.1. Since draft-ietf-quic-transport-22 -Iyengar & Thomson Expires April 23, 2020 [Page 140] +Iyengar & Thomson Expires April 24, 2020 [Page 140] Internet-Draft QUIC Transport Protocol October 2019 @@ -7893,7 +7893,7 @@ B.3. Since draft-ietf-quic-transport-20 -Iyengar & Thomson Expires April 23, 2020 [Page 141] +Iyengar & Thomson Expires April 24, 2020 [Page 141] Internet-Draft QUIC Transport Protocol October 2019 @@ -7949,7 +7949,7 @@ B.5. Since draft-ietf-quic-transport-18 -Iyengar & Thomson Expires April 23, 2020 [Page 142] +Iyengar & Thomson Expires April 24, 2020 [Page 142] Internet-Draft QUIC Transport Protocol October 2019 @@ -8005,7 +8005,7 @@ B.6. Since draft-ietf-quic-transport-17 -Iyengar & Thomson Expires April 23, 2020 [Page 143] +Iyengar & Thomson Expires April 24, 2020 [Page 143] Internet-Draft QUIC Transport Protocol October 2019 @@ -8061,7 +8061,7 @@ B.7. Since draft-ietf-quic-transport-16 -Iyengar & Thomson Expires April 23, 2020 [Page 144] +Iyengar & Thomson Expires April 24, 2020 [Page 144] Internet-Draft QUIC Transport Protocol October 2019 @@ -8117,7 +8117,7 @@ B.10. Since draft-ietf-quic-transport-13 -Iyengar & Thomson Expires April 23, 2020 [Page 145] +Iyengar & Thomson Expires April 24, 2020 [Page 145] Internet-Draft QUIC Transport Protocol October 2019 @@ -8173,7 +8173,7 @@ B.11. Since draft-ietf-quic-transport-12 -Iyengar & Thomson Expires April 23, 2020 [Page 146] +Iyengar & Thomson Expires April 24, 2020 [Page 146] Internet-Draft QUIC Transport Protocol October 2019 @@ -8229,7 +8229,7 @@ B.13. Since draft-ietf-quic-transport-10 -Iyengar & Thomson Expires April 23, 2020 [Page 147] +Iyengar & Thomson Expires April 24, 2020 [Page 147] Internet-Draft QUIC Transport Protocol October 2019 @@ -8285,7 +8285,7 @@ B.14. Since draft-ietf-quic-transport-09 -Iyengar & Thomson Expires April 23, 2020 [Page 148] +Iyengar & Thomson Expires April 24, 2020 [Page 148] Internet-Draft QUIC Transport Protocol October 2019 @@ -8341,7 +8341,7 @@ B.16. Since draft-ietf-quic-transport-07 -Iyengar & Thomson Expires April 23, 2020 [Page 149] +Iyengar & Thomson Expires April 24, 2020 [Page 149] Internet-Draft QUIC Transport Protocol October 2019 @@ -8397,7 +8397,7 @@ B.18. Since draft-ietf-quic-transport-05 -Iyengar & Thomson Expires April 23, 2020 [Page 150] +Iyengar & Thomson Expires April 24, 2020 [Page 150] Internet-Draft QUIC Transport Protocol October 2019 @@ -8453,7 +8453,7 @@ B.20. Since draft-ietf-quic-transport-03 -Iyengar & Thomson Expires April 23, 2020 [Page 151] +Iyengar & Thomson Expires April 24, 2020 [Page 151] Internet-Draft QUIC Transport Protocol October 2019 @@ -8509,7 +8509,7 @@ B.21. Since draft-ietf-quic-transport-02 -Iyengar & Thomson Expires April 23, 2020 [Page 152] +Iyengar & Thomson Expires April 24, 2020 [Page 152] Internet-Draft QUIC Transport Protocol October 2019 @@ -8565,7 +8565,7 @@ B.22. Since draft-ietf-quic-transport-01 -Iyengar & Thomson Expires April 23, 2020 [Page 153] +Iyengar & Thomson Expires April 24, 2020 [Page 153] Internet-Draft QUIC Transport Protocol October 2019 @@ -8621,7 +8621,7 @@ Internet-Draft QUIC Transport Protocol October 2019 -Iyengar & Thomson Expires April 23, 2020 [Page 154] +Iyengar & Thomson Expires April 24, 2020 [Page 154] Internet-Draft QUIC Transport Protocol October 2019 @@ -8677,7 +8677,7 @@ Contributors -Iyengar & Thomson Expires April 23, 2020 [Page 155] +Iyengar & Thomson Expires April 24, 2020 [Page 155] Internet-Draft QUIC Transport Protocol October 2019 @@ -8733,4 +8733,4 @@ Authors' Addresses -Iyengar & Thomson Expires April 23, 2020 [Page 156] +Iyengar & Thomson Expires April 24, 2020 [Page 156] diff --git a/index.html b/index.html index 1655d78d37..462440d18c 100644 --- a/index.html +++ b/index.html @@ -73,507 +73,444 @@

Editor's drafts for master branch of ianswett-initial-secrets-constant

- +

Preview for branch ianswett-second-initial

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch firm-stop-sending

- +

Preview for branch ianswett-min-rtt

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-invalid-token

- +

Preview for branch ianswett-initial-secrets-constant

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch define-terms

- +

Preview for branch ianswett-pto-datagrams

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-must-retransmit

- +

Preview for branch ianswett-consistent-recovery

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - - -
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master - diff with last submission
-

Preview for branch ianswett-pto-per-pn-space

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
draft-ietf-quic-httphtmlplain textdiff with master - diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master - diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master - diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master - diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master - diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-limit-bursts

- +

Preview for branch ianswett-must-retransmit

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch unrecoverable-without-1rtt

- +

Preview for branch ianswett-merge-cto-pto

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
@@ -640,3143 +577,3206 @@

Preview for branch ianswett-spurious-loss -

Preview for branch ianswett-no-1RTT-ack-delay

- +

Preview for branch ianswett-fix-no-rtt

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-second-initial

- +

Preview for branch cite-manageability

+
- - - - + - - - - + - - - - + - - - - + + + + + + + + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master + diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch idle-timeout-asymmetric

- +

Preview for branch alternative

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-symmetric-timeout

- +

Preview for branch ianswett-must-ack-once

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-fix-no-rtt

- +

Preview for branch ianswett-no-1RTT-ack-delay

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch simultaneous-update

- +

Preview for branch rework-key-update-2

+
- - - - + - - - - + - - - - + - - - - - - - - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master - diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch encrypt-tps

- +

Preview for branch must-distinguish-tokens

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch client-goaway

- +

Preview for branch ianswett-merge-pto

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch must-distinguish-tokens

- +

Preview for branch http

+
+ + + + + + + +
*htmlplain textdiff with master + diff with last submission
+

Preview for branch http/changelog_23

+ - - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-merge-cto-pto

- +

Preview for branch http/reserved_frames

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch close2205

- +

Preview for branch http/pseudoheader_constraints

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-consistent-recovery

- +

Preview for branch http/concurrency_differs

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-no-crypto-data

- +

Preview for branch http/initial_iana

+
- - - - + - - - - + - - - - + - - - - - - - - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master - diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch rework-key-update-2

- +

Preview for branch http/unknown_error_codes

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch test-ci

- +

Preview for branch http/qpack_has_streams

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-set-to-null

- +

Preview for branch http/security_headings

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-no-srtt

- +

Preview for branch http/early_response

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-min-rtt

- +

Preview for branch http/active_voice

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-remove-discussion

- +

Preview for branch http/complete-settings

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-ack-eliciting

- +

Preview for branch http/cancel_push_edges

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-pto-ack-eliciting

- +

Preview for branch http/8164

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-pto-datagrams

- +

Preview for branch keep-hs-keys

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch cite-manageability

- +

Preview for branch ianswett-under-utilizing

+
- - - - + - - - - + - - - - + - - - - - - - - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master - diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-skip-packet-number

- +

Preview for branch client-new-token

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ct-sr

- +

Preview for branch qpack-editorial-0519

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-under-utilizing

- +

Preview for branch ianswett-limit-bursts

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch retry-rekey

- +

Preview for branch encrypt-tps

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-must-ack-once

- +

Preview for branch ianswett-set-to-null

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch ianswett-merge-pto

- +

Preview for branch remove-vhint

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch client-new-token

- +

Preview for branch insert-count-increment

+
- - - - + - - - - + - - - - + - - - - + + + + + + + + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master + diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch alternative

- +

Preview for branch priority-diediedie

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch remove-vhint

- +

Preview for branch ct-sr

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch insert-count-increment

- +

Preview for branch ianswett-pto-per-pn-space

+
- - - - + - - - - + - - - - + - - - - - - - - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master - diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch keep-hs-keys

- +

Preview for branch ianswett-pto-ack-eliciting

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch priority-diediedie

- +

Preview for branch ianswett-remove-discussion

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http

- +

Preview for branch ianswett-invalid-token

+
- - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
*htmlplain textdiff with master + draft-ietf-quic-httphtmlplain textdiff with master + diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master diff with last submission
-

Preview for branch http/concurrency_differs

- +

Preview for branch define-terms

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/reserved_frames

- +

Preview for branch ianswett-no-crypto-data

+
- - - - + - - - - + - - - - + - - - - + + + + + + + + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master + diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/security_headings

- +

Preview for branch ianswett-skip-packet-number

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/complete-settings

- +

Preview for branch ianswett-symmetric-timeout

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/early_response

- +

Preview for branch retry-rekey

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/initial_iana

- +

Preview for branch simultaneous-update

+
- - - - + - - - - + - - - - + - - - - + + + + + + + + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master + diff with last submission
draft-ietf-quic-spin-exphtmlplain textdiff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/unknown_error_codes

- +

Preview for branch test-ci

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/8164

- +

Preview for branch idle-timeout-asymmetric

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/changelog_23

- +

Preview for branch firm-stop-sending

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/qpack_has_streams

- +

Preview for branch ianswett-no-srtt

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/cancel_push_edges

- +

Preview for branch ianswett-ack-eliciting

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/pseudoheader_constraints

- +

Preview for branch close2205

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch http/active_voice

- +

Preview for branch client-goaway

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission
-

Preview for branch qpack-editorial-0519

- +

Preview for branch unrecoverable-without-1rtt

+
- - - - + - - - - + - - - - + - - - - + - - - - + - - - - +
draft-ietf-quic-httphtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-invariantshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-qpackhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-recoveryhtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-tlshtmlplain textdiff with master + diff with master diff with last submission
draft-ietf-quic-transporthtmlplain textdiff with master + diff with master diff with last submission