Self-Recovery in Server Programs

被引:0
|
作者
Nagarajan, Vijay [1 ]
Jeffrey, Dennis [1 ]
Gupta, Rajiv [1 ]
机构
[1] Univ Calif Riverside, CSE Dept, Riverside, CA 92521 USA
关键词
self cleansing; self recovery; memory propagation;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
It is important that long running server programs retain availability amidst software failures. However, server programs do fail and one of the important causes of failures in server programs is due to memory errors. Software bugs in the server code like buffer overflows, integer overflows, etc. are exposed by certain user requests, leading to memory corruption, which can often result in crashes. One safe way of recovering from these crashes is to periodically checkpoint program state and rollback to the most recent checkpoint on a crash. However, checkpointing program state periodically can be quite expensive. Furthermore, since recovery can involve the rolling back of considerable state information in addition to replay of several benign user requests, the throughput and response time of the server can be reduced significantly during rollback recovery. In this paper, we first conducted a detailed study to see how memory corruption propagates in server programs. Our study shows that memory locations that are corrupted during the processing of an user request, generally do not propagate across user requests. On the contrary, the memory locations that are corrupted are generally cleansed automatically, as memory (stack or the heap) gets deallocated or when memory gets overwritten with uncorrupted values. This self cleansing property in server programs led us to believe that recovering from crashes does not necessarily require the expensive roll back of state for recovery. Motivated by this observation, we propose SRS, a technique for self recovery in server programs which takes advantage of self-cleansing to recover from crashes. Those memory locations that are not fully cleansed are restored in a demand driven fashion, which makes SRS very efficient. Thus in SRS, when a crash occurs instead of rolling back to a safe state, the crash is suppressed and the program is made to execute forwards past the crash; we employ a mechanism called crash suppression, to prevent further crashes from recurring as the execution proceeds forwards. Experiments conducted on real world server programs with real bugs, show that in each of the cases the server program could efficiently recover from the crash and the faulty user request was isolated from future benign user requests.
引用
收藏
页码:49 / 58
页数:10
相关论文
共 50 条
  • [1] Multi-user server program self-recovery system
    Shi, Yi
    Feng, Yu-Sheng
    Qi, Yong
    Sun, Wei
    Ruan Jian Xue Bao/Journal of Software, 2015, 26 (08): : 1907 - 1924
  • [2] SELF-RECOVERY OF METALS
    BURGERS, WG
    NATURE, 1947, 159 (4032) : 203 - 203
  • [3] Early Fault Self-recovery Model and Fault Self-recovery Methods on Aircraft
    Wang Zhongsheng
    Li Ming
    2008 CHINESE CONTROL AND DECISION CONFERENCE, VOLS 1-11, 2008, : 487 - 489
  • [4] Self-recovery Service Securing Edge Server in IoT Network against Ransomware Attack
    Lei, In-San
    Tang, Su-Kit
    Chao, Ion-Kun
    Tse, Rita
    PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON INTERNET OF THINGS, BIG DATA AND SECURITY (IOTBDS), 2020, : 399 - 404
  • [5] SELF-RECOVERY OF IMPLANTED SEMICONDUCTORS
    ZUKOWSKI, PW
    SEMICONDUCTORS, 1993, 27 (05) : 433 - 438
  • [6] Overview on Artificial Self-recovery
    Gao J.
    Gao, Jinji (gaojinji@263.net), 1600, Chinese Mechanical Engineering Society (57): : 1 - 10
  • [7] Self-recovery of stressed nanomembranes
    Jiang, CY
    Rybak, BM
    Markutsya, S
    Kladitis, PE
    Tsukruk, VV
    APPLIED PHYSICS LETTERS, 2005, 86 (12) : 1 - 3
  • [8] SELF-RECOVERY FROM STUTTERING
    SHEARER, WM
    WILLIAMS, JD
    JOURNAL OF SPEECH AND HEARING DISORDERS, 1965, 30 (03): : 288 - 290
  • [9] A Self-Recovery Mechanism for Quadrotors
    Peng, Jin
    Song, Guangming
    Qiao, Guifang
    Zhang, Ying
    Zhang, Jun
    Li, Zhiwen
    2014 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND BIOMIMETICS IEEE-ROBIO 2014, 2014, : 1531 - 1536
  • [10] Self-Recovery Prompting: Promptable General Purpose Service Robot System with Foundation Models and Self-Recovery
    Shirasaka, Mimo
    Matsushima, Tatsuya
    Tsunasmia, Soshi
    Ikeda, Yuya
    Horo, Aoi
    Ikoma, So
    Tsuji, Chikaha
    Wada, Hikaru
    Omija, Tsunekazu
    Komukai, Dai
    Matsuo, Yutaka
    Iwasawa, Yusuke
    2024 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION (ICRA 2024), 2024, : 17395 - 17402