(57)【要約】【課題】Ｐ２Ｐファイル共有ネットワークにおいて少ないネットワークトラフィックでファイル公開元ノードを特定する。【解決手段】接続部（２０１）が、他ノードからファイル公開元ノードのアドレスが含まれるキーを受信し、比較部（２０３）が、キーのアドレスと現在接続中のノードのアドレスを比較し、両アドレスが同一である場合には、カウンタ値を１増やし、カウンタ値が一定値に達するまで、現在接続中のノードからキーを受信する動作及びアドレスを比較する動作を繰り返し、カウンタ値が一定値に達した際に、判定部（２０５）が、現在接続中のノードが発信源であると特定し、一方、アドレスが一致しない場合は、キーに示されるアドレスを持つノードからキーを取得し、キーを書き換えたノードのみを辿る事によって、少ないネットワークトラフィックで情報の発信源を特定する。【選択図】図１
2009205373.tif 000002
【特許請求の範囲】
【請求項１】
複数のピアツーピア（Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ファイル共有ノードを含み、ファイルを公開するファイル公開元ノードの通信アドレスが含まれるキー情報がピアツーピアファイル共有ノード間を転送され、転送の過程でキー情報に含まれる通信アドレスの書き換えが生じ得るピアツーピアファイル共有ネットワークに接続する情報処理装置であって、
前記複数のピアツーピアファイル共有ノードの中からいずれかのピアツーピアファイル共有ノードを選択し、選択した選択ピアツーピアファイル共有ノードに対して、前記選択ピアツーピアファイル共有ノードが特定のファイルについて保有するキー情報の送信を要求するキー情報送信要求を生成するキー情報要求部と、
前記選択ピアツーピアファイル共有ノードに対して前記キー情報送信要求を送信するとともに、前記選択ピアツーピアファイル共有ノードから前記選択ピアツーピアファイル共有ノードが保有するキー情報を受信する通信部と、
前記通信部により受信されたキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスとを比較するアドレス比較部と、
前記アドレス比較部によりキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスが一致すると判断された場合に、前記選択ピアツーピアファイル共有ノードを前記特定のファイルのファイル公開元ノードと判定する判定部とを有することを特徴とする情報処理装置。
【請求項２】
前記通信部は、
前記アドレス比較部によりキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスが一致すると判断される度に、前記選択ピアツーピアファイル共有ノードに対して前記キー情報送信要求を送信するとともに、前記選択ピアツーピアファイル共有ノードから前記選択ピアツーピアファイル共有ノードが保有するキー情報を受信し、
前記アドレス比較部は、
カウンタを管理し、前記通信部により前記選択ピアツーピアファイル共有ノードのキー情報が受信される度に、受信されたキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスとを比較し、両通信アドレスが一致すると判断する度に前記カウンタの値をカウントアップさせ、
前記判定部は、
前記カウンタの値が閾値以上になった際に、前記選択ピアツーピアファイル共有ノードをファイル公開元ノードと判定し、前記カウンタの値が閾値未満の場合は、前記通信部による前記選択ピアツーピアファイル共有ノードに対するキー情報送信要求の送信を指示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記キー情報要求部は、
前記アドレス比較部によりキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスが一致しないと判断された場合に、前記キー情報に含まれている通信アドレスを有するピアツーピアファイル共有ノードを選択ピアツーピアファイル共有ノードとして選択することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
複数のピアツーピア（Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ファイル共有ノードを含み、ファイルを公開するファイル公開元ノードの通信アドレスが含まれるキー情報がピアツーピアファイル共有ノード間を転送され、転送の過程でキー情報に含まれる通信アドレスの書き換えが生じ得るピアツーピアファイル共有ネットワークに接続するコンピュータが行う情報処理方法であって、
前記コンピュータが、前記複数のピアツーピアファイル共有ノードの中からいずれかのピアツーピアファイル共有ノードを選択し、選択した選択ピアツーピアファイル共有ノードに対して、前記選択ピアツーピアファイル共有ノードが特定のファイルについて保有するキー情報の送信を要求するキー情報送信要求を生成するキー情報要求ステップと、
前記コンピュータが、前記選択ピアツーピアファイル共有ノードに対して前記キー情報送信要求を送信するとともに、前記選択ピアツーピアファイル共有ノードから前記選択ピアツーピアファイル共有ノードが保有するキー情報を受信する通信ステップと、
前記コンピュータが、前記通信ステップにより受信されたキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスとを比較するアドレス比較ステップと、
前記コンピュータが、前記アドレス比較ステップによりキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスが一致すると判断された場合に、前記選択ピアツーピアファイル共有ノードを前記特定のファイルのファイル公開元ノードと判定する判定ステップとを有することを特徴とする情報処理方法。
【請求項５】
複数のピアツーピア（Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ファイル共有ノードを含み、ファイルを公開するファイル公開元ノードの通信アドレスが含まれるキー情報がピアツーピアファイル共有ノード間を転送され、転送の過程でキー情報に含まれる通信アドレスの書き換えが生じ得るピアツーピアファイル共有ネットワークに接続するコンピュータに、
前記複数のピアツーピアファイル共有ノードの中からいずれかのピアツーピアファイル共有ノードを選択し、選択した選択ピアツーピアファイル共有ノードに対して、前記選択ピアツーピアファイル共有ノードが特定のファイルについて保有するキー情報の送信を要求するキー情報送信要求を生成するキー情報要求処理と、
前記選択ピアツーピアファイル共有ノードに対して前記キー情報送信要求を送信するとともに、前記選択ピアツーピアファイル共有ノードから前記選択ピアツーピアファイル共有ノードが保有するキー情報を受信する通信処理と、
前記通信処理により受信されたキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスとを比較するアドレス比較処理と、
前記アドレス比較処理によりキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスが一致すると判断された場合に、前記選択ピアツーピアファイル共有ノードを前記特定のファイルのファイル公開元ノードと判定する判定処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル共有ネットワークに接続する情報処理装置等に関する。
【背景技術】
【０００２】
ピアツーピア（Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ、以下「Ｐ２Ｐ」とも表記する）型ファイル共有アプリケーションとして現在知名度の高いものとしてＷｉｎｎｙが存在する。
Ｗｉｎｎｙでは、Ｗｉｎｎｙネットワークに参加しているＷｉｎｎｙプログラムは、自らが動作する端末上で公開しても良いとされたファイルに対して、キー情報（以下、単にキーともいう）を生成し、接続しているほかのＷｉｎｎｙプログラムに送信する。
キーには、ファイル名、ファイルのハッシュ値、ファイル公開元アドレス等が含まれている。
そして、キーを受信したＷｉｎｎｙプログラムは、キー情報を記憶すると共に、接続している他のＷｉｎｎｙプログラムへと転送する。
【０００３】
このようにＷｉｎｎｙネットワークではキー情報の転送が繰り返され、キー情報が拡散していく。
このようなＷｉｎｎｙネットワークにおいてファイルの発信元を特定するためのソフトウェアが存在する。
このファイル発信元特定ソフトウェアでは、個々のＷｉｎｎｙ動作端末に順次接続し、保有している全てのキー情報を転送要求することで、各端末が公開しているファイルの一覧を取得している。そして、このファイル発信元特定ソフトウェアは、特定のファイルの公開端末を探すために、総当りでＷｉｎｎｙ動作端末に接続する。
【０００４】
また、Ｐ２Ｐ型ネットワーク内で目的情報の所在を検索する情報探索方法として、特許文献１に記載の技術がある。
【特許文献１】特開２００４−３４１９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前述のファイル発信元特定ソフトウェアは、特定のファイルの公開端末を探す為に、総当りで各端末に接続するため、大量のネットワークトラフィックが発生し、ネットワークに負荷が掛かるという課題がある。
また、Ｗｉｎｎｙは、ある確率でキー中のファイル公開元アドレスを自分のアドレスへと書き換えてから転送をする中継機能を保有するが、この中継機能に対して考慮されていないため、単なる中継端末を公開元と誤判定する可能性があるという課題がある。
【０００６】
この発明は、上記のような課題を解決することを主な目的の一つとし、ピアツーピアファイル共有ネットワークにおいて少ないネットワークトラフィックで迅速かつ確実にファイル公開元のノードを特定することを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る情報処理装置は、
複数のピアツーピア（Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ファイル共有ノードを含み、ファイルを公開するファイル公開元ノードの通信アドレスが含まれるキー情報がピアツーピアファイル共有ノード間を転送され、転送の過程でキー情報に含まれる通信アドレスの書き換えが生じ得るピアツーピアファイル共有ネットワークに接続する情報処理装置であって、
前記複数のピアツーピアファイル共有ノードの中からいずれかのピアツーピアファイル共有ノードを選択し、選択した選択ピアツーピアファイル共有ノードに対して、前記選択ピアツーピアファイル共有ノードが特定のファイルについて保有するキー情報の送信を要求するキー情報送信要求を生成するキー情報要求部と、
前記選択ピアツーピアファイル共有ノードに対して前記キー情報送信要求を送信するとともに、前記選択ピアツーピアファイル共有ノードから前記選択ピアツーピアファイル共有ノードが保有するキー情報を受信する通信部と、
前記通信部により受信されたキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスとを比較するアドレス比較部と、
前記アドレス比較部によりキー情報に含まれる通信アドレスと前記選択ピアツーピアファイル共有ノードの通信アドレスが一致すると判断された場合に、前記選択ピアツーピアファイル共有ノードを前記特定のファイルのファイル公開元ノードと判定する判定部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、選択したノードから検索対象のファイルのキー情報を取得し、取得したキー情報に含まれる通信アドレスとキー情報の送信元のノードの通信アドレスを比較してファイル公開元のノードを判定するため、少ないネットワークトラフィックで迅速かつ確実にファイル公開元ノードを特定することができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
本実施の形態では、現在広く使用されているＰ２Ｐ型ファイル共有アプリケーションＷｉｎｎｙを元に説明する。
【００１０】
図１は、Ｐ２Ｐ型ファイルシステムの一つであるＷｉｎｎｙにおけるキー情報の拡散と書き換えを示したネットワーク図である。
Ｗｉｎｎｙでは、ノード（１０１）のネットワーク回線速度によって上流（１０１ｅ、１０１ｈ）、中流（１０１ｂ、１０１ｄ、１０１ｇ）、下流ノード（１０１ａ、１０１ｃ、１０１ｆ）に分類される。
そして、Ｗｉｎｎｙでは、ファイル公開元のノードは、公開ファイル（１０２ａ、１０２ｂ）をキャッシュファイルとすると共に、公開ファイルからファイル名、ファイルのハッシュ値、ファイル公開元アドレス等が含まれたキー（１０３、１０４）を生成する。
また、ファイル公開元のノードは、生成したキー（１０３、１０４）を上流のノードに向けて（１０１ａから１０１ｂへ、１０１ｂから１０１ｅ、１０１ｈへ、１０１ｃから１０１ｄへ、１０１ｄから１０１ｅへ）送信する。
これによりキー（１０３）は上流のノードへと拡散して行く。
そして、Ｗｉｎｎｙでは、前記拡散と同時に、ある一定の確率でキーの書き換えが行われる。例えば、キー１０４ａ及びキー１０４ｂのファイル公開元アドレスは「ノードＣ」であったが、キー１０４ｃでは書換えの結果ファイル公開元アドレスが「ノードＤ」になっている。
書き換えが起こると、送信先のノード（１０１ｅ）は、あたかもキーを書き換えたノード（１０１ｄ）にキャッシュファイルが存在するかのように処理を行う。
本実施の形態では、キーのみが拡散し、公開ファイル（キャッシュファイル）が拡散していない段階で情報（キャッシュファイル）の発信元を特定することを主な目的とする。
【００１１】
図２は、本実施の形態に係る情報処理装置（２００）の構成例を示す。
【００１２】
接続部（２０１）は、Ｗｉｎｎｙネットワーク上の他ノードへの接続を行うと共に、検索部（２０２）の指示に従い、キーを入手したり、接続先のＷｉｎｎｙノードを変更したりする。
接続部（２０１）は通信部の例である。
【００１３】
検索部（２０２）は、接続部（２０１）を介してＷｉｎｎｙネットワーク上の他ノードに対して発信源を特定したいファイルの検索を行い、ファイルに対するキーを取得する。
さらに、検索部（２０２）は、キー中のノードアドレスを元に接続先を変更するように接続部（２０１）に指示する。
検索部（２０２）は、また、いずれかのノードを選択し、選択したノード（選択ピアツーピアファイル共有ノード）にキー情報の送信を要求する情報である検索要求（キー情報送信要求）を生成し、接続部（２０１）に出力する。
検索部（２０２）は、キー情報要求部の例である。
【００１４】
比較部（２０３）は、接続部（２０１）によって接続しているノードの通信アドレス（以下、単にアドレスともいう）と、検索部（２０２）が取得したキー中のノードの通信アドレスの比較を行い、比較結果を検索部（２０２）へ引き渡す。
比較部（２０３）は、アドレス比較部の例である。
【００１５】
カウンタ（２０４）は、比較部（２０３）によって連続で同一のアドレスと判断された回数を数える。
【００１６】
判定部（２０５）は、カウンタ（２０４）の値を元に発信源（ファイルの公開元）のノードであるか否かを判断する。
具体的には判定部（２０５）は、カウンタが予め決められた値以上の値になっているか否かで発信源ノードであるか否かを判断し、発信源特定結果を出力部（２０６）に引き渡す。
【００１７】
出力部（２０６）は、判定部（２０５）から受け取った発信源特定結果を出力表示する。
【００１８】
図３は、本実施の形態に係る情報処理装置（２００）の動作例を示すフローチャート図である。
本実施の形態に係る情報処理装置（２００）は、始めにＷｉｎｎｙネットワーク上の他のＷｉｎｎｙノードに接続（Ｓ３０１）し、発信源を特定したいファイルの検索要求（クエリ）を送信する（Ｓ３０２）。
この検索要求（クエリ）は、検索部（２０２）が生成し（キー情報要求ステップ）、接続部（２０１）が対象となるノードに送信する（通信ステップ）。
【００１９】
次に、接続部（２０１）が、クエリに対するキーを受信し（通信ステップ）、検索部（２０２）が、クエリに対して適当なキーが返信されて来たか否かを判断（Ｓ３０３）し、適当なキーが返信されて来ていなければ、Ｗｉｎｎｙの本来持つ検索メカニズムを用い、（接続先のＷｉｎｎｙノードから接続を断られた場合）Ｗｉｎｎｙネットワーク上の他のＷｉｎｎｙノードへの接続（Ｓ３０１）からやり直し、（適当なキーが返信されてこなければ）暫く経った後に再度発信源を特定したいファイルの検索要求（クエリ）を送信する（Ｓ３０２）。
【００２０】
一方、適当なキーが返信されて来た場合には、比較部（２０３）がカウンタ値を０に設定し（Ｓ３０４）、キー情報を取得する（Ｓ３０５）。
比較部（２０３）は、取得したキー情報のアドレスと現在接続中のノードのアドレスが同一であるかどうかを判断し（Ｓ３０６）（アドレス比較ステップ）、両アドレスが同一である場合には、カウンタ値を１増やし（Ｓ３０７）、判定部（２０５）が、カウンタ値が一定の値に達したか否かを確認する（Ｓ３０８）。
カウンタ値が一定の値に達した場合には、判定部（２０５）は、現在の接続先のノードが発信源であると特定し（判定ステップ）、発信源を出力表示する（Ｓ３１１）。
【００２１】
一方、カウンタ値が一定の値に達していない場合には、判定部（２０５）は、検索部（２０２）に対してキー情報の取得（Ｓ３０５）の再実施を指示する。
このように、比較部（２０３）がアドレスが一致すると判断する度に、カウンタ（２０４）をカウントアップしていくとともに、カウンタ値が一定の値に達するまで、接続部（２０１）が現在接続中のノードに再度検索要求（クエリ）を送信してキーを受信する動作を繰り返す。
このようにカウンタ値が一定の値に達するまで同一ノードから繰り返しキーを取得するのは、キーの書換えを検知するためである。
つまり、ファイル公開元でないノードがキーのアドレスを自ノードのアドレスに書き換えている場合は、このようなノードから取得したキーのアドレスと当該ノードのアドレスが一致する。この場合に、一度アドレスが一致しただけで当該ノードがファイル公開元のノードであると判断すると誤検出となってしまう。一方で、キーの書換えが行われている場合でも、複数回検索要求（クエリ）を行うと、書換え前のキーが送信されてくる。このため、複数回にわたってキーのアドレスと接続先のノードのアドレスが一致すれば、そのノードは発信源のノードであると認定できる。
なお、通常は、数回繰り返して検索要求（クエリ）を行えば、書換え前のキーが送信されてくるので、カウンタ値の閾値は３〜１０程度でよい。
【００２２】
また、Ｓ３０６において、取得したキー情報のアドレスと現在接続中のノードのアドレスが異なる場合には、検索部（２０２）は、キーに示されるアドレスを持つノードを次の接続先として選択し、接続部（２０１）が当該ノードに接続し（Ｓ３０９）、発信源を特定したいファイルの検索要求（クエリ）を送信し（Ｓ３１０）、カウンタ値を０に設定する（Ｓ３０４）処理から再度行う。
【００２３】
次に、具体的な動作例を図４を用いて説明する。
始めに図４の説明を行う。
図４において、４０１〜４０５は、Ｗｉｎｎｙノードである。また、４０５は本実施の形態に係る情報処理装置を示し、以下では、発信源特定ノードという。
各ノードのアドレスは各々のアルファベットとする（例えば、ノードｏ（４０１）のアドレスは「ｏ」であり、ノードａ（４０２）のアドレスは「ａ」である）。
図４では、発信源がノードｏ（４０１）であり、ノードａ（４０２）とノードｂ（４０３）においてキーの書き換えが起こった場合を示している。
また、点線で記した箇所には、幾つかのＷｉｎｎｙノードが存在している事を示している。
発信源ノードｏ（４０１）は、公開元アドレスが「ｏ」のキー（４０７ｃ）を保有しており、ノードａ（４０２）も公開元アドレスが「ｏ」のキー（４０７ｃ）を保有している。
しかし、ノードａ（４０２）においてキーの書き換えが発生したため、ノードａ（４０２）以降のノードは公開元アドレスが「ａ」のキー（４０７ｂ）を保有している。
さらにノードｂ（４０３）においてキーの書き換えが発生し、ノードｂ（４０３）以降のノードは公開元アドレスが「ｂ」のキー（４０７ａ）を保有している。
【００２４】
図４（Ｉ）に示すように、発信源特定ノード（４０５）は、始めに他のＷｉｎｎｙノードｃ（４０４）に接続し（Ｓ３０１）、発信源を特定したいファイルの検索要求（４０６ａ）を送信（Ｓ３０２）し、応答として公開元アドレスが「ｂ」のキー（４０７ａ）をＷｉｎｎｙノードｃ（４０４）から受け取る。
発信源特定ノード（４０５）は、カウンタ値を０に設定し（Ｓ３０４）、キー情報を取得する（Ｓ３０５）。
取得したキー（４０７ａ）と現在接続中のＷｉｎｎｙノードｃ（４０４）のアドレスは異なる為、発信源特定ノード（４０５）は、図４（ＩＩ）に示すように、取得したキー（４０７ａ）に記載されたＷｉｎｎｙノードｂ（４０３）に接続して（Ｓ３０９）、発信源を特定したいファイルの検索要求（４０６ｂ）を送信し（Ｓ３１０）、応答として公開元アドレスが「ａ」のキー（４０７ｂ）を受け取る。
なお、Ｗｉｎｎｙノードｂ（４０３）からは当初は、公開元アドレスが「ｂ」のキーを受信する可能性もあるが、このような場合でも、前述したように、検索要求を繰り返しているうちに、公開元アドレスが「ａ」のキー（４０７ｂ）を受け取るようになる。
【００２５】
そして、発信源特定ノード（４０５）は、カウンタ値を０に設定し（Ｓ３０４）、キー情報を取得する（Ｓ３０５）。
取得したキー（４０７ｃ）と現在接続中のＷｉｎｎｙノードｂ（４０３）のアドレスは異なる為、発信源特定ノード（４０５）は、図４（ＩＩＩ）に示すように、取得したキー（４０７ｂ）に記載されたＷｉｎｎｙノードａ（４０２）に接続して（Ｓ３０９）、発信源を特定したいファイルの検索要求（４０６ｃ）を送信し（Ｓ３１０）、応答として公開元アドレスが「ｏ」のキー（４０７ｃ）を受け取る。
なお、Ｗｉｎｎｙノードａ（４０２）からは当初は、公開元アドレスが「ａ」のキーを受信する可能性もあるが、このような場合でも、前述したように、検索要求を繰り返しているうちに、公開元アドレスが「ｏ」のキー（４０７ｃ）を受け取るようになる。
【００２６】
さらに、発信源特定ノード（４０５）は、カウンタ値を０に設定し（Ｓ３０４）、キー情報を取得する（Ｓ３０５）。
取得したキー（４０７ｃ）と現在接続中のＷｉｎｎｙノードａ（４０２）のアドレスは異なる為、発信源特定ノード（４０５）は、図４（ＩＶ）に示すように、取得したキー（４０７ｃ）に記載されたＷｉｎｎｙノードｏ（４０１）に接続して（Ｓ３０９）、発信源を特定したいファイルの検索要求（４０６ｃ）を送信し（Ｓ３１０）、応答として公開元アドレスが「ｏ」のキー（４０７ｃ）を受け取る。
【００２７】
発信源特定ノード（４０５）は、カウンタ値を０に設定し（Ｓ３０４）、キー情報を取得する（Ｓ３０５）。
取得したキー（４０７ｃ）と現在接続中のＷｉｎｎｙノードｏ（４０１）のアドレスが同一であるので、カウンタ値を１増やし（Ｓ３０７）、カウンタ値が一定の値に達したか否かを確認する（Ｓ３０８）。
まだ、カウンタ値が一定の値に達していない為、発信源特定ノード（４０５）は、再度Ｗｉｎｎｙノードｏ（４０１）に接続して（Ｓ３０９）、発信源を特定したいファイルの検索要求（４０６ｃ）を送信し（Ｓ３１０）、応答として公開元アドレスがｏのキー（４０７ｃ）を受け取る。
【００２８】
発信源特定ノード（４０５）は、キー情報を取得し（Ｓ３０５）、取得したキー（４０７ｃ）と現在接続中のＷｉｎｎｙノードｏ（４０１）のアドレスが同一であるかを確認する（Ｓ３０８）。
本当の情報源である場合には、取得したキー（４０７ｃ）と現在接続中のＷｉｎｎｙノードｏ（４０１）のアドレスが必ず同一であるため、カウンタ値が１ずつ増加して行き、いずれはカウンタ値が一定の値に達する。
そして、発信源特定ノード（４０５）は、カウンタ値が一定の値に達した時点で、接続中のＷｉｎｎｙノードｏ（４０１）が、発信源であると特定する。
【００２９】
以上のように、Ｐ２Ｐ型ファイル共有アプリケーションにおいて、キーのみが拡散しており、公開ファイル（キャッシュファイル）がまだ拡散していない場合において、キー各端末に総当りで接続せず、中継端末（キーを書き換えた端末）のみを辿る事によって、ファイルの発信源を特定するため、少ないネットワークトラフィックで迅速にかつ確実に情報の発信源を特定することができる。
【００３０】
以上、本実施の形態では、通常のＰ２Ｐ（Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）型ファイル共有アプリケーションと同様に、Ｐ２Ｐ型ファイル共有アプリケーションが起動している他ノードに接続を行う接続部と、特定のファイルを通常のＰ２Ｐ型ファイル共有アプリケーションと同様にＰ２Ｐ型ファイル共有アプリケーションが起動している他ノードに対して検索を行い、特定のファイルのファイル名、ファイルのハッシュ値、ファイル公開元アドレス等が含まれたキーを繰り返し取得する検索部と、取得したキーに含まれるファイル公開元アドレスとキーの取得元アドレスを比較するアドレス比較部と、アドレス比較部によって実行される取得したキーに含まれるファイル公開元アドレスとキーの取得元アドレス比較結果が連続して同じである回数を数えるカウンタと、カウンタがある一定値に達したか否かによってＰ２Ｐ型ファイル共有アプリケーションによって配信されたファイルの発信源を特定する機能とを具備し、Ｐ２Ｐ型ファイル共有アプリケーションの情報発信源を特定するＰ２Ｐ型ファイル共有情報発信元特定方式及び装置について説明した。
【００３１】
最後に、本実施の形態に示した情報処理装置（２００）のハードウェア構成例について説明する。
図５は、本実施の形態に示す情報処理装置（２００）のハードウェア資源の一例を示す図である。
なお、図５の構成は、あくまでも情報処理装置（２００）のハードウェア構成の一例を示すものであり、情報処理装置（２００）のハードウェア構成は図５に記載の構成に限らず、他の構成であってもよい。
【００３２】
図５において、情報処理装置（２００）は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【００３３】
通信ボード９１５は、Ｐ２Ｐファイル共有ネットワークに接続する。例えば、通信ボード９１５は、インターネットに接続する。また、ＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（ワイドエリアネットワーク）などに接続してもよい。
【００３４】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００３５】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００３６】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
情報処理装置（２００）の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００３７】
上記プログラム群９２３には、本実施の形態の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００３８】
ファイル群９２４には、本実施の形態の説明において、「〜の判断」、「〜の検索」、「〜の比較」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、本実施の形態で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００３９】
また、本実施の形態の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、本実施の形態の「〜部」としてコンピュータを機能させるものである。あるいは、本実施の形態の「〜部」の手順や方法をコンピュータに実行させるものである。
【００４０】
このように、本実施の形態に示す情報処理装置（２００）は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【図面の簡単な説明】
【００４１】
【図１】実施の形態１に係るＰ２Ｐ型ファイル共有ネットワークの構成例を示す図。
【図２】実施の形態１に係る情報処理装置の構成例を示す図。
【図３】実施の形態１に係る情報処理装置の動作例を示すフローチャート図。
【図４】実施の形態１に係る情報処理装置の動作の具体例を示す図。
【図５】実施の形態１に係る情報処理装置のハードウェア構成例を示す図。
【符号の説明】
【００４２】
２００  情報処理装置、２０１  接続部、２０２  検索部、２０３  比較部、２０４  カウンタ、２０５  判定部、２０６  出力部。
【図１】
2009205373.tif 000003
【図２】
2009205373.tif 000004
【図３】
2009205373.tif 000005
【図４】
2009205373.tif 000006
【図５】
2009205373.tif 000007