(57)【特許請求の範囲】
【請求項１】
互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムであって、
前記コンテンツサーバは、
前記複数のノードへ提供するコンテンツを記憶したコンテンツ記憶手段、を備え、
前記複数のノードは、それぞれ、
互いにピアツーピア通信を行うための通信手段と、
前記コンテンツサーバへアクセスし、前記コンテンツ記憶手段に記憶されているコンテンツを更新するコンテンツ更新手段と、
前記コンテンツサーバへアクセスし、前記コンテンツ記憶手段から所望のコンテンツを取得するコンテンツ取得手段と、
前記コンテンツサーバから取得したコンテンツを記憶する取得コンテンツ記憶手段と、
を備え、
前記コンテンツサーバは、
前記複数のノードの中の第１のノードのコンテンツ更新手段が、前記コンテンツサーバのコンテンツ記憶手段に記憶されているコンテンツを更新したときに、前記更新されたコンテンツに関する更新情報を生成し、前記更新情報を前記複数のノードの中の第２のノードへ通知する更新情報生成手段、を備え、
前記ピアツーピアネットワーク内の各ノードは、前記第２のノードが取得した更新情報を互いにピアツーピア通信によって共有し、
前記ピアツーピアネットワーク内の各ノードは、前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得し、
前記取得コンテンツ記憶手段に記憶されているコンテンツは、コンテンツの識別情報及びコンテンツ本体を含み、
前記更新情報には、少なくとも、更新されたコンテンツのコンテンツ本体が含まれていて、
前記ピアツーピアネットワーク内の各ノードは、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたときは、前記更新情報に含まれているコンテンツ本体を、自ノードの取得コンテンツ記憶手段に格納することを特徴とするネットワークシステム。
【請求項２】
互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムであって、
前記コンテンツサーバは、
前記複数のノードへ提供するコンテンツを記憶したコンテンツ記憶手段、を備え、
前記複数のノードは、それぞれ、
互いにピアツーピア通信を行うための通信手段と、
前記コンテンツサーバへアクセスし、前記コンテンツ記憶手段に記憶されているコンテンツを更新するコンテンツ更新手段と、
前記コンテンツサーバへアクセスし、前記コンテンツ記憶手段から所望のコンテンツを取得するコンテンツ取得手段と、
前記コンテンツサーバから取得したコンテンツを記憶する取得コンテンツ記憶手段と、
を備え、
前記コンテンツサーバは、
前記複数のノードの中の第１のノードのコンテンツ更新手段が、前記コンテンツサーバのコンテンツ記憶手段に記憶されているコンテンツを更新したときに、前記更新されたコンテンツに関する更新情報を生成し、前記更新情報を前記複数のノードの中の第２のノードへ通知する更新情報生成手段、を備え、
前記ピアツーピアネットワーク内の各ノードは、前記第２のノードが取得した更新情報を互いにピアツーピア通信によって共有し、
前記ピアツーピアネットワーク内の各ノードは、前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得し、
前記更新情報には、前記ピアツーピアネットワーク内の一つ以上のノードの識別情報を含み、
前記ピアツーピアネットワーク内の各ノードは、前記識別情報に自ノードの識別情報が含まれているときは、前記更新情報に基づいて自ノードの取得コンテンツ記憶手段に記憶されているコンテンツを更新することを特徴とするネットワークシステム。
【請求項３】
互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムにおいて、
前記ピアツーピアネットワーク内の各ノードは、前記コンテンツサーバから取得したコンテンツを記憶する取得コンテンツ記憶手段、を備え、
前記複数のノードの中の第１のノードが、前記コンテンツサーバに記憶されているコンテンツを更新し、
前記第１のノードが、前記コンテンツサーバに記憶されているコンテンツを更新したときに、前記コンテンツサーバは、前記更新されたコンテンツに関する更新情報を生成し、前記更新情報を前記複数のノードの中の第２のノードへ通知し、
前記ピアツーピアネットワーク内の各ノードは、前記第２のノードが取得した更新情報を互いにピアツーピア通信によって共有し、
前記ピアツーピアネットワーク内の各ノードは、前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得することを備え、
前記取得コンテンツ記憶手段に記憶されているコンテンツは、コンテンツの識別情報及びコンテンツ本体を含み、
前記更新情報には、少なくとも、更新されたコンテンツのコンテンツ本体が含まれていて、
前記ピアツーピアネットワーク内の各ノードは、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたときは、前記更新情報に含まれているコンテンツ本体を、自ノードの取得コンテンツ記憶手段に格納することを特徴とする更新情報の共有方法。
【請求項４】
互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムにおいて、
前記ピアツーピアネットワーク内の各ノードは、前記コンテンツサーバから取得したコンテンツを記憶する取得コンテンツ記憶手段、を備え、
前記複数のノードの中の第１のノードが、前記コンテンツサーバに記憶されているコンテンツを更新し、
前記第１のノードが、前記コンテンツサーバに記憶されているコンテンツを更新したときに、前記コンテンツサーバは、前記更新されたコンテンツに関する更新情報を生成し、前記更新情報を前記複数のノードの中の第２のノードへ通知し、
前記ピアツーピアネットワーク内の各ノードは、前記第２のノードが取得した更新情報を互いにピアツーピア通信によって共有し、
前記ピアツーピアネットワーク内の各ノードは、前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得することを備え、
前記更新情報には、前記ピアツーピアネットワーク内の一つ以上のノードの識別情報を含み、
前記ピアツーピアネットワーク内の各ノードは、前記識別情報に自ノードの識別情報が含まれているときは、前記更新情報に基づいて自ノードの取得コンテンツ記憶手段に記憶されているコンテンツを更新することを特徴とする更新情報の共有方法。
【請求項５】
互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムにおける、前記複数のノードのうちの一つを実現するためのコンピュータプログラムであって、
前記コンテンツサーバから取得したコンテンツを取得コンテンツ記憶手段に記憶し、
前記コンテンツサーバに記憶されているコンテンツを更新し、
前記更新されたコンテンツに関する更新情報が、前記更新に応じて前記コンテンツサーバにより生成され前記ピアツーピアネットワーク内の他ノードへ通知されたとき、前記他ノードが取得した前記更新情報を、前記他ノードと互いにピアツーピア通信によって共有し、
前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得することをコンピュータに実行させ、
前記取得コンテンツ記憶手段に記憶されているコンテンツは、コンテンツの識別情報及びコンテンツ本体を含み、
前記更新情報には、少なくとも、更新されたコンテンツのコンテンツ本体が含まれていて、
自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたときは、前記更新情報に含まれているコンテンツ本体を、自ノードの取得コンテンツ記憶手段に格納することを前記コンピュータに実行させることを特徴とする更新情報を共有するためのコンピュータプログラム。
【請求項６】
互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムにおける、前記複数のノードのうちの一つを実現するためのコンピュータプログラムであって、
前記コンテンツサーバから取得したコンテンツを取得コンテンツ記憶手段に記憶し、
前記コンテンツサーバに記憶されているコンテンツを更新し、
前記更新されたコンテンツに関する更新情報が、前記更新に応じて前記コンテンツサーバにより生成され前記ピアツーピアネットワーク内の他ノードへ通知されたとき、前記他ノードが取得した前記更新情報を、前記他ノードと互いにピアツーピア通信によって共有し、
前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得することをコンピュータに実行させ、
前記更新情報には、前記ピアツーピアネットワーク内の一つ以上のノードの識別情報を含み、
前記識別情報に自ノードの識別情報が含まれているときは、前記更新情報に基づいて自ノードの取得コンテンツ記憶手段に記憶されているコンテンツを更新することを前記コンピュータに実行させることを特徴とする更新情報を共有するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバクライアントシステムにおいて、サーバのコンテンツが更新されたときに、更新後のコンテンツをネットワーク内の各ノードへ行き渡らせるための技術に関する。
【背景技術】
【０００２】
これに対しては、以下のような方式が存在した。
（１）PULL方式・・・ネットワーク内の各ノードが、サーバにアクセスしたタイミングでコンテンツの更新の有無を確認し、更新があった場合は更新後のコンテンツをダウンロードするという方式。
（２）PUSH方式・・・サーバから、ネットワーク内の各ノードに対して更新後のコンテンツを配信するという方式。
（３）ピアツーピア方式・・・ピアツーピア型の通信によって、サーバから更新後コンテンツを取得したノードから、ネットワーク内に存在する別のノードへと更新後コンテンツを伝播的に配信させていくという方式。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、（１）PULL方式の場合、各ノードがサーバにアクセスしてみるまでは更新の有無が分からないため、サーバ側でコンテンツが更新されてから、更新後コンテンツを必要とする全てのノードに新しいコンテンツが行き渡るまでに、かなりのタイムラグが発生していた。
【０００４】
また、（２）PUSH方式の場合は、サーバからネットワーク内の各ノードに対して更新後コンテンツの配信を行わねばならないため、ネットワークに接続しているノードの数が増えるにつれ、サーバの負荷が大きくなると言う問題点があった。
【０００５】
（３）ピアツーピア方式をとった場合、サーバの負荷は軽減されるものの、サーバ側での管理が不能になるという問題があった。
【０００６】
また、サーバのコンテンツが増えてくると、各クライアントは様々なコンテンツを参照するので、サーバで一部のコンテンツが更新されたときには、その更新情報は、必ずしも全ユーザが必要なわけではない。
【０００７】
そこで、本発明の目的は、サーバのコンテンツが更新されたときに、その更新情報を必要なクライアントへ迅速に通知することである。
【課題を解決するための手段】
【０００８】
本発明の一つの実施態様に従うネットワークシステムは、互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムであって、前記コンテンツサーバは、前記複数のノードへ提供するコンテンツを記憶したコンテンツ記憶手段、を備える。前記複数のノードは、それぞれ、互いにピアツーピア通信を行うための通信手段と、前記コンテンツサーバへアクセスし、前記コンテンツ記憶手段に記憶されているコンテンツを更新するコンテンツ更新手段と、前記コンテンツサーバへアクセスし、前記コンテンツ記憶手段から所望のコンテンツを取得するコンテンツ取得手段と、前記コンテンツサーバから取得したコンテンツを記憶する取得コンテンツ記憶手段と、を備える。そして、前記複数のノードの中の第１のノードのコンテンツ更新手段が、前記コンテンツサーバのコンテンツ記憶手段に記憶されているコンテンツを更新したときに、前記ピアツーピアネットワーク内の各ノードは、前記更新されたコンテンツに関する更新情報を互いにピアツーピア通信によって共有し、前記ピアツーピアネットワーク内の各ノードは、前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得する。
【０００９】
好適な実施形態では、前記コンテンツサーバは、前記コンテンツ記憶手段に記憶されているコンテンツが更新されると、前記更新情報を前記複数のノードの中の第２のノードへ通知する手段をさらに備え、前記ピアツーピアネットワーク内の各ノードは、前記第２のノードが取得した更新情報を互いにピアツーピア通信によって共有してもよい。
【００１０】
好適な実施形態では、前記コンテンツ記憶部に記憶されているコンテンツは、コンテンツの識別情報及びコンテンツ本体を含み、前記更新情報には、少なくとも、更新されたコンテンツのコンテンツ本体が含まれていて、前記ピアツーピアネットワーク内の各ノードは、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたときは、前記更新情報に含まれているコンテンツ本体を、自ノードの取得コンテンツ記憶手段に格納するようにしてもよい。
【００１１】
好適な実施形態では、前記コンテンツサーバから通知される更新情報には、前記ピアツーピアネットワーク内の一つ以上のノードの識別情報を含む。前記ピアツーピアネットワーク内の各ノードは、前記識別情報に自ノードの識別情報が含まれているときは、前記更新情報に基づいて自ノードの取得コンテンツ記憶手段に記憶されているコンテンツを更新するようにしてもよい。
【００１２】
好適な実施形態では、前記第１のノードのコンテンツ更新手段が、前記コンテンツサーバのコンテンツ記憶部に記憶されているコンテンツを更新したあと、前記第１のノードが前記更新情報を生成し、前記ピアツーピアネットワーク内の各ノードは、前記第１のノードが生成した更新情報を互いにピアツーピア通信によって共有するようにしてもよい。
【００１３】
好適な実施形態では、前記コンテンツ記憶部に記憶されているコンテンツは、コンテンツの識別情報を含み、前記更新情報には、少なくとも、更新されたコンテンツの識別情報が含まれていて、前記第１のノードとは異なる第３のノードは、前記更新情報に含まれるコンテンツの識別情報が、前記第３のノードの取得コンテンツ記憶部に記憶されていれば、前記第３のノードのコンテンツ取得手段は、前記コンテンツサーバのコンテンツ記憶手段から前記更新されたコンテンツ本体を取得するようにしてもよい。
【００１４】
好適な実施形態では、前記コンテンツサーバは、前記第３のノードのコンテンツ取得手段が、前記コンテンツ記憶手段から前記更新されたコンテンツ本体を取得するときに、前記第３のノードの認証を行ってもよい。
【００１５】
本発明の一つの実施態様に従う、互いにピアツーピア通信が可能な複数のノードを有するピアツーピアネットワークと、コンテンツサーバとを備えたネットワークシステムは、前記ピアツーピアネットワーク内の各ノードが、前記コンテンツサーバから取得したコンテンツを記憶する取得コンテンツ記憶手段、を備えている。そして、前記複数のノードの中の第１のノードが、前記コンテンツサーバに記憶されているコンテンツを更新し、前記ピアツーピアネットワーク内の各ノードは、前記更新されたコンテンツに関する更新情報を互いにピアツーピア通信によって共有し、前記ピアツーピアネットワーク内の各ノードは、前記更新情報に基づいて、自ノードの取得コンテンツ記憶手段に記憶されているコンテンツが更新されたか否かを判定し、更新されたときには更新後のコンテンツを取得する。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の一実施形態に係るネットワークシステムについて、図面を参照して説明する。
【００１７】
図１は、本発明の第１の実施形態に係るネットワークシステムの構成図である。
【００１８】
本システムは、コンテンツサーバ１０と、ピアツーピア（以下、Ｐ２Ｐと記す）ネットワーク９を構成する複数のノード３０，３０，・・・とを有する。各ノード３０，３０，・・・は、クライアントとしてコンテンツサーバ１０からコンテンツの提供を受ける。
【００１９】
ノード３０，３０，・・・には、少なくとも一つの親ノード３０ａが含まれる。親ノード３０ａは、後述するように、コンテンツサーバ１０から更新情報１００の通知を受けて、他のノードへ通知する以外は、他のノード（親ノードと区別するために子ノードと呼ぶことがある）と同じ機能及び構成を有する。親ノードは常に特定のノードである必要はなく、コンテンツの種類や処理のタイミング等によって、親ノードとして機能するノードが変わっても良い。
【００２０】
コンテンツサーバ１０、複数のノード３０，３０，・・・は、いずれも例えば汎用的なコンピュータシステムにより構成され、以下に説明するコンテンツサーバ１０、及び各ノード３０，３０，・・・内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【００２１】
コンテンツサーバ１０は、クライアントである各ノード３０，３０，・・・に対して提供するコンテンツを記憶するコンテンツ記憶部１１と、コンテンツ記憶部１１に記憶されているコンテンツが更新されたことを示す更新情報を生成する更新情報生成部１３とを備える。
【００２２】
コンテンツ記憶部１１には、所定のブロックに分かれているコンテンツの本文（本体）が記憶されていて、各コンテンツの本文には識別情報（コンテンツＩＤ）が割り当てられている。コンテンツ記憶部１１に記憶されているコンテンツは、各ノード３０，３０，・・・から参照可能である。さらに、コンテンツ記憶部１１に記憶されているコンテンツは、各ノード３０，３０，・・・が更新することもできる。
【００２３】
更新情報生成部１３は、コンテンツ記憶部１１に記憶されているコンテンツが更新されたときに、その更新内容に関する更新情報１００を生成する。例えば、更新情報生成部１３は、更新されたコンテンツを特定する更新情報１００、あるいは、更新後のコンテンツの内容を含む更新情報１００を生成する。
【００２４】
図２は、更新情報１００のデータ構造の一例を示す。
【００２５】
同図に示すように、更新情報１００は、Ｐ２Ｐヘッダ１１０と、更新内容などを含む独自フォーマット部１３０とを有する。独自フォーマット部１３０には、ＩＤ１３１と、配信指定ノード１３３と、コンテンツＩＤ１３５と、コンテンツ本文１３７と、拡張領域１３９とを含む。
【００２６】
配信指定ノード１３３は、更新後のコンテンツの配信対象となるノード３０，３０，・・・の識別情報を示す。具体的には、IPアドレスやマシン名のように、クライアントマシンごとに設定された情報でもよいし、社員コードやログインIDのように、ユーザ単位に設定された情報でもよい。コンテンツＩＤ１３５は、更新されたコンテンツを識別するためのＩＤを示す。コンテンツ本文１３７は、更新されたコンテンツの更新後のコンテンツ本文の内容を示す。拡張領域１３９には、任意の情報を格納することができる。例えば、拡張領域１３９に、コンテンツを更新したユーザ（ノード）の識別情報を格納してもよい。
【００２７】
次に、各ノード３０，３０，・・・の機能構成について説明する。図１では、代表してノード３０ｂの機能構成を図示し、他のノード３０，３０，・・・については一部構成の図示を省略している。しかしながら、図示を省略しているノード３０，３０，・・・も、ノード３０ｂと共通の構成を備えている。
【００２８】
各ノード３０，３０，・・・は、サーバ通信部３１と、コンテンツ管理部３３と、コンテンツ記憶部３５と、Ｐ２Ｐ通信部３７とを備える。
【００２９】
サーバ通信部３１は、コンテンツサーバ１０と通信を行う。例えば、サーバ通信部３１は、コンテンツサーバ１０のコンテンツ記憶部１１に記憶されているコンテンツを取得する。また、サーバ通信部３１は、コンテンツサーバ１０のコンテンツ記憶部１１に記憶されているコンテンツを更新する。コンテンツ管理部３３は、コンテンツサーバ１０から取得したコンテンツを管理する。例えば、コンテンツ管理部３３は、コンテンツサーバ１０から取得したコンテンツをコンテンツ記憶部３５に格納する。また、コンテンツ管理部３３は、ユーザからの指示に従い、サーバ通信部３１を介して、コンテンツサーバ１０のコンテンツ記憶部１１に格納されているコンテンツの更新指示をする。コンテンツ記憶部３５は、コンテンツサーバ１０から取得したコンテンツを記憶する。コンテンツ記憶部３５には、例えば、コンテンツＩＤと、コンテンツ本文とが記憶される。Ｐ２Ｐ通信部３７は、他のノード３０，３０，・・・とＰ２Ｐ通信を行う。例えば、Ｐ２Ｐ通信部３７は、更新情報１００を他のノードのＰ２Ｐ通信部３７とやりとりする。
【００３０】
なお、図１において、ノード３０ｂ以外のノードについては、コンテンツ記憶部３５のみ記載し、サーバ通信部３１、コンテンツ管理部３３、及びＰ２Ｐ通信部３７の記載を省略している。さらに、そのコンテンツ記憶部３５には、その内部に記憶されているコンテンツＩＤが示してある。
【００３１】
図１では、ノード３０ｂが、コンテンツサーバ１０のコンテンツＢを更新した場合について示している。つまり、ノード３０ｂがコンテンツＢを更新すると、更新情報生成部１３が、この更新に係る更新情報１００（図２参照）を生成する。この更新情報１００が親ノード３０ａへ通知される。親ノード３０ａは、サーバ通信部３１がこれを受信し、Ｐ２Ｐ通信部３７が受信した更新情報１００を他のノード３０，３０，・・・へ通知する。
【００３２】
各ノード３０，３０，・・・では、Ｐ２Ｐ通信部３７が更新情報１００を取得すると、コンテンツ管理部３３が所定の処理を行う。そのコンテンツ管理部３３が行う処理の詳細な手順を図３に示す。以下、同図を参照して説明する。
【００３３】
まず、いずれかのノード３０が更新情報１００を受信すると、コンテンツ管理部３３は、受信した更新情報１００の独自フォーマット部１３０を読み込む（Ｓ１０）。そして、コンテンツ管理部３３は、配信指定ノード１３３に自ノードが含まれているか否かを判定する（Ｓ１２）。
【００３４】
配信指定ノード１３３に自ノードが含まれていない場合は（Ｓ１２：Ｎｏ）、この更新情報１００は自ノードが参照しないコンテンツの更新情報であるから、コンテンツ管理部３３は、そのまま処理を終了する。一方、配信指定ノード１３３に自ノードが含まれている場合は（Ｓ１２：Ｙｅｓ）、コンテンツＩＤ１３５がコンテンツ記憶部３５に保存されているコンテンツのＩＤと一致するか否かを判定する（Ｓ１４）。
【００３５】
そして、コンテンツ管理部３３は、更新情報１００のコンテンツ本文１３７に基づいて、コンテンツ記憶部３５を更新する（Ｓ２０）。つまり、コンテンツ管理部３３は、コンテンツ本文１３７に格納されている情報を、コンテンツ記憶部３５の対応するコンテンツに上書きする。
【００３６】
これにより、Ｐ２Ｐネットワーク９のいずれかのノード３０がコンテンツサーバ１０のコンテンツを更新すると、更新されたコンテンツを必要とする他のノード３０は、改めてコンテンツサーバ１０からコンテンツを取得することなく、Ｐ２Ｐ通信により更新後のコンテンツを迅速に取得することができる。つまり、コンテンツサーバ１０には負荷をかけずに、各ノード３０，３０，・・・必要とするコンテンツを速やかに取得できる。
【００３７】
また、予め更新前のコンテンツを保有していないノードは、更新後のコンテンツを取り込むことができないので、権原を有しないノードにまで無制限にコンテンツが配布されることを防止することができる。
【００３８】
さらに、更新情報１００に、配信指定ノード１３３として、更新後コンテンツの配信対象となるノードの識別情報を含むよう構成することで、更新前のコンテンツ保有の有無に加えて、各ノードに更新後コンテンツの配信の可否を指定することが可能である。
【００３９】
次に、本発明の第２の実施形態に係るネットワークシステムについて説明する。
【００４０】
図４は、本発明の第２の実施形態に係るネットワークシステムの構成図である。以下、第１の実施形態との相違点を中心に説明し、第１の実施形態と共通の構成に対しては同じ符号を付して説明を省略することがある。
【００４１】
本システムは、コンテンツサーバ１０と、Ｐ２Ｐネットワーク８を構成する複数のノード４０，４０，・・・とを有する。本実施形態では、第１の実施形態と異なり親ノードは存在しない。各ノード４０，４０，・・・は、クライアントとしてコンテンツサーバ１０からコンテンツの提供を受ける。
【００４２】
各ノード４０，４０，・・・は、いずれも例えば汎用的なコンピュータシステムにより構成され、以下に説明する各ノード４０，４０，・・・内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【００４３】
各ノード４０，４０，・・・は、サーバ通信部３１と、コンテンツ管理部４３と、コンテンツ記憶部３５と、Ｐ２Ｐ通信部３７とを備える。図４においても図１の場合と同様に、代表してノード４０ａの機能構成を図示し、他のノード４０，４０，・・・の機能構成は一部図示を省略している。つまり、図４において、ノード４０ａ以外のノードについては、コンテンツ記憶部３５のみ記載し、サーバ通信部３１、コンテンツ管理部４３、及びＰ２Ｐ通信部３７の記載を省略している。さらに、そのコンテンツ記憶部３５には、その内部に記憶されているコンテンツＩＤが示してある。
【００４４】
コンテンツ管理部４３は、コンテンツサーバ１０から取得したコンテンツを管理する。例えば、コンテンツ管理部４３は、コンテンツサーバ１０から取得したコンテンツをコンテンツ記憶部３５に格納する。また、コンテンツ管理部４３は、ユーザからの指示に従い、サーバ通信部３１を介して、コンテンツサーバ１０のコンテンツ記憶部１１に格納されているコンテンツの更新指示をする。コンテンツ管理部４３は、コンテンツ記憶部１１の更新を指示したときは、その更新内容に関する更新情報３００を生成する。例えば、更新情報には、更新されたコンテンツを特定するデータを含む。
【００４５】
コンテンツ記憶部３５には、例えば、コンテンツＩＤ及びコンテンツ本文が記憶されていてもよいし、コンテンツＩＤのみが記憶されていてもよい。
【００４６】
図５は、更新情報３００のデータ構造の一例を示す。
【００４７】
同図に示すように、更新情報３００は、Ｐ２Ｐヘッダ１１０と、更新内容などを含む独自フォーマット部３３０とを有する。独自フォーマット部３３０には、ＩＤ３３１と、コンテンツ管理部４３が更新を指示したコンテンツのコンテンツＩＤ３３３と、コンテンツの更新を行ったユーザ（つまり自ノード）の識別情報である更新ユーザ３３５とを含む。
【００４８】
図４では、ノード４０ａが、コンテンツサーバ１０のコンテンツＢを更新した場合について示している。つまり、ノード４０ａがコンテンツＢを更新すると、そのノード４０ａのコンテンツ管理部４３が、この更新に係る更新情報３００（図５参照）を生成する。この更新情報３００は、Ｐ２Ｐ通信部３７が他のノード４０，４０，・・・に対して送信する。他のノード４０，４０，・・・は、互いにＰ２Ｐ通信を行って、更新情報３００を共有する。
【００４９】
各ノード４０，４０，・・・では、Ｐ２Ｐ通信部３７が更新情報３００を取得すると、コンテンツ管理部４３が所定の処理を行う。そのコンテンツ管理部４３が行う処理の詳細な手順を図６に示す。以下、同図を参照して説明する。
【００５０】
まず、いずれかのノード４０が更新情報３００を受信すると、コンテンツ管理部４３は、受信した更新情報３００の独自フォーマット部３３０を読み込む（Ｓ３０）。そして、コンテンツ管理部４３は、コンテンツＩＤ３３３がコンテンツ記憶部３５に保存されているコンテンツＩＤと一致するか否かを判定する（Ｓ３２）。
【００５１】
コンテンツＩＤ３３３がコンテンツ記憶部３５に保存されているコンテンツＩＤと一致しないときは（Ｓ１２：Ｎｏ）、処理を終了する。一方、コンテンツＩＤ３３３がコンテンツ記憶部３５に保存されているコンテンツＩＤと一致するときは（Ｓ３２：Ｙｅｓ）、コンテンツ管理部４３は、コンテンツＩＤ３３３のコンテンツをコンテンツサーバ１０から取得する（Ｓ３４）。コンテンツ管理部４３は、取得したコンテンツを、コンテンツ記憶部３５に保存（上書き）する（Ｓ３６）。
【００５２】
ここで、コンテンツ管理部４３は、更新情報３００を取得して、直ちにコンテンツサーバ１０へコンテンツを取得しに行ってもよいし、コンテンツサーバ１０にアクセスが集中するのを防ぐために、時間をずらして取得しに行ってもよい。例えば、各ノード４０，４０，・・・をＩＰアドレスで複数グループにグループ分けて、各グループごとにアクセス可能な時間帯をコンテンツサーバ１０が管理し、各グループのアクセス可能時間帯を更新情報１００の拡張領域１３９に設定して、各ノードへ４０，４０，・・・通知するようにしてもよい。あるいは、各ノード４０，４０，・・・のＩＰアドレスに基づいて、各ノード４０，４０，・・・のサーバ通信部３１が乱数を発生させて、その乱数に基づいてコンテンツを取得する時刻またはコンテンツを取得するまでの待ち時間を定めてもよい。
【００５３】
これにより、Ｐ２Ｐネットワーク９のいずれかのノード４０がコンテンツサーバ１０のコンテンツを更新すると、コンテンツサーバ１０からいずれかのノード４０へ更新新情報をプッシュしなくても、各ノード４０，４０，・・・に更新情報が通知される。そして、更新されたコンテンツを必要とするノード４０は、直ちにコンテンツサーバ１０から更新後のコンテンツをコンテンツサーバ１０から取得することができる。
【００５４】
また、本実施形態によれば、予め更新前のコンテンツを保有していないノードは、更新後のコンテンツを取り込むことができないので、権原を有しないノードにまで無制限にコンテンツが配布されることを防止することができる。
さらに、コンテンツサーバ１０にアクセスした際に認証を行うようにすれば、認証を受けたノードのみが更新されたコンテンツを取得することができるので、更新前のコンテンツ保有の有無に加えて、各ノードに更新後コンテンツの配信の可否を指定することが可能である。
【００５５】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【００５６】
例えば、上述した実施形態では、Ｐ２Ｐネットワーク内のノードがコンテンツサーバのコンテンツを更新した場合について説明したが、本発明は、Ｐ２Ｐネットワーク内のノード以外がコンテンツを更新した場合であっても適用可能である。
【００５７】
また、コンテンツサーバが生成する更新情報にコンテンツ本体を含んでいなくてもよいし、ノードが生成する更新情報にコンテンツ本体が含まれていてもよい。
【図面の簡単な説明】
【００５８】
【図１】本発明の第１の実施形態に係るネットワークシステムの構成図である。
【図２】更新情報１００のデータ構造の一例を示す。
【図３】本実施形態におけるコンテンツ管理部３３が行う処理のフローチャートである。
【図４】本発明の第２の実施形態に係るネットワークシステムの構成図である。
【図５】更新情報３００のデータ構造の一例を示す。
【図６】本実施形態におけるコンテンツ管理部４３が行う処理のフローチャートである。
【符号の説明】
【００５９】
１０…コンテンツサーバ、１１…コンテンツ記憶部、１３…更新情報生成部、３０，４０…ノード、３１…サーバ通信部、３３，４３…コンテンツ管理部、３５…コンテンツ記憶部、３７…Ｐ２Ｐ通信部、１００，３００…更新情報。
【図１】
0005312776.tif 000002
【図２】
0005312776.tif 000003
【図３】
0005312776.tif 000004
【図４】
0005312776.tif 000005
【図５】
0005312776.tif 000006
【図６】
0005312776.tif 000007