CS 417 Syllabus
Spring 2023
week | date | topic* |
---|---|---|
1 | Jan 23 |
Introduction
Networking: network protocols, point-to-point communication |
2 | Jan 30 |
Data marshaling: JSON, Google protocol buffers
Remote procedure calls, distributed objects |
3 | Feb 6 |
Clock synchronization
Event ordering: Logical clocks, vector clocks |
4 | Feb 13 |
Group communication: message ordering and message delivery, multicasting
Replication, group management, and virtual synchrony |
5 | Feb 20 |
Distributed mutual exclusion
Election algorithms Distributed consensus: Raft EXAM 1 |
6 | Feb 27 |
Google's Chubby lock manager (Apache Zookeeper)
Network attached storage: design, NFS, AFS (scale), DFS & SMB (cache control), CODA (redundancy) Parallel file systems: Google FS (GFS), Hadoop Distributed FS (HDFS) |
7 | Mar 6 | Distributed lookup services and distributed hash tables, Amazon Dynamo, DNS |
Mar 13 | Spring Break | |
8 | Mar 20 |
Distributed transactions: commit protocols, ACID/BASE models Distributed deadlock Concurrency control |
9 | Mar 27 |
Structured data: Bigtable (Apache HBase), Cassandra, Spanner
EXAM 2 |
10 | Apr 3 |
MapReduce
Parallel computation frameworks: Bulk Synchronous Parallel framework (Apache Hama), Pregel (Apache Giraph) |
11 | Apr 10 |
Aoache Spark, Content delivery networks: Akamai, peer-to-peer content delivery, Kafka event streaming, Distributed caching: memcached, Redis |
12 | Apr 17 |
Cryptography: introduction, communication and authentication, key exchange, secure communication, hybrid cryptosystems, digital signatures
Distributed authentication: protocols, digital certificates, Kerberos, SSL Identity management (OpenID), distributed authorization (OAuth) |
13 | Apr 24 |
Google cluster architecture, Clustering: high-performance computing (HPC), load balancing, and availability EXAM 3 |
14 | May 1 | Distributed systems design |
15 | May 5 | Final exam: 4:00-6:00pm |
Go here to get lecture notes and other course documentation.
Rutgers CS Diversity and Inclusion Statement
Rutgers Computer Science Department is committed to creating a consciously anti-racist, inclusive community that welcomes diversity in various dimensions (e.g., race, national origin, gender, sexuality, disability status, class, or religious beliefs). We will not tolerate micro-aggressions and discrimination that creates a hostile atmosphere in the class and/or threatens the well-being of our students. We will continuously strive to create a safe learning environment that allows for the open exchange of ideas while also ensuring equitable opportunities and respect for all of us. Our goal is to maintain an environment where students, staff, and faculty can contribute without the fear of ridicule or intolerant or offensive language. If you witness or experience racism, discrimination micro-aggressions, or other offensive behavior, you are encouraged to bring it to the attention to the undergraduate program director, the graduate program director, or the department chair. You can also report it to the Bias Incident Reporting System].