(57)【要約】【課題】エッジサーバ等のサポート装置の負荷を軽減させ、コンテンツの取得を円滑に行うことができる情報通信システム及び情報通信方法等を提供する。【解決手段】サポート装置は、接続先の内部ネットワークに接続するノード装置である接続先ノード装置が、何れかのサポート装置又は何れかのノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の内部ネットワークに接続していないサポート装置、又は、接続先の内部ネットワークに接続していないノード装置から取得し、関連コンテンツを少なくとも何れか一の接続先ノード装置に送信する。ノード装置は、サポート装置又は他のノード装置により記憶されているコンテンツを取得し、接続先の内部ネットワークに接続するサポート装置から送信された関連コンテンツを受信し、関連コンテンツを記憶する。【選択図】図４
2011071644.tif 000002
【特許請求の範囲】
【請求項１】
複数のコンテンツが複数のノード装置間で送受信される情報通信システムであって、
前記情報通信システムは、
外部ネットワークに複数の内部ネットワークが接続され、
同一の前記内部ネットワークに接続する複数のノード装置と、
前記内部ネットワークに接続し前記ノード装置によるコンテンツの取得を支援するサポート装置と、
を前記内部ネットワーク毎に備え、
前記サポート装置は、
接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置が、何れかの前記サポート装置又は何れかの前記ノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得手段と、
前記関連コンテンツ取得手段により取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信手段と、
を備え、
前記ノード装置は、
前記サポート装置又は他の前記ノード装置により記憶されているコンテンツを取得するコンテンツ取得手段と、
接続先の前記内部ネットワークに接続する前記サポート装置である接続先サポート装置から送信された前記関連コンテンツを受信する関連コンテンツ受信手段と、
前記関連コンテンツ受信手段により受信された前記関連コンテンツを記憶する記憶手段と、
を備えることを特徴とする情報通信システム。
【請求項２】
請求項１に記載の情報通信システムにおいて、
前記ノード装置の前記コンテンツ取得手段は、接続先の前記内部ネットワークに接続する他の前記ノード装置からコンテンツを取得し、当該他のノード装置からコンテンツを取得することができない場合に、前記接続外サポート装置又は前記接続外ノード装置からコンテンツを取得することを特徴とする情報通信システム。
【請求項３】
請求項２に記載の情報通信システムにおいて、
前記ノード装置の前記コンテンツ取得手段は、接続先の前記内部ネットワークに接続する他の前記ノード装置からコンテンツを取得することができない場合に、前記接続先サポート装置からコンテンツを取得し、当該接続先サポート装置からコンテンツを取得することができない場合に、前記接続外サポート装置又は前記接続外ノード装置からコンテンツを取得することを特徴とする情報通信システム。
【請求項４】
請求項１乃至３の何れか１項に記載の情報通信システムにおいて、
前記サポート装置の前記関連コンテンツ取得手段は、前記接続先ノード装置が前記接続先外サポート装置又は前記接続先外ノード装置からコンテンツを取得した場合に、前記関連コンテンツを取得することを特徴とする情報通信システム。
【請求項５】
請求項４に記載の情報通信システムにおいて、
前記ノード装置の前記コンテンツ取得手段は、
コンテンツを要求するのに必要な要求情報を、前記接続先サポート装置を介して前記接続先外サポート装置又は前記接続先外ノード装置に送信する要求情報送信手段と、
前記接続先外サポート装置又は前記接続先外ノード装置から送信されたコンテンツを前記接続先サポート装置を介して受信するコンテンツ受信手段と、
を備え、
前記サポート装置は、
前記接続先ノード装置と、前記接続先外サポート装置又は前記接続先外ノード装置との間で送受信される情報を中継する中継手段と、
前記中継手段により前記接続先外サポート装置又は前記接続先外ノード装置から受信されたコンテンツを記憶する第２記憶手段と、
を更に備えることを特徴とする情報通信システム。
【請求項６】
請求項５に記載の情報通信システムにおいて、
前記サポート装置の前記中継手段は、前記要求情報を受信したときに前記第２記憶手段にコンテンツが記憶されている場合には、当該要求情報を中継せずに、前記第２記憶手段に記憶されているコンテンツを当該要求情報の送信元の前記接続先ノード装置に送信することを特徴とする情報通信システム。
【請求項７】
請求項５又は請求項６に記載の情報通信システムにおいて、
前記サポート装置の前記中継手段は、前記要求情報を受信したときに前記第２記憶手段にコンテンツが記憶されていない場合には、当該要求情報を中継し、
前記サポート装置の前記関連コンテンツ取得手段は、前記中継手段により受信されたコンテンツに関連する前記関連コンテンツを取得し、
前記第２記憶手段は、前記関連コンテンツ取得手段により取得された前記関連コンテンツを記憶することを特徴とする情報通信システム。
【請求項８】
請求項１乃至７の何れか１項に記載の情報通信システムにおいて、
前記サポート装置による情報通信の使用帯域幅が所定の帯域幅以下であるとき、又は、当該サポート装置の処理負荷が所定の負荷以下であるときに、当該サポート装置の前記関連コンテンツ取得手段が前記関連コンテンツを取得し、当該サポート装置の前記関連コンテンツ送信手段が前記関連コンテンツを送信することを特徴とする情報通信システム。
【請求項９】
複数のコンテンツが複数のノード装置間で送受信される情報通信システムにおける情報通信方法であって、
前記情報通信システムは、
外部ネットワークに複数の内部ネットワークが接続され、
同一の前記内部ネットワークに接続する複数のノード装置と、
前記内部ネットワークに接続し前記ノード装置によるコンテンツの取得を支援するサポート装置と、
を前記内部ネットワーク毎に備え、
前記ノード装置が、前記サポート装置又は他の前記ノード装置により記憶されているコンテンツを取得するコンテンツ取得工程と、
前記サポート装置が、接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置により取得されたコンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得工程と、
前記サポート装置が、前記関連コンテンツ取得工程において取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信工程と、
前記ノード装置が、接続先の前記内部ネットワークに接続する前記サポート装置である接続先サポート装置から送信された前記関連コンテンツを受信する関連コンテンツ受信工程と、
前記ノード装置が、前記関連コンテンツ受信工程において受信された前記関連コンテンツを記憶する記憶工程と、
を有することを特徴とする情報通信方法。
【請求項１０】
複数のコンテンツが複数のノード装置間で送受信される情報通信システムにおいて、前記ノード装置によるコンテンツの取得を支援するサポート装置であって、
前記情報通信システムは、
外部ネットワークに複数の内部ネットワークが接続され、
同一の前記内部ネットワークに接続する複数のノード装置と、
前記内部ネットワークに接続する前記サポート装置と、
を前記内部ネットワーク毎に備え、
前記サポート装置は、
接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置が、何れかの前記サポート装置又は何れかの前記ノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得手段と、
前記関連コンテンツ取得手段により取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信手段と、
を備えることを特徴とするサポート装置。
【請求項１１】
複数のコンテンツが複数のノード装置間で送受信される情報通信システムにおける情報通信処理プログラムであって、
前記情報通信システムは、
外部ネットワークに複数の内部ネットワークが接続され、
同一の前記内部ネットワークに接続する複数のノード装置と、
前記内部ネットワークに接続し前記ノード装置によるコンテンツの取得を支援するサポート装置と、
を前記内部ネットワーク毎に備え、
前記サポート装置に含まれるコンピュータに、
接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置が、何れかの前記サポート装置又は何れかの前記ノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得ステップと、
前記関連コンテンツ取得手段により取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信ステップと、
を実行させることを特徴とする情報通信処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））方式の通信システムの技術分野に関する。
【背景技術】
【０００２】
従来、例えば、特許文献１に開示されているようなエッジサーバを利用したコンテンツ配信システムが知られている。このシステムでは、予めコンテンツを大量に蓄積しておくことが可能なエッジサーバが、ユーザが利用する端末装置がある拠点に設置される。端末装置は、必要とするコンテンツを拠点内のエッジサーバが保存している場合には、このエッジサーバからコンテンツを直接取得する。一方、必要とするコンテンツをエッジサーバが保存していない場合、エッジサーバは、拠点外のセンターサバや他のエッジサーバ等からコンテンツ取得し、端末装置に送信する。これにより、センターのサーバ装置へのアクセス集中が回避される。また、拠点内のネットワークから外部接続する回線のトラフィックが低減される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２２３３７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、エッジサーバを利用したシステムでは、拠点内の端末装置が増加した場合に、コンテンツの要求がエッジサーバに集中する。これにより、エッジサーバの負荷が高くなり、円滑なコンテンツの配信が妨げられてしまう。
【０００５】
そこで、本発明は、以上の点に鑑みてなされたものである。本発明は、エッジサーバ等のサポート装置の負荷を軽減させ、コンテンツの取得を円滑に行うことができる情報通信システム及び情報通信方法等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、複数のコンテンツが複数のノード装置間で送受信される情報通信システムであって、前記情報通信システムは、外部ネットワークに複数の内部ネットワークが接続され、同一の前記内部ネットワークに接続する複数のノード装置と、前記内部ネットワークに接続し前記ノード装置によるコンテンツの取得を支援するサポート装置と、を前記内部ネットワーク毎に備え、前記サポート装置は、接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置が、何れかの前記サポート装置又は何れかの前記ノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得手段と、前記関連コンテンツ取得手段により取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信手段と、を備え、前記ノード装置は、前記サポート装置又は他の前記ノード装置により記憶されているコンテンツを取得するコンテンツ取得手段と、接続先の前記内部ネットワークに接続する前記サポート装置である接続先サポート装置から送信された前記関連コンテンツを受信する関連コンテンツ受信手段と、前記関連コンテンツ受信手段により受信された前記関連コンテンツを記憶する記憶手段と、を備えることを特徴とする。
【０００７】
ノード装置により取得されたコンテンツに関連するコンテンツは、未だ取得されていないコンテンツの中でも、今後サポート装置に対して要求される可能性が比較的高いと考えられる。この発明によれば、或るノード装置により取得されたコンテンツに関連するコンテンツが、取得したノード装置と同一の内部ネットワークに接続する何れかのノード装置により記憶される。よって、コンテンツを取得したノード装置がこのコンテンツに関連するコンテンツを取得する場合には、同一の内部ネットワークに接続するノード装置から取得することができる。これにより、コンテンツの要求がサポート装置に集中することが回避される。よって、サポート装置の負荷を軽減させることができ、ノード装置によるコンテンツの取得を円滑に行うことができる。
【０００８】
請求項２に記載の発明は、請求項１に記載の情報通信システムにおいて、前記ノード装置の前記コンテンツ取得手段は、接続先の前記内部ネットワークに接続する他の前記ノード装置からコンテンツを取得し、当該他のノード装置からコンテンツを取得することができない場合に、前記接続外サポート装置又は前記接続外ノード装置からコンテンツを取得することを特徴とする。
【０００９】
この発明によれば、ノード装置が必要とするコンテンツが、同一の内部ネットワークに接続する他のノード装置に記憶されている場合には、サポート装置よりも優先して他のノード装置からコンテンツが取得される。よって、サポート装置の負荷を軽減させることができる。また、コンテンツの送信負荷が同一の内部ネットワークに接続する複数のノード装置に分散される。よって、ノード装置によるコンテンツの取得を円滑に行うことができる。
【００１０】
請求項３に記載の発明は、請求項２に記載の情報通信システムにおいて、前記ノード装置の前記コンテンツ取得手段は、接続先の前記内部ネットワークに接続する他の前記ノード装置からコンテンツを取得することができない場合に、前記接続先サポート装置からコンテンツを取得し、当該接続先サポート装置からコンテンツを取得することができない場合に、前記接続外サポート装置又は前記接続外ノード装置からコンテンツを取得することを特徴とする。
【００１１】
この発明によれば、ノード装置が必要とするコンテンツが、接続先サポート装置に記憶されている場合には、接続先外サポート装置及び接続先外ノード装置よりも優先して接続先サポート装置からコンテンツが取得される。よって、内部ネットワークから外部ネットワークに接続する回線のトラフィックが減り、コンテンツを効率良く取得することができる。
【００１２】
請求項４に記載の発明は、請求項１乃至３の何れか１項に記載の情報通信システムにおいて、前記サポート装置の前記関連コンテンツ取得手段は、前記接続先ノード装置が前記接続先外サポート装置又は前記接続先外ノード装置からコンテンツを取得した場合に、前記関連コンテンツを取得することを特徴とする。
【００１３】
この発明によれば、ノード装置が必要とするコンテンツが、同一の内部ネットワークに接続する他のノード装置及びサポート装置に記憶されていない場合であっても、そのコンテンツに関連するコンテンツを同一の内部ネットワークに接続する何れかのノード装置に記憶させることができる。
【００１４】
請求項５に記載の発明は、請求項４に記載の情報通信システムにおいて、前記ノード装置の前記コンテンツ取得手段は、コンテンツを要求するのに必要な要求情報を、前記接続先サポート装置を介して前記接続先外サポート装置又は前記接続先外ノード装置に送信する要求情報送信手段と、前記接続先外サポート装置又は前記接続先外ノード装置から送信されたコンテンツを前記接続先サポート装置を介して受信するコンテンツ受信手段と、を備え、前記サポート装置は、前記接続先ノード装置と、前記接続先外サポート装置又は前記接続先外ノード装置との間で送受信される情報を中継する中継手段と、前記中継手段により前記接続先外サポート装置又は前記接続先外ノード装置から受信されたコンテンツを記憶する第２記憶手段と、を更に備えることを特徴とする。
【００１５】
この発明によれば、同一の内部ネットワークに接続するノード装置により取得されたコンテンツをサポート装置に記憶させることができる。
【００１６】
請求項６に記載の発明は、請求項５に記載の情報通信システムにおいて、前記サポート装置の前記中継手段は、前記要求情報を受信したときに前記第２記憶手段にコンテンツが記憶されている場合には、当該要求情報を中継せずに、前記第２記憶手段に記憶されているコンテンツを当該要求情報の送信元の前記接続先ノード装置に送信することを特徴とする。
【００１７】
この発明によれば、同一の内部ネットワークに接続するノード装置から要求されたコンテンツをサポート装置が記憶している場合、このサポート装置は、接続外サポート装置及び接続外ノード装置からコンテンツを取得する必要がない。よって、ノード装置によるコンテンツの取得を短時間で行うことができる。
【００１８】
請求項７に記載の発明は、請求項５又は請求項６に記載の情報通信システムにおいて、前記サポート装置の前記中継手段は、前記要求情報を受信したときに前記第２記憶手段にコンテンツが記憶されていない場合には、当該要求情報を中継し、前記サポート装置の前記関連コンテンツ取得手段は、前記中継手段により受信されたコンテンツに関連する前記関連コンテンツを取得し、前記第２記憶手段は、前記関連コンテンツ取得手段により取得された前記関連コンテンツを記憶することを特徴とする。
【００１９】
この発明によれば、ノード装置から要求される可能性が比較的高いと考えられるコンテンツがサポート装置に記憶されるので、サポート装置の記憶手段の利用効率を高めることができる。
【００２０】
請求項８に記載の発明は、請求項１乃至７の何れか１項に記載の情報通信システムにおいて、前記サポート装置による情報通信の使用帯域幅が所定の帯域幅以下であるとき、又は、当該サポート装置の処理負荷が所定の負荷以下であるときに、当該サポート装置の前記関連コンテンツ取得手段が前記関連コンテンツを取得し、当該サポート装置の前記関連コンテンツ送信手段が前記関連コンテンツを送信することを特徴とする。
【００２１】
この発明によれば、サポート装置の通信帯域やＣＰＵ等の負荷に余裕があるときに、サポート装置による関連コンテンツの取得及び送信が行われる。これにより、関連コンテンツの取得時におけるサポート装置の負荷が高くなることを防止することができる。よって、ノード装置によるコンテンツの取得を円滑に行うことができる。
【００２２】
請求項９に記載の発明は、複数のコンテンツが複数のノード装置間で送受信される情報通信システムにおける情報通信方法であって、前記情報通信システムは、外部ネットワークに複数の内部ネットワークが接続され、同一の前記内部ネットワークに接続する複数のノード装置と、前記内部ネットワークに接続し前記ノード装置によるコンテンツの取得を支援するサポート装置と、を前記内部ネットワーク毎に備え、前記ノード装置が、前記サポート装置又は他の前記ノード装置により記憶されているコンテンツを取得するコンテンツ取得工程と、前記サポート装置が、接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置により取得されたコンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得工程と、前記サポート装置が、前記関連コンテンツ取得工程において取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信工程と、前記ノード装置が、接続先の前記内部ネットワークに接続する前記サポート装置である接続先サポート装置から送信された前記関連コンテンツを受信する関連コンテンツ受信工程と、前記ノード装置が、前記関連コンテンツ受信工程において受信された前記関連コンテンツを記憶する記憶工程と、を有することを特徴とする。
【００２３】
請求項１０に記載の発明は、複数のコンテンツが複数のノード装置間で送受信される情報通信システムにおいて、前記ノード装置によるコンテンツの取得を支援するサポート装置であって、前記情報通信システムは、外部ネットワークに複数の内部ネットワークが接続され、同一の前記内部ネットワークに接続する複数のノード装置と、前記内部ネットワークに接続する前記サポート装置と、を前記内部ネットワーク毎に備え、前記サポート装置は、接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置が、何れかの前記サポート装置又は何れかの前記ノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得手段と、前記関連コンテンツ取得手段により取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信手段と、を備えることを特徴とする。
【００２４】
請求項１１に記載の発明は、複数のコンテンツが複数のノード装置間で送受信される情報通信システムにおける情報通信処理プログラムであって、前記情報通信システムは、外部ネットワークに複数の内部ネットワークが接続され、同一の前記内部ネットワークに接続する複数のノード装置と、前記内部ネットワークに接続し前記ノード装置によるコンテンツの取得を支援するサポート装置と、を前記内部ネットワーク毎に備え、前記サポート装置に含まれるコンピュータに、接続先の前記内部ネットワークに接続する前記ノード装置である接続先ノード装置が、何れかの前記サポート装置又は何れかの前記ノード装置からコンテンツを取得した場合に、当該コンテンツに関連する関連コンテンツを、接続先の前記内部ネットワークに接続していない前記サポート装置である接続先外サポート装置、又は、接続先の前記内部ネットワークに接続していない前記ノード装置である接続先外ノード装置から取得する関連コンテンツ取得ステップと、前記関連コンテンツ取得手段により取得された前記関連コンテンツを、少なくとも何れか一の前記接続先ノード装置に送信する関連コンテンツ送信ステップと、を実行させることを特徴とする。
【発明の効果】
【００２５】
本発明によれば、コンテンツを取得したノード装置がこのコンテンツに関連するコンテンツを取得する場合には、同一の内部ネットワークに接続するノード装置から取得することができる。これにより、コンテンツの要求がサポート装置に集中することが回避される。よって、サポート装置の負荷を軽減させることができ、ノード装置によるコンテンツの取得を円滑に行うことができる。
【図面の簡単な説明】
【００２６】
【図１】一実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。
【図２】一実施形態に係るコンテンツ配信システムＳにおけるＰ２ＰネットワークＰＷの構築例を示す図である。
【図３】一実施形態に係るコンテンツ配信システムＳにおいてユーザ端末Ｔｍ−ｎがコンテンツを取得する場合の様子の一例を示した概念図である。
【図４】一実施形態に係るコンテンツ配信システムＳにおいてユーザ端末Ｔｍ−ｎがコンテンツを取得する場合の様子の一例を示した概念図である。
【図５】関連付け定義ファイルに記述されるコンテンツの関連付けの一例を示す図である。
【図６】投入サーバＳＴの概要構成例を示す図である。
【図７】エッジサーバＳＥｍの概要構成例を示す図である。
【図８】ユーザ端末Ｔｍ−ｎの概要構成例を示す図である。
【図９】一実施形態に係るユーザ端末Ｔｍ−ｎの制御部４１における処理例を示すフローチャートである。
【図１０】一実施形態に係るユーザ端末Ｔｍ−ｎの制御部４１における処理例を示すフローチャートである。
【図１１】一実施形態に係るエッジサーバＳＥｍの制御部２１における処理例を示すフローチャートである。
【図１２】一実施形態に係るエッジサーバＳＥｍの制御部２１における処理例を示すフローチャートである。
【図１３】インデックス情報に登録される内容の一例を示す図である。
【図１４】一実施形態に係るユーザ端末Ｔｍ−ｎの制御部４１におけるコンテンツ取得処理の処理例を示すフローチャートである。
【図１５】一実施形態に係るコンテンツ配信システムＳにおけるＰ２ＰネットワークＰＷ２及び拠点Ｐ２ＰネットワークＰＬｍの構築例を示す図である。
【図１６】一実施形態に係るコンテンツ配信システムＳにおいてユーザ端末Ｔｍ−ｎがコンテンツを取得する場合の様子の一例を示した概念図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ配信システムに本発明を適用した場合の実施形態である。
【００２８】
［１．第１実施形態］
［１．１  コンテンツ配信システムの概要構成］
始めに、図１を参照して、本発明の第１実施形態に係るコンテンツ配信システムの概要構成について説明する。
【００２９】
図１は、本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。
【００３０】
図１に示すように、コンテンツ配信システムＳは、ネットワークＮＷに、配信センターネットワークＮＳと複数の拠点ネットワークＮＬｍ（ｍ＝１，２，３・・・の何れか）とが接続されている。このネットワークＮＷ、配信センターネットワークＮＳ、及び各拠点ネットワークＮＬｍは、現実世界の通信ネットワークである。なお、ネットワークＮＷは、外部ネットワークの一例である。また、拠点ネットワークＮＬｍは、内部ネットワークの一例である。
【００３１】
ネットワークＮＷは、配信センターネットワークＮＳ及び各拠点ネットワークＮＬｍを相互接続するためのネットワークである。このネットワークＮＷは、例えば、インターネットやＷＡＮ（Wide Area Network）等である。そして、ネットワークＮＷは、例えば、ＩＸ（Internet eＸchange）、ＩＳＰ（Internet Service Provider）、ＤＳＬ（Digital Subscriber Line）回線事業者の装置、ＦＴＴＨ（Fiber To The Home）回線事業者の装置、及び通信回線等によって構築されている。なお、ネットワークＮＷは、コンテンツ配信システムＳ専用のネットワークであっても良い。
【００３２】
配信センターネットワークＮＳは、配信センターの敷地内に構築されたネットワークである。この配信センターネットワークＮＳは、例えば、ＬＡＮ（Local Area Network）等により構築されている。
【００３３】
また、配信センターネットワークＮＳには、投入サーバＳＴ、管理サーバＳＭ、ポータルサーバＳＰ等のサーバ装置、及び管理端末ＭＴ等が接続されている。更に、配信センターネットワークＮＳには、通信回線ＬＳを介して配信センターネットワークＮＳとネットワークＮＷとを相互接続するファイアーウォールＦＷが接続されている。
【００３４】
各拠点ネットワークＮＬｍは、夫々拠点ｍの敷地内に構築されたネットワークである。拠点としては、例えば、会社、学校、病院、塾等がある。この拠点ネットワークＮＬｍは、例えば、ＬＡＮ等により構築されている。或いは、拠点ネットワークＮＬｍは、複数のＬＡＮが相互接続して構築されたネットワークであっても良い。この場合、複数のＬＡＮは、ルータ等のネットワーク機器を介して接続される。複数のＬＡＮが相互接続されたネットワークとしては、例えば、ＣＡＮ（Campus Area Network）等がある。
【００３５】
また、各拠点ネットワークＮＬｍには、複数のユーザ端末Ｔｍ−ｎ（ｎ＝１，２，３・・・の何れか）、及びエッジサーバＳＥｍが接続されている。更に、各拠点ネットワークには、通信回線Ｌｍを介して配信センターネットワークＮＳとネットワークＮＷとを相互接続するファイアーウォールＦＷ又はブロードバンドルータＢＲが接続されている。ファイアーウォールＦＷ又はブロードバンドルータＢＲの何れが拠点に設置されるかは、拠点毎に任意に決定される。なお、ユーザ端末Ｔｍ−ｎは、ノード装置の一例である。また、エッジサーバＳＥｍは、サポート装置の一例である。
【００３６】
このような構成のコンテンツ配信システムＳにおいて、構成要素たる各装置の機能概要は以下の通りである。
【００３７】
投入サーバＳＴは、後述するＰ２ＰネットワークＰＷにコンテンツデータを投入するサーバ装置である。ここで、コンテンツデータの投入とは、コンテンツデータをエッジサーバＳＥｍ及びユーザ端末Ｔｍ−ｎから取得可能な状態におくことをいう。なお、コンテンツデータを、「コンテンツ」という。
【００３８】
ポータルサーバＳＰは、ユーザ端末Ｔｍ−ｎからのリクエストに応じてＷｅｂページをユーザ端末Ｔｍ−ｎに送信する。ポータルサーバＳＰにより送信されるＷｅｂページは、コンテンツの一例として動画データを配信するＷｅｂサイトを構成する。
【００３９】
管理サーバＳＭは、配信するコンテンツを管理するためのＷｅｂアプリケーションを管理端末ＭＴに提供する。つまり、管理サーバＳＭは、コンテンツを管理するためのＷｅｂページを管理端末ＭＴに送信する。
【００４０】
ユーザ端末Ｔｍ−ｎは、拠点ｍにいるユーザにより使用される端末装置である。ユーザ端末Ｔｍ−ｎは、ポータルサーバＳＰ等のＷｅｂサーバからＷｅｂページを取得し、取得したＷｅｂページを画面表示する。また、ユーザ端末Ｔｍ−ｎは、他のユーザ端末Ｔｍ−ｎ、エッジサーバＳＥｍ又は投入サーバＳＴからコンテンツを取得し保存する。基本的にユーザ端末Ｔｍ−ｎは、どの拠点ｍに設置されているユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍからもコンテンツを取得することができる。ただし、ユーザ端末Ｔｍ−ｎは、他拠点のエッジサーバＳＥｍ又は他拠点のユーザ端末Ｔｍ−ｎからコンテンツを取得する場合には、同一拠点内のエッジサーバＳＥｍを介してコンテンツを取得する。更に、ユーザ端末Ｔｍ−ｎは、動画データ等のコンテンツを再生する。
【００４１】
エッジサーバＳＥｍは、各拠点ｍに少なくとも１台設置されている。エッジサーバＳＥｍは、同じ拠点ｍに接続する端末Ｔｍ−ｎによるコンテンツの取得を支援する。具体的に、エッジサーバＳＥｍは、同一拠点内のユーザ端末Ｔｍ−ｎと、他拠点のエッジサーバＳＥｍ又は他拠点のユーザ端末Ｔｍ−ｎとの間でやりとりされるメッセージを中継する。また、エッジサーバＳＥｍは、同一拠点内のユーザ端末Ｔｍ−ｎにより取得されたコンテンツに関連するコンテンツを他のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴから取得する。そして、エッジサーバＳＥｍは、取得したコンテンツを同一拠点内の何れかのユーザ端末Ｔｍ−ｎに保存させる。なお、或るコンテンツに関連するコンテンツを、当該或るコンテンツの「関連コンテンツ」という。基本的にエッジサーバＳＥｍは、どの拠点ｍに設置されているユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍからもコンテンツを取得することができる。また、エッジサーバＳＥｍは、取得したコンテンツを保存する。
【００４２】
ここで、同一拠点内のユーザ端末Ｔｍ−ｎ又はエッジサーバＳＥｍとは、コンテンツを取得するユーザ端末Ｔｍ−ｎが接続する拠点ネットワークＮＬｍに接続するユーザ端末Ｔｍ−ｎ又はエッジサーバＳＥｍである。また、他拠点のユーザ端末Ｔｍ−ｎ又はエッジサーバＳＥｍとは、コンテンツを取得するユーザ端末Ｔｍ−ｎが接続する拠点ネットワークＮＬｍ以外の拠点ネットワークＮＬｍに接続するユーザ端末Ｔｍ−ｎ又はエッジサーバＳＥｍである。なお、同一拠点内のユーザ端末Ｔｍ−ｎは、接続先ノード装置の一例である。また、同一拠点内のエッジサーバＳＥｍは、接続先サポート装置の一例である。また、他拠点のエッジサーバＳＥｍは、接続先外サポート装置の一例である。また、他拠点のユーザ端末Ｔｍ−ｎは、接続先外ノード装置の一例である。
【００４３】
［１．２  ピアツーピアネットワークの概要］
次に、図２を参照して、コンテンツ配信システムＳにおけるピアツーピアネットワークの概要を説明する。
【００４４】
図２は、本実施形態に係るコンテンツ配信システムＳにおけるＰ２ＰネットワークＰＷの構築例を示す図である。
【００４５】
コンテンツ配信システムＳにおいては、コンテンツ配信のためのピアツーピアネットワークが構築されている。このピアツーピアネットワークを、「Ｐ２ＰネットワークＰＷ」という。
【００４６】
図２に示すように、Ｐ２ＰネットワークＰＷは、ネットワークＮＷと複数の拠点ネットワークＮＬｍとにより形成されるネットワーク上に構築された論理的なオーバーレイネットワークである。このＰ２ＰネットワークＰＷは、コンテンツ配信システムＳを構成するユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍのうち、何れか複数のユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍの接続により形成されるネットワークである。なお、Ｐ２ＰネットワークＰＷには、投入サーバＳＴも接続されるようにしても良い。各拠点ネットワークＮＬｍからは、ブロードバンドルータＢＲやファイアーウォールＦＷを介してネットワークＮＷに接続される。そのため、ユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍが、ピアツーピア方式で通信を行えるよう、ブロードバンドルータＢＲやファイアーウォールＦＷにおいてポートフォワーディングの設定を行っておく。例えば、ブロードバンドルータＢＲであれば、ＵＰｎＰ（Universal Plug and Play）機能等を利用して自動的にポートフォワーディングの設定が行われるようにしておくと良い。
【００４７】
以下の説明においては、Ｐ２ＰネットワークＰＷに接続する装置を、「ノード」と称する。このノードに相当する装置は、ユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍである。或いは、ユーザ端末Ｔｍ−ｎ、エッジサーバＳＥｍ及び投入サーバＳＴがノードに相当する。
【００４８】
Ｐ２ＰネットワークＰＷは、特定のアルゴリズム、例えば、ＤＨＴ（Distributed Hash Table）を利用したアルゴリズムにより実現される。そして、コンテンツ配信システムＳに接続されている各ノードには、所定桁数からなる固有の識別情報であるノードＩＤが割り当てられている。
【００４９】
また、ノードＩＤは、例えば、各ノードに個別に割り当てられたＩＰアドレス、製造番号、或いはＭＡＣアドレス（Media Access Control address）等を共通のハッシュ関数によりハッシュ化した値である。ノードＩＤは、ＩＤ空間に偏りなく分散して配置されることになる。ハッシュ関数としては、例えば、ＳＨＡ−１等が用いられる。また、ハッシュ化した値は、例えば、ｂｉｔ長が１６０ｂｉｔとなる。そして、このノードＩＤは、ＩＤ空間に偏りなく分散して配置されることになる。なお、ノードＩＤは、Ｐ２ＰネットワークＰＷに接続するためのＰ２Ｐソフトウェアのセットアップ時に、システム管理者やユーザ等によってノード毎に登録されても良い。図２に示すＰ２ＰネットワークＰＷは、ノードＩＤのＩＤ空間をリング状のものとして示されている。そして、図２のリング状のＩＤ空間において示されている各ノードの位置は、夫々のノードＩＤに対応している。
【００５０】
Ｐ２ＰネットワークＰＷへの接続は、Ｐ２ＰネットワークＰＷに接続していないノードが、接続している任意のノードに対してコンテンツ配信システムへの参加要求を示す参加要求メッセージを送信することによって行われる。この参加要求メッセージは参加要求情報の一例である。ここで、Ｐ２ＰネットワークＰＷへの参加とは、ノードが、Ｐ２ＰネットワークＰＷに接続され、Ｐ２ＰネットワークＰＷからコンテンツを取得可能になることである。任意のノードは、例えば、Ｐ２ＰネットワークＰＷに常時接続しているコンタクトノードである。Ｐ２ＰネットワークＰＷにおけるコンタクトノードは、例えば、投入サーバＳＴである。
【００５１】
各ノードは、夫々、ＤＨＴを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ配信システムＳ上における各種メッセージの転送先を規定している。具体的に、このルーティングテーブルには、ＩＤ空間内で適度に離れたノードのアドレス等を示すノード情報が複数登録されている。このノード情報は、ノードのノードＩＤ、ＩＰアドレス及びポート番号を含む。
【００５２】
Ｐ２ＰネットワークＰＷに接続している１台のノードは、必要最低限のノードのノード情報をルーティングテーブルとして記憶している。各ノード間で互いに各種メッセージが転送されることで、ノード情報を記憶していないノードについてのノード情報が取得される。
【００５３】
このようなＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００５４】
Ｐ２ＰネットワークＰＷは、内容の異なる様々なコンテンツのレプリカを所定のファイル形式で複数のノードに分散して保存する。そして、各ノード間でレプリカが利用可能になっている。各コンテンツのオリジナルは投入サーバＳＴに保存されている。例えば、エッジサーバＳＥ５のコンテンツキャッシュエリアには、タイトルがＸＸＸの映画のコンテンツのレプリカが保存されている。一方、エッジサーバＳＥ３のコンテンツキャッシュエリアには、タイトルがＹＹＹの映画のコンテンツのレプリカが保存される。このように、コンテンツは複数のノードに分散されて保存されている。コンテンツキャッシュエリアとは、コンテンツを記憶保存するための領域である。実際のコンテンツキャッシュエリアは、例えば、ノードが備える特定のハードディスクに割り当てられていたり、ハードディスクの特定のパーティションに割り当てられていたりする。エッジサーバＳＥｍのコンテンツキャッシュエリアの記憶容量は、ユーザ端末Ｔｍ−ｎのコンテンツキャッシュエリアの記憶容量よりも大きくなっている。一例として、エッジサーバＳＥｍのコンテンツキャッシュエリアの記憶容量は、ユーザ端末Ｔｍ−ｎのコンテンツキャッシュエリアの記憶容量の１０〜１００倍程度である。コンテンツキャッシュエリアにコンテンツが保存しきれなくなった場合は、新しいコンテンツを保存するため、例えば、コンテンツキャッシュエリアから、旧い順にコンテンツが削除される。コンテンツの新旧は、例えば、コンテンツの利用日時等により判断される。以下、コンテンツのレプリカが保存されるノードを、「コンテンツ保持ノード」という。また、以下の説明においては、オリジナルのコンテンツとレプリカとを特に区別することなく、コンテンツと称する。
【００５５】
上述のコンテンツには、夫々、コンテンツ名及びコンテンツ毎に固有の識別情報であるコンテンツＩＤ等の情報が付加されている。このコンテンツＩＤは、例えば、コンテンツ名＋任意の数値が、上記ノードＩＤを得るときと共通のハッシュ関数によりハッシュ化されて生成される。或いは、システム管理者が、コンテンツ毎に一意のＩＤ値を付与しても良い。
【００５６】
分散保存されているコンテンツの所在は、インデックス情報として、コンテンツの所在を管理（記憶）しているノード等により記憶される。以下、コンテンツの所在を管理（記憶）しているノードを、「ルートノード」という。インデックス情報は、コンテンツを保存したノードのノード情報と、コンテンツのコンテンツＩＤと等の組を含む。このようなルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤを有するノードであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００５７】
例えば、タイトルがＸＸＸの映画のコンテンツについてのインデックス情報は、そのコンテンツのルートノードであるユーザ端末Ｔ３−１により管理される。また、例えば、タイトルがＹＹＹの映画のコンテンツについてのインデックス情報は、そのコンテンツのルートノードであるユーザ端末Ｔ３−３により管理される。
【００５８】
そして、或るノードのユーザが、所望するコンテンツを取得したい場合、このコンテンツの取得を望むノードは、メッセージを生成する。以下、ユーザによりコンテンツの取得を望むノードを、「ユーザノード」という。このメッセージは、取得を望むコンテンツのコンテンツＩＤ、ユーザノードのＩＰアドレス、ポート番号等を含むコンテンツ所在問合せメッセージである。コンテンツ所在問合せメッセージは、コンテンツ保持ノードを検索するためのメッセージである。上述のコンテンツ所在問合せメッセージが、ユーザノードが取得するＤＨＴのルーティングテーブルに従って、他のノードに対して送出される。つまり、ユーザノードは、コンテンツ所在問合せメッセージを、ルートノードに向けて送出する。これにより、コンテンツ所在問合せメッセージは、コンテンツＩＤをキーとするＤＨＴルーティングによって最終的にルートノードに到着することになる。なお、コンテンツ所在問合せメッセージは、要求情報の一例である。
【００５９】
各ノードにおいて、コンテンツのコンテンツＩＤ等の属性情報は、コンテンツカタログ情報に記述されている。このコンテンツカタログ情報に記述されるコンテンツの属性情報としては、例えば、コンテンツ名、コンテンツＩＤ、コンテンツの公開開始日時、公開終了日時、有効無効フラグ等がある。有効無効フラグは、コンテンツが有効であるか無効であるかを示すフラグである。この有効無効フラグが無効を示す場合、該当するコンテンツはコンテンツキャッシュエリアから削除される。
【００６０】
コンテンツカタログ情報は、例えば、投入サーバＳＴから全てのノードに配信される。このコンテンツカタログ情報の配信は、例えば、特開２００７−０５３６６２号公報にて開示されたＤＨＴマルチキャスト（マルチキャストメッセージ転送処理）により行われても良い。また、各ノードが、定期的に投入サーバＳＴにアクセスすることによりコンテンツカタログ情報を取得しても良い。
【００６１】
なお、ＤＨＴルーティングについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００６２】
上記コンテンツ所在問合せメッセージを受信したルートノードは、これに含まれるコンテンツＩＤに対応するインデックス情報をインデックス情報キャッシュから取得する。取得されたインデックス情報は、コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信される。こうしてインデックス情報を取得したユーザノードは、インデックス情報に基づいてコンテンツをダウンロード（取得）することができる。インデックス情報に含まれるコンテンツ保持ノードのＩＰアドレス及びポート番号等に基づいて、ユーザノードはコンテンツ保持ノードにアクセスする。ユーザノードは、アクセスしたコンテンツ保持ノードから、コンテンツをダウンロードすることが可能になる。なお、インデックス情報には、複数のコンテンツ保持ノードのノード情報が含まれていることもある。この場合、ユーザノードは、この複数のコンテンツ保持ノードのうち１つのコンテンツ保持ノードを選択する。そして、ユーザノードは、選択したコンテンツ保持ノードに接続してコンテンツをダウンロードすることができる。
【００６３】
なお、ルートノードは、このインデックス情報に含まれるＩＰアドレス及びポート番号等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信しても良い。これにより、ユーザノードは、上記コンテンツ保持ノードからそのコンテンツをダウンロードすることもできる。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、このルートノードと同じインデックス情報をキャッシュしているキャッシュノードからこのインデックス情報を取得することもできる。
【００６４】
ユーザノードが、コンテンツ保持ノードからコンテンツを取得して保存したとき、保存したユーザノードは、パブリッシュメッセージを生成する。このパブリッシュメッセージは、コンテンツを保存したことをルートノードへ知らせるためのメッセージである。パブリッシュメッセージは、コンテンツのコンテンツＩＤ及びコンテンツを保存したノード装置のノード情報を含む。パブリッシュメッセージは、ルートノードに向けて送出される。これにより、パブリッシュメッセージは、コンテンツ所在問合せメッセージと同じように、コンテンツＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになる。そして、ルートノードは、パブリッシュメッセージを受信する。ルートノードは、パブリッシュメッセージに含まれるノード情報及びコンテンツＩＤの組を含むインデックス情報をインデックス情報キャッシュ領域に記憶する。こうして、上記ユーザノードは、新たに、上記コンテンツを保持するコンテンツ保持ノードとなる。
【００６５】
［１．３  コンテンツ配信の概要］
次に、図３乃至図５を参照して、コンテンツを配信する場合におけるコンテンツ配信システムＳの動作概要について説明する。
【００６６】
図３及び図４は、本実施形態に係るコンテンツ配信システムＳにおいてユーザ端末Ｔｍ−ｎがコンテンツを取得する場合の様子の一例を示した概念図である。
【００６７】
或るユーザ端末Ｔｍ−ｎ、例えば、ユーザ端末Ｔ１−１がポータルサーバＳＰにアクセスすることにより、Ｗｅｂページを受信して画面表示する。そして、画面表示されたＷｅｂページ上で、ユーザが或るコンテンツ、例えば、コンテンツＡの再生を要求する。すると、ユーザ端末Ｔ１−１は、コンテンツＡの所在を検索して取得する。具体的に、ユーザ端末Ｔ１−１は、検索要求メッセージをＬ２（レイヤー２）ブロードキャストで送信する（図３（１））。従って、検索要求メッセージは、同一拠点内の他のユーザ端末Ｔｍ−ｎに送信される。この検索要求メッセージには、コンテンツＡのコンテンツＩＤが含まれている。検索要求メッセージを受信したユーザ端末Ｔｍ−ｎのうち、例えば、ユーザ端末Ｔ１−５がコンテンツＡを保存している場合、このユーザ端末Ｔ１−５は、コンテンツＡをユーザ端末Ｔ１−１に送信する（図３（２Ａ））。コンテンツの取得先として同一拠点内のユーザ端末Ｔｍ−ｎが最優先で選択される理由は、同一拠点内のエッジサーバＳＥｍの負荷を軽減させるため、及び、通信回線Ｌｍのトラフィックを軽減させるためである。
【００６８】
拠点ネットワークＮＬ１に接続する他のユーザ端末Ｔｍ−ｎが何れもコンテンツＡを保存していない場合、ユーザ端末Ｔ１−１は同一拠点内のユーザ端末Ｔｍ−ｎからコンテンツＡを取得することができない。そこで、ユーザ端末Ｔ１−１は、コンテンツ所在問合せメッセージを送信する。通常、コンテンツ所在問合せメッセージは、ＤＨＴのルーティングテーブルに従って他のノードに送信される。しかしながら本実施形態においては、コンテンツ所在問合せメッセージは同一拠点内のエッジサーバＳＥｍに送信される。つまりこの場合、コンテンツ所在問合せメッセージはエッジサーバＳＥ１に送信される（図３（２Ｂ））。これによって、ユーザ端末Ｔ１−１は、エッジサーバＳＥ１をプロクシとしてコンテンツ所在問合せメッセージを中継させる。エッジサーバＳＥ１がコンテンツＡを保存している場合には、エッジサーバＳＥ１は、コンテンツＡをユーザ端末Ｔ１−１に送信する（図３（３Ｂ））。この場合、エッジサーバＳＥ１は、コンテンツ所在問合せメッセージを中継する必要がない。
【００６９】
エッジサーバＳＥ１がコンテンツＡを保存していない場合、エッジサーバＳＥ１は、受信したコンテンツ所在問合せメッセージの中継を行う。この場合、エッジサーバＳＥ１は、ルーティングテーブルに従って他のノードにコンテンツ所在問合せメッセージを送信する（図４（３Ｃ））。このコンテンツ所在問合せメッセージは、例えば、エッジサーバＳＥ６を経由して、ルートノードであるユーザ端末Ｔ５−１に転送される。
【００７０】
コンテンツ所在問合せメッセージを受信したユーザ端末Ｔ５−１は、コンテンツＡのインデックス情報を含む検索応答メッセージをエッジサーバＳＥ１に送信する（図４（４Ｃ））。エッジサーバＳＥ１は、受信した検索応答メッセージをユーザ端末Ｔ１−１に中継する（図４（５Ｃ））。
【００７１】
ユーザ端末Ｔ１−１は、受信した検索応答メッセージに含まれるインデックス情報に基づいて、コンテンツＡの取得先としてのコンテンツ保持ノードを選択する。この場合のコンテンツ保持ノードは、他拠点のエッジサーバＳＥｍ又は他拠点のユーザ端末Ｔｍ−ｎである。ユーザ端末Ｔ１−１は、コンテンツ保持ノードを選択すると、コンテンツ要求メッセージを送信する。通常、コンテンツ要求メッセージはコンテンツ保持ノードに直接送信される。しかしながら本実施形態においては、コンテンツ要求メッセージは同一拠点内のエッジサーバＳＥｍに送信される。つまりこの場合、コンテンツ要求メッセージはエッジサーバＳＥ１に送信される（図４（６Ｃ））。エッジサーバＳＥ１は、受信したコンテンツ要求メッセージの中継を行う。この場合、エッジサーバＳＥ１は、ユーザ端末Ｔ１−１により選択されたコンテンツ保持ノード、例えば、ユーザ端末Ｔ４−３にコンテンツ要求メッセージを送信する（図４（７Ｃ））。
【００７２】
コンテンツ要求メッセージを受信したユーザ端末Ｔ４−３は、コンテンツＡをエッジサーバＳＥ１に送信する（図４（８Ｃ））。このとき、ユーザ端末Ｔ４−３は、実際にはコンテンツＡを含むコンテンツ要求応答メッセージを送信する。エッジサーバＳＥ１は、受信したコンテンツ要求応答メッセージに含まれるコンテンツを保存するとともに、このコンテンツ要求応答メッセージをユーザ端末Ｔ１−１に中継する（図４（９Ｃ））。
【００７３】
また、エッジサーバＳＥ１は、コンテンツＡの関連コンテンツ、例えば、コンテンツＢを取得する（図４（１０Ｃ））。この場合におけるコンテンツの取得方法は、前述のピアツーピアネットワークの概要で説明した通りである。エッジサーバＳＥ１は、取得したコンテンツＢを保存するとともに、このコンテンツＢを同一拠点内の何れかのユーザ端末Ｔｍ−ｎ、例えば、ユーザ端末Ｔ１−７に送信する（図４（１１Ｃ））。このとき、エッジサーバＳＥｍは、実際にはコンテンツＢを含むコンテンツプッシュ要求メッセージを送信する。そして、ユーザ端末Ｔ１−７は、受信したコンテンツプッシュ要求メッセージに含まれるコンテンツＢを保存する（図４（１２Ｃ））。
【００７４】
なお、エッジサーバＳＥ１による関連コンテンツの取得及び送信は、例えば、エッジサーバＳＥ１の回線の使用帯域に余裕があるときや、ＣＰＵ使用率が低いときに行われる。また、関連コンテンツは同一拠点内の複数のユーザ端末Ｔｍ−ｎに送信されても良い。また、例えば、ＣＰＵ使用率が相対的に低いユーザ端末Ｔｍ−ｎ、コンテンツキャッシュエリアの空き容量が相対的に大きいユーザ端末Ｔｍ−ｎ、又は、コンテンツを再生中ではないユーザ端末Ｔｍ−ｎ等が、関連コンテンツの送信先として選定されても良い。ＣＰＵ使用率、コンテンツキャッシュエリアの空き容量、コンテンツを再生中であるか否かの情報は、例えば、定期的にユーザ端末Ｔｍ−ｎが送信することで、エッジサーバＳＥｍは、これらの情報を取得することができる。
【００７５】
ユーザ端末Ｔ１−１のユーザが、コンテンツＡを視聴した後、コンテンツＡに関連するコンテンツＢを視聴したい場合、図３（１）に示すように、ユーザ端末Ｔ１−１は、先ず同一拠点内のユーザ端末Ｔｍ−ｎの中からコンテンツＢを取得しようとする。そして、コンテンツＢはユーザ端末Ｔ１−７に保存されているので、ユーザ端末Ｔ１−１はユーザ端末Ｔ１−７からコンテンツを取得することができる。よって、ユーザ端末Ｔ１−１は、エッジサーバＳＥ１にメッセージを送信してコンテンツＢを中継させる必要がない。従って、エッジサーバＳＥ１の負荷を軽減させることができる。
【００７６】
［１．３．１  Ｐ２Ｐ制御メッセージの中継］
Ｐ２ＰネットワークＰＷにおいて情報のやりとりに用いられるメッセージをＰ２Ｐ制御メッセージという。Ｐ２Ｐ制御メッセージには、例えば、コンテンツ所在問合せメッセージ、検索応答メッセージ、コンテンツ要求メッセージ、コンテンツ要求応答メッセージ等がある。エッジサーバＳＥｍは、プロクシとして、同一拠点内のユーザ端末Ｔｍ−ｎと、他拠点のエッジサーバＳＥｍ及び他拠点のユーザ端末Ｔｍ−ｎとの間のＰ２Ｐ制御メッセージを中継する必要がある。ただし、エッジサーバＳＥｍは、プロクシとして中継を行わないＰ２Ｐ制御メッセージについては、メッセージの内容に応じた処理を行う必要がある。そこで、エッジサーバＳＥｍが、受信したＰ２Ｐ制御メッセージに応じた適切な処理を行うための方法の一例を以下に説明する。
【００７７】
例えば、通常のＰ２Ｐ制御メッセージのやりとりに用いられるポート番号とは別のポート番号を各エッジサーバＳＥｍに割り当てる。このポート番号は、エッジサーバＳＥｍがプロクシとして中継するＰ２Ｐ制御メッセージのやりとりに用いられるＰ２Ｐ制御メッセージ中継用のポート番号である。ルーティングテーブルに登録されるエッジサーバＳＥｍのノード情報には、通常のＰ２Ｐ制御メッセージのやりとりに用いられるポート番号が設定されるようにする。各ノードは、ルーティングテーブルに登録されているノード情報のポート番号をパケットヘッダの宛先ポート番号として、他のノードにＰ２Ｐ制御メッセージを送信するからである。一方、各ユーザ端末Ｔｍ−ｎは、同一拠点内のエッジサーバＳＥｍにＰ２Ｐ制御メッセージを中継させる場合には、通常のＰ２Ｐ制御メッセージのやりとりに用いられるポート番号とは異なるポート番号をパケットヘッダの宛先ポート番号とする。この場合、宛先ポート番号には、Ｐ２Ｐ制御メッセージ中継用のポート番号が設定される。同一拠点内のエッジサーバＳＥｍに割り当てられたＰ２Ｐ制御メッセージ中継用のポート番号は、例えば、Ｐ２Ｐソフトウェアのセットアップ時にシステム管理者やユーザ等によってユーザ端末Ｔｍ−ｎに登録されるようにしておけば良い。
【００７８】
Ｐ２Ｐ制御メッセージを受信したエッジサーバＳＥｍは、どのポート番号で受信したかを確認することで、受信したＰ２Ｐ制御メッセージが中継すべきメッセージであるか否かを判定することができる。エッジサーバＳＥｍは、通常のＰ２Ｐ制御メッセージのやりとりに用いられるポート番号でＰ２Ｐ制御メッセージを受信した場合には、メッセージの内容に応じた通常の処理を行う。一方、エッジサーバＳＥｍは、Ｐ２Ｐ制御メッセージ中継用のポート番号でＰ２Ｐ制御メッセージを受信した場合には、例えば、次の処理を行う。
【００７９】
エッジサーバＳＥｍは、コンテンツ所在問合せメッセージを受信した場合には、検索対象のコンテンツがコンテンツキャッシュエリアに保存されているか否かを確認する。そして、エッジサーバＳＥｍは、検索対象のコンテンツが保存されている場合には、このコンテンツをコンテンツキャッシュエリアから取得し、コンテンツ所在問合せメッセージの送信元のユーザノード、つまり、同一拠点内のユーザ端末Ｔｍ−ｎに送信する。
【００８０】
一方、エッジサーバＳＥｍは、検索対象のコンテンツが保存されていない場合には、ルーティングテーブルに従って、受信したコンテンツ所在問合せメッセージを中継する。このとき、エッジサーバＳＥｍは、受信したコンテンツ要求メッセージに対して何れか未使用のポート番号を割り当てる。このポート番号は、通常のＰ２Ｐ制御メッセージのやりとりに用いられるポート番号とも、Ｐ２Ｐ制御メッセージ中継用のポート番号とも異なるポート番号である。エッジサーバＳＥｍは、割り当てたポート番号と、ユーザノードのＩＰアドレス及びポート番号を含む要求元情報とを対応付けて中継管理テーブルに登録する。ユーザノードのＩＰアドレス及びポート番号は、受信されたメッセージのパケットヘッダに、送信元アドレス及び送信元ポート番号として設定されている。そして、エッジサーバＳＥｍは、割り当てたポート番号を用いてコンテンツ所在問合せメッセージを中継する。コンテンツ所在問合せメッセージには、パケットヘッダの送信元アドレス及び送信元ポート番号とは別に、ユーザノードのＩＰアドレス及びポート番号が要求元情報として設定される。この要求元情報は、コンテンツ所在問合せメッセージを受信したルートノードが、ユーザノードに対して検索応答メッセージを直接送信するための情報である。エッジサーバＳＥｍは、この要求元情報のユーザノードのＩＰアドレス及びポート番号を、エッジサーバＳＥｍのＩＰアドレス及び、新たに割り当てたポート番号に書き換える。これによって、ルートノードが検索応答メッセージをエッジサーバＳＥｍに送信するようになる。
【００８１】
検索応答メッセージを受信したエッジサーバＳＥｍは、受信した際のポート番号から、検索応答メッセージが中継すべきメッセージであると判断することができる。そこで、エッジサーバＳＥｍは、検索応答メッセージを受信した際のポート番号に対応付けて中継管理テーブルに登録されている要求元情報を取得する。そして、エッジサーバＳＥｍは、取得した要求元情報に基づいて、ユーザノードである同一拠点内のユーザ端末Ｔｍ−ｎに検索応答メッセージを中継する。エッジサーバＳＥｍは、不要となったポート番号とユーザノードの要求元情報とを中継管理テーブルから削除する。
【００８２】
なお、エッジサーバＳＥｍは、検索応答メッセージを中継しなくても良い。この場合、エッジサーバＳＥｍは、コンテンツ所在問合せメッセージを中継する際には、ユーザノードの要求元情報の書き換えを行わず、また、ポート番号の割り当ても行わなければ良い。これによって、ルートノードが検索応答メッセージをユーザノードに直接送信するようになる。
【００８３】
エッジサーバＳＥｍは、Ｐ２Ｐ制御メッセージ中継用のポート番号でコンテンツ要求メッセージを受信した場合には、コンテンツ所在問合せメッセージを受信した場合と同様の処理を行う。具体的に、エッジサーバＳＥｍは、ポート番号の割り当て、中継管理テーブルへの登録を行う。そして、エッジサーバＳＥｍは、コンテンツ要求メッセージをコンテンツ保持ノードに中継する。この場合において、ユーザノードとしてのユーザ端末Ｔｍ−ｎは、エッジサーバＳＥｍに対して送信するコンテンツ要求メッセージに、コンテンツ保持ノードのＩＰアドレス及びポート番号をコンテンツ要求先情報として含める。エッジサーバＳＥｍは、受信したコンテンツ要求メッセージに含まれるコンテンツ要求先情報を参照することにより、中継先のコンテンツ保持ノードがどのノードであるかを認識することができる。
【００８４】
そして、コンテンツ要求応答メッセージを受信したエッジサーバＳＥｍは、検索応答メッセージを受信した場合と同様に、受信したコンテンツ要求応答メッセージをユーザノードに中継する。
【００８５】
［１．３．２  コンテンツの関連付け］
エッジサーバＳＥｍは、関連コンテンツを取得するにあたり、どのコンテンツとどのコンテンツとが関連しているかを、関連コンテンツ定義ファイルを用いて判断する。関連コンテンツ定義ファイルは、コンテンツ同士の関連付けが記述されたファイルである。この関連コンテンツ定義ファイルは、例えば、システム管理者により作成される。そして、作成された関連コンテンツ定義ファイルは、投入サーバＳＴにより、各エッジサーバＳＥｍに配信される。この関連コンテンツ定義ファイルの配信は、例えば、特開２００７−０５３６６２号公報にて開示されたＤＨＴマルチキャストにより行われても良い。また、各エッジサーバＳＥｍが、定期的に投入サーバＳＴにアクセスすることにより関連コンテンツ定義ファイルを取得しても良い。
【００８６】
図５は、関連付け定義ファイルに記述されるコンテンツの関連付けの一例を示す図である。最も単純な例では、図５（ａ）に示すように、コンテンツが１対１で関連付けられる。図５（ａ）では、○○映画のパート１とパート２とが関連付けられている。つまり、話数や正編と後編等のバージョン違いのコンテンツ同士が関連付けられている。この場合、○○映画のパート１の関連コンテンツは○○映画のパート２であり、○○映画のパート２の関連コンテンツは○○映画のパート１である。なお、図５に示す矢印は、コンテンツ同士が関連付けられていることを示す。
【００８７】
図５（ｂ）は、コンテンツが１対複数で関連付けられている例である。図５（ｂ）では、○○映画に対して、○○映画のＣＭ（Commercial Message）が視聴者層毎に対応付けられている。つまり、○○映画というコンテンツに対して、この○○映画に関連する情報を内容とする複数のコンテンツが関連付けられている。具体的に、○○映画の関連コンテンツは、Ｍ１層用ＣＭ、Ｍ２層用ＣＭ、Ｆ１層用ＣＭ、及びＦ２層用ＣＭである。一方、Ｍ１層用ＣＭ、Ｍ２層用ＣＭ、Ｆ１層用ＣＭ、及びＦ２層用ＣＭ夫々の関連コンテンツは、○○映画である。エッジサーバＳＥｍは、何れかのＣＭのコンテンツを取得すると、関連コンテンツとして○○映画のコンテンツを取得する。このとき、エッジサーバＳＥｍは、○○映画の関連付けから、図５（ｂ）に示す４個のコンテンツのうち、取得したコンテンツ以外の３個のＣＭのコンテンツを関連コンテンツとして取得しても良い。つまり、エッジサーバＳＥｍは、最初に取得したコンテンツから、直接関連付けられているコンテンツを取得するだけではなく、関連付けを全て辿って関連コンテンツを取得しても良い。
【００８８】
図５（ｃ）も、コンテンツが１対複数で関連付けられている例である。図５（ｃ）では、文系数学のカリキュラム説明に対して、文系数学に含まれる複数の教科が関連付けられている。つまり、文系数学に含まれる複数の教科の講義コンテンツに対して、これらの教科をまとめて説明するコンテンツが関連付けられている。具体的に、文系数学のカリキュラム説明の関連コンテンツは、数学Ｉ、数学II、数学Ａ、及び数学Ｂである。一方、数学Ｉ、数学II、数学Ａ、及び数学Ｂ夫々の関連コンテンツは、文系数学のカリキュラム説明である。
【００８９】
図５（ｄ）は、コンテンツが複数対複数で関連付けられている例である。図５（ｄ）では、高校数学の必修の説明、高校数学の文系の説明、及び高校数学の理系の説明に対して、夫々の数学に含まれる複数の教科が関連付けられている。具体的に、高校数学の必修の説明の関連コンテンツは、数学Ｉ、及び数学IIである。また、高校数学の文系の説明の関連コンテンツは、数学Ｉ、及び数学II、数学Ａ、及び数学Ｂである。また、高校数学の理系の説明の関連コンテンツは、数学Ｉ、数学II、数学III、数学Ａ、数学Ｂ、及び数学Ｃである。一方、数学Ｉ及び数学II夫々の関連コンテンツは、高校数学の必修の説明、文系の説明、及び理系の説明である。また、数学Ａ及び数学Ｂ夫々の関連コンテンツは、高校数学の文系の説明、及び理系の説明である。また、数学III及び数学Ｃ夫々の関連コンテンツは、高校数学の理系の説明である。エッジサーバＳＥｍが、最初に取得したコンテンツから関連付けを全て辿って関連コンテンツを取得する場合、図５（ｄ）に示す９個のコンテンツのうち最初に取得したコンテンツが何れであっても、最初に取得したコンテンツ以外の８個のコンテンツが関連コンテンツとして取得される。これは、図５（ｂ）で説明した関連付けを全て辿って関連コンテンツを取得する場合と同様である。
【００９０】
［１．４  投入サーバＳＴの構成及び機能等］
次に、図６を参照して、投入サーバＳＴの構成及び機能について説明する。
【００９１】
図６は、投入サーバＳＴの概要構成例を示す図である。
【００９２】
投入サーバＳＴは、図６に示すように、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データ及びプログラムを記憶するＲＯＭ等から構成されたコンピュータとしての制御部１１を備えている。また、投入サーバＳＴは、各種データ及び各種プログラム等を記憶保存するためのＨＤ等から構成された記憶部１２を備えている。更に、投入サーバＳＴは、配信センターネットワークＮＳを通じて管理サーバＳＭ等との間の情報の通信制御を行ったり、ネットワークＮＷ等を通じてエッジサーバＳＥｍとの間の情報の通信制御を行うための通信部１３を備えている。そして、制御部１１、記憶部１２、及び通信部１３はバス１４を介して相互に接続されている。
【００９３】
記憶部１２には、各エッジサーバＳＥｍ及び各ユーザ端末Ｔｍ−ｎのノードＩＤ、ＩＰアドレス及びポート番号等が記憶されている。また、記憶部１２には、配信対象となるコンテンツが記憶されている。また、記憶部１２には、関連コンテンツ定義ファイルが記憶されている。また、記憶部１２には、オペレーティングシステム、コンテンツ配信制御プログラム、運用管理プログラム、拠点サーバ管理プログラム等が記憶されている。なお、これらのプログラムは、例えば、配信センターネットワークＮＳ上の所定のサーバからダウンロードされるようにしても良い。また、これらのプログラムは、例えば、記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【００９４】
制御部１１は、ＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、投入サーバＳＴ全体を統括制御する。
【００９５】
［１．５  エッジサーバの構成及び機能等］
次に、図７を参照して、エッジサーバＳＥｍの構成及び機能について説明する。
【００９６】
図７は、エッジサーバＳＥｍの概要構成例を示す図である。
【００９７】
エッジサーバＳＥｍは、図７に示すように、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データ及びプログラムを記憶するＲＯＭ等から構成されたコンピュータとしての制御部２１を備えている。また、エッジサーバＳＥｍは、各種データ及び各種プログラム等を記憶保存するためのＨＤ（ハードディスク）等から構成された記憶部２２と、受信されたコンテンツ等を一時蓄積するバッファメモリ２３とを備えている。なお、記憶部２２は、第２記憶手段の一例である。更に、エッジサーバＳＥｍは、コンテンツに含まれるエンコードされたビデオデータ（映像情報）及びオーディオデータ（音声情報）等をデコードするデコーダ部２４を備えている。また更に、エッジサーバＳＥｍは、上記デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部２５と、この映像処理部２５から出力されたビデオ信号に基づき映像表示するＣＲＴ，液晶ディスプレイ等の表示部２６と、を備えている。更にまた、エッジサーバＳＥｍは、上記デコードされたオーディオデータをアナログオーディオ信号にＤ （Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する音声処理部２７と、この音声処理部２７から出力されたオーディオ信号を音波として出力するスピーカ２８と、を備えている。また更に、エッジサーバＳＥｍは、拠点ネットワークＮＬｍを通じてユーザ端末Ｔｍ−ｎとの間の情報の通信制御を行ったり、ネットワークＮＷを通じて他のエッジサーバＳＥｍや投入サーバＳＴ等との間の情報の通信制御を行うための通信部２９を備えている。更にまた、エッジサーバＳＥｍは、ユーザからの指示を受け付けこの指示に応じた指示信号を制御部２１に対して与える入力部（例えば、キーボード、マウス、或いは、リモコンや操作パネル等）３０を備えている。そして、制御部２１、記憶部２２、バッファメモリ２３、デコーダ部２４、通信部２９、及び入力部３０はバス３１を介して相互に接続されている。なお、エッジサーバＳＥｍとしては、例えば、専用のサーバ装置のほか、パーソナルコンピュータ等を適用可能である。なお、エッジサーバ上で、ユーザがコンテンツを再生利用しない場合は、デコーダ部２４、映像処理部２５、表示部２６、音声処理部２７、スピーカ２８、入力部３０は不要である。
【００９８】
記憶部２２には、ＤＨＴを用いたルーティングテーブル、インデックス情報、コンテンツカタログ情報、及び関連コンテンツ定義ファイル等が記憶されている。また、記憶部２２には、Ｐ２ＰネットワークＰＷに参加する際のアクセス先となるコンタクトノードのＩＰアドレス及びポート番号、及び投入サーバＳＴのＩＰアドレス及びポート番号等が記憶されている。また、記憶部２２には、エッジサーバＳＥｍが設置される拠点ｍの拠点識別情報、及びエッジサーバＳＥｍに割り当てられたノードＩＤが記憶されている。また、記憶部２２には、関連コンテンツの取得及び送信の条件となる使用帯域幅上限値又はＣＰＵ使用率上限値が記憶されている。また、記憶部２２の記憶容量の一部にコンテンツキャッシュエリアが割り当てられている。このコンテンツキャッシュエリアにはコンテンツが記憶される。また、記憶部２２には、オペレーティングシステム、エッジサーバ用プロクシプログラム、Ｐ２Ｐソフトウェア等が記憶されている。これらのプログラムは、例えば、投入サーバＳＴからダウンロードされるようにしても良い。また、これらのプログラムは、例えば、記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。なお、エッジサーバ用プロクシプログラム、及びＰ２Ｐソフトウェアプログラムは、情報通信処理プログラムの一例である。
【００９９】
制御部２１は、ＣＰＵが記憶部２２等に記憶されたプログラムを読み出して実行することにより、本発明における関連コンテンツ取得手段、関連コンテンツ送信手段、及び中継手段として機能する。
【０１００】
［１．６  ユーザ端末の構成及び機能等］
次に、図８を参照して、ユーザ端末Ｔｍ−ｎの構成及び機能について説明する。
【０１０１】
図８は、ユーザ端末Ｔｍ−ｎの概要構成例を示す図である。
【０１０２】
ユーザ端末Ｔｍ−ｎは、図８に示すように、制御部４１、記憶部４２、バッファメモリ４３、デコーダ部４４、映像処理部４５、表示部４６、音声処理部４７、スピーカ部４８、通信部４９、入力部５０、及びバス５１を備える。制御部４１、記憶部４２、バッファメモリ４３、デコーダ部４４、映像処理部４５、表示部４６、音声処理部４７、スピーカ部４８、入力部５０、及びバス５１の基本的な構成及び機能は、エッジサーバＳＥｍにおける制御部２１、記憶部２２、バッファメモリ２３、デコーダ部２４、映像処理部２５、表示部２６、音声処理部２７、スピーカ部２８、入力部３０、バス３１と同様である。なお、ユーザ端末Ｔｍ−ｎとしては、例えば、パーソナルコンピュータ等を適用可能である。
【０１０３】
通信部４９は、拠点ネットワークＮＬｍを通じて他のユーザ端末Ｔｍ−ｎやエッジサーバＳＥｍとの間の情報の通信制御を行ったり、ネットワークＮＷを通じてポータルサーバＳＰ等との間の情報の通信制御を行う。
【０１０４】
記憶部４２には、ＤＨＴを用いたルーティングテーブル、インデックス情報、コンテンツカタログ情報等が記憶されている。また、記憶部４２には、Ｐ２ＰネットワークＰＷに参加する際のアクセス先となるコンタクトノードのＩＰアドレス及びポート番号、投入サーバＳＴのＩＰアドレス及びポート番号、同一拠点内のエッジサーバＳＥｍのＩＰアドレス及びポート番号等が記憶されている。また、記憶部４２には、ユーザ端末Ｔｍ−ｎが設置される拠点ｍの拠点識別情報、及びユーザ端末Ｔｍ−ｎに割り当てられたノードＩＤが記憶されている。また、記憶部４２の記憶容量の一部にコンテンツキャッシュエリアが割り当てられている。このコンテンツキャッシュエリアにはコンテンツが記憶される。また、記憶部４２には、オペレーティングシステム、ユーザ用コンテンツ取得プログラム、Ｐ２Ｐソフトウェア、Ｗｅｂブラウザプログラム、プレーヤープログラム等が記憶されている。なお、これらのプログラムは、例えば、エッジサーバＳＥｍやポータルサーバＳＰ等からダウンロードされるようにしても良い。また、これらのプログラムは、例えば、記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【０１０５】
制御部４１は、ＣＰＵが記憶部４２等に記憶されたプログラムを読み出して実行することにより、本発明におけるコンテンツ取得手段、関連コンテンツ受信手段、要求情報送信手段、及びコンテンツ受信手段として機能する。
【０１０６】
［１．７  コンテンツ配信システムの動作］
次に、図９乃至図１２を参照して、本実施形態に係るコンテンツ配信システムＳの動作について説明する。
【０１０７】
コンテンツ配信システムＳにおいては、動画データ等の再生可能なコンテンツが複数のデータに分割されている。この分割された個々のデータを、「コンテンツチャンク」という。このコンテンツチャンクにも、通常のコンテンツと同様にコンテンツＩＤが割り当てられている。従って、コンテンツチャンクも通常のコンテンツと同様の方法で取得することができる。コンテンツを再生する場合、ユーザ端末Ｔｍ−ｎは、再生対象のコンテンツをコンテンツチャンク単位で順次取得しながら再生を行う。再生すべき複数のコンテンツチャンクのコンテンツＩＤ及びその再生順のリスト情報は、例えば、ユーザ端末Ｔｍ−ｎがポータルサーバＳＰにアクセスした際に、再生するコンテンツをユーザが選択すると、ユーザ端末Ｔｍ−ｎがポータルサーバＳＰから取得されるようにしても良い。
【０１０８】
なお、図９乃至図１２は、コンテンツチャンクの取得に関する処理を主として示している。コンテンツチャンク以外の通常のコンテンツの取得に関する詳細な処理については、適宜図示が省略されている。
【０１０９】
図９及び図１０は、本実施形態に係るユーザ端末Ｔｍ−ｎの制御部４１における処理例を示すフローチャートである。
【０１１０】
図９の処理は、例えばユーザ端末Ｔｍ−ｎの電源がＯＮとされた場合に開始される。先ず、制御部４１は、Ｐ２ＰネットワークＰＷからコンテンツを取得し再生するためのプログラムの各種の初期化処理を実行する（ステップＳ１）。
【０１１１】
次いで、制御部４１は、ユーザから通常再生要求があったか否かを判定する（ステップＳ２）。なお、一度通常再生要求がされた後、再生要求されたコンテンツが再生中である場合には、通常再生要求がなかったと判定される。このとき、制御部４１は、ユーザから通常再生要求があった場合には（ステップＳ２：ＹＥＳ）、再生するコンテンツのコンテンツチャンクのインデックスを、再生順において先頭の順番にリセットする（ステップＳ３）。このインデックスは、現在再生すべきコンテンツチャンクの順番を示す。
【０１１２】
次いで、制御部４１は、現在のインデックスが示すコンテンツチャンクがコンテンツキャッシュエリアに保存されていないか否かを判定する（ステップＳ４）。このとき、制御部４１は、現在のインデックスが示すコンテンツチャンクがコンテンツキャッシュエリアに保存されている場合には（ステップＳ４：ＮＯ）、現在のインデックスが示すコンテンツチャンクをコンテンツキャッシュエリアから読み出し、読み出したコンテンツチャンクを再生する（ステップＳ７）。
【０１１３】
一方、制御部４１は、現在のインデックスが示すコンテンツチャンクがコンテンツキャッシュエリアに保存されていない場合には（ステップＳ４：ＹＥＳ）、このコンテンツを取得するため、検索要求メッセージをＬ２ブロードキャストで同一拠点内の装置に送信する（ステップＳ５）。
【０１１４】
次いで、制御部４１は、コンテンツチャンクの検索が失敗したか否かを判定する（ステップＳ６）。例えば、検索要求メッセージのＬ２ブロードキャスト送信から一定時間経過する前に、他のユーザ端末Ｔｍ−ｎからコンテンツチャンクが送信されてきた場合には、コンテンツチャンクの検索は成功と判定される。コンテンツチャンクが送信されてこないまま、一定時間経過した場合には、コンテンツチャンクの検索は失敗と判定される。このとき、制御部４１は、コンテンツチャンクの検索が失敗した場合には（ステップＳ６：ＹＥＳ）、コンテンツ取得手段として、他拠点のエッジサーバＳＥｍ又は他拠点のユーザ端末Ｔｍ−ｎからコンテンツを取得する。具体的に、制御部４１は、要求情報送信手段として、コンテンツ所在問合せメッセージを同一拠点内のエッジサーバＳＥｍに送信する（ステップＳ１０）。
【０１１５】
一方、制御部４１は、コンテンツチャンクの検索が成功した場合には（ステップＳ６：ＮＯ）、他のユーザ端末Ｔｍ−ｎから受信したコンテンツチャンクを再生する（ステップＳ７）。なお、受信したコンテンツチャンクはコンテンツキャッシュエリアに保存される。
【０１１６】
制御部４１は、コンテンツチャンクを再生すると、現在のインデックスの値に基づいて、再生対象のコンテンツにおいて、再生順が最後の順番のコンテンツチャンクまで再生していないか否かを判定する（ステップＳ８）。このとき、制御部４１は、再生順が最後の順番のコンテンツチャンクまで再生していない場合には（ステップＳ８：ＹＥＳ）、現在のインデックスに１を加算し（ステップＳ９）、ステップＳ４に移行する。
【０１１７】
制御部４１は、ステップＳ１０の処理を終えた場合、又は、ステップＳ８において再生順が最後の順番のコンテンツチャンクまで再生した場合には（ステップＳ８：ＮＯ）、ユーザからの電源断要求があったか否かを判定する（ステップＳ１１）。このとき、制御部４１は、電源断要求がなかった場合には（ステップＳ１１：ＮＯ）、ステップＳ２に移行する。
【０１１８】
ステップＳ２において、制御部４１は、ユーザから通常再生要求がなかった場合には（ステップＳ２：ＮＯ）、同一拠点内のエッジサーバＳＥｍから何らかのメッセージを受信したか否かを判定する（ステップＳ１３）。このとき、制御部４１は、同一拠点内のエッジサーバＳＥｍからメッセージを受信した場合には（ステップＳ１３：ＹＥＳ）、受信したメッセージがコンテンツチャンクの検索応答メッセージであるか否かを判定する（ステップＳ１４）。このとき、制御部４１は、受信したメッセージがコンテンツチャンクの検索応答メッセージである場合には、同一拠点内のエッジサーバＳＥｍに、コンテンツ要求メッセージを送信する（ステップＳ１５）。このコンテンツ要求メッセージには、コンテンツ要求先情報として、受信した検索応答メッセージに含まれるインデックス情報から取得したコンテンツ保持ノードのＩＰアドレス及びポート番号が含まれる。制御部４１は、この処理を終えると、ステップＳ１１に移行する。
【０１１９】
一方、制御部４１は、受信したメッセージがコンテンツチャンクの検索応答メッセージではない場合には（ステップＳ１４：ＮＯ）、受信したメッセージがコンテンツ要求応答メッセージであるか否かを判定する（ステップＳ１６）。つまり、制御部４１は、コンテンツ受信手段としてコンテンツチャンクを受信したか否かを判定する。このとき、制御部４１は、受信したメッセージがコンテンツ要求応答メッセージである場合には（ステップＳ１６：ＹＥＳ）。コンテンツ要求応答メッセージに含まれるコンテンツチャンクをコンテンツキャッシュエリアに保存する（ステップＳ１７）。次いで、制御部４１は、保存したコンテンツチャンクについてパブリッシュメッセージをルートノードへ向けて送信する（ステップＳ１８）。そして、制御部４１は、保存したコンテンツチャンクを再生する（ステップＳ７）。
【０１２０】
一方、制御部４１は、受信したメッセージがコンテンツ要求応答メッセージではない場合には（ステップＳ１６：ＮＯ）、受信したメッセージがコンテンツプッシュ要求メッセージであるか否かを判定する（ステップＳ１９）。つまり、制御部４１は、関連コンテンツ受信手段として関連コンテンツを受信したか否かを判定する。このとき、制御部４１は、受信したメッセージがコンテンツプッシュ要求メッセージである場合には（ステップＳ１９：ＹＥＳ）、コンテンツプッシュ要求メッセージに含まれる関連コンテンツをコンテンツキャッシュエリアに保存する（ステップＳ２０）。次いで、制御部４１は、保存した関連コンテンツについてパブリッシュメッセージをルートノードへ向けて送信し（ステップＳ２１）、ステップＳ１１に移行する。
【０１２１】
ステップＳ１３において、制御部４１は、同一拠点内のエッジサーバＳＥｍからメッセージを受信していない場合には（ステップＳ１３：ＮＯ）、図１０に示すように、同一拠点内の他のユーザ端末Ｔｍ−ｎから、Ｌ２ブロードキャストによる検索要求メッセージを受信したか否かを判定する（ステップＳ２２）。このとき、制御部４１は、同一拠点内の他のユーザ端末Ｔｍ−ｎから検索要求メッセージを受信した場合には（ステップＳ２２：ＹＥＳ）、要求されたコンテンツチャンクがコンテンツキャッシュエリアに保存されているか否かを判定する（ステップＳ２３）。このとき、制御部４１は、要求されたコンテンツチャンクがコンテンツキャッシュエリアに保存されている場合には（ステップＳ２３：ＹＥＳ）、要求されたコンテンツチャンクを要求元のユーザ端末Ｔｍ−ｎに送信する（ステップＳ２４）。制御部４１は、ステップＳ２３において要求されたコンテンツチャンクがコンテンツキャッシュエリアに保存されていない場合（ステップＳ２３：ＮＯ）、又は、ステップＳ２４の処理を終えた場合には、ステップＳ１１に移行する。
【０１２２】
ステップＳ２２において、制御部４１は、同一拠点内の他のユーザ端末Ｔｍ−ｎから検索要求メッセージを受信していない場合には、他の装置からＰ２Ｐ制御メッセージを受信したか否かを判定する（ステップＳ３５）。他の装置としては、ユーザ端末Ｔｍ−ｎ自身と同一拠点内にあるか否かにかかわらず、全てのユーザ端末Ｔｍ−ｎ及び全てのエッジサーバＳＥｍが対象となる。このとき、制御部４１は、他の装置からＰ２Ｐ制御メッセージを受信していない場合には（ステップＳ３５：ＮＯ）、ステップＳ１１に移行する。
【０１２３】
一方、制御部４１は、他の装置からＰ２Ｐ制御メッセージを受信した場合には（ステップＳ３５：ＹＥＳ）、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージであるか否かを判定する（ステップＳ２５）。このとき、制御部４１は、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージである場合には（ステップＳ２５：ＹＥＳ）、ユーザ端末Ｔｍ−ｎ自身が、所在の問い合わせが要求されたコンテンツチャンクのルートノードであるか否かを判定する（ステップＳ２６）。このとき、制御部４１は、ユーザ端末Ｔｍ−ｎ自身がルートノードである場合には（ステップＳ２６：ＹＥＳ）、コンテンツ保持ノードのインデックス情報を含む検索応答メッセージを、コンテンツ所在問合せメッセージに含まれる要求元情報が示すノードに送信する（ステップＳ２７）。
【０１２４】
一方、制御部４１は、ユーザ端末Ｔｍ−ｎ自身がルートノードではない場合には（ステップＳ２６：ＮＯ）、ルーティングテーブルを用いて、コンテンツ所在問合せメッセージを他のノードに中継する（ステップＳ２８）。制御部４１は、ステップＳ２７又はＳ２８の処理を終えると、ステップＳ１１に移行する。
【０１２５】
ステップＳ２５において、制御部４１は、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージではない場合には（ステップＳ２５：ＮＯ）、受信したＰ２Ｐ制御メッセージがコンテンツ要求メッセージであるか否かを判定する（ステップＳ２９）。このとき、制御部４１は、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージである場合には（ステップＳ２９：ＹＥＳ）、コンテンツ所在問合せメッセージに含まれているコンテンツＩＤが示すコンテンツチャンクをコンテンツキャッシュエリアから読み出し、読み出したコンテンツチャンクを含むコンテンツ要求応答メッセージを、コンテンツ要求メッセージの送信元のノードに送信する（ステップ３０）。
【０１２６】
ステップＳ２９において、制御部４１は、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージではない場合には（ステップＳ２９：ＮＯ）、受信したＰ２Ｐ制御メッセージがパブリッシュメッセージであるか否かを判定する（ステップＳ３１）。このとき、制御部４１は、受信したＰ２Ｐ制御メッセージがパブリッシュメッセージではない場合には（ステップＳ３１：ＮＯ）、ステップＳ１１に移行する。一方、制御部４１は、受信したＰ２Ｐ制御メッセージがパブリッシュメッセージである場合には（ステップＳ３１：ＹＥＳ）、ユーザ端末Ｔｍ−ｎ自身がルートノードであるか否かを判定する（ステップＳ３２）。このとき、制御部４１は、ユーザ端末Ｔｍ−ｎ自身がルートノードである場合には（ステップＳ３２：ＹＥＳ）、コンテンツ保持ノードのインデックス情報を、インデックス情報キャッシュに登録する（ステップＳ３３）。一方、制御部４１は、ユーザ端末Ｔｍ−ｎ自身がルートノードではない場合には（ステップＳ３２：ＮＯ）、ルーティングテーブルを用いて、パブリッシュメッセージを他のノードに中継する（ステップＳ３４）。制御部４１は、ステップＳ３３又はＳ３４の処理を終えると、ステップＳ１１に移行する。
【０１２７】
ステップＳ１１において、制御部４１は、ユーザからの電源断要求があった場合には（ステップＳ１１：ＹＥＳ）、プログラムを終了させるための各種の終了処理を実行する（ステップＳ１２）。そして、制御部４１は、図９及び図１０に示す処理を終了させる。
【０１２８】
図１１及び図１２は、本実施形態に係るエッジサーバＳＥｍの制御部２１における処理例を示すフローチャートである。
【０１２９】
図１１の処理は、例えばエッジサーバＳＥｍの電源がＯＮとされた場合に開始される。先ず、制御部２１は、エッジサーバＳＥｍとして機能するためのプログラムの各種の初期化処理を実行する（ステップＳ５１）。
【０１３０】
次いで、制御部２１は、他拠点のエッジサーバＳＥｍから、コンテンツ要求応答メッセージとしてコンテンツチャンクを受信したか否かを判定する（ステップＳ５２）。このとき、制御部２１は、他拠点のエッジサーバＳＥｍからコンテンツチャンクを受信した場合には（ステップＳ５２：ＹＥＳ）、受信したコンテンツチャンクをコンテンツキャッシュエリアに保存する（ステップＳ５３）。次いで、制御部２１は、中継手段として、受信したコンテンツチャンクの要求元のユーザ端末Ｔｍ−ｎにコンテンツチャンクを送信する（ステップＳ５４）。具体的に、制御部２１は、記憶部２２に記憶されている中継管理テーブルから、コンテンツチャンクを受信したポート番号に対応する要求元情報を取得する。そして、制御部２１は、取得した要求元情報のＩＰアドレス及びポート番号を、コンテンツチャンクのパケットのヘッダの送信先ＩＰアドレス及び送信先ポート番号に設定して、コンテンツチャンクを送信する。
【０１３１】
次いで、制御部２１は、取得したコンテンツが記憶部２２に記憶されている関連コンテンツ定義ファイルに登録されているか否かを判定する（ステップＳ５５）。このとき、制御部２１は、取得したコンテンツが関連コンテンツ定義ファイルに登録されている場合には（ステップＳ５５：ＹＥＳ）、関連コンテンツ定義ファイルを参照して、取得したコンテンツの関連コンテンツのうちコンテンツキャッシュエリアに保存されていない関連コンテンツがあるか否かを判定する（ステップＳ５６）。
【０１３２】
このとき、制御部２１は、取得したコンテンツの関連コンテンツのうちコンテンツキャッシュエリアに保存されていない関連コンテンツがある場合には（ステップＳ５６：ＹＥＳ）、関連コンテンツ取得手段として、この保存されていない関連コンテンツを取得する（ステップＳ５７）。具体的に、制御部２１は、コンテンツ要求メッセージをルートノードに向けて送信し、ルートノードから送信されてきた検索応答メッセージを受信する。次いで、制御部２１は、関連コンテンツの何れかのコンテンツ保持ノードにコンテンツ要求メッセージを送信し、コンテンツ保持ノードから送信されてきた関連コンテンツを受信する。
【０１３３】
次いで、制御部２１は、取得した関連コンテンツをコンテンツキャッシュエリアに保存する（ステップＳ５８）。次いで、制御部２１は、保存した関連コンテンツについてのパブリッシュメッセージをルートノードに向けて送信する（ステップＳ５９）。次いで、制御部２１は、関連コンテンツ送信手段として、保存した関連コンテンツを、同一拠点内の何れかのユーザ端末Ｔｍ−ｎに送信する（ステップＳ６０）。具体的に、制御部２１は、関連コンテンツを含むコンテンツプッシュ要求メッセージをユーザ端末Ｔｍ−ｎに送信する。制御部２１は、この処理を終えると、ステップＳ５６に移行する。
【０１３４】
なお、ステップＳ５７〜Ｓ６０の処理は、エッジサーバＳＥｍ自身が情報通信する際の使用帯域幅が使用帯域幅上限値以下であるとき、又は、制御部２１のＣＰＵ使用率がＣＰＵ使用率上限値以下であるときに実行されるようにしても良い。この場合、ステップＳ５７〜Ｓ６０の処理は、図１１及び図１２に示すその他の処理とは別のスレッドで実行される。
【０１３５】
制御部２１は、ステップＳ５５において取得したコンテンツが関連コンテンツ定義ファイルに登録されていない場合（ステップＳ５５：ＮＯ）、又は、ステップＳ５６において取得したコンテンツの全ての関連コンテンツがコンテンツキャッシュエリアに保存されている場合には（ステップＳ５６：ＮＯ）、ユーザからの電源断要求があったか否かを判定する（ステップＳ６１）。このとき、制御部２１は、電源断要求がなかった場合には（ステップＳ６１：ＮＯ）、ステップＳ５２に移行する。
【０１３６】
ステップＳ５２において、制御部２１は、他拠点のエッジサーバＳＥｍからコンテンツチャンクを受信していない場合には（ステップＳ５２：ＮＯ）、他の装置からＰ２Ｐ制御メッセージを受信したか否かを判定する（ステップＳ６３）。このとき、制御部２１は、他の装置からＰ２Ｐ制御メッセージを受信していない場合には（ステップＳ６３：ＮＯ）、同一拠点内の他のユーザ端末Ｔｍ−ｎから、Ｌ２ブロードキャストによる検索要求メッセージを受信したか否かを判定する（ステップＳ７０）。このとき、制御部２１は、同一拠点内の他のユーザ端末Ｔｍ−ｎからＬ２ブロードキャストによる検索要求メッセージを受信した場合であっても、受信していない場合であっても（ステップＳ７０：ＹＥＳ又はＮＯ）、特段の処理を行わずにステップＳ６１に移行する。つまり、制御部２１は、Ｌ２ブロードキャストによる検索要求メッセージを無視する。つまり、制御部２１は、ステップＳ７０の判定を行わなくても良い。ステップＳ６３において、制御部２１は、他の装置からＰ２Ｐ制御メッセージを受信した場合には（ステップＳ６３：ＹＥＳ）、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージであるか否かを判定する（ステップＳ６４）。このとき、制御部２１は、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージである場合には（ステップＳ６４：ＹＥＳ）、所在の問い合わせが要求されたコンテンツチャンクがコンテンツキャッシュエリアに保存されているか否かを判定する（ステップＳ６５）。このとき、制御部２１は、所在の問い合わせが要求されたコンテンツチャンクがコンテンツキャッシュエリアに保存されている場合には（ステップＳ６５：ＹＥＳ）、このコンテンツチャンクをコンテンツキャッシュエリアから読み出し、読み出したコンテンツチャンクを、コンテンツ所在問合せメッセージに含まれる要求元情報が示すノードに送信する（ステップＳ６６）。
【０１３７】
一方、制御部２１は、所在の問い合わせが要求されたコンテンツチャンクがコンテンツキャッシュエリアに保存されていない場合には（ステップＳ６５：ＮＯ）、エッジサーバＳＥｍ自身が、所在の問い合わせが要求されたコンテンツチャンクのルートノードであるか否かを判定する（ステップＳ６７）。このとき、制御部２１は、エッジサーバＳＥｍ自身がルートノードである場合には（ステップＳ６７：ＹＥＳ）、コンテンツ保持ノードのインデックス情報を含む検索応答メッセージを、コンテンツ所在問合せメッセージに含まれる要求元情報が示すノードに送信する送信する（ステップＳ６８）。
【０１３８】
一方、制御部２１は、エッジサーバＳＥｍ自身がルートノードではない場合には（ステップＳ６７：ＮＯ）、ルーティングテーブルを用いて、コンテンツ所在問合せメッセージを他のノードに中継する（ステップＳ６９）。このとき、制御部２１は、Ｐ２Ｐ制御メッセージ中継用のポート番号でコンテンツ所在問合せメッセージを受信した場合には、中継手段としての処理を行う。具体的に、制御部２１は、このコンテンツ所在問合せメッセージに対して未使用のポート番号を割り当て、このポート番号と、ユーザノードのＩＰアドレス及びポート番号を含む要求元情報とを中継管理テーブルに登録する。また、制御部２１は、コンテンツ所在問合せメッセージの要求元情報のユーザノードのＩＰアドレス及びポート番号を、エッジサーバＳＥｍ自身のＩＰアドレス及び新しく割り当てたポート番号に書き換える。そして、エッジサーバＳＥｍは、コンテンツ所在問合せメッセージを他のノードに送信する。制御部２１は、ステップＳ６８又はＳ６９の処理を終えると、ステップＳ６１に移行する。
【０１３９】
ステップＳ６４において、制御部２１は、受信したＰ２Ｐ制御メッセージがコンテンツ所在問合せメッセージではない場合には（ステップＳ６４：ＮＯ）、図１２に示すように、受信したＰ２Ｐ制御メッセージが検索応答メッセージであるか否かを判定する（ステップＳ７１）。このとき、制御部２１は、受信したＰ２Ｐ制御メッセージが検索応答メッセージである場合には（ステップＳ７１：ＹＥＳ）、受信した検索応答メッセージが同一拠点内のユーザ端末Ｔｍ−ｎ宛のメッセージであるか否かを判定する（ステップＳ７２）。例えば、検索応答メッセージを受信したポートの番号が記憶部２２に記憶されている中継管理テーブルに登録されている場合には、この検索応答メッセージは同一拠点内のユーザ端末Ｔｍ−ｎ宛である。一方、検索応答メッセージを受信したポートの番号が中継管理テーブルに登録されていない場合には、この検索応答メッセージはエッジサーバＳＥｍ自身に宛てられたものである。このとき、制御部２１は、受信した検索応答メッセージが同一拠点内のユーザ端末Ｔｍ−ｎ宛のメッセージである場合には（ステップＳ７２：ＹＥＳ）、中継手段として、この検索応答メッセージを同一拠点内のユーザ端末Ｔｍ−ｎに中継する（ステップＳ７３）。具体的に、制御部２１は、中継管理テーブルから、検索応答メッセージを受信したポート番号に対応する要求元情報を取得する。そして、制御部２１は、取得した要求元情報のＩＰアドレス及びポート番号を、検索応答メッセージのパケットヘッダの送信先ＩＰアドレス及び送信先ポート番号に設定して、検索応答メッセージを送信する。
【０１４０】
一方、制御部２１は、受信した検索応答メッセージが同一拠点内のエッジサーバＳＥｍ自身に宛てられたメッセージである場合には（ステップＳ７２：ＮＯ）、コンテンツ要求メッセージを何れかのコンテンツ保持ノードに送信する（ステップＳ７４）。制御部２１は、ステップＳ７３又はＳ７４の処理を終えると、ステップＳ６１に移行する。
【０１４１】
ステップＳ７１において、制御部２１は、受信したＰ２Ｐ制御メッセージが検索応答メッセージではない場合には（ステップＳ７１：ＮＯ）、受信したＰ２Ｐ制御メッセージがコンテンツ要求メッセージであるか否かを判定する（ステップＳ７５）。このとき、制御部２１は、受信したＰ２Ｐ制御メッセージがコンテンツ要求メッセージである場合には（ステップＳ７５：ＹＥＳ）、受信したコンテンツ要求メッセージが他拠点の装置宛のメッセージであるか否かを判定する（ステップＳ７６）。例えば、コンテンツ要求メッセージを受信したポートの番号がＰ２Ｐ制御メッセージ中継用のポート番号ではない場合には、このコンテンツ要求メッセージはエッジサーバＳＥｍ自身に宛てられたものである。一方、コンテンツ要求メッセージを受信したポートの番号がＰ２Ｐ制御メッセージ中継用のポート番号である場合には、このコンテンツ要求メッセージは他拠点の装置宛てである。このとき、制御部２１は、受信したコンテンツ要求メッセージが他拠点の装置宛のメッセージである場合には（ステップＳ７６：ＹＥＳ）、中継手段として、このコンテンツ要求メッセージを宛先である他拠点の装置に中継する（ステップＳ７７）。
【０１４２】
一方、制御部２１は、受信したコンテンツ要求メッセージが同一拠点内のエッジサーバＳＥｍ自身の宛てられたものである場合には（ステップＳ７６：ＮＯ）、要求されたコンテンツをコンテンツキャッシュエリアから読み出し、読み出したコンテンツチャンクを、コンテンツ要求メッセージの送信元のノードに送信する（ステップＳ７８）。制御部２１は、ステップＳ７７又はＳ７８の処理を終えると、ステップＳ６１に移行する。
【０１４３】
ステップＳ７５において、制御部２１は、受信したＰ２Ｐ制御メッセージがコンテンツ要求メッセージではない場合には（ステップＳ７５：ＮＯ）、受信したＰ２Ｐ制御メッセージがパブリッシュメッセージであるか否かを判定する（ステップＳ７９）。このとき、制御部２１は、受信したＰ２Ｐ制御メッセージがパブリッシュメッセージではない場合には（ステップＳ７９：ＮＯ）、ステップＳ６１に移行する。一方、制御部２１は、受信したＰ２Ｐ制御メッセージがパブリッシュメッセージである場合には（ステップＳ７９：ＹＥＳ）、エッジサーバＳＥｍ自身が、パブリッシュメッセージに含まれるコンテンツＩＤが示すコンテンツのルートノードであるか否かを判定する（ステップＳ８０）。このとき、制御部２１は、エッジサーバＳＥｍ自身がルートノードである場合には（ステップＳ８０：ＹＥＳ）、コンテンツ保持ノードのインデックス情報を、インデックス情報キャッシュに登録する（ステップＳ８１）。一方、制御部２１は、エッジサーバＳＥｍ自身がルートノードではない場合には（ステップＳ８０：ＮＯ）、ルーティングテーブルを用いて、パブリッシュメッセージを他のノードに中継する（ステップＳ８２）。制御部２１は、ステップＳ８１又はＳ８２の処理を終えると、ステップＳ６１に移行する。
【０１４４】
以上説明したように、本実施形態によれば、ユーザ端末Ｔｍ−ｎが他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴからコンテンツを取得した場合に、エッジサーバＳＥｍが、取得されたコンテンツに関連する関連コンテンツを他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴから取得する。また、エッジサーバＳＥｍが、取得した関連コンテンツを同一拠点内の何れかのユーザ端末Ｔｍ−ｎに送信する。そして、関連コンテンツを受信したユーザ端末Ｔｍ−ｎが、受信した関連コンテンツをコンテンツキャッシュエリアに保存する。
【０１４５】
従って、或るユーザ端末Ｔｍ−ｎにより取得されたコンテンツに関連するコンテンツが、取得したユーザ端末Ｔｍ−ｎと同一拠点内の何れかのユーザ端末Ｔｍ−ｎにより保存される。ユーザ端末Ｔｍ−ｎにより取得されたコンテンツに関連するコンテンツは、未だ取得されていないコンテンツの中でも、今後エッジサーバＳＥｍに対して要求される可能性が比較的高いと考えられる。よって、コンテンツを取得したユーザ端末Ｔｍ−ｎがこのコンテンツに関連するコンテンツを取得する場合には、同一拠点内のユーザ端末Ｔｍ−ｎから取得することができる。これにより、コンテンツの要求がエッジサーバＳＥｍに集中することが回避される。よって、エッジサーバＳＥｍの負荷を軽減させることができ、ユーザ端末Ｔｍ−ｎによるコンテンツの取得を円滑に行うことができる。
【０１４６】
また、ユーザ端末Ｔｍ−ｎが必要とするコンテンツが、同一拠点内の他のユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍに保存されていない場合であっても、そのコンテンツに関連するコンテンツを同一拠点内に接続する何れかのユーザ端末Ｔｍ−ｎに保存させることができる。
【０１４７】
また、ユーザ端末Ｔｍ−ｎが、先ず同一拠点内の他のユーザ端末Ｔｍ−ｎからコンテンツの取得を試み、同一拠点内の他のユーザ端末Ｔｍ−ｎから取得することができない場合に、他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴからコンテンツを取得する。
【０１４８】
従って、ユーザ端末Ｔｍ−ｎが必要とするコンテンツが、同一拠点内の他のユーザ端末Ｔｍ−ｎに保存されている場合には、エッジサーバＳＥｍよりも優先して他のユーザ端末Ｔｍ−ｎからコンテンツが取得される。よって、エッジサーバＳＥｍの負荷を軽減させることができる。また、コンテンツの送信負荷が同一拠点内の複数のユーザ端末Ｔｍ−ｎに分散される。よって、ユーザ端末Ｔｍ−ｎによるコンテンツの取得を円滑に行うことができる。
【０１４９】
また、ユーザ端末Ｔｍ−ｎが、同一拠点内の他のユーザ端末Ｔｍ−ｎからコンテンツを取得していない場合に、同一拠点内のエッジサーバＳＥｍからコンテンツを取得し、同一拠点内のエッジサーバＳＥｍがコンテンツを保存していない場合に、他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴから同一拠点内のエッジサーバＳＥｍを介してコンテンツを取得する。
【０１５０】
従って、ユーザ端末Ｔｍ−ｎが必要とするコンテンツが、同一拠点内のエッジサーバＳＥｍに保存されている場合には、他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ及び投入サーバＳＴよりも優先して同一拠点内のエッジサーバＳＥｍからコンテンツが取得される。よって、拠点ネットワークＮＬｍからネットワークＮＷに接続する回線のトラフィックが減り、コンテンツを効率良く取得することができる。
【０１５１】
また、ユーザ端末Ｔｍ−ｎが、コンテンツ所在問合せ要求メッセージを同一拠点内のエッジサーバＳＥｍを介して他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴに送信する。同一拠点内のユーザ端末Ｔｍ−ｎからコンテンツ所在問合せ要求メッセージを受信したエッジサーバＳＥｍが、エッジサーバＳＥｍ自身のコンテンツキャッシュエリアにコンテンツが保存されている場合には、コンテンツ所在問合せ要求メッセージの中継をせずに、コンテンツキャッシュエリアにコンテンツが保存されているコンテンツをユーザ端末Ｔｍ−ｎに送信する。
【０１５２】
従って、同一拠点内のユーザ端末Ｔｍ−ｎから要求されたコンテンツをエッジサーバＳＥｍが保存している場合、このエッジサーバＳＥｍは、他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ及び投入サーバＳＴからコンテンツを取得する必要がない。よって、ユーザ端末Ｔｍ−ｎによるコンテンツの取得を短時間で行うことができる。
【０１５３】
また、同一拠点内のユーザ端末Ｔｍ−ｎからコンテンツ所在問合せ要求メッセージを受信したエッジサーバＳＥｍが、エッジサーバＳＥｍ自身のコンテンツキャッシュエリアにコンテンツが保存されていない場合には、コンテンツ所在問合せ要求メッセージを他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴに中継する。また、エッジサーバＳＥｍが、他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ又は投入サーバＳＴから送信されたコンテンツを受信して、同一拠点内のユーザ端末Ｔｍ−ｎに中継する。また、エッジサーバＳＥｍが、中継したコンテンツに関連する関連コンテンツを取得する。そして、エッジサーバＳＥｍが、取得した関連コンテンツをコンテンツキャッシュエリアに保存する。また、エッジサーバＳＥｍが、取得した関連コンテンツを同一拠点内の何れかのユーザ端末Ｔｍ−ｎに送信する。
【０１５４】
従って、ユーザ端末Ｔｍ−ｎから要求される可能性が比較的高いと考えられるコンテンツがエッジサーバＳＥｍに保存されるので、エッジサーバＳＥｍのコンテンツキャッシュエリアの利用効率を高めることができる。また、ユーザ端末Ｔｍ−ｎがエッジサーバＳＥｍを介してコンテンツを取得するので、エッジサーバＳＥｍは、ユーザ端末Ｔｍ−ｎが取得したコンテンツを確実に認識することができる。よって、関連コンテンツを確実に同一拠点内のユーザ端末Ｔｍ−ｎに保存させることができる。
【０１５５】
また、エッジサーバＳＥｍが、エッジサーバＳＥｍ自身が情報通信する際の使用帯域幅が使用帯域幅上限値以下であるとき、又は、制御部２１のＣＰＵ使用率がＣＰＵ使用率上限値以下であるときに、関連コンテンツの取得及び送信を行う。
【０１５６】
従って、関連コンテンツの取得時におけるエッジサーバＳＥｍの負荷が高くなることを防止することができる。よって、ユーザ端末Ｔｍ−ｎによるコンテンツの取得を円滑に行うことができる。
【０１５７】
［２．第２実施形態］
次に、図１３等を参照して、本発明の第２実施形態について説明する。
【０１５８】
本実施形態におけるコンテンツ配信システムＳの概要構成、Ｐ２ＰネットワークＰＷの基本的な仕組み及び通信プロトコルは、第１実施形態の場合と同様である。また、投入サーバＳＴ、エッジサーバＳＥｍ、及びユーザ端末Ｔｍ−ｎの構成も第１実施形態の場合と同様である。
【０１５９】
本実施形態においては、ユーザ端末Ｔｍ−ｎがコンテンツを取得する場合、コンテンツの取得先に優先順位を付けるようになっている。ユーザ端末Ｔｍ−ｎは、コンテンツの所在を検索する場合、同一拠点内のエッジサーバＳＥｍを介することなく、コンテンツ所在問合せメッセージを送信し、また、検索応答メッセージを受信する。この場合の送受信方法は、前述のピアツーピアネットワークの概要で説明した通りである。第１実施形態のような検索要求メッセージのブロードキャストは行われない。
【０１６０】
ユーザ端末Ｔｍ−ｎは、受信した検索応答メッセージに含まれるインデックス情報と優先順位とに基づいて、コンテンツの取得先となるコンテンツ保持ノードを決定する。そして、ユーザ端末Ｔｍ−ｎは、決定したコンテンツ保持ノードが同一拠点内のユーザ端末Ｔｍ−ｎ又は同一拠点内のエッジサーバＳＥｍである場合には、コンテンツ保持ノードに対して直接コンテンツ要求メッセージを送信する。一方、ユーザ端末Ｔｍ−ｎは、決定したコンテンツ保持ノードが他拠点のエッジサーバＳＥｍ、他拠点のユーザ端末Ｔｍ−ｎ、又は投入サーバＳＴである場合に、同一拠点内のエッジサーバＳＥｍを介してコンテンツを取得する。エッジサーバＳＥｍが中継するＰ２Ｐ制御メッセージは、このときに送信されるコンテンツ要求メッセージとコンテンツ要求応答メッセージのみである。Ｐ２Ｐ制御メッセージの制御方法は、第１実施形態の場合と同様である。そして、エッジサーバＳＥｍは、中継したコンテンツ要求応答メッセージに含まれるコンテンツの関連コンテンツを取得して、同一拠点内の何れかのユーザ端末Ｔｍ−ｎに送信する。そして、関連コンテンツを受信したユーザ端末Ｔｍ−ｎは、この関連コンテンツを保存する。
【０１６１】
コンテンツを取得する際の優先順位を以下に示す。
【０１６２】
第１位：同一拠点内のユーザ端末Ｔｍ−ｎ
第２位：同一拠点内のエッジサーバＳＥｍ
第３位：他拠点のエッジサーバＳＥｍ
第４位：他拠点のユーザ端末Ｔｍ−ｎ
第５位：投入サーバＳＴ
【０１６３】
同一拠点内のユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍの優先順位が、他拠点のユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍの優先順位よりも高く設定されている。その理由は、通信回線Ｌｍのトラフィックを減らすためである。
【０１６４】
同一拠点内のユーザ端末Ｔｍ−ｎの優先順位は、同一拠点内のエッジサーバＳＥｍの優先順位よりも高く設定されている。エッジサーバＳＥｍのコンテンツキャッシュエリアには、ユーザ端末Ｔｍ−ｎによりダウンロードされる可能性が高いコンテンツが保存される。また、エッジサーバＳＥｍのコンテンツキャッシュエリアの記憶容量は、ユーザ端末Ｔｍ−ｎのコンテンツキャッシュエリアの記憶容量よりも大きくなっている。こうしたことから、エッジサーバＳＥｍの方がユーザ端末Ｔｍ−ｎよりも、コンテンツが要求される可能性が高い。そこで、エッジサーバＳＥｍの負荷を減らすため、上述した優先順位となっている。
【０１６５】
他拠点のエッジサーバＳＥｍの優先順位は、他拠点のユーザ端末Ｔｍ−ｎの優先順位よりも高く設定されている。拠点ｍによっては、複数のネットワークがルータ装置等のネットワーク機器を介して接続されることにより、拠点ネットワークＮＬｍが構築されている場合がある。この場合において、ネットワークＮＷからネットワーク的に遠いネットワークに、コンテンツ保持ノードとしてのユーザ端末Ｔｍ−ｎが接続されていると、このユーザ端末Ｔｍ−ｎから送信されたコンテンツが多数のネットワーク機器を経由する。そうすると、これらのネットワーク機器に負荷がかかるとともに、コンテンツの取得効率が低下する。そこで、ネットワーク機器の負荷を減らすため、上述した優先順位となっている。ここでは、拠点ネットワークＮＬｍが、複数のルータ等の中継機器から構成される場合が想定されている。この場合、拠点ネットワークＮＬｍに所属するエッジサーバＳＥｍまたはユーザ端末Ｔｍ−ｎの中に、中継機器を介してネットワークＮＷに接続する装置と、中継機器を介さずネットワークＮＷに接続する装置とがある場合がある。この場合においては、エッジサーバＳＥｍがネットワーク機器を介さずネットワークＮＷに接続することにより、中継機器の負荷を減らすことができる。或いは、拠点ネットワークＮＬｍに接続する複数の装置の中で、ネットワークＮＷからネットワーク的に比較的近いネットワークにエッジサーバＳＥｍが接続されても良い。ネットワーク的に近いとは、ネットワークＮＷに接続する際、中継する中継機器の数が少ないことである。なお、ネットワークＮＷから或る装置が接続するネットワークまでのネットワーク的な距離とは、データがネットワークＮＷからその装置が接続するネットワークまでに至るまでにデータが経由するネットワークの数、又は、経由するネットワーク機器の台数をいう。データが経由するネットワーク機器の台数が少ないほど、ネットワークＮＷからの距離は近いということになる。
【０１６６】
投入サーバＳＴの優先順位は最下位となっている。その理由は、投入サーバＳＴは全てのコンテンツの発信源であるので、投入サーバＳＴの負荷を極力減らす必要があるためである。
【０１６７】
このように設定された優先順位に基づいてコンテンツを取得するため、コンテンツを保存したノードは、パブリッシュメッセージを送信する際に、このパブリッシュメッセージに、ノード自身が設置されている拠点ｍの拠点識別情報及びノード種別を含める。拠点識別情報は、拠点ｍの識別情報である。また、ノード種別は、コンテンツ保持ノードが、ユーザ端末Ｔｍ−ｎであるか又はエッジサーバＳＥｍであるかを示す。パブリッシュメッセージを受信したルートノードは、パブリッシュメッセージに含まれるコンテンツ保持ノードのノード情報、保存されたコンテンツのコンテンツＩＤ、コンテンツ保持ノードの拠点識別情報及びノード種別等を組とするインデックス情報を記憶する。ルートノードは、コンテンツ所在問合せメッセージを受信すると、拠点識別情報及びノード種別を含むインデックス情報をユーザノードに送信する。そして、ユーザノードは、受信したインデックス情報に含まれる拠点識別情報及びノード種別と、前記優先順位とに基づいて、コンテンツの取得先となるコンテンツ保持ノードを決定する。
【０１６８】
図１３は、インデックス情報に登録される内容の一例を示す図である。なお、図１３に示すインデックス情報は、複数のコンテンツのインデックス情報を統合したものである。また、図１３のノード情報欄には、ノード情報の代わりとして、コンテンツ保持ノードとしてのエッジサーバＳＥｍの符号又はユーザ端末Ｔｍ−ｎの符号が示されている。また、図１３のコンテンツＩＤ欄には、コンテンツＩＤの代わりとして、コンテンツ名が示されている。また、拠点識別情報欄には、拠点識別情報の一例としての事業所名が示されている。
【０１６９】
図１３に示すように、例えば、コンテンツ名が「映画１」であるコンテンツは、エッジサーバＳＥ１、ユーザ端末Ｔ１−１、ユーザ端末Ｔ１−２、及びエッジサーバＳＥ３に保存されている。この場合において、ユーザノードとしてのユーザ端末Ｔ１−３は、優先順位が第１位であるユーザ端末Ｔ１−１又はユーザ端末Ｔ１−２から「映画１」のコンテンツを取得する。また、ユーザノードがユーザ端末Ｔ３−１の場合は、優先順位が第２位であるエッジサーバＳＥ３から「映画１」のコンテンツを取得する。また、ユーザノードがユーザ端末Ｔ２−１である場合は、優先順位が第３位であるエッジサーバＳＥ１又はエッジサーバＳＥ３から「映画１」のコンテンツを取得する。また例えば、コンテンツ名が「ドラマ２」であるコンテンツは、ユーザ端末Ｔ２−２に保存されている。この場合において、ユーザノードとしてのユーザ端末Ｔ１−１は、優先順位が第４位であるユーザ端末Ｔ２−２から「ドラマ２」のコンテンツを取得する。コンテンツ名が「映画３」であるコンテンツは、どのノードにも保存されていない。この場合において、ユーザノードは、優先順位が第５位である投入サーバＳＴから「映画３」のコンテンツを取得する。
【０１７０】
次に、図１４を参照して、コンテンツ配信システムＳの動作について説明する。
【０１７１】
図１４は、本実施形態に係るユーザ端末Ｔｍ−ｎの制御部４１におけるコンテンツ取得処理の処理例を示すフローチャートである。
【０１７２】
図１４の処理は、ユーザ端末Ｔｍ−ｎがユーザノードとしてコンテンツ所在問合せメッセージを送信した後、ルートノードから検索応答メッセージを受信したときに開始される。先ず、制御部４１は、記憶部４２に記憶されている設定情報から、ユーザ端末Ｔｍ−ｎ自身が設置されている拠点ｍの拠点識別情報、及びユーザ端末Ｔｍ−ｎ自身のノード種別を取得する（ステップＳ１０１）。
【０１７３】
次いで、制御部４１は、コンテンツ問合せ応答メッセージに含まれるインデックス情報中に、設定ファイルから取得した拠点識別情報及びノード種別の組み合わせと一致する拠点識別情報及びノード種別の組み合わせが設定されているか否かを判定する（ステップＳ１０２）。つまり、制御部４１は、同一拠点内の何れかのユーザ端末Ｔｍ−ｎがコンテンツを保存しているか否かを判定する。このとき、制御部４１は、設定ファイルから取得した拠点識別情報及びノード種別の組み合わせと一致する拠点識別情報及びノード種別の組み合わせが設定されている場合には（ステップＳ１０２：ＹＥＳ）、ステップＳ１０３に移行する。ステップＳ１０３において、制御部４１は、インデックス情報中にノード情報が存在する同一拠点内のユーザ端末Ｔｍ−ｎのうち、任意のユーザ端末Ｔｍ−ｎからコンテンツを取得する。
【０１７４】
一方、制御部４１は、設定ファイルから取得した拠点識別情報及びノード種別の組み合わせと一致する拠点識別情報及びノード種別の組み合わせが設定されていない場合には（ステップＳ１０２：ＮＯ）、ステップＳ１０４に移行する。ステップＳ１０４において、制御部４１は、コンテンツ問合せ応答メッセージに含まれるインデックス情報中に、設定ファイルから取得した拠点識別情報と一致する拠点識別情報と、エッジサーバであることを示すノード種別との組み合わせが設定されているか否かを判定する。つまり、制御部４１は、同一拠点内のエッジサーバＳＥｍがコンテンツを保存しているか否かを判定する。このとき、制御部４１は、設定ファイルから取得した拠点識別情報と一致する拠点識別情報と、エッジサーバであることを示すノード種別との組み合わせが設定されている場合には（ステップＳ１０４：ＹＥＳ）、ステップＳ１０５に移行する。ステップＳ１０５において、制御部４１は、インデックス情報中にノード情報が存在する同一拠点内のエッジサーバＳＥｍからコンテンツを取得する。
【０１７５】
一方、制御部４１は、設定ファイルから取得した拠点識別情報と一致する拠点識別情報が設定されていない場合には（ステップＳ１０４：ＮＯ）、コンテンツ取得手段として、同一拠点内のエッジサーバＳＥｍを介してコンテンツ保持ノードからコンテンツを取得する。
【０１７６】
具体的に、制御部４１は、コンテンツ問合せ応答メッセージに含まれるインデックス情報中に、エッジサーバであることを示すノード種別が設定されているか否かを判定する（ステップＳ１０６）。つまり、制御部４１は、他拠点のエッジサーバＳＥｍがコンテンツを保存しているか否かを判定する。このとき、制御部４１は、エッジサーバであることを示すノード種別が設定されている場合には（ステップＳ１０６：ＹＥＳ）、インデックス情報中にノード情報が存在する他拠点のエッジサーバＳＥｍから、同一拠点内のエッジサーバＳＥｍを介してコンテンツを取得する（ステップＳ１０７）。具体的に、制御部４１は、他拠点のエッジサーバＳＥｍ宛のコンテンツ要求メッセージを同一拠点内のエッジサーバＳＥｍに送信する。コンテンツ要求メッセージを受信した同一拠点内のエッジサーバＳＥｍエッジサーバＳＥｍの制御部２１は、コンテンツ保持ノードである他拠点のエッジサーバＳＥｍからコンテンツを取得する。そして、制御部２１は、取得したコンテンツを、コンテンツキャッシュエリアに保存する。また、制御部２１は、取得したコンテンツを、コンテンツ要求メッセージの送信元のユーザ端末Ｔｍ−ｎに中継する。ユーザ端末Ｔｍ−ｎの制御部４１は、同一拠点内のエッジサーバＳＥｍから中継されてきたコンテンツを受信する。
【０１７７】
一方、制御部４１は、エッジサーバであることを示すノード種別が設定されていない場合には（ステップＳ１０６：ＮＯ）、ユーザ端末であることを示すノード種別が設定されているか否かを判定する（ステップＳ１０８）。つまり、制御部４１は、他拠点のユーザ端末Ｔｍ−ｎがコンテンツを保存しているか否かを判定する。このとき、制御部４１は、ユーザ端末であることを示すノード種別が設定されている場合には（ステップＳ１０８：ＹＥＳ）、インデックス情報中にノード情報が存在する他拠点のユーザ端末Ｔｍ−ｎから、同一拠点内のエッジサーバＳＥｍを介してコンテンツを取得する（ステップＳ１０７）。
【０１７８】
一方、制御部４１は、ユーザ端末であることを示すノード種別が設定されていない場合には（ステップＳ１０８：ＮＯ）、投入サーバＳＴから、同一拠点内のエッジサーバＳＥｍを介してコンテンツを取得する（ステップＳ１０９）。
【０１７９】
制御部４１は、ステップＳ１０３、Ｓ１０５、Ｓ１０７又はＳ１０９の処理を終えると、取得したコンテンツをコンテンツキャッシュエリアに保存する（ステップＳ１１０）。次いで、制御部４１は、パブリッシュメッセージをルートノードに向けて送信する（ステップＳ１１１）。このパブリッシュメッセージには、ユーザ端末Ｔｍ−ｎのノード情報、保存したコンテンツのコンテンツＩＤ、設定ファイルから取得した拠点識別情報及びノード種別が含まれる。制御部４１は、この処理を終えると、コンテンツ取得処理を終了させる。
【０１８０】
エッジサーバＳＥｍは、ステップＳ１０７又はＳ１０９においてコンテンツを取得した場合に、取得したコンテンツの関連コンテンツを取得する。
【０１８１】
なお、図１４に示すコンテンツ取得処理を、図９及び図１０に示すコンテンツ再生時におけるコンテンツチャンクの取得に適用することも可能である。
【０１８２】
以上説明したように、本実施形態によっても、或るユーザ端末Ｔｍ−ｎにより取得されたコンテンツに関連するコンテンツが、取得したユーザ端末Ｔｍ−ｎと同一拠点内に接続する何れかのユーザ端末Ｔｍ−ｎにより保存される。よって、コンテンツを取得したユーザ端末Ｔｍ−ｎがこのコンテンツに関連するコンテンツを取得する場合には、同一拠点内のユーザ端末Ｔｍ−ｎから取得することができる。これにより、コンテンツの要求がエッジサーバＳＥｍに集中することが回避される。よって、エッジサーバＳＥｍの負荷を軽減させることができ、ユーザ端末Ｔｍ−ｎによるコンテンツの取得を円滑に行うことができる。
【０１８３】
［３．第３実施形態］
次に、図１５等を参照して、本発明の第３実施形態について説明する。
【０１８４】
本実施形態におけるコンテンツ配信システムＳの概要構成は、第１実施形態の場合と同様である。ただし、本実施形態においては、コンテンツ配信のためのピアツーピアネットワークが２種類構築されている。また、投入サーバＳＴ、エッジサーバＳＥｍ、及びユーザ端末Ｔｍ−ｎの構成も第１実施形態の場合と同様である。
【０１８５】
図１５は、本実施形態に係るコンテンツ配信システムＳにおけるＰ２ＰネットワークＰＷ２及び拠点Ｐ２ＰネットワークＰＬｍの構築例を示す図である。
【０１８６】
図１５に示すように、第１のピアツーピアネットワークは、ネットワークＮＷ上に構築されたＰ２ＰネットワークＰＷ２である。そして、第２のピアツーピアネットワークは、拠点ｍ毎に構築された拠点Ｐ２ＰネットワークＰＬｍである。
【０１８７】
Ｐ２ＰネットワークＰＷ２は、ネットワークＮＷ上に構築された論理的なオーバーレイネットワークである。このＰ２ＰネットワークＰＷ２は、コンテンツ配信システムＳを構成するエッジサーバＳＥｍのうち、何れか複数のエッジサーバＳＥｍの接続により形成されるネットワークである。なお、Ｐ２ＰネットワークＰＷ２には、投入サーバＳＴも接続されるようにしても良い。
【０１８８】
拠点Ｐ２ＰネットワークＰＬｍは、拠点ネットワークＮＬｍ上に構築された論理的なオーバーレイネットワークである。このピアツーピアネットワークＰＬｍは、拠点ＮＬｍに接続するユーザ端末Ｔｍ−ｎのうち、複数のユーザ端末Ｔｍ−ｎ及びエッジサーバＳＥｍの接続により形成されるネットワークである。
【０１８９】
なお、どちらのピアツーピアネットワークも、基本的な仕組み及び通信プロトコルは第１実施形態におけるＰ２ＰネットワークＰＷと同様であるので、詳細な説明は省略する。ただし、ユーザ端末Ｔｍ−ｎがコンテンツカタログ情報を取得する場合、例えば、ユーザ端末Ｔｍ−ｎは同一拠点内のエッジサーバＳＥｍに定期的にアクセスすることにより、エッジサーバＳＥｍからコンテンツカタログ情報を取得する。
【０１９０】
図１６は、本実施形態に係るコンテンツ配信システムＳにおいてユーザ端末Ｔｍ−ｎがコンテンツを取得する場合の様子の一例を示した概念図である。
【０１９１】
或るユーザ端末Ｔｍ−ｎ、例えば、ユーザ端末Ｔ２−６のユーザが、例えば、コンテンツＡの再生を要求する。すると、ユーザ端末Ｔ２−６は、先ず、ユーザ端末Ｔ２−６自身が参加している拠点Ｐ２ＰネットワークＰＬ２からコンテンツＡを取得しようとする。先ず、ユーザ端末Ｔ２−６は、拠点Ｐ２ＰネットワークＰＬ２に参加しているコンテンツＡのルートノードに向けて、コンテンツ所在問合せを送信する（図１６（１））。このコンテンツ所在問合せは、例えば、ユーザ端末Ｔ２−５から、ルートノードであるユーザ端末Ｔ２−１に転送される。
【０１９２】
ユーザ端末Ｔ２−１は、コンテンツＡのインデックス情報を含む検索応答メッセージをユーザ端末Ｔ２−６に送信する（図１６（２））。拠点Ｐ２ＰネットワークＰＬ２に参加しているノードの何れかがコンテンツＡを保存している場合、インデックス情報にはコンテンツ保持ノードのノード情報が含まれている。従って、ユーザ端末Ｔ２−６は、何れかのコンテンツ保持ノード、例えば、ユーザ端末Ｔ２−４にコンテンツ要求メッセージを送信する（図１６（３Ａ））。ユーザ端末Ｔ２−４は、ユーザ端末Ｔ２−４自身のコンテンツキャッシュエリアに保存されているコンテンツＡをユーザ端末Ｔ２−６に送信する（図１６（４Ａ））。そして、ユーザ端末Ｔ２−６は、受信したコンテンツの再生を開始する。
【０１９３】
一方、例えば、ユーザ端末Ｔ１−２が、再生を要求されたコンテンツＢを拠点Ｐ２ＰネットワークＰＬ１から取得することができない場合、ユーザ端末Ｔ１−２は、エッジサーバＳＥ１を介してコンテンツを取得する。具体的に、ユーザ端末Ｔ１−２は、エッジサーバＳＥ１にコンテンツ代理取得要求メッセージを送信する（図１６（３Ｂ））。
【０１９４】
コンテンツ代理取得要求メッセージを受信したエッジサーバＳＥ１は、コンテンツキャッシュエリアにコンテンツＡが保存されている場合には、コンテンツＡをコンテンツキャッシュエリアから取得してユーザ端末Ｔ１−２に送信する。一方、エッジサーバＳＥｍは、コンテンツキャッシュエリアにコンテンツＡが保存されていない場合には、Ｐ２ＰネットワークＰＷ２からコンテンツＢを取得する。先ず、エッジサーバＳＥ１は、コンテンツＢのルートノードに向けてコンテンツ所在問合せメッセージを送信する（図１６（４Ｂ））。このコンテンツ所在問合せメッセージは、ルートノードである例えばエッジサーバＳＥ５に転送される。エッジサーバＳＥ５は、コンテンツＢのインデックス情報を含む検索応答メッセージをエッジサーバＳＥ１に送信する（図１６（５Ｂ））。エッジサーバＳＥ１は、コンテンツＢのコンテンツ保持ノードの１つであるエッジサーバＳＥ４にコンテンツ要求メッセージを送信する（図１６（６Ｂ））。エッジサーバＳＥ４は、エッジサーバＳＥ４自身のコンテンツキャッシュエリアに保存されているコンテンツＢをエッジサーバＳＥ１に送信する（図１６（７Ｂ））。エッジサーバＳＥ１は、受信したコンテンツＢを保存するとともに、ユーザ端末Ｔ１−２に送信する（図１６（８Ｂ））。
【０１９５】
また、エッジサーバＳＥ１は、コンテンツＢの関連コンテンツ、例えば、コンテンツＣを取得する（図１６（９Ｂ））。エッジサーバＳＥ１は、取得したコンテンツＣを保存するとともに、このコンテンツＣを同一拠点内の何れかのユーザ端末Ｔｍ−ｎ、例えば、ユーザ端末Ｔ１−７に送信する（図１６（１０Ｂ））。そして、ユーザ端末Ｔ１−７は、受信したコンテンツＢを保存する（図１６（１１Ｂ））。
【０１９６】
以上説明したように、本実施形態によっても、或るユーザ端末Ｔｍ−ｎにより取得されたコンテンツに関連するコンテンツが、取得したユーザ端末Ｔｍ−ｎと同一拠点内に接続する何れかのユーザ端末Ｔｍ−ｎにより保存される。よって、コンテンツを取得したユーザ端末Ｔｍ−ｎがこのコンテンツに関連するコンテンツを取得する場合には、同一拠点内のユーザ端末Ｔｍ−ｎから取得することができる。これにより、コンテンツの要求がエッジサーバＳＥｍに集中することが回避される。よって、エッジサーバＳＥｍの負荷を軽減させることができ、ユーザ端末Ｔｍ−ｎによるコンテンツの取得を円滑に行うことができる。
【０１９７】
なお、上記各実施形態においては、ユーザ端末Ｔｍ−ｎが他拠点のエッジサーバＳＥｍ又は他拠点のユーザ端末Ｔｍ−ｎからコンテンツを取得する場合には、同一拠点内のエッジサーバＳＥｍを介して取得するようにしていた。しかしながら、同一拠点内のエッジサーバＳＥｍを介さなくても良い。この場合においては、例えば、ユーザ端末Ｔｍ−ｎが、コンテンツを取得した場合には、取得したコンテンツを通知する通知メッセージを同一拠点内のエッジサーバＳＥｍに送信する。通知メッセージを受信したエッジサーバＳＥｍは、通知されたコンテンツの関連コンテンツを取得し、同一拠点内の何れかのユーザ端末Ｔｍ−ｎに送信する。これによって、ユーザ端末Ｔｍ−ｎにより取得されたコンテンツに関連するコンテンツが、同一拠点内の何れかのユーザ端末Ｔｍ−ｎにより保存させることができる。
【０１９８】
また、上記各実施形態においては、ユーザ端末Ｔｍ−ｎが同一拠点内のユーザ端末Ｔｍ−ｎ又は同一拠点内のエッジサーバＳＥｍからコンテンツを取得した場合には、エッジサーバＳＥｍは、取得されたコンテンツの関連コンテンツを取得していなかった。しかしながら、この場合においても、エッジサーバＳＥｍは、取得されたコンテンツの関連コンテンツを取得して同一拠点内の何れかのユーザ端末Ｔｍ−ｎに保存させても良い。これは、ユーザ端末Ｔｍ−ｎ又はエッジサーバＳＥｍに保存されているコンテンツの関連コンテンツが、必ずしも同一拠点内のユーザ端末Ｔｍ−ｎ又はエッジサーバＳＥｍに保存されているとは限らない場合に有効である。例えば、コンテンツの投入の際に、投入サーバＳＴが１又は複数のノードに予めコンテンツを配信しておく場合や、ユーザ端末Ｔｍ−ｎにより取得されたコンテンツに直接関連するコンテンツのみを同一拠点内のユーザ端末Ｔｍ−ｎに保存させる場合等がある。
【０１９９】
また、上記各実施形態においては、オーバーレイネットワークに、ＤＨＴを利用したピアツーピアネットワークが適用されていたが、これに限られるものではない。例えば、他のピアツーピアネットワーク、または、オーバーレイネットワークを用いたシステムが適用されても良い。ＤＨＴを利用しないピアツーピアネットワークとしては、例えば、ハイブリッド型のピアツーピアネットワークがある。
【符号の説明】
【０２００】
１１  制御部
１２  記憶部
１３  通信部
１４  バス
２１、４１  制御部
２２、４２  記憶部
２３、４３  バッファメモリ
２４、４４  デコーダ部
２５、４５  映像処理部
２６、４６  表示部
２７、４７  音声処理部
２８、４８  スピーカ
２９、４９  通信部
３０、５０  入力部
３１、５１  バス
ＳＴ  投入サーバ
ＳＥｍ  エッジサーバ
Ｔｍ−ｎ  ユーザ端末
ＳＭ  管理サーバ
ＳＰ  ポータルサーバ
ＭＴ  管理端末
ＦＷ  ファイアーウォール
ＢＲ  ブロードバンドルータ
Ｌｍ、ＬＳ  通信回線
ＮＬｍ  拠点ネットワーク
ＮＷ  ネットワーク
ＮＳ  配信センターネットワーク
ＰＬｍ  拠点Ｐ２Ｐネットワーク
ＰＷ、ＰＷ２  Ｐ２Ｐネットワーク
Ｓ  コンテンツ配信システム
【図１】
2011071644.tif 000003
【図２】
2011071644.tif 000004
【図３】
2011071644.tif 000005
【図４】
2011071644.tif 000006
【図５】
2011071644.tif 000007
【図６】
2011071644.tif 000008
【図７】
2011071644.tif 000009
【図８】
2011071644.tif 000010
【図９】
2011071644.tif 000011
【図１０】
2011071644.tif 000012
【図１１】
2011071644.tif 000013
【図１２】
2011071644.tif 000014
【図１３】
2011071644.tif 000015
【図１４】
2011071644.tif 000016
【図１５】
2011071644.tif 000017
【図１６】
2011071644.tif 000018