org.javagroups.protocols
Class FD_SHUN

org.javagroups.protocols.FD_SHUN
All Implemented Interfaces:
java.lang.Runnable

public class FD_SHUN
implements java.lang.Runnable

Failure detection based on simple heartbeat protocol. Regularly polls members for liveness. Passes SUSPECT message up the stack when a member is not reachable. The simple algorithms works as follows: the membership is known and ordered. Each HB protocol periodically sends a 'are-you-alive' message to its *neighbor*. A neighbor is the next in rank in the membership list. It is recomputed upon a view change. When a response hasn't been received for n milliseconds and m tries, the corresponding member is suspected (and eventually excluded if faulty).

FD_SHUN starts when it detects (in a view change notification) that there are at least 2 members in the group. It stops running when the membership drops below 2.

When a message is received from the monitored neighbor member, it causes the pinger thread to 'skip' sending the next are-you-alive message. Thus, traffic is reduced.

When we receive a ping from a member that's not in the membership list, we shun it by sending it a NOT_MEMBER message. That member will then leave the group (and possibly rejoin).


Constructor Summary
FD_SHUN()
           
 
Method Summary
 void down(org.javagroups.protocols.Event evt)
           
 java.lang.String getName()
           
 void run()
           
 boolean setProperties(java.util.Properties props)
           
 void up(org.javagroups.protocols.Event evt)
           
 

Constructor Detail

FD_SHUN

public FD_SHUN()
Method Detail

getName

public java.lang.String getName()

setProperties

public boolean setProperties(java.util.Properties props)

up

public void up(org.javagroups.protocols.Event evt)

down

public void down(org.javagroups.protocols.Event evt)

run

public void run()
Specified by:
run in interface java.lang.Runnable


Copyright © 2001,2002 www.javagroups.com . All Rights Reserved.