MLDonkey
P2Pファイル共有クライアント
From Wikipedia, the free encyclopedia
歴史
MLDonkeyの開発は2001年後半に始まった。MLDonkeyの最初の開発者はINRIAのファブリス・ル・フサンである。当初はOCamlのオープンソースコミュニティにおける利用を促進する試みとして構想された[2]。
2003年1月、Slyck.comは、MLDonkey開発者と公式のOvernetであるMetaMachine開発者との間に一時的な摩擦があったと報じた。MetaMachine側は、MLDonkeyがネットワーク上で不正な動作をすることを理由に「rogue client(不正なクライアント)」として非難した[3]。
バージョン3.0以前には、ウェブインターフェースへのアクセス権を持つ攻撃者がファイルシステム上の任意のファイルを読み取れるという既知のセキュリティ脆弱性が存在していた[4]。
機能
MLDonkeyコアの機能:
- 以下のネットワークプロトコルを部分的または完全にサポートするP2Pプログラム:
- FastTrack(Kazaa)
- eDonkey(OvernetおよびKadネットワークを含む)
- BitTorrent(Mainline DHTを含む)
- Direct Connect
- HTTP / FTP
- 複数の操作インターフェース: telnet、ウェブインターフェース、サードパーティ製GUI
MLDonkeyはOCaml言語で記述され、GPLv2+ライセンスの下で提供されている。ユーザインターフェース(ウェブブラウザ、telnet、またはサードパーティ製GUIアプリケーション)と、P2Pネットワークと通信を行うコードは分離されている。
MLDonkeyは異なるネットワークプロトコルを用いた複数のピアに同時に接続できる。また、一つのファイルの異なる部分を複数のネットワークプロトコルからダウンロード・結合することも可能である[5]が、この機能は現在のところ実験的とされている。MLDonkeyはターミナルセッション上で動作し、GUI環境を必要としないため、メモリおよび処理リソースを節約できる。挙動は編集可能な設定ファイルによって制御されるか、またはよりユーザフレンドリーな方法として別途提供されるユーザインタフェースから行う。
バージョン2.9.0(2007年)以降、gnutellaおよびGnutella2のサポートは、いずれもバグが多く保守されていないため、デフォルトではコンパイルされなくなった[6]。ただし、設定ファイルで適切な設定を行うことで、これらをコンパイルに含めることは依然として可能である。
フロントエンド
- P2P-GUI(ウェブインタフェース)
- Onager(Palm OS)
- Sancho
- MuleDroid - Androidインタフェース