The Mace Project
Mace is a complete redesign and rewrite of MACEDON.
Furthering its efforts, the goal of Mace is to simplify the
development, research and deployment of Distributed Systems. To this end,
Mace consists of
these related pieces:
- An extensible set of APIs geared at modularizing and componentizing parts of distributed systems
- A domain-specific C++ language extension to describe a distributed system's behavior from which real operating code can be generated
- A software engine that implements common features and functionality of distributed systems, providing a performance-tuned system.
- A model checker capable of finding violations of liveness properties which lead the system to dead states.
People:
Graduate Students
Darren Dao
Jim Hong
Former contributors:
Calvin Hubble
Duy Nguyen
David Oppenheimer (Former UCSD Postdoc)
Hakon Verespej
Thanks:
This research is supported in part by the National Science Foundation and the Center for Networked Systems. We
are grateful for their support.
Publications:
"Mace: Language Support for Building Distributed Systems",
Charles Killian, James W. Anderson, Ryan Braud, Ranjit Jhala, and Amin Vahdat,
in Proceedings of PLDI (PLDI 2007), San Diego, CA, June 2007.
[pdf]
"Life, Death, and the Critical Transition: Detecting Liveness Bugs in Systems Code", Charles Killian, James W. Anderson, Ranjit Jhala, and Amin Vahdat, in Proceedings of NSDI (NSDI 2007), Cambridge, MA, April 2007. [pdf] Awarded Best Paper.
"Pip: Detecting the Unexpected in Distributed Systems", Patrick Reynolds, Charles Killian, Janet L. Wiener, Jeffrey C. Mogul, Mehul A. Shah, and Amin Vahdat, in Proceedings of NSDI (NSDI 2006), San Jose, CA, May 2006. [pdf]
"Surviving Internet Catastrophes", Flavio P. Junqueira, Ranjita Bhagwan, Alejandro Hevia, Keith Marzullo, and Geoffrey M. Voelker, in Proceedings of USENIX Annual Technical Conference (USENIX 2005), April 2005. [pdf]
"Maintaining High Bandwidth under Dynamic Network Conditions", Dejan Kostic, Ryan Braud, Charles Killian, Erik Vandekieft, James W. Anderson, Alex C. Snoeren and Amin Vahdat, Proceedings of 2005 USENIX Annual Technical Conference (USENIX 2005), April 2005. [pdf]
"MACEDON: Methodology for Automatically Creating, Evaluating, and Designing Overlay Networks", Adolfo Rodriguez, Charles Killian, Sooraj Bhat, Dejan Kostic, and Amin Vahdat, Proceedings of the USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI 2004), March 2004. [pdf]
"Scalability in Adaptive Multi-Metric Overlays", Adolfo Rodriguez, Dejan Kostic, and Amin Vahdat, The 24th International Conference on Distributed Computing Systems (ICDCS 2004), March 2004.[ps]
"Bullet: High Bandwidth Data Dissemination Using an Overlay Mesh", Dejan Kostic, Adolfo Rodriguez, Jeannie Albrecht, and Amin Vahdat, Proceedings of the 19th ACM Symposium on Operating System Principles (SOSP 2003), October 2003.[ps]
"Using Random Subsets to Build Scalable Network Services", Dejan Kostic, Adolfo Rodriguez, Jeannie Albrecht, Abhijeet Bhirud, and Amin Vahdat, Proceedings of the USENIX Symposium on Internet Technologies and Systems (USITS 2003), March 2003.[pdf]