😽

分散ハッシュテーブルに関するリンク集

2021/10/02に公開

分散ハッシュテーブル(DHT)

https://ja.wikipedia.org/wiki/分散ハッシュテーブル

https://en.wikipedia.org/wiki/Distributed_hash_table

https://yulii.github.io/kademlia-20090616.html

Kademlia

https://en.wikipedia.org/wiki/Kademlia
https://en.wikipedia.org/wiki/Kad_network

https://hazm.at/mox/distributed-system/algorithm/distributed-hash-table/kademlia/kademlia-a-peer-to-peer-information-system-based-on-the-xor-metric/index.html

首藤先生の解説資料

http://www.shudo.net/article/20040727-Kademlia/shudo-Kademlia.pdf

cooldaemonさんの解説資料

https://www.slideshare.net/cooldaemon/kademlia-presentation

https://tokyo-metro-u.repo.nii.ac.jp/index.php?action=pages_view_main&active_action=repository_action_common_download&item_id=7906&item_no=1&attribute_id=18&file_no=1&page_id=30&block_id=164

  • Kademliaの解説と実装 - block-chain.jp

https://block-chain.jp/kademlia/implementation-1/
https://block-chain.jp/kademlia/implementation-2/
https://block-chain.jp/kademlia/implementation-3/

記事中のコード
https://github.com/shinyoshiaki/kademlia-with-webrtc
リファクタリングされた実装がこちら
https://github.com/shinyoshiaki/kad-rtc

  • 木構造型分散ハッシュテーブルを用いた P2P システム Kademlia の実装と評価

https://www.tetras.uitec.jeed.go.jp/files/kankoubutu/j-045-03.pdf

Chord

https://en.wikipedia.org/wiki/Chord_(peer-to-peer)

https://amzn.to/39Jq64F

第5章 ネットワーク層 5.2.11 ピア・ツー・ピア・ネットワークのノード検索 でChordについて解説がある。

Kademlia vs Chord

KademliaはChordよりスケーラビリティがあるらしい。

  • ユビキタスネットワークと分散ハッシュテーブルの構築と評価

https://ipsj.ixsq.nii.ac.jp/ej/index.php?action=pages_view_main&active_action=repository_action_common_download&item_id=44677&item_no=1&attribute_id=1&file_no=1&page_id=13&block_id=8

DHTの実装

Go版

Kademlia

https://github.com/nictuku/dht
https://github.com/libp2p/go-libp2p-kad-dht
https://github.com/chuckha/dht
https://github.com/mh-cbon/dht
https://github.com/flightonary/kademlia

Chord

https://github.com/arriqaaq/chord
https://github.com/Champii/go-dht

https://medium.com/techlog/chord-building-a-dht-distributed-hash-table-in-golang-67c3ce17417b

Rust版

Kademlia

https://github.com/dtantsur/rust-dht
https://github.com/leejunseok/kademlia-rs
https://github.com/ryankurte/rust-kad
https://gitlab.com/jeffrey-xiao/kademlia-dht-rs

Chord

https://github.com/Benestar/rust-chord

C++版

Kademlia

https://github.com/arvidn/libtorrent/tree/RC_2_0/src/kademlia

Java版

Kademlia

https://github.com/JoshuaKissoon/Kademlia

Chord

https://github.com/anhallbe/ChordDHT

Scala版

Kademlia

https://github.com/xxtommoxx/kademlia-dht

Chord

https://github.com/allenfromu/Open-Chord-Scala

Python

http://entangled.sourceforge.net/

Erlang

https://ytakano.hatenadiary.org/entry/20080507/1210136628

Discussion