Distributed systems Concepts and design - Coulouris Georgh (1994)