[chord] Why a key is stored at its successor node?
Manuel Urueña
muruenya at it.uc3m.es
Wed Apr 16 14:55:39 EDT 2008
Hi,
I'm developing a small simulator to study a static Chord ring and since I'm
just designing the routing part, I was wondering: Why a key is stored at its
successor node instead of its predeccessor?
Since you always choose the fingers which are lesser than the target key, the
only way to find the successor of a key is through its predeccessor, because
it is the only node in the whole ring who knows for sure which is the
successor of the key.
Therefore, if the key is stored at the predeccessor node instead of the
succesor one, the last routing hop between the predeccessor and the successor
nodes could be saved.
Moreover, I've also seen in the Chord paper than the keys could be replicated
in the following successors. Then, you can only find these copies if the
first successor goes down, so these are backup copies to provide
fault-tolerance.
On the other hand, if the key is replicated in some predeccessor nodes, these
copies could be found earlier, during the routing process, lowering the
average number of hops, and also providing load balancing among replicas.
Do you think these are good optimizations? or have I missed some drawbacks of
storing keys at the predecessor nodes?
Thanks,
--Manuel
--
Manuel Uruen~a - Universidad Carlos III de Madrid
GPG FP: C20B 7F07 09E3 FB95 7AD9 D03A DA93 AA09 4EE2 675B
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : https://pdos.csail.mit.edu/pipermail/chord/attachments/20080416/9bcb19d6/attachment.pgp
More information about the chord
mailing list