- From: Tom Bergan <tombergan@chromium.org>
- Date: Tue, 17 Jan 2017 22:10:36 -0800
- To: Scott Mitchell <scott.k.mitch1@gmail.com>
- Cc: Martin Thomson <martin.thomson@gmail.com>, Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>, HTTP Working Group <ietf-http-wg@w3.org>
- Message-ID: <CA+3+x5HBQswdhFKKNFFHN+t5yaqNufSk_artC1iUwwOvCipZGQ@mail.gmail.com>
On Tue, Jan 17, 2017 at 2:43 PM, Scott Mitchell <scott.k.mitch1@gmail.com> wrote: > From my perspective I would like to see two clarifications: > > 1. It is clear to me that PRIORITY doesn't impact state. However Section > 5.1.1 states "first use of a new stream identifier" which makes no > reference to stream state. If stream state is important/implied here better > to be specific about it. I don't think the one-off example below this text > is sufficient to convey the intended implications of this statement. > > 2. Section 5.1.2 states "Streams in either of the 'reserved' states do > not count toward the stream limit." which seems to conflict with section > 8.2.2 "A client can use the SETTINGS_MAX_CONCURRENT_STREAMS setting to > limit the number of responses that can be concurrently pushed by a server.". > These two statements appear to contradict each other. Since > SETTINGS_MAX_CONCURRENT_STREAMS is really the only mechanism to limit > resources due to server push I'm assuming section 5.1.2 is overly > restrictive. > This is surprising (to me, at least) but I don't believe there is a contradiction. You can send an infinite number of PUSH_PROMISEs without hitting SETTINGS_MAX_CONCURRENT_STREAMS. A pushed stream doesn't count against the concurrent stream limit until you've sent the response HEADERS on that pushed stream. See the related question I asked previously: https://lists.w3.org/Archives/Public/ietf-http-wg/2016JulSep/0599.html > On Tue, Jan 17, 2017 at 2:27 PM, Martin Thomson <martin.thomson@gmail.com> > wrote: > >> On 18 January 2017 at 01:37, Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> >> wrote: >> > If my understanding is correct, this only refers to the new stream ID >> used >> > by HEADERS, and PUSH_PROMISE frames which open or reserve streams. The >> > example text following that statement uses HEADERS which opens new >> stream. >> > PRIORITY frame does not change stream state, and there is no reason to >> close >> > all unused streams lower than bearing stream ID. That said, I agree >> that >> > this is not crystal clear in the document. In practice, this is >> probably >> > rather rare case. >> >> This is, I think, the expectation. >> >> I think that we probably want to clarify the point by explicitly >> saying that PRIORITY doesn't affect stream states. We say that it can >> be sent in any state, but we don't also mention that important point. >> Do people here agree that an erratum on this point is appropriate >> here? >> > >
Received on Wednesday, 18 January 2017 06:11:12 UTC