Hi Theresa, Thanks for the review! Since the QUIC WG uses a Github Workflow I've created a separate issue for each of the items in your review and tagged you in it, see in-line responses for the precise issue link. All issues are track in the milestone https://github.com/quicwg/base-drafts/milestone/9
We'd appreciate it if you could coordinate with the HTTP document editor via GitHub, on the issue itself and/or any Pull Request that might be raised to address your comments. On Sun, Nov 15, 2020 at 6:26 PM Theresa Enghardt via Datatracker < nore...@ietf.org> wrote: > <snip> > > Minor issues: > > The document defines "stream" as a QUIC stream, but then also uses the term > "HTTP/3 stream". Perhaps it's worth defining "HTTP/3 stream" explicitly, in > analogy to "HTTP/3 connection". Perhaps it's worth defining "message", too > (this is only an HTTP concept, correct?). > > The document should make sure it clearly distinguishes terms and concept of > QUIC vs. of HTTP/3 in all cases. In particular, what is the relationship > between HTTP/3 frames and QUIC frames? It's important to make their > difference > and relationship explicit, as the document uses several other terms > interchangeably between HTTP/3 and QUIC, like "connection" and perhaps > "stream". > https://github.com/quicwg/base-drafts/issues/4351 > > The concepts around error codes is not entirely clear to me, e.g., > H3_REQUEST_INCOMPLETE or H3_NO_ERROR - Are these a separate concept from > HTTP > response status codes such as "200 OK" and "404 Not Found", etc.? Are these > error codes related to QUIC errors? Is the "application error code" > mentioned > in Section 5.3 the same concept or is it a different concept? Is the > "application error code" an HTTP/3 concept of a QUIC concept? Is > "connection > error" used in Section 7 the same concept or is it a difference concept? > Does a > "connection error" as used in Section 7 always mean that the entire > connection > fails, as opposed to a single stream? Section 8 aims to explain some of > these > concepts, and I think the document should reference to this section for > more > information when it starts mentioning all these different error types. > (Or, if > they are all the same, perhaps the terminology should be unified.) > https://github.com/quicwg/base-drafts/issues/4352 > > Section 4.1.1. > > "HTTP messages carry metadata as a series of key-value pairs, called HTTP > fields." Are these the same as HTTP headers and trailers? Or are HTTP > fields a > more general concept? Are they also allowed in bodies? > https://github.com/quicwg/base-drafts/issues/4353 > Section 4.1.1.3 > > "because this limit is applied at each hop," ... > What is a hop in the context of HTTP? I think it's worth at least briefly > introducing this concept to make things clearer, as the document includes > many > different concepts from different layers. > https://github.com/quicwg/base-drafts/issues/4354 > Section 4.1.2 > > "Automatically retrying such requests is > not possible, unless this is otherwise permitted (e.g., idempotent > actions like GET, PUT, or DELETE)." > Retrying is "not possible" means it's prohibited? Is there a reference to > the > exceptions to that rule, e.g., a list of actions that are considered > idempotent? If so, please provide a reference. > https://github.com/quicwg/base-drafts/issues/4355 > Section 4.2 > > "A proxy that supports CONNECT establishes a TCP connection […]" > Is this necessarily always TCP, not QUIC? Can this change in the future? > <goog_722064023> https://github.com/quicwg/base-drafts/issues/4356 > Section 5.1 > > "HTTP/3 implementations will need to open a new HTTP/3 > connection for new requests if the existing connection has been idle > for longer than the server's advertised idle timeout" > Only the server's timeout? Does "implementations" here mean only clients? > https://github.com/quicwg/base-drafts/issues/4357 > Section 6.2 > > "However, stream types that 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." > Is there a defined list of stream types that are not allowed to be used? > If so, > please provide a reference. > > Is section 6 missing the request stream? It has subsections for Control > Streams > and Push Streams, but then Section 7 says that Request Stream is also a > stream > type. > <goog_722064019> https://github.com/quicwg/base-drafts/issues/4358 Kind regards, Lucas QUIC WG Co-chair
_______________________________________________ Gen-art mailing list Gen-art@ietf.org https://www.ietf.org/mailman/listinfo/gen-art