(57)【要約】      （修正有）【課題】既存のウェブサーバあるいはストリーミングサーバで行っている個人認証および有効期限などのコンテンツ管理のメリットを損なわずに、Ｐ２Ｐによる負荷分散のメリットを活かすことを可能にする。【解決手段】プロキシがリクエストをＰ２Ｐ内で共有する対象であると判定した場合にインデックスサーバに転送し、共有する対象で無いと判定した場合にコンテンツサーバにリクエストを転送する。インデックスサーバはリクエストを基にインデックスを検索して、Ｐ２ＰサーバのＰ２Ｐ用ＵＲＬの登録があればそこにリダイレクトし、登録がなければコンテンツサーバにリダイレクトする。そして、コンテンツサーバあるいはＰ２Ｐサーバがコンテンツをプロキシに返信し、プロキシが受け取ったコンテンツを共有すると判定している場合に、コンテンツとプロトコルヘッダーをキャッシュとして保存し、インデックスサーバにＰ２Ｐ用ＵＲＬを時限付で登録する。【選択図】図１
2009146366.tif 000002
【特許請求の範囲】
【請求項１】
本発明は、「ウェブブラウザ」と、「コンテンツサーバ」と、前記「ブラウザ」が前記「コンテンツサーバ」内のコンテンツへのアクセス方法を表す「コンテンツサーバ用ＵＲＬ」と、前記「ウェブブラウザ」と前記「コンテンツサーバ」との間に設置する「プロキシ」と、前記「プロキシ」がコンテンツとそのレスポンスヘッダを管理する「キャッシュ」と、前記キャッシュをＰ２Ｐ内に提供する「Ｐ２Ｐサーバ」と、「Ｐ２Ｐサーバ」が提供する「キャッシュ」内のコンテンツへのアクセス方法を表す「Ｐ２Ｐ用ＵＲＬ」と、Ｐ２Ｐ内の前記「Ｐ２Ｐ用ＵＲＬ」を時限付で管理する「インデックスサーバ」と、前記「プロキシ」がＰ２Ｐ内で共有の有無を判定するための「条件リスト」と、を備えたコンテンツを配信する方法であって、
「ウェブブラウザ」が「コンテンツサーバ用ＵＲＬ」を使用し「コンテンツサーバ」にリクエストを送信するために、プロキシを経由する第１のステップと、
前記「プロキシ」が前記「ウェブブラウザ」からの前記リクエストを前記「条件リスト」に照らし合わせてリクエスト中のコンテンツをＰ２Ｐ内で共有する対象であるかを確認する第２のステップと、
第２のステップで前記リクエストがＰ２Ｐ内で共有する対象であると判定した場合に前記リクエストを「インデックスサーバ」に転送し、Ｐ２Ｐ内で共有する対象で無いと判定した場合に「コンテンツサーバ」に前記リクエストを転送する第３のステップと、
「インデックスサーバ」において受け取った前記リクエストを基に「インデックス」を検索して、もし「Ｐ２Ｐサーバ」の「Ｐ２Ｐ用ＵＲＬ」の登録があればその「Ｐ２Ｐ用ＵＲＬ」にリダイレクトし、もし「Ｐ２Ｐ用ＵＲＬ」の登録がなければ「コンテンツサーバ」にリダイレクトする第４のステップと、
「コンテンツサーバ」あるいは「Ｐ２Ｐサーバ」がコンテンツを前記プロキシに返信する第５のステップと、
前記「プロキシ」がコンテンツを受け取り、第３のステップで共有すると判定している場合に、コンテンツとその応答のプロトコルヘッダーを前記キャッシュとして保存し、「インデックスサーバ」に「Ｐ２Ｐサーバ」の「Ｐ２Ｐ用ＵＲＬ」を（前記プロトコルヘッダーを参考にして）時限付で登録する第６のステップと、
を備えることを特徴とするコンテンツの配信方法。
【請求項２】
前記プロキシは、前記ブラウザからのリクエストを透過プロキシとして実装することを特徴とする「請求項１」に記載のコンテンツの配信方法。
【請求項３】
前記プロキシは、前記ブラウザのプラグインのモジュールとして実装することを特徴とする「請求項１」に記載のコンテンツの配信方法。
【請求項４】
前記第３のステップは、前記インデックスサーバに前記リクエストを転送する際に、ＩＣＡＰプロトコルによってリクエストをカプセル化して転送する「請求項１」に記載のコンテンツの配信方法。
【請求項５】
「認証リスト」を追加して備えることにより、前記第４のステップは、「インデックスサーバ」において受け取った前記リクエストが「認証リスト」に適合した場合、「インデックスサーバ」が前記リクエストの一部を利用して「コンテンツサーバ」に認証を要求し、その後「インデックス」を検索して、もし「Ｐ２Ｐサーバ」の「Ｐ２Ｐ用ＵＲＬ」の登録があればその「Ｐ２Ｐ用ＵＲＬ」にリダイレクトし、もし「Ｐ２Ｐ用ＵＲＬ」の登録がなければコンテンツサーバにリダイレクトする「請求項１」に記載のコンテンツの配信方法。
【請求項６】
前記「Ｐ２Ｐ用ＵＲＬ」を時限付で管理する方法としてそのＵＲＬ内に、その有効期限と、そのＵＲＬが前記「プロキシ」によって作成されたことを保障するための文字列と、を含めることを特徴とする「請求項１」に記載のコンテンツの配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】本発明は、コンテンツ受信者がウェブブラウザを利用するコンテンツ配信において、ウェブブラウザで表示されるコンテンツの一部を選択的にＰ２Ｐ（ピア・ツー・ピア；ｐｅｅｒ−ｔｏ−ｐｅｅｒ）で利用することにより、既存のウェブサーバ（あるいはストリーミングサーバ）によるコンテンツ配信の負荷を分散するシステムに関する。
【背景技術】
【０００２】従来、Ｐ２Ｐシステムを利用したコンテンツ配信は、ウェブブラウザを対象としたコンテンツ配信システムとは独立しているため、個別にコンテンツ配信を管理運用する必要がある。ここで、コンテンツサーバとは、ウェブサーバあるいはストリーミングサーバを利用してコンテンツを配信するサーバのこと指す。
【発明の開示】
【発明が解決しようとする課題】
【０００３】今までのＰ２Ｐシステムには次のような欠点があった。
（イ）ウェブサーバ（またはストリーミングサーバ）などの既存の配信用のサーバでのコンテンツ配信とは異なり、Ｐ２Ｐ内でコンテンツの配信期間を配信開始後に変更することが出来ない。
（ロ）「ウェブブラウザ」で表示するページ内のコンテンツの一部（ページの構成物の一部）をＰ２Ｐ経由で配信することができない。
（ハ）Ｐ２Ｐ上で特定の利用者にコンテンツの利用を制限するためには、コンテンツを暗号化して配信して、その特定の利用者に鍵をＰ２Ｐ以外の方法で別途配信する必要がある。
（ニ）コンテンツを必要としていないＰ２Ｐのノードに対しても不要なキャッシュが保存される。
また、Ｐ２Ｐを利用しないウェブサーバ（あるいはストリームサーバ）には次のような欠点があった。
（ホ）コンテンツ配信の負荷はウェブサーバ（あるいはストリームサーバ）に集中するため、ウェブサーバ（あるいはストリームサーバ）の負荷を想定されるコンテンツの受信数を基に増強する必要がある。
本発明は、以上のような点を考慮し、コンテンツ共有（配布）に適した情報端末装置、情報共有方法及びそれを用いたＰ２Ｐシステムを提供することである。
【課題が解決するための手段】
【０００４】本発明は、「ウェブブラウザ」と、「コンテンツサーバ」と、前記「ブラウザ」が前記「コンテンツサーバ」内のコンテンツへのアクセス方法を表す「コンテンツサーバ用ＵＲＬ」と、前記「ウェブブラウザ」と前記「コンテンツサーバ」との間に設置する「プロキシ」と、前記「プロキシ」がコンテンツとそのレスポンスヘッダを管理する「キャッシュ」と、前記キャッシュをＰ２Ｐ内に提供する「Ｐ２Ｐサーバ」と、「Ｐ２Ｐサーバ」が提供する「キャッシュ」内のコンテンツへのアクセス方法を表す「Ｐ２Ｐ用ＵＲＬ」と、Ｐ２Ｐ内の前記「Ｐ２Ｐ用ＵＲＬ」を時限付で管理する「インデックスサーバ」と、前記「プロキシ」がＰ２Ｐ内で共有の有無を判定するための「条件リスト」と、を備えたコンテンツを配信する方法であって、
「ウェブブラウザ」が「コンテンツサーバ用ＵＲＬ」を使用し「コンテンツサーバ」にリクエストを送信するために、プロキシを経由する第１のステップと、
前記「プロキシ」が前記「ウェブブラウザ」からの前記リクエストを前記「条件リスト」に照らし合わせてリクエスト中のコンテンツをＰ２Ｐ内で共有する対象であるかを確認する第２のステップと、
第２のステップで前記リクエストがＰ２Ｐ内で共有する対象であると判定した場合に前記リクエストを「インデックスサーバ」に転送し、Ｐ２Ｐ内で共有する対象で無いと判定した場合に「コンテンツサーバ」に前記リクエストを転送する第３のステップと、
「インデックスサーバ」において受け取った前記リクエストを基に「インデックス」を検索して、もし「Ｐ２Ｐサーバ」の「Ｐ２Ｐ用ＵＲＬ」の登録があればその「Ｐ２Ｐ用ＵＲＬ」にリダイレクトし、もし「Ｐ２Ｐ用ＵＲＬ」の登録がなければ「コンテンツサーバ」にリダイレクトする第４のステップと、
「コンテンツサーバ」あるいは「Ｐ２Ｐサーバ」がコンテンツを前記プロキシに返信する第５のステップと、
前記「プロキシ」がコンテンツを受け取り、第３のステップで共有すると判定している場合に、コンテンツとその応答のプロトコルヘッダーを前記キャッシュとして保存し、「インデックスサーバ」に「Ｐ２Ｐサーバ」の「Ｐ２Ｐ用ＵＲＬ」を（前記プロトコルヘッダーを参考にして）時限付で登録する第６のステップと、
を備えることにより、「コンテンツサーバ」内のコンテンツと、Ｐ２Ｐ内にキャッシュされたコンテンツと、を選択的に置き換えることを可能とし、Ｐ２Ｐの欠点と「コンテンツサーバ」の欠点を補完することを特徴とする。
【発明の効果】
【０００５】このような特徴により、ウェブサーバ（またはストリーミングサーバ）などの既存の配信用のサーバでのコンテンツの配信期間を変更することにより、Ｐ２Ｐ内で再配布されるコンテンツの配信期間も配信開始後に変更することが出来る。
【０００６】このような特徴により、前記「条件リスト」の登録を基にＰ２Ｐで共有するコンテンツに関しては最終的に、「コンテンツサーバ用ＵＲＬ」を「Ｐ２Ｐ用ＵＲＬ」へリダイレクト（あるいは変更）することにより、ウェブブラウザで表示するページ内のコンテンツの一部を、Ｐ２Ｐを利用する形で配信することができる。
【０００７】また、本発明は、「ウェブブラウザ」からＰ２Ｐ内のキャッシュを利用でき、またＰ２Ｐ内のコンテンツの「Ｐ２Ｐ用ＵＲＬ」が「インデックスサーバ」に限定的に管理されているため、コンテンツを暗号化しなくても、既存のウェブサイトの認証を使って特定のユーザにＰ２Ｐ内のコンテンツを配信できる。
【０００８】コンテンツは、「ウェブブラウザ」からアクセスした場合にのみ「キャッシュ」に保存されるため、コンテンツが不用意にバラ撒かれる心配がなく、そのため回線に余計な負担を掛けない。
【０００９】また、あらかじめ人気の高いことが予想される複数のコンテンツを前記「条件リスト」に登録しておけば、その中でも更にコンテンツ利用頻度の高いものが、より多くの「Ｐ２Ｐサーバ」により再配布されることになるため、ウェブサーバ（あるいはストリームサーバ）の負荷がＰ２Ｐを利用した分だけ軽減される。
【発明を実施するための最良の形態】
【００１０】以下に、本発明の実施形態を、図面を参照して説明する。【００１１】図１は、本発明の実施形態のコンピュータシステムの概念図である。
図２は、本発明の実施形態の「Ｐ２Ｐサーバ」および「プロキシ」の概念図である。【００１２】コンテンツを表示するための「ウェブブラウザ」（１１）が動作しているコンピュータ（１）を、「インターネット」（５）を経由して、「コンテンツサーバ」（２）と「インデックスサーバ」（３）に接続する。【００１３】また、「インデックスサーバ」（３）は、「ウェブサーバ」（３１）と「インデックス」（３２）と「認証リスト」（３３）により構成され、「プロキシ」（１２）が「ウェブサーバ」（３１）と通信することによって、「インデックス」（３２）に「Ｐ２Ｐ用ＵＲＬ」を登録・参照することができる。また、「認証リスト」には、Ｐ２Ｐ内においても「コンテンツサーバ」（３）の認証システムを利用する必要があるコンテンツを（「コンテンツサーバ用ＵＲＬ」を指定して）登録しておく。【００１４】「ウェブブラウザ」（１１）が「コンテンツサーバ用ＵＲＬ」を使用し「コンテンツサーバ」にリクエストを送信するために、「プロキシ」（１２）を経由するように、「ウェブブラウザ」（１１）が動作しているコンピュータ（１）の内部あるいは近傍に「プロキシ」（１２）を設置する。
「ウェブブラウザ」（１１）の設定項目において、プロキシを利用しない設定になっている場合は、透過プロキシの方法をもって「プロキシ」（１２）を経由させるために、ＩＰパケットの送信先を書き換える「パケット書き換えモジュール」（１３）をコンピュータ（１）の内部あるいは近傍に設置する。【００１５】「プロキシ」（１２）が「ブラウザ」（１１）の要求を受信した時に、直ぐに「条件リスト」（１４）を参照できるように、「条件リスト（１４）は、「プロキシ」（１２）と同一のコンピュータに設置する。
「条件リスト」（１４）は、Ｐ２Ｐ内で共有するコンテンツであるかを判定できる様に、「コンテンツサーバ用ＵＲＬ」に対象とする「マッチングパターン」を保持する。
また、「履歴情報」（１７）を「プロキシ」（１２）と同一のコンピュータに用意する。「プロキシ」（１２）は、「履歴情報」（１７）に、実際に前記「マッチングパターン」に適合した個別の「コンテンツサーバ用ＵＲＬ」毎にエントリを作成し、各エントリに「フラグ」を用意し、フラグの操作は、「プロキシ」（１２）が行う。【００１６】前記「フラグ」は、「マッチングパターン」の判定を無効とするために「プロキシ」（１２）が参照する。前記「フラグ」は、ＯＳが再起動した場合などに、リセットされる。前記フラグがリセットされた状態は、「マッチングパターン」の判定が有効となっている状態とする。前記「フラグ」がセットされた状態は、「マッチングパターン」の判定が無効となっている状態、つまり「マッチングパターン」を無視してＰ２Ｐ内で共有しないコンテンツであると判定する。
「条件リスト」（１４）を使った判定は、前記「フラグ」を必ず参照するものとする。前記「フラグ」がセットされていることを利用して、「マッチングパターン」を無視して判定した場合は、その直後に「フラグ」をリセット（あるいはエントリを削除）する。【００１７】「ウェブブラウザ」（１１）で表示するページ内で、最も転送量の大きい映像などのコンテンツのＵＲＬ（つまり、「ウェブブラウザ」が認識している「コンテンツサーバ用ＵＲＬ」）を「条件リスト」（１４）に登録しておく。
この「条件リスト」（１４）は、「プロキシ」（１２）によって参照される。「条件リスト」（１４）の更新用のデータは任意のウェブサーバ上に配置し、「プロキシ」（１２）が更新する。【００１８】また、前記「条件リスト」（１４）の前記「マッチングパターン」に適合するコンテンツで、「コンテンツサーバ」と同様に、クッキーや認証ヘッダを使い、Ｐ２Ｐ内での再配布においても同様の認証を行う場合は、「インデックスサーバ」（３）に「認証リスト」を設け、認証を必要とするリクエストのＵＲＬを登録する。【００１９】図３は、本発明の実施形態の「プロキシ」（１２）が「条件リスト」（１４）を基にウェブブラウザ（１１）のリクエストを処理する時のフローチャート図である。【００２０】ウェブブラウザ（１１）のリクエストを「プロキシ」（１２）が受信すると、「プロキシ」（１２）は、「条件リスト」（１４）と「履歴情報」（１７）を確認して、Ｐ２Ｐ内で共有するコンテンツであるかを判定する。もし、Ｐ２Ｐ内で共有するコンテンツと判定した場合は、「キャッシュ」（１５）、「インデックスサーバ」（３）、「コンテンツサーバ」（２）の優先順位でコンテンツを探す。
もし、Ｐ２Ｐ内で共有しないコンテンツであると判定した場合は、「コンテンツサーバ」（２）に優先順位があるとして、「コンテンツサーバ」（２）へリクエストを転送する。【００２１】この判定の直後に、「履歴情報」（１７）中の該当ＵＲＬのフラグはリセット（あるいはエントリーを削除）する。【００２２】「キャッシュ」（１５）内のコンテンツに優先順位がある場合は、「キャッシュ」（１５）内のコンテンツと、「キャッシュ」（１５）内に保存されていたレスポンスヘッダを確認して、コンテンツの有効期限と現在の時刻を比較して、有効期限内なら、キャッシュの内容をブラウザに返信する。もし、有効期限外ならば、「インデックスサーバ」（３）に優先順位を譲る。【００２３】「インデックスサーバ」（３）内のコンテンツに優先順位がある場合は、「プロキシ」（１２）は、必要に応じてリクエストを変更して「インデックスサーバ」（３）に転送する。【００２４】「コンテンツサーバ」（２）内のコンテンツに優先順位がある場合は、ブラウザからのリクエストを「コンテンツサーバ」（２）へ転送する。【００２５】図４は、本発明の実施形態の「インデックスサーバ」のフローチャート図である。【００２６】インデックスサーバ（３）は、プロキシ（１２）から転送されたリクエストに対して、構成要素であるウェブサーバ（３１）で受信をする。
受信したリクエストが、「認証リスト」の判定において、認証処理が必要なコンテンツである場合、インデックスサーバは、受信したリクエストに含まれていたクッキーあるいは認証用ヘッダあるいはその両方を、ＨＴＴＰのＨＥＡＤメソッド（あるいは、コンテンツの取得を伴わない判定のためのリクエスト）を使って、「コンテンツサーバ」（２）にコンテンツの認証のために送信し、その認証結果を基に、「プロキシ」（１２）から受信したリクエストを「インデックス」（３２）に照会をするかの判定をする。
インデックスサーバ（３２）を構成するウェブサーバ（３１）は、リクエストを「インデックス」（３２）に照会して、「Ｐ２Ｐ用ＵＲＬ」が１つ以上登録されていれば、その中から１つを選んで、そこにリダイレクトする。もし、１つも登録がなければ、本来の「コンテンツサーバ」にリダイレクトする（このリダイレクト時には、リスポンスヘッダに「未登録ヘッダ」を加える）。
上記リダイレクトの方法は、ウェブブラウザあるいはそのプラグインが判別可能な方法で行う。具体的には、ＨＴＴＰの「Ｌｏｃａｔｉｏｎヘッダ」あるいは、リダイレクトを指示するコンテンツ（またはレスポンスヘッダ）などをリプライとして「プロキシ」（１２）に返信することでリダイレクトを行う。「プロキシ」（１２）は、受信したリプライをウェブブラウザに返信するため、リダイレクトにより次のＵＲＬのアクセスを開始する起点は、「ブラウザ」（１１）となる。【００２７】また、「インデックスサーバ」（３）を構成する「ウェブサーバ」（３１）は、「プロキシ」（１２）から受信したリクエストが、ＩＣＡＰプロトコル等でカプセル化されている場合は、ＨＴＴＰ以外にＩＣＡＰプロトコル等も受信し、ＨＴＴＰの時を同様の判定を行う。【００２８】図５は、本発明の実施形態の「プロキシ」（１２）の上位からのリプライを処理するフローチャート図である。【００２９】「プロキシ」（１２）は、リクエストを送信した上位（「コンテンツサーバ」あるいは「インデックスサーバ」あるいは「Ｐ２Ｐサーバ」）から、リプライを受信した時は、リプライ中の「未登録ヘッダ」の有無を確認して、存在した場合は「条件リスト」の該当する「コンテンツサーバ用ＵＲＬ」の「フラグ」をセットする。
また、同時にリプライにコンテンツが含まれる場合で、且つそのリクエストにおいてＰ２Ｐ内で共有するコンテンツであると判定されていた場合は、「キャッシュ」（１５）にコンテンツとコンテンツのレスポンスヘッダを保存すると同時に、該当するコンテンツのための「Ｐ２Ｐ用ＵＲＬ」を生成し、「インデックスサーバ」（３）にコンテンツの有効期限と共に登録する。前記有効期限は、前記レスポンスヘッダより生成する。【００３０】「Ｐ２Ｐサーバ」は、受信したリクエスト内から、「Ｐ２Ｐ用ＵＲＬ」を分析し、キャッシュ（１５）を参照して、「キャッシュ」（１５）内のコンテンツおよびレスポンスヘッダを返信する。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態のコンピュータシステムの概念図である。
【図２】本発明の実施形態の「Ｐ２Ｐサーバ」および「プロキシ」の例である。
【図３】本発明の実施形態の「プロキシ」がリクエストを処理するフローチャート図である。
【図４】本発明の実施形態の「インデックスサーバ」のフローチャート図である。
【図５】本発明の実施形態の「プロキシ」がリプライを処理するフローチャート図である。
【符号の説明】
【００３２】  １        コンピュータ
１１      「ブラウザ」
１２      「プロキシ」
１３      「パケット書き換えモジュール」
１４      「条件リスト」
１５      「キャッシュ」
１６      「Ｐ２Ｐサーバ」
１７      「履歴情報」
２        「コンテンツサーバ」
２１      ウェブサーバあるいはストリーミングサーバ
３        「インデックスサーバ」
３１      「ウェブサーバ」
３２      「インデックス」
３３      「認証リスト」
５        「インターネット」
【図１】
2009146366.tif 000003
【図２】
2009146366.tif 000004
【図３】
2009146366.tif 000005
【図４】
2009146366.tif 000006
【図５】
2009146366.tif 000007