Design And Analysis of Distributed Algorithms, Wiley Series on Parallel and Distributed Computing