TY - GEN
T1 - Project almanac
T2 - 14th European Conference on Computer Systems, EuroSys 2019
AU - Wang, Xiaohao
AU - Yuan, Yifan
AU - Zhou, You
AU - Coats, Chance C.
AU - Huang, Jian
N1 - Publisher Copyright:
© 2019 Copyright held by the owner/author(s). Publication rights licensed to ACM.
PY - 2019/3/25
Y1 - 2019/3/25
N2 - Preserving the history of storage states is critical to ensuring system reliability and security. It facilitates system functions such as debugging, data recovery, and forensics. Existing software-based approaches like data journaling, logging, and backups not only introduce performance and storage cost, but also are vulnerable to malware attacks, as adversaries can obtain kernel privileges to terminate or destroy them. In this paper, we present Project Almanac, which includes (1) a time-travel solid-state drive (SSD) named TimeSSD that retains a history of storage states in hardware for a window of time, and (2) a toolkit named TimeKits that provides storage-state query and rollback functions. TimeSSD tracks the history of storage states in the hardware device, without relying on explicit backups, by exploiting the property that the flash retains old copies of data when they are updated or deleted. We implement TimeSSD with a programmable SSD and develop TimeKits for several typical system applications. Experiments, with a variety of real-world case studies, demonstrate that TimeSSD can retain all the storage states for eight weeks, with negligible performance overhead, while providing the device-level time-travel property.
AB - Preserving the history of storage states is critical to ensuring system reliability and security. It facilitates system functions such as debugging, data recovery, and forensics. Existing software-based approaches like data journaling, logging, and backups not only introduce performance and storage cost, but also are vulnerable to malware attacks, as adversaries can obtain kernel privileges to terminate or destroy them. In this paper, we present Project Almanac, which includes (1) a time-travel solid-state drive (SSD) named TimeSSD that retains a history of storage states in hardware for a window of time, and (2) a toolkit named TimeKits that provides storage-state query and rollback functions. TimeSSD tracks the history of storage states in the hardware device, without relying on explicit backups, by exploiting the property that the flash retains old copies of data when they are updated or deleted. We implement TimeSSD with a programmable SSD and develop TimeKits for several typical system applications. Experiments, with a variety of real-world case studies, demonstrate that TimeSSD can retain all the storage states for eight weeks, with negligible performance overhead, while providing the device-level time-travel property.
KW - Firmware-isolated logging
KW - Solid-state drive
KW - Time travel
UR - http://www.scopus.com/inward/record.url?scp=85063877701&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85063877701&partnerID=8YFLogxK
U2 - 10.1145/3302424.3303983
DO - 10.1145/3302424.3303983
M3 - Conference contribution
AN - SCOPUS:85063877701
T3 - Proceedings of the 14th EuroSys Conference 2019
BT - Proceedings of the 14th EuroSys Conference 2019
PB - Association for Computing Machinery
Y2 - 25 March 2019 through 28 March 2019
ER -