G22.3033-009: Syllabus

  1. Overview of Distributed System Concepts (1 Week)
    • Review of Operating System Concepts
    • Concurrency, Processes & Threads
    • Interprocess Communication
    • Network & Distributed Operating Systems
    • Distributed System Design Objectives
  2. Communication Protocols (1 Week)
    • The Internet Protocol Stack
    • The MAC Layer
    • The IP Layer, Datagrams & Routing
    • Transport Layer Protocols (TCP & UDP)
    • End-to-End Arguments
    • Basic Utilities for Probing the Internet Protocol Stack
  3. Distributed Programming Using TCP/IP (1 Weeks)
    • The Client-Server Architecture
    • The Socket API
    • Library Routines for Socket Programming
    • IP Multicast API
  4. Client & Server Design Patterns (1 Weeks)
    • Concurrent & Iterative Servers
    • Connectionless & Connection-Oriented Servers
    • Stateless & Stateful Servers
    • Client Concurrency
    • Multiservice Servers
  5. RPC & MOM (1 Weeks)
    • Anatomy of Local and Remote Procedure Calls
    • ONC-RPC
    • Remote Invocation Semantics
    • Persistent Asynchronous Communication
    • Message-Oriented Middleware (MOM)
  6. Distributed File Systems (1 Week)
    • File Service Concepts & Architecture
    • Network File System (NFS)
    • The Andrew File System
  7. Name & Directory Services (1 Weeks)
    • Hierarchical Naming
    • The Domain Name System (DNS)
    • DNS Queries & Message Format
    • The Resolver Library
    • LDAP
  8. Alternatives to Client-Server Architecture (1 Weeks)
  9. Synchronization (1 Weeks)
    • Logical & Vector Clocks
    • Ordered Multicast
    • Global States & The Snapshot Algorithm
    • Distributed Mutual Exclusion
  10. Replication & Caching (1 Week)
    • Highly-Available Services
    • Memory Consistency Models
    • Distribution Protocols
    • Consistency Protocols
  11. Security ( 1 Week)
    • Symmetric & Public Key Cryptography
    • Transport Layer Security (TLS) Protocol
    • Digital Certificates
    • Server Authentication
    • Kerberos
    • HTTPS


    Go to: Home | Syllabus | Textbook & References | Grading Policies | Lectures | Assignments