> I did find a crtique of HTTP for agent systems:
> Anyone (dis)agree?
Well, the claims about client/server protocols are just plain wrong.
C/S refers to the type of interaction on a single connection. Nothing
prevents a server from initiating its own connections. Firewalls and
NAT make deployment of such a system difficult on the Internet, but
that's why they are there -- the real world doesn't want someone else's
autonomous agent running around on their systems.
Likewise, collaborative agents do poorly if they depend on ephemeral
communication (like watching messages go by on a p2p network). A more
robust architectural style for those agents is the blackboard model,
which is data-oriented (like REST), independent of the protocol
used to set state on the blackboard, and capable of separating private
from public information.
HTTP does not support mobile agents (regardless of their agent-hood).
Someone could add a method for mobility (i.e.,
but deploying it would require too many religious battles to be worth
the effort. It also doesn't buy much over a raw TCP connection with
SSH or TLS authentication.