Fallacies of Distributed Computing

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The Fallacies of Distributed Computing are a set of assumptions that L. Peter Deutsch and others at Sun Microsystems originally asserted programmers new to distributed applications invariably make. These assumptions ultimately prove false, resulting either in the failure of the system, a substantial reduction in system scope, or in large, unplanned expenses required to redesign the system to meet its original goals.[citation needed]

The fallacies[edit]

The fallacies are summarized below:[1]

  1. The network is reliable.
  2. Latency is zero.
  3. Bandwidth is infinite.
  4. The network is secure.
  5. Topology doesn't change.
  6. There is one administrator.
  7. Transport cost is zero.
  8. The network is homogeneous.

Effects of the fallacies[edit]

  1. Ignorance of network latency, and of the packet loss it can cause, induces application- and transport-layer developers to allow unbounded traffic, greatly increasing dropped packets and wasting bandwidth.
  2. Complacency regarding network security results in being blindsided by malicious users and programs that continually adapt to security measures.[2]
  3. Multiple administrators, as with subnets for rival companies, may institute conflicting policies of which senders of network traffic must be aware in order to complete their desired paths.
  4. The "hidden" costs of building and maintaining a network or subnet are non-negligible and must consequently be noted in budgets to avoid vast shortfalls.
  5. Ignorance of bandwidth limits on the part of traffic senders can result in bottlenecks over frequency-multiplexed media.

History[edit]

The list of fallacies generally came about at Sun Microsystems. L. Peter Deutsch, one of the original Sun "Fellows", is credited with penning the first seven fallacies in 1994; however, Bill Joy and Tom Lyon had already identified the first four as "The Fallacies of Networked Computing"[3] (the article claims "Dave Lyon", but this is considered a mistake). Around 1997, James Gosling, another Sun Fellow and the inventor of Java, added the eighth fallacy.[3]

See also[edit]

References[edit]

  1. ^ "The Eight Fallacies of Distributed Computing". 
  2. ^ "Malware Defensive Techniques Will Evolve as Security Arms Race Continues". 
  3. ^ a b "Deutsch's Fallacies, 10 Years After". 

External links[edit]