Dynamic Analysis of the Arrow Distributed Protocol

Maurice Herlihy, Fabian Kuhn, Srikanta Tirthapura, Roger Wattenhofer
2006 Theory of Computing Systems  
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.1007/s00224-006-1251-9 fatcat:f44w234hwvaihlxoodbvbitavq