CSCI 3325
Distributed Systems

Bowdoin College
Spring 2019
Instructor: Sean Barker


The course schedule is tentative and subject to change. This page will be updated frequently to reflect the most up-to-date schedule.

TueJan 221Introductionintro.pdf, Ch. 1
ThuJan 242Servers, Sockets, and Cserver-basics.pdf, socketdemo.c, Ch. 3.1, 3.3-3.4
TueJan 293Networks and Routingnetwork-basics.pdf, Ch. 4.1
ThuJan 314Networks and RoutingPaper: J.H. Saltzer, D.P. Reed, and D.D. Clark. End-to-end arguments in system design. ACM Transactions on Computer Systems, November 1984.
TueFeb 55UDP and TCPtransport-layer.pdf
ThuFeb 76Giant-Scale Servicesgiant-scale.pdf, Paper: Eric Brewer. Lessons from Giant-Scale Internet Services. IEEE Internet Computing, July/August 2001.
TueFeb 12No Class: Cancelled
ThuFeb 147Remote Procedure Callsremote-procedures.pdf, Ch. 4.2, 8.3
TueFeb 198Naming and DNSnaming.pdf, Ch. 5
ThuFeb 219Content Distribution Networkscdn.pdf, Ch. 7.6, Paper: Wang, Park, Pang, Pai, and Peterson. Reliability and Security in the CoDeeN Content Distribution Network. USENIX Annual Technical Conference (ATC), June 2004.
TueFeb 2610Emailemail.pdf, Paper: Saito, Bershad, and Ley. Manageability, Availability and Performance in Porcupine: a Highly Scalable, Cluster-Based Mail Service. ACM Symposium on Operating Systems Principles (SOSP), December 1999.
ThuFeb 2811Time and Clock Synchronizationtime.pdf, Ch. 6.1-6.2
TueMar 512Coordinationcoordination.pdf, Ch. 6.3-6.4
ThuMar 7Midterm Exam
TueMar 12No Class: Spring Break
ThuMar 14No Class: Spring Break
TueMar 19No Class: Spring Break
ThuMar 21No Class: Spring Break
TueMar 2613MapReducemapreduce.pdf, Paper: Jeffrey Dean and Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters. USENIX Symposium on Operating Systems Design and Implementation (OSDI), December 2004.
ThuMar 2814Hadoop Cluster SetupCluster setup guide
TueApr 215Storage Systemsstorage.pdf, Paper: Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, and Robert E. Gruber. Bigtable: A Distributed Storage System for Structured Data. 7th Symposium on Operating System Design and Implementation (OSDI), November 2006.
ThuApr 416Distributed File Systemsdfs.pdf, Ch. 2.4 (NFS)
TueApr 917Distributed File Systems
ThuApr 1118Peer-to-Peer Systemsp2p.pdf, Ch. 2.3 (P2P)
TueApr 1619Fault Tolerance
ThuApr 1820Overlay Networks and DHTsPaper: Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M. Frans Kaashoek, Frank Dabek, and Hari Balakrishnan. Chord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications. IEEE/ACM Transactions on Networking, Feburary 2003.
TueApr 2321Securitysecurity.pdf
ThuApr 2522Security
TueApr 3023Virtualizationvirtual.pdf
ThuMay 224Project Presentations
TueMay 725Project Presentations