Chordは、分散ハッシュテーブルを実現するアルゴリズムの一つ。P2Pネットワークにおいて、サーバを用いることなく高速にコンテンツの検索、ルーティングを行う手法。

アルゴリズム

Chordでは、コンテンツのハッシュ値を求める関数にSHA-1を採用するのが一般的である。ネットワークに参加するノードは、SHA-1のハッシュ値の値域を満たす一意なが割り当てられる。

ここで、という関数を定義する。この関数は、ハッシュ値が与えられたとき、値を増加させる方向で次に存在しているノードのを返す。なお、とは接続されていると考える。

ネットワークで情報を共有する際には、共有したい情報のハッシュ値をとしてを満たすを持つノードが、実際に情報を保持しているノードの位置を示すIPアドレス等の情報を保持する。

また、ネットワークに参加するノードは、自身のをとした場合、

, ただし

のをもつノードのIPアドレスをルーティングテーブルとして保持する。

共有されている情報を検索する際には、検索したい情報のハッシュ値をとしたとき、としてが割り当てられているノードを各ノードのルーティングテーブルを利用して検索することになる。

参考文献

外部リンク

⌬ Phoenix Mesh CID: 未登録 IPFS未登録 📡 0ピア N=1 CRITICAL PQS D35