[chord] problem?

istoica at EECS.Berkeley.EDU istoica at EECS.Berkeley.EDU
Tue Apr 20 22:17:24 EDT 2004


Baohua,

At a very quick look, your observation seems correct. 
One thing to note though is that the function 
update_others() was dropped from the subsequent 
versions of the pseudocode (see the ToN paper) and it 
was never implemented in the real system or simulator. 
Best,

Ion 
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_00FD_01C42313.BE4DD860"


------=_NextPart_000_00FD_01C42313.BE4DD860
Content-Type: text/plain;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable

I read your wonderful paper "Chord: A scalable p2p lookup service for =
internet applications".
I have a question regarding Figure 6 on Page 6.=20

n.update_others() {
for i=3D1 to m {
    p =3D find_predecessor(n-2^(i-1));    // should it be =
find_predecessor(n+1-2^(i-1))?
    p.update_finger_table(n,i);
}
}

Should it be find_predecessor(n+1-2^(i-1))? For example, 0 and 3 are in =
the ring. 4 joins. To update the 3rd finger in Node 0, we have to use =
find_predecessor(n+1-2^(i-1)).=20

Thanks,

Baohua
------=_NextPart_000_00FD_01C42313.BE4DD860
Content-Type: text/html;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dgb2312">
<META content=3D"MSHTML 6.00.2800.1400" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>I read your wonderful paper "Chord: A =
scalable p2p=20
lookup service for internet applications".</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>I have a question regarding Figure 6 on =
Page 6.=20
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>n.update_others() {</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>for i=3D1 to m {</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp; p =3D=20
find_predecessor(n-2^(i-1));&nbsp;&nbsp;&nbsp; // should it be=20
find_predecessor(n+1-2^(i-1))?</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp;=20
p.update_finger_table(n,i);</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>}</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>}</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Should it be =
find_predecessor(n+1-2^(i-1))? For=20
example, 0 and 3 are in the ring. 4 joins. To update the 3rd finger in =
Node 0,=20
we have to use find_predecessor(n+1-2^(i-1)). </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Thanks,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Baohua</FONT></DIV></BODY></HTML>

------=_NextPart_000_00FD_01C42313.BE4DD860--
-------------- next part --------------
_______________________________________________
chord mailing list
chord at amsterdam.lcs.mit.edu
https://amsterdam.lcs.mit.edu/mailman/listinfo/chord


More information about the chord mailing list