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?
Is there a clearly documented consensus in plain English that describes Maymounkov and Mazieres Kademlia system?
821 Views Asked by Sentinel At
1
There are 1 best solutions below
Related Questions in P2P
- Unable to Retrieve External Public Address in libp2p Swarm Events
- How to avoid duplicates with the pull-based subscribe model?
- Wifi direct (Wifi P2P) connection between raspberry pi 4b and android device only possible after reboot
- Using tokio::time::timeout does not trap delayed response from TCPReadStream
- 'connections' is deprecated. The declaration was marked as deprecated here
- Twitch but practically free with p2p webRTC?
- How Can I Connect Using A WebRTC-Offer With PeerJS
- Choose between polling, websocket or P2P
- does webrtc use turn server if established p2p connection is failed?
- A p2p secure chat application need more ressources to establish the work
- how to allow mobile apps to communicate without a separate server
- aiortc can't receive video from server example
- P2P connection does not work on Android 11 and above
- Android device cannot detect others by flutter_nearby_connections
- Why is WebRTC peer.ontrack not being called in 1-1 peer connection?
Related Questions in KADEMLIA
- How do I periodically remove inactive nodes and flush the routing table with the use of kademlia python library?
- which libp2p module do I use to broadcast data to peers in the network e.g blockchain? do I use mdns or kademlia for blockchain?
- Crawl DHT of a private network from outside
- How to implement peer discovery using Kademlia (rust-libp2p)
- Kademlia get_providers() fails to find nodes that start_providing() in Rust libp2p
- Do I remove peers after a certain amount of time?(mainline dht)
- How to find metadata in the dht while only having the Infohash?
- Is it possible to receive from one port and send through another in mainline dht?
- receiving unreadable text while trying to bencode a "find_node" query
- How does the routing table work in mainline dht?
- DHT detection in local network
- Is it possible to compute an approximate size estimate of a kademlia network from a node's k-buckets?
- Node Id generation in storj
- Kademlia DHT finding bucket index for a node
- Bucket splitting exception in Kademlia
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
From David Mazières homepage [emphasis mine]:
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.
Not that I am aware, but from the above I would argue that later sections simply trump earlier ones.