Distributed Systems : Principles and Paradigms - Tanenbaum, Andrew S (Pearson Prentice Hall, 2014)