Skip to content

chord algorithm with golang/ChordアルゴリズムのGoでの実装

License

Notifications You must be signed in to change notification settings

nilpe/chord_golang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chord_golang

chord algorithm with golang/ChordアルゴリズムのGoでの実装

1.まえがき

DHTの学習のためにChordアルゴリズムを実装した。
実用を考えて作ったわけではないので様々な箇所が未調整である。
また、DDoS対策をしておらず、実装していない機能も多いので、実際に使う場合は手を加えることを推奨する。
なお、このプログラムでは"IP:Port" のSHA-1ハッシュをIDとして用いている。
このプログラムはMITライセンスで公開されている。

2.使い方

以下により、このプログラムが動くことが確認できる。

  1. git clone してビルドするか、環境に合わせたバイナリを選んで実行権限を与える。
  2. コマンドライン上で、(バイナリのパス) -selfPort 1234 --selfIP 127.0.0.1と打って最初のノードを立ち上げる
  3. コマンドライン上で、(バイナリのパス) -selfPort 1235 --selfIP 127.0.0.1 --sucPort 1234 --sucIP 127.0.0.1と打って2つ目ののノードを立ち上げる
  4. 以降、3.と同様に適当な数のノードを立ち上げる
  5. 生成されたtxtファイルを確認する

3.最後に

このプログラムはChord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications に基づきます。
この場を借りて、原著者の方々に最大限の感謝を申し上げます。

About

chord algorithm with golang/ChordアルゴリズムのGoでの実装

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages