This Article 
 Bibliographic References 
 Add to: 
The Distributed Spanning Tree Structure
December 2009 (vol. 20 no. 12)
pp. 1738-1751
Sylvain Dahan, Laboratoire d'Informatique LIFC, Besançon
Laurent Philippe, Laboratoire d'Informatique LIFC, Besançon
Jean-Marc Nicod, Laboratoire d'Informatique LIFC, Besançon
Search algorithms are a key issue to share resources in large distributed systems as peer networks. Several distributed interconnection structures and algorithms have already been studied in this context. With expanding ring algorithms, the efficiency of searches depends on the topology used to send query requests and the dynamics of the structure. In this paper, we present an interconnection structure that limits the number of messages needed for search queries. This structure, called Distributed Spanning Tree (DST), defines each node as the root of a spanning tree. So, it behaves as a tree for the number of messages but it balances the load generated by the requests among computers, and thus, it avoids to overload the root node. This structure is scalable because it needs only a logarithmic memory space per computer to be maintained. A formal and practical description of the structure is presented and we describe traversal algorithms. Simulations show that DST-based searches behave better than randomly generated graphs and trees as it generates less messages to query all computers while avoiding the tree bottlenecks.

[1] E.K. Lua, J. Crowcroft, M. Pias, R. Sharma, and S. Lims, “A Survey and Comparison of Peer-to-Peer Overlay Network Schemes,” IEEE Comm. Survey and Tutorial, vol. 7, no. 2, pp. 72-93, Apr. 2005.
[2] S. Campbell, M. Kumar, and S. Olariu, “The Hierarchical Cliques Interconnection Network,” J. Parallel and Distributed Computing, vol. 64, pp. 16-28, 2004.
[3] Q.M. Malluhi and M.A. Bayoumi, “The Hierarchical Hypercube: A New Interconnection Topology for Massively Parallel Systems,” IEEE Trans. Parallel Distributed Systems, vol. 5, no. 1, pp. 17-30, Jan. 1994.
[4] S. Gribble, E. Brewer, J. Hellerstein, and D. Culler, “Scalable, Distributed Data Structures for Internet Service Construction,” Proc. Symp. Operating Systems Design and Implementation (OSDI), 2000.
[5] A. Rowstron and P. Druschel, “Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems,” Proc. IFIP/ACM Int'l Conf. Distributed Systems Platforms, vol. 2218, pp. 329-350, 2001.
[6] C.G. Plaxton, R. Rajaraman, and A.W. Richa, “Accessing Nearby Copies of Replicated Objects in a Distributed Environment,” Proc. ACM Symp. Parallel Algorithms and Architectures, pp. 311-320, 1997.
[7] Clip2, The Gnutella Protocol Specification v0.4, www9.limewire. com/developergnutella_protocol_0.4.pdf , 2001.
[8] S. Networks, The Glossary: Supernodes,, 2004.
[9] JXTA v2.0 Protocols Specification, Sun Microsystems Specification,, 2004.
[10] S. Dahan, J. Nicod, and L. Philippe, “Scalability in a GRID Server Discovery Mechanism,” Proc. 10th IEEE Int'l Workshop Future Trends of Distributed Computing Systems (FTDCS 2004), pp. 46-51, May 2004.
[11] M. Castro, P. Druschel, A.-M. Kermarrec, A. Nandi, A. Rowstron, and A. Singh, “SplitStream: High-Bandwidth Content Distribution in Cooperative Environments,” Proc. Second Int'l Workshop Peer-to-Peer System, Feb. 2003.
[12] B. Cohen, Incentives Build Robustness in Bittorrent,, 2003.
[13] M. Izal, G. Urvoy-Keller, E. Biersack, P. Felber, A. Al Hamra, and L. Garcés-Erice, “Dissecting Bittorrent: Five Months in a Torrent's Lifetime,” Proc. Fifth Int'l Workshop Passive and Active Network Measurement, pp. 1-11, Apr. 2004.
[14] E. Caron and F. Desprez, “Diet: A Scalable Toolbox to Build Network Enabled Servers on the Grid,” Int'l J. High Performance Computing Applications, vol. 20, no. 3, pp. 335-352, 2006.
[15] E. Caron, F. Desprez, F. Lombard, J.-M. Nicod, L. Philippe, M. Quinson, and F. Suter, “A Scalable Approach to Network Enabled Servers,” Proc. Eighth Int'l EuroPar Conf., pp. 907-910, Aug. 2002.
[16] H. Nakada, S. Matsuoka, K. Seymour, J. Dongarra, C. Lee, and H. Casanova, “A GridRPC Model and API for End-User Applications,” technical report, Global Grid Forum, Sept. 2004.
[17] S. Contassot-Vivier, F. Lombard, J.-M. Nicod, and L. Philippe, “Evaluation of the DIET Hierarchical Metacomputing Architecture,” Parallel and Distributed Computing Practices, special issue on parallel numeric algorithms on faster computers, vol. 5, no. 4, pp.64-76, Dec. 2002.
[18] Z. Tari and G. Craske, “A Query Propagation Approach to Improve CORBA Trading Service Scalability,” Proc. Int'l Conf. Distributed Computing Systems, pp. 504-511, 2000.
[19] E. Anceaume, A.K. Datta, M. Gradinariu, G. Simon, and A. Virgillito, “DPS: Self-* Dynamic Reliable Content-Based Publish/Subscribe System,” Technical Report 1665, IRISA, Dec. 2004.
[20] E. Anceaume, M. Gradinariu, A.K. Datta, G. Simon, and A. Virgillito, “A Semantic Overlay for Self-* Peer-to-Peer Publish/Subscribe,” Proc. 26th IEEE Int'l Conf. Distributed Computing Systems, pp. 22-30, July 2006.
[21] S. Dahan, “Distributed Spanning Tree Algorithms for Large Scale Traversals,” Proc. 11th Int'l Conf. Parallel and Distributed Systems (ICPADS '05), pp. 453-459, July 2005.
[22] Simulator, , 2006.
[23] S. Dahan, J. Nicod, and L. Philippe, “The Distributed Spanning Tree: A Scalable Interconnection Topology for Efficient and Equitable Traversal,” Proc. Fifth Int'l Symp. Cluster Computing and the Grid, May 2005.
[24] D.E. Knuth, The Art of Computer Programming. Addison-Wesley, vol. 3, ch. 6.2.4, 1998.

Index Terms:
Distributed systems, search algorithms, expanding ring algorithms, interconnection graphs.
Sylvain Dahan, Laurent Philippe, Jean-Marc Nicod, "The Distributed Spanning Tree Structure," IEEE Transactions on Parallel and Distributed Systems, vol. 20, no. 12, pp. 1738-1751, Dec. 2009, doi:10.1109/TPDS.2009.22
Usage of this product signifies your acceptance of the Terms of Use.