Daniel Obenshain

Daniel Obenshain, standing with Johns
Hopkins' Gilman Hall in the background.

I am a PhD student in Computer Science at Johns Hopkins University. I am currently in my fourth year. I'm part of the Distributed Systems and Networks Lab at the Johns Hopkins University, and my advisor is Yair Amir.

To contact me, please email dano (at) cs.jhu.edu.


I am working on designing and implementing resilient cloud infrastructure, all the way to the point of being Intrusion Tolerant (successful despite compromises and insider attacks). This includes both cloud messaging (especially cloud monitoring and control) and cloud data replication.

If you're interested in any of this work, please drop me a line!

Resilient Cloud Messaging

For cloud messaging, we seek to provide an underlying messaging system that is extremely resilient, even to the point of being Intrusion Tolerant. Using an overlay network between multiple data centers, this can then be used for cloud monitoring and control to ensure that the system administrator can keep current knowledge of the system and the ability to change the system, even in extreme circumstances (partial network disconnectivity, node failures, and even compromises and insider attacks). We seek to provide the guarantee that, as long as there exists a path of correct nodes from source to destination, messages will continue to flow from source to destination. (Work with Yair Amir, Andrew Newell, Cristina Nita-Rotaru, and Tom Tantillo)

I presented our initial work at LADIS 2012 (paper, talk).

Resilient Cloud Data Replication

For Intrusion Tolerant Data Replication, I'm currently working on providing consistent state across multiple machines, even if some of them are compromised. We seek to support applications with large state (e.g. 1 terabyte), over long periods of time (e.g. 30 years), with high confidence that the system will remain correct. We use software diversity and proactive recovery to support the assumptions needed for these kinds of algorithms to succeed. (Work with Yair Amir, Marco Platania, Ricky Sharma, and Tom Tantillo)

Diversity Assignment Problem

Given a connectivity graph and a few variants of the system that fail independently (these can be operating systems, routers manufactured by different companies, different system administrators, etc.) the question is: how best to assign these variants to the graph in order to maximize the resiliency of the system? We investigated this problem and proved that it is NP-hard. We give a Mixed-Integer Programming solution, which finds the optimal placement, and investigate the results on a real cloud network connectivity graph and on random graphs constructed in a similar way. We also show a greedy variant of the algorithm which runs much faster. Lastly, we show that, if the application's connectivity needs are known, the Mixed-Integer Programming solution can do much better, by sacrificing expected client-to-client connectivity in favor of maximizing the probability that the system can make progress.

Our work appeared in DSN 2013 (paper). The technical report is available here. Newer, additional work appears in a second technical report here.

Continuing this work, we seek approximation algorithms for this problem. The problem is NP-Hard, but we hope to find fast algorithms that give solutions guaranteed to be within a factor of the optimal solution. In addition, we are broadening our scope beyond a simple static topology. If the topology can be changed (e.g. edges added or deleted), this gives our algorithm more power. In the extreme case, we seek an algorithm which can design the entire network, starting from only the locations of the clients. (Work with Vladimir Braverman, Andrew Newell, and Ricky Sharma)

Previous Projects

Remote Telesurgery

I worked to enable surgeons to perform surgery via the da Vinci surgical system over long distances reliably. Project page.

Spiny Android

This project was to explore the possibility of sharing connectivity between phones by running an app. We ported Spines onto the Android platform for a proof of concept. Project page.

Community Seismic Network

Imagine being able to use all the accelerometers in all the cell phones in Los Angeles as an enormous sensing system, capable of detecting earthquakes exactly when they happen. In fact, since electrical signals travel much faster than earthquakes do, the system could provide some amount of early warning to areas that have not experienced any shaking yet.

I worked on the Community Seismic Network, with Dr. Robert Clayton, Dr. K. Mani Chandy, Dr. Andreas Krause, grad student Michael Olson, and three other undergraduate students. SURF Paper SURF Presentation This project was featured in a news article: here.

My contribution to the project culminated in presenting my Bachelor's thesis to the department. My work was published in the Caltech Undergraduate Research Journal. The project has continued since I left it and is now available as an Android app. Update: this work has since been published in the Annals of Geophysics: here.

Caltech Student Microgravity Initiative

I worked with a group of other undergraduates to apply for the NASA Microgravity University, with faculty support from Dr. Morteza Gherib. If accepted, we will be able to perform a fluid dynamics experiment in microgravity. Proposal The website for that project is available here. Update: Unfortunately, we did not get accepted. It was still a good learning opportunity, though.

Radiation Detection

I worked in the Infospheres lab with Dr. K. Mani Chandy, grad students Annie Liu, Concetta Pilotto, and Matt Wu, and another undergraduate student. We worked with Dr. Ryan McLean on a radiation detection project to interdict dirty bombs. Preprint Paper (was not accepted, unfortunately). SURF Paper SURF Presentation This project was featured in a news article: here.

Einstein Papers Project

I worked with Dr. Tilman Sauer on the Einstein Papers Project database. We worked to find an estimate of the number of items present in the archives, since duplications and errors are frequent. Dr. Sauer presented our work in an invited talk "The Expanding Universe of the Einstein Archives Database" at a workshop "Editing Centenary Scientific Manuscripts" held at Universite 2 in Nancy, France on September 23-24, 2007.

By the request of the Einstein Papers Project, the work will not be shown here.


2013 Outstanding Teaching Award in recognition of outstanding effort and skill in assisting with the teaching of computer science courses at Johns Hopkins

J. Lyle Beauchamp Fellowship 2010 - Funded First Year of PhD

2010 Student Life and Master's Award. This is "presented to undergraduates whose concern for their fellow students has been demonstrated by persistent efforts to improve the quality of undergraduate life and by effective communication with members of the faculty and administration."

2009 Summer Undergraduate Research Fellowship - Dr. Kiyo and Eiko Tomiyasu

2008 Summer Undergraduate Research Fellowship - Arthur Rock Foundation