2. OWHAT ARE FAULTS ?
ODeviation from expected behavior
ODueto a variety of factors:
– Hardware failure
– Software bugs
– Operator errors
Networkerrors/outages
3. Three categories
–> transient faults
–> intermittent faults
–> permanent faults
Any fault may be
–> fail-silent (fail-stop)
–> Byzantine
4. Fault Avoidance
– Design a system with minimal
faults
Fault Removal
– Validate/test a system to
remove the presence of faults
Fault Tolerance
– Deal with faults
5. 100 % fault-tolerance cannot be achieved.
– The closer we wish to get to 100%, the
more expensive the system will be.
– Availability: % of time that the system is
functioning
6. Goal: avoid single points of failure
Points of failure: A system is k-fault tolerant if
it can withstand k faults.
– Need k+1 components with silent faults -
k can fail and one will still be working
– Need 2k+1 components with Byzantine faults
k can generate false replies: k+1 will provide
a majority vote
7. Modern day systems are equipped with Java
Runtime Environment (ver. 1.3 or above).
This project deploys this to its advantage
and a routing simulator that runs on this
platform is developed.
Since JDK is necessary for other processes
in an operating system, this is almost a
platform independent simulator as it can run
with JDK 1.3 or any other version above this
one.
8. Fault Tolerance is an important issue in
Distributed Computing. Fault-tolerant
describes a computer system or component
designed so that, in the event that a
component fails, a backup component or
procedure can immediately take its place
with no loss of service. In real time
distributed system feasibility of task is very
important.
The major point of all is to make system
functioning even if any part goes off. This
9. SYNCHRONOUS MODEL : Uses time bounds.
ASYNCHRONOUS MODEL : Time bounds are absent.
10. HARDWARE SPECIFICATION
Processor : Any Processor above 500 Mhz.
Ram : 128Mb.
Hard Disk : 10 Gb.
Compact Disk : 650 Mb.
Input device : Standard Keyboard and Mouse.
Output device : VGA and High Resolution Monitor.
SOFTWARE SPECIFICATION
Operating System : Windows 2000 server Family.
Techniques : JDK 1.5
Data Bases : Microsoft Sql Server
Front End : Java Swing
Back End : Sql Server
11. Execution qualities, such as security and
usability, which are observable at run
time.
Evolution qualities, such as testability,
maintainability, extensibility and
scalability, which are embodied in the
static structure of the software system
12. The synchronous distributed computing
model provides processes with bounds on
processing time and message transfer
delay. These bounds, explicitly known by
the processes, can be used to safely
detect process crashes and consequently
allow the non-crashed processes to
progress with safe views of the system
state.
In these systems, a system designer can
13. Our programming model provides the
upper-layer applications with sufficient
process state information (the sets) that
can be used in order to adapt to the
available system synchrony or QoS (in
terms of timely and untimely channels),
providing more efficient solutions to fault
tolerant problems when possible.
14. FRONT END: JAVA
programming (JVM & Java API)
BACK END: MYSQL server
(ODBC & JDBC)
15. The system design can be divided into
the following modules:
Identify the status of Node
Message Transmission
Change status
Update status
16. There are many classes that need to be coded for completing the
simulator :
For example :All the faulty nodes (server and client) must be coded
into different classes , and are dependent to the class that selects these
algorithms and link them to the interface .
Class dependencies work along with a Jfree Chart which is a library of
professional graphs and can be updated when integration of
functionalities is done.
17. Integrationof classes will be done once alltheunit modules
are coded completely and testedfor errors.
The project includes various dependencies among classes ,
like inheritance, polymorphism etc.
Integrationand Integratedtestingwill be performed by
creating batch files thatintegratesvarious parts of the
program.
Usingsocket programming for integration.
Integrationof two language modules (SQL & java swing) is
a difficulttask.
18.
19.
20.
21. System Testing is utilized as user-oriented
vehicle before implementation .
blackbox testing (Stress Testing)
whitebox testing (Compilation Testing)
usability documentation and procedure