CSCI/ECEN 5673: Distributed Systems
Spring 2011
Department
of Computer Science, University
of Colorado at Boulder
See the Moodle class Web page at http://moodle.cs.colorado.edu
Schedule
& Location: Mon, Wed 5-6:15 pm, ECCS 1B28 (also offered as a
CAETE course)
Course number: CSCI 5673-002. See
also the CS Web
site and look under the Courses option.
Prerequisites: CSCI 5573 Advanced OS.
Instructor: Professor Rick
Han, http://www.cs.colorado.edu/~rhan.
Office: ECCR 1B05F
Office Hours: Tuesdays
2-3
pm and Wednesdays 1-2 pm
in ECCR 1B09 (next door to
my office).
Additional
appointments
as
needed.
Email: rhan@cs.colorado.edu
Phone: 303-492-0914
Textbook:
None required.
Other optional references:
class Web site:
See
the Moodle class Web page at
http://moodle.cs.colorado.edu.
Assignments,
lecture
slides,
and
announcements
can
be
found
there.
The moodle has
a variety of useful features, including a forum for posting
questions. Each student should establish an account
on the moodle and then subscribe to our
class on the moodle using the special enrollment key given out in
class. The moodle has been
upgraded to v2.0, so you must create a new account.
Topics/Schedule
The topics to be covered include the
following. We will seek to adhere to the timeline, but as the
situation warrants new topics may be added and/or others shortened,
eliminated, or shifted around in time, and due dates may be
modified. Stay tuned to the moodle for changes in this schedule.
Week |
Topic |
1 |
Introduction (review stuff you
should already know: DNS, SSL/TLS, NFS), Cloud Computing, Google File
System |
2 |
(MLK Holiday) Google MapReduce |
3 |
Google BigTable, other Google
infrastructure |
4 |
Amazon Web Services, EC2, S3,
SimpleDB, Dynamo |
5 |
Eucalyptus Open Source Cloud,
Snow Flock.
Project proposals due. |
6 |
Content Distribution Networks, Akamai, Peer-to-peer systems, BitTorrent |
7 |
Storage Area Networks, Publish-subscribe. Programming assignment due. |
8 |
RPC, Java RMI, REST, SOAP, XML Web Services |
9 |
Time Synchronization, Distributed Mutual Exclusion/Elections |
10 |
Distributed Transactions,
Replication/Fault
Tolerance |
11 |
Midterm Exam. Service discovery/naming |
12 |
Fault Detection, Load Balancing, Distributed Hash Tables, Caching, Application layer multicast |
13 |
Intrusion Detection, Security,
Privacy, Mobility |
14 |
Distributed application case
studies: Facebook/social networks, Skype/multimedia. |
15 |
Final
project
presentations and
reports (Also during the final
exam time slot, though no final exam). |
Grading
20% Midterm exam
15% Programming assignment
50% Final project report and presentation
15% Class participation, paper reviews, possibly other
presentations
Discrimination and Sexual
Harassment Policy