(57)【特許請求の範囲】
【請求項１】
ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムであって、
コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する第１記憶手段と、
コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する前記第１識別情報に対応する前記所在情報を送信する第１送信手段と、
配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得手段と、
前記取得手段により取得された前記第２識別情報に対応する前記所在情報を前記第１送信手段が送信することを制限する制限手段と、
前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信手段と、
前記第２送信手段により送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可する許可手段と、
を備える情報処理装置と、
前記第１コンテンツと、前記第２識別情報と、を対応付けて記憶する第２記憶手段と、
前記情報処理装置から送信された前記指示情報を受信する受信手段と、
前記受信手段により受信された前記指示情報に基づいて、前記指示情報に含まれる前記第２識別情報に対応するコンテンツを、前記第１コンテンツから前記第２コンテンツに入れ替えて前記第２記憶手段に記憶させる制御手段と、
を備える前記第１ノード装置と、
を含むことを特徴とする配信システム。
【請求項２】
前記第１ノード装置は、
前記第２記憶手段に記憶された前記第１コンテンツのハッシュ値を取得する第２取得手段と、
前記第２記憶手段に記憶された前記第２識別情報と、前記第２取得手段により取得されたハッシュ値と、前記第１ノード装置の所在を示す前記所在情報と、を前記情報処理装置へ送信する第３送信手段と、
を更に備え、
前記情報処理装置は、
前記第２コンテンツのハッシュ値を取得する第３取得手段と、
前記第１ノード装置から送信された前記第１識別情報、ハッシュ値及び前記所在情報を受信する第２受信手段と、
前記第３取得手段により取得されたハッシュ値と、前記第２受信手段により受信されたハッシュ値と、が一致するかを判定する判定手段と、
を更に備え、
前記第１記憶手段は、前記第２受信手段により受信された前記第２識別情報と前記所在情報とを対応付けて記憶し、
前記許可手段は、前記判定手段により一致すると判定された場合、前記第２受信手段により受信された前記所在情報の送信を許可し、
前記第２送信手段は、前記判定手段により一致しないと判定された場合、前記第２受信手段により受信された前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可される前記第２コンテンツの保存の指示を示す前記指示情報を、前記第１ノード装置へ送信することを特徴とする請求項１に記載の配信システム。
【請求項３】
前記情報処理装置は、
前記判定手段により一致しないと判定された場合、前記受信手段により受信された前記第２識別情報に対応する前記所在情報のうち、前記送信手段による送信が許可された前記所在情報の数が、予め設定された数以上であるかを判定する第２判定手段を更に備え、
前記第２送信手段は、前記第２判定手段により前記予め設定された数以上であると判定された場合、前記指示情報を送信せず、
前記制限手段は、前記第２判定手段により前記予め設定された数以上であると判定された場合、前記第２受信手段により受信された前記所在情報の送信を制限することを特徴とする請求項１または請求項２に記載の配信システム。
【請求項４】
前記第１記憶手段は、複数のコンテンツにより構成される複合コンテンツを識別する前記第１識別情報と、前記複合コンテンツを保存する前記ノード装置の所在を示す前記所在情報と、を対応付けて記憶し、
前記第１送信手段は、前記複合コンテンツを要求する前記第２ノード装置へ、要求された前記複合コンテンツを識別する前記第１識別情報を送信し、
前記取得手段は、前記第１コンテンツを構成要素とする前記複合コンテンツである第１複合コンテンツを識別する前記第２識別情報を取得し、
前記許可手段は、前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可した場合、前記第１複合コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可し、
前記第２記憶手段は、前記第１複合コンテンツと、前記第２識別情報と、を対応付けて記憶することを特徴とする請求項１から請求項３の何れか一項に記載の配信システム。
【請求項５】
ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムに含まれる情報処理装置であって、
コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する第１記憶手段と、
コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する前記第１識別情報に対応する前記所在情報を送信する第１送信手段と、
配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得手段と、
前記取得手段により取得された前記第２識別情報に対応する前記所在情報を前記第１送信手段が送信することを制限する制限手段と、
前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信手段と、
前記第２送信手段により送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可する許可手段と、
を備えることを特徴とする情報処理装置。
【請求項６】
ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムにおける情報処理方法であって、
前記配信システムに含まれる情報処理装置が、コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する第１識別情報に対応する所在情報であり、コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する記憶手段に記憶された所在情報を送信する第１送信ステップと、
前記情報処理装置が、配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得ステップと、
前記情報処理装置が、前記取得ステップにおいて取得された前記第２識別情報に対応する前記所在情報を前記第１送信ステップにおいて送信することを制限する制限ステップと、
前記情報処理装置が、前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信ステップと、
前記情報処理装置が、前記第２送信ステップにおいて送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信ステップにおいて送信することを許可する許可ステップと、
前記第１ノード装置が、前記情報処理装置から送信された前記指示情報を受信する受信ステップと、
前記第１ノード装置が、前記受信ステップにおいて受信された前記指示情報に基づいて、前記第１コンテンツと、前記第２識別情報と、を対応付けて記憶する第２記憶手段に記憶されたコンテンツのうち、前記指示情報に含まれる前記第２識別情報に対応するコンテンツを、前記第１コンテンツから前記第２コンテンツに入れ替えて前記第２記憶手段に記憶させる制御ステップと、
を含むことを特徴とする情報処理方法。
【請求項７】
ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムに含まれる情報処理装置に含まれるコンピュータに、
コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する第１識別情報に対応する所在情報であり、コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する記憶手段に記憶された所在情報を送信する第１送信ステップと、
配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得ステップと、
前記取得ステップにおいて取得された前記第２識別情報に対応する前記所在情報を前記第１送信ステップにおいて送信することを制限する制限ステップと、
前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信ステップと、
前記第２送信ステップにおいて送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信ステップにおいて送信することを許可する許可ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーバーレイネットワークを利用する通信システムの技術分野に関する。
【背景技術】
【０００２】
近年、オーバーレイネットワークを用いた通信システムが注目されている。具体的には、オーバーレイネットワークを用いた通信システムの中に、ピアツーピア方式の通信システムがある。このピアツーピア方式の通信システムにおいては、複数のノード装置に分散して保存された複数のコンテンツを、オーバーレイネットワークを介して配信することができる。オーバーレイネットワークを介して配信可能なコンテンツについての情報は、例えば、コンテンツカタログ情報に記述されている。このコンテンツカタログ情報は、全てのノード装置に配信される。コンテンツカタログ情報については、例えば、特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２８０３０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、何らかの理由で、あるコンテンツの配信を停止しなければならない場合がある。その理由としては、例えば、著作権上の理由等が挙げられる。このとき、コンテンツの配信を停止するためには、コンテンツカタログ情報を更新し、更新されたコンテンツカタログ情報を全てのノード装置に送信する必要がある。あるいは、全てのノード装置に、コンテンツの配信を停止する旨を示すメッセージを送信する必要がある。このような処理を行うと、コンテンツの配信停止が頻繁に発生した場合に、ネットワークに大量のメッセージが送信される。そのため、ネットワークの帯域が、コンテンツの配信を停止するためのメッセージで消費されてしまうという問題があった。
【０００５】
また、コンテンツの配信を停止した後、配信を停止したコンテンツに代わって別のコンテンツの配信を開始させる場合がある。この場合も同様に、ネットワークの帯域が、コンテンツの配信を開始するためのメッセージで消費されてしまうという問題があった。
【０００６】
そこで、本発明は、以上の点に鑑みてなされたものである。本発明は、コンテンツの配信を停止したり、別のコンテンツで配信を再開したりする場合に、ネットワークの帯域の消費を減らすことができる配信システム、情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の発明は、ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムであって、コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する第１記憶手段と、コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する前記第１識別情報に対応する前記所在情報を送信する第１送信手段と、配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得手段と、前記取得手段により取得された前記第２識別情報に対応する前記所在情報を前記第１送信手段が送信することを制限する制限手段と、前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信手段と、前記第２送信手段により送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可する許可手段と、を備える情報処理装置と、前記第１コンテンツと、前記第２識別情報と、を対応付けて記憶する第２記憶手段と、前記情報処理装置から送信された前記指示情報を受信する受信手段と、前記受信手段により受信された前記指示情報に基づいて、前記指示情報に含まれる前記第２識別情報に対応するコンテンツを、前記第１コンテンツから前記第２コンテンツに入れ替えて前記第２記憶手段に記憶させる制御手段と、を備える前記第１ノード装置と、を含むことを特徴とする。
【０００８】
この発明によれば、情報処理装置は、配信停止対象のコンテンツを要求する第２ノード装置へ、配信停止対象のコンテンツを保存する第１ノード装置の所在情報の送信を制限する。これにより、コンテンツの配信を停止させることができる。そのため、情報処理装置は、コンテンツの配信を停止するためのメッセージをノード装置へ送信する必要がない。また、配信停止対象のコンテンツと入れ替わるコンテンツとして、配信が許可されたコンテンツの配信が開始される。このとき、情報処理装置は、配信停止対象のコンテンツを保存する第１ノード装置へ、指示情報を送信する。指示情報を受信した第１ノード装置は、保存するコンテンツを、配信が停止されたコンテンツから配信が許可されたコンテンツに入れ替える。そのため、情報処理装置は、配信を停止したコンテンツを保存するノード装置へ、コンテンツの配信を許可するためのメッセージを送信すれば良い。従って、ネットワークの帯域の消費を減らすことができる。
【０００９】
請求項２に記載の発明は、前記第１ノード装置は、前記第２記憶手段に記憶された前記第１コンテンツのハッシュ値を取得する第２取得手段と、前記第２記憶手段に記憶された前記第２識別情報と、前記第２取得手段により取得されたハッシュ値と、前記第１ノード装置の所在を示す前記所在情報と、を前記情報処理装置へ送信する第３送信手段と、を更に備え、前記情報処理装置は、前記第２コンテンツのハッシュ値を取得する第３取得手段と、前記第１ノード装置から送信された前記第１識別情報、ハッシュ値及び前記所在情報を受信する第２受信手段と、前記第３取得手段により取得されたハッシュ値と、前記第２受信手段により受信されたハッシュ値と、が一致するかを判定する判定手段と、を更に備え、前記第１記憶手段は、前記第２受信手段により受信された前記第２識別情報と前記所在情報とを対応付けて記憶し、前記許可手段は、前記判定手段により一致すると判定された場合、前記第２受信手段により受信された前記所在情報の送信を許可し、前記第２送信手段は、前記判定手段により一致しないと判定された場合、前記第２受信手段により受信された前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可される前記第２コンテンツの保存の指示を示す前記指示情報を、前記第１ノード装置へ送信することを特徴とする。
【００１０】
この発明によれば、配信が許可されたコンテンツの配信が開始された後、例えば、オーバーレイネットワークに参加してきた第１ノード装置が、保存しているコンテンツの情報を情報処理装置に送信する場合がある。このとき、情報処理装置は、コンテンツのハッシュ値に基づいて、配信が停止されたコンテンツであるか配信が許可されたコンテンツであるかを判定を行う。そして、情報処理装置は、配信が停止されたコンテンツを第１ノード装置が保存していると判定した場合には、配信が許可された第２コンテンツを第１ノード装置に保存させる。そのため、オーバーレイネットワークに保存されるコンテンツの整合をとることができる。
【００１１】
請求項３に記載の発明は、前記情報処理装置は、前記判定手段により一致しないと判定された場合、前記受信手段により受信された前記第２識別情報に対応する前記所在情報のうち、前記送信手段による送信が許可された前記所在情報の数が、予め設定された数以上であるかを判定する第２判定手段を更に備え、前記第２送信手段は、前記第２判定手段により前記予め設定された数以上であると判定された場合、前記指示情報を送信せず、前記制限手段は、前記第２判定手段により前記予め設定された数以上であると判定された場合、前記第２受信手段により受信された前記所在情報の送信を制限することを特徴とする。
【００１２】
配信が許可されたコンテンツを保存している第１ノード装置の数が予め設定された数以上であったとする。この発明によれば、この場合、情報処理装置は、配信が停止されたコンテンツを保存している第１ノード装置に、配信が許可されたコンテンツを保存させるための指示情報を送信しない。また、情報処理装置は、配信が停止されたコンテンツを保存している第１ノード装置の所在情報の第２ノード装置への送信を制限する。そのため、ネットワークの帯域の消費を減らしながら、配信の停止対象であるコンテンツの配信の停止と、配信が許可されたコンテンツの配信を可能することができる。
【００１３】
請求項４に記載の発明は、前記第１記憶手段は、複数のコンテンツにより構成される複合コンテンツを識別する前記第１識別情報と、前記複合コンテンツを保存する前記ノード装置の所在を示す前記所在情報と、を対応付けて記憶し、前記第１送信手段は、前記複合コンテンツを要求する前記第２ノード装置へ、要求された前記複合コンテンツを識別する前記第１識別情報を送信し、前記取得手段は、前記第１コンテンツを構成要素とする前記複合コンテンツである第１複合コンテンツを識別する前記第２識別情報を取得し、前記許可手段は、前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可した場合、前記第１複合コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可し、前記第２記憶手段は、前記第１複合コンテンツと、前記第２識別情報と、を対応付けて記憶することを特徴とする。
【００１４】
この発明によれば、配信が停止されたコンテンツを構成要素に含む複合コンテンツの配信の停止や再開の場合にも、ネットワークの帯域の消費を減らすことができる。
【００１５】
請求項５に記載の発明は、ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムに含まれる情報処理装置であって、コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する第１記憶手段と、コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する前記第１識別情報に対応する前記所在情報を送信する第１送信手段と、配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得手段と、前記取得手段により取得された前記第２識別情報に対応する前記所在情報を前記第１送信手段が送信することを制限する制限手段と、前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信手段と、前記第２送信手段により送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信手段が送信することを許可する許可手段と、を備えることを特徴とする。
【００１６】
請求項６に記載の発明は、ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムにおける情報処理方法であって、前記配信システムに含まれる情報処理装置が、コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する第１識別情報に対応する所在情報であり、コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する記憶手段に記憶された所在情報を送信する第１送信ステップと、前記情報処理装置が、配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得ステップと、前記情報処理装置が、前記取得ステップにおいて取得された前記第２識別情報に対応する前記所在情報を前記第１送信ステップにおいて送信することを制限する制限ステップと、前記情報処理装置が、前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信ステップと、前記情報処理装置が、前記第２送信ステップにおいて送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信ステップにおいて送信することを許可する許可ステップと、前記第１ノード装置が、前記情報処理装置から送信された前記指示情報を受信する受信ステップと、前記第１ノード装置が、前記受信ステップにおいて受信された前記指示情報に基づいて、前記第１コンテンツと、前記第２識別情報と、を対応付けて記憶する第２記憶手段に記憶されたコンテンツのうち、前記指示情報に含まれる前記第２識別情報に対応するコンテンツを、前記第１コンテンツから前記第２コンテンツに入れ替えて前記第２記憶手段に記憶させる制御ステップと、を含むことを特徴とする。
【００１７】
請求項７に記載の発明は、ネットワークに接続する複数のノード装置に分散して保存されるコンテンツが、前記複数のノード装置により構成されるオーバーレイネットワークを介して配信される配信システムに含まれる情報処理装置に含まれるコンピュータに、コンテンツを要求する前記ノード装置である第２ノード装置へ、要求されたコンテンツを識別する第１識別情報に対応する所在情報であり、コンテンツを保存する前記ノード装置である第１ノード装置の所在を示す所在情報と、前記所在情報が所在を示す第１ノード装置により保存されたコンテンツを識別する第１識別情報と、を対応付けて記憶する記憶手段に記憶された所在情報を送信する第１送信ステップと、配信の停止が指示されたコンテンツである第１コンテンツを識別する第２識別情報を取得する取得ステップと、前記取得ステップにおいて取得された前記第２識別情報に対応する前記所在情報を前記第１送信ステップにおいて送信することを制限する制限ステップと、前記第２識別情報により識別されるコンテンツとして、前記第１コンテンツと入れ替わって配信が許可された第２コンテンツの保存の指示を示す指示情報であり、前記第２識別情報を含む指示情報を、前記第２識別情報に対応する前記所在情報が所在を示す前記第１ノード装置へ送信する第２送信ステップと、前記第２送信ステップにおいて送信された前記指示情報に基づいて前記第２コンテンツを保存する前記第１ノード装置の所在を示す前記所在情報を前記第１送信ステップにおいて送信することを許可する許可ステップと、を実行させることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、情報処理装置は、配信停止対象のコンテンツを要求する第２ノード装置へ、配信停止対象のコンテンツを保存する第１ノード装置の所在情報の送信を制限する。これにより、コンテンツの配信を停止させることができる。そのため、情報処理装置は、コンテンツの配信を停止するためのメッセージをノード装置へ送信する必要がない。また、配信停止対象のコンテンツと入れ替わるコンテンツとして、配信が許可されたコンテンツの配信が開始される。このとき、情報処理装置は、配信停止対象のコンテンツを保存する第１ノード装置へ、指示情報を送信する。指示情報を受信した第１ノード装置は、保存するコンテンツを、配信が停止されたコンテンツから配信が許可されたコンテンツに入れ替える。そのため、情報処理装置は、配信を停止したコンテンツを保存するノード装置へ、コンテンツの配信を許可するためのメッセージを送信すれば良い。従って、ネットワークの帯域の消費を減らすことができる。
【図面の簡単な説明】
【００１９】
【図１】一実施形態の配信システムの概要構成例を示す図である。
【図２】（Ａ）は、一実施形態の配信システムＳの通常コンテンツの配信停止時における動作概要を示す図であり、（Ｂ）は、一実施形態の配信システムＳの通常コンテンツの更新時における動作概要を示す図である。
【図３】（Ａ）は、一実施形態の配信システムＳにおいて保持ノードがオーバーレイネットワークＯＮに参加した場合の動作概要を示す図であり、（Ｂ）は、一実施形態の配信システムＳにおいて配信停止したコンテンツを構成要素とする複合コンテンツが存在する場合の動作概要を示す図である。
【図４】（Ａ）は、センターサーバＳＳの概要構成例を示すブロック図であり、（Ｂ）は、ノードの概要構成例を示すブロック図である。
【図５】一実施形態のセンターサーバＳＳの制御部１の処理例を示すフローチャートである。
【図６】一実施形態のノードの制御部１１の処理例を示すフローチャートである。
【図７】一実施形態のノードの制御部１１の処理例を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、配信システムに本発明を適用した場合の実施形態である。
【００２１】
［１．配信システムの構成及び動作概要］
始めに、図１を参照して、本実施形態の配信システムの構成及び動作概要について説明する。図１は、本実施形態の配信システムの概要構成例を示す図である。図１に示すように、本実施形態の配信システムＳは、センターサーバＳＳ、及びノード装置Ｎｎ（ｎ＝１，２，３・・・ｋ）等により構成されている。ノード装置Ｎｎを、以下、「ノード」という。また、センターサーバＳＳ及びノードはネットワークＮＷに接続されている。ネットワークＮＷは、インターネット等からなる。
【００２２】
また、図１に示すように、配信システムＳには、複数の拠点Ｐｎごとに拠点ネットワークＮＬｎが構築されている。この拠点の例としては、例えばカラオケ店舗、学校、会社、住宅、またはその他の施設等が挙げられる。拠点ネットワークＮＬｎは、例えば、通信手段としてのＬＡＮ（Local Area Network）等のプライベートネットワークである。
【００２３】
また、各拠点ネットワークＮＬｎには、ノードと複数の拠点端末Ｔｎ−ｌ（ｌ＝１，２，３・・・ｊ）とが接続されている。ノードは、同じ拠点ネットワークＮＬｎに接続されている拠点端末Ｔｎ−ｌへコンテンツを提供するエッジサーバとしての機能を有する。一方、拠点端末Ｔｎ−ｌは、コンテンツを再生する機能を有する。例えば、拠点Ｐｎがカラオケ店舗の場合、拠点端末Ｔｎ−ｌは、カラオケ用のコンテンツを再生するコマンダである。また、例えば拠点Ｐｎが学校である場合、教材用のコンテンツを再生する視聴端末である。また、例えば拠点Ｐｎが会社である場合、研修用のコンテンツを再生する視聴端末である。また、例えば拠点Ｐｎが住宅である場合、放送番組用のコンテンツを再生するセットトップボックスである。
【００２４】
また、図１に示すように、配信システムＳには、ネットワークＮＷを介して互いに通信可能な複数のノードの参加によりオーバーレイネットワークＯＮが構成されている。オーバーレイネットワークＯＮは、仮想的なリンクを構成する論理的なネットワークである。オーバーレイネットワークＯＮは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。なお、分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。ここで、オーバーレイネットワークＯＮに参加するとは、ＤＨＴを用いたルーティングテーブルに基づいてオーバーレイネットワークＯＮを介して他のノードとの間で各種メッセージを送受信できる状態に稼動することをいう。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。また、オーバーレイネットワークＯＮに参加している各ノードには、ノードＩＤが付与されている。このノードＩＤは、ノードを、オーバーレイネットワークＯＮに参加しているノードの中から識別する固有の識別情報である。
【００２５】
配信システムＳにおいては、様々なコンテンツが複数のノードに分散して保存される。各コンテンツには、それぞれコンテンツＩＤが付与されている。コンテンツＩＤは、コンテンツを、オーバーレイネットワークＯＮに保存されるコンテンツの中から識別する固有の識別情報である。なお、コンテンツＩＤは、本発明における第１識別情報の一例である。センターサーバＳＳは、コンテンツをオーバーレイネットワークＯＮに投入する。コンテンツの投入とは、コンテンツを何れかのノードに保存させ、保存されたコンテンツを、各ノードがオーバーレイネットワークＯＮから取得可能にすることである。各コンテンツのコンテンツＩＤ等の属性情報は、コンテンツカタログ情報に記述されている。コンテンツカタログ情報は、センターサーバＳＳにより作成される。そして、センターサーバＳＳが、コンテンツカタログ情報を全てのノードに配信する。
【００２６】
また、配信システムＳにおいては、複数のコンテンツにより構成される複合コンテンツが投入される場合がある。また、複合コンテンツではないコンテンツは、通常コンテンツである。例えば、拠点Ｐｎがカラオケ店舗の場合、複合コンテンツとしては、カラオケ用のコンテンツが挙げられる。カラオケ用のコンテンツは、例えば、音楽データ、映像データ、歌詞データ等の通常コンテンツにより構成される。
【００２７】
また、各通常コンテンツは、複数のデータに分割されている。通常コンテンツから分割されたデータを、「チャンク」という。各チャンクは、例えば、センターサーバＳＳにより、通常コンテンツを所定のデータサイズで分割することにより生成される。各チャンクは、複数のノードに分散されて保存される。これにより、元となる通常コンテンツが複数のノードに分散して保存されることになる。各チャンクのオリジナルは、センターサーバＳＳに保存されている。各チャンクには、それぞれシーケンス番号及びチャンクＩＤが付与されている。シーケンス番号は、例えば、分割された複数のチャンクを、元となる通常コンテンツを構成するように並べたときの並び順に相当する。チャンクＩＤは、チャンクを、オーバーレイネットワークＯＮに保存されるチャンクの中から識別する固有の識別情報である。
【００２８】
通常コンテンツを構成する各チャンクのシーケンス番号及びチャンクＩＤは、通常コンテンツのメタファイルに記述されている。通常コンテンツのメタファイルには、通常コンテンツのコンテンツＩＤが付与される。コンテンツＩＤが付与されたメタファイルは、チャンクと同様に、オーバーレイネットワークＯＮに投入される。そして、メタファイルは、複数のノードに分散されて保存される。なお、メタファイルを保存しているノードを、「メタファイルの保持ノード」という。また、チャンクを保存しているノードを、「チャンクの保持ノード」という。また、メタファイルまたはチャンクの所在を示す情報は、インデックス情報として、コンテンツの所在を管理しているノードに記憶される。メタファイルまたはチャンクの所在を管理しているノードを、以下、「ルートノード」という。メタファイルのインデックス情報には、メタファイルを保存している保持ノードのノード情報と、メタファイルのコンテンツＩＤとの組が含まれる。ノード情報には、例えば、保持ノードのＩＰアドレス、ポート番号、及びノードＩＤが含まれる。ルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤが割り当てられたノードであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。なお、保持ノードは、本発明における第１ノード装置の一例である。また、保持ノードのＩＰアドレスは、本発明における所在情報の一例である。また、ルートノードは、本発明における情報処理装置の一例である。
【００２９】
複合コンテンツを構成する各コンテンツのコンテンツＩＤは、複合コンテンツのメタファイルに記述されている。複合コンテンツのメタファイルとは、複合コンテンツを構成する各コンテンツを検索するためのファイルである。複合コンテンツのメタファイルには、複合コンテンツのコンテンツＩＤが付与される。なお、複数の複合コンテンツにより構成される複合コンテンツがオーバーレイネットワークＯＮに投入されても良い。この場合、複合コンテンツのメタファイルには、複合コンテンツを構成する各複合コンテンツのコンテンツＩＤが記述される。
【００３０】
ノードが、ある通常コンテンツまたは複合コンテンツをオーバーレイネットワークＯＮから取得する場合、ノードは、先ず、コンテンツのメタファイルを取得する。コンテンツを取得するノードを、以下、「ユーザノード」という。ユーザノードは、取得するメタファイルの保持ノードを検索する。具体的に、ユーザノードは、検索メッセージを送信する。検索メッセージは、取得対象のメタファイルの所在をメタファイルのルートノードに問い合わせるためのメッセージである。検索メッセージには、取得対象のメタファイルのコンテンツＩＤが含まれる。ルートノードは、受信した検索メッセージに含まれるコンテンツＩＤに対応するインデックス情報をインデックス情報キャッシュから取得する。ルートノードは、取得したインデックス情報を、検索メッセージの送信元のユーザノードに返信する。これにより、ユーザノードは、ルートノードから保持ノードのＩＰアドレス等を受信する。そして、ユーザノードは、保持ノードにアクセスし、メタファイルをダウンロードする。なお、コンテンツの所在をルートノードに問い合わせる処理は、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。
【００３１】
ユーザノードは、保持ノードからメタファイルを取得したとき、メタファイルを公開する。メタファイルの公開とは、ユーザノードが取得したメタファイルを、オーバーレイネットワークＯＮから取得可能にすることをいう。具体的に、ユーザノードは、取得したメタファイルを保存する。そして、ユーザノードは、ルートノードへパブリッシュメッセージを送信する。パブリッシュメッセージは、メタファイルを保存したことをルートノードへ通知するためのメッセージである。パブリッシュメッセージは、保存したメタファイルのコンテンツＩＤと、メタファイルを保存したユーザノードのノード情報とを含む。また、パブリッシュメッセージは、後述する更新確認情報を含む。ルートノードは、受信したパブリッシュメッセージに含まれるコンテンツＩＤとノード情報との組を含むインデックス情報を、インデックス情報キャッシュに記憶する。こうして、ユーザノードは、新たに、メタファイルを保存する保持ノードとなる。
【００３２】
ユーザノードが取得したメタファイルが、複合コンテンツのメタファイルである場合、ユーザノードは、メタファイルから、複合コンテンツを構成する各通常コンテンツのコンテンツＩＤを取得する。そして、ユーザノードは、取得したコンテンツＩＤに基づいて、各通常コンテンツのメタファイルをオーバーレイネットワークＯＮから取得する。
【００３３】
ユーザノードが取得したメタファイルが、通常コンテンツのメタファイルである場合、ユーザノードは、メタファイルから、通常コンテンツを構成する各チャンクのチャンクＩＤを取得する。そして、ユーザノードは、取得したチャンクＩＤに基づいて、各チャンクをオーバーレイネットワークＯＮから取得する。なお、チャンクの取得方法は、基本的にメタファイルの取得方法と同様である。そのため、チャンクの取得方法の詳しい説明を省略する。なお、チャンクの取得の場合、コンテンツＩＤではなく、チャンクＩＤが用いられる。
【００３４】
ところで、オーバーレイネットワークＯＮに投入されている複数のコンテンツの中から、あるコンテンツの配信を停止したい場合がある。例えば、あるコンテンツが著作権に違反するコンテンツである場合、著作権に違反するコンテンツの配信を停止する必要がある。このときに、センターサーバＳＳが、全てのノードに配信を停止する旨を示すメッセージを送信したとする。この場合、ノードの数が多かったり、配信停止が頻繁に発生したりすると、ネットワークＮＷの帯域が、配信を停止するためのメッセージで消費されてしまう。そこで、配信システムＳにおいては、コンテンツの配信の停止等の制御を、コンテンツのメタファイルのルートノードが行う。これにより、配信を停止するためのメッセージによる帯域の消費を減らすようになっている。
【００３５】
メタファイルのルートノードは、メタファイルのインデックス情報と対応付けて、紹介状態を記憶する。紹介状態は、インデックス情報に設定されているコンテンツＩＤに対応するメタファイルの保持ノードを紹介することが可能か等を示す情報である。具体的に、紹介状態は、インデックス情報に設定されているノードＩＤに対応する保持ノードを紹介することが可能か等を示す情報である。保持ノードの紹介とは、ルートノードが、ユーザノードからの検索メッセージに対して、保持ノードのインデックス情報をユーザノードに送信することである。紹介状態は、インデックス情報ごとに記憶される。紹介状態としては、「紹介可能」、「紹介停止中」及び「紹介不可」がある。「紹介可能」は、保持ノードの紹介が可能であることを示す。つまり、ルートノードは、対応するインデックス情報の送信を許可する。「紹介停止中」は、保持ノードの紹介を停止していることを示す。つまり、ルートノードは、対応するインデックス情報の送信を制限する。あるメタファイルについて、全ての保持ノードの紹介が停止されている場合、ルートノードは、そのメタファイルのインデックス情報を１つもユーザノードに送信しないことになる。そのため、ユーザノードは、メタファイルを取得するために必要な保持ノードのＩＰアドレス等を取得することができない。これにより、コンテンツの配信が停止される。「紹介不可」は、保持ノードの紹介が不可能であることを示す。この場合も、ルートノードは、対応するインデックス情報の送信を制限する。「紹介停止中」と「紹介不可」との違いは、保持ノードが記憶しているメタファイルの整合性に基づく。保持ノードが記憶しているメタファイルの整合性については、後述する。
【００３６】
図２（Ａ）は、本実施形態の配信システムＳの通常コンテンツの配信停止時における動作概要を示す図である。図２（Ａ）に示すように、ノードＮ２〜Ｎ４は、通常コンテンツであるコンテンツＦ１のメタファイルＭ１の保持ノードである。メタファイルＭ１には、コンテンツＦ１のコンテンツＩＤとして、例えば、３２１３が付与されている。説明の便宜上、コンテンツＩＤを、４桁の十進数で示す。ノードＮ１は、メタファイルＭ１のルートノードである。ノードＮ１は、ノードＮ２〜Ｎ４のインデックス情報を記憶する。また、ノードＮ１は、ノードＮ２〜Ｎ４のインデックス情報にそれぞれ対応付けて、「紹介可能」が設定された紹介状態を記憶する。なお、図２（Ａ）においては、「紹介可能」を「○」で示している。また、ノードＮ１は、メタファイルＭ１自体も記憶する。
【００３７】
ここで、例えば、コンテンツＦ１が著作権に違反することが判明したとする。すると、配信システムＳの管理者は、例えば、コンテンツＦ１のコンテンツＩＤとして、３２１３をセンターサーバＳＳに入力する。すると、センターサーバＳＳは、配信停止通知メッセージを、コンテンツＦ１のメタファイルＭ１のルートノードであるノードＮ１へ送信する  （図２（Ａ）（１））。配信停止通知メッセージは、コンテンツの配信を停止することを通知するメッセージである。配信停止通知メッセージは、配信の停止対象となるコンテンツのコンテンツＩＤを含む。配信の停止対象となるコンテンツのコンテンツＩＤは、本発明における第１識別情報の一例である。なお、センターサーバＳＳは、オーバーレイネットワークＯＮに参加していない。そのため、センターサーバＳＳは、予め定められたノードにメッセージを送信する。センターサーバＳＳからメッセージを受信する予め定められたノードを、「サポーターノード」という。サポーターノードは、センターサーバＳＳから受信したメッセージを、ＤＨＴルーティングに従って他のノードへ転送する。
【００３８】
ノードＮ１は、配信停止通知メッセージを受信すると、配信停止通知メッセージに含まれるコンテンツＩＤに対応するインデックス情報を検索する。これにより、ノードＮ１は、ノードＮ２〜Ｎ４のインデックス情報を発見する（図２（Ａ）（２））。そして、ノードＮ１は、ノードＮ２〜Ｎ４のインデックス情報に対応する紹介状態を、「紹介停止中」に変更する。なお、図２（Ａ）においては、「紹介停止中」を「△」で示している。
【００３９】
その後、ノードＮ５が、取得するコンテンツのコンテンツＩＤとして、３２１３を含む検索メッセージをノードＮ１へ送信したとする（図２（Ａ）（３））。この場合、ノードＮ１は、ノードＮ２〜Ｎ４のインデックス情報から、紹介状態が「紹介可能」に設定されているインデックス情報を検索する。しかしながら、該当するインデックス情報は発見されない。そのため、ノードＮ１は、インデックス情報の送信を制限する。例えば、ノードＮ１は、ノードＮ５へエラー応答メッセージを送信する。エラー応答メッセージは、送信可能なインデックス情報がないことを示すエラーメッセージである。
【００４０】
このように、コンテンツの配信を停止させる場合、センターサーバＳＳは、メッセージをルートノードのみに送信すれば良い。そのため、ネットワークＮＷの帯域の消費を減らすことができる。
【００４１】
なお、コンテンツＦ１の配信を停止するとともに、コンテンツＦ１をオーバーレイネットワークＯＮから削除したいとする。この場合、センターサーバＳＳは、配信停止通知メッセージの代わりに、削除通知メッセージをノードＮ１へ送信する。削除通知メッセージは、コンテンツを削除することを通知するメッセージである。削除通知メッセージは、削除対象となるコンテンツのコンテンツＩＤを含む。ノードＮ１は、削除通知メッセージを受信すると、配信停止通知メッセージを受信した場合と同様に、ノードＮ２〜Ｎ４のインデックス情報に対応する紹介状態を、「紹介停止中」に変更する。また、ノードＮ１は、ノードＮ２〜Ｎ４に、削除要求メッセージを送信する。削除要求メッセージは、コンテンツの削除の要求を示すメッセージである。削除要求メッセージは、削除対象となるコンテンツのコンテンツＩＤを含む。ノードＮ２〜Ｎ４は、削除要求メッセージを受信すると、削除要求メッセージに含まれるコンテンツＩＤに対応するメタファイルＭ１を削除する。
【００４２】
また、コンテンツＦ１の配信を停止した後、配信を再開させたい場合ある。例えば、著作権に違反する可能性があるとして、図２（Ａ）に示した処理により、コンテンツＦ１の配信が停止される。その後、コンテンツの配信事業者が調査した結果、コンテンツＦ１は著作権に違反しないと判明した場合である。この場合、センターサーバＳＳは、配信再開通知メッセージをノードＮ１へ送信する。配信再開通知メッセージは、コンテンツの配信を再開することを通知するメッセージである。配信再開通知メッセージは、配信の再開対象となるコンテンツのコンテンツＩＤを含む。ノードＮ１は、配信再開通知メッセージを受信すると、配信停止通知メッセージを受信した場合と同様に、ノードＮ２〜Ｎ４のインデックス情報を検索する。そして、ノードＮ２〜Ｎ４のインデックス情報に対応する紹介状態を、「紹介可能」に変更する。
【００４３】
図２（Ｂ）は、本実施形態の配信システムＳの通常コンテンツの更新時における動作概要を示す図である。図２（Ａ）に示した処理によりコンテンツの配信が停止された後、配信が停止されたコンテンツの更新を行うとする。そして、更新されたコンテンツを配信させるとする。コンテンツの更新とは、オーバーレイネットワークを介して配信されるコンテンツを、配信が停止されたコンテンツから、配信が許可されたコンテンツに入れ替えることである。コンテンツの入れ替えの例としては、配信が停止されたコンテンツの代替えとして、別のコンテンツに入れ替えることが挙げられる。また、著作権に違反するコンテンツを、著作権に違反しないように修正することが挙げられる。
【００４４】
コンテンツＦ１をコンテンツＦ２に更新する場合、管理者は、例えば、更新対象のコンテンツＦ１のコンテンツＩＤである３２１３と、コンテンツＦ２と、をセンターサーバＳＳに入力する。すると、センターサーバＳＳは、コンテンツＦ２を複数のチャンクに分割する。そして、センターサーバＳＳは、分割した各チャンクを、オーバーレイネットワークＯＮに投入する。また、センターサーバＳＳは、コンテンツＦ２のメタファイルＭ２を生成する。そして、センターサーバＳＳは、メタファイルＭ２に、入力されたコンテンツＩＤである３２１３を付与する。つまり、配信が許可されたコンテンツに、配信が停止されたコンテンツのコンテンツＩＤが付与される。これにより、複合コンテンツを構成する何れかのコンテンツの更新があった場合でも、複合コンテンツのメタファイルを更新する必要がない。センターサーバＳＳは、更新通知メッセージをノードＮ１へ送信する（図２（Ｂ）（１））。更新通知メッセージは、コンテンツの更新を通知するメッセージである。更新通知メッセージは、コンテンツＦ１及びＦ２のコンテンツＩＤである３２１３と、配信が許可されたコンテンツＦ２のメタファイルであるメタファイルＭ２と、を含む。ノードＮ１は、更新通知メッセージを受信すると、記憶するメタファイルを更新する（図２（Ｂ）（２））。具体的に、ノードＮ１は、更新通知メッセージに含まれるコンテンツＩＤに対応するメタファイルＭ１を削除する。そして、ノードＮ２は、更新通知メッセージに含まれるメタファイルＭ２を、更新通知メッセージに含まれるコンテンツＩＤに対応付けて記憶する。つまり、ノードＮ１は、記憶するメタファイルを、メタファイルＭ１からメタファイルＭ２に入れ替える。
【００４５】
次いで、ノードＮ１は、更新通知メッセージに含まれるコンテンツＩＤに対応するノードＮ２〜Ｎ４のインデックス情報を検索する。そして、ノードＮ１は、検索された各インデックス情報に含まれるＩＰアドレス等に基づいて、ノードＮ２〜Ｎ４へ更新要求メッセージを送信する（図２（Ｂ）（３））。更新要求メッセージは、コンテンツの更新を要求するメッセージである。更新要求メッセージは、更新対象のコンテンツのコンテンツＩＤである３２１３と、メタファイルＭ２と、を含む。なお、更新要求メッセージは、本発明における指示情報の一例である。次いで、ノードＮ１は、ノードＮ２〜Ｎ４のインデックス情報に対応する紹介状態を、「紹介可能」に変更する（図２（Ｂ）（４））。ノードＮ２〜Ｎ４は、更新要求メッセージを受信すると、ノードＮ１の場合と同様に、記憶するコンテンツを、メタファイルＭ１からメタファイルＭ２に更新する（図２（Ｂ）（５））。これにより、各ノードがオーバーレイネットワークＯＮからメタファイルＭ２を取得可能となる。そのため、コンテンツＦ１と入れ替わったコンテンツＦ２の配信が可能となる。
【００４６】
このように、コンテンツの削除、配信再開及び更新時においては、ルートノードは、メッセージを、全てのノードのうち、対象となるコンテンツのメタファイルを記憶するノードのみに送信すれば良い。そのため、ネットワークＮＷの帯域の消費を減らすことができる。
【００４７】
なお、例えば、コンテンツＦ１の一部を修正、変更等してコンテンツＦ２が生成されたとする。この場合、更新通知メッセージや更新要求メッセージには、配信が許可されたコンテンツのメタファイルそのものに代えて、メタファイルの差分を含ませることができる。例えば、センターサーバＳＳは、コンテンツＦ１を構成する各チャンクと、コンテンツＦ２を構成する各チャンクと、を比較する。これにより、センターサーバＳＳは、コンテンツＦ１とコンテンツＦ２との差分を、チャンク単位で特定する。次いで、センターサーバＳＳは、コンテンツＦ２を構成するチャンクのうち、差分に相当するチャンクのチャンクＩＤ及びシーケンス番号等を記述した差分情報を生成する。そして、センターサーバＳＳは、差分情報を含む更新通知メッセージを送信する。ノードＮ１は、更新通知メッセージに含まれる差分情報と、記憶しているメタファイルＭ１と、に基づいて、メタファイルＭ２を生成する。そして、ノードＮ１は、メタファイルＭ２を記憶する。次いで、ノードＮ１は、差分情報を含む更新要求メッセージを送信する。ノードＮ２〜Ｎ４は、ノードＮ１の場合と同様にメタファイルＭ２を生成する。
【００４８】
図３（Ａ）は、本実施形態の配信システムＳにおいて保持ノードがオーバーレイネットワークＯＮに参加した場合の動作概要を示す図である。例えば、メタファイルＭ１を記憶しているノードＮ６が、図３（Ａ）に示すコンテンツの更新前にオーバーレイネットワークＯＮから離脱したとする。オーバーレイネットワークＯＮからの離脱とは、オーバーレイネットワークＯＮに参加していたノードが他のノードと通信することができない状態になったことをいう。ノードが他のノードと通信することができない状態になる場合としては、例えば、ノードの電源がＯＦＦになった場合がある。また、ノードは、ルーティングテーブルを用いて他のノードと通信を行うためのＰ２Ｐプログラムを実行することにより、オーバーレイネットワークＯＮに参加する。管理者からの離脱の指示によって、ノードがＰ２Ｐプログラムの実行を終了させた場合も、ノードが他のノードと通信することができない状態になる場合の一例である。
【００４９】
その後、ノードＮ６は、コンテンツの更新後にオーバーレイネットワークＯＮに再参加したとする（図３（Ａ）（１））。このとき、ノードＮ６が記憶しているメタファイルの整合をとる必要がある。あるコンテンツＩＤが付与されたメタファイルを記憶する複数のノードの全てが、配信が許可されたコンテンツのメタファイルを記憶している場合、記憶しているメタファイルの整合がとれている。また、複数のノードの全てが、配信が停止中のコンテンツのメタファイルを記憶している場合も、記憶しているメタファイルの整合がとれている。一方、配信が許可されたコンテンツのメタファイルを記憶しているノードと、配信が停止されたコンテンツのメタファイルを記憶しているノードと、が混在する場合、記憶しているメタファイルの整合がとれていない。この場合、配信が停止されたコンテンツのメタファイルを記憶しているノードに、配信が許可されたコンテンツのメタファイルを記憶させる必要がある。
【００５０】
ノードＮ６は、オーバーレイネットワークＯＮに参加したとき、パブリッシュメッセージを送信する（図３（Ａ）（２））。これは、新しく参加したノードのインデックス情報を、ルートノードに記憶させるためである。このとき、ノードＮ６は、メタファイルＭ１に対応付けられている更新確認情報を取得する。更新確認情報は、ノードが記憶しているメタファイルが、配信が停止されたコンテンツのメタファイルであるのか、または、配信が許可されたコンテンツのメタファイルであるのか、を判定するために用いられる情報である。更新確認情報としては、例えば、メタファイルのハッシュ値が用いられる。メタファイルのハッシュ値は、全ノードが記憶する共通のハッシュ関数により算出される。ノードＮ６は、更新確認情報を含むパブリッシュメッセージを送信する。
【００５１】
ノードＮ１は、パブリッシュメッセージを受信すると、インデックスキャッシュに、ノードＮ６のインデックス情報を追加して記憶する。また、ノードＮ１は、メタファイルの整合性を判定する（図３（Ａ）（３））。具体的に、ノードＮ１は、記憶しているメタファイルＭ２の更新確認情報として、メタファイルＭ２のハッシュ値を取得する。ノードＮ１は、取得したハッシュ値と、パブリッシュメッセージに含まれるハッシュ値と、を比較する。ノードＮ１は、ハッシュ値が一致する場合には、メタファイルの整合がとれていると判定する。一方、ノードＮ１は、ハッシュ値が一致しない場合には、メタファイルの整合がとれていないと判定する。メタファイルＭ１とメタファイルＭ２は一致しないため、算出されたハッシュ値も一致しない。従って、ノードＮ１は、整合がとれていないと判定する。そこで、ノードＮ１は、ノードＮ６のインデックス情報に対応付けて、「紹介不可」に設定された紹介状態を追加する（図３（Ａ）（４））。なお、図３（Ａ）においては、「紹介不可」を「×」で示している。
【００５２】
次いで、ノードＮ１は、ノードＮ６へ、更新要求メッセージを送信する（図３（Ａ）（５））。更新要求メッセージの内容は、図２（Ｂ）の場合と同様である。次いで、ノードＮ１は、ノードＮ６のインデックス情報に対応する紹介状態を、「紹介可能」に変更する（図２（Ａ）（６））。ノードＮ６は、更新要求メッセージを受信すると、記憶するコンテンツを、メタファイルＭ１からメタファイルＭ２に更新する（図２（Ａ）（７））。
【００５３】
このように、更新確認情報を用いることで、保持ノードが記憶するメタファイルの整合性を保つことができる。なお、更新確認情報は、メタファイルのハッシュ値ではなくても良い。更新確認情報は、ルートノードが記憶するメタファイルの更新情報と比較することで、配信が停止されたメタファイルであるか、または、配信が許可されたメタファイルであるかを判定することができる情報であれば良い。例えば、更新確認情報は、メタファイルのタイムスタンプであっても良い。
【００５４】
なお、メタファイルＭ２を記憶する保持ノードの数が、予め設定された閾値以上である場合には、図３（Ａ）（５）〜図３（Ａ）（７）の処理を行わなくても良い。つまり、ノードＮ１は、更新要求メッセージを送信せず、また、ノードＮ６のインデックス情報に対応する紹介状態を「紹介不可」のままにしても良い。メタファイルＭ２を記憶する保持ノードがある程度の数以上存在すれば、メタファイルＭ２を安定してアップロードすることができるからである。つまり、コンテンツＦ２を安定して配信することができる。また、更新要求メッセージが送信されない分、ネットワークＮＷの帯域の消費を減らすことができる。
【００５５】
その後、ノードＮ１は、ノードＮ６に対して、例えば予め定められたタイミングで更新要求メッセージを送信しても良い。例えば、メタファイルＭ２を記憶する保持ノードの数が閾値未満になったタイミングであっても良い。また例えば、コンテンツＦ２が更新されるタイミングであっても良い。
【００５６】
図３（Ｂ）は、本実施形態の配信システムＳにおいて配信停止したコンテンツを構成要素とする複合コンテンツが存在する場合の動作概要を示す図である。例えば、コンテンツＦ１を構成要素とする複合コンテンツとして、コンテンツＧ１〜Ｇ３が存在するとする。この場合、コンテンツＦ１の配信を停止させるときには、コンテンツＧ１〜Ｇ３の配信を停止させる必要がある。コンテンツＦ１のみの配信を停止させると、例えば、コンテンツＧ１のユーザノードは、コンテンツＧ１を構成するコンテンツのうち、コンテンツＦ１を取得することができないからである。つまり、ユーザノードは、コンテンツＧ１の全体を取得することができないからである。
【００５７】
そこで、センターサーバＳＳは、各コンテンツについて、複合コンテンツリストを記憶する。複合コンテンツリストは、対応するコンテンツを構成要素とする複合コンテンツのコンテンツＩＤが記述されたリストである。センターサーバＳＳは、複合コンテンツを投入するときに、複合コンテンツを構成する各コンテンツの複合コンテンツリストを生成する。このとき、センターサーバＳＳは、あるコンテンツに対応する複合コンテンツリストが既に生成される場合には、既に生成されている複合コンテンツリストに、新たに投入される複合コンテンツのコンテンツＩＤを追加する。
【００５８】
センターサーバＳＳは、コンテンツＦ１の配信を停止する場合、コンテンツＦ１の複合コンテンツリストを参照する。コンテンツＦ１の複合コンテンツリストには、コンテンツＧ１〜Ｇ３のコンテンツＩＤが記述されている。そこで、センターサーバＳＳは、配信停止通知メッセージを、コンテンツＧ１〜Ｇ３のメタファイルのルートノードへ送信する（図３（Ｂ）（１））。図３（Ｂ）に示すように、ノードＮ７は、コンテンツＧ１のメタファイルのルートノードである。また、ノードＮ８は、コンテンツＧ２のメタファイルのルートノードである。また、ノードＮ９は、コンテンツＧ３のメタファイルのルートノードである。ノードＮ７〜Ｎ９にそれぞれ送信される配信停止通知メッセージは、コンテンツＧ１〜Ｇ３のメタファイルのうち何れかのメタファイルのコンテンツＩＤを含む。ノードＮ７〜Ｎ９は、配信停止通知メッセージを受信すると、通常コンテンツのメタファイルの場合と同様に、メタファイルＧ１〜Ｇ３の配信を停止させる。次いで、センターサーバＳＳは、ノードＮ１へ配信停止通知メッセージを送信する（図３（Ｂ）（２））。
【００５９】
なお、複合コンテンツを削除したり、配信を再開したりする場合の配信システムＳの動作も、通常コンテンツの場合と同様である。また、通常コンテンツを更新する場合、センターサーバＳＳは、通常コンテンツのメタファイルのルートノードへ、更新要求メッセージを送信する。そして、センターサーバＳＳは、複合コンテンツのメタファイルのルートノードへ、配信再開通知メッセージを送信する。これにより、配信が許可された新しい通常コンテンツを含む複合コンテンツを配信させることができる。つまり、複合コンテンツが更新される。複合コンテンツの削除及び配信再開時においても、通常コンテンツの場合と同様に、ネットワークＮＷの帯域の消費を減らすことができる。
【００６０】
また、複合コンテンツのメタファイルを更新することによって複合コンテンツを更新することも可能である。例えば、複合コンテンツを構成するコンテンツに新たにコンテンツを追加したり、複合コンテンツを構成するコンテンツの中から何れかのコンテンツを削除したりする場合等が挙げられる。この場合、複合コンテンツのメタファイルを更新する必要がある。複合コンテンツのメタファイルを更新する場合の配信システムＳの動作も、通常コンテンツの場合と同様である。
【００６１】
なお、コンテンツの投入は、センターサーバＳＳからではなく、何れかのノードからでも行うことができるようにしても良い。そして、ノードから投入したコンテンツの配信を停止等することを可能にしても良い。この場合、コンテンツの投入を行うノードの処理内容は、センターサーバＳＳの場合と基本的に同様である。ノードからコンテンツが投入される場合としては、例えば、配信システムＳの利用者が、拠点端末Ｔｎ−ｌを通じてコンテンツを投稿する場合が挙げられる。
【００６２】
また、「紹介可能」、「紹介停止中」、「紹介不可」以外の紹介状態があっても良い。例えば、「著作権違反調査中」があっても良い。「著作権違反調査中」は、例えば、コンテンツが著作権に違反する旨の通報があったため、著作権に違反するか否かを調査している最中であることを示す紹介状態である。紹介状態が「著作権違反調査中」である場合、インデックス情報の送信は制限される。紹介状態が「著作権違反調査中」である場合の配信システムＳの動作は、「紹介停止中」の場合と同様である。
【００６３】
［２．センターサーバの構成］
次に、図４（Ａ）を参照して、センターサーバＳＳの構成について説明する。図４（Ａ）は、センターサーバＳＳの概要構成例を示すブロック図である。センターサーバＳＳは、図４（Ａ）に示すように、制御部１、記憶部２、及び通信部３等を備えて構成される。制御部１、記憶部２、及び通信部３はバス４を介して相互に接続されている。
【００６４】
記憶部２は、例えばハードディスクドライブ等から構成される。記憶部２には、オペレーティングシステム及び各種制御プログラム等が記憶されている。また、記憶部２には、各コンテンツのオリジナル及び各コンテンツのメタファイルが記憶されている。また、記憶部２には、複合コンテンツリストが、複合コンテンツを構成するコンテンツのコンテンツＩＤに対応付けて記憶されている。また、記憶部２には、コンテンツカタログ情報が記憶されている。また、記憶部２には、サポーターノードのノード情報が記憶されている。
【００６５】
通信部３は、ネットワークＮＷを通じてノード等との間の通信制御を行う。制御部１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１は、ＣＰＵが記憶部２等に記憶されたプログラムを読み出して実行することにより、センターサーバＳＳ全体を統括制御する。
【００６６】
［３．ノードの構成］
次に、図４（Ｂ）を参照して、ノードの構成及び機能について説明する。図４（Ｂ）は、ノードの概要構成例を示すブロック図である。ノードは、図４（Ｂ）に示すように、制御部１１、記憶部１２、通信部１３ａ、通信部１３ｂ、及びバッファメモリ１４等を備えて構成される。制御部１１、記憶部１２、通信部１３ａ、通信部１３ｂ、及びバッファメモリ１４はバス１５を介して相互に接続されている。
【００６７】
本実施形態において、ノードは、ネットワークＮＷと拠点ネットワークＮＬｎとの間でＩＰ（Internet Protocol）パケットを中継する中継機器である。この中継機器は、例えばルータまたはＬ３スイッチングハブ等である。なお、ノードは、ユーザが利用する端末装置であっても良い。また、ノードは、基本的にネットワークＮＷに定常的に接続されているゲートウェイ等の機器であっても良い。
【００６８】
記憶部１２は、例えばハードディスクドライブ等から構成される。記憶部１２には、オペレーティングシステム、Ｐ２Ｐプログラム等が記憶されている。Ｐ２Ｐプログラムは、ルーティングテーブルを用いて他のノードと通信を行うためのプログラムである。なお、Ｐ２Ｐプログラム等は、例えば、ネットワークＮＷに接続された所定のサーバからダウンロードされるようにしても良い。あるいは、Ｐ２Ｐプログラム等は、例えば、ＤＶＤ等の記録媒体に記録されて記録媒体のドライブを介して読み込まれるようにしても良い。
【００６９】
また、記憶部１２には、オーバーレイネットワークＯＮで使用されるＤＨＴを用いたルーティングテーブル等が記憶されている。また、記憶部１２には、センターサーバＳＳから配信されたコンテンツカタログ情報が記憶されている。また、記憶部１２には、オーバーレイネットワークＯＮから取得されたメタファイルと、メタファイルの更新確認情報とが、コンテンツＩＤに対応付けて記憶されている。また、記憶部１２には、オーバーレイネットワークＯＮから取得されたチャンクが記憶されている。また、記憶部１２には、インデックス情報及び紹介状態が記憶されている。また、記憶部１２には、センターサーバＳＳのＩＰアドレス及びポート番号が記憶されている。
【００７０】
通信部１３ａは、ネットワークＮＷを通じて、他のノードやセンターサーバＳＳ等との間の通信制御を行う。通信部１３ｂは、拠点ネットワークＮＬｎを通じて拠点端末Ｔｎ−ｌとの間の通信制御を行う。また、バッファメモリ１４は、通信部１３ａを介して受信されたチャンクを一時的に蓄積する。
【００７１】
制御部１１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。また、制御部１１は、時計機能及びタイマ機能を備える。そして、制御部１１は、ＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、本発明における第１送信手段、取得手段、制限手段、第２送信手段、許可手段、受信手段、制御手段、第２取得手段、第３送信手段、第３取得手段、第２受信手段、判定手段及び第２判定手段として機能する。
【００７２】
［４．配信システムの動作］
次に、図５乃至図７を参照して、本実施形態の配信システムＳの動作について説明する。図５は、本実施形態のセンターサーバＳＳの制御部１の処理例を示すフローチャートである。
【００７３】
図５に示す処理は、例えば、センターサーバＳＳの電源がＯＮとされたときに開始される。先ず、制御部１は、配信システムＳの管理者から電源ＯＦＦが要求されたか否かを判定する（ステップＳ１）。このとき、制御部１は、電源ＯＦＦが要求されていないと判定した場合には（ステップＳ１：ＮＯ）、管理者からコンテンツの配信停止が指示されたか否かを判定する（ステップＳ２）。
【００７４】
このとき、制御部１は、配信停止が指示されたと判定した場合には（ステップＳ２：ＹＥＳ）、コンテンツの配信を停止するための処理を行う。先ず、制御部１は、管理者から入力された配信停止対象のコンテンツのコンテンツＩＤを取得する。次いで、制御部１は、取得したコンテンツＩＤに対応する複合コンテンツリストが記憶部２に記憶されているか否かを判定する（ステップＳ３）。このとき、制御部１は、複合コンテンツリストが記憶されていると判定した場合には（ステップＳ３：ＹＥＳ）、複合コンテンツのメタファイルのルートノードへ、配信停止通知メッセージを送信する（ステップＳ４）。具体的に、制御部１は、複合コンテンツリストに記述されたコンテンツＩＤを含む配信停止通知メッセージを送信する。制御部１は、この処理を、複合コンテンツリストに記述されたコンテンツＩＤごとに行う。制御部１は、複合コンテンツリストが記憶されていないと判定した場合（ステップＳ３：ＮＯ）、または、ステップＳ４の処理を終えた場合には、配信停止対象のコンテンツのメタファイルのルートノードへ、配信停止通知メッセージを送信する（ステップＳ５）。具体的に、制御部１は、管理者から取得したコンテンツＩＤを含む配信停止通知メッセージを送信する。制御部１は、ステップＳ５の処理を終えると、ステップＳ１に移行する。
【００７５】
ステップＳ２において、制御部１は、配信停止が指示されていないと判定した場合には（ステップＳ２：ＮＯ）、管理者からコンテンツの削除が指示されたか否かを判定する（ステップＳ６）。このとき、制御部１は、削除が指示されたと判定した場合には（ステップＳ６：ＹＥＳ）、コンテンツを削除するための処理を行う。具体的に、制御部１は、削除対象のコンテンツを構成要素とする複合コンテンツが存在する場合には、複合コンテンツのメタファイルのルートノードへ削除通知メッセージを送信する。また、制御部１は、削除対象のコンテンツのメタファイルのルートノードへ、削除通知メッセージを送信する（ステップＳ７〜Ｓ９）。これらの処理は、送信するメッセージが異なること以外はステップＳ３〜５と同様である。制御部１は、ステップＳ９の処理を終えると、ステップＳ１に移行する。
【００７６】
ステップＳ６において、制御部１は、削除が指示されていないと判定した場合には（ステップＳ６：ＮＯ）、管理者からコンテンツの更新が指示されたか否かを判定する（ステップＳ１０）。このとき、制御部１は、更新が指示されたと判定した場合には（ステップＳ１０：ＹＥＳ）、コンテンツを更新するための処理を行う。先ず、制御部１は、管理者から入力された更新対象のコンテンツのコンテンツＩＤと、配信が許可されたコンテンツと、を取得する。そして、制御部１は、配信が許可されたコンテンツのメタファイルを生成する。次いで、制御部１は、更新対象のコンテンツのメタファイルのルートノードへ、更新通知メッセージを送信する（ステップＳ１１）。このとき、制御部１は、管理者から取得したコンテンツＩＤと、生成したメタファイルと、を含む更新通知メッセージを送信する。次いで、制御部１は、更新対象のコンテンツを構成要素とする複合コンテンツが存在する場合には、複合コンテンツのメタファイルのルートノードへ配信再開通知メッセージを送信する（ステップＳ１２及びＳ１３）。これらの処理は、送信するメッセージが異なること以外はステップＳ３及び４と同様である。制御部１は、複合コンテンツリストが記憶されていないと判定した場合（ステップＳ１２：ＮＯ）、または、ステップＳ１３の処理を終えると、ステップＳ１に移行する。
【００７７】
ステップＳ１０において、制御部１は、更新が指示されていないと判定した場合には（ステップＳ１０：ＮＯ）、管理者からコンテンツの配信再開が指示されたか否かを判定する（ステップＳ１４）。このとき、制御部１は、配信再開が指示されたと判定した場合には（ステップＳ１４：ＹＥＳ）、コンテンツの配信を再開するための処理を行う。具体的に、制御部１は、配信再開対象のコンテンツを構成要素とする複合コンテンツが存在する場合には、複合コンテンツのメタファイルのルートノードへ配信再開通知メッセージを送信する。また、制御部１は、配信再開対象のコンテンツのメタファイルのルートノードへ、配信再開通知メッセージを送信する（ステップＳ１５〜Ｓ１７）。これらの処理は、送信するメッセージが異なること以外はステップＳ３〜５と同様である。制御部１は、ステップＳ１７の処理を終えると、ステップＳ１に移行する。
【００７８】
ステップＳ１４において、制御部１は、配信再開が指示されていないと判定した場合には（ステップＳ１４：ＮＯ）、ステップＳ１に移行する。ステップＳ１において、制御部１は、電源ＯＦＦが要求されたと判定した場合には（ステップＳ１：ＹＥＳ）、図５に示す処理を終了させる。
【００７９】
図６及び図７は、本実施形態のノードの制御部１１の処理例を示すフローチャートである。図６及び図７に示す処理は、例えば、ノードがオーバーレイネットワークＯＮに参加したときに開始される。先ず、制御部１１は、記憶部１２に記憶されている各メタファイルについて、パブリッシュメッセージをルートノードへ送信する（ステップＳ５０）。具体的に、制御部１１は、メタファイルのコンテンツＩＤ、メタファイルの更新確認情報及び保持ノードのノードＩＤを含むパブリッシュメッセージを送信する。
【００８０】
次いで、制御部１１は、センターサーバＳＳからルートノードへ送信されるメッセージを受信したか否かを判定する（ステップＳ５１）。センターサーバＳＳからルートノードへ送信されるメッセージとしては、配信停止通知メッセージ、削除通知メッセージ、更新通知メッセージ、配信再開通知メッセージがある。
【００８１】
このとき、制御部１１は、センターサーバＳＳからのメッセージを受信していないと判定した場合には（ステップＳ５１：ＮＯ）、ステップＳ８０に移行する。一方、制御部１１は、センターサーバＳＳからのメッセージを受信したと判定した場合には（ステップＳ５１：ＹＥＳ）、配信停止通知メッセージを受信したか否かを判定する（ステップＳ５２）。このとき、制御部１１は、配信停止通知メッセージを受信したと判定した場合には（ステップＳ５２：ＹＥＳ）、配信停止通知メッセージからコンテンツＩＤを取得する。次いで、制御部１１は、取得したコンテンツＩＤに対応するインデックス情報を全て検索する。そして、制御部１１は、検索されたインデックス情報に対応する紹介状態を、「紹介停止中」に変更する（ステップＳ５３）。制御部１１は、ステップＳ５３の処理を終えると、ステップＳ８０に移行する。
【００８２】
ステップＳ５２において、制御部１１は、配信停止通知メッセージを受信していないと判定した場合には（ステップＳ５２：ＮＯ）、削除通知メッセージを受信したか否かを判定する（ステップＳ５４）。このとき、制御部１１は、削除通知メッセージを受信したと判定した場合には（ステップＳ５４：ＹＥＳ）、削除通知メッセージからコンテンツＩＤを取得する。次いで、制御部１１は、取得したコンテンツＩＤに対応するインデックス情報を全て検索する。そして、制御部１１は、検索されたインデックス情報に対応する紹介状態を、「紹介停止中」に変更する（ステップＳ５５）。次いで、制御部１１は、削除対象のコンテンツのメタファイルの保持ノードへ、削除要求メッセージを送信する（ステップＳ５６）。具体的に、制御部１１は、検索されたインデックス情報から保持ノードのＩＰアドレス等を取得する。次いで、制御部１１は、保持ノードのＩＰアドレス等に基づいて、削除通知メッセージから取得されたコンテンツＩＤを含む削除要求メッセージを送信する。制御部１１は、これらの処理を、検索されたインデックス情報ごとに行う。制御部１１は、ステップＳ５６の処理を終えると、ステップＳ８０に移行する。
【００８３】
ステップＳ５４において、制御部１１は、削除通知メッセージを受信していないと判定した場合には（ステップＳ５４：ＮＯ）、更新通知メッセージを受信したか否かを判定する（ステップＳ５７）。このとき、制御部１１は、更新通知メッセージを受信したと判定した場合には（ステップＳ５７：ＹＥＳ）、更新対象のコンテンツのメタファイルの保持ノードの中に、紹介状態が「紹介可能」に設定されている保持ノードが存在するか否かを判定する（ステップＳ５８）。具体的に、制御部１１は、更新通知メッセージからコンテンツＩＤを取得する。次いで、制御部１１は、取得したコンテンツＩＤに対応するインデックス情報を全て検索する。そして、制御部１１は、検索されたインデックス情報に対応する紹介状態を参照する。これにより、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在するか否かを判定する。
【００８４】
このとき、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在すると判定した場合には（ステップＳ５８：ＹＥＳ）、紹介状態が「紹介可能」に設定されている保持ノードの紹介状態を、「紹介停止中」に変更する（ステップＳ５９）。例えば、センターサーバＳＳから、配信停止通知が送信されてくることなく、更新通知メッセージが送信されてくる場合がある。この場合、各保持ノードの紹介状態は「紹介可能」に設定されているが、各保持ノードが記憶するメタファイルは、メタファイルの更新によって入れ替わる前の古いメタファイルである。そのため、更新通知メッセージが受信された後は古いメタファイルが配信されないよう、紹介状態を「紹介停止中」にする。
【００８５】
制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在しないと判定した場合（ステップＳ５８：ＮＯ）、または、ステップＳ５９の処理を終えた場合には、記憶しているメタファイルを更新する（ステップＳ６０）。具体的に、制御部１１は、更新通知メッセージに含まれるコンテンツＩＤに対応するメタファイルを、記憶部１２から削除する。そして、制御部１１は、更新通知メッセージに含まれるメタファイルを、更新通知メッセージに含まれるコンテンツＩＤに対応付けて、記憶部１２に記憶させる。次いで、制御部１１は、新しく記憶させたメタファイルの更新確認情報を生成する（ステップＳ６１）。例えば、制御部１１は、メタファイルのハッシュ値を算出する。そして、制御部１１は、生成した更新確認情報を、更新通知メッセージに含まれるコンテンツＩＤに対応付けて、記憶部１２に記憶させる。
【００８６】
次いで、制御部１１は、更新対象のメタファイルの保持ノードへ、更新要求メッセージを送信する（ステップＳ６２）。具体的に、制御部１１は、検索されたインデックス情報から保持ノードのＩＰアドレス等を取得する。次いで、制御部１１は、保持ノードのＩＰアドレス等に基づいて、更新通知メッセージから取得されたコンテンツＩＤ及び新しく記憶したメタファイルを含む更新要求メッセージを送信する。制御部１１は、これらの処理を、検索されたインデックス情報ごとに行う。次いで、制御部１１は、検索されたインデックス情報に対応する紹介状態を、「紹介可能」に変更する（ステップＳ６３）。制御部１１は、ステップＳ６３の処理を終えると、ステップＳ８０に移行する。
【００８７】
ステップＳ５７において、制御部１１は、更新通知メッセージを受信していないと判定した場合には（ステップＳ５７：ＮＯ）、配信再開通知メッセージを受信したか否かを判定する（ステップＳ６４）。このとき、制御部１１は、配信再開通知メッセージを受信したと判定した場合には（ステップＳ６４：ＹＥＳ）、配信再開通知メッセージからコンテンツＩＤを取得する。次いで、制御部１１は、取得したコンテンツＩＤに対応するインデックス情報を全て検索する。そして、制御部１１は、検索されたインデックス情報に対応する紹介状態を、「紹介可能」に変更する（ステップＳ６５）。制御部１１は、ステップＳ６５の処理を終えると、ステップＳ８０に移行する。
【００８８】
ステップＳ６４において、制御部１１は、配信再開通知メッセージを受信していないと判定した場合には（ステップＳ６４：ＮＯ）、ステップＳ８０に移行する。
【００８９】
ステップＳ８０において、制御部１１は、メタファイルの保持ノードからパブリッシュメッセージを受信したか否かを判定する。このとき、制御部１１は、パブリッシュメッセージを受信していないと判定した場合には（ステップＳ８０：ＮＯ）、ステップＳ９７に移行する。一方、制御部１１は、パブリッシュメッセージを受信したと判定した場合には（ステップＳ８０：ＹＥＳ）、パブリッシュメッセージを受信したノード自身がルートノードであるか否かを判定する（ステップＳ８１）。具体的に、制御部１１は、パブリッシュメッセージからコンテンツＩＤを取得する。また、制御部１１は、パブリッシュメッセージを受信したノード自身のノードＩＤを、記憶部１２から取得する。また、制御部１１は、ルーティングテーブルに登録されているノードＩＤのうち、パブリッシュメッセージから取得されたコンテンツＩＤと最も近いノードＩＤを取得する。次いで、制御部１１は、パブリッシュメッセージを受信したノード自身のノードＩＤと、ルーティングテーブルから取得されたノードＩＤとのうち、パブリッシュメッセージから取得されたコンテンツＩＤにより近いノードＩＤは何れかであるかを判定する。このとき制御部１１は、ルーティングテーブルから取得されたノードＩＤの方がコンテンツＩＤに近いと判定した場合には、パブリッシュメッセージを受信したノード自身がルートノードではないと判定する（ステップＳ８１：ＮＯ）。この場合、制御部１１は、受信したメッセージを、ルーティングテーブルに基づいて他のノードへ転送する（ステップＳ１０２）。制御部１１は、ステップＳ１０２の処理を終えると、ステップＳ９６に移行する。
【００９０】
一方、制御部１１は、パブリッシュメッセージを受信したノード自身のノードＩＤの方がコンテンツＩＤに近いと判定した場合には、メッセージを受信したノード自身がルートノードであると判定する（ステップＳ８１：ＹＥＳ）。この場合、制御部１１は、パブリッシュメッセージに設定されたインデックス情報を、記憶部１２に記憶させる（ステップＳ８２）。次いで、制御部１１は、インデックス情報からコンテンツＩＤを取得する。また、制御部１１は、パブリッシュメッセージから更新確認情報を取得する。次いで、制御部１１は、取得したコンテンツＩＤに対応するメタファイルの更新確認情報を記憶部１２から取得する。そして、制御部１１は、パブリッシュメッセージから取得した更新確認情報と、記憶部１２から取得した更新確認情報と、を比較する（ステップＳ８３）。次いで、制御部１１は、比較の結果、更新確認情報が一致するか否かを判定する（ステップＳ８４）。
【００９１】
このとき、制御部１１は、更新確認情報が一致すると判定した場合には（ステップＳ８４：ＹＥＳ）、インデックス情報から取得したコンテンツＩＤに対応するインデックス情報を全て検索する。そして、制御部１１は、検索されたインデックス情報に対応する紹介状態を参照する。そして、制御部１１は、「紹介可能」に設定された紹介状態が存在するか否かを判定する。つまり、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在するか否かを判定する（ステップＳ８５）。このとき、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在すると判定した場合には（ステップＳ８５：ＹＥＳ）、「紹介可能」に設定された紹介状態を、ステップＳ８２において記憶されたインデックス情報と対応付けて記憶部１２に記憶させる（ステップＳ８６）。この場合、パブリッシュメッセージを送信してきた保持ノードが記憶するメタファイルは、配信が許可されているコンテンツのメタファイルと同一となっているからである。なお、パブリッシュメッセージを送信してきた保持ノードを、「送信元保持ノード」という。制御部１１は、ステップＳ８６の処理を終えると、ステップＳ９６に移行する。
【００９２】
ステップＳ８５において、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在しないと判定した場合には（ステップＳ８５：ＮＯ）、ステップＳ８５の場合と同様にして、紹介状態が「紹介停止中」に設定されている保持ノードが存在するか否かを判定する（ステップＳ８７）。このとき、制御部１１は、紹介状態が「紹介停止中」に設定されている保持ノードが存在すると判定した場合には（ステップＳ８７：ＹＥＳ）、「紹介停止中」に設定された紹介状態を、送信元保持ノードのインデックス情報に対応付けて記憶部１２に記憶させる（ステップＳ８８）。この場合、送信元保持ノードが記憶するメタファイルは、現在配信が停止中のコンテンツのメタファイルと同一となっている。そして、配信が停止中のコンテンツに代わるコンテンツとして、配信が許可されたコンテンツはまだ投入されていないからである。
【００９３】
ステップＳ８７において、制御部１１は、紹介状態が「紹介停止中」に設定されている保持ノードが存在しないと判定した場合には（ステップＳ８７：ＮＯ）、センターサーバＳＳに、紹介状態の問い合わせを行う（ステップＳ８９）。この場合、送信元保持ノードが記憶するメタファイルが、配信が停止されたコンテンツのメタファイルであるのか、または、配信が許可されたコンテンツのメタファイルであるのか、を判定することができないからである。例えば、制御部１１は、送信元保持ノードのインデックス情報から取得したコンテンツＩＤを含む問い合わせメッセージをセンターサーバＳＳへ送信する。センターサーバＳＳは、受信した問い合わせメッセージに含まれるコンテンツＩＤに対応するメタファイルが、配信が停止されたコンテンツのメタファイルであるのか、または、配信が許可されたコンテンツのメタファイルであるのか、を判定する。例えば、配信停止通知メッセージや更新通知メッセージの送信履歴に基づいて、判定が行われる。そして、センターサーバＳＳは、判定結果をルートノードへ送信する。制御部１１は、受信した判定結果に基づいて、送信元保持ノードの紹介状態を「紹介可能」または「紹介停止中」に設定する。そして、送信元保持ノードの紹介状態を、送信元保持ノードのインデックス情報に対応付けて記憶部１２に記憶させる（ステップＳ９０）。制御部１１は、ステップＳ９０の処理を終えると、ステップＳ９６に移行する。
【００９４】
ステップＳ８４において、制御部１１は、更新確認情報が一致しないと判定した場合には（ステップＳ８４：ＮＯ）、「紹介停止中」に設定された紹介状態を、送信元保持ノードのインデックス情報に対応付けて記憶部１２に記憶させる（ステップＳ９１）。次いで、制御部１１は、ステップＳ８５において検索されたインデックス情報に対応する紹介状態のうち、「紹介可能」に設定されている紹介状態の数を数える。そして、制御部１１は、「紹介可能」に設定されている紹介状態の数が閾値以上であるか否かを判定する。つまり、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードの数が閾値以上であるか否かを判定する（ステップＳ９２）。このとき、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードの数が閾値以上であると判定した場合には（ステップＳ９２：ＹＥＳ）、紹介状態を「紹介不可」のままにして、ステップＳ９６に移行する。
【００９５】
一方、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードの数が閾値以上ではないと判定した場合には（ステップＳ９２：ＮＯ）、紹介状態が「紹介可能」に設定されている保持ノードが存在するか否かを判定する（ステップＳ９３）。この判定方法は、ステップＳ８５の場合と同様である。このとき、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在しないと判定した場合には（ステップＳ９３：ＮＯ）、ステップＳ９６に移行する。例えば、送信元保持ノードが記憶するメタファイルが、コンテンツＦ１のメタファイルであるとする。コンテンツＦ１は、既に配信が停止されたコンテンツである。また、コンテンツＦ１に入れ替わって配信が許可されたコンテンツがコンテンツＦ２であるとする。このコンテンツＦ２も、現在は配信が停止されている。そして、コンテンツＦ２に入れ替わるコンテンツとして、配信が許可されたコンテンツはまだ投入されていない。そのため、紹介状態が「紹介可能」に設定されている保持ノードが存在しない。従って、現時点では、コンテンツＦ１やＦ２に代わって配信すべきコンテンツが存在しない。そこで、送信元保持ノードが記憶するメタファイルを更新する必要がないので、送信元保持ノードの紹介状態は「紹介不可」に設定されたままになる。
【００９６】
一方、制御部１１は、紹介状態が「紹介可能」に設定されている保持ノードが存在すると判定した場合には（ステップＳ９３：ＹＥＳ）、送信元保持ノードへ、更新要求メッセージを送信する（ステップＳ９４）。具体的に、制御部１１は、送信元保持ノードのインデックス情報から取得したコンテンツＩＤに対応するメタファイルを記憶部１２から取得する。このメタファイルは、配信が許可されたメタファイルである。そして、制御部１１は、取得したメタファイルと、取得したメタファイルのコンテンツＩＤと、を含む更新要求メッセージを送信する。次いで、制御部１１は、送信元保持ノードの紹介状態を、「紹介可能」に変更する（ステップＳ９５）。制御部１１は、ステップＳ９５の処理を終えると、ステップＳ９６に移行する。
【００９７】
ステップＳ９７において、制御部１１は、ルートノードから削除要求メッセージを受信したか否かを判定する。このとき、制御部１１は、削除要求メッセージを受信したと判定した場合には（ステップＳ９７：ＹＥＳ）、削除要求メッセージに含まれるコンテンツＩＤに対応するメタファイルを、記憶部１２から削除する（ステップＳ９８）。制御部１１は、ステップＳ９８の処理を終えると、ステップＳ９６に移行する。
【００９８】
ステップＳ９７において、制御部１１は、削除要求メッセージを受信していないと判定した場合には（ステップＳ９７：ＮＯ）、ルートノードから更新要求メッセージを受信したか否かを判定する（ステップＳ９９）。このとき、制御部１１は、更新要求メッセージを受信したと判定した場合には（ステップＳ９９：ＹＥＳ）、記憶部１２に記憶しているメタファイルの更新及び更新確認情報の生成を行う（ステップＳ１００及びＳ１０１）。これらの処理は、図６に示すステップＳ６０及びＳ６１の処理と同様である。制御部１１は、ステップＳ１０１の処理を終えると、ステップＳ９６に移行する。
【００９９】
ステップＳ９９において、制御部１１は、更新要求メッセージを受信していないと判定した場合には（ステップＳ９９：ＮＯ）、ステップＳ９６に移行する。ステップＳ９６において、制御部１１は、拠点Ｐｎの管理者から、オーバーレイネットワークＯＮからの離脱が指示されたか否かを判定する。このとき、制御部１１は、離脱が指示されていないと判定した場合には（ステップＳ９６：ＮＯ）、ステップＳ５１に移行する。一方、制御部１１は、離脱が指示されたと判定した場合には（ステップＳ９６：ＹＥＳ）、図６及び図７に示す処理を終了させる。
【０１００】
なお、上記実施形態において、ルートノードは、インデックス情報ごとに紹介状態を記憶していた。つまり、ルートノードは、保持ノードごとに紹介状態を記憶していた。ここで、ルートノードは、保持ノードごとの紹介状態に加えて、例えば、メタファイルごとに紹介状態を記憶しても良い。ここで、保持ノードごとの紹介状態を、「保持ノード紹介状態」という。また、メタファイルごとの紹介状態を、「メタファイル紹介状態」という。メタファイル紹介状態は、メタファイルのコンテンツＩＤに対応付けて記憶される。ルートノードは、センターサーバＳＳから配信停止通知メッセージまたは削除通知メッセージを受信したとき、対応するメタファイル紹介状態を「紹介停止中」に設定する。また、ルートノードは、センターサーバＳＳから更新通知メッセージまたは配信再開通知メッセージを受信したとき、対応するメタファイル紹介状態を「紹介可能」に設定する。メタファイル紹介状態は、「紹介不可」には設定されない。ルートノードは、例えば、図７に示すステップＳ８５、Ｓ８７、Ｓ８９、Ｓ９３等で、メタファイル紹介状態を参照することができる。これにより、保持ノード紹介状態を参照しなくても、ルートノードが現在記憶しているメタファイルの紹介状態を判定することができる。そして、メタファイルの紹介状態に基づいて、送信元保持ノードの紹介状態を設定することができる。
【０１０１】
また、ルートノードは、メタファイル紹介状態のみを記憶し、保持ノード紹介状態は記憶しなくても良い。この場合、メタファイル紹介状態とインデックス情報とは、メタファイルのコンテンツＩＤにより対応付けられる。つまり、メタファイル紹介状態は、対応するメタファイルを記憶する全ての保持ノードに適用される。ルートノードは、ユーザノードから検索メッセージを受信したとき、検索メッセージに含まれるコンテンツＩＤに対応するメタファイル紹介状態に基づいて、対応するインデックス情報の送信を許可するか制限するかを判定する。また、ルートノードは、保持ノードからパブリッシュメッセージを受信したときに、更新情報が一致しない場合には、例えば、送信元保持ノードに対して無条件で更新要求メッセージを送信する。
【０１０２】
また、上記実施形態においては、ルートノードが、紹介状態を記憶してコンテンツの配信の停止等の制御を行っていた。しかしながら、予め定められたノードが、コンテンツの配信の停止等の制御を行っても良い。予め定められたノードとしては、例えば、ネットワークＮＷに定常的に接続するノード等がある。
【０１０３】
また、上記実施形態においては、オーバーレイネットワークに、ＤＨＴを利用したピアツーピアネットワークが適用されていたが、これに限られるものではない。例えば、他のピアツーピアシステム、または、オーバーレイネットワークを用いたシステムが適用されても良い。ＤＨＴを利用しないオーバーレイネットワークとしては、例えば、ハイブリッド型のピアツーピアネットワークシステムがある。ハイブリッド型のピアツーピアネットワークシステムの場合、例えば、センターサーバＳＳが、全てのメタファイルのインデックス情報を記憶する。そこで、センターサーバＳＳが、全てのメタファイルについての紹介状態を記憶し、コンテンツの配信の停止等の制御を行っても良い。
【０１０４】
また、上記実施形態においては、通常コンテンツが複数のチャンクに分割されていた。そして、通常コンテンツのメタファイルを保存する保持ノードを、本発明におけるコンテンツを保存する第１ノード装置に相当するノードとしていた。ユーザノードは、通常コンテンツのメタファイルを取得することにより、通常コンテンツを構成する各チャンクを取得することができる。これにより、ユーザノードは、通常コンテンツを取得する。つまり、ユーザノードは、メタファイルの保持ノードから、通常コンテンツを取得したと考えることができるからである。しかしながら、通常コンテンツが複数のチャンクに分割されなくても良い。この場合、各ノードは、通常コンテンツ全体を保存する。そして、通常コンテンツを保存するノードが、本発明における第１ノード装置に相当する。また、通常コンテンツの所在を管理するノードが、本発明における第２ノード装置に相当する。通常コンテンツの配信の停止、削除、配信再開、更新、パブリッシュメッセージの送受信時等における各ノード及びセンターサーバＳＳの処理内容は、上記実施形態の場合と基本的に同様である。ただし、メタファイルの送信、メタファイルの更新、メタファイルのハッシュ値の算出等、メタファイルに対して行われていた処理は、通常コンテンツに対して行われる。なお、上記実施形態においては、複合コンテンツのメタファイルを保存する保持ノードを、本発明における複合コンテンツを保存する第１ノード装置に相当するノードとしている。
【符号の説明】
【０１０５】
１，１１  制御部
２，１２  記憶部
３，１３ａ，１３ｂ  通信部
ＳＳ  センターサーバ
Ｎｎ  ノード
ＮＷ  ネットワーク
ＯＮ  オーバーレイネットワーク
Ｓ  配信システム
【図１】
0005343990.tif 000002
【図２】
0005343990.tif 000003
【図３】
0005343990.tif 000004
【図４】
0005343990.tif 000005
【図５】
0005343990.tif 000006
【図６】
0005343990.tif 000007
【図７】
0005343990.tif 000008