Re: keepalives and proxies: a request and a proposal

> 
> I'm all for addition of Proxy-Connection: keep-alive to the spec; more
> specifically:
> 
>  - if there are no proxies involved, everything's normal
>  - if the client talks to a proxy, it *never* sends a Connection: keep-alive
>  - if the client talks to a proxy and wants a persistent connection,
>    it will send Proxy-Connection: keep-alive; the proxy can still
>    respond with Connection: keep-alive
>  - a proxy can now independently support Connection: keep-alive
>    between itself and the servers, and itself and the client
>  - the proxy will intercept a Connection: keep-alive received from a
>    remote, as it is a reaction to the Connection: keep-alive sent by
>    itself, and should not be forwarded to the client
>  - a proxy will generate a new Connection: keep-alive to the client as
>    a response to Proxy-Connection: keep-alive
> 
> This way, there is never a case where a client talking to an old proxy
> server would fool it to forward the Connection: keep-alive to the
> remote, and then the remote would respond with it, but the proxy would
> close the connection in between.

It still does not work with the following (chained-Proxies) configuration: 

     (C) <--------> (P1) <--------> (P2) <--------> (S)
      ^     co1      ^      co2      ^      co3      ^
      |              |               |               |
     NEW            OLD             NEW              ?
	
 - `C' sends `Proxy-Connection: keep-alive' to `P1' 
 - `P1' is not compliant and ignores that header field forwarding
    it to `P2'
 - `P2', receiving `Proxy-Connection: keep-alive', supposes to talk
    to a compliant client and decides to keep alive `co2' connection,
    whereas `P1' is waiting P2 to close connection after its response.

The `Connection: Keep-Alive my-name' solution allows each compliant
proxy to realize whether is talking to a compliant proxy/client or not.


   Cheers,
   Lorenzo


<|--------------------------------------------------------------------------|>
 | Lorenzo Vicisano                     | http://www.iet.unipi.it/~vicisano |
 | Dip. di Ingegneria dell'Informazione | e-mail vicisano@iet.unipi.it      |
 | Universita' di Pisa                  | Phone  +39-50-568654              |
 | Via Diotisalvi, 2 56100 PISA, ITALY  | Fax    +39-50-568522              |
<|--------------------------------------------------------------------------|>

Received on Friday, 17 November 1995 13:19:42 UTC