Distributed systems : concepts and design - Κουλούρης, Γιώργος (International computer science series, 2005)