Re: issue with pipelining
varun uppal <[email protected]>
| Newsgroups | gmane.comp.web.polipo.user |
|---|---|
| Message-ID | <[email protected]> |
Hi Ming, Thanks for your email. But i thought that is the whole idea of getting pipelining, i.e. to send more than one GET requests in a single packet. The traces are between polipo and the webserver and i am trying to get pipelining work for me. I am getting two problems as of now, first, that polipo is not pipelining more than 2 GET requests at a time. The browser is sending out one request per packet to polipo, since i enabled pipelining on polipo it does pipeline 2 requests in a packet but not more than that. Most of the time it waits for both the responses, but at times it closes the connection without waiting for the response to second get request it pipelined, which is the second problem i am facing. regards Varun On Tue, May 26, 2009 at 2:59 PM, Ming Fu <[email protected]> wrote: > 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 <[email protected]> > >> 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 < >> [email protected]> 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 >> [email protected] >> 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