Proposal (I-D) for extending HTTP to support out-of-order responses

A few weeks ago, I gave a short "Work In Progress" talk at
USITS (the "USENIX Symposium on Internet Technologies and
Systems") about some very early research results I had obtained
about the potential value of supporting out-of-order responses
in HTTP.

Several people came up to me after the talk and seemed very eager
to try out this kind of mechanism.  One person had even
implemented the idea in his own server code while the session was
in progress.  So it seemed like it might be a good idea to
propose a standard extension *before* lots of people started to
deploy this kind of thing.  Hence, I wrote up a simple proposal
as an Internet-Draft:

	Title		: Support for out-of-order responses in HTTP
	Author(s)	: J. Mogul
	Filename	: draft-mogul-http-ooo-00.txt
	Pages		: 14
	Date		: 09-Apr-01

	http://www.ietf.org/internet-drafts/draft-mogul-http-ooo-00.txt
	
    The introduction of persistent connections and pipelining
    into HTTP has resulted in potential performance benefits,
    but has also exposed the problem of head-of-line blocking.
    A simple, compatible, and optional extension to HTTP to
    allow a server to issue responses out of order could
    significantly reduce HOL blocking.  In this extension,
    clients add short ID fields to their requests, and servers
    echo these IDs back in their responses.  This extension is
    defined as a hop-by-hop rather than end-to-end mechanism,
    so it avoids much of the complexity of the end-to-end
    approach.
    
If members of the HTTP-WG mailing list have comments on this,
I'd be happy to receive them.

I want to stress that the research evaluation that might prove
(or disprove) the value of this approach has NOT been finished.
So it does not make sense to start an argument about whether
this is useful (unless someone else has already done a careful
evaluation of this kind of approach).

I'm just looking for comments on whether the protocol makes sense
(and, in particular, whether it might lead to screwups by caching
proxies that don't comply with the HTTP specifications).

Thanks
-Jeff

Received on Wednesday, 11 April 2001 11:52:02 UTC