Alex Rousskov wrote:
On 03/18/2010 09:40 PM, Amos Jeffries wrote:
noor nashid wrote:

And thirdly I want to download a whole page in Squid, and then I want
to transfer that to the other side (i.e. to the browser/client) using
a single HTTP pipelined connection. Suppose we are browsing
http://www.squid-cache.org/ . Here  I shall gather all objects of the
website and then I shall respond back to the client using a single TCP
connection. The point here is not open a TCP connection for each object.
As I understand it pipelining in HTTP is something different.

Persistent connections (what you describe) are already available in
Squid for both single TCP link to server and to client. Most browsers
attempt to use them. As does Squid. The handicap appears to be web
Servers not adding Content-Length information to all responses.

I believe this server problem can best be resolved by doing
chunked-encoding of the unknown length objects to HTTP/1.1 clients.
Removing the need to close the client connection when the object finishes.

Squid is about to start sending HTTP/1.1 responses to clients now. Which
removes the final blocking obstacle to doing chunked encoding inside Squid.

Chunked transfers was a measurement factory project. Before starting it
would be best to contact Alex and see if they already have the encoding
part underway or not.

I am not sure what you mean by "chunked transfers" in the context of
this email. Squid already supports chunked bodies on both client and
server sides. The only limitation that chunked requests are still
buffered whole before being processed. There is a piece of commented out
code that does not buffer chunked requests. It can be polished and
enabled now since we started talking HTTP/1.1 to servers (but I think we
still need to figure out how not to send chunked requests to HTTP/1.0
servers).


Decoding chunks yes, done.

Encoding of 1.0 requests is what he is looking towards working on. I thought you might have some plans there based on the comments you added to the sources with decoding.

Amos
--
Please be using
  Current Stable Squid 2.7.STABLE8 or 3.0.STABLE25
  Current Beta Squid 3.1.0.18

Reply via email to