Distributed algorithms and protocols - Raynal Michel (1988)