RE: Persistant connections and pipelining...

Marc --

> I've been reading, with great interest, RFC2616; specifically the sections
> on persistant connetions and pipelining.  Can anyone tell me if there is a
> way to 'force' a browser into using persitent connections, and even
> pipelining, via HTML (assuming the browser supports HTTP 1.1)?

Yes, and the answer is no. :)

HTML has nothing whatsoever to do with HTTP. HTML is a markup language. HTTP is
a transport protocol.

> I've been playing with MSIE 5.0, and created a test page with hyperlinks
> pointing to the same server.  Every load results in multiple connections
> being made to the webserver.  I've already verified that HTTP/1.1 support
> has been activated (via tools/options/etc.).  And, traces confirm that
> HTTP/1.1 is being sent in the "GET" start-line.  Have I misinterpreted the
> specification?

Sounds like it. :)

> I'm under the assumption that because the hyperlinks
> reference the same address/port, a single connection should be used to
> retrieve the 'documents'.

If the server that's servicing your requests is an HTTP/1.1 compliant server, it
should -- if it *can*.

Servers do get busy and may not be able to maintain a persistent connection for
very long when they're under heavy load. The specification doesn't *require*
that HTTP/1.1 servers *must* maintain a persistent connection. Persistent
connections must be *negotiated* between the client and the server and either
party may, if it so chooses, refuse to keep a connection persistent.

Then too, just because you send a server an HTTP/1.1 request doesn't mean it
*must* respond with HTTP/1.1 responses. The server might only support HTTP/1.0,
in which case the connection would be closed once the response has been sent.

Read section 8.1.2.1 ("Negotiation") again. Carefully. :)

--
"Fish" (David B. Trout)
   fish@infidels.org

Received on Tuesday, 24 October 2000 12:00:50 UTC