CSCI 339

Distributed Systems

Home | Calendar | Assignments | CS@Williams

Calendar

The table below lists the topics we will discuss in class and the readings associated with each topic. Readings should be completed before their associated class meeting. (VST is an abbreviation for your textbook.)

Please note that some readings are PDFs that can only be accessed using a campus computer. If you are off campus, please use the web proxy server, VPN. If you experience problems accessing any of the assigned papers, please let Jeannie know as soon as possible. Lecture slides will usually be posted after each class. The links below will not work before class. Click on the topic to access the slides (also restricted to on campus only).

Paper summaries should be submitted on GLOW before class. Since we discuss the papers in class, late submissions are not accepted for any reason.

Any future topics or assigned papers are subject to change. If you plan to work ahead more than a few days, please check with Jeannie first.

Date Topic Readings
[1] Sept 5 Course Overview / Course syllabus
  • VST Ch 1-2
[2] Sept 9 HTTP, Sockets, C/C++
    lecture2.c
    lecture2.cc
    lecture2 Makefile
    echoserver.c
    echoserver-nothreads.c
    echo Makefile
  • Project 1 out
  • VST Ch 3-4
[3] Sept 12 Networks and Routing
[4] Sept 16 IP, TCP, and UDP
[5] Sept 19 No class
[6] Sept 23 TCP
[7] Sept 26 Networks wrapup
(Last day of networks review)
  • VST Ch 6
[8] Sept 30 Naming, Directory, and Discovery
  • Project 1 due
[9] Oct 3 Remote Procedure Calls
    Server.java (XML-RPC)
    Client.java (XML-RPC)
    client.py (XML-RPC)
    client2.py (XML-RPC)
    bashrc CLASSPATH line (Apache lib)
  • Project 2 out
[10] Oct 7 RPCs, RMI, and CDNs
    Hello.java (RMI)
    HelloServer.java (RMI)
    HelloClient.java (RMI)
    server.policy (RMI)
    Article about RMI (optional)
[11] Oct 10 CDNs and Web Proxy Caches
[--] Oct 14 Reading day
[12] Oct 17 Email and Porcupine
[13] Oct 21 Time and Midterm Review
  • Project 2 due
  • VST Ch 5
[14] Oct 24 No class
  • Project 3 out
  • Midterm on GLOW due Sun Oct 27
[15] Oct 28 Coordination, Agreement, and MapReduce
    Lamport BG paper from 1982 (optional)
  • VST Ch 7-8
[16] Oct 31 MapReduce and Hadoop
    Azure VM Creation
    Hadoop Cluster Setup
    S20 VM configuration (skip to Part 2)
    S20 Cluster Setup Video
    S20 Hadoop Trival Example Video
[17] Nov 4 Storage Systems and RAID
    S20 Hadoop Advice Video
[18] Nov 7 BigTable and Distributed File Systems

  • Final Project out
  • 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.
[19] Nov 11 Internet of Things
  • Project 3 due
  • VST Ch 9
[20] Nov 14 Security Overview
  • Final Project proposal due
  • Kirill Levchenko, Andreas Pitsillidis, Neha Chachra, Brandon Enright, Mark Felegyhazi, Chris Grier, Tristan Halvorson, Chris Kanich, Christian Kreibich, He Liu, Damon McCoy, Nicholas Weaver, Vern Paxson, Geoffrey M. Voelker, and Stefan Savage. Click Trajectories: End-to-End Analysis of the Spam Value Chain IEEE Symposium on Security and Privacy (Oakland), May 2011.
[21] Nov 18 P2P Systems Overview
[22] Nov 21 DHTs and Chord
[23] Nov 25 Blockchains and Course Wrapup
    "Blockchains are a Bad Idea" (optional)
[24] Dec 2 Project Presentations
[25] Dec 5 Project Presentations
  • Final Project due TBD (no extensions)