Please note: This seminar will be given online.
Basil Alkhatib, David R. Cheriton of Computer Science, University of Waterloo
We present an extensive study focused on partial network partitioning.
Partial network partitions disrupt the communication between some but not all nodes in a cluster. First, we conduct a comprehensive study of system failures caused by this fault in 13 popular systems.
Our study reveals that the studied failures are catastrophic (e.g., lead to data loss), easily manifest, and are mainly due to design aws. Our analysis identies vulnerabilities in core systems mechanisms including scheduling, membership management, and ZooKeeper-based conguration management.
Second, we dissect the design of nine popular systems and identify four principled approaches for tolerating partial partitions. Unfortunately, our analysis shows that imple- mented fault tolerance techniques are inadequate for modern systems; they either patch a particular mechanism or lead to a complete cluster shutdown, even when alternative network paths exist.
Finally, our ndings motivate us to build Nifty, a transparent communication layer that masks partial network partitions. Nifty builds an overlay between nodes to detour packets around partial partitions. Nifty provides an approach for applications to optimize their operation during a partial partition. We demonstrate the benet of this approach through integrating Nifty with VoltDB and HDFS.