Re: 1xx Clarification
Dave Kristol (dmk@bell-labs.com)
Mon, 21 Apr 1997 08:42:33 -0400
Jeff Mogul wrote:
> P.S.: Or we should eliminate "100 Continue" and the two-phase
> mechanism entirely. We added it because Roy (and maybe a few
> other server implementors?) wanted to be able to reject long
> requests without reading the whole message. But it clearly
> has led to a lot of complexity for all implementors (clients,
> servers, and proxies) and introduces some unavoidable overheads.
> My own feeling is that it is probably not such a big deal for
> a server to have to bit-bucket a large request body once in
> a while. Especially compared to the added complexity that
> the two-phase model implies.
I think the two-phase commit increases the odds that implementors of HTTP/1.1
clients and servers will "get it wrong", leading to poor interoperation. The
reason is that time-dependent problems are much harder to test and find.
Jeff's suggestion of a bit-bucket is pretty easy to implement, and clients
(which don't require any special coding for this) and servers are both likely
to get it right.
I believe the argument against a bit-bucket is that the server has to waste
resources to consume the incoming bits, and network bandwidth gets wasted at a
time when we're trying to reduce HTTP-induced network bandwidth. It's hard to
know how much of a problem either of these *really* is. Does anyone have
numbers for how often servers reject PUT/POST because they can't accept the
content? My guess is it's not a big problem yet. Can we afford to defer the
solution until it is?
Dave Kristol