HTTP 1.1 Support in LWP / ParallelUA

HTTP 1.1 Support in LWP / ParallelUA

am 11.02.2006 20:20:45 von domi_REMOVETHIS_

Hi,

I am creating some Perl scripts at the moment to evaluate the
performance of webservers over long time periods.

As far as I have read on CPAN and in Usenet discussions, the libwww-perl
and the derived ParallelUA do not support the HTTP/1.1 features
"persistent connections" (using a connection for more than one reques)
and "pipelining" (sending several requests before the corresponding
responses arrive). These features are used by modern browsers in order
to speed up their website downloads.

Are there any plans to incorporate those advanced concepts into LWP or
ParallelUA?

Do you know of other toolkits / modules which do support them?

Best regards
Dominik

Re: HTTP 1.1 Support in LWP / ParallelUA

am 12.02.2006 11:41:20 von Sisyphus

"Dominik M. Herrmann" wrote in message
news:dslde5$9hk$1@online.de...
..
..
>
> As far as I have read on CPAN and in Usenet discussions, the libwww-perl
> and the derived ParallelUA do not support the HTTP/1.1 features
> "persistent connections" (using a connection for more than one reques)
> and "pipelining" (sending several requests before the corresponding
> responses arrive).

This point intrigues me a little. (Bear in mind that I'm a http ignoramus.)

I find in 'perldoc LWP' the following:

"The libwww-perl HTTP implementation currently support the HTTP/1.1 and
HTTP/1.0 protocol."

Are you saying that the documentation is incorrect ? .... or is it simply
the case that there's a distinction to be drawn between "HTTP/1.1 features"
and "HTTP/1.1 protocol" ?

Cheers,
Rob

Re: HTTP 1.1 Support in LWP / ParallelUA

am 14.02.2006 08:06:34 von domi_REMOVETHIS_

>>As far as I have read on CPAN and in Usenet discussions, the libwww-perl
>>and the derived ParallelUA do not support the HTTP/1.1 features
>>"persistent connections" (using a connection for more than one reques)
>>and "pipelining" (sending several requests before the corresponding
>>responses arrive).
>
>
> This point intrigues me a little. (Bear in mind that I'm a http ignoramus.)
>
> I find in 'perldoc LWP' the following:
>
> "The libwww-perl HTTP implementation currently support the HTTP/1.1 and
> HTTP/1.0 protocol."
>
> Are you saying that the documentation is incorrect ? .... or is it simply
> the case that there's a distinction to be drawn between "HTTP/1.1 features"
> and "HTTP/1.1 protocol" ?

The libwww-perl implements all features of the HTTP/1.1 protocol to be
compatible with HTTP/1.1 web servers (i.e, it adds a Connection: close
header to each request so that the webserver does *not* leave the
connection open after the response is received). But it does not
implement the advanced features which enhance performance.

Gisle Aas, who is responsible for the development of LWP, has done some
work on LWPng (next generation), which incorporates proper handling of
persistent connections and pipelining. But his work stopped at alpha
level... (cf. http://www.linpro.no/lwp/lwpng-paper/)

Has anyone experience with LWPng?

Best regards,
Dominik