(Chip) Charles E. Killian, Jr.

Adjunct Assistant Professor
Department of Computer Science
Purdue University
Phone: 765–807–7996
ckillian@purdue.edu

Curriculum Vitae | About Me | Research | Students | Teaching | Other Notables | Publications | Program Committees

News

Please note that effective January 1, 2013, I have started a position as a software engineer at Google, Inc. I continue to work with my Purdue collaborators and students in a new capacity as an adjunct assistant professor. I am not, however, accepting new students.

About Me

I am a recipient of a 2011 NSF CAREER award, supporting my research in debugging and understanding developed distributed systems. I was also awarded a 2011 HP Open Innovation Grant, and a 2011 Purdue Research Foundation student support grant to support my continued research in distributed systems infrastructure development. I am also thankful for past equipment support from Intel Corporation, and services support from Amazon Web Services. While I focus on distributed system building issues most relevent to the operating systems and network systems communities, my research bridges these topics with those of security, programming languages, and software engineering. I have recent papers in NSDI (Networked Systems Design and Implementation), NDSS (Network and Distributed System Security), HPDC (High Performance Distributed Computing), FSE (Foundations of Software Engineering), COMSNETS (Communication Systems and Networks), and NSS (Network and System Security). My 2007 NSDI paper on the Mace model checker won the best paper award.

I grew up in the mountains of NC, in Asheville. In 1998 I graduated from the North Carolina School of Science and Mathematics, in Durham, NC. I then did my undergraduate work at NC State University, where I received Bachelors of Science in Computer Science and Applied Math working under Dr. Carla Savage, and a Minor in Music with an emphasis in Vocal Performance. In May of 2004 I completed a Master of Science in Computer Science at Duke University with Dr. Amin Vahdat. I continued my PhD work with Dr. Amin Vahdat at the University of California, San Diego, Department of Computer Science, in Systems and Networking, and completed my PhD in 2008. When I’m not working on research, I sing in local groups and spend time with my wife Kristina and son David. I began my new position as Assistant Professor in the Computer Science department at Purdue University in the Fall of 2008.

Research

MaceSystems: My present research is to make it simpler and easier to build, debug, analyze, understand, and harden distributed systems, by leveraging a modest amount of structure that the developer provides about their system. As a PhD student, I developed the Mace toolkit, including a C++ language extension for building distributed systems, and a model checker to test liveness properties of deployable-systems built in Mace, effective because of the Mace structured programming environment. Mace has been used to develop a wide range of systems from DHTs to file transfer protocols and consensus protocols, and has been used at research labs and universities ranging from Cornell University to Microsoft Research.

The fundamental advance made in the MaceSystems project is the recognition that with a modest amount of structure, we can build a wide variety of tools that make the developer more effective. We have often focused on the event-driven component structure commonly used in distributed system design, where components process events, and explicitly update state and send messages. This small amount of structure makes state-space exploration much more efficient that an OS-level exploration, as the component state is explicitly known and the messaging protocols explicitly exposed.

Which this structure, the MaceSystems project has expanded, focusing in several areas:

While we continue to support the highly-tuned and efficient Mace development toolkit, the MaceSystems project has grown beyond this limited environment. Our recent work has involved the development of tools that process logs from arbitrary systems, given only a parsing script provided by the developer. We also are focusing on the expansion of our protocol implementation exploration techniques to support arbitrary systems running in controlled environments, aided by developer guidance on the structure of the messaging protocol.

Students

Teaching

Other Notables

Prior to my work in distributed systems, I did work in the areas of Gray codes and Venn diagrams. Together with Dr. Carla Savage, I proved the existance of symmetric Venn diagrams for all prime numbers of curves. The basis of the proof is a necklace approach to constructing an embedding of the boolean lattice, and then taking its dual. The work appeared in the Electronic Journal of Combinatorics, and was featured in the December 2006 issue of the Notices of the AMS.

Publications

