FIDS-Fault Injection In Distributed System


 

Project Summary

Team Members

Advisors/Guides

MileStones/Project Plan

References/Research

Project Documents

Contact Us

Research: 

 

Dummynet:

 

Author Luigi Rizzo

Category   Functional Correctness / Performance

Description:   Dummynet is a tool which simulates the presence of finite size   queues, bandwidth limitations, and communication delays.  Dummynet   inserts between two layers of the protocol stack (in the current   implementation between TCP and IP), simulating the above effects in   an operational system.  This way experiments can be done using real   protocol implementations and real applications, even running on the   same host (dummynet also intercepts communications on the loopback   interface). 

Orchestra:-

Author: Scott Dawson, Farnam Jahanian, and Todd Mitton

Category: Functional Correctness / Performance

Description: This tool is a library which provides the user with an ability to build a protocol layer capable of performing fault injection on   protocols.  Several fault injection layers have been built using this library, one of which has been used to test different vendor implementations of TCP. This is accomplished by probing the vendor implementation from one machine containing a protocol stack that has been instrumented with Orchestra.  A connection is opened from the  Orchestra fault injection layer can manipulate these messages.   In particular, it can drop, delay, re-order, duplicate, or modify   messages.  It can also introduce new messages into the system if desired.   The actions of the Orchestra fault injection layer on each message   are determined by a script, written in Tcl.  This script is   interpreted by the fault injection layer when the message enters the   layer.  The script has access to the header information about the   message, and can make decisions based on header values.  It can also   keep information about previous messages, counters, or any other data   which the script writer deems useful.  Users of Orchestra may also   define their own actions to be taken on messages, written in C, that   may be called from the fault injection scripts. 

Availability:- See http://www.eecs.umich.edu/RTCL/projects/orchestra/ or e-mail  Scott Dawson (sdawson@eecs.umich.edu).

 Required Environment OSF MK operating system, or X-kernel like network  architecture, or adapted to network stack.

 

Tcpanaly

Author  Vern Paxson

Category  Functional Correctness /Performance

Description

   This is a tool for automatically analyzing a TCP implementation's   behavior by inspecting packet traces of the TCP's activity. It does  so through packet filter traces produced by tcpdump.  It has coded   within it knowledge of a large number of TCP implementations.  Using this, it can determine whether a given trace appears consistent with   a given implementation, and, if so, exactly why the TCP chose to   transmit each packet at the time it did.  If a trace is found   inconsistent with a TCP, tcpanaly either diagnoses a likely   measurement error present in the trace, or indicates exactly whether   the activity in the trace deviates from that of the TCP, which can   greatly aid in determining how the traced implementation behaves.

Loki;-

           fault injector injects faults based on a partial view of the global state of the distributed system, and performs a post-runtime analysis using an off-line clock synchronization algorithm to determine whether the faults were properly injected.

 

 

 

Reference:

[D JM96a] Scott Dawson, Farnam Jahanian, and Todd Mitton, "ORCHESTRA:A Fault Injection Environment for Distributed Systems",University of Michigan Technical report CSE-TR-318-96, EECS Department.

http://www.eecs.umich.edu/RTCL/projects/orchestra/

http://www.usecases.org

Carnegie Mellon University---Robert Slater.

Software Engineering ---Pressman

Applying UML And Patterns---Craig Larman

http://www.crhc.uiuc.edu/PERFORM/loki.html.