DIVISION OF ENGINEERING AND APPLIED SCIENCES
HARVARD UNIVERSITY
CS 264. Peer-to-Peer
Systems
Lectures (Spring 2006): Tuesdays and Thursdays 11:30-1:00 pm
Location: Maxwell-Dworkin 319
|
Name
|
E-mail
|
Office
|
Office Hours
|
|
Professor Mema Roussopoulos
|
cs264-staff@eecs.harvard.edu
|
Maxwell Dworkin 227
|
Thursdays, 2:00-4:00 pm
|
|
Prashanth Bungale
|
cs264-staff@eecs.harvard.edu
|
Maxwell Dworkin 209
|
Tuesdays 2:30-4:00 pm |
Announcements
1) Please make sure you subscribe to the Cs264-class@eecs.harvard.edu
mailing list. We will use this list to make important announcements as
the semester proceeds. See directions below for how to subscribe.
2) Project suggestions are now available
here.
3) The proposal format and a sample proposal are now available.
4) A Latex template for writing your paper and status report is available here
5) Here is the description of what your status report
should contain.
Course Description
Peer-to-peer systems have recently gained a lot of attention in the
social, academic, and commercial communities. One of the early
driving forces behind the peer-to-peer concept is that there are many
PCs in homes and offices that lie idle for large chunks of time. Why
not leverage these idle resources to do something useful, like share
computation or share content? In fact, peer-to-peer systems have
become synonymous with file-sharing systems as systems like Napster,
Gnutella, Kazaa and BitTorrent have enjoyed explosive popularity over the last few
years.
While file-sharing has been very successful, peer-to-peer systems are
important and useful for more than just (illegal) sharing of song
files. In this class, we will study peer-to-peer systems in depth to
understand what they are, what they are good for, and how to improve
them. The class will be primarily based on discussions of recent
research papers on peer-to-peer systems. Topics include: routing,
search, caching, security, reputation and trust, incentives, and
applications.
This class is geared toward graduate students at all levels as well as
advanced undergraduates (Computer Science 161 or Computer Science 143
are required).
Assignments
This course will involve reading papers, participating in class
discussions, and completing a research project.
Students will be required to write reviews for papers they read. Look
here to get information on how to write a
review. Reviews are due before each class by email. (Send these as a
single email with the current lecture date in the subject line, to
cs264-staff@eecs. Please send reviews in plain text.)
Students will actively participate in class discussions. For each paper, we will study the
contribution of the paper, place this contribution in context of previous literature,
critique the methodology used and the evaluation presented. Be prepared to come
to class having read the paper carefully and ready to discuss questions or comments you have
in detail.
Note: NO LAPTOPS ALLOWED IN CLASS. You must have access to a printer so
you may download, print copies of the papers (available below), and bring them
to class for the discussions. I recommend you scribble directly on a paper any notes
or questions that arise as you are reading. In fact, taking detailed notes on the paper
and then reading through them before writing your review and before coming to class is
a good idea. You are also welcome to send any questions
about the paper to the staff mailing list before class if you feel shy asking about
a particular detail in the paper.
Students will be required to undertake a major research
project of their choice. Students are to work in groups of two or three (two preferred).
The goal is to identify a problem that you think is not currently
addressed in the peer-to-peer literature, to propose a solution to the
problem, and to evaluate the solution using analysis, simulation, and/or
experimental results. At the end of the course, students will present
their work to the class in a short talk. The goal is to help students
gain experience in research and to produce a result that might lead to
a publishable paper in the future.
Here is a list of suggested projects posted in
previous years. We will update this as the semester progresses.
Class Mailing Lists
Staff mailing list: cs264-staff@eecs.harvard.edu . Students
will use this list to send their paper reviews as well as any private
questions/concerns to the staff.
Class discussion mailing list: Cs264-class@eecs.harvard.edu
. Students can use this list to discuss concepts covered in class
and questions/issues arising from the assignments. We will also be
using this list to send out any important announcements, so please be
sure to subscribe. You can subscribe to this list by clicking here
and filling out the form provided.
Grading
Reviews: 15%
Class Participation: 15%
Project: 70%
Syllabus & Schedule
(bibliography)
|
Date
|
Topic
|
Readings
|
|
2/2
|
Course Overview, P2P Overview
|
-- No reading --
|
|
2/7
|
Routing
|
A Scalable Content Addressable Network
|
|
2/9
|
Routing
|
Chord,
Serving DNS Using a Peer-to-Peer Lookup Service
|
|
2/14
|
Applications: OpenDHT,
Applications: Stream Processing
|
OpenDHT: A Public DHT Service and Its Uses
Network-Aware Operator Placement for Stream-Processing Systems
|
|
2/16
|
Routing, Incentives
|
Making Gnutella-like P2P Systems Scalable
,
Designing Incentives for Peer-to-Peer Routing
|
|
2/21
|
Applications: Samsara
|
Samsara: Honor Among Thieves in Peer-to-Peer Storage
|
|
2/23
|
Measurement
|
Measurement, Modeling, and Analysis of a Peer-to-Peer File-Sharing Workload
|
|
2/28
|
Applications: LOCKSS
|
Preserving Peer Replicas By Rate-Limited Sampled Voting
|
|
3/2
|
Legal issues in P2P
|
Peer-to-Peer File Sharing and Copyright Law: A Primer for Developers
,
Are Contributions to P2P Technical Forums Private or Public Goods? - An Empirical Investigation
|
|
3/7
|
Legal and Security Issues in P2P
|
SPIES: Secret Protection Incentive-based Escrow System,
A Survey of Peer-to-Peer Security Issues
|
|
3/9
|
Incentives
|
Incentives Build Robustness in Bit Torrent
Faithfulness in Internet Algorithms
|
|
3/14
|
Security
|
The Sybil Attack
,
Vigilante: End-to-End Containment of Internet Worms
|
|
3/16
|
Overlay Structure,
Applications: Network Measurement
|
Debunking some myths about structured and unstructured overlays
,
Network Measurement as a Cooperative Enterprise
Project Proposals Due
|
|
3/21
|
Applications: FreeHaven
|
The Free Haven Project: Distributed Anonymous Storage Service
|
|
3/23
|
Applications: Tor
Reputation
|
Tor: The Second-Generation Onion Router
Reputation in P2P Anonymity Systems
|
|
3/28
|
Spring Break
|
-- No Reading --
|
|
3/30
|
Spring Break
|
-- No Reading --
|
|
4/4
|
Incentives, Applications
|
Robust Incentive Techniques for Peer-to-Peer Networks
,
P2P Content Search: Give the Web Back to the People
|
|
4/6
|
Applications: Skype
|
An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol
An Experimental Study of the Skype Peer-to-Peer VoIP System
|
|
4/11
|
Applications: Application-level Multicast
|
Chunkyspread: Multi-tree Unstructured Peer-to-Peer Multicast
,
Incentives-Compatible Peer-to-Peer Multicast
|
|
4/13
|
Security
|
Eclipse Attacks on Overlay Networks: Threats and Defenses
,
ConChord: Cooperative SDSI Certificate Storage and Name Resolution
|
|
4/18
|
Applications: Information Retrieval
|
Mercury: Supporting Scalable Multi-Attribute Range Queries
Status Reports Due
|
|
4/20
|
Applications
|
Experiences in building and operating ePOST, a reliable peer-to-peer application
|
|
4/25
|
Incentives, Applications
|
SWIFT: A System With Incentives For Trading
,
SmartSeer:Using a DHT to Process Continuous Queries over Peer-to-Peer Networks
|
|
4/27
|
Exploring Design Spaces,
2 P2P or Not 2 P2P?
|
Exploring the Design Space of Distributed and P2P Systems
,
2 P2P or Not 2 P2P?
|
|
5/2
|
Project Presentations
|
-- No Reading --
|
|
5/4
|
Project Presentations
|
-- No Reading --
|
|
5/9
|
No Class (Reading Period)
|
-- No Reading --
|
|
5/11
|
No Class (Reading Period)
|
-- No Reading --
|
|
5/15
|
No Class (Reading Period)
|
Final Project Due at 5 pm!
|
Bibliography
- A Scalable Content Addressable Network.
S. Ratnasamy, P. Francis, M. Handley, R. Karp and S. Shenker.
Proceedings of the ACM SIGCOMM 2001 Conference.
August, 2001. San Diego, CA.
- Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
I. Stoica and R. Morris and D. Karger and M. F. Kaashoek and H. Balakrishnan.
Proceedings of the ACM SIGCOMM 2001 Conference.
August, 2001. San Diego, CA.
- Serving DNS Using a Peer-to-Peer Lookup Service.
Russ Cox, Athicha Muthitacharoen and Robert T. Morris.
Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '02).
March 2002. Cambridge, MA.
-
OpenDHT: A Public DHT Service and Its Uses. Sean Rhea, Brighten Godfrey, Brad Karp, John Kubiatowicz, Sylvia Ratnasamy, Scott Shenker, Ion Stoica, and Harlan Yu. Proceedings of ACM SIGCOMM 2005, August 2005.
- Network-Aware Operator Placement for Stream-Processing Systems
Peter Pietzuch, Jonathan Ledlie, Jeffrey Shneidman, Mema Roussopoulos, Matt Welsh, Margo Seltzer, ICDE 2006, April, 2006.
- Middleboxes No Longer Considered Harmful.
M. Walfish, J. Stribling, M. Krohn, H. Balakrishnan, R. Morris, S. Shenker.
OSDI 2004.
- Making Gnutella-like P2P Systems Scalable.
Yatin Chawathe, Sylvia Ratnasamy, Lee Breslau, and Scott Shenker.
SIGCOMM 2003. August 2003. Karlsruhe, Germany.
- Designing Incentives for Peer-to-Peer Routing.
Alberto Blanc, Yi-Kai Liu, Amin Vahdat.
Workshop on Economics of Peer-to-Peer Systems. June 2004.
- Preserving Peer Replicas By Rate-Limited Sampled Voting.
Petros Maniatis, Mema Roussopoulos, TJ Giuli, David S. H. Rosenthal,
Mary Baker, and Yanto Muliadi.
Proceedings of the 19th ACM SOSP. October 2003. Bolton Landing, NY.
- Samsara: Honor Among Thieves in Peer-to-Peer Storage.
Landon P. Cox, Brian D. Noble.
Proceedings of the 19th ACM SOSP. October 2003. Bolton Landing, NY.
- Measurement, Modeling, and Analysis of a Peer-to-Peer File-Sharing Workload.
Krishna P. Gummadi, Richard J. Dunn, Stefan Saroiu, Steven D. Gribble,
Henry M. Levy, and John Zahorjan.
Proceedings of the 19th ACM SOSP. October 2003. Bolton Landing, NY.
- Peer-to-Peer File Sharing and Copyright Law: A Primer for Developers.
Fred von Lohmann.
Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '03).
February 2003. Berkeley, CA.
- Are Contributions to P2P Technical Forums Private or Public Goods? - An Empirical Investigation.
Bin Gu and Sirkka Jarvenpaa.
Workshop on Economics of Peer-to-Peer Systems. June 2003. Berkeley, CA.
- 2 P2P or Not 2 P2P?.
Mema Roussopoulos, Mary Baker, David Rosenthal, TJ Giuli, Petros
Maniatis, and Jeff Mogul.
Proceedings of the Third International Workshop on Peer-to-Peer Systems (IPTPS '04).
February 2004. La Jolla, CA.
- The Sybil Attack.
J. Douceur.
Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '02).
March 2002. Cambridge, MA.
-
M. Costa, J. Crowcroft, M. Castro, A. Rowstron, L. Zhou, L. Zhang, and P. Barham,
Vigilante: End-to-End Containment of Internet Worms, SOSP 2005.
-
M. Castro, M. Costa, and A. Rowstron, Debunking some myths about structured and unstructured overlays, NSDI 2005.
- Kill the Messenger: A Taxonomy of Rational Attacks.
S. Nielson, S. Crosby, D. Wallach.
IPTPS 2005.
- Exploring the Design Space of Distributed and P2P Systems.
Stefan Saroiu, P. Krishna Gummadi, and Steven D. Gribble.
Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '02).
March 2002. Cambridge, MA.
- The Free Haven Project: Distributed Anonymous Storage Service.
Roger Dingledine, Michael Freedman, and David Molnar.
Workshop on Design Issues in Anonymity and Unobservability. July 2000.
International Computer Science Institute (ICSI), Berkeley, CA.
- Cashmere: Resilient Anonymous Routing. Li Zhuang, Feng Zhou,
Ben Y. Zhao and Antony Rowstron, NSDI 2005.
- P2P Content Search: Give the Web Back to the People.
Matthias Bender, Sebastian Michel, Peter Triantafillou, Gerhard Weikum, Christian Zimmer IPTPS 2006.
-
Salman A. Baset and Henning Schulzrinne, An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol", IEEE Infocom 2006.
-
An Experimental Study of the Skype Peer-to-Peer VoIP System.
Saikat Guha, Neil Daswani, Ravi Jain.
- Chunkyspread: Multi-tree Unstructured Peer-to-Peer Multicast.
Vidhyashankar Venkataraman, Paul Francis.
- SPIES: Secret Protection Incentive-based Escrow System.
N. Margolin, M. Wright, B. Levine.
Workshop on Economics of Peer-to-Peer Systems. June 2004.
- A Survey of Peer-to-Peer Security Issues.
Dan S. Wallach.
International Symposium on Software Security. November 2002.
- Balances of Power on eBay: Peers or Unequals?.
Ben Gross and Alessandro Acquisti.
Workshop on Economics of Peer-to-Peer Systems. June 2003. Berkeley, CA.
- The Impact of DHT Routing on Resilience and Proximity.
K. Gummadi and R. Gummadi and S. Gribble and S. Ratnasamy and S. Shenker and I. Stoica.
SIGCOMM 2003. August 2003. Karlsruhe, Germany.
- Incentives Build Robustness in Bit Torrent.
Bram Cohen.
Workshop on Economics of Peer-to-Peer Systems. June 2003. Berkeley, CA.
- Faithfulness in Internet Algorithms.
Jeffrey Shneidman, David Parkes, Laurant Massoulie.
PINS 2004.
- ConChord: Cooperative SDSI Certificate Storage and Name Resolution.
Sameer Ajmani, Dwaine Clarke, Chuang-Hue Moh and Steven Richman.
Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '02).
March 2002. Cambridge, MA.
- Network Measurement as a Cooperative Enterprise.
Sridhar Srinivasan and Ellen Zegura.
Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '02).
March 2002. Cambridge, MA.
- Rationality and Self-Interest in Peer-to-Peer Networks.
Jeff Shneidman and David Parkes.
Proceedings of the Second International Workshop on Peer-to-Peer Systems (IPTPS '03).
February 2003. Berkeley, CA.
- Enforcing Fair Sharing of Peer-to-Peer Resources.
Tsuen-Wan Ngan, Dan Wallach, Peter Druschel.
Proceedings of the Second International Workshop on Peer-to-Peer Systems (IPTPS '03).
February 2003. Berkeley, CA.
- Reputation in P2P Anonymity Systems.
Roger Dingledine, Nick Mathewson, and Paul Syverson.
Workshop on Economics of Peer-to-Peer Systems. June 2003. Berkeley, CA.
- A Robust Reputation System for P2P and Mobile Ad-hoc Networks. Sonja
Buchegger and Jean-Yves Le Boudec. Proceedings of the 2nd Workshop on Economics
of Peer-to-Peer Systems. June 2004.
- Tor: The Second-Generation Onion Router. Roger Dingledine, Nick
Mathewson, and Paul Syverson. Proceedings of the 13th USENIX Security Symposium.
September 2004.
- Robust Incentive Techniques for Peer-to-Peer Networks. M. Feldman, K.
Lai, I. Stoica, and J. Chuang, ACM E-Commerce Conference (EC'04). May 2004.
- Splitstream: High-Bandwidth Multicast in a Cooperative Environment.
M. Castro, P. Druschel, A.-M. Kermarrec, A. Nandi, A. Rowstron, and A. Singh. In
SOSP '03. Oct. 2003.
- Incentives-Compatible Peer-to-Peer Multicast. Tsuen-Wan "Johnny" Ngan,
Dan S. Wallach, and Peter Druschel. Proceedings of the 2nd Workshop on Economics
of Peer-to-Peer Systems. June 2004. Cambridge, Massachusetts.
- Defending against the Eclipse attacks in Overlay Networks. M. Castro,
A. Rowstron and P. Druschel. Proceedings of the 11th ACM SIGOPS European
Workshop. Sep 2004.
- Eclipse Attacks on Overlay Networks: Threats and Defenses Ngan et al., Infocom 2006.
- Mercury: Supporting Scalable Multi-Attribute Range Queries. Ashwin R.
Bharambe, Mukesh Agrawal, and Srinivasan Seshan. In SIGCOMM. August, 2004.
- SWIFT: A System With Incentives For Trading. Karthik Tamilmani, Vinay
Pai, and Alexander E. Mohr. Proceedings of the 2nd Workshop on the Economics of
Peer-to-peer Systems. June 2004. Cambridge, MA.
SmartSeer:Using a DHT to Process Continuous Queries over Peer-to-Peer Networks. Kannan, Yang, Shenker, Sharma, Banerjee, Basu, Lee. Infcocom, April 2006.
Previous Years
Spring 2005
Spring 2004