Re: HTTP1.0/HTTP1.1, persistent connections and ident_lookup

From: Dancer <dancer@dont-contact.us>
Date: Sat, 17 Apr 1999 10:52:56 +1000

Ted_Rule@flextech.co.uk wrote:
>
> A few questions relating to interoperability of HTTP1.0/HTTP1.1 Browsers, Squid
> - current stable version - and
> my associated Transparent Proxy firewall.
>
> When answering, I'd appreciate it if you could make it clear whether any
> unavailable features are either because no-one
> has had the time to add the functionality to Squid, OR it is actually a
> fundamental impossibility given the requirements for
> compatibility and interworking of Squid and a variety of HTTP1.0/1.1 capable
> clients and, possibly, parents.
>
> At present, I have a rather ancient(!) version of Squid - v1.1.21-p5 running
> internally, together with a mix of Netscape 3 ( mainly )
> and Netscape 4 Browsers. I've noticed from the various release notes on the
> Squid site, that more recent versions of Squid
> support persistent connections - part of the HTTP1.1 protocol. The old Netscape
> 3 Browsers dont support this.
> The Netscape 4 Browsers do.
>
> The Squid cache itself has a "parent" - for want of a better term - of a
> Transparent Proxy Firewall. Again the Firewall only supports
> HTTP1.0, though I'm trying to get the manufacturers to support persistent
> connections real soon now.
>
> In the fullness of time, I'm going to get round to upgrading Squid. Similarly,
> the Browsers are due for a massive upgrade soon.
>
> If and as I reach the point that the Browers, Squid, AND the Firewall support
> HTTP/1.1 at least to the extent of honouring persistent
> connection requests from their respective clients, I'm wondering how much of the
> chain can truly support this feature. I vaguely recall
> a posting - probably from Hendrik Norstrom - indicating that although Squid
> honours the HTTP/1.1 persistent connection request, it will
> only issue HTTP/1.0 style non-persistent outbound requests - partially defeating
> the usefulness of the feature.
>
> Is the above true?

Squid does not claim to be fully HTTP/1.1 compliant by issuing that
version in the request. It _does_ however use persistent requests for
it's outbound connections, along with support for several HTTP/1.1
features. Making an HTTP/1.0 request does not in any way detract from
that (after all, cookies are an HTTP/1.1 feature officially, IIRC, but
the work just fine under 1.0)

> If it were possible for Squid to issue HTTP/1.1 requests, would this in any way
> be undesirable?

Squid would be implicitly promising functionality that it does not
possess. Mind you, MSIE already does this. (Try running different
versions of Javascript on MSIE5. It believes itself to understand
Javascript up to version 127.127. See? Compatibility with all versions
yet to be concieved by a simple matter of ignoring a version number!)

> If it is possible for Squid to issue HTTP/1.1 requests, is it possible to
> 'proxy' an HTTP/1.0 request from a client into an HTTP/1.1 outbound
> request, and again would this have any benefits or drawbacks?

If the question is really "can squid proxy a non-persistent inbound
request into a persistent outbound request" I think the answer is yes.

> On another topic, the IDENT_LOOKUP feature in Squid presumably performs a lookup
> request for every single inbound HTTP request, which
> corresponds one-to-one with TCP connections for HTTP/1.0.
> If I migrate to HTTP/1.1 capable Squid and Browsers, does this lookup still get
> performed per HTTP request, or is the information cached
> to the extent of making the lookup per client TCP connection, when I have
> persistent connections in place? Thus hopefully saving on lots of small
> TCP connections...

I should think it would still happen. I mean that's what the ident
protocol is _for_.

D
Received on Fri Apr 16 1999 - 18:46:12 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:45:51 MST