Re: Proxies, how to determine response body length

Jan Novy wrote:

>closing client-proxy connection would cause 
>loss of remaining proxy-originserver persistent connections I think. 
>  
>
RFC2616:8.1.2.2  second paragraph may be good to read again
"...Clients MUST also be prepared to resend their requests if the server
closes the connection before sending all of the corresponding responses."

So if you have tried to pipeline and have requests in the pipe and the
pipe is closed, you retry with a new connection. This applies to both the
client and the proxy (when the proxy is acting client to a origin server).

If the proxy has outstanding proxy-server requests when it closes a
proxy-client connection it may _perhaps_ want to shut down those requests
as well. If the proxy is a caching proxy it could also just cache the 
resources
and hope that the client will want the resources soon.

In short: it is easy to act the server side of a pipeline, since you 
then control
the closing. It is also hard to act the client side, since you then have 
to handle
retries for requests that have the pipeline blown up in the middle.

I think that my proxy(rabbit) handles pipelining quite ok in both 
directions,
but the pipelining proxy-server is a bit messy, feel free to check it 
out. Rabbit
is written in java and uses a BSD-style licence so it ought to be ok for 
you to
read or use it. You find it at http://www.khelekore.org/rabbit/

/robo

Received on Monday, 12 July 2004 13:10:52 UTC