软件老化与抗衰的研究综述Summary on software aging and rejuvenation
闫永权;郭平;
摘要(Abstract):
对现有的软件老化和抗衰研究进行了梳理.首先对软件老化的成因进行了描述.然后分析了现有的软件老化和抗衰的方法:基于时间的抗衰方法和基于检测的抗衰方法.之后对识别软件老化的参数进行了分类:资源消耗参数和性能参数,并对遭受软件老化影响的系统类型进行了分类:安全性系统,非安全性系统,未指定系统.其后由于抗衰操作会带来直接和间接的经济损失,因此对执行抗衰操作的系统层次进行了分层.最后指出了研究中存在的不足和以后的研究方向.
关键词(KeyWords): 软件老化;软件抗衰;性能下降;失效
基金项目(Foundation): 国家自然科学基金项目(编号:61375045)
作者(Authors): 闫永权;郭平;
DOI: 10.14188/j.1671-8844.2017-04-019
参考文献(References):
- [1]Cheat Sheet:Everything you wanted to know about web performance but were afraid to ask[EB/OL].http://www.webperformancetoday.com/2010/06/15/everything-you-wanted-to-know-about-web-performance/.
- [2]Huang Y,Kintala C,Kolettis N,et al.Software rejuvenation:Analysis,module and applications[C]//Twenty-Fifth International Symposium on IEEE FaultTolerant Computing,IEEE,1995:381-390.
- [3]Grottke M,Matias R,Trivedi K S.The fundamentals of software aging[C]//IEEE International Conference on Software Reliability Engineering Workshops,IEEE,2008:1-6.
- [4]Bernstein L,Kintala C M R.Software rejuvenation[J].CrossTalk,2004,17(8):23-26.
- [5]Avritzer A,Weyuker E.Monitoring smoothly degrading systems for increased dependability[J].Empirical Software Eng.J.,1997,2(1):59-77.
- [6]Jia Y F,Su J Y,Cai K Y.A feedback control approach for software rejuvenation in a web server[C]//IEEE International Conference on Software Reliability Engineering Workshops,IEEE,2009:1-6.
- [7]Dean D J,Nguyen H,Gu X.Ubl:unsupervised behavior learning for predicting performance anomalies in virtualized cloud systems[C]//Proceedings of the 9th International Conference on Autonomic Computing,ACM,2012:191-200.
- [8]Bovenzi A,Cotroneo D,Pietrantuono R,et al.On the aging effects due to concurrency bugs:A case study on mysql[C]//IEEE 23rd International Symposium on Software Reliability,IEEE,2012:211-220.
- [9]Marshall E.Fatal error:how patriot overlooked a scud[J].Science,1992,255(5050):1347-1347.
- [10]Grottke M,Trivedi K S.Software faults,software aging and software rejuvenation[J].Journal of the Reliability Association of Japan,2005,27(7):425-438.
- [11]Grottke M,Trivedi K S.Fighting bugs:remove,retry,replicate and rejuvenate[J].IEEE Computer,2007,40(2):107-109.
- [12]Bernstein L.Innovative technologies for preventing network outages[J].AT&T Technical Journal,1993,72(4):4-10.
- [13]Garg S,Puliafito A,Telek M,et al.Analysis of preventive maintenance in transactions based software systems[J].IEEE Transactions on Computers,1998,47(1):96-107.
- [14]Okamura H,Luo C,Dohi T.Estimating response time distribution of server application in software aging phenomenon[C]//2013IEEE International Symposium on Software Reliability Engineering Workshops,IEEE,2013:281-284.
- [15]Xie W,Hong Y,Trivedi K.Analysis of a two-level software rejuvenation policy[J].Reliability Engineering&System Safety,2005,87(1):13-22.
- [16]Vaidyanathan K,Trivedi K S.A comprehensive model for software rejuvenation[J].IEEE Transactions on Dependable and Secure Computing,2005,2(2):124-137.
- [17]Okamura H,Dohi T.A pomdp formulation of multistep failure model with software rejuvenation[C]//2011IEEE Third International Workshop on Software Aging and Rejuvenation,IEEE,2011:14-19.
- [18]Xie W,Hong Y,Trivedi K S.Software rejuvenation policies for cluster systems under varying workload[C]//10th IEEE Pacific Rim International Symposium on Dependable Computing,IEEE,2004:122-129.
- [19]Hla Myint M T,Thein T.Availability improvement in virtualized multiple servers with software rejuvenation and virtualization[C]//2010 Fourth International Conference on Secure Software Integration and Reliability Improvement,IEEE,2010:156-162.
- [20]Kourai K,Chiba S.A fast rejuvenation technique for server consolidation with virtual machines[C]//37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks,IEEE,2007:245-255.
- [21]Du X,Qi Y,Hou D,et al.Modeling and performance analysis of software rejuvenation policies for multiple degradation systems[C]//33rd Annual IEEE International Computer Software and Applications Conference,IEEE,2009:240-245.
- [22]Kourai K,Chiba S.Fast software rejuvenation of virtual machine monitors[J].IEEE Transactions on Dependable and Secure Computing,2011,8(6):839-851.
- [23]Wang D,Xie W,Trivedi K S.Performability analysis of clustered systems with rejuvenation under varying workload[J].Performance Evaluation,2007,64(3):247-265.
- [24]Salfner F,Wolter K.Analysis of service availability for time-triggered rejuvenation policies[J].Journal of Systems and Software,2010,83(9):1579-1590.
- [25]Andrade E C,Machida F,Kim D S,et al.Modeling and analyzing server system with rejuvenation through SYSML and stochastic reward nets[C]//2011Sixth International Conference on Reliability and Security,IEEE,2011:161-168.
- [26]Eto H,Dohi T,Ma J.Simulation-based optimization approach for software cost model with rejuvenation[C]//Autonomic and Trusted Computing.Springer Berlin Heidelberg,2008,5060:206-218.
- [27]Garg S,Van Moorsel A,Vaidyanathan K,et al.A methodology for detection and estimation of software aging[C]//The Ninth International Symposium on Software Reliability Engineering,IEEE,1998:283-292.
- [28]Machida F,Andrzejak A,Matias R,et al.On the effectiveness of Mann-Kendall test for detection of software aging[C]//2013IEEE International Symposium on Software Reliability Engineering Workshops,IEEE,2013:269-274.
- [29]Li L,Vaidyanathan K,Trivedi K S.An approach for estimation of software aging in a web server[C]//2002International Symposium on Empirical Software Engineering,IEEE,2002:91-100.
- [30]Grottke M,Li L,Vaidyanathan K,et al.Analysis of software aging in a web server[J].IEEE Transactions on Reliability,2006,55(3):411-420.
- [31]Araujo J,Matos R,Maciel P,et al.Software rejuvenation in eucalyptus cloud computing infrastructure:A method based on time series forecasting and multiple thresholds[C]//2011 IEEE Third International Workshop on Software Aging and Rejuvenation,IEEE,2011:38-43.
- [32]Hoffmann G A,Trivedi K S,Malek M.A best practice guide to resource forecasting for computing systems[J].IEEE Transactions on Reliability,2007,56(4):615-628.
- [33]Cotroneo D,Natella R,Pietrantuono R,et al.Software aging analysis of the linux operating system[C]//2010IEEE 21st International Symposium on Software Reliability Engineering,IEEE,2010:71-80.
- [34]Cotroneo D,Orlando S,Pietrantuono R,et al.A measurement-based aging analysis of the JVM[J].Software Testing,Verification and Reliability,2013,23(3):199-239.
- [35]Cassidy K J,Gross K C,Malekpour A.Advanced pattern recognition for detection of complex software aging phenomena in online transaction processing servers[C]//International Conference on Dependable Systems and Networks,IEEE,2002:478-482.
- [36]Alonso J,Belanche L,Avresky D R.Predicting software anomalies using machine learning techniques[C]//2011 10th IEEE International Symposium on Network Computing and Applications,IEEE,2011:163-170.
- [37]Matias R.An experimental study on software aging and rejuvenation in web servers[C]//30th Annual International Computer Software and Applications Conference,IEEE,2006:189-196.
- [38]Moura Silva L,Alonso J,Silva P,et al.Using virtualization to improve software rejuvenation[J].IEEE Transactions on Computers,2009,58(11):1525-1538.
- [39]Shereshevsky M,Crowell J,Cukic B,et al.Software aging and multifractality of memory resources[C]//43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks,IEEE,2003:721.
- [40]Andrzejak A,Silva L.Deterministic models of software aging and optimal rejuvenation schedules[C]//10th IFIP/IEEE International Symposium on Integrated Network Management,IEEE,2007:159-168.
- [41]Bao Y,Sun X,Trivedi K S.A workload-based analysis of software aging and rejuvenation[J].IEEE Transactions on Reliability,2005,54(3):541-548.
- [42]Bovenzi A,Cotroneo D,Pietrantuono R,et al.Workload characterization for software aging analysis[C]//2011IEEE 22nd International Symposium on Software Reliability Engineering,IEEE,2011:240-249.
- [43]Zhao J,Trivedi K S,Wang Y B,et al.Evaluation of software performance affected by aging[C]//2010IEEE Second International Workshop on Software Aging and Rejuvenation,IEEE,2010:1-6.
- [44]Monit[EB/OL].http://mmonit.com/monit/.
- [45]Ganglia[EB/OL].http://ganglia.sourceforge.net/.
- [46]Munin[EB/OL].http://munin-monitoring.org/.
- [47]Nagios[EB/OL].http://www.nagios.org/.
- [48]Kim D S,Yang C S,Park J S.Adaptation mechanisms for survivable sensor networks against denial of service attack[C]//The Second International Conference on Availability,Reliability and Security,IEEE,2007:575-579.
- [49]Vaidyanathan K,Trivedi K S.A measurement-based model for estimation of resource exhaustion in operational software systems[C]//10th International Symposium on Software Reliability Engineering,IEEE,1999:84-93.
- [50]Weimer W.Exception-handling bugs in Java and a language extension to avoid them[C]//Advanced Topics in Exception Handling Techniques.Springer Berlin Heidelberg,2006:22-41.
- [51]Zhang H,Wu G,Chow K,et al.Detecting resource leaks through dynamical mining of resource usage patterns[C]//2011IEEE/IFIP 41st International Conference on Dependable Systems and Networks Workshops,IEEE,2011:265-270.
- [52]Carrozza G,Cotroneo D,Natella R,et al.Memory leak analysis of mission-critical middleware[J].Journal of Systems and Software,2010,83(9):1556-1567.
- [53]Ferreira T B,Matias R,Macedo A,et al.An experimental study on memory allocators in multicore and multithreaded applications[C]//12th International Conference on Parallel and Distributed Computing,IEEE,2011:92-98.
- [54]Silva L,Madeira H,Silva J G.Software aging and rejuvenation in a SOAP-based server[C]//Fifth IEEE International Symposium on Network Computing and Applications,IEEE,2006:56-65.
- [55]Macedo A,Ferreira T B,Matias R.The mechanics of memory-related software aging[C]//2010IEEE Second International Workshop on Software Aging and Rejuvenation,IEEE,2010:1-5.
- [56]Tai A T,Alkalai L,Chau S N.On-board preventive maintenance:a design-oriented analytic study for longlife applications[J].Performance Evaluation,1999,35(3):215-232.
- [57]Grottke M,Nikora A P,Trivedi K S.An empirical investigation of fault types in space mission system software[C]//2010IEEE/IFIP International Conference on Dependable Systems and Networks,IEEE,2010:447-456.
- [58]Balakrishnan M,Puliafito A,Trivedi K,et al.Buffer losses vs.deadline violations for ABR traffic in an ATM switch:A computational approach[J].Telecommunication Systems,1997,7(1-3):105-123.
- [59]Liu Y,Trivedi K S,Ma Y,et al.Modeling and analysis of software rejuvenation in cable modem termination systems[C]//13th International Symposium on Software Reliability Engineering,IEEE,2002:159-170.
- [60]Liu Y,Ma Y,Han J J,et al.A proactive approach towards always-on availability in broadband cable networks[J].Computer Communications,2005,28(1):51-64.
- [61]Okamura H,Miyahara S.Rejuvenating communication network system under burst arrival circumstances[J].IEICE Transactions on Communications,2005,88(12):4498-4506.
- [62]Yoshimura T,Yamada H,Kono K.Can Linux be rejuvenated without reboots?[C]//2011IEEE Third International Workshop on Software Aging and Rejuvenation,IEEE,2011:50-55.
- [63]Bovenzi A,Alonso J,Yamada H,et al.Towards fast OS rejuvenation:An experimental evaluation of fast OS reboot techniques[C]//2013IEEE 24th International Symposium on Software Reliability Engineering,IEEE,2013:61-70.
- [64]Ni Q,Sun W,Ma S.Memory leak detection in sun solaris os[C]//International Symposium on Computer Science and Computational Technology,IEEE,2008:703-707.
- [65]Robb D.Defragmenting really speeds up Windows NT machines[J].Spectrum,IEEE,2000,37(9):74-77.
- [66]Park J,Choi B.Automated memory leakage detection in android based systems[J].International Journal of Control and Automation,2012,5(2):35-42.
- [67]Huang Y,Arsenault D,Sood A.SCIT-DNS:Critical infrastructure protection through secure DNS server dynamic updates[J].Journal of High Speed Networks,2006,15(1):5-19.
- [68]Antunes J,Neves N F,Veríssimo P J.Detection and prediction of resource-exhaustion vulnerabilities[C]//19th International Symposium on Software Reliability Engineering,IEEE,2008:87-96.
- [69]Machida F,Nicola V F,Trivedi K S.Job completion time on a virtualized server subject to software aging and rejuvenation[C]//2011IEEE Third International Workshop on Software Aging and Rejuvenation,IEEE,2011:44-49.
- [70]Nellitheertha H.Reboot Linux faster using kexec[Z].Developer Works Technical Library,2004.
- [71]Alonso J,Matias R,Vicente E,et al.A comparative evaluation of software rejuvenation strategies[C]//2011IEEE Third International Workshop on Software Aging and Rejuvenation,IEEE,2011:26-31.
- [72]Kourai K.Cachemind:Fast performance recovery using a virtual machine monitor[C]//2010International Conference on Dependable Systems and Networks Workshops,IEEE,2010:86-92.
- [73]Machida F,Kim D S,Trivedi K S.Modeling and analysis of software rejuvenation in a server virtualized system[C]//2010IEEE Second International Workshop on Software Aging and Rejuvenation,IEEE,2010:1-6.
- [74]Avritzer A,Bondi A,Weyuker E J.Ensuring system performance for cluster and single server systems[J].Journal of Systems and Software,2007,80(4):441-454.
- [75]Jain M.Availability analysis of software rejuvenation in active/standby cluster system[J].International Journal of Industrial and Systems Engineering,2015,19(1):75-93.
- [76]Park K,Kim S.Availability analysis and improvement of active/standby cluster systems using software rejuvenation[J].Journal of Systems and Software,2002,61(2):121-128.
- [77]Silva L M,Alonso J,Silva P,et al.Using virtualization to improve software rejuvenation[C]//Sixth IEEE International Symposium on Network Computing and Applications,IEEE,2007:33-44.
- [78]Matias R,Trivedi K S,Maciel P R M.Using accelerated life tests to estimate time to software aging failure[C]//2010IEEE 21st International Symposium on Software Reliability Engineering,IEEE,2010:211-219.
- [79]Matias R,Barbetta P A,Trivedi K S.Accelerated degradation tests applied to software aging experiments[J].IEEE Transactions on Reliability,2010,59(1):102-114.
- [80]Candea G,Cutler J,Fox A,et al.Reducing recovery time in a small recursively restartable system[C]//International Conference on Dependable Systems and Networks,IEEE,2002:605-614.
- [81]Candea G,Kawamoto S,Fujiki Y,et al.Microreboot—A technique for cheap recovery[C]//Proc.Symp.on Operating Systems Design&Implementation,2004:31-44.
- [82]Sundaram V,HomChaudhuri S,Garg S,et al.Improving dependability using shared supplementary memory and opportunistic micro rejuvenation in multi-tasking embedded systems[C]//13th Pacific Rim International Symposium on Dependable Computing,IEEE,2007:240-247.
- [83]Tai A T,Tso K S,Sanders W H,et al.A performability-oriented software rejuvenation framework for distributed applications[C]//Proceedings International Conference on Dependable Systems and Networks,IEEE,2005:570-579.
- [84]Tsai T,Vaidyanathan K,Gross K.Low-overhead run-time memory leak detection and recovery[C]//12th Pacific Rim International Symposium on Dependable Computing,IEEE,2006:329-340.
- [85]Bobbio A,Sereno M,Anglano C.Fine grained software degradation models for optimal rejuvenation policies[J].Performance Evaluation,2001,46(1):45-62.
- [86]Bond M D,McKinley K S.Tolerating memory leaks[J].ACM Sigplan Notices,2008,43(10):109-126.
- [87]Gama K,Donsez D.Service coroner:A diagnostic tool for locating OSGI stale references[C]//34th Euromicro Conference on Software Engineering and Advanced Applications,IEEE,2008:108-115.
- [88]Jeong J,Seo E,Choi J,et al.KAL:kernel-assisted non-invasive memory leak tolerance with a general-purpose memory allocator[J].Software:Practice and Experience,2010,40(8):605-625.