- From: Poul-Henning Kamp <phk@phk.freebsd.dk>
- Date: Sat, 28 Jan 2012 12:05:35 +0000
- To: "Markus Lanthaler" <markus.lanthaler@gmx.net>
- cc: "'HTTP Working Group'" <ietf-http-wg@w3.org>
In message <00dc01ccddb3$69f96be0$3dec43a0$@lanthaler@gmx.net>, "Markus Lanthal er" writes: >Sorry to ask a (probably stupid) question in this context. Isn't HTTP >supposed to be an application protocol? Wasn't one main problems with SOAP >that it abused HTTP as a transport protocol? That's a very pertinent question. The first version of HTTP was clearly not a transport protocol since it used TCP as transport protocol: One TCP connection for each request/response. But onto that were hacked the various "keep-live" hacks, which suddenly turned HTTP a transport protocol, but without proper design of semantics. Without keepalive, there were/is no doubt about how you find out if a request has a object-body. But when the keep-alive hack was added, they forgot to add a transport-header that said "has body", instead implementations had to divine this from the semantics of the request. And from there it went downhill, into chunked encoding, transfer-encoding and now various ridiculous proposals for how to bolt pipelining and multiplexing onto the side. This history is a good argument against calling the transport protocol HTTP/2.0, but it not a good argument for not doing proper layering. -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.
Received on Saturday, 28 January 2012 12:05:58 UTC