Gnutellaのしくみ

Jul 23 2002
ファイル共有により、何百万もの人々がインターネット上でMP3およびビデオファイルを自由に取引することができます。それは合法ですか?ファイルはどのように交換されますか?中央データベースはありますか?ファイル共有構造がどのように機能するかを調べ、レコードレーベルが訴訟を起こすのが難しい理由を確認してください。

ピーク時には、Napsterはおそらくこれまでに作成された中で最も人気のあるWebサイトでした。1年足らずで、月間ゼロから6000万人の訪問者になりました。その後、著作権侵害のために裁判所の命令により閉鎖され、合法的な音楽ダウンロードサイトとして2003年まで再開されませんでした。

オリジナルのNapsterは、巨大なデータベースからほぼ簡単に入手できるフリーミュージックというユニークな製品を提供していたため、すぐに人気を博しました。音楽を入手するためにミュージックストアに行く必要はもうありません。あなたはもはやそれを支払う必要はありませんでした。CDを頭出しして、それを録音するカセットを見つけることを心配する必要はもうありません。そして、宇宙のほぼすべての曲が利用可能でした。

違法な製品を配布していたことを考えると、元のNapsterの主な弱点は、そのアーキテクチャ、つまり作成者がシステムを設計した方法にありました。Napsterが著作権侵害を助長していると裁判所が判断したとき、裁判所の命令によりサイトを閉鎖するのは非常に簡単でした。

Napsterが著作権侵害を助長したという事実は、そのユーザーにとって重要ではありませんでした。それらのほとんどは、Gnutellaとして知られる新しいファイル共有アーキテクチャに目を向けています。この記事では、Gnutellaと古いNapsterの違いについて学びます。これにより、Gnutellaは、敵対的な法的環境にもかかわらず、今日も生き残ることができます。

新しいナップスター

Napsterは2003年に新しい親会社Roxioによってリニューアルされました。現在は合法的な有料のサイトであり、Napsterバージョン2では著作権を侵害していません。

コンテンツ
  1. ナップスターのアーキテクチャ
  2. Gnutellaのアーキテクチャ
  3. Gnutellaクライアント
  4. XoloXの例:検索
  5. XoloXの例:ダウンロード
  6. Gnutellaは合法ですか?

ナップスターのアーキテクチャ

それが正常に実装されているように、Web上で、そこにあるWebサーバ、その情報のホールド情報とプロセスの要求が(見ているWebサーバーがどのように動作するか詳細については)。 Webブラウザーを使用すると、個々のユーザーがサーバーに接続して情報を表示できます。トラフィックの多い大規模なサイトでは、ユーザーからのすべての要求をサポートするために、数百台のマシンを購入してサポートする必要がある場合があります。

Napsterは、ピアツーピアファイル共有の概念を開拓しました。古いバージョンのNapster(Napsterは2003年に合法的な有料の音楽サイトとしてリニューアルしました)では、個々の人が共有したいファイル(通常はMP3音楽ファイル)をハードディスクに保存し、他の人と直接共有していました。ユーザーは、この共有を可能にするNapsterソフトウェアを実行しました。各ユーザーマシンはミニサーバーになりました。

古いNapsterにログインして曲をダウンロードした場合、次のようになります。

  1. マシンでNapsterソフトウェアを起動しました。あなたのマシンは、他のNapsterユーザーがファイルを利用できるようにすることができる小さなサーバーになりました。
  2. あなたのマシンはNapsterの中央サーバーに接続されています。それはあなたのマシンでどのファイルが利用可能であるかを中央サーバーに伝えました。そのため、Napster中央サーバーには、その時点でNapsterに接続されていたすべてのハードディスクで利用可能なすべての共有曲の完全なリストがありました。
  3. 曲のクエリを入力しました。ポリスの「ロクサーヌ」という曲を探していたとしましょう。Napsterの中央サーバーは、その曲を保存しているすべてのマシンをリストしました。
  4. リストから曲のバージョンを選択しました。
  5. あなたのマシンは、その曲を持っているユーザーのマシンに接続し、そのマシンから直接曲をダウンロードしました。

Napsterの作成者には、このアプローチにいくつかの理由がありました。

  • Napsterは最終的に、数十億の曲を利用できるようになりました。中央サーバーがすべての曲を保持するのに十分なディスク容量、またはすべての要求を処理するのに十分な帯域幅を持つことができたはずがありません。
  • Napsterは、友人が友人と音楽を共有できるようにする著作権法の抜け穴を利用しようとしていました。Napsterの背後にある法的な概念は、「これらの人々はすべて、ハードディスク上の曲を友達と共有している」というものでした。裁判所はその論理に同意しませんでしたが、それはナップスターに概念を証明して巨大なサイズに成長するのに十分な時間を与えました。

このアプローチはうまく機能し、インターネットのアーキテクチャをうまく利用しました。Napsterは、ファイルダウンロードの負荷を数百万台のマシンに分散することで、他の方法では不可能だったであろうことを実現しました。

曲のタイトル中央データベースは、ナップスターのアキレス腱でした。裁判所がNapsterに音楽の停止を命じたとき、中央データベースがなかったため、元のNapsterネットワーク全体が停止しました。

