Course Details

  • Course Number: 16:198:547
  • Course Type: Graduate
  • Semester 1: Spring
  • Credits: 3
  • Description:

    This course will cover the twin issues of security and dependability of distributed systems. Here are some of the questions we will explore:

    (1) How can the actors of a multi-agent system collaborate effectively, without having any trust in each other?

    (2) How can one create an effective social network without a Facebook like central mediator?

    (3) Can one protect large organization (like Rutgers, or like a defense establishment) from DDoS attacks?

  • Category: B (M.S.), B (Ph.D.)
  • Prerequisite Information:

    No specific courses are required. But undergraduate level exposure to distributed computing, discrete mathematics and theory of algorithms is expected.

  • Topics:
    . What are distributed systems and how they differ from centralized ones.
    • The study of various types of distributed systems—including P2P systems,
    multi-agents systems, virtual organizations, and systems based on service
    oriented architecture (SOA).
    • Basic crypto tools: encryption, digital signature, etc—as well  as public key infrastructure (PKI)---the first of two pillars of distributed system security.
    • Interaction between distributed actors, and the role and structure of middleware.
    • Access control (server-centric, and global)—the other pillar  of  the security and dependability of distributed systems. 
    • The architecture and framework  of  distributed systems
    • Fault tolerance  and self healing---at the application level of systems.
    • Assorted topics: Bolstering SOA architecture via trustworthy promises; blocking spam at its source; new defense against    DDoS attacks; decentralizing social networks; modularization in distributed systems.
     
  • Expected Work: Bi-weekly homework; and term project.
  • Exams: midterm and final