ソフトウェア

BitTorrentの動作原理をシミュレーションする「BitTorrent Simulator」


BitTorrentは一切の匿名性を排除するのと引き替えに極めて効率的なP2Pのファイル共有ネットワークを構築しているわけです。全ファイルを持っているSeederからファイルをピースという小さな単位でダウンロードすると同時に、同じようにダウンロードしているほかのユーザー、いわゆるLeecherからもファイルをダウンロードすることで、ダウンロードしている者同士で持っているピースを交換し合い、Seederの帯域の負担を減らして効率的に共有するわけです。

というような説明を読んでも理解しがたいわけですが、この「BitTorrent Simulator」を使えば、どうやってたった一人のSeederから複数のLeecherにファイルが行き渡り、そしてLeecherが次々とSeederになって行くのかが分かります。
BitTorrent Simulator: How and Why BitTorrent works at Torrentfreak

以下がシミュレータの本体。Javaで動作します。


btsim Built with Processing

七色の各色がピースになっています。「+」キーを押すとLeecherが追加されるので、いくつか配置します。次に「s」キーを押してSeederを配置すると、Seederから各Leecherにファイルの欠片が転送され始めます。さらにもうしばらくすると、Leecher同士でもファイルの欠片を交換しているのが分かります。

わかりやすくシミュレーションしようと思うと、まず「s」キーを1回押して、次に「+」キーを30回から50回ぐらい押すと、それらしい感じになります。1分ぐらい経過すると、ものすごいことになります。

Seederばっかりになった図


ここにLeecherが1人加わると、一斉にファイルが転送され始めます


こうやって見ると、いかに帯域を消費するのかがよく分かりますね……。

この記事のタイトルとURLをコピーする

・関連記事
インターネット全転送量の3分の1はBitTorrent - GIGAZINE

BitTorrentが映画祭に正式採用 - GIGAZINE

in ソフトウェア, Posted by darkhorse_log

You can read the machine translated English article here.