Dynamic analysis of the arrow distributed protocol

Fabian Kuhn, Roger Wattenhofer
2004 Proceedings of the sixteenth annual ACM symposium on Parallelism in algorithms and architectures - SPAA '04  
Distributed queuing is a fundamental coordination problem that arises in a variety of applications, including distributed directories, totally ordered multicast, and distributed mutual exclusion. The arrow protocol is a solution to distributed queuing that is based on path reversal on a pre-selected spanning tree of the network. We present a novel and comprehensive competitive analysis of the arrow protocol. We consider the total cost of handling a finite number of queuing requests, which may
more » ... may not be issued concurrently, and show that the arrow protocol is O(s • log D)-competitive to the optimal queuing protocol, where s and D are the stretch and the diameter, respectively, of the spanning tree. In addition, we show that our analysis is almost tight by proving that for every spanning tree chosen for execution, the arrow protocol is (s • log(D/s)/log log(D/s))-competitive to the optimal queuing protocol. Our analysis reveals an intriguing connection between the arrow protocol and the nearest neighbor traveling salesperson tour on an appropriately defined graph.
doi:10.1145/1007912.1007962 dblp:conf/spaa/KuhnW04 fatcat:jarmxmugv5cede4wsfvp4ok3ku