Loki: A State-Driven Fault Injector for Distributed Systems
DSN '00 Proceedings of the 2000 International Conference on Dependable Systems and Networks (formerly FTCS-30 and DCCA-8)
XtremWeb: A Generic Global Computing System
CCGRID '01 Proceedings of the 1st International Symposium on Cluster Computing and the Grid
A Framework for Assessing Dependability in Distributed Systems with Lightweight Fault Injectors
IPDS '00 Proceedings of the 4th International Computer Performance and Dependability Symposium
A Language-Driven Tool for Fault Injection in Distributed Systems
GRID '05 Proceedings of the 6th IEEE/ACM International Workshop on Grid Computing
Fault injection in distributed java applications
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Editorial: Special section: Paradigms for scalable and dependable grids
Future Generation Computer Systems
Advanced faults patterns for WSN dependability benchmarking
Proceedings of the 13th ACM international conference on Modeling, analysis, and simulation of wireless and mobile systems
PREFAIL: a programmable tool for multiple-failure injection
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
A case for virtual machine based fault injection in a high-performance computing environment
Euro-Par'11 Proceedings of the 2011 international conference on Parallel Processing
Hi-index | 0.00 |
One of the topics of paramount importance in the development of Grid middleware is the impact of faults, since their probability of occurrence in a Grid infrastructure and in large-scale distributed systems is actually very high. In this paper, we explore the versatility of a new tool for fault injection in distributed applications: FAIL-FCI. In particular, we show that not only are we able to fault-load existing distributed applications (as used in most current papers that address fault-tolerance issues), we are also able to inject qualitative faults, i.e. inject specific faults at very specific moments in the program code of the application under test. Finally, and although this was not the primary purpose of the tool, we are also able to inject specific patterns of workload, in order to stress test the application under test. Interestingly enough, the whole process is driven by a simple unified description language that is totally independent from the language of the application, so that no code changes or recompilation are needed on the application side.