元のNapsterがなくなったので、その時点であなたが持っていたのは、世界中の1億人の人々がますます多くのファイルを共有することを切望していたようなものでした。ギャップを埋めるために別のシステムが登場するのは時間の問題でした。

Gnutellaのアーキテクチャ

現在、ファイルを共有するための最も一般的なシステムは、GnutellaまたはGnutellaネットワークと呼ばれる別のピアツーピアネットワークです。Gnutellaと古いNapsterの間には2つの主な類似点があります。

  • ユーザーは、共有したいファイルをハードディスクに配置し、ピアツーピア方式でダウンロードできるようにします。
  • ユーザーはGnutellaソフトウェアを実行してGnutellaネットワークに接続します。

Gnutellaと古いNapsterの間にも2つの大きな違いがあります。

  • Gnutellaネットワークで利用可能なすべてのファイルを知っている中央データベースはありません。代わりに、ネットワーク上のすべてのマシンは、分散クエリアプローチを使用して、使用可能なファイルについて相互に通知します。
  • あり、さまざまなクライアントアプリケーションGnutellaネットワークにアクセスするために利用できるが。

これらの両方の機能のために、単純な裁判所命令でGnutellaをシャットダウンすることは困難です。裁判所は、ISPおよびインターネットのバックボーンレベルですべてのGnutellaネットワークトラフィックをブロックして、人々が共有するのを防ぐ方法を見つける必要があります。

Gnutellaクライアント

オリジナルのNapsterには、1つの「クライアントソフトウェア」がありました。これは、ユーザーがNapsterサーバーにアクセスするために自分のマシンで実行したソフトウェアです。Gnutellaには数十のクライアントがあります。人気のあるGnutellaクライアントには次のものがあります。

  • BearShare
  • LimeWire
  • モーフィアス
  • WinMX
  • XoloX

Gnutellaクライアントが曲を見つける方法

利用可能なすべてのファイルの名前と場所を保存する中央サーバーがない場合、自分のマシンのGnutellaソフトウェアは、他の人のマシンで曲をどのように見つけますか?プロセスは次のようになります。

  • 検索する曲またはファイルの名前を入力します。
  • あなたのマシンは、ネットワーク上のどこかに少なくとも1台の他のGnutellaマシンを認識しています。IPアドレスを入力してマシンの場所を伝えたか、ソフトウェアに事前にプログラムされたGnutellaホストのIPアドレスがあるため、これがわかります。マシンは、入力した曲名をGnutellaに送信します。知っているマシン。
  • これらのマシンは、要求されたファイルがローカルハードディスクにあるかどうかを検索します。その場合、ファイル名(およびマシンのIPアドレス)をリクエスターに送り返します。
  • 同時に、これらのマシンはすべて、接続されているマシンに同じ要求を送信し、プロセスが繰り返されます。
  • リクエストにはTTL存続時間)制限が設定されています。リクエストは、伝播を停止する前に6レベルまたは7レベル深く送信される場合があります。Gnutellaネットワーク上の各マシンが他の4つのマシンだけを知っている場合、それが7レベルの深さで伝播する場合、リクエストはGnutellaネットワーク上の8,000程度の他のマシンに到達する可能性があることを意味します。

これは、クエリを数千台のマシンに非常に迅速に配布するための非常にシンプルで賢い方法です。

このアプローチには1つの大きな利点があります-Gnutellaは常に機能します。Gnutellaソフトウェアを実行している他の少なくとも1台のマシンにアクセスできる限り、ネットワークにクエリを実行できます。すべてを制御するマシンは1つもないため、裁判所の命令によってこのシステムがシャットダウンされることはありません。ただし、Gnutellaには少なくとも3つの欠点があります。

  • 必要なファイルが、到達可能な8,000台のマシンのいずれかにあるという保証はありません。
  • ファイルのクエリは、完全な応答を取得するのに時間がかかる場合があります。7レベルの深さのすべての応答が届くまで、1分以上かかる場合があります。
  • あなたのマシンはこのネットワークの一部です。リクエストに応答してそれらを渡し、その過程でレスポンスをルーティングします。他のすべてのユーザーからの要求を処理するために、帯域幅の一部を放棄します。

どうやら、人々がGnutellaクライアントの何億ものコピーをダウンロードしたので、これらの不利な点は軽微です。

XoloXの例:検索

XoloXは、Gnutellaネットワークに接続するための典型的なかなり単純なプログラムです。より洗練されたクライアントの鐘や笛の一部はありませんが、機能します。ダウンロードする小さなファイル(600キロバイト程度)であり、「スパイウェア」やバンドルされたポップアップ広告が混在していません。それを使用すると、インストールと使用が非常に簡単です。その単純さは、典型的なGnutellaクライアントがどのように機能するかを示すのに役立ちます。

XoloXでできることは、ファイルの検索、マシンへのファイルの転送、ダウンロードしたファイルの確認の3つです。XoloXウィンドウの上部には、これら3つのアクティビティを切り替えることができる3つのボタンがあります。

