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. (AST 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, or log in using the username and password provided by Jeannie. If you experience problems accessing any of the assigned papers, please let Jeannie know as soon as possible. Paper summaries should be submitted on GLOW before class. Late submissions are not accepted for any reason.

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).

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.

NOTE: AS WITH THE LECTURE SLIDES AND PAPER PDFS, YOU MUST BE ON CAMPUS, USING THE PROXY/VPN, OR LOGGED IN TO ACCESS THE LINKS TO VIDEOS.

Date Topic Readings
[1] Feb 5 Course Overview / Course syllabus
  • AST Ch 1-2
[2] Feb 10 HTTP, Sockets, C/C++
    lecture2.c
    lecture2.cc
    Makefile
  • AST Ch 3-4
  • Project 1 out (AST Ch 12)
[3] Feb 13 Networks and Routing
    echoserver.c
    echoserver-nothreads.c
[4] Feb 17 TCP and UDP
  • Project 1 milestone due
[5] Feb 20 Networks Wrapup and Giant-Scale Services
(Last day of networks review)
[6] Feb 24 No Class
[7] Feb 27 Services Wrapup, Naming, and DNS
[8] Mar 2 Directory Services and RPCs
    Server.java (XML-RPC)
    Client.java (XML-RPC)
    Client.py (XML-RPC)
    bashrc CLASSPATH line (Apache lib)
  • AST Ch 10
  • Project 2 out
[9] Mar 5 Remote Procedure Calls    [ Video ]
    Hello.java (RMI)
    HelloServer.java (RMI)
    HelloClient.java (RMI)
    server.policy (RMI)
[10] Mar 9 Content Distribution Networks
  • AST Ch 12
[11] Mar 12 Everything is Awesome!
(Also P2P Overview)


[12] Apr 6 Email and Porcupine
    Course Logistics [ YouTube ]  [ Glow ]
    Email [ YouTube ]  [ Glow ]
    Porcupine [ YouTube ]  [ Glow ]
[13] Apr 9 Time and Midterm Review
    Video [ YouTube ]  [ Glow ]
[--] Apr 10-17 Midterm on GLOW
  • 75 min closed book exam
[14] Apr 13 Hadoop Cluster Setup   (PDF)
    Parts 1-2 [ YouTube ]  [ Glow ]
    Parts 3-5 [ YouTube ]  [ Glow ]
[15] Apr 16 MapReduce and Project 3
    Lecture [ YouTube ]  [ Glow ]
    Trivial Hadoop [ YouTube ]  [ Glow ]
[16] Apr 20 Coordination and Agreement
    Video [ YouTube ]  [ Glow ]
[17] Apr 23 Storage Systems and RAID
    Lecture [ YouTube ]  [ Glow ]
    Hadoop Hints [ YouTube ]
[18] Apr 27 DFSs and Final Project
    Video [ YouTube ]  [ Glow ]
  • AST Ch 11
  • Project 3 due Apr 27/28
  • Project 4 out
[19] Apr 30 Security Overview
    Lecture [ YouTube ]  [ Glow ]
[20] May 4 Internet of Things
    Lecture [ YouTube ]  [ Glow ]
[21] May 7 Fault Tolerance and Replication
    Lecture [ YouTube ]  [ Glow ]
  • AST Ch 7-8
  • OPTIONAL: Larry Peterson, Andy Bavier, Marc Fiuczynski, and Steve Muir. Experiences Building PlanetLab. 7th Symposium on Operating System Design and Implementation (OSDI), November 2006.
  • Project 4 checkpoint due
[22] May 11 Wide Area Computing and DHTs
    Lecture [ YouTube ]  [ Glow ]
[23] May 14 Course Wrapup and Blockchains
    Lecture [ YouTube ]  [ Glow ]