Hi Varun,

I guess the tcpdump is between polipo and the webserver. In Packet number 4,
there is two GET requests within the same packet. Unless polipo is running
on a super busy machine, it is not possible for polipo to send out two
request in the same packet, because polipo send each server side request in
separate write call.

I would think the client also send the two GET in one packet ( there is
nothing wrong for a client to do that), these two requests would come into
the polipo client side call back in one connection buffer. Polipo may not
realise there are two requests in the buffer. The second GET is send out to
the server as a part of the first request. The polipo didn't realise it need
to wait for extra server reply, thus it RST the connection

An easy way to verify this is to cut and paste the first two GET into a
file, such as

GET /media/thumbs/001396s.jpg HTTP/1.1
Host: www.closepics.com
Cache-Control: max-age=259200
Accept: */*
Referer: http://www.closepics.com/
Accept-Language: en-gb
UA-CPU: x86
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR
1.1.4322)
Cookie: Xref=closepics.com
X-Forwarded-For: 192.168.128.143
Connection: keep-alive

GET /media/thumbs/000274s.jpg HTTP/1.1
Host: www.closepics.com
Cache-Control: max-age=259200
Accept: */*
Referer: http://www.closepics.com/
Accept-Language: en-gb
UA-CPU: x86
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR
1.1.4322)
Cookie: Xref=closepics.com
X-Forwarded-For: 192.168.128.143
Connection: keep-alive

Use vi or other editor to make sure each line ends with /r/n. Use netcat to
cat that file to the polipo listening port. This will force the two requests
into one tcp packet, see what polipo will give back. Then use the netcat
option to send the file line by line and send the file again.This line by
line option will force the two requests to be separated into many packets. I
believe line by line will work out right.


Regards,
Ming

2009/5/26 varun uppal <varuneet.up...@gmail.com>

> Hi Juliusz,
>
>    I have attached a tcpdump trace and a snapshot of where i saw Polipo
> closing the connection without waiting for the response.
> In the highlighted packets you would see, that it pipelines two requests,
> and only waits for response for one and then sends out a Fin to close the
> connection.
>
> Varun
>
> On Sat, May 23, 2009 at 3:09 PM, Juliusz Chroboczek <
> juliusz.chroboc...@pps.jussieu.fr> wrote:
>
> > >   I have come across a problem with pipelining. Polipo pipelines  two
> > > requests to the HTTP1.1 server, and closes the connection after
> receiving
> > > the response to first request.
> >
> > No, it doesn't.
> >
> > Polipo keeps track for each server whether it supports pipelining.
> > Initially, a server is ``unknown'', and Polipo doesn't pipeline to it.
> > After a while, Polipo will send two requests to the server to probe it
> > for pipelining.  If pipelining doesn't work within 20 seconds, Polipo
> > drops the connection and doesn't use pipelining with this server.
> >
> > So what you're seeing is either a buggy server, or a case where Polipo
> > wrongly determined that the server is buggy.  I'll need a protocol trace
> > to find out which.
> >
> >                                        Juliusz
> >
>
>
> ------------------------------------------------------------------------------
> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
> is a gathering of tech-side developers & brand creativity professionals.
> Meet
> the minds behind Google Creative Lab, Visual Complexity, Processing, &
> iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
> Group, R/GA, & Big Spaceship. http://www.creativitycat.com
> _______________________________________________
> Polipo-users mailing list
> Polipo-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/polipo-users
>
>
------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://www.creativitycat.com 
_______________________________________________
Polipo-users mailing list
Polipo-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/polipo-users

Reply via email to