Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
260 views
in Technique[技术] by (71.8m points)

p2p - Is there a clearly documented consensus in plain English that describes Maymounkov and Mazieres Kademlia system?

I am struggling with the original paper trying to understand seemingly contradicting paragraphs. One example is where in 2.2 the authors declare that for bit space 160 there will be 160 k buckets, then later go on to say that in fact the buckets are a smaller number covering wider bit ranges and organized by prefix binary trees. In that 2.4 section they talk about unbalanced trees that lead to interpretations like the following, https://stackoverflow.com/a/32187456/442396 , where it is not clear if the answer there does reflect MMs intentions. Is there a clearly documented consensus out there that explains how these ambiguities should be interpreted in plain English?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

From David Mazières homepage [emphasis mine]:

Petar Maymounkov and David Mazières. Kademlia: A peer-to-peer information system based on the XOR metric. In Proceedings of the 1st International Workshop on Peer-to-Peer Systems (IPTPS '02), pages 53-65, March 2002. paper. (Short pre-proceedings version often cited, but please read the full paper, instead.)

Since the quoted links point to postscript here's the PDF of the full version

The sections beyond 2.2 in the longer 13-page version contain many enhancements and refinements which are not part of the original proof.

So the flat 160-bucket array can be seen as Kademlia 0.9 that was necessary for the basic proof while the tree-based version is Kademlia 1.0 which is necessary to implement those enhancements.

Note that the tree-based and flat approach are nearly equivalent if one does not implement any of the things in the later sections such as the unbalanced tree handling or bucket splitting.

Is there a clearly documented consensus out there that explains how these ambiguities should be interpreted in plain English?

Not that I am aware, but from the above I would argue that later sections simply trump earlier ones.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...