Peer-to-Peer Computing

Objective | Textbook | Lecture Notes | Handouts | Projects | Readings | Links | Homepage


The course is at the graduate level and most topics are on-going research work. It is a seminar course and active class-room participation is expected. Each student is required to read and present research papers. The course is designed to encourage everyone to actively learn advanced concepts, to independently think over research and development issues, to pro-actively relate what we learn to the real problems in practice, to stimulate and brain-storm new ideas, to intelligently solve pressing problems in various phases of distributed and peer-to-peer computing.

The course covers general introduction to peer-to-peer computing, including models, techniques, algorithms, and security aspects for peer-to-peer architectures. Additionally, several case studies of peer-to-peer architectures will be presented. The course also offers the opportunity to participate in an optional project work.


There are no textbooks for this course, but some recommended readings and referred books.

The referred books are:

    - Dana Moore, John Hebeler.  Peer-to-Peer Network.  McGraw Hill (Chinese version: Tsinghua University Press), 2003

    - Andy Oram.  Peer-to-Peer: Harnessing the Power of Disruptive Technologies.  O'Reilly & Associates, Farnham MA, 2001

Lecture Notes

Professor: Zhengding Lu

Instructors: Ruixuan Li, Xiaofei Liao, Maoyuan Zhang, Yuhua Li, Wei Song, Guangcan Yu, Cuihua Zuo

    Lecture 0.   Course Overview (PDF)
    Lecture 1.   Introduction to P2P Computing (PDF), P2P Survey (PDF)
    Lecture 2.   Structured P2P Network - DHT (PDF)
    Lecture 3.   Unstructured P2P Network - Gnutella (PDF)
    Lecture 4.   P2P File Sharing (PDF)
    Lecture 5.   P2P Media Steaming (Invited Talk) (PDF)
    Lecture 6.   P2P Information Retrieval (PDF)
    Lecture 7.   P2P-based Collaboration (PDF)
    Lecture 8.   P2P Security Issues (PDF)
    Lecture 9.   P2P Platform - JXTA and PeerSim (PDF)
    Lecture 10.   Semantic P2P Network (PDF)

Handouts and Solutions

No specific handouts. But the requirements are as follows:

    1.  Interactive discussions (30%)
    2.  High quality presentation (30%)
    3.  Good term paper (40%)  (the cover of the test paper)

Students' work: The presentation list preview.

Some useful notes on how to prepare and deliver a good presentation could be found here.

A list of questions you may want to keep in mind when reading papers could be found here.


Project 1: Centralized File Sharing System.

Project 2: Distributed File Sharing System.

Other projects could be found on JXTA and Microsoft P2P.

Recommended Readings

1. Dejan S. Milojicic, Vana Kalogeraki, Rajan Lukose, et al, Peer-to-Peer Computing, 2002.
2.  Yang and Garcia-Molina.  Comparing Hybrid Peer-to-Peer Systems. Technical Report, Stanford University.

3.  Yang and Garcia-Molina.  Improving Search in Peer-to-Peer Networks.  In: Proc. of the 22nd International Conference on Distributed Computing Systems (ICDCS’02), June 2002

4.  Q. Lv, P. Cao, E. Cohen, K. Li and S. Shenker.  Search and Replication in Unstructured Peer-to-Peer Networks. In: Proc. of the ACM ICS, 2002

5.  Yang and Garcia-Molina. Improving Search in Peer-to-Peer Networks. Technical Report, Stanford University. 

6. Haiying Shen, Aharon S. Brodie, Cheng-zhong Xu, Weisong Shi.  Scalable and Secure P2P Overlay Networks, book chapter of book "Theoretical and Algorithmic Aspects of Sensor, Ad Hoc Wireless and Peer-to-Peer Networks," CRC press, later 2004.
7. Sylvia Ratnasamy, Paul Francis, Mark Handley, and Richard Karp. A Scalable Content-Addressable Network. ACM SIGCOMM 2001.
8. Ion Stoica, Robert Morris, David Karger, et al. Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications. ACM SIGCOMM 2001.
9. Antony Rowstron and Peter Druschel.  Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems. Middleware 2001.
10. Ben Y. Zhao, Ling Huang, Jeremy Stribling, et al. Tapestry: A Resilient Global-scale Overlay for Service Deployment. IEEE Journal on Selected Areas in Communications, January 2004, Vol. 22, No. 1
11. Frans Kaashoek and David R. Karger. Koorde: A simple degree-optimal distributed hash table. 2nd International Workshop on Peer-to-Peer Systems (IPTPS '03).
12. H. Shen, C.-Z. Xu, and G. Chen.  Cycloid: A scalable constant-degree P2P overlay network. IPDPS 2004.
13. Yunhao Liu, Xiaomei Liu, Li Xiao , Lionel M Ni, and Xiaodong Zhang. Location-Aware Topology Matching in P2P Systems. In: Proceedings of IEEE INFOCOM 2004, Hong Kong, March 2004.
14. Simon S. Lam, Huaiyu Liu. Failure Recovery for Structured P2P Networks: Protocol Design and Performance Evaluation. In: Proceedings of ACM SIGMETRICS 2004, New York City, June 2004

15.  Gnutella RFC (


Download the recommended readings from local site (zip).


A detailed reading list can be found here.

Useful Links

If you are ready to be devoted to database systems, you should cherish these web sites which directs you to numerous precious web resource. 

Ruixuan Li
College of Computer Science and Technology,
Huazhong University of Science and Technology 
Wuhan 430074, Hubei, P. R. China
Phone: 86-27-87544285