Make HTTP 2.0 message/transport format agnostic

I'm not really sure why everybody is getting so worked up about SPDY.
The correct thing to do is pretty obvious
to me. Document the core HTTP protocol in a message format agnostic
way. This means not specifying
the format of the messages or the transport.

Instead the core HTTP spec would be defined in terms of two types of
abstract messages. One is a request
message, which includes the following components: a version number, a
resource URI, a method, headers,
and an optional body. The other message is a response, which includes
a version, a status code, a status
phrase, headers, and an optional body. The core spec would then define
the meaning of the methods and
headers, the rules regarding proxies and caching, and the
authentication rules, etc. Basically everything
that would apply to all message/transport formats.

Separate specifications would define message/transport formats.

Headers that are specific to the textual Internet Message
message/transport format currently used in
HTTP/1.1 would not be included in the core specification but would be
part of a separate specification
that would define the textual format for HTTP 2.0 (unless of course we
decide not to support such a
format for HTTP 2.0).

SPDY could pretty trivially be such a message/transport format,
requiring only slight tweaks to its specification
like specifying that it presents its ":host" pseduo-header to as a
Host header in the abstract message.

Similarly we could define a S+M based message/transport format, or
perhaps even a hybrid of the the two, whatever
is deemed best.

Kevin Cathcart

Received on Friday, 30 March 2012 15:36:54 UTC