Remember to check this regularly!
Peer-to-peer (P2P) computing can be defined as the sharing of computer resources and services by direct exchange between the participating machines. The term took center stage of the computing field in the late 1990s, with systems such as Napster, SETI@home and Guntella, becoming the favorite topic in IT-related forums. Today, a Google search for "peer-to-peer" quickly returns over 50,000,000 hits!
While P2P became famous mostly in the context of (legal and illegal) file sharing, the model has been successfully applied in a number of other contexts from telephony to media streaming and naming services. Of course, not everybody think is such a great idea. Reportedly representing over 60% of the total Internet traffic, P2P is challenging our understanding of intellectual properties, putting the jobs of censors at risk, and forcing Internet service providers to revisit key assumptions underlying their management techniques.
In this course, we will start with an overview of key distributed systems concepts, before introducing some of the basic ideas behind P2P and analyzing the potential, limitations and implications of this disruptive technology.
The course introduces some of the basic ideas behind peer-to-peer computing, focusing on the potential, limitations and implications of this disruptive technology.
After finishing this course, students will be able to:
Saturdays - 2:00-5:00PM, place Tech M164.
In compliance with Section 504 of the 1973 Rehabilitation Act and the Americans with Disabilities Act, Northwestern University is committed to providing equal access to all programming. Students with disabilities seeking accommodations are encouraged to contact the office of Services for Students with Disabilities (SSD) at +1 847 467-5530 or firstname.lastname@example.org. SSD is located in the basement of Scott Hall. Additionally, I am available to discuss disability-related needs during office hours or by appointment.
I will assume you have a basic understanding of computer systems and networking; we will review some basic concepts (e.g. processes and inter-process communication) in the first meeting.
We will use the course web site (http://www.cs.northwestern.edu/~fabianb/classes/msit-p2p-w08) to post announcements related to the course. You should check this regularly for schedule changes, clarifications and corrections to assignments, and other course-related announcements.
There are not textbook required for this course; we will rely on a set of course notes and papers that I will be made available in the course website.
The course is organized around a set of lecture, in-class discussions, homework assignment and essays. Assignments will focus on gaining some practical experience with peer-to-peer system (e.g. BitTorrent), acquiring an understanding of the related research context through readings and delving into some key topics through short essays on key topics.
All assignments are individual efforts although you are encouraged to discuss the problems and issues with the group.
This is my first time teaching an MSIT course. I will attempt to modulate the difficulty and expectations to keep you challenged. Your feedback is encouraged!
When reading papers it is normally useful to write down a summary of about a page. Your summary should include at least:
You may find the following brochure useful: Efficient reading of papers in Science and Technology by Michael J. Hanson, 1990, revised 2000 Dylan McNamee.
Grading will be based on class participation (50%) and homework assignments (50%).