-
Designed and implemented a fault-tolerant distributed membership protocol in C, addressing the fundamental challenges of peer discovery, crash detection, rejoin handling, and leader election in an asynchronous network.
-
Simulated realistic distributed environments using Docker containers to inject node failures and network partitions, validating protocol correctness and convergence under a range of fault conditions.
-
Developed a Heartbeat-based failure detector leveraging UDP protocol to monitor node liveness; tuned timeout parameters to balance false-positive rate against detection latency, analyzing the trade-off empirically across simulated failure scenarios.
-
Implemented a 3-Phase Commit–style leader election protocol triggered on leader failure, ensuring the oldest surviving node is elected while preventing split-brain scenarios during concurrent failures.
/// project
Distributed Membership Algorithm
Based on ”SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol”
- C
- Distributed Systems
- TCP/IP
- Docker