Re: HTTP/1.1 pconns to 1.0 servers

On Sep 20, 2006, at 2:16 PM, Mark Nottingham wrote:

> On 2006/09/20, at 1:29 PM, Roy T. Fielding wrote:
>> On Sep 20, 2006, at 10:08 AM, Mark Nottingham wrote:
>>> HTTP/1.0 persistent connections are documented in RFC2068. One  
>>> case that's not explicitly covered is when a HTTP/1.1 client  
>>> sends a request to a HTTP/1.0 server without a Connection: keep- 
>>> alive header.
>>> My reading of 2068, 2616 and 2145 is that the fact that the  
>>> client indicates HTTP/1.1 in the request advertises their support  
>>> for persistent connections, and a HTTP/1.0 server (whether origin  
>>> or proxy) may safely use a Content-Length delimited persistent  
>>> response.
>> What is an HTTP/1.0 server?
> OK, I'll bite. One that claims to conform to RFC1945 by sending the  
> version string "HTTP/1.0" in responses.

Nothing can claim to conform to an informational RFC by sending a  
version that was in wide use long before the RFC was published.  RFC  
documents (the best I could) the most common and interoperable  
on what people were claiming (at the time) as HTTP/1.0.

>> It was the intent of the WG that folks who claim to be using HTTP on
>> the Internet should be doing so with HTTP/1.1, instead of making
>> silly excuses not to.
> If the WG really believed that, why bother with making 1.1.  
> backwards-compatible at all?

To deploy HTTP/1.1.  That was over eleven years ago.

>> Anyone still claiming to use HTTP/1.0 will have
>> to fend for themselves and test against every deployed system, since
>> the only standard is for HTTP/1.1.
> Well, that would be nice, but anecdotal evidence says that Squid is  
> one of the most widely-deployed proxies out there, and it's still  
> advertising HTTP/1.0. Saying that Squid has to fend for itself  
> ignores the fact that everyone else has to deal with Squid (as we  
> see with the prevalence of HTTP/1.1 clients sending Connection:  
> keep-alive).

Squid is open source.  If someone thinks it shouldn't be ignored, then
they should update its ancient protocol stack to be compliant with
Internet standards.  In any case, Squid as a proxy that sends HTTP/1.0
responses is irrelevant to the question you asked, because HTTP/1.1
clients are required to ignore keep-alive from HTTP/1.0 proxy servers.
It is only when Squid is used as a gateway (reverse proxy) that the
question might apply here, and in that case the owner of that Squid
instance can fix it themselves.


Received on Wednesday, 20 September 2006 22:18:07 UTC