Distributed Algorithms - Lynch, Nancy A. (Morgan Kaufmann, 1996)