Distributed Systems : principles and paradigms - Tanenbaum, Andrew S., Steen, maarten van steen (Prentice Hall, 2002)