CS4980:0005: Peer-to-peer and Social Networks
Fall 2015

Instructor

Sukumar Ghosh, 201P Maclean Hall, 319-335-0738, sukumar-ghosh@uiowa.edu
Class meeting time: 10:30P-11:20 AM MWF 213 MLH (3 sh)
Office hours: 2:15-3:45 PM Mondays and Fridays

Teaching Assistant

Thamer Alsulaiman, thamer-alsualiman@uiowa.edu, 201N MLH, Tuesdays 1:30-3:30PM and Thursdays 10:00-11:00 AM.

Textbook

There is no required textbook. Good reference books in social networks are
[1] Albert-Laszlo Barabasi: Linked: How Everything Is Connected to Everything Else and What It Means. Perseus publishing (2002)
[2] David Easley, Jon Kleinberg. Networks, Crowds, and Markets: Reasoning About a Highly Connected World. Cambridge University Press, 2010 [A pre-publication draft is available for free download here )
[3] Mark Newman: Networks: An Introduction. Oxford University Press, 2010

For peer-to-peer networks, we will use this list of papers

Course Outline

Attempts to understand how social networks evolve and to quantify their characteristics started some fifty years ago. Since then, much work has been done to measure, classify and derive important properties of these networks. Comparatively, Peer-to-Peer (P2P) systems are a more recent development in Internet information systems. The major focus is to see how a meaningful distributed system can be built by the millions of machines at the edges of the Internet without the help of a distinguished node like a central server. Important applications include file sharing, searching, storage, streaming, multicast, publish-subscribe etc. Topics will include:
rk Creation Introduction to Social and P2P networks
Random graphs, power-law graphs, small-world graphs and various metrics
First generation P2P networks: Napster, Gnutella
Unstructured vs. DHT-based structured networks
KaZaA, Chord, CAN, Pastry, BitTorrent, Kademlia, Skip graph
Self-organization, routing, replication, storage, security, selfishness, etc

Tests and assignments

Two quizzes (20%), two assignments (20%), a project (50%) and one class presentation (10%); There is no final examination. Project topics will be posted during the third week of classes.

Quiz 1: September 25, 2015 (in class: duration 30 mins)
Quiz 2: November 6, 2015 (in class: duration 30 mins)

Lecture Notes

August 24, 2015
Lecture 1. Introduction to Social and P2P Networks
August 26, 2015
Lecture 2. Random graphs
August 28, 2015
Lecture 3. Random graphs continued.
Read Chapter 2 of [2] David Easley, Jon Kleinberg. Networks, Crowds, and Markets
August 31, 2015
Lecture 4. Powerlaw graphs
Read Chapter 18 of [2] David Easley, Jon Kleinberg. Networks, Crowds, and Markets
September 2, 2015
Lecture 5. Small world graphs
Read Paper [8] from the Reading list. Also
Read Chapter 20 of [2] David Easley, Jon Kleinberg. Networks, Crowds, and Markets
September 4, 2015
Lecture 6. Small world graphs continued
September 9, 2015
Lecture 7. Centrality Measures
Read Chapter 3 of Easley and Kleinberg's book.
September 11, 2015
Lecture 8. Community Detection
Read Chapter 3 of Easley and Kleinberg's book.
September 14, 2015
Lecture 9. P2P Networks: Gnutella
Google search will lead to many articles on Gnutella
September 16, 2015
Lecture 10. How to make Gnutella scalable?
Read Paper number 3 from the list.
September 18, 2015
Lecture 11. Plaxton Routing
Read Paper number 5 (and also 26) from the list.
September 21, 2015
Lecture 12. Plaxton Routing (continued)
Read Paper number 5 (and also 26) from the list.
September 23, 2015
Lecture 13. Consistent Hashing and Chord
Read Paper number 1 (and also the techical report), and number 2 from the list.
September 28, 2015
Lecture 14. Chord (continued)
Read Paper number 1 (and also the techical report), and number 2 from the list.
September 30, 2015
Lecture 15. Chord vs Pastry
Read Paper number 26 from the list.
October 12, 2015
Lecture 16. Search Engine or Social Media
Voice your opinion
Lecture 17. Skip list and Skip graph
Read Paper number [12]
October 26, 2015
Lecture 18. Selfishness in P2P
Lecture 19. Network Creation Game Read Paper number [34]
November 6, 2015
Lecture 20. Content Delivery Networks
Read Paper number [52]
November 13, 2015
Lecture 21. Community detection via random walk
Read paper number [57]
November 18, 2015
Lecture 22. Replication Strategies in P2P
Read Paper number [18]
November 20, 2015
Lecture 23. Kademlia P2P Network
Read Paper number [35]