Fallacies of Distributed Computing
Encyclopedia
The Fallacies of Distributed Computing are a set of assumptions that Peter Deutsch
and others at Sun Microsystems
originally asserted programmer
s 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.
are summarized as follows:
. Peter Deutsch
, one of the original Sun "Fellow
s," 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" (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.
L. Peter Deutsch
L Peter Deutsch or Peter Deutsch is the founder of Aladdin Enterprises and creator of Ghostscript, a free software PostScript and PDF interpreter....
and others at Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...
originally asserted programmer
Programmer
A programmer, computer programmer or coder is someone who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software. One who practices or professes a formal approach to...
s new to distributed
Distributed computing
Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...
applications
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...
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.
The fallacies
The fallaciesFallacy
In logic and rhetoric, a fallacy is usually an incorrect argumentation in reasoning resulting in a misconception or presumption. By accident or design, fallacies may exploit emotional triggers in the listener or interlocutor , or take advantage of social relationships between people...
are summarized as follows:
- The networkComputer networkA computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information....
is reliable. - LatencyLatency (engineering)Latency is a measure of time delay experienced in a system, the precise definition of which depends on the system and the time being measured. Latencies may have different meaning in different contexts.-Packet-switched networks:...
is zero. - BandwidthThroughputIn communication networks, such as Ethernet or packet radio, throughput or network throughput is the average rate of successful message delivery over a communication channel. This data may be delivered over a physical or logical link, or pass through a certain network node...
is infinite. - The network is secureComputer securityComputer security is a branch of computer technology known as information security as applied to computers and networks. The objective of computer security includes protection of information and property from theft, corruption, or natural disaster, while allowing the information and property to...
. - TopologyNetwork topologyNetwork topology is the layout pattern of interconnections of the various elements of a computer or biological network....
doesn't change. - There is one administratorNetwork administratorA network administrator, network analyst or network engineer is a person responsible for the maintenance of computer hardware and software that comprises a computer network...
. - Transport cost is zero.
- The network is homogeneous.
Effects of the fallacies
- Ignorance of network latency, and of the packet lossPacket lossPacket loss occurs when one or more packets of data travelling across a computer network fail to reach their destination. Packet loss is distinguished as one of the three main error types encountered in digital communications; the other two being bit error and spurious packets caused due to noise.-...
it can cause, induces application- and transport-layer developers to allow unbounded traffic, greatly increasing dropped packets and wasting bandwidth. - Complacency regarding network security results in being blindsided by malicious users and programs that continually adapt to security measures.
- 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.
- 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.
- Ignorance of bandwidth limits on the part of traffic senders can result in bottlenecks over frequency-multiplexedFrequency-division multiplexingFrequency-division multiplexing is a form of signal multiplexing which involves assigning non-overlapping frequency ranges to different signals or to each "user" of a medium.- Telephone :...
mediums.
History
The list of fallacies generally came about at Sun MicrosystemsSun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...
. Peter Deutsch
L. Peter Deutsch
L Peter Deutsch or Peter Deutsch is the founder of Aladdin Enterprises and creator of Ghostscript, a free software PostScript and PDF interpreter....
, one of the original Sun "Fellow
Fellow
A fellow in the broadest sense is someone who is an equal or a comrade. The term fellow is also used to describe a person, particularly by those in the upper social classes. It is most often used in an academic context: a fellow is often part of an elite group of learned people who are awarded...
s," is credited with penning the first seven fallacies in 1994; however, Bill Joy
Bill Joy
William Nelson Joy , commonly known as Bill Joy, is an American computer scientist. Joy co-founded Sun Microsystems in 1982 along with Vinod Khosla, Scott McNealy and Andy Bechtolsheim, and served as chief scientist at the company until 2003...
and Tom Lyon had already identified the first four as "The Fallacies of Networked Computing" (the article claims "Dave Lyon", but this is considered a mistake). Around 1997, James Gosling
James Gosling
James A. Gosling, OC is a computer scientist, best known as the father of the Java programming language.-Education and career:In 1977, Gosling received a B.Sc in Computer Science from the University of Calgary...
, another Sun Fellow and the inventor of Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, added the eighth fallacy.
External links
- The Eight Fallacies of Distributed Computing
- Fallacies of Distributed Computing Explained by Arnon Rotem-Gal-Oz