このページについて このページのコンテンツは、このサイトの管理人が作成したものではありません。とても視覚的にわかりやすく説明されていたのでリンクしていたのですが、残念なことにオリジナルのサイトは閉鎖されたようなので、勝手にミラーしたものです。(若干加筆しています) こちらにもミラーされています。 BitTorrentネットワーク
分散ハッシュテーブル - Wikipedia DHTは、ピュアP2Pであってもネットワーク負荷はそれほど上がらず、ネットワーク上のコンテンツを漏れなくかつ高速に探索することを可能にする。従来のピュアP2Pで採用されていた通信では、数10万ピアぐらいが限界だとされているが、DHTを使うと数10億ピアを探索範囲とすることが可能となる。しかし、実装がむずかしいことが欠点となる。 DHTの欠点は、一般的に完全一致探索しか行えないことである。特に正規表現のような複雑な検索をDHTのみで実現することは不可能である。 代表的なDHTのアルゴリズムを説明している日本語文献を探してみた. Chord この節では,DHT の代表的なアルゴリズムであるChord について説明する.Chordのハッシュ空間上での距離の定義は,ハッシュ値の差の絶対値である.図3.5のように,データ保有ノード (図中の青点) を,そ
Chordは、分散ハッシュテーブルを実現するアルゴリズムの一つ。P2Pネットワークにおいて、サーバを用いることなく高速にコンテンツの検索、ルーティングを行う手法。 アルゴリズム[編集] Chordでは、コンテンツのハッシュ値を求める関数にSHA-1を採用するのが一般的である。ネットワークに参加するノードは、SHA-1のハッシュ値の値域を満たす一意なが割り当てられる。 ここで、という関数を定義する。この関数は、ハッシュ値が与えられたとき、値を増加させる方向で次に存在しているノードのを返す。なお、とは接続されていると考える。 ネットワークで情報を共有する際には、共有したい情報のハッシュ値をとしてを満たすを持つノードが、実際に情報を保持しているノードの位置を示すIPアドレス等の情報を保持する。 また、ネットワークに参加するノードは、自身のをとした場合、 , ただし のをもつノードのIPアドレスを
何かのやり方や、問題の解決方法をどんどんメモするブログ。そんな大学院生の活動「キャッシュ」に誰かがヒットしてくれることを祈って。 P2P、特にDHTの前提知識が無い状態から、オリジナルDHTアルゴリズムを実装・評価できるようになるまでの学習方法と参考資料をまとめました。 基本的なアルゴリズムの仕組みから、実装評価に用いるツールキットの使い方までを短期間で学習することが出来ます。 「P2Pに関する卒論を書こうと思っている人」や「P2Pアプリケーションの開発前に、アルゴリズムをテストしたい人」、「なんとなくP2Pアルゴリズムに興味が出た人」などにぴったりだと思います。また、研究室での後輩教育用資料にするのも良いと思います。実際に使いましたし。 ここで紹介する資料一覧は以下の通りです。 資料1:「ChordアルゴリズムによるDHT入門」 資料1ーオプション1:「DHTアルゴリズムSymphony
BitTorrent技術メモ&リンク集 それなりに話題になることもある、BitTorrent(以下、BT)の技術メモです(注1)。P2Pの応用の形のひとつとして、興味深いものがあります。 作者の書いた技術文書を読んでいると、アーキテクチャと言いつつ実装テクニックぎりぎりみたいな記述が混じったりしています。個人的には、こういう態度は好きで、好感が持てます(注2)。英語はあまり読みやすいとは思えませんが。 *かなり大雑把な動作イメージ 一般的なP2Pファイル交換とBTでは、解決しようとしている領域が異なります(注3)。 BTはファイルを探索(検索)する部分には焦点を当てていません。ノード群がある特定のファイルを求めている時、そのノード群に、いかに素早くファイルを行き渡らせるか(配布)、に機能を絞っています。 モデル的な説明をすると、与えられた初期状態と遷移は次のようになります(注4)。 リ ン
Linuxのディストリビューションの配布などで配布サーバの回線速度などがボトルネックになり(図1)、円滑にファイルを配布することはコストがかかります。BitTorrent(図2)は配布者の負担を軽減して、素早くファイルを配信することを目的にBram Cohenによって開発されたP2Pソフトウェア(図3)です。 BitTorrentでは、トラッカーとよばれる全てのピアとピアのアップロード/ダウンロード能力、ファイルの取得状況を管理するサーバが存在します。一般的なP2PシステムではP2Pネットワーク内を検索してからファイルの取得という動作を行いますが、BitTorrentでファイルの検索という作業は行ないません。代わりにトラッカーにファイルを持っているピアを問い合わせます。ファイルを持っているピアの検索をクライアント・サーバで行うということで、従来の分類ではハイブリッド型P2Pシステムになりま
Twitterは、同社の何千台ものサーバに対してバイナリをデプロイする場合に、ピア・ツー・ピアシステムのBitTorrentを利用したツール「Murder」を用いていると、7月1日の記事「Twitterの大規模システム運用技術、あるいはクジラの腹の中(後編)~Twitterのサブシステム「Unicorn」「Kestrel」「Flock DB」」で紹介しました。 FacebookでもBitTorrentによる大規模なデプロイが高速に行われていることは、7月16日の記事「Facebook、memcachedに300TB以上のライブデータを置く大規模運用の内側」で紹介しました。 どうやら大規模システムにおけるデプロイではBitTorrentの利用が進んでいるようです。 7月15日付けのTwitter Engineering Blogに、Twitterのエンジニア、Larry Gadea氏による「
Linuxのディストリビューションの配布などで配布サーバの回線速度などがボトルネックになり、円滑にファイルを配布することはコストがかかります。 BitTorrentは配布者の負担を軽減して、素早くファイルを配信することを目的に開発されたP2Pソフトウェアです。 BitTorrentの動作概要 ------------------- BitTorrent では、トラッカーとよばれる全てのピアとピアのアップロード/ダウンロード能力、ファイルの取得状況を監視・管理するサーバが存在します。一般的なP2P システムではP2Pネットワーク内を検索してからファイルの取得という動作を行いますが、BitTorrentでファイルの検索という作業は行わずに、トラッカーに問い合わせます。ファイルの検索をクライアント・サーバで行うということで、従来の分類ではハイブリッド型P2Pシステムになります。 BitTorre
Last Modified: Wed Oct 26 01:47:00 EDT 2005 (10/26, 14:47 JST) [English] 概要 unagi.py は緩く結合されたクラスタ環境のためのシステム監視ツールです。 これは複数のユーザがクラスタ上でさまざまなプログラムを走らせるときに、 各マシンの使用状況を報告することによって、ユーザが協力してそのマシン資源を 有効利用できるようにします。このプログラムはクラスタ上のすべてのマシンで走り、 システム情報を共有します。これはまた簡単な HTTP サーバとしての機能も そなえており、ユーザは状況報告をブラウザ上で見ることができます。 注意: unagi.py は公開用のサーバで走ることを意図してつくられては *いません*。 セキュリティ上の理由から、マシンの状態を外部のユーザに見せるべきではありません。 11マシンからなるクラス
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く