The Eight Fallacies of Distributed Computing

L. Peter Deutsch first published the “8 Fallacies of Networking” internally while working at Sun Labs in 1991-92. This is a great list of the kind of wishful thinking that clouds so much system design.

Essentially everyone, when they first build a distributed application, makes the following eight assumptions. All prove to be false in the long run and all cause big trouble and painful learning experiences.

  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
This entry was posted in System Design and tagged , . Bookmark the permalink.
  • Erik Talvola

    Martin Fowler published an article recently in Software Development magazine called Errant Architectures which is in the same vein as this article. He talks about the lure of distributing each piece of functionality on a different node in the system, without realizing what the performance impact might be. Good reading.

  • Erik Talvola

    One more thing – you need to register to view the article on SD Magazine’s site, but it’s free.

  • L. Peter Deutsch

    Even though Peter J. Deutsch, and not L. Peter Deutsch, is a recognized pioneer in the development of Internet software, nevertheless it was L. Peter Deutsch, best known for Ghostscript, who published the “8 Fallacies.”

  • John R. Harris

    Apologies to, both L. Peter and Peter J. I have corrected the above article. Hopefully I now have the correct attribution for the 8 Fallacies.