Skip to main content
Log in

On the performance of software rejuvenation models with multiple degradation levels

  • Published:
Software Quality Journal Aims and scope Submit manuscript

Abstract

Continuously running software systems suffer from performance degradation due to aging phenomena and resource exhaustion that are mainly due to error conditions accumulation or due to exhaustion of system resources such as the physical memory. To counteract such phenomena, a periodic preemptive rollback to prevent software failures in the future, called software rejuvenation, can be applied. During the past 20 years, software rejuvenation has been extensively studied with the aim to design rejuvenation policies that optimize system availability, reliability, and performance, mainly in terms of operational cost. In this paper, we propose to model software systems’ overall performance capacity by assigning a performance capacity level at each of the possible states that it can be in, using a continuous time Markov process. A performance capacity indicator for all possible rejuvenation models incorporating partial, full, or both rejuvenation actions is defined and evaluated in the transient, and the steady state phase and the impact of various rejuvenation policies on it are further examined. Our aim is to distinguish the optimal, in terms of performance, rejuvenation strategy consisting of the type of rejuvenation to be implemented and the rejuvenation interval as well. Multi-objective optimization problems are additionally formulated for deriving the rejuvenation policies that optimize the system’s overall performance capacity with respect to availability and operational cost constraints. Numerical examples, in which through comparisons among the rejuvenation models and policies we can distinguish the optimal rejuvenation strategy to be followed, are also presented.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2.
Fig. 3.
Fig. 4.
Fig. 5.
Fig. 6.
Fig. 7.
Fig. 8.
Fig. 9
Fig. 10.
Fig. 11.
Fig. 12.
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24

Similar content being viewed by others

