van Steen, Maarten, and Andrew S. Tanenbaum. "A Brief Introduction to Distributed Systems." Computing 98 (2016): 967-1009.