Course Description
The course introduces the principles underlying the theory, algorithms, and systems aspects of distributed computing. The instructor can decide the focus of the course and select the algorithms accordingly. For instance, if the focus is on systems-like problems, the selected algorithms can consist of logical time, causal communications, snapshot, mutual exclusion, leader election. The instructor can also choose topics like wireless networks, peer-to-peer networks, security etc. A software tool can be introduced for the analysis and verification of the algorithms.
Intended Learning Outcomes
CILO-1: Access and compare different distributed computing environments from traditional environments.
CILO-2: Evaluate different agreement protocols and fault tolerance mechanisms in distributed systems.
CILO-3: Access and compare concurrency control mechanisms in distributed environment.