Distributed systems : concepts and design - Κουλούρης, Γιώργος. (Addison-Wesley, 2005)