Distributed Systems : Principles and Paradigms - Tanenbaum, Andrew S.; Steen, Maarten Van (Prentice Hall, 2002)