Distributed Systems by M.W. Alford