上の図は、検索中の典型的なスクリーンショットを示しています。探しているファイルの名前(またはキーワード)を入力するだけです。ファイルタイプを選択することもできます:オーディオ、ビデオなど、または「すべてのタイプ」。XoloXクライアントは、検索文字列を含むメッセージを送信し、30〜60秒の間に、クエリを処理している他の何千ものマシンからの結果で検索ウィンドウがいっぱいになります。

検索ウィンドウで気付くのはスコアです。スコアは、同じファイルが使用可能な現在オンラインのマシンの数を表します。スコアの高いファイルを選択することで、実際に必要なファイルを取得できる可能性が高くなります。

XoloXの例:ダウンロード

ファイルをダウンロードするには、検索ウィンドウでファイルをダブルクリックするだけです。これにより、ファイル名が転送ウィンドウに送信されます。ファイル名が転送ウィンドウに表示されると、XoloXのコピーがピアマシンに接続してファイルをダウンロードします。 XoloX / Gnutellaの優れた点の1つは、複数のマシンでファイルを使用できる場合、クライアントがそれらの複数のマシンに同時に接続して、ファイルを非常にすばやくダウンロードできることです。次の図では、特にFilename1.aviがこの機能を利用して、毎秒69.2キロバイトの速度でファイルをダウンロードしていることがわかります。 XoloXは、100メガバイトを超えるダウンロードを完了するのに43分かかると見積もっています。

ダウンロードするファイルを選択するとき、何も起こらないことはかなり一般的です。つまり、XoloXはファイルを保持しているマシンに接続できないか、ファイルを保持しているマシンがすでに他の人を助けるために忙しいです。この問題は、待機する(最終的にはビジー状態のマシンがビジー状態になる可能性がある)か、スコアの高いファイルを選択する(ビジー状態でないマシンを見つける可能性を高める)か、転送ウィンドウからどこにも行かないファイルを削除して置き換えることで解決できます。検索ウィンドウからの同一のファイルでそれ。

マシンにファイルを配置すると、XoloXディレクトリとXoloXの[ファイル]ウィンドウでファイルを見つけることができます。ダウンロードしたすべてのファイルは、必要に応じて他の人と共有できます。これを行うには、最初に[設定]ダイアログで共有するディレクトリとファイルタイプを指定します。

また、ユーザーがあなたからファイルをダウンロードするときにXoloXが消費できる発信帯域幅を制御することもできます。

これにより、人々がアップストリーム帯域幅をすべて噛み砕くのを防ぐことができます。

Gnutellaは合法ですか?

Gnutella自体は合法です。パブリックドメインファイルの共有を禁止する法律はありません。人々がGnutellaを使用して著作権で保護された音楽や映画を配布するとき、その使用は違法になります。これがNapsterを困らせた問題です。音楽業界は公式にGnutellaに腹を立てていますが、現在それを制御する簡単な方法はありません。

Gnutellaアーキテクチャを攻撃することは、ファイル共有アクティビティを妨害する1つの方法です。現在使用されているアプローチは2つあります。

  1. 偽の検索パケットの洪水でGnutellaネットワークをオーバーロードします。
  2. Gnutellaサーバーを破損したファイルで埋める。

Gnutellaの多くの開発者は過去に問題に適応してきたため、新しいソフトウェアがこれらの脅威を回避し、ファイルの流れを維持できる可能性があります。

現在の議論は、ファイル共有が実際にどれだけの経済的損害を引き起こすかということです。共有ファイルは盗難ですか、それともラジオの放送時間と同じように無料の広告と露出の形式ですか?

著作権で保護された音楽の共有の合法性に関するいくつかの異なる見方を含む、ファイル共有および関連トピックの詳細については、次のページのリンクを確認してください。

多くの詳細情報

関連記事

  • MP3ファイルのしくみ
  • MP3プレーヤーのしくみ
  • ナップスターのしくみ
  • Webサーバーのしくみ
  • ハードディスクのしくみ
  • CDバーナーのしくみ
  • インターネットインフラストラクチャの仕組み
  • ホームネットワークのしくみ
  • 著作権と特許とは何ですか?

その他のすばらしいリンク

  • Gnutellaホストディレクトリ
  • カザー
  • KnowbuddyのGnutellaFAQ
  • Gnutellaニュース
  • PHPGnutella検索コード
  • インターネットの大失敗-別の見方
  • Embedded.com:ピアツーピアの埋め込み

ニュース

  • MTV.com:録音業界が違法なファイル共有で32人の学生を訴える-10/04
  • RIAAが提起した違法なファイル共有訴訟の新しい波-4/04
  • トムのハードウェアガイド:調査:減少する音楽ファイル共有-4/04
  • WiredNews:RoxioがPressplayを購入、NapsterLives -5 / 03
  • NewScientist.com:「ランダムウォーカー」がピアツーピアネットワークを高速化する可能性がある-7/02
  • Gnutella.com:個人への法的攻撃を計画しているラベル?-7/02
  • Gnutella.com:ハリウッドは「アナログホール」を埋めたい-5/02
  • P2P.com:グヌーテラとのFreenetは、真の技術革新を表現- 5/00