[e2e] Pipelining in HTTP connections

Jim.Gettys at hp.com Jim.Gettys at hp.com
Sat Jan 4 16:51:24 PST 2003

> From: "David P. Reed" <dpreed at reed.com>
> Date: Thu, 02 Jan 2003 20:12:48 -0500
> To: "Dan Wing" <dwing at cisco.com>, "Aniruddha Bhalekar" <anibha at glue.umd.edu>,
>        <end2end-interest at postel.org>
> Subject: RE: [e2e] Pipelining in HTTP connections
> -----
> I may be incorrect, but I believe that Microsoft IE supports it, calling it
> HTTP1.1 support.

Nope.  You can be HTTP/1.1 compliant and not support pipelining.

Current Mozilla supports it; see edit->preferences->advanced->http_networking.
It was added shortly before 1.0, and may not be really done well.

Opera also (besides mozilla) supports pipelining; Hakon Lie is their CTO,
and worked with us on our HTTP/1.1 stuff, and I expect does it really
well.  It seemed pretty blazing fast to me.

Last I knew, IE did not support pipelining, but I mostly stay away
from Windoze these days.

Sometime soon (once my busted ankle has healed, which means in a couple
months, unfortunately) I intend to look at some packet traces and see if
moz has implemented pipelining well.  We found in our work that you have
to be very careful to get full performance: with many fewer socket buffers
(and therefore the aggregate of offered windows being much smaller), best
performance is achieved with a single TCP connection that one *very*
carefully aggressively reads from (or you get lots of delayed acks, etc.).
I've suspected for a long time that the Moz folks have not understood
this lesson.  Highest priority in the application needs to be dealing
with the socket layer, and I'm suspicious they have their priorities wrong.
                                      - Jim Gettys
                                        Cambridge Research Lab, HPLabs, HP

More information about the end2end-interest mailing list