Endadul Hoque, Hyojeong Lee, Rahul Potharaju, Charles Killian, and Cristina Nita-Rotaru. Adversarial Testing of Wireless Routing Implementations. In proceedings of 6th ACM Conference on Security and Privacy in Wireless and Mobile Networks (WiSec 2013). Budapest, Hungary. Short paper. (to appear) 17-19 April, 2013.
Wei-Chiu Chuang, Bo Sang, Charles Killian, and Milind Kulkarni. Programming Model Support for Dependable, Elastic Cloud Applications. In proceedings of Eigth Workshop on Hot Topics in System Dependability (HotDep 2012). Hollywood, CA. Colocated with OSDI 2012. 7 October, 2012.
Sunghwan Yoo, Charles Killian, Terence Kelly, Hyoun Kyu Cho, and Steve Plite. Composable Reliability for Asynchronous Systems. In proceedings of 2012 USENIX Annual Technical Conference (USENIX ATC '12). Boston, MA. 13-15 June, 2012.
Karthik Nagaraj, Charles Killian, and Jennifer Neville. Structured Comparative Analysis of Systems Logs to Diagnose Performance Problems. In proceedings of 9th USENIX Symposium on Networked Systems Design and Implementation (NSDI '12). San Jose, CA. 25-27 April, 2012.
Hyojeong Lee, Jeff Seibert, Charles Killian, and Cristina Nita-Rotaru. Gatling: Automatic Attack Discovery in Large-Scale Distributed Systems. In proceedings of 19th Annual Network & Distributed System Security Symposium (NDSS 2012). San Diego, CA. 5-8 February, 2012.
Charles Killian. Distributed Algorithms in Structured, Event-Driven Languages. In proceedings of Workshop on Languages for Distributed Algorithms (LADA 2012). Philadelphia, PA. 23-24 January, 2012.
Karthik Nagaraj, Hitesh Khandelwal, Charles Killian, and Ramana Kompella. Hierarcy-Aware Distributed Overlays in Data Centers using DC2. In proceedings of Fourth International Conference on COMmunication Systems and NETworkS (COMSNETS 2012). Bangalore, India. 3-7 January, 2012.
Karthik Nagaraj, Charles Killian, and Jennifer Neville. Tracking Behavioral Changes in Distributed Systems using Distalyzer. Poster at 23rd ACM Symposium on Operating System Principles (SOSP 2011). Cascais, Portugal. In addition to being refereed, SOSP 2011 posters are shepherded and a 2-page abstract published on the SOSP website. 23-26 October, 2011.
David Zage, Charles Killian, and Cristina Nita-Rotaru. Removing the Blinders: Using Information to Mitigate Adversaries in Adaptive Overlays. In proceedings of 5th International Conference on Network and System Security (NSS 2011). Milan, Italy. 6-8 September, 2011.
Sunghwan Yoo, Hyojeong Lee, Charles Killian, and Milind Kulkarni. InContext: Simple Parallelism for Distributed Applications. In proceedings of 20th International ACM Symposium on High-Performance Parallel and Distributed Computing (HPDC 2011). San Jose, CA. 8-11 June, 2011.
Charles Killian, Karthik Nagaraj, Salman Pervez, Ryan Braud, James W. Anderson, and Ranjit Jhala. Finding Latent Performance Bugs in Systems Implementations. In proceedings of Eightteenth International Symposium on the Foundations of Software Engineering (FSE 2010). Santa Fe, NM. 7-11 November, 2010.
Karthik Nagaraj, Hitesh Khandelwal, Ramana Kompella, and Charles Killian. DC2: Scalable Distributed Communication Middleware for the Cloud. Poster at 7th USENIX Symposium on Networked Systems Design and Implementation (NSDI 2010). San Jose, CA. 28-30 April, 2010.
Karthik Nagaraj, Ramana Kompella, and Charles Killian. Distributed Social Networking. Poster at 6th USENIX Symposium on Networked Systems Design and Implementation (NSDI 2009). Boston, MA. 22-24 April, 2009.
Darren Dao, Jeannie Albrecht, Charles Killian, and Amin Vahdat. Live Debugging of Distributed Systems. In proceedings of International Conference on Compiler Construction (CC 2009). March, 2009. [ PDF ]
Dejan Kostic, Alex C. Snoeren, Amin Vahdat, Ryan Braud, Charles Killian, Jeannie Albrecht, James W. Anderson, Adolfo Rodriguez, and Erik Vandekieft. High Bandwidth Data Dissemination for Large-scale Distributed Systems. ACM Transactions on Computer Systems, 26(1). 2008.
Charles Killian, James W. Anderson, Alex Rasmussen, Arvind Krishnamurthy, Ranjit Jhala, and Amin Vahdat. ONet: Persistent In-Network Data Structures. Poster at 21st ACM Symposium on Operating System Principles (SOSP 2007). Stevenson, WA. 14-17 October, 2007.
Charles Killian, James W. Anderson, Ryan Braud, Ranjit Jhala, and Amin Vahdat. Mace: Language Support for Building Distributed Systems. In proceedings of Programming Languages Design and Implementation (PLDI 2007). June 2007. [ PDF ]
Charles Killian, James W. Anderson, Ranjit Jhala, and Amin Vahdat. Life, Death, and the Critical Transition: Finding Liveness Bugs in Systems Code. In proceedings of Networked Systems Design and Implementation (NSDI 2007). April 2007. [ PDF ] Awarded Best Paper
Charles Killian, James W. Anderson, Ranjit Jhala, and Amin Vahdat. MaceMC: Checking for Liveness Bugs in Distributed Systems. Poster at 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2006). Seattle, WA. 7 November, 2006. [PDF]
Patrick Reynolds, Charles Killian, Janet L. Wiener, Jeffrey C. Mogul, Mehul A. Shah, and Amin Vahdat. Pip: Detecting the Unexpected in Distributed Systems. In proceedings of Networked Systems Design and Implementation (NSDI 2006). May 2006.
Dejan Kostic, Ryan Braud, Charles Killian, Erik Vandekieft, James W. Anderson, Alex C. Snoeren, and Amin Vahdat. Maintaining High-bandwidth under Dynamic Network Conditions. In proceedings of USENIX Annual Technical Conference (USENIX 2005). April 2005. [ PDF ]
Charles Killian, Frank Ruskey, Carla Savage, and Mark Weston. Half-Simple Symmetric Venn Diagrams. Electronic Journal of Combinatorics. 2004. [ PS PDF ]
Adolfo Rodriguez, Charles Killian, Sooraj Bhat, Dejan Kostic, and Amin Vahdat. MACEDON: Methodology for Automatically Creating, Evaluating, and Designing Overlay Networks. In proceedings of USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI 2004). March 2004. [ PS (Talk slides available upon request) ]
Jerry Griggs, Charles Killian, and Carla Savage. Venn diagrams and symmetric chain decompositions in the Boolean Lattice. Electronic Journal of Combinatorics. Volume 11, January 2, 2004. [ PS PDF ] (An article about this result appeared in Science, Vol. 299, January 31, 2003 and it was the subject of a front page article in the January 2004 issue of SIAM News. Additionally, this work was featured in the December 2006 issue of the Notices of the AMS.)
Charles E. Killian, and Carla D. Savage. Antipodal Gray Codes. Discrete Math. Vol. 281, Nos. 1-3 (2004) 221-236. [Preprint: PDF PS ]
Adolfo Rodriguez, Charles Killian, Dejan Kostic, and Amin Vahdat. MACEDON: Methodology for Automatically Creating, Evaluating, and Designing Overlay Networks. Poster at 19th ACM Symposium on Operating System Principles (SOSP 2003). Lake George, NY. October, 2003. [PDF]
Feiyi Wang, Raghu Uppalli, and Charles Killian. Analysis of Techniques For Building Intrusion Tolerant Server Systems. In proceedings of Military Communications Conference (MILCOM 2003). Oct 13-16, 2003.
Feiyi Wang, Kishor Trivedi, Stephanie Bryant, Yun Cui, Katerina Goseva-Popstojanova, Charles Killian, Bharat Madan, Rajiv Poonamalli, Raghu Uppalli, Kalyan Vaidyanathan, Dazhi Wang, and Rong Wang. SITAR Final Demo: Scalable Intrusion Tolerant Architecture. Poster at 3rd Annual DARPA Information Survivability Conference and Exposition (DISCEX III). Washington, D.C.. Poster and Demonstration. April 22-24, 2003.
Feiyi Wang, and Charles Killian. Design and Implementation of SITAR Architecture: A Status Report. In proceedings of Intrusion Tolerant System Workshop, Supplemental Volume on 2002 International Conference on Dependable System & Networks (DSN 2002). Washington D.C.. June 22-26, 2002. (unrefereed)
Feiyi Wang, Kishor Trivedi, Stephanie Bryant, Katerina Goseva-Popstojanova, Charles Killian, Bharat Madan, Rajiv Poonamalli, Raghu Uppalli, Kalyan Vaidyanathan, and Rong Wang. SITAR Demo: Scalable Intrusion Tolerant Architecture. Poster at OASIS winter 2002 PI meeting. Hilton Head, SC. Poster and Demonstration. March 2002.

Program Committees