Distributed Systems by George F. Coulouris & Fred Halsall