Browse Prior Art Database

Method for a high-availability fault injection configuration utility

IP.com Disclosure Number: IPCOM000008569D
Publication Date: 2002-Jun-24

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for a high-availability fault injection (FI) configuration utility. Benefits include improved functionality, improved performance, and improved test environment.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 24% of the total text.

Method for a high-availability fault injection configuration utility

Disclosed is a method for a high-availability fault injection (FI) configuration utility. Benefits include improved functionality, improved performance, and improved test environment.

Background

              Systems that are developed for use in highly available systems, such as telecommunications, must be able to handle hardware faults. The system must not crash. It must recover from the fault, for example, by resetting the hardware and by switching to redundant hardware. Highly available systems must be verified before any field use.

              Conventionally, software drivers are the main access point to the hardware. They are the main components that require testing to determine if a system can handle hardware faults. Drivers that are able to handle hardware faults are referred to as hardened drivers.

              Fault injection (FI) is a method for generating controllable, traceable failures that occur in either ordered or random order in a software system.

              Conventional proprietary solutions primarily rely on command line user interfaces and/or test batch solutions to configure and supply test data to fault injection engines. Data entry can become a tedious chore when trying to ensure adequate test coverage for a driver, as many test scenarios must be entered manually, increasing the possibility of error. One of the biggest hurdles in conventional fault injection is the difficulty of relating the test results of driver behavior to the actual errors in the hardware or software, programmatic or otherwise.

Certification

              To certify that a driver is hardened, the driver undergoes black box testing. The driver vendor delivers the software driver and the hardware it controls to a third-party certification provider. The vendor also provides a datasheet that describes the hardware’s purpose, all hardware inputs, and all hardware outputs.

              Because the software driver is delivered to a third party, the software driver code has not been seen and is not understood by the certification vendor. Testing is performed without knowledge of how the internals of the driver work. The tester uses the datasheet to identify all hardware input and outputs.

              The tester next determines which faults to inject and when to inject them. Utilizing a UI, the certification tester programs the fault injection and the excepted results. When the tests are run, the behavior of the driver and hardware is compared against the expected results. If the driver can withstand the injected hardware faults and handle them successfully, certification is granted (see Figure 1).

General description

              The disclosed method includes a high-availability FI configuration utility. It is a system-level component used to setup, configure and control the injection of simulated faults into a system driver via the FI controller, called the FI engine (see Figure 2). The utility also gathers and reports the FI status and settings. The configuration interface represents an...