/ucsb-cs271-distributed-systems

UCSB CS271 (Distributed Systems) Course Projects

Primary LanguagePython

UCSB CS271 (Distributed Systems) Course Projects

Instructor: Prof. Amr El Abbadi

This repository contains a series of course projects of UCSB CS271 (Distributed Systems) in Winter 2023, about implementations of classical distributed computing systems algorithms/protocols from scratch. I frequently used Python/Pydantic/FastAPI/Cryptography and multi-thread techniques.

  • Project 1: Implementation of a blockchain demo based on Lamport Logic Clocks protocol
  • Project 2: Implementation of Chandy-Lamport global snapshot algorithm to take global snapshots of a simple token-passing application
  • Final Project: Implementation of Raft protocol and a distributed shared dictionary system replicated on a set of clients based on Raft

See README files in each project folder for more details.