Testing prox tunneling.

1. Start Squid (or any other proxy) on port 3128

2. Start a server
   java EchoServer 8066
  
3. Start a client
   java EchoClient 192.168.1.2 3128  http://192.168.1.2:8066

Does the socket stay alive?


Current situation:
------------------

My problem is as follows:


EchoClient --- squid ----- EchoServer


I open a scoket connection from client to proxy, with a

   POST http://server ...

this works fine.

1) Now i can send through this socket many request (works fine).

2) Then i tried to send a request and push many data packages
back to the client (works fine).

Now i try to do 1) and 2) simultaneously, but the proxy
kicks me off (the code works fine without proxy).
To be more precise, i believe the socket connection is
still there, but the data written to the socket is not
reaching the counterpart.

This is not timeout related as the test runs through in some
milliseconds.


Squid answer (which did not help)
---------------------------------

There is only a single response per request. This response may 
consist of multiple parts, but it is still a single response.

And do your reply fulfull the criterias for keeping the connection 
open? (the header you posted before do not, as you have been told)

  Criteria for keeping Client->Squid connection open:
     The client negotiated a persistent connection using "Connection: 
Keep-alive", and the reply has a correct Content-length header.

  Criteria for keeping Squid->Server connection open:
     The server accepted Squids request for a persistent connection 
by replying with "Connection: Keep-alive", and the reply has a 
correct "Content-length" header.

Regards
Henrik Nordstrm


------------ The request header ----------------------
POST / HTTP/1.0
From: xx@yy.com
User-Agent: HTTP xmlBlaster/1.0
Pragma: no-cache
Content-Type: text/plain
Content-Length: 16
Via: 1.1 develop.ruff.de:3128 (Squid/2.4.STABLE2)
X-Forwarded-For: 192.168.1.2
Host: 192.168.1.2:8080
Cache-Control: no-cache, max-age=259200
Connection: keep-alive

-------------------------------------------


------------ The sent callback header ----------
HTTP/1.1 200 OK
Server: HTTP xmlBlaster server/1.0
Cache-Control: no-cache
Pragma: no-cache
Connection: Keep-Alive
Keep-Alive: 30000000
Content-Type: multipart/x-mixed-replace;boundary=End

-------------------------------------------


----------- The received callback header -----
HTTP/1.1 200 OK
Server: HTTP xmlBlaster server/1.0
Cache-Control: no-cache
Pragma: no-cache
Connection: Keep-Alive
Keep-Alive: 30000000
Content-Type: multipart/x-mixed-replace;boundary=End
------------------------------------------- 

