(57)【要約】【課題】通信量を増大させることなくコンテンツの削除・更新を効率的に実行することのできる技術を提供する。【解決手段】ネットワークを介して互いに接続された複数のノード２間で、共有するコンテンツの削除あるいは更新を行うプログラムにおいて、コンテンツを所有する所有ノードを示す所有ノード情報に基づき、コンテンツを所有するノードに対してコンテンツの削除あるいは更新を実行させる旨の削除更新命令を送信する。削除更新命令に対して応答しなかった非応答ノードがあるときは、削除更新命令に対して応答のあった応答ノードに対し、非応答ノードを示す非応答ノード情報を送信する。【選択図】図２
2010113523.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して互いに接続された複数のノード間で、共有するコンテンツの削除あるいは更新を行うプログラムであって、
前記コンテンツを所有する所有ノードを示す所有ノード情報に基づき、該コンテンツを所有するノードに対してコンテンツの削除あるいは更新を実行させる旨の削除更新命令を送信し、
前記削除更新命令に対して応答しなかった非応答ノードがあるときは、該削除更新命令に対して応答のあった応答ノードに対し、該非応答ノードを示す非応答ノード情報を送信する
処理をコンピュータに実行させることを特徴とするプログラム。
【請求項２】
ネットワークを介して互いに接続された複数のノード間で、共有するコンテンツの削除あるいは更新を行うプログラムであって、
前記コンテンツを所有するノードを示す所有ノード情報を保有する管理ノードから、該コンテンツの削除あるいは更新を行う旨の削除更新命令を受信すると、該削除更新命令に応じてコンテンツの削除あるいは更新を行うと共に、該管理ノードに対して応答を送信し、
前記管理ノードから前記削除更新命令に対する応答を返さなかった非応答ノードを示す非応答ノード情報を受信して、該非応答ノード情報を格納手段に格納し、
前記非応答ノードからアクセスがあったことを認識すると、前記格納手段に格納した非応答ノード情報に基づき、アクセスしてきた非応答ノードに対して前記削除更新命令を送信する
処理をコンピュータに実行させることを特徴とするプログラム。
【請求項３】
前記命令を送信したノード数に対する前記応答のあったノード数の割合が所定の閾値以上であるか否かを判定し、
前記割合が前記閾値未満であると判定された場合には、所定の期間の経過後に、前記非応答ノードに対して、前記削除更新命令を再送し、
前記割合が前記閾値以上であると判定された場合には、前記非応答ノード情報の送信処理を実行する
ことを特徴とする請求項１記載のプログラム。
【請求項４】
前記非応答ノードが前記応答ノードからの削除更新命令に対して応答した旨の通知を該応答ノードから受信すると、前記前記非応答ノード情報から該非応答ノードを削除し、
前記応答ノードに対して、前記更新された非応答ノード情報を送信する
処理を更にコンピュータに実行させることを特徴とする請求項１記載のプログラム。
【請求項５】
前記削除更新命令を送信した前記非応答ノードから応答があった場合には、前記格納手段に格納されている前記非応答ノード情報から該非応答ノードを削除し、
前記管理ノードに対して、前記非応答ノードから応答を受信した旨の通知を送信する
ことを特徴とする請求項２記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク内の複数のノード間でコンテンツを共有するシステムにおいて、コンテンツの削除や更新を行う技術に関し、特に、ピアツーピア（peer-to-peer、Ｐ２Ｐ）システムにおいてコンテンツの削除や更新を行う技術に関する。
【背景技術】
【０００２】
近年、コンテンツ配信サービスが広く普及してきており、それらのサービスの多くは、クライアントから要求を受けたサーバが、クライアントに対して配信を行う仕組で実現されている。この方式では、クライアント（ユーザ）が増えるにしたがって、サーバの負荷が高くなるという問題がある。このような問題については、利用者ノード間でデータ交換を行うＰ２Ｐ型の配信サービスの利用が有効である。Ｐ２Ｐ型配信サービスの例としては、例えば、ビットトレント（BitTorrent）等がある。従来におけるビットトレントを利用したＰ２Ｐ型配信システムの構成を図３２に示す。
【０００３】
図３２に示すように、例えばビットトレントでは、ネットワーク上の１つのノードに対して、ノードを管理する役割を与える。ノードの管理を行うノードを、管理ノードとする。ネットワーク内のあるノードは、図３２に示す（１）から（３）の手順により、コンテンツを取得する。
【０００４】
すなわち、（１）ノードＥは、コンテンツＡの管理ノードに対してアクセスをし、コンテンツの全体もしくは一部を持つノードの情報を管理ノードから受信する。（２）管理ノードは、要求してきたノード（ノードＥ）を示す情報をノード情報に追加しておく。（３）ノードＥは、受信した情報に基づいて別の（コンテンツを保有する）ノードＡあるいはノードＤにアクセスし、コンテンツを受信する。
【０００５】
ここで、コンテンツの提供者が、一度配信したコンテンツを削除したくなったり、更新したくなったりする場合がある。このような場合に、サーバから一括でコンテンツの配信を行うシステムにおいては、サーバ側でコンテンツの削除や更新をすることで、それ以降に削除済のコンテンツが配信されたり、古いバージョンのコンテンツが配信されたりすることはない。しかし、Ｐ２Ｐ方式のシステムにおいては、ノード間でコンテンツの送受が行われるため、サーバ側で更新等を行っても、それ以降にも削除済のコンテンツや古いバージョンのコンテンツの配信が行われる可能性がある。
【０００６】
この他、コンテンツを受信したノードが保有するコンテンツについても削除や更新をして、元のコンテンツを利用しないようにしたい場合もある。
ファイルの共有に関する公知の技術として、例えば、ネットワーク内でファイルサーバのファイルを共有している場合に、ノードは、自マシンにファイルがキャッシングされていなければ、ファイルサーバに対してアクセス要求を出すことにより、ネットワークへのアクセス回数や転送データ量を減らすことのできる技術について提供されている（例えば、特許文献１）。
【特許文献１】特開平５−２７４２１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
Ｐ２Ｐ方式のシステムにおいて、ネットワーク内のノードに対してもコンテンツの削除や更新を反映させる方法の１つとして、例えば、図３３に示す方法が考えられる。すなわち、管理ノードは、コンテンツＡを所有するノードの情報にしたがって、各ノードに対し
て削除命令／更新命令を送信する。管理ノードから削除命令等が送信されたときに電源がオフ状態のノードが存在する場合には、管理ノードは、そのノード（図３３の例ではノードＤ）から応答を得るまで、定期的に削除命令等を送信する。
【０００８】
しかし、図３３の方法では、ネットワーク内のノード数が増大した場合、電源がオフ状態のノードの数も増えることとなり、管理ノードから電源オフ状態のノードに定期的に送信される命令により、通信量が多くなるという問題が予想される。
【０００９】
他の方法としては、例えば、図３４に示すように、ノードが電源オフ状態からオン状態に切り替わったときに、個々のノードが管理ノードに対してその旨通知をする方法が考えられる。このような方法では、各ノードは、通信が可能になる度に管理ノードと通信を行う必要が生じる。また、管理ノードが複数あった場合には、更に通信量が増大するという問題がある。
【００１０】
すなわち、図３４に示す例では、コンテンツの削除や更新が未実施であるか否かに関わらず、システム内のノードＡ〜Ｅは、電源がオフ状態からオン状態に切り替わった場合には、各ノードの保有するコンテンツの管理ノードに対して通知が必要となる。また、ノードＤは、保有するコンテンツＡ及びＢの管理ノードのそれぞれに対して電源オン状態の通知を行う必要がある。これにより、通信量が多くなる。
【００１１】
更には、上記の方法では、管理ノードは常に通信可能な状態にある必要がある。図３３に示す方法では、管理ノードは定期的に削除命令等を送信する必要があり、図３４に示す方法では、ノードの電源がオン状態に切り替えられたことの通知を受ける必要があるためである。
【００１２】
しかし、Ｐ２Ｐ方式のシステムでは、固定のサーバがあるわけではなく、どのノードも管理ノードになる可能性がある。このため、管理ノードについても通信不可の状態になり得ることを想定しておくことが望ましい。
【００１３】
そこで、管理ノードについても電源をオフにすることができるようにするために、図３５に示すように、管理ノードからコンテンツを保有するノードに対してコンテンツの削除等に必要な情報を送信しておく方法も考えられる。
【００１４】
具体的には、図３５に示すように、コンテンツＡの管理ノードからコンテンツＡの削除等の要求があったときに電源オフ状態であったノード（ノードＤ）が存在する場合には、管理ノードは、コンテンツＡを保有するノードのうちあるノード（ノードＡ）を管理ノードに代理して動作させる。ノードＡは、ノードＤに対して削除命令等を送信する。
【００１５】
しかし、図３５に示す方法では、ノードＤは、管理ノードを代理するノードがいずれのノードであるかを認識することはできない。このため、ノードＡは、例えば定期的にノードＤに対して通知を行う必要がある。
【００１６】
上記の課題に鑑みて、開示のコンテンツ削除更新プログラムは、不定数のコンテンツが流通するＰ２Ｐシステムにおいて、システムを構成する複数のノードが保有するコンテンツを削除・更新する場合に、管理ノードから通知があったときに電源がオフ状態であったノードについても、通信量を増大させることなくコンテンツの削除・更新を効率的に実行することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【００１７】
開示のコンテンツ削除更新プログラムによれば、ネットワークを介して互いに接続され
た複数のノード間で、共有するコンテンツの削除あるいは更新を行うプログラムであって、前記コンテンツを所有する所有ノードを示す所有ノード情報に基づき、該コンテンツを所有するノードに対してコンテンツの削除あるいは更新を実行させる旨の削除更新命令を送信し、前記削除更新命令に対して応答しなかった非応答ノードがあるときは、該削除更新命令に対して応答のあった応答ノードに対し、該非応答ノードを示す非応答ノード情報を送信する処理をコンピュータに実行させる。
【００１８】
コンテンツの所有ノード情報を保有するノードにおいて、コンテンツの所有ノードに対して削除命令を送信し、応答のないノードがあるときは、その応答のないノードを示す情報（非応答ノード情報）を応答のあったノードに対して送信する。非応答ノード情報を受信したノードにおいては、受信した情報に基づき、応答しなかったノードからのアクセスがあった場合に、削除更新命令を送信して、コンテンツの削除・更新を実施させることができる。
【００１９】
あるいは、開示のコンテンツ削除更新プログラムによれば、ネットワークを介して互いに接続された複数のノード間で、共有するコンテンツの削除あるいは更新を行うプログラムであって、前記コンテンツを所有するノードを示す所有ノード情報を保有する管理ノードから、該コンテンツの削除あるいは更新を行う旨の削除更新命令を受信すると、該削除更新命令に応じてコンテンツの削除あるいは更新を行うと共に、該管理ノードに対して応答を送信し、前記管理ノードから前記削除更新命令に対する応答を返さなかった非応答ノードを示す非応答ノード情報を受信して、該非応答ノード情報を格納手段に格納し、前記非応答ノードからアクセスがあったことを認識すると、前記格納手段に格納した非応答ノード情報に基づき、アクセスしてきた非応答ノードに対して前記削除更新命令を送信する処理をコンピュータに実行させる。
【００２０】
コンテンツの所有ノード情報を保有する管理ノードから非応答ノード情報を受信したノードは、受信した非応答ノード情報が示すノードからアクセスがあった場合には、アクセスしてきたノードに対して削除更新命令を送信し、コンテンツの削除・更新を実施させることができる。
【発明の効果】
【００２１】
開示のコンテンツ削除更新プログラムによれば、コンテンツの管理ノードからの削除命令・更新命令に対して削除・更新がなされなかったノードが存在する場合には、管理ノードは、コンテンツを保有する他のノードに対して削除命令・更新命令の送信を委託する。コンテンツの削除・更新のなされていないノードが、管理ノードから委託を受けたノードにアクセスしてきた場合には、アクセスされたノードから削除命令・更新命令を送信してコンテンツの削除・更新を行わせる。これにより、コンテンツの削除・更新のために通信を増大させることなく、効率的にコンテンツの削除・更新を行うことが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の好適な実施の形態について、図面を参照して詳細に説明する。
図１は、開示のＰ２Ｐシステムの構成図である。開示のＰ２Ｐシステム１は、ビットトレント等を利用しており、複数のノード２が互いにインターネット等のネットワークを介して接続されている。各ノード２は、他のノード２とコンテンツを送受することにより、ノード２間でコンテンツを共有する。
【００２３】
管理ノード３及びノード２は、ＣＰＵ（Central Processing Unit）やメモリ、ＨＤＤ（Hard Disk Drive）などのストレージ、ネットワークインタフェースを持つ通常のＰＣ（Personal Computer、パーソナルコンピュータ）である。管理ノード３及びノード２は、ＰＣに限らず、ネットワークに接続可能な家電機器であってもよい。
【００２４】
ビットトレント等を利用するＰ２Ｐシステム１においては、ノード２間で共有されるコンテンツごとに管理ノード３が存在する。複数のノード２のうちの１台のノード２がコンテンツの管理ノード３として動作し、管理ノード３は、コンテンツを持つノード２を記述した情報を保有する。コンテンツを持つノード２を記述した情報を、「所有ノード情報」とする。コンテンツごとに管理ノード３が存在し、そのコンテンツについての所有ノード情報を保有する。
【００２５】
図１では、あるコンテンツについての管理ノード３と、そのコンテンツを保有するノードのうちの１台のノード２についての構成を示す。
管理ノード３は、ネットワーク送受信部３１、削除・更新要求部３２、格納部３３及び削除・更新状況管理部３４を有する。
【００２６】
管理ノード３のネットワーク送受信部３１は、ネットワークを介してノード２と各種情報の送受信を行う。削除・更新要求部３２は、ネットワーク送受信部３１を介してノード２に対してコンテンツの削除要求や更新要求を出す。
【００２７】
格納部３３は、コンテンツの削除等に関わる情報を格納する。具体的には、コンテンツの所有ノード情報３５及び非削除・更新ノード情報３６を格納する。
削除・更新状況管理部３４は、格納部３３に格納されている情報に基づき、ノード２におけるコンテンツの削除・更新状況を管理する。
【００２８】
ノード２は、ネットワーク送受信部２１、削除・更新実施部２２、削除・更新要求部２３、格納部２４及び削除・更新状況管理部２５を有する。
ネットワーク送受信部２１は、ネットワークを介して管理ノード３と各種情報の送受信を行う。削除・更新実施部２２は、ネットワーク送受信部２１を介して管理ノード３から削除要求や更新要求を受信した場合に、要求にしたがってコンテンツを削除・更新する処理を実施する。
【００２９】
削除・更新要求部２３は、コンテンツを共有する他のノード２であって、管理ノード３からの要求に応じてコンテンツの削除等をまだ実施していないノード２に対して、コンテンツを削除・更新するよう削除要求や更新要求を出す。
【００３０】
格納部２４は、コンテンツ２８及びコンテンツの削除等に関わる情報を格納し、具体的には、コンテンツ２８、代理管理ノード情報２６及び非削除・更新ノード情報２７を含む。なお、ノード２の格納部２４に格納されている代理管理ノード情報２６については、後述する。
【００３１】
削除・更新状況管理部２５は、格納部２４に格納されている情報に基づき、管理ノード３から削除・更新するよう要求されたコンテンツについての自装置以外のノード２におけるコンテンツの削除・更新状況を管理する。具体的には、上記のとおり、管理ノード３からの要求に応じてコンテンツの削除・更新がなされていないノード２について、コンテンツの削除・更新状況を管理する。
【００３２】
以下、図１に示す管理ノード３及びノード３を含むＰ２Ｐシステムにおいて、ノード３間で共有するコンテンツの削除・更新を実施する方法について、具体的に説明する。
＜第１の実施形態＞
図２は、本実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。ここでは、６台のノード２（２Ａ〜２Ｆ）がインターネットを介して相互に接続されている場合を例に説明する。以下においては、各ノードを区別して説明する必要がある場合にはＡ
〜Ｆの符号を付し、他の場合にはＡ〜Ｆの符号を省略することとする。
【００３３】
上記のとおり、ノード２は、ＰＣやネットワークに接続可能な機器等からなる。
ネットワークインタフェースは、ネットワークに接続され、図２で示すようにインターネットに接続される。なお、ネットワークからインターネットへの接続については、通常の家庭でインターネットを利用するときと同様に、ＡＤＳＬ（Asymmetric Digital Subscriber Line）モデム等をとおして接続すればよい。インターネット上には、図２で示すように複数のノードが接続されている。サーバ・クライアント方式とは異なり、Ｐ２Ｐと呼ばれる分野では、あるノードがコンテンツを受信する側にも配信する側にもなるというのが通常である。また、さらにあるノードがあるコンテンツの管理ノードにもなりうる。説明の便宜上、コンテンツを所有している（配信する）ノードを所有ノードと記述する。
【００３４】
本実施形態においては、ノードが所有ノードからコンテンツを受信する際に、どのノードがコンテンツを持っているかどうかをノードは知るために、ノードは管理ノードにまずアクセスする。なお、管理ノードのアドレスについては、たとえば、ウェブブラウザをとおして、管理ノードの一覧を管理しているウェブサイトから得る方法などを使用して取得すれば良い。
【００３５】
管理ノード３は、例えば、ノード２からの要求に応じて、図３に示すような所有ノードの情報を提供する。図３（ａ）は、管理ノード３において保有する所有ノード情報３５のデータ構造の例である。管理ノード３は、保有する所有ノード情報３５に基づき、ノード２に対して図３（ｂ）に示すフォーマットのデータを提供する。
【００３６】
図３（ｂ）に示すように、「node」タグの「ip属性」で記述されたＩＰ（Internet Protocol）アドレスを持つノードが、「nodes属性」の「contentid属性」で示されたＩＤ（IDentification）で識別されるコンテンツの所有ノードであることを示している。したがって、図３に記述された３つのノードのうちの１つにアクセスすれば、コンテンツＩＤ＝０００００００１により識別されるコンテンツを取得できることがわかる。
【００３７】
なお、ここでは、ノードを識別する方法としてＩＰアドレスを使用したが、他の方法により識別しても良い。たとえば、ＤＤＮＳ（Dynamic DNS（Domain Name System））の仕組みを利用し、ＩＰアドレスに動的にドメイン名を割り当てることができる。そして、ＩＰアドレスの代わりにこのドメイン名を記述することで、どのノードがあるコンテンツの所有ノードであるかを示すことができ、またそのドメイン名を基にしてアクセスすることが可能である。
【００３８】
ノード２は、管理ノード３から図３（ｂ）に示すフォーマットのデータを受信すると、受信データに基づき、自装置に所有ノード情報を格納する。ノード２が保有する所有ノード情報は、例えば、管理ノード３において保有するそれと同様に、図３（ａ）に示すデータ構造を備え、コンテンツＩＤとコンテンツＩＤにより識別されるコンテンツを保有するノードのＩＰアドレス及びポート番号とが対応付けられている。
【００３９】
ノード２は、図３（ｂ）に示す所有ノード情報に基づいて所有ノードにアクセスすることより、所望のコンテンツを受信することができる。また、管理ノード３は、アクセスしてきたノード２については所望のコンテンツを受信したと判断し、管理ノード３が保有する所有ノード情報３５に、そのノードを示す情報を記述する。
【００４０】
上述のコンテンツの配信システムにおける本実施形態に係るコンテンツの削除等を行う方法について、以下に説明する。
例えば、コンテンツ１の提供者等のユーザによりコンテンツの削除あるいは更新を行う
旨の指示が入力された場合における、管理ノード及びコンテンツを保有するノードの動作手順を説明する。なお、以下の説明中の（手順１）〜（手順６）は、図２の（１）〜（６）とそれぞれ対応する。
【００４１】
図２に示す構成例では、ノード２Ｆが、コンテンツ１についての管理ノード３である。上記のとおり、管理ノード３（ノード２Ｆ）は、図３（ａ）に示す所有ノード情報３５、すなわち、コンテンツ１を保有するノード２を示す所有ノード情報３５を保有している。      
【００４２】
（手順１）まず、コンテンツ１の管理ノード３は、コンテンツ１の所有ノード情報３５に基づき、各ノード２Ａ、２Ｄ、２Ｅに対して削除要求あるいは更新要求を送信する。図４は、削除要求及び更新要求の例である。削除要求は、コンテンツを識別するコンテンツＩＤを指定して、要求を受信したノード２に対して、指定されたコンテンツを削除するよう命令する。更新要求は、コンテンツＩＤ及びコンテンツのバージョンを指定して、要求を受信したノード２に対して、指定されたコンテンツを指定されたバージョンに更新するよう命令する。
【００４３】
（手順２）管理ノード３からの要求を受信したノード２Ａ、２Ｅは、管理ノード３に応答を返すとともに、受信した要求に応じてコンテンツ１の削除等を行う。削除要求を受信した場合には、ノード２Ａ、２Ｅは、指定されたコンテンツを削除する。更新要求を受信した場合には、ノード２Ａ、２Ｅは、指定されたコンテンツをアップデートするために、コンテンツ取得のため、管理ノード３にアクセスする。これに対し、ノード２Ｄは、管理ノード３から削除要求等が送信されたときには電源がオフ状態であり、要求を受信していない。このため、ノード２Ｄにおいては、管理ノード３への応答の送信やコンテンツ１の削除等は実行されない。
【００４４】
（手順３）管理ノード３は、（手順１）で送信した削除要求等に対する応答を各ノード２Ａ、２Ｅから受信する。受信した応答に基づき、応答のなかったノードを示す情報を作成する。非応答のノードを示す情報を、「非削除・更新ノード情報」とする。
図５（ａ）は、管理ノード３において作成する非削除・更新ノード情報３６のデータ構造の例であり、図５（ｂ）は、ノード２に送信される非削除・更新ノード情報の通信データのフォーマット例である。図５に示すように、「nodeタグ」の「ip属性」で識別されるノードが削除できていないノードを意味している。図に示す例では、コンテンツＩＤ＝０００００００１のコンテンツについての削除要求に対し、ＩＰアドレス「１９２．１６８．１．４」、ポート番号「１００００」のノード２Ｄについては、削除要求により削除できていないことを表している。
ノード２Ａ、２Ｅは、受信したデータに基づき、コンテンツＩＤとノード２を識別するノード情報（実施例ではＩＰアドレス及びポート番号）とを対応付け、非削除・更新ノード情報２７として自装置の記憶手段に記憶させる。
【００４５】
（手順４）ノード２Ｄの電源が、オフ状態からオン状態に切り替わる。
（手順５）ノード２Ｄは、電源がオン状態に切り替わった後に、ネットワーク内の他のノード２、図２の例ではノード２Ｅにアクセスする。ここでの他のノード２へのアクセスとは、例えば、コンテンツ２のダウンロード等のためにネットワーク内の他のノードにアクセスすることをいう。
【００４６】
（手順６）他のノードからアクセスのあったノード２Ｅは、保有する非削除・更新ノード情報２７を参照する。上記のとおり、非削除・更新ノード情報２７においては、アクセスしてきたノード２Ｄを示すＩＰアドレス及びポート番号が、コンテンツ１を示すコンテンツＩＤと対応付けて格納されている。これにより、ノード２Ｅは、ノード２Ｄにおいてコンテンツ１の削除等を実施する必要があると判断し、ノード２Ｄに対してコンテンツ１の削除等の要求を送信する。このとき、ノード２Ｅは、保有する非削除・更新ノード情報２７からノード２Ｄを示す情報を削除する構成としてもよい。
【００４７】
なお、ノード２Ｅからノード２Ｄに送信される要求は、管理ノード３から各ノード２に送信される要求と同様の通信内容を使用できる。ノード２Ｄは、ノード２Ｅ受信した要求にしたがって、コンテンツ１の削除等を実施する。
【００４８】
図６は、管理ノード３におけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
まず、ステップＳ１で、コンテンツ提供者等のユーザがコンテンツを削除・更新する旨の決定をしてその旨の指示が入力されると、ステップＳ２で、管理ノード３は、コンテンツの所有ノード情報３５を取得する。そして、ステップＳ３で、コンテンツ所有ノード情報３５が示すノード２に対して、コンテンツの削除・更新命令を送信する。
【００４９】
ステップＳ４で、各ノード２からの応答を受信すると、ステップＳ５で、応答を返したノード２（ノードＡ、Ｂ）に対して、応答を返さなかったノード（ノードＣ、Ｄ）を示す非削除・更新ノード情報を送信し、処理を終了する。
【００５０】
なお、ステップＳ５の非削除・更新ノード情報を送信する処理については、全てのノードが応答を返した場合、すなわち、応答を返さなかったノードが存在しない場合には、送信を行わない構成としてもよいし、空の情報を送信する構成としてもよい。
【００５１】
図７及び図８は、ノード２における処理を示したフローチャートである。このうち、図７は、ノード２においてコンテンツの削除等を実施する処理を示したフローチャートである。
【００５２】
まず、図７のステップＳ１１で、管理ノード３からコンテンツの削除要求等を受信すると、ステップＳ１２で、受信した要求にしたがって、コンテンツの削除等を実施する。ステップＳ１３で、管理ノード３に対して応答を返し、コンテンツの削除等を実施したことを管理ノード３に通知する。ステップＳ１４で、管理ノード３から非削除・更新ノード情報を受信して自装置に記憶させ、処理を終了する。
【００５３】
図８は、ノード２における他のノード２からのアクセスに対して実行する処理を示したフローチャートである。
ステップＳ２１で、他のノード２からのアクセスがあると、ステップＳ２２で、非削除・更新ノード情報２７を参照して、アクセス元のノード２を示す情報が載っているかを確認する。
【００５４】
ステップＳ２３で、アクセスしてきたノード２は、コンテンツの削除等がなされていないノード（非削除・更新ノードとする）であるか否かを判定する。非削除・更新ノードでない場合は、ステップＳ２４に進み、アクセスしてきたノード２に対して応答し、ステップＳ２１に戻る。
【００５５】
ステップＳ２３において、アクセスしてきたノード２が非削除・更新ノードであると判定された場合は、ステップＳ２５に進む。そして、アクセスしてきたノード２に対して削除命令等を送信し、ステップＳ２６で保有する非削除・更新ノード情報２７からアクセスしてきたノード２を示す情報を削除し、ステップＳ２１に戻る。以降は同様の処理を繰り返す。
【００５６】
以上説明したように、本実施形態に係るコンテンツの削除・更新方法によれば、管理ノード３は、各ノード２に送信した削除要求等に対する応答の有無に基づき、コンテンツの削除等がなされていないノード２を判断する。管理ノード３は、コンテンツの削除等がなされていないノードを示す非削除・更新ノード情報を作成し、応答があったノード２に対して送信しておく。管理ノード３から非削除・更新ノード情報を受信したノード２は、あるコンテンツについての削除要求等が送信されたときに電源オフ状態にあったノード２が電源オン状態に切り替わってアクセスしてくると、アクセスしてきたノード２に対して削除要求等を送信する。
【００５７】
このように、ネットワーク内に電源オフ状態のノードが存在する場合であっても、非削除・更新ノード情報に基づいて、コンテンツを共有する他のノードが、アクセスしてきたノードに対して削除要求等を送信する。すなわち、ノード２は、管理ノード３から非削除・更新ノード情報を受信したことをもって、コンテンツの削除要求等の送信を管理ノード３から委託され、管理ノード３に代わって削除等が済んでいないノードに対して削除要求等を送信する。一般的なサーバと異なり、Ｐ２Ｐシステムにおいては、コンテンツを保有するノード２は、未使用時においては電源をオフにさせていることが多い。このような環境であっても、上記の構成を備えることで、管理ノード３が定期的に削除要求等を送信したり、各ノード２が電源オフ状態からオン状態に切り替わったときに通知を行ったりすることが不要となる。
【００５８】
なお、上記においてはコンテンツの削除・更新を実施済みのノード２に対して非削除・更新ノードがアクセスしてきた場合に、削除等を実施済みのノード２から削除要求等を送信する構成としているが、これには限らない。非削除・更新ノードが管理ノード３にアクセスしてきたときに、管理ノード３においても同様の処理を実行させる構成としてもよい。
【００５９】
＜第２の実施形態＞
本実施形態においては、応答のあったノード２に削除要求等の送信を委託すべきか否かを判定し、判定結果に基づいてノード２に対して削除要求等の送信等の処理を委託する点で上記の実施形態と異なる。
【００６０】
システムの構成やノード２及び管理ノード３において保有する情報、送受する情報については上記実施形態と同様であるので、ここでは説明を省略することとし、上記の第１の実施形態に係るコンテンツの削除・更新方法と異なる点を中心に説明することとする。
【００６１】
図９は、本実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。システムの構成は、上記の実施形態と同様である。本実施形態におけるコンテンツの削除・更新の手順を図に沿って説明する。
（手順１）図２の手順１と同様に、コンテンツ１についての管理ノード３は、所有ノード情報３５が示すノード２Ａ、２Ｄ、２Ｅに対して削除要求・更新要求を送信する。
【００６２】
（手順２）電源がオン状態にあるノード２は、要求に応じて、コンテンツ１の削除・更新を行うとともに、管理ノード３に対して応答を返す。ここで、図９に示す例では、所有ノード情報が示す３台のノード２Ａ、２Ｄ、２Ｅのうち、電源がオン状態にあるノードは１台のみで、ノード２Ａ、２Ｄについては、オフ状態にある。このため、管理ノード３に応答を返すノード２は３台中１台のみである。
【００６３】
（手順３）管理ノード３は、応答を返したノード数が所定の条件を満たすか否かに基づき、応答を返したノード２に削除要求等の実施を委託するか否かを判断する。上記のとおり、図９に示す例では、３台中１台のノードしか応答を返していない。このため、管理ノード３は、ノード２Ｅにコンテンツ削除要求の送信等の処理を委託するよりも、管理ノード３が自ら削除要求等をノード２に送信する方が効率的と判断し、ノード２Ｅへの委託は行わない。
【００６４】
ノード２に削除要求等の送信を委託しない場合は、管理ノード３は、手順１においてノード２Ａ、２Ｄ、２Ｅに削除要求等を送信してから所定の期間の経過後に、まだコンテンツの削除等が実施されていないノード２Ａ、２Ｄに対して、削除要求等の再送を行う。
【００６５】
なお、手順３において、ノード２に削除要求等の送信を委託すると判断した場合には、図２の手順３以降の手順でコンテンツの削除等を行う。
図１０は、管理ノード３におけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【００６６】
図１０に示す一連の処理のうち、ステップＳ３１からステップＳ３４までについては、それぞれ図６のステップＳ１からステップＳ４までの処理とそれぞれ対応する。本実施形態においては、ステップＳ３５において、受信した応答数が所定の割合以下であるか否かの判定を行っている点で図６のフローチャートと相違する。
【００６７】
先に図９を参照して述べたとおり、応答数（応答を返したノード２の数）が少ない場合には、ノード２に削除要求等を委託するよりも、管理ノード３自身が削除要求等を再送した方が、効率的であると考えられる。そこで、ステップＳ３５において応答数が所定の割合以下であると判定された場合には、ステップＳ３３に戻り、所定の期間の経過後に削除要求等を再送する。
【００６８】
ステップＳ３５の判定において、応答数が所定の割合を超えると判定された場合には、ステップＳ３６に進む。ステップＳ３６で、応答を返さなかったノード２を示す非削除・更新ノード情報を作成し、記憶させる。そして、ステップＳ３７で、作成した非削除・更新ノード情報を、応答を返してきたノード２に対して送信し、処理を終了する。
【００６９】
なお、上記においては、応答数が所定の割合以下であるか否かに基づいて、管理ノード３において削除要求等の再送を行うか否かを判定しているが、これには限らない。例えば、応答数が所定の閾値以下であるか否かに基づいて判定を行う構成とすることもできる。
【００７０】
以上説明したように、本実施形態に係るコンテンツ削除・更新方法によれば、管理ノード３からのコンテンツ削除・更新の要求に応じてコンテンツの削除・更新を実施したノードの割合が所定の値よりも大きい場合（あるいはコンテンツの削除等を実施したノード数が所定の値よりも大きい場合等）に、ノードへの削除要求等の送信を委託する。委託できるノードが一定の条件を満たさない場合には、ノードへの委託は行わず、管理ノード３が削除要求等を再送する。これにより、コンテンツの削除や更新をより効率的に行うことが可能となる。
【００７１】
＜第３の実施形態＞
本実施形態においては、管理ノード３から委託されたノード２からの削除要求や更新要求に応じてコンテンツの削除等が実施された場合には、削除要求等を送信したノード２において、保有する非削除・更新ノード情報の更新を行う点で上記の実施形態と異なる。
【００７２】
本実施形態においても、システムの構成やノード２及び管理ノード３において保有する情報、送受する情報については上記実施形態と同様であるので、ここでは説明を省略する。ここでは、上記の実施形態に係るコンテンツ削除・更新方法と異なる点を中心に説明する。
【００７３】
図１１は、本実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。システムの構成は、上記の実施形態と同様である。以下、図面に沿ってコンテンツの削除・更新の手順を説明する。
【００７４】
（手順１）から（手順６）までについては、図２の（手順１）から（手順６）までとそれぞれ同様であるため、説明を省略し、（手順７）以降について述べる。
（手順７）ノード２Ｄにコンテンツ１の削除要求・更新要求を送信したノード２Ｅは、ノ
ード２Ｄから削除要求等に対する応答を受信すると、管理ノード３に結果を通知する。図１２は、管理ノード３に通知されるデータのフォーマット例である。図１２に示すフォーマットの通知を受けることにより、管理ノード３は、「nodeタグ」の「ip属性」で識別できるノード２Ｄにおいて、コンテンツＩＤ＝０００００００１すなわちコンテンツ１の削除が実施されたことを認識する。
【００７５】
（手順８）管理ノード３は、削除要求等の送信を委託していたノード２Ｅから通知を受けると、受けた通知に基づいて、保有している非削除・更新ノード情報３６を更新する。具体的には、非削除・更新ノード情報３６から、ノード２Ｅを示す情報を削除する。
（手順９）管理ノード３は、更新後の非削除・更新ノード情報をノード２に送信する。送信先のノード２は、コンテンツ１の所有ノード情報３５に記述されているノード２のうち、更新後の非削除・更新ノード情報３６に含まれるノードを除いたノードである。
【００７６】
ここで、送信先のノード２が所有ノード情報３５に記述されているノード２の全てである場合には、コンテンツを共有する全てのノード２においてコンテンツの削除・更新が実施されたと判断し、非削除・更新ノード情報３６の送信を行わないこととしてもよい。
【００７７】
図１３は、管理ノード３におけるコンテンツの削除・更新に関わる処理を示したフローチャートである。図１３に示す一連の処理は、図６のステップＳ１からステップＳ５までの処理を実行した後に実行され、図１１の手順７以降に相当する。
【００７８】
まず、ステップＳ４１で、コンテンツの削除・更新がされていなかったノードにおいてコンテンツの削除・更新が実施されたことの通知を、委託したノード２から受信する。
ステップＳ４２で、通知された内容に基づき、保有する非削除・更新ノード情報３６を更新する。更新の具体的な方法については、図１１を参照して説明したとおりである。
【００７９】
ステップＳ４３で、コンテンツ所有ノード情報３５に記述されたノードから、非削除・更新ノード情報３５に含まれるノードを除いたノードに対して、更新された非削除・更新ノード情報を送信し、処理を終了する。
【００８０】
図１４は、ノード２における他のノード２からのアクセスに対して実行する処理を示したフローチャートである。図１４のステップＳ５１からステップＳ５５までの処理は、それぞれ図８のステップＳ２１からステップＳ２５までの処理と同様である。ステップＳ５５において、アクセスしてきた他のノード２に対して削除・更新要求を送信すると、ステップＳ５６に進む。
【００８１】
ステップＳ５６で、他のノード２から削除・更新要求に対する応答を受信すると、ステップＳ５７で、管理ノード３に対して削除・更新結果を通知する。ステップＳ５８で、自装置において保有する非削除・更新ノード情報２７を更新する。アクセスしてきた他のノード２を示す情報を非削除・更新ノード情報２７から削除すると、ステップＳ５１に戻る。
【００８２】
上記のとおり、図１４のステップＳ５７におけるノード２からの通知にしたがって、管理ノード３は、非削除・更新ノード情報を更新し、更新後の情報を所有ノードに対して送信する。
【００８３】
図１５は、ノード２における非削除・更新ノード情報２７の更新処理を示したフローチャートである。
各ノード２は、ステップＳ６１で、管理ノード３から非削除・更新ノード情報を受信すると、ステップＳ６２で、受信した情報に基づき、保有する非削除・更新ノード情報２７を更新する。
【００８４】
このように、本実施形態に係るコンテンツの削除・更新方法によれば、管理ノード３から委託を受けているノード２にアクセスすることによりコンテンツの削除等を実施したノードについての情報は削除される。コンテンツの削除等が実施されていないノードに対して、非削除・更新ノード情報を保有する複数のノード２から削除要求等が送信され、無駄な処理が発生することを効果的に防止する。
【００８５】
＜第４の実施形態＞
上記第３の実施形態においては、管理ノード３において非削除・更新ノード情報を更新して各ノード２に更新された情報を送信している。これに対して、本実施形態においては、ノード２において非削除・更新ノード情報を更新し、他の非削除・更新ノード情報を保有するノードに対して通知を行う点で異なる。
【００８６】
本実施形態においても、システムの構成やノード２及び管理ノード３において保有する情報については上記第３の実施形態と同様であるので、ここでは説明を省略し、異なる点を中心に説明する。
【００８７】
図１６は、本実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。システムの構成は、上記の実施形態と同様である。図１６の（手順１）及び（手順２）については、図２や図１１等の手順１及び手順２とそれぞれ同様である。ここでは、手順３以降について説明する。
【００８８】
（手順３）管理ノード３は、コンテンツ１の所有ノードであって削除・更新要求に対する応答を返したノード２Ａ、２Ｅに対して、非削除・更新ノード情報とともに、代理管理ノード情報を送信する。代理管理ノード情報に記述される代理管理ノードとは、コンテンツの所有ノードのうち、管理ノード３に代理して、コンテンツの削除・更新をまだ実施していない他のノードを示す非削除・更新ノード情報を管理するノードである。代理管理ノードであるノード２は、非削除・更新ノード情報に含まれるノードにおいてコンテンツの削除等が実施された場合には、そのノードについては非削除・更新ノード情報から削除をする。
【００８９】
図１７（ａ）は、管理ノード３からノード２に送信される代理管理ノード情報のフォーマット例であり、図１７（ｂ）は、ノード２において保有する代理管理ノード情報のデータ構造の例である。
【００９０】
図１７に示すように、代理管理ノード情報には、コンテンツを所有するノードのうち、管理ノード３からの要求に対して削除・更新を実施したノード、すなわち、非削除・更新ノード情報に含まれるノード２を除いたノードを示す情報が格納される。
【００９１】
（手順４）から（手順６）までについては、図２の手順４から手順６とそれぞれ同様である。
（手順７）ノード２Ｅは、ノード２Ｄから削除・更新要求に対する応答を受信した旨を、他の代理管理ノードであるノード２Ａに対して通知する。図１６においては記載を省略しているが、ノード２Ｅは、ノード２Ｄから応答を受信したことをもって、保有する非削除・更新ノード情報２７を更新し、非削除・更新ノード情報２７からノード２Ｄを示す情報を削除する。
【００９２】
（手順８）ノード２Ｅから通知を受けたノード２Ａは、通知に基づき、保有する非削除・更新ノード情報２７を更新する。具体的には、コンテンツ１の削除・更新を実施したノード２Ｄを示す情報を、非削除・更新ノード情報２７から削除する。
【００９３】
図１８は、管理ノード３におけるコンテンツの削除・更新に関わる処理を示したフロー
チャートである。図１８に示す一連の処理のうち、ステップＳ７１からステップＳ７５までの処理は、それぞれ図６のステップＳ１からステップＳ５までの処理と同様である。ここでは、ステップＳ７６以降の処理について説明する。
【００９４】
ステップＳ７６で、受信した削除・更新要求に対する応答に基づき、代理管理ノード情報を作成する。そして、ステップＳ７７で、応答を返したノード２に対して、代理管理ノード情報を送信し、処理を終了する。
【００９５】
図１９は、ノード２におけるコンテンツの削除・更新に関わる処理を示したフローチャートである。図１９に示す一連の処理のうち、ステップＳ８１からステップＳ８４までの処理は、それぞれ図７のステップＳ１１からステップＳ１４までの処理と同様である。
ステップＳ８５においては、管理ノード３から代理管理ノード情報を受信して自装置において記憶させ、処理を終了する。
【００９６】
図２０は、非削除・更新ノード情報２７及び代理管理ノード情報２６を受信したノード２において、他のノード２からのアクセスに対して実行する処理を示したフローチャートである。
図２０に示す一連の処理のうち、ステップＳ９１からステップＳ９５までの処理は、それぞれ図８のステップＳ２１からステップＳ２５までの処理と同様である。
ステップＳ９６において、ノード２は、アクセスしてきた他のノードから応答を受信すると、ステップＳ９７で、受信した応答に基づき、代理管理ノード情報２６が示すノードに対して、アクセスしてきたノードについてのコンテンツの削除・更新結果を通知する。そして、ステップＳ９８で、図２のステップＳ２６と同様に、自装置において保有する非削除・更新ノード情報を更新して、アクセスしてきた他のノード２を示す情報を削除し、ステップＳ９１に戻る。
【００９７】
図２１は、管理ノード３から委託を受けているノード２における非削除・更新ノード情報の更新処理を示したフローチャートである。図２１に示す処理は、代理管理ノード情報２６を受信した複数のノード２のうち、図２０に示す処理を実行したノード以外のノードにおいて実行される。
【００９８】
ステップＳ１０１で、代理管理ノード情報２６を保有する他のノード２から、非削除・更新ノード情報２７に含まれるノードについてコンテンツの削除・更新が実施された旨の通知を受信する。ステップＳ１０２で、通知された内容にしたがって、保有する非削除・更新ノード情報２７を更新し、コンテンツの削除等を実施したノードを示す情報を削除して処理を終了する。
【００９９】
以上説明したように、本実施形態に係るコンテンツの削除・更新方法によれば、管理ノード３は、非削除・更新ノード情報をノードに対して送信するときに、送信先のノードを示す代理管理ノード情報を送信しておく。非削除・更新ノード情報及び代理管理ノード情報を受信したノードは、それらの情報を自装置に記憶させておく。代理管理ノード情報を保有するノード２に対して非削除・更新ノード情報に含まれるノード２がアクセスしてきた場合には、コンテンツの削除等を実施させるとともに、アクセスしてきたノードにおけるコンテンツの削除等の結果を他の代理管理ノードに通知する。代理管理ノード情報を保有する各ノードにおいて、アクセスしてきたノードを示す情報を非削除・更新ノード情報から削除する。
【０１００】
Ｐ２Ｐシステムにおいては、いずれのノードについても管理ノードになり得る。このため、システム内のいずれのノードが電源オフ状態に切り替えられても、コンテンツの削除
・更新の実施に影響しないことが望ましい。本実施形態に係るコンテンツの削除・更新方法によれば、各ノードにおいて非削除・更新ノード情報を随時更新できるため、管理ノード３の電源がオフ状態の場合であっても、コンテンツの削除・更新の実施を円滑に行うことができる。
【０１０１】
なお、上記においては、第１の実施形態に係るコンテンツの削除・更新方法に対して代理管理ノードとしてノード２を動作させる場合について述べているが、これには限らない。例えば、第２の実施形態に係る方法のように、所定の割合を超えるノード２が管理ノード３に対して応答を返した場合に、応答を返したノード２のうちいずれかのノードについて代理管理ノードとして動作させる構成としてもよい。あるいは、第３の実施形態に係る方法のように、ノード２の側において非削除・更新ノード情報の更新を行う方法と組み合わせる構成としてもよい。
【０１０２】
＜第５の実施形態＞
本実施形態においては、上記の実施形態に係るコンテンツの削除・更新方法を停止させる条件を予め設定しておき、停止条件を満たしている場合には、管理ノード３からノード２への委託していた削除要求等の送信処理を停止させる点に特徴を有する。システムの構成やノード２及び管理ノード３において保有する情報については上記の実施形態と同様であるので、ここでは説明を省略し、異なる点を中心に説明する。
【０１０３】
以下においては、第４の実施形態に係るコンテンツの削除・更新方法、すなわち、ノード２を代理管理ノードとしてコンテンツの削除・更新を行う方法と比較して説明する。
管理ノード３は、非削除・更新ノード情報をノード２宛に送信するときに、ノード２における削除・更新要求の送信についての停止条件を併せて送信しておく。非削除・更新ノード情報と共に停止条件を送信する以外は、管理ノード３において実行する処理等については、例えば図１８等に示すとおりである。
【０１０４】
停止条件を受信したノード２は、非削除・更新ノード情報に含まれるノードからアクセスがあると、停止条件を満たすか否かを判定する。そして、停止条件を満たす場合には、削除・更新要求の送信を行わない。停止条件としては、例えば、期間を使用する。
【０１０５】
図２２は、管理ノード３からノード２に送信される非削除・更新ノード情報及び停止条件のフォーマット例である。図２２に示すフォーマットの最終行には、「２００７年１０月２９日」が記述されている。
【０１０６】
図２２に示す情報を受信したノード２は、非削除・更新ノード情報に含まれるノード２からのアクセスがあった場合、アクセスがあった日付と停止条件が示す日付とを比較する。アクセスのあった日付が停止条件の示す日付を超えていた場合には、アクセスしてきたノード２に削除・更新要求を送信しない。
【０１０７】
図２３は、ノード２におけるコンテンツの削除・更新に関わる処理を示したフローチャートである。図２３に示す処理のうち、ステップＳ１１１からステップＳ１１３までの処理については、それぞれ図１９のステップＳ８１からステップＳ８３までの処理と同様である。
【０１０８】
ステップＳ１１４で、管理ノード３から、停止条件を付された非削除・更新ノード情報を受信し、受信した情報を自装置に記憶させる。ステップＳ１１５で、図１９のステップＳ８５と同様に、管理ノード３から代理管理ノード情報を受信して自装置に記憶させ、処理を終了する。
【０１０９】
なお、上記の実施例においては、ノード２が代理管理ノードとして動作する場合につい
て説明しているが、これには限らない。管理ノード３において非削除・更新ノード情報の更新を行う構成の場合は、図２３のステップＳ１１５の処理は行わない。
【０１１０】
図２４は、代理管理ノードとして動作するノード２における、他のノード２からのアクセスに対して実行する処理を示したフローチャートである。
図２４に示す処理のうち、ステップＳ１２１からステップＳ１２３までの処理は、図２０のステップＳ９１からステップＳ９３までの処理とそれぞれ対応する。ステップＳ１２３で、アクセスしてきたノード２がコンテンツの削除等がなされていないノード（非削除・更新ノード）であるか否かを判定する。ステップＳ１２３において、アクセスしてきたノード２が非削除・更新ノードである場合は、ステップＳ１２４に進み、非削除・更新ノードでない場合は、ステップＳ１２５に進む。
【０１１１】
ステップＳ１２４で、停止条件を満たしているか否かを更に判定する。停止条件を満たしていると判定した場合には、ステップＳ１２４に進み、コンテンツの削除・更新に関わる処理は実行しない。停止条件を満たしていないと判定した場合には、ステップＳ１２６に進む。ステップ１２６以降の処理については、図２０のステップＳ９５以降の処理と同様である。
【０１１２】
図２４に示す処理により、非削除・更新ノードからアクセスのあったノード２において、送信した削除要求等に対し応答を受信した場合には、非削除・更新ノード情報を更新して、応答を返した非削除・更新ノードを示す情報を削除する。そして、非削除・更新ノード情報を保有する他のノード２に対してその旨通知する。通知を受ける他のノード２においては、上記の第４の実施形態において説明した、図２１に示す処理と同様の処理を実行する。すなわち、非削除・更新ノードにおいてコンテンツの削除等が実施された旨の通知を受信すると、通知された内容にしたがって、自装置において保有する非削除・更新ノード情報を更新し、コンテンツの削除等を実施したノードを示す情報を削除する。
【０１１３】
なお、図２４のステップＳ１２４において、停止条件を満たしていると判定された場合（ステップＳ１２４でＹｅｓの場合）には、保有する非削除・更新ノード情報等のコンテンツの削除に関わる情報については、削除する構成としてもよい。
【０１１４】
以上説明したように、本実施形態に係るコンテンツの削除・更新方法によれば、管理ノード３から委託されたノード２において、予め停止条件を設定しておく。非削除・更新ノードからアクセスがあった場合には、設定されている停止条件を満たすか否かを判定し、条件を満たしている場合には、アクセスしてきた非削除・更新ノードに対して削除要求等を送信しない。上記の実施例のように、停止条件として期間等を設定することで、非削除・更新ノードが長期にわたりネットワークに接続されない場合や他のノードと通信を行わない場合であっても、委託を受けたノード２において非削除・更新ノード情報が削除・更新されないまま残り続けることを防止する。
【０１１５】
＜第６の実施形態＞
本実施形態においては、電源がオフ状態であったためにコンテンツの削除・更新が実施されていないノードが存在する場合に、削除・更新の対象とされているコンテンツの所有ノード以外のノードであっても、削除・更新が未実施のノードと通信する可能性の高いノードについては、削除要求や更新要求を送信可能とする点で上記の実施形態と異なる。システムの構成やノード２及び管理ノード３において保有する情報については上記の実施形態と同様であるので、ここでは説明を省略し、異なる点を中心に説明する。
【０１１６】
管理ノード３は、非削除・更新ノード情報を、応答を返したノード２だけでなく、所有ノード以外のノードであって、通信可能性が高いノードに対しても送信しておく。非削除・更新ノード情報を受信した所有ノード以外のノード２は、所有ノードと同様に、コンテンツの削除・更新がまだ実施されていないノードからアクセスがあった場合には、アクセスしてきたノードに対して削除要求・更新要求を送信する。
【０１１７】
図２５は、管理ノード３からノード２に送信される非削除・更新ノード情報のフォーマット例である。コンテンツの所有ノード以外のノードであって、まだコンテンツの削除等が実施されていないノード２と通信する可能性の高いノードを示す情報が追加されている。
【０１１８】
上記の実施形態についてと同様に、非削除・更新ノード情報を受信したノードは、非削除・更新ノード情報に記述されているノードからアクセスがあった場合には、アクセスしてきたノードに対してコンテンツの削除要求・更新要求を送信する。コンテンツの削除等が必要なノードと通信する可能性が高いノードからも削除要求等を送信することで、まだコンテンツの削除等がなされていないノードが通信可能性の高いノードにアクセスしてきた場合に削除等が実施されることとなる。これにより、コンテンツの削除等が実施される確度を高める。
【０１１９】
更には、第４の実施形態と同様に、通信可能性の高いノードに代理管理ノードとして動作させる構成としてもよい。かかる構成をとる場合、管理ノード３は、非削除・更新ノード情報を送信した通信可能性の高いノードに対して、更に、代理管理ノード情報を送信する。通信可能性の高いノードは、代理管理ノード情報を受信した場合には、非削除・更新ノード情報の更新や、非削除・更新ノード情報を保有する他のノードへの通知を行う。
【０１２０】
また、第５の実施形態と同様に、管理ノード３は、非削除・更新ノード情報の送信先に、コンテンツの削除要求や更新要求を送信する処理についての停止条件を併せて送信しておく構成としてもよい。
【０１２１】
図２６は、管理ノード３におけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
先ず、ステップＳ１３１で、図１８のステップＳ７１と同様に、コンテンツ提供者等のユーザが、コンテンツの削除等を決定してその旨の指示が入力される。ステップＳ１３２で、ユーザが、上記の停止条件を決定し、入力する。ステップＳ１３３からステップＳ１３６までの処理は、図１８のステップＳ７２からステップＳ７５までの処理とそれぞれ同様である。
【０１２２】
ステップＳ１３７で、非削除・更新ノードと通信する可能性の高いノードに対して、非削除・更新ノード情報を送信する。ステップＳ１３８及びステップＳ１３９の処理は、図１８のステップＳ７６及びステップＳ７７の処理とそれぞれ同様である。
【０１２３】
なお、上記のフローチャートにおいては、管理ノード３は、応答のあったノード及び通信可能性の高いノードに対して、非削除・更新ノード情報に停止条件を付して送信し、また、代理管理ノード情報を送信する構成としているが、これに限らない。ステップＳ１３６及びステップＳ１３７において、停止条件については付さずに非削除・更新ノード情報を送信する構成としてもよい。また、非削除・更新ノード情報の送信先のノードを代理管理ノードとしては動作させず、非削除・更新ノード情報の管理については管理ノード３で行う構成としてもよい。この場合は、ステップＳ１３８及びステップＳ１３９の処理は行わない。
【０１２４】
図２７〜図２９は、上記に説明したコンテンツの削除・更新方法による効果を従来技術と比較して説明する図である。
図２７（ａ）は、従来におけるコンテンツの削除方法を示す。図２７（ａ）に示す方法
では、削除命令が発行されたときに電源がオフ状態にあるノードが存在する場合には、管理ノードは、そのノードに対して定期的に削除命令を送信する。図２７（ｂ）は、上記の実施形態に係るコンテンツの削除方法を示す。いずれも、管理ノードの電源は常にオン状態にある場合を示す。
【０１２５】
また、ノードＤは、管理ノードＡにより管理されるコンテンツＡと、管理ノードＢにより管理されるコンテンツＢを保有しているものとする。ノードＤの電源がオフ状態にあるときに、コンテンツＡについて削除するよう管理ノードＡから命令される場合の効果について、図２７（ａ）に示す従来技術と比較して説明する。
【０１２６】
図２７（ａ）に示すように、管理ノードＡが、コンテンツＡを保有するノードＡ、Ｂ、Ｃ、Ｄに対して削除命令を送信したときに、ノードＤの電源は、オフ状態にある。この場合、従来のコンテンツの削除方法では、管理ノードＡは、ノードＤから応答を受信するまで、定期的に削除命令を送信する。
【０１２７】
その後、ノードＤの電源がオン状態であるときに管理ノードＡからの削除命令を受信したときに、ノードＤは、管理ノードＡから受信した削除命令にしたがって、コンテンツＡを削除する。
【０１２８】
これに対し、図２７（ｂ）に示すように、上記の実施形態に係るコンテンツ削除方法では、管理ノードＡから削除命令が送信されたときに、ノードＤが電源オフ状態にある場合であっても、コンテンツＡの削除を実施して管理ノードＡに応答を返したノードＡ、Ｂ、Ｃは、管理ノードＡからノードＤへの削除命令の送信処理の委託を受けている。このため、ノードＤの電源がオンに切り替わった後、コンテンツＢをダウンロードするために、コンテンツＢの管理ノードＢにアクセスしてきた場合に、委託を受けているノードＣは、ノードＤに対して削除命令を送信する。ノードＤは、ノードＣから受信した削除命令にしたがって、コンテンツＡの削除を実施する。
【０１２９】
従来の方法では、ノードＤの電源がオン状態にある場合であっても、管理ノードＡにアクセスしてこない限りはノードＤにコンテンツＡの削除を実施させることができない。これに対し、上記の実施形態に係るコンテンツの削除方法によれば、コンテンツＡを所有するノードであって、管理ノードＡからの命令に対して応答を返したノード、すなわち管理ノードＡが命令を送信したときに電源がオン状態にあったノードＡ、Ｂ、Ｃは、ノードＤにおいてコンテンツＡの削除を実施する必要があることを認識できる。ノードＤがノードＡ、Ｂ、Ｃにアクセスしてきたときに、これらのノードからノードＤに削除命令を送信することで、管理ノードＡからの定期的な削除命令の送信は不要となる。管理ノードＡからノードＤへの命令の送信を不要とすることで、通信量を増大させずにコンテンツＡの削除が可能となる。
【０１３０】
図２８（ａ）は、従来における他のコンテンツの削除方法を示す。図２８（ａ）に示す方法では、各ノードは、電源がオフ状態からオン状態に切り替わったときに、自装置が保有するコンテンツの管理ノードに対して、電源がオン状態にある旨の通知を行う。図２８（ｂ）は、上記の実施形態に係るコンテンツの削除方法を示す。図２８（ｂ）に示すコンテンツの削除方法は、図２７（ｂ）と同様である。
【０１３１】
図２８のシステムの構成については図２７と同様であり、管理ノードＡ、Ｂ及びノードＡ、Ｂ、Ｃ、Ｄを有する。図２７に示す場合と同様に、管理ノードは常に電源がオン状態にあるものとし、ノードＤは、管理ノードＡ及びＢによりそれぞれ管理されるコンテンツＡ及びＢを保有しているものとする。
【０１３２】
以下、ノードＤの電源がオフ状態にあるときに、コンテンツＡについて削除する旨の命令が管理ノードＡにおいて発行された場合の効果について、図２８（ａ）に示す従来技術と比較して説明する。
【０１３３】
図２８（ａ）に示すように、管理ノードＡは、発行した削除命令に対して応答のなかったノードＤに対して、定期的に削除命令を送信する必要はない。しかし、各ノードは、電源がオン状態に切り替わったときに、保有するコンテンツの管理ノードに対してその旨通知する必要が生じる。これは、ノードＤだけでなく、管理ノードＡからの命令にしたがってコンテンツＡの削除を実施したノードＡ、Ｂ、Ｃについても同様である。このため、各ノードから管理ノードへの電源オンの通知により不要な通信が増大することとなる。
【０１３４】
これに対し、図２８（ｂ）では、図２８（ａ）のような問題は生じない。ノードＤの電源がオン状態に切り替えられ、ノードＤにおいてはコンテンツＡの削除がなされていないことを示す情報を保有するいずれかのノードにアクセスしてきたときに、アクセスされたノードからノードＤに対して、コンテンツＡの削除命令を発行する。これにより、不要な通信を発生させずに効率的にコンテンツの削除が可能となる。
【０１３５】
図２９（ａ）は、従来におけるコンテンツの更新方法を示す。図２９（ａ）に示す方法では、更新命令が発行されたときに電源がオフ状態にあるノードが存在する場合には、管理ノードは、そのノードに対して定期的に更新命令を送信する。図２９（ｂ）は、上記の実施形態に係るコンテンツの更新方法を示す。
【０１３６】
図２９のシステムの構成については図２７及び図２８と同様であり、管理ノードＡ、Ｂ及びノードＡ、Ｂ、Ｃ、Ｄを有する。図２７及び図２８に示す場合と同様に、管理ノードは常にオン状態にあるものとし、ノードＤは、管理ノードＡ及びＢによりそれぞれ管理されるコンテンツＡ及びＢを保有しているものとする。
【０１３７】
以下、ノードＤの電源がオフ状態にあるときに、コンテンツＡを更新する旨の命令が管理ノードＡにおいて発行された場合の効果について、図２９（ａ）に示す従来技術と比較して説明する。
【０１３８】
図２９（ａ）に示すように、従来の方法では、管理ノードＡは、電源がオフ状態にあったために更新命令を受信できなかったノードＤに対して、ノードＤから応答を受信するまで、命令を定期的に発行し続ける。途中でノードＤが電源オンになる期間があっても、ノードＤが管理ノードＡに対してアクセスしてこない限り、管理ノードＡにおいては、ノードＤの電源がオンに切り替わったことを認識できない。図２９（ａ）に示す例では、ノードＤは、電源オンのときにコンテンツＢをダウンロードするために管理ノードＢやノードＣにアクセスしてきているが、その期間内には更新命令が発行されていない。このため、コンテンツＡが更新されるまでに時間を要することとなる。
【０１３９】
これに対し、図２９（ｂ）に示すように、上記の実施形態に係るコンテンツ更新方法では、ノードＤの電源がオン状態に切り替えられ、ノードＤがノードＣにアクセスしてきたときに、ノードＣにおいては管理ノードＡから受信した情報にしたがって、ノードＤに対して更新命令を発行する。不要な通信を発生させずに、効率的にコンテンツの更新が可能となる。
【０１４０】
なお、図２７〜図２９に示すでは、管理ノードの電源については常にオン状態にあるが、これには限らない。ただし、コンテンツの更新処理に関しては、ノードは管理ノードに対してアクセスして所有ノードを示す情報を受信する必要がある。このため、管理ノードの電源をオフするためには、第４の実施形態に係るコンテンツの更新方法を採用して、ノードに代理管理ノードとして動作させる必要がある。
【０１４１】
ところで、図１に示す管理ノード３及びノード２は、例えば、図３０に示すような情報処理装置（コンピュータ）を用いて構成することができる。図３０の情報処理装置は、ＣＰＵ（中央処理装置）１００１、メモリ１００２、入力装置１００３、出力装置１００４、外部記憶装置１００５、媒体駆動装置１００６、ネットワーク接続装置１００７を備え、それらはバス１００８により互いに接続されている。
【０１４２】
メモリ１００２は、例えば、ＲＯＭ（read only memory）、ＲＡＭ（random access memory）等を含み、処理に用いられるプログラムおよびデータを格納する。ＣＰＵ１００１は、メモリ１００２を利用してプログラムを実行することにより、必要な処理を行う。
【０１４３】
図１の管理ノード３の削除・更新要求部３２、削除・更新状況管理部３４や、ノード２の削除・更新実施部２２、削除・更新要求部２３、削除・更新状況管理部２５は、メモリ１００２に格納されたプログラムを実行することにより実現される機能に対応する。
【０１４４】
入力装置１００３は、例えば、キーボード、ポインティングデバイス、タッチパネル等であり、ユーザからの指示や情報の入力に用いられる。出力装置１００４は、例えば、ディスプレイ、プリンタ、スピーカ等であり、ユーザへの問い合わせや処理結果等の出力に用いられる。
【０１４５】
外部記憶装置１００５は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。情報処理装置は、この外部記憶装置１００５に、上記プログラムおよびデータを格納しておき、必要に応じて、それらをメモリ１００２にロードして使用する。
【０１４６】
媒体駆動装置１００６は、可搬記録媒体１００９を駆動し、その記録内容にアクセスする。可搬記録媒体１００９は、メモリカード、フレキシブルディスク、ＣＤ−ＲＯＭ（compact disk read only memory ）、光ディスク、光磁気ディスク等の任意のコンピュータ読み取り可能な記録媒体である。オペレータは、この可搬記録媒体１００９に上記プログラムおよびデータを格納しておき、必要に応じて、それらをメモリ１００２にロードして使用する。
【０１４７】
ネットワーク接続装置１００７は、ＬＡＮ（local area network）、インターネット等の任意の通信ネットワークに接続され、通信に伴うデータ変換を行う。情報処理装置は、必要に応じて、上記プログラムおよびデータを外部の装置からネットワーク接続装置１００７を介して受け取り、それらをメモリ１００２にロードして使用する。
【０１４８】
図３１は、図３０の情報処理装置にプログラムおよびデータを供給することのできるコンピュータ読み取り可能な記録媒体を示している。可搬記録媒体１００９やサーバ１１０１のデータベース１１０３に格納されたプログラムおよびデータは、情報処理装置１１０２のメモリ１００２にロードされる。サーバ１１０１は、そのプログラムおよびデータを搬送する搬送信号を生成し、ネットワーク上の任意の伝送媒体を介して情報処理装置１１０２に送信する。ＣＰＵ１００１は、そのデータを用いてそのプログラムを実行し、必要な処理を行う。
【０１４９】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
ネットワークを介して互いに接続された複数のノード間で、共有するコンテンツの削除あるいは更新を行うプログラムであって、
前記コンテンツを所有する所有ノードを示す所有ノード情報に基づき、該コンテンツを所有するノードに対してコンテンツの削除あるいは更新を実行させる旨の削除更新命令を送信し、
前記削除更新命令に対して応答しなかった非応答ノードがあるときは、該削除更新命令に対して応答のあった応答ノードに対し、該非応答ノードを示す非応答ノード情報を送信する
処理をコンピュータに実行させることを特徴とするプログラム。
（付記２）
ネットワークを介して互いに接続された複数のノード間で、共有するコンテンツの削除あるいは更新を行うプログラムであって、
前記コンテンツを所有するノードを示す所有ノード情報を保有する管理ノードから、該コンテンツの削除あるいは更新を行う旨の削除更新命令を受信すると、該削除更新命令に応じてコンテンツの削除あるいは更新を行うと共に、該管理ノードに対して応答を送信し、
前記管理ノードから前記削除更新命令に対する応答を返さなかった非応答ノードを示す非応答ノード情報を受信して、該非応答ノード情報を格納手段に格納し、
前記非応答ノードからアクセスがあったことを認識すると、前記格納手段に格納した非応答ノード情報に基づき、アクセスしてきた非応答ノードに対して前記削除更新命令を送信する
処理をコンピュータに実行させることを特徴とするプログラム。
（付記３）
前記命令を送信したノード数に対する前記応答のあったノード数の割合が所定の閾値以上であるか否かを判定し、
前記割合が前記閾値未満であると判定された場合には、所定の期間の経過後に、前記非応答ノードに対して、前記削除更新命令を再送し、
前記割合が前記閾値以上であると判定された場合には、前記非応答ノード情報の送信処理を実行する
ことを特徴とする付記１記載のプログラム。
（付記４）
前記非応答ノードが前記応答ノードからの削除更新命令に対して応答した旨の通知を該応答ノードから受信すると、前記前記非応答ノード情報から該非応答ノードを削除し、
前記応答ノードに対して、前記更新された非応答ノード情報を送信する
処理を更にコンピュータに実行させることを特徴とする付記１記載のプログラム。
（付記５）
前記削除更新命令を送信した前記非応答ノードから応答があった場合には、前記格納手段に格納されている前記非応答ノード情報から該非応答ノードを削除し、
前記管理ノードに対して、前記非応答ノードから応答を受信した旨の通知を送信する
処理を更にコンピュータに実行させることを特徴とする付記２記載のプログラム。
（付記６）
前記応答ノードを示す応答ノード情報を作成し、
前記非応答ノード情報を送信した応答ノードに対して、前記応答ノード情報を送信する
処理を更にコンピュータに実行させることを特徴とする付記１記載のプログラム。
（付記７）
前記応答ノードを示す応答ノード情報を前記管理ノードから受信すると、該応答ノード情報を前記格納手段に格納し、
前記削除更新命令を送信した前記非応答ノードから応答があった場合には、前記格納手段に格納されている前記非応答ノード情報から該非応答ノードを削除して、前記応答ノード情報に記述されている他の応答ノードに対して、該更新した非応答ノード情報を送信し、
前記前記更新された非応答ノード情報を受信した場合には、受信した非応答ノード情報
を前記格納手段に格納し直す
処理を更にコンピュータに実行させることを特徴とする付記２記載のプログラム。
（付記８）
前記非応答ノード情報には、前記非応答ノードへの前記削除更新命令の送信を停止させる条件が含まれる
ことを特徴とする付記１、３、４、６のいずれか１つに記載のプログラム。
（付記９）
前記管理ノードから、前記非応答ノードへの前記削除更新命令の送信を停止する停止条件を受信すると、該条件を前記格納手段に格納し、
前記非応答ノードからアクセスがあった場合に、前記格納手段に格納されている停止条件を満たす場合には、該応答ノードへの前記削除更新命令の送信を停止させる
処理を更にコンピュータに実行させることを特徴とする付記２、５、７のいずれか１つに記載のプログラム。
（付記１０）
前記ネットワーク内の前記応答ノード以外のノードであって、前記非応答ノードと通信可能性の高いノードに対して前記非応答ノード情報を送信する
処理を更にコンピュータに実行させることを特徴とする付記１記載のプログラム。
【図面の簡単な説明】
【０１５０】
【図１】Ｐ２Ｐシステムの構成図である。
【図２】第１の実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。
【図３】所有ノードの情報の例である。
【図４】削除要求及び更新要求の例である。
【図５】非削除・更新ノード情報の例である。
【図６】第１の実施形態に係る管理ノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図７】第１の実施形態に係るノードにおいてコンテンツの削除等を実施する処理を示したフローチャートである。
【図８】第１の実施形態に係るノードにおける他のノードからのアクセスに対して実行する処理を示したフローチャートである。
【図９】第２の実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。
【図１０】第２の実施形態に係る管理ノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図１１】第３の実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。
【図１２】管理ノードに通知されるデータの例である。
【図１３】第３の実施形態に係る管理ノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図１４】第３の実施形態に係るノードにおける他のノードからのアクセスに対して実行する処理を示したフローチャートである。
【図１５】第３の実施形態に係るノードにおける非削除・更新ノード情報の更新処理を示したフローチャートである。
【図１６】第４の実施形態に係るコンテンツ削除・更新方法の概略を説明する図である。
【図１７】代理管理ノード情報の例である。
【図１８】第４の実施形態に係る管理ノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図１９】第４の実施形態に係るノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図２０】第４の実施形態に係るノードにおける他のノードからのアクセスに対して実行する処理を示したフローチャートである。
【図２１】第４の実施形態に係るノードにおける非削除・更新ノード情報の更新処理を示したフローチャートである。
【図２２】管理ノードからノードに送信される非削除・更新ノード情報及び停止条件の例である。
【図２３】第５の実施形態に係るノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図２４】第５の実施形態に係るノードにおける他のノードからのアクセスに対して実行する処理を示したフローチャートである。
【図２５】管理ノードからノードに送信される非削除・更新ノード情報の例である。
【図２６】第６の実施形態に係る管理ノードにおけるコンテンツの削除・更新に関わる処理を示したフローチャートである。
【図２７】実施形態に係るコンテンツの削除方法の効果を説明する図（その１）である。
【図２８】実施形態に係るコンテンツの削除方法の効果を説明する図（その２）である。
【図２９】実施形態に係るコンテンツの更新方法の効果を説明する図である。
【図３０】情報処理装置の構成図である。
【図３１】記録媒体を示す図である。
【図３２】従来におけるＰ２Ｐ型配信システムの構成図である。
【図３３】従来におけるコンテンツの削除・更新方法を説明する図（その１）である。
【図３４】従来におけるコンテンツの削除・更新方法を説明する図（その２）である。
【図３５】従来におけるコンテンツの削除・更新方法を説明する図（その３）である。
【符号の説明】
【０１５１】
１      Ｐ２Ｐシステム
２      ノード
３      管理ノード
２１      ネットワーク送受信部
２２      削除・更新実施部
２３      削除・更新要求部
２４      格納部
２５      削除・更新状況管理部
２６      代理管理ノード情報
２７      非削除・更新ノード情報
２８      コンテンツ
３１      ネットワーク送受信部
３２      削除・更新要求部
３３      格納部
３４      削除・更新状況管理部
３５      コンテンツ所有ノード情報
３６      非削除・更新ノード情報
【図１】
2010113523.tif 000003
【図２】
2010113523.tif 000004
【図３】
2010113523.tif 000005
【図４】
2010113523.tif 000006
【図５】
2010113523.tif 000007
【図６】
2010113523.tif 000008
【図７】
2010113523.tif 000009
【図８】
2010113523.tif 000010
【図９】
2010113523.tif 000011
【図１０】
2010113523.tif 000012
【図１１】
2010113523.tif 000013
【図１２】
2010113523.tif 000014
【図１３】
2010113523.tif 000015
【図１４】
2010113523.tif 000016
【図１５】
2010113523.tif 000017
【図１６】
2010113523.tif 000018
【図１７】
2010113523.tif 000019
【図１８】
2010113523.tif 000020
【図１９】
2010113523.tif 000021
【図２０】
2010113523.tif 000022
【図２１】
2010113523.tif 000023
【図２２】
2010113523.tif 000024
【図２３】
2010113523.tif 000025
【図２４】
2010113523.tif 000026
【図２５】
2010113523.tif 000027
【図２６】
2010113523.tif 000028
【図２７】
2010113523.tif 000029
【図２８】
2010113523.tif 000030
【図２９】
2010113523.tif 000031
【図３０】
2010113523.tif 000032
【図３１】
2010113523.tif 000033
【図３２】
2010113523.tif 000034
【図３３】
2010113523.tif 000035
【図３４】
2010113523.tif 000036
【図３５】
2010113523.tif 000037