Elements: Software: Distributed Workflows for Cyberexperimentation
University Of Southern California, Los Angeles CA
Investigators
Abstract
Industry and academic research in computing systems, networking and security suffers from the inability to demonstrate and validate research outcomes, because the process of research consists of complex but largely experiments on distributed, large-scale, networked test-beds. This project will address this issue by enabling rigorous and repeatable experimentation on test-beds by enabling experiments to be defined as executable workflows, that can then be repeatably run, as well as managed. This project will develop and deploy a software framework called Elie. Elie consists of an experiment representation capability, along with several supporting services that make experimentation workflows robust, fault tolerant, easily sharable and reusable. Specifically, Elie consists of: (1) A new experiment representation, called DEW, which encodes experiment behavior and allocation constraints instead of just experiment topology. (2) Capture tools, which capture a researcher's manual actions on the testbed and facilitate script-building, and DEW generation (3) Testbed-integrated version control, (4) An experiment orchestration mechanism, (5) Lightweight failure detection, (6) A GUI, which allows for experiment management throughout an experiment lifecycle. Elie's technologies can be used by researchers as a full environment or as individual tools. Collectively these technologies provide basic testbed support throughout an experiment lifecycle including the design, running, analysis, monitoring, storage and sharing stages. All of Elie's technologies are extensible, and open-sourced, to allow the research community to contribute to their development and customize them to their needs. This project fundamentally differs from the prior work in its goal to co-exist with current testbed experimentation approaches (manual and scripted experimentation) and to be applicable to a broad range of testbeds (via its translation and generation tools). Outcomes of this project will significantly improve ease of testbed experimentation, by offloading tedious, repetitive and detail-sensitive tasks to testbeds. This will shorten experiment duration and improve quality and reliability of results. This work will further make experiments more robust, enable easy sharing and reuse of experiments with minimal user effort, and facilitate repeatability and reproducibility. Overall, such advances in testbed experimentation will enable vertical development (building upon the work of others) in fields, which use testbeds, such as distributed systems, networking and cybersecurity. Sharing and reuse will also improve quality of scientific research in these fields, by enabling creation of larger and more complex experiments built on the shared artifacts of other researchers. The project team will also conduct extensive user outreach and building collaborations with other researchers that work on improving rigor of testbed experimentation, with the goal of building a strong user and developer community for Elie. This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
View original record on NSF Award Search →