Coordination Strategies: Models
There are a number of coordination strategies that multiple agents might use to
communicate with each other. A representative sampling is:
- Full crossbar
In a full crossbar, every agent must communicate with every other agent on a
regular basis.
- Advantages:
- Algorithms with are most easily implemented with a full crossbar
(e.g., those that also tend to experience O(n^2) growth) are easy to
implement if the individual agents also communicate in a full
crossbar.
- Communication cost are predictable.
- There is no single point of failure in the resulting net of agents,
assuming that failure of a single agent anywhere does not result in
all agents becoming inoperable.
- Disadvantages:
- This is a worst-case for communications traffic, which is high and
grows quadratically with the number of agents. It is particularly
inappropriate in a WAN (e.g., on the Internet).
- If every agent does depend on every other agent for the system
as a whole to operate, then this multiplies the failure probability
of the system as a whole.
- If the algorithm requires global synchronization of all agents, then
not only will a partition break it (see the point immediately above),
but the speed of operation of the entire network will devolve to the
speed of the slowest link between a pair of agents.
Because of the many disadvantages of
- Random point-to-point
This model is what is used in most email, and also describes Web client/server
activity as well as that of the domain name system. It is probably the most common
model.
- Advantages:
- Bandwidth is lower than a full crossbar solution.
- Actual message traffic presumably reflects the current structuring of
the problem. (For example, as used in the domain name system, only
paths along [not across] the delegation trees are traversed, and only
upon demand. Loose consistency and caching help make this the
performance of the resulting system reasonable.)
- Disadvantages:
- If most agents nonetheless need to talk to most others,
communications costs can approach that of a full crossbar solution.
(This is the scaling problem with email lists that led, among other
things, to Usenet news.)
- It can be difficult to know if all peers have been found, or to find
a particular peer.
- Broadcast/fill
This model is used in Usenet news, and implies that some agents are willing to
carry traffic that they themselves might not use, in order to facilitate its
eventual transfer to a third-party agent. In Usenet news, each news node accepts
all messages from its neighbors that it has not already received, regardless of
whether it has local readers of those messages, and similarly passes these messages
along to those neighbors which have not yet received them.
- Advantages:
- If most agents must see most of the traffic, yet loose consistency is
all that is required, the resulting message traffic is much
less than either random point-to-point or full crossbar solutions.
- Assuming a reasonable connection mesh, the system is quite robust
against even multiple failures of individual hosts or their
communications links.
- Disadvantages:
- Latency of messaging can be high and quite variable.
- It can be difficult or impossible to guarantee tight consistency for
algorithms with require it. Even if high latency is tolerable in
syncing the caches (which is doubtful in an application that requires
tight consistency), Byzantine failures become more probable in this
sort of architecture.
- A single misbehaving host can effectively flood all hosts unless
per-host throttles are in place.
- Privacy must be achieved with encryption, because, by definition,
many third parties will see any given message traffic.
- Any solution must include duplicate-rejection and similar logic, or
infinitely-circulating messages are guaranteed.
- Directed
multicast
This model is used in, e.g., the MBONE for transmission of realtime audio and
especially video. It is also used in some multiplayer simulations (e.g., SGI
Dog).
- Advantages:
- If the number of hosts involved is relatively low, this solution can
use existing network bandwidth most efficiently than multipoint
solutions.
- This is an appropriate solution for discovery and bootstrapping of
peer agents in an unknown network, when such discovery must cross LAN
boundaries. (Ethernets, for example, support directed multicast
across router segments, but do not support undirected broadcast
across segments. Similarly, the Internet itself allows directed
multicast without regard to network boundaries, but specifically
disallows undirected broadcast propagation so as not to fill up the
entire Internet with the sum total of all broadcasts in the world.)
- Disadvantages:
- Not all routers properly support directed multicast. This makes,
e.g., the MBONE a dicey proposition in certain environments.
- Directed multicast is a best-effort transmission medium, more similar
to UDP and IP than it is to TCP. Hence, applications which require
guaranteed and/or in-order delivery must implement their own
protocols on top of multicasting to ensure correct reception.
- If the number of agents involved is large, directed multicast ceases
to be an efficient proposition, and some sort of broadcast/fill is
more appropriate.
- The IP address of all hosts to be communicated with must be known at
the time of the multicast.
- Central hub
This model is most common when there is only one central agent, acting as a server,
to which numerous clients connect. This is the model of a Web server, for example.
- Advantages:
- Easy to analyze and maintain.
- Algorithms are generally straightforward.
- Disadvantages:
- The central hub is a single point of both failure or compromise, and
of overload.
- Load on the central hub, in general, will increase quadratically with
the number of agents/clients which must communicate with it or
through it.
- The central hub is likely to be a substantial fraction of a network
diameter away from the majority of its users. This increases network
load in adjacent network segments to the hub, and can also greatly
increase latency for such clients and maybe all agents (if they are
using the central hub to ensure tight consistency, for example, then
their performance will degrade to that of the slowest link).
Previous |
Up |
Table of contents |
Next
Lenny Foner
Last modified: Fri Dec 15 10:59:50 1995