Abmar Barros commented on ZOOKEEPER-702:
Thanks for your feedback!
Regarding your first question, a failure detector is intended to determine when
monitored objects are to be pinged and when they are supposed to have failed.
So, you can have two different failure detectors running in two sides of the
application, or you can have the failure detector in just one side, and the
other side just replies the pings messages.
Summarizing, a failure detector implementation is absolutely responsible for
one side of the monitoring.
Concerning your note, the failure detectors I have implemented rely on the
assumption that zk (TCP) guarantees massage delivery and in order. To see the
effects of the new failure detection methods, we are planning to do some
experiments in the next week. We can also check if there is any effect of TCP
in the adaptive fds behavior.
> GSoC 2010: Failure Detector Model
> Key: ZOOKEEPER-702
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-702
> Project: Zookeeper
> Issue Type: Wish
> Reporter: Henry Robinson
> Assignee: Abmar Barros
> Attachments: bertier-pseudo.txt, bertier-pseudo.txt, chen-pseudo.txt,
> chen-pseudo.txt, phiaccrual-pseudo.txt, phiaccrual-pseudo.txt,
> ZOOKEEPER-702.patch, ZOOKEEPER-702.patch, ZOOKEEPER-702.patch,
> ZOOKEEPER-702.patch, ZOOKEEPER-702.patch
> Failure Detector Module
> Possible Mentor
> Henry Robinson (henry at apache dot org)
> Java, some distributed systems knowledge, comfort implementing distributed
> systems protocols
> ZooKeeper servers detects the failure of other servers and clients by
> counting the number of 'ticks' for which it doesn't get a heartbeat from
> other machines. This is the 'timeout' method of failure detection and works
> very well; however it is possible that it is too aggressive and not easily
> tuned for some more unusual ZooKeeper installations (such as in a wide-area
> network, or even in a mobile ad-hoc network).
> This project would abstract the notion of failure detection to a dedicated
> Java module, and implement several failure detectors to compare and contrast
> their appropriateness for ZooKeeper. For example, Apache Cassandra uses a
> phi-accrual failure detector (http://ddsg.jaist.ac.jp/pub/HDY+04.pdf) which
> is much more tunable and has some very interesting properties. This is a
> great project if you are interested in distributed algorithms, or want to
> help re-factor some of ZooKeeper's internal code.
This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.