A Decentralized and Self-Organizing Peer-to-Peer File Transfer System

Sean Barker, Jeannie R. Albrecht · 2009

The design of peer-to-peer systems presents difficult tradeoffs between scalability, efficiency, and decentralization. An ideal P2P system should be able to scale to arbitrarily large network sizes and be able to accomplish its intended goal (whether searching or downloading) with a minimum amount of overhead. To this end, most P2P systems either possess some centralized components to provide shared, reliable information or impose high communication overhead to compensate for a lack of such information, both of which are undesirable properties. Furthermore, testing P2P systems under realistic conditions is a difficult problem that complicates the process of evaluating new systems. We present Kudzu, a fully decentralized P2P file transfer system that provides both scalability and efficiency through intelligent network organization. Kudzu combines Gnutella-style querying capabilities with BitTorrent-style download capabilities. We also present our P2P test harness that replays genuine P2P user data on Kudzu in order to obtain realistic usage data without requiring an existing user base. 6 Acknowledgements Foremost thanks are due to my advisor, Jeannie Albrecht, for mentoring me both in this thesis and in the rest of my computer science education at Williams. This work would not have been possible without her guidance and suggestions. Thanks are also due to Tom Murtagh, my second reader, for helpful comments during editing as well as to the rest of the department for providing an engaging academic environment for the past four years. I am also grateful to my girlfriend Lizzie and the rest of my family for their patience and understanding while I worked on this thesis. Finally, a thanks to my fellow thesis students Catalin and Mike and the rest of my computer science friends for many shared late nights in the lab. 7 Chapter

Read the paper · More papers on PaperTik