References

  • Avritzer, A., Bondi, A., Grottke, M., Trivedi, K. S., & Weyuker, E. J. (2006). Performance assurance via software rejuvenation: monitoring, statistics and algorithms. In In Proc. of the International Conference on Dependable Systems and Networks (DSN’06), Philadelphia, PA (pp. 435–444).

    Google Scholar 

  • Bobbio, A., Sereno, A., & Anglano, C. (2001). Fine grained software degradation models for optimal rejuvenation policies. Performance Evaluation, 46, 45–62.

    Article  MATH  Google Scholar 

  • Bosse, S., Splieth, M., & Turowski, K. (2016). Multi-objective optimization of IT service availability and costs. Reliability Engineering & System Safety, 147, 142–155.

    Article  Google Scholar 

  • Chen, D., & Trivedi, K. S. (2001). Analysis of periodic preventive maintenance with general system failure distribution. In Proc. of 2001 Pacific Rim International symposium on dependable computing (pp. 103–107). South Korea: Seoul.

    Chapter  Google Scholar 

  • Chen, D., & Trivedi, K. S. (2002). Closed-form analytical results for condition-based maintenance. Reliability Engineering & System Safety, 76(1), 43–51.

    Article  Google Scholar 

  • Cotroneo, D., Natella, R., Pietrantuono, R., & Russo, S. (2014). A survey of software aging and rejuvenation studies. ACM Journal on Emerging Technologies in Computing Systems, 10(1), article no.: 8.

    Article  Google Scholar 

  • Dohi, T., & Okamura, H. (2016). Dynamic software availability model with rejuvenation. Journal of the Operations Research Society of Japan, 59(4), 270–290.

    Article  MathSciNet  MATH  Google Scholar 

  • Dohi, T., Okamura, H., & Trivedi, K. S. (2012). Optimizing software rejuvenation policies under interval reliability criteria. In Proc. of the 9th International Conference on ubiquitous intelligence and computing and the 9th International Conference on autonomic and trusted computing, Fukuoka (pp. 478–485).

    Google Scholar 

  • Du, X., Lu, H., & Rao, Y. (2014). Modeling and analyses of operational software system with rejuvenation and reconfiguration. In S. Patnaik & X. Li (Eds.), Advances in Intelligent Systems and Computing, 255 (pp. 799–807). New Delhi: Springer.

    Google Scholar 

  • Fang, Y., Yin, B., Ning, G., Zheng, Z., & Cai, K. (2017). A rejuvenation strategy of two-granularity software based on adaptive control. In Proc. of the IEEE 22nd Pacific Rim International Symposium on dependable computing (PRDC), Christchurch, 104-109.

    Google Scholar 

  • Grottke, M., Matias, R., & Trivesi, K. S. (2008). The fundamentals of software aging. In In Proc. of 2008 IEEE International Conference on Software Reliability Engineering Workshops (ISSRE Wksp), Seattle, WA (pp. 1–6).

    Google Scholar 

  • Guo, C., Wu, H., Hua, X., Ren, S., & Nogiec, J. M. (2015). Maximize system reliability for long lasting and continuous applications. In A. Rocha, A. Correia, S. Costanzo, & L. Reis (Eds.), New contributions in information systems and technologies, Advances in intelligent systems and computing (pp. 603–612). Cham: Springer.

    Chapter  Google Scholar 

  • Hua, X., Guo, C., Wu, H., Lautner, D., & Ren, S. (2017). Schedulability analysis for real-time task set on resource with performance degradation and dual-level periodic rejuvenations. IEEE Transactions on Computers, 66(3), 553–559.

    Article  MathSciNet  MATH  Google Scholar 

  • Huang, Y., Kintala, C., Kolettis, N., & Fulton, N. D. (1995). Software rejuvenation: Analysis, module and applications. In Proc: 25th International Symposium on Fault Tolerant Computer Systems (pp. 381–390). LosAlamitos: IEEE CS Press.

    Google Scholar 

  • Jacques-Silva, G., Avritzer, A., Menasché, D. S., Koziolek, A., Happe, L., & Suresh, S. (2015). Survivability modeling to assess deployment alternatives accounting for rejuvenation. In Proc: IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) (pp. 114–119). MD: Gaithersburg.

    Google Scholar 

  • Jain, M., Manjula, T., & Gulati, T. R. (2016). Software rejuvenation policies for cluster system. Proceedings of National Academy of Sciences, India section A: physical sciences, 86(3), 339–346.

    Article  MathSciNet  MATH  Google Scholar 

  • Khorshidi, H. A., Gunawan, I., & Ibrahim, Y. (2016). A dynamic unreliability assessment and optimal maintenance strategies for multistate weighted k-out-of-n:F systems. Applied Stochastic Models in Business and Industry, 32, 485–493.

    Article  MathSciNet  Google Scholar 

  • Koutras, V. P. (2011). Two-level software rejuvenation model with increasing failure rate degradation. dependable computer systems. In J. Kacprzyk (Ed.), Advances in intelligent and soft computing (Vol. 97, pp. 101–115). Berlin Heidelberg: Springer-Verlag.

    Google Scholar 

  • Koutras V.P. & Platis A.N., (2011). Applying partial and full rejuvenation in different degradation levels. In the Proceeding of 2011 IEEE Third International workshop on software aging and rejuvenation, Hiroshima, 2011, 20-25, doi: https://doi.org/10.1109/WoSAR.2011.14.

  • Lapaa, C. M. F., Pereiraa, C. M. N. A., & de Barrosa, M. P. (2006). A model for preventive maintenance planning by genetic algorithms based in cost and reliability. Reliability Engineering & System Safety, 91(2), 233–240.

    Article  Google Scholar 

  • Nguyen, T. A., Kim, D. S., & Park, J. S. (2014). A comprehensive availability modeling and analysis of a virtualized servers system using stochastic reward nets. The Scientific World Journal, article ID 165316 18 pages.

  • Ning, G., Trivedi, K. S., Hu, H., & Cai, K.-Y. (2011). Multi-granularity software rejuvenation policy based on continuous time Markov chain. In Proceedings of. IEEE 3rd international workshop on software aging and rejuvenation (pp. 32–37).

    Google Scholar 

  • Ning, G., Zhao, J., Lou, Y., Alonso, J., Matias Jr., R., & Trivedi, K. S. (2016). Optimization of two-granularity software rejuvenation policy based on the Markov regenerative process. IEEE Transactions on Reliability., 65(4), 1630–1646.

    Article  Google Scholar 

  • Ohara M. & Fukumoto S., (2016). An experimental implementation of software rejuvenation in time warp simulation. In Proc. of the IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW), 104-110.

  • Okafor, E. G., & Sun, Y.-C. (2012). Multi-objective optimization of a series–parallel system using GPSIA. Reliability Engineering & System Safety, 103, 61–71.

    Article  Google Scholar 

  • Preeti, J. M. (2015). Availability analysis of software rejuvenation in active/standby cluster system. International Journal of Industrial and Systems Engineering, 19(1), 75–93.

    Article  MathSciNet  Google Scholar 

  • Rahme, J., & Xu, H. (2017). Dependable and reliable cloud-based systems using multiple software spare components. In Proc. of the IEEE SmartWorld, Ubiquitous Intelligence & Computing, Advanced & Trusted Computed, Scalable Computing & Communications, Cloud & Big Data Computing, Internet of People and Smart City Innovation (SmartWorld/SCALCOM/UIC/ATC/CBDCom/IOP/SCI), San Francisco, CA (pp. 1–8).

  • Rinsaka, K., & Dohi, T. (2005). Behavioral analysis of fault-tolerant software system with rejuvenation. IEICE - Transactions on Information and Systems., E88-D(12), 2681–2690.

    Article  Google Scholar 

  • Rinsaka K. & Dohi T., (2007). A faster estimation algorithm for periodic preventive rejuvenation schedule maximizing system availability. In Proc. of International Service Availability Symposium (ISAS 2007), 94-109.

  • Sadek, A., & Limnios, N. (2005). Nonparametric estimation of reliability and survival function for continuous-time finite Markov processes. Journal of Statistical Planning and Inference, 133(1), 1–21.

    Article  MathSciNet  MATH  Google Scholar 

  • Torquato, M., Umesh, I. M., & Maciel, P. J. (2018). Models for availability and power consumption evaluation of a private cloud with VMM rejuvenation enabled by VM live migration. The Journal of Supercomputing, 74(9), 1–25.

    Article  Google Scholar 

  • Trivedi, K. S., & Vaidyanathan, K. (2002). Software reliability and rejuvenation: modeling and analysis. In M. C. Calzarossa & S. Tucci (Eds.), Performance evaluation of complex systems: techniques and tools. Performance 2002. Lecture Notes in Computer Science, 2459. Berlin, Heidelberg: Springer.

    Google Scholar 

  • Vaidyanathan, K., & Trivedi, K. S. (1999). A measurement-based model for estimation of resource exhaustion in operational software systems. In Proceedings of 10th IEEE International Symposium on software reliability engineering (pp. 84–93). Los Alamitos: IEEE CS Press.

    Google Scholar 

  • Vaidyanathan, K., & Trivedi, K. S. (2005). A comprehensive model for software rejuvenation. IEEE Transactions on Dependable and Secure Computing, 2(2), 124–137.

    Article  Google Scholar 

  • Vaidyanathan, K., Selvamuthu, D., & Trivedi, K. S. (2002). Analysis of inspection-based preventive maintenance in operational software systems. In Proc. of the 21st IEEE symposium on reliable distributed systems, Suita, Japan (pp. 286–295).

    Google Scholar 

  • Wang, D., Xie, W., & Trivedi, K. S. (2007). Performability analysis of clustered systems with rejuvenation under varying workload. Performance Evaluation, 64(3), 247–265.

    Article  Google Scholar 

  • Xie, W., Yiguang, H., & Trivedi, K. S. (2005). Analysis of a two-level software rejuvenation policy. Reliability Engineering and System Safety, 87(1), 13–22.

    Article  Google Scholar 

  • Xu, J., Li, X., Zhong, Y., & Zhang, H. (2014). Availability modeling and analysis of a single-server virtualized system with rejuvenation. Journal of Software, 9(1), 129–139.

    Article  Google Scholar 

  • Zhao, J., Trivedi, K. S., Grottke, M., Alonso, J., & Wang, Y. (2014). Ensuring the performance of apache HTTP server affected by aging. IEEE Transactions on Dependable and Secure Computing, 11(2), 130–141.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to V. P. Koutras.

Additional information

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Koutras, V.P., Platis, A.N. On the performance of software rejuvenation models with multiple degradation levels. Software Qual J 28, 135–171 (2020). https://doi.org/10.1007/s11219-019-09491-0

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11219-019-09491-0

Keywords

Navigation