Fallacies of Distributed Computing: 8. The network is homogeneous
Fallacies of Distributed Computing
The fallacies of distributed computing are a set of assertions describing false assumptions made about distributed systems.
L. Peter Deutsch drafted the first 7 fallacies in 1994, with the 8th added by James Gosling in 1997.
The 8 fallacies are:
- The network is reliable
- Latency is zero
- Bandwidth is infinite
- The network is secure
- Topology doesn’t change
- There is one administrator
- Transport cost is zero
- The network is homogeneous
8. The network is homogeneous
Networks typically must support a wide variety of connected clients — from desktop-class machines to mobile and IoT devices. These devices and the applications running on them may not be interoperable and a variety of standards-based and proprietary protocols and data formats may be in use.
The network is not homogenous, it is heterogenous.
Interoperability is key.
Where possible, avoid applications that use proprietary protocols in favour of those leveraging standards-based ones. Favour data formats that enable interoperability e.g. JSON or XML over binary formats (fallacy 7 aside) and architectures such as REST or web services, particularly when integrating with third-party services.