Distributed systems : concepts and design. - Coulouris, George; Dollimore, Jean; Kindberg, Tim (Addison-Wesley, 2009)