A feedback control approach for preventing system resource exhaustion caused by software aging

The dynamic behavior of software systems attracts widened attention through the phenomenon of software aging. Software aging is caused by runtime environment deterioration, such as the gradual loss of memory or CPU cycles. The dynamic behavior of aged software systems can be described by a set of evolving resource variables, including CPU usage, I/O bandwidth, available memory and the like. From this point of view, an aging software system can be analogous to a dynamic system. Control theory provides sound and rigorous mathematical principles to analyze dynamic systems and build controllers for them. This paper introduces control theory to analyze and build a control model and apply control techniques to an aged web server. First, we treated the software system as a black box, and conducted controlled experiments to build the relationship between input and output. Then, these input-output couples are used to build a control model via a system identification method. Finally, a PI (proportional-integral) controller is designed to adjust the aged state of the software system, and software rejuvenation techniques are customized to target the web server. Performance testing shows that our approach can accurately track the reference value set by the website administrator.

[1]  Yang Li,et al.  Cloud service reliability modelling and optimal task scheduling , 2017, IET Commun..

[2]  P. Santhi Thilagam,et al.  Applications nature aware virtual machine provisioning in cloud , 2018, Int. J. Ad Hoc Ubiquitous Comput..

[3]  Kai-Yuan Cai,et al.  A Nonlinear Approach to Modeling of Software Aging in a Web Server , 2008, 2008 15th Asia-Pacific Software Engineering Conference.

[4]  Tarek F. Abdelzaher,et al.  Differentiated caching services; a control-theoretical approach , 2001, Proceedings 21st International Conference on Distributed Computing Systems.

[5]  Kenichi Kourai,et al.  Zero-copy Migration for Lightweight Software Rejuvenation of Virtualized Systems , 2015, APSys.

[6]  T. Saadawi,et al.  Media-Aware Caching Mechanism in DiffServ Networks , 2009, 2009 6th IEEE Consumer Communications and Networking Conference.

[7]  Kishor S. Trivedi,et al.  A comparative experimental study of software rejuvenation overhead , 2013, Perform. Evaluation.

[8]  Wei Xie,et al.  Analysis of a two-level software rejuvenation policy , 2005, Reliab. Eng. Syst. Saf..

[9]  K. Ramani,et al.  Energy aware multi objective genetic algorithm for task scheduling in cloud computing , 2018, Int. J. Internet Protoc. Technol..

[10]  Kishor S. Trivedi,et al.  Analysis of Software Aging in a Web Server , 2006, IEEE Transactions on Reliability.

[11]  Shigeru Chiba,et al.  Fast Software Rejuvenation of Virtual Machine Monitors , 2011, IEEE Transactions on Dependable and Secure Computing.

[12]  Laurent Massoulié,et al.  Service differentiation for delay-sensitive applications: an optimisation-based approach , 2002, Perform. Evaluation.

[13]  Stefano Russo The Dual Nature of Software Aging: Twenty Years of Software Aging Research , 2014, 2014 IEEE International Symposium on Software Reliability Engineering Workshops.

[14]  Kishor S. Trivedi,et al.  A comprehensive model for software rejuvenation , 2005, IEEE Transactions on Dependable and Secure Computing.

[15]  David Mosberger,et al.  httperf—a tool for measuring web server performance , 1998, PERV.

[16]  Xiaoyun Zhu,et al.  PARTIC: Power-Aware Response Time Control for Virtualized Web Servers , 2011, IEEE Transactions on Parallel and Distributed Systems.

[17]  Ping Guo,et al.  An experimental case study on the relationship between workload and resource consumption in a commercial web server , 2017, J. Comput. Sci..

[18]  Ming Liu,et al.  A New Method for Abnormal Behavior Propagation in Networked Software , 2018 .

[19]  Kishor S. Trivedi,et al.  Ensuring the Performance of Apache HTTP Server Affected by Aging , 2014, IEEE Transactions on Dependable and Secure Computing.

[20]  Xinhong Hei,et al.  Modeling and optimizing periodically inspected software rejuvenation policy based on geometric sequences , 2015, Reliab. Eng. Syst. Saf..

[21]  Jianwen Xiang,et al.  Lifetime Extension of Software Execution Subject to Aging , 2017, IEEE Transactions on Reliability.

[22]  Kai-Yuan Cai,et al.  Optimization of Two-Granularity Software Rejuvenation Policy Based on the Markov Regenerative Process , 2016, IEEE Transactions on Reliability.

[23]  Ashish Sureka,et al.  Feature Selection Techniques to Counter Class Imbalance Problem for Aging Related Bug Prediction: Aging Related Bug Prediction , 2018, ISEC.

[24]  Karl Johan Åström,et al.  Computer-Controlled Systems: Theory and Design , 1984 .