Lists Home |
Date Index |
Mike Champion wrote:
> 'The protocol used to deliver Web pages has reached its limits for Web
> services and peer-to- peer applications, according to Microsoft .Net
> evangelist Don Box ...
> Among the problems with HTTP, said Box, is the fact that it is a Remote
> Procedure Call (RPC) protocol; something that one program (such as a
> browser) uses to request a service from another program located in
> another computer (the server) in a network without having to understand
> network details.
> This works for small transactions asking for Web pages, but when Web
> services start running transactions that take some time to complete over
> the protocol, the model fails. "If it takes three minutes for a response,
> it is not really HTTP any more," Box said. The problem, said Box, is that
> the intermediaries -- that is, the companies that own the routers and
> cables between the client and server -- will not allow single
> transactions that take this long."'
You simply register a callback and are informed when your information is
ready. It's two hours work to implement.
> Another problem with HTTP, said Box, is that it is asymmetric. "Only one entity can
> initiate an exchange over HTTP, the other entity is passive, and can only respond. For
> peer-to-peer applications this is not really suitable," he said. The reason that peer-to-peer
> applications do work today, said Box, is that programmers create hacks to get around the
> limitations of the protocol, and this is not good. "It's all hackery, it's all ad-hoc and none of
> it is interoperable," he added.
All protocols are asymmetric. Somebody initiates the connection. Someone
else is listening. The question is whether they can change rolls. With
HTTP they can. You simply put a client implementation and a server
implementation in one box (both are built into many programming
languages). The fact that the protocol *defaults* to asymmetry helps
with security auditing and understanding.
Part of what I've learned in the last few months are that the problems
people obsess about (like long-lived transactions and assymettry) are
the easist to solve, and the problems they don't know to ask about (like
those highlighted in Fielding's thesis) are not even on the industy's
It would be great if Microsoft launched a sustained assault on HTTP. It
would galvanize the open source world to embrace HTTP and figure out
ways to apply it to problems it hasn't even touched yet.