W3C home > Mailing lists > Public > ietf-http-wg@w3.org > October to December 2016

Re: New Version Notification for draft-kazuho-early-hints-status-code-00.txt

From: Alex Rousskov <rousskov@measurement-factory.com>
Date: Sat, 12 Nov 2016 08:55:13 -0700
To: Julian Reschke <julian.reschke@gmx.de>, HTTP Working Group <ietf-http-wg@w3.org>
Message-ID: <699a060a-1ac4-d9da-f4c8-49883ed21453@measurement-factory.com>
On 11/12/2016 12:33 AM, Julian Reschke wrote:
> On 2016-11-12 01:00, Alex Rousskov wrote:
>> On 11/11/2016 12:49 AM, Julian Reschke wrote:
>>> Q: maybe we should create a Wiki page, summarizing implementation status
>>> and bug reports?
>>
>> FWIW, based on the results I had access to, most of the HTTP proxies
>> using our HTTP compliance test suite mishandled 1xx messages one way or
>> the other. Even today, after all the tests and bug fixes, there is an
>> outstanding Squid bug where an unfortunate timing of 1xx and other
>> events lead to a crash. 1xx is evidently tricky to get right.
>>
>> This data point is not meant to support or combat the "let the bad
>> implementations surface/suffer" argument. I am just reporting that many,
>> possibly most proxies mishandle 1xx messages.
> 
> Thanks for the feedback.
> 
> When you talk about "timing", does that apply to any 1xx, or just the
> 100-continue dance?

The bugs depend on the proxy, naturally. Some do not forward any 1xx,
some forward only 100 (Continue), some mistake 1xx for the final
response, some cannot handle an early final response received in the
same TCP packet as 1xx, etc. etc.

The specific Squid bug I used as a recent example applies to all 1xx
control messages and their timing relative to other rare events such as
client or server disconnect or timeout. Thus, it is not specific to
100-continue. Statistically speaking, releasing more 1xx events into the
wild will expose more 1xx implementation bugs.

Alex.
Received on Saturday, 12 November 2016 15:56:07 UTC

This archive was generated by hypermail 2.3.1 : Saturday, 12 November 2016 15:56:09 UTC