The term "peer-to-peer" has come to be applied to networks that expect end users to contribute their own files, computing time, or other resources to some shared project. Even more interesting than the systems'' technical underpinnings are their socially disruptive potential: in various ways they return content, choice, and control to ordinary users. While this book is mostly about the technical promise of peer-to-peer, it also talks about its exciting social promise. Communities have been forming on the Internet for a long time, but they have been limited by the flat interactive qualities of email and Network newsgroups. People can exchange recommendations and ideas over these media, but have great difficulty commenting on each other''s postings, structuring information, performing searches, or creating summaries. If tools provided ways to organize information intelligently, and if each person could serve up his or her own data and retrieve others'' data, the possibilities for collaboration would take off. Peer-to-peer technologies along with metadata could enhance almost any group of people who share an interest - technical, cultural, political, medical, you name it. This book presents the goals that drive the developers of the best-known peer-to-peer systems, the problems they''ve faced, and the technical solutions they''ve found.