(57)【要約】【課題】アプリケーションなどの事前インストールを必要とせず、コンテンツ配信サーバの負荷軽減を図ることのできるコンテンツ配信サーバを得る。【解決手段】コンテンツ配信サーバ１００は、サーバアプリケーションプログラムを潜在させたコンテンツをクライアント２００に配信する。クライアント２００で、サーバアプリケーションプログラムが起動し、クライアント２００のネットワーク情報を送信することにより、コンテンツ配信サーバ１００では、そのクライアント２００を代理サーバとして管理する。その後、特定のクライアントからコンテンツ配信要求があった場合は、代理サーバのクライアント２００をコンテンツダウンロード先として指示する。【選択図】図１
2007102557.tif 000002
【特許請求の範囲】
【請求項１】
サーバアプリケーションプログラムを潜在させたコンテンツを任意のクライアントに配信するコンテンツ配信部と、
前記コンテンツを閲覧することによりサーバアプリケーションプログラムが起動し、前記任意のクライアントから当該クライアントのネットワーク情報が送信された場合、当該ネットワーク情報に基づいて前記クライアントを代理サーバとして管理する代理サーバ管理部と、
特定のクライアントからコンテンツ配信要求を受けた場合、コンテンツダウンロード先として前記代理サーバのクライアントを指示すると共に、前記代理サーバのクライアントに対して、前記特定のクライアントにコンテンツを配信するよう指示する配信要求処理部とを備えたコンテンツ配信サーバ。
【請求項２】
配信要求処理部は、特定のクライアントからコンテンツ配信要求があった場合、代理サーバ管理部に対して、代理サーバのクライアントが稼働可能かを問い合わせ、前記代理サーバのクライアントが稼働可能であるという応答を得た場合に、前記特定のクライアントに対して前記代理サーバのクライアントをコンテンツダウンロード先として指示することを特徴とする請求項１記載のコンテンツ配信サーバ。
【請求項３】
コンテンツ配信サーバからクライアントに対して配信されるコンテンツに含まれるプログラムであって、
前記クライアントで前記コンテンツを閲覧した場合に、前記コンテンツ配信サーバに代わって当該コンテンツを他のクライアントへ配信する代理サーバになるか否かの選択入力を受け付けるステップと、
前記選択入力の内容を前記コンテンツ配信サーバに送信するステップとをクライアントに実行させるためのプログラム。
【請求項４】
クライアント間でローカルコピーしたコンテンツを閲覧した場合に、前記コンテンツを管理するコンテンツ配信サーバに代わって当該コンテンツを他のクライアントへ配信する代理サーバになるか否かの選択入力を受け付けるステップと、
前記選択入力の内容を前記コンテンツ配信サーバに送信するステップとをクライアントに実行させることを特徴とする請求項３記載のプログラム。
【請求項５】
代理サーバになることを選択したクライアントで、当該クライアントが起動した場合にコンテンツ配信サーバに稼働状態であることを通知するステップと、
当該クライアントがシャットダウンする場合は、前記コンテンツ配信サーバに稼働状態を終了したことを通知するステップとをクライアントに実行させることを特徴とする請求項３または請求項４記載のプログラム。
【請求項６】
配信されたコンテンツがクライアント上に存在するかを監視し、当該コンテンツが存在した場合に代理サーバとして稼働可能であるとコンテンツ配信サーバに通知するステップをクライアントに実行させることを特徴とする請求項３から請求項５のうちのいずれか１項記載のプログラム。
【請求項７】
コンテンツと当該コンテンツを閲覧するためのプレーヤとが一体に構成されると共に、前記コンテンツが前記プレーヤでのみ閲覧可能に構成され、これらが実行ファイル形式でコンテンツ配信サーバからクライアントに配信され、前記プレーヤが実行されることで同時に起動することを特徴とする請求項３から請求項６のうちのいずれか１項記載のプログラム。
【請求項８】
コンテンツにプログラムを実行するスクリプト記述が含まれ、クライアントで前記コンテンツを閲覧する場合、前記スクリプト記述に基づきプログラムが実行されることを特徴とする請求項３から請求項６のうちのいずれか１項記載のプログラム。
【請求項９】
コンテンツ配信サーバから任意のクライアントに対してコンテンツに潜在させたサーバアプリケーションプログラムを配信するステップと、
前記任意のクライアントに配信されたコンテンツが閲覧されることにより前記サーバアプリケーションプログラムが実行され、当該クライアントのネットワーク情報を、前記コンテンツ配信サーバに通知するステップと、
前記クライアントのネットワーク情報に基づき、前記コンテンツ配信サーバで当該クライアントを代理サーバとして登録するステップと、
前記コンテンツ配信サーバに対して、特定のクライアントからコンテンツ配信要求があった場合に、当該特定のクライアントに対して、コンテンツダウンロード先として前記代理サーバのクライアントを指示すると共に、前記代理サーバのクライアントに対して、前記特定のクライアントにコンテンツを配信するよう指示するステップと、
前記特定のクライアントから、前記代理サーバのクライアントに対してコンテンツ配信要求を行うことにより、当該代理サーバのクライアントから前記特定のクライアントに対してコンテンツを配信するステップとを備えたコンテンツ配信方法。
【請求項１０】
クライアントにおけるコンテンツの閲覧に応じた閲覧料金を算出する閲覧料金演算部を備え、
前記閲覧料金演算部は、前記クライアントにおいて代理サーバとして稼働することの同意が得られた場合は、当該クライアントのコンテンツ閲覧料金を通常料金より割り引き、または無料として閲覧料金の演算を行い、
代理サーバとして稼働することへの同意が得られなかった場合は、前記通常料金として閲覧料金の演算を行うことを特徴とする請求項９記載のコンテンツ配信方法。
【請求項１１】
クライアントにおけるコンテンツの閲覧に応じた閲覧料金を算出する閲覧料金演算部を備え、
前記閲覧料金演算部は、前記クライアントが代理サーバとして稼働することに同意し、かつ、代理サーバとしてコンテンツを配信した場合は、当該配信したデータ量または配信時間に応じて、当該クライアントのコンテンツ閲覧料金を通常料金より割り引いた料金、または無料として閲覧料金の演算を行い、
代理サーバとして稼働することへの同意が得られなかった場合は、前記通常料金として閲覧料金の演算を行うことを特徴とする請求項９または請求項１０記載のコンテンツ配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンテンツ配信の効率化に関するコンテンツ配信サーバ、プログラムおよびコンテンツ配信方法に関するものである。
【背景技術】
【０００２】
番組や映画、音楽などのコンテンツをクライアントに配信する場合、コンテンツ配信サーバの負荷を軽減するため、既に配信が完了したクライアントを代理サーバとして利用し、コンテンツ配信サーバへの配信要求をクライアントにリダイレクトするものがあった（例えば、特許文献１、２、３参照）
【０００３】
【特許文献１】特開２００４−１１８４１７号公報
【特許文献２】特開２００３−７６６３４号公報
【特許文献３】特開２００４−３５５２５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば、特許文献１、２にあるように、本方式を実施するにはクライアントに予め代理サーバとなるためのアプリケーションのインストールが必要であり、また特許文献３に示されたコンテンツ配信方法では、コンテンツに付加されたアプリケーションが自動的にクライアント情報をコンテンツ配信サーバに送信するが、クライアントのコンテンツに対する権限を管理するのみに使用されるに止まり、コンテンツの配信を受けたクライアントを新たなコンテンツの配信元として利用せず、コンテンツ配信サーバ自体の負荷の軽減にはつながらないものであった。
【０００５】
この発明は上記のような課題を解決するためになされたもので、アプリケーションなどの事前インストールを必要とせず、コンテンツ配信サーバの負荷軽減を図ることのできるコンテンツ配信サーバ、プログラムおよびコンテンツ配信方法を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係るコンテンツ配信サーバは、クライアントでコンテンツを閲覧することにより、コンテンツに潜在させたサーバアプリケーションプログラムが起動し、クライアントからそのネットワーク情報が送信された場合、そのネットワーク情報に基づいてクライアントを代理サーバとして管理する代理サーバ管理部と、特定のクライアントからコンテンツ配信要求を受けた場合、コンテンツダウンロード先として代理サーバのクライアントを指示すると共に、代理サーバのクライアントに対して、特定のクライアントにコンテンツを配信するよう指示する配信要求処理部とを備えたものである。
【発明の効果】
【０００７】
この発明のコンテンツ配信サーバは、クライアントに配信するコンテンツにサーバアプリケーションプログラムを潜在させ、サーバアプリケーションプログラムが起動することにより、そのクライアントが代理サーバとして管理され、特定のクライアントからコンテンツ配信要求があった場合は、代理サーバのクライアントをコンテンツダウンロード先として指示するようにしたので、アプリケーションなどの事前インストールを必要とせず、コンテンツ配信サーバの負荷軽減を図ることができる。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１は、この発明の実施の形態１によるコンテンツ配信サーバとクライアントとを示す構成図である。
図において、コンテンツ配信サーバ１００と複数台のクライアント２００は、ネットワーク３００を介して接続されている。コンテンツ配信サーバ１００は、サーバアプリケーションプログラムを潜在させたマルチメディアコンテンツファイル（以下、単にコンテンツという）の配信およびコンテンツの代理サーバの管理、およびコンテンツのユーザ管理を行うもので、コンテンツ配信部１０１、代理サーバ管理部１０２、配信要求処理部１０３を備えている。コンテンツ配信部１０１は、サーバアプリケーションを潜在させたコンテンツを蓄積し、このコンテンツを任意のクライアント２００に配信する機能部である。
【０００９】
代理サーバ管理部１０２は、任意のクライアント２００を代理サーバとした場合、そのクライアント２００を代理サーバとして登録、管理する機能部であり、代理サーバとしたクライアント２００の情報を保持するためのクライアントデータベース１０４を備えている。配信要求処理部１０３は、特定のクライアント２００からコンテンツ配信要求を受けた場合、これを認証し、コンテンツダウンロード先として代理サーバとなったクライアント２００を代理サーバとして指示すると共に、代理サーバのクライアント２００から、特定のクライアント２００に対してコンテンツを配信させるよう代理サーバのクライアント２００に指示する機能を有している。
【００１０】
クライアント２００ａは、コンテンツ配信サーバ１００に対してコンテンツ配信要求を行うと共に、コンテンツ配信サーバ１００から配信されるコンテンツに含まれるサーバアプリケーションプログラムを実行して代理サーバとしての機能を実現するコンピュータである。
【００１１】
次に、実施の形態１の動作について説明する。
図２および図３は、実施の形態１の動作を示す説明図である。尚、これらの図において、クライアント２００ａ，２００ｂ，２００ｃは、図１に示したクライアント２００であるが、それぞれ別のクライアントを示している。
【００１２】
先ず、初期状態では、クライアント２００ａは、代理サーバとしての機能を持たず、コンテンツの配信要求のみを行うものであるとする。このような状態で、クライアント２００ａからコンテンツ配信要求を行ったとする（ステップＳＴ１０１）。これにより、コンテンツ配信サーバ１００では、配信要求処理部１０３によって、そのクライアント２００ａの認証を行い、認証完了後は、コンテンツ配信部１０１がコンテンツの送信を開始する（ステップＳＴ１０２）。
【００１３】
クライアント２００ａでは、コンテンツ配信サーバ１００から配信されたコンテンツを閲覧すると、このコンテンツに潜在されたサーバアプリケーションプログラムが自動起動する。これにより、クライアント２００ａのグローバルＩＰアドレス、開放ポート番号等のネットワーク情報通知をコンテンツ配信サーバ１００に対して送信する（ステップＳＴ１０３）。
【００１４】
コンテンツ配信サーバ１００では、クライアント２００ａから送信されたネットワーク情報通知の内容を元に、代理サーバ管理部１０２は、クライアント２００ａのネットワーク情報をクライアントデータベース１０４に記録する。
【００１５】
次に、クライアント２００ｂが、コンテンツ配信サーバ１００に対して、先にクライアント２００ａに配信したコンテンツの配信要求を行った場合（ステップＳＴ１０４）、コンテンツ配信サーバ１００では、配信要求処理部１０３が、そのコンテンツ配信要求に従ってクライアント２００ｂの認証を行う。認証を完了後、配信要求処理部１０３は、代理サーバ管理部１０２において代理サーバとして管理しているクライアントがあるかを問い合わせる。代理サーバ管理部１０２で管理するクライアント２００ａがコンテンツ配信サーバ１００の代理としてクライアント２００ｂに対してコンテンツを配信することが可能な状態であった場合、これを示す情報を応答する。これにより、配信要求処理部１０３は、クライアント２００ｂに対して、クライアント２００ａから配信を受けるようコンテンツ配信元指示を送付する（ステップＳＴ１０５）。また、配信要求処理部１０３は、クライアント２００ａに対して、コンテンツ配信先指示を行う（ステップＳＴ１０６）。
【００１６】
コンテンツ配信サーバ１００よりコンテンツ配信元指示を受けたクライアント２００ｂは、クライアント２００ａに対してコンテンツ配信要求を行い（ステップＳＴ１０７）、クライアント２００ａは、クライアント２００ｂに対してコンテンツの送信を開始する（ステップＳＴ１０８）。
【００１７】
コンテンツをクライアント２００ｂに配信後、クライアント２００ｂに配信されたコンテンツに潜在されたサーバアプリケーションプログラムが自動起動し、クライアント２００ｂのグローバルＩＰアドレス、開放ポート番号等のネットワーク情報通知をコンテンツ配信サーバ１００に対して送信する（ステップＳＴ１０９）。
【００１８】
コンテンツ配信サーバ１００では、クライアント２００ｂから送信されたネットワーク情報通知の内容を元に、代理サーバ管理部１０２が、クライアント２００ｂのネットワーク情報をクライアントデータベース１０４に記録する。
【００１９】
次に、クライアント２００ａ，２００ｂ以外のクライアント２００ｃがコンテンツ配信サーバ１００に対してコンテンツの配信要求を行った場合（ステップＳＴ１１０）、代理サーバ管理部１０２は、クライアント２００ｂからのコンテンツ配信要求と同様の手順で、クライアント２００ａもしくはクライアント２００ｂがコンテンツ配信サーバ１００の代理としてクライアント２００ｃに対してコンテンツを配信することが可能な状態であるかを判定する。その結果、代理サーバとしてクライアント２００ｃに対して、より適切なものが選択される。ここで、代理サーバとしての選択基準としては、回線に余裕があるもの、クライアント２００ｃと同じプロバイダに繋がれているもの等である。
【００２０】
このとき、代理サーバ管理部１０２は、例えばクライアント２００ａ，２００ｂが代理サーバとして稼働可能な状態かを確認する通信を行い、稼働可能である旨が帰ってきたクライアント２００ａまたはクライアント２００ｂを代理サーバとして選択してもよい。
【００２１】
また、このとき稼働可能かを判定する条件として配信されたコンテンツがクライアント２００ａ，２００ｂ上に存在するか否かを判定条件に用いてもよい。即ち、この場合、クライアント２００ａ，２００ｂ上で動作するサーバアプリケーションプログラムが、これらクライアント２００ａ，２００ｂに配信されたコンテンツを監視し、コンテンツ配信サーバ１００からの問い合わせに対して、該当するコンテンツが存在した場合に、代理サーバとして稼働することが可能である旨の通知を行う。
【００２２】
代理サーバ管理部１０２によって、いずれのクライアントも代理サーバとして稼働できないと判断された場合、配信要求処理部１０３は、コンテンツ配信サーバ１００がクライアント２００ｃに対してコンテンツを送信するようコンテンツ配信部１０１に対して指示を行う。
【００２３】
以上のような代理サーバの決定処理を行った後、配信要求処理部１０３は、決定された代理サーバから配信を受けるようクライアント２００ｃに対してコンテンツ配信元指示を送付し（ステップＳＴ１１１）、また、代理サーバとなるクライアント２００ｂに対してコンテンツ配信先指示を送付する（ステップＳＴ１１２）。これにより、クライアント２００ｃは、クライアント２００ｂに対してコンテンツ配信要求を行い（ステップＳＴ１１３）、クライアント２００ｃは、クライアント２００ｂに対してコンテンツの送信を開始する（ステップＳＴ１１４）。
【００２４】
以降は、上述した動作を繰り返し行い、コンテンツ配信サーバ１００はコンテンツ配信要求を代理サーバとなるクライアントに振り分けることでコンテンツ配信サーバ１００のコンテンツ送信にかかる負荷を分散することが可能となる。
【００２５】
尚、コンテンツを配信しているいずれかのクライアント２００において、途中で稼働を停止した場合は、コンテンツ配信サーバ１００もしくは同一のコンテンツが既に配信され代理サーバとして稼働可能なクライアント２００が残りの同一コンテンツを配信するようにしてもよい。
【００２６】
また、以上の動作において、コンテンツ配信サーバ１００にて認証を行っている機能をコンテンツに潜在させたサーバアプリケーションプログラムが実施するよう構成し、その結果をコンテンツ配信サーバ１００に送信するようにしてもよい。その場合は、例えば、コンテンツを任意のクライアント２００に配信後、クライアント２００がコンテンツ再生時に、配信されたコンテンツに潜在されたサーバアプリケーションプログラムが自動起動し、クライアント２００における図示しない表示部に課金内容の提示、および代理サーバとしての稼働受け入れ時の契約内容を示し、クライアント２００の操作者に対して判断を促すこととなる。
【００２７】
このような動作において、例えば、クライアント２００の操作者が、代理サーバとして稼働することに同意した場合、サーバアプリケーションプログラムは、その契約内容に従い、グローバルＩＰアドレス、開放ポート番号等のネットワーク情報通知をコンテンツ配信サーバ１００に対して送信する。尚、ファイアウォールがあり、開放されたポートを持たない場合は、例えばSoftEther などに代表されるＮＡＴ越え技術を用いてファイアウォールを越えた通信を実施してもよい。また、この内容については本発明の特徴点とは直接関係はないため、ここでの詳細な説明は省略する。
【００２８】
このように、代理サーバとして稼働することに同意した場合、実際に代理サーバとして稼働した時間もしくは送信したパケット数（データ量）に応じて、クライアント２００のコンテンツ閲覧料金を割り引く、もしくは無料にし、実際には代理サーバとして稼働しなかったクライアント２００に関しては通常料金を課金するように運営してもよい。即ち、コンテンツ配信サーバ１００内あるいはネットワーク３００上の任意の場所に、クライアント２００におけるコンテンツの閲覧に応じた閲覧料金を算出する閲覧料金演算部（図示省略）を設け、この閲覧料金演算部によって、クライアント２００が代理サーバとして稼働することに同意し、かつ、代理サーバとしてコンテンツを配信した場合は、配信したデータ量または配信時間に応じて、そのクライアント２００のコンテンツ閲覧料金を通常料金より割り引いた料金、または無料として閲覧料金の演算を行い、代理サーバとして稼働することへの同意が得られなかった場合は、通常料金として閲覧料金の演算を行う。
【００２９】
このとき、予め通常料金を回収し、その代理サーバ稼働内容に対応して料金を返金していく運営を実施してもよい。
【００３０】
このとき、例えば、ネットワーク情報通知送信時に一緒にクライアント２００が入力したクレジット番号等の電子決済可能な情報を送信して、その情報を元に料金を回収してもよい。また、このような場合は、セキュリティの問題が懸念されるため、コンテンツ配信サーバ１００とクライアント２００の間の通信は、例えばＲＳＡなどに代表される暗号化されたデータ通信が実施されてもよい。
【００３１】
また、クライアント２００において、代理サーバとして稼働することに同意しないという選択結果が得られた場合、コンテンツ配信サーバ１００では、例えばコンテンツ再生許可を与えずに再生を停止させるか、料金課金を行ってコンテンツの再生を許可する。即ち、コンテンツ配信サーバ１００内あるいはネットワーク３００上の任意の場所に、クライアント２００におけるコンテンツの閲覧に応じた閲覧料金を算出する図示しない閲覧料金演算部を設け、この閲覧料金演算部が、クライアント２００において代理サーバとして稼働することの同意が得られた場合は、そのクライアントのコンテンツ閲覧料金を通常料金より割り引き、または無料として閲覧料金の演算を行い、一方、代理サーバとして稼働することへの同意が得られなかった場合は、通常料金として閲覧料金の演算を行う。
【００３２】
このとき料金の課金は、例えば、上述したクレジットカード等の電子決済などが用いられ、それに伴い暗号化されたデータ通信が実施されてもよい。
【００３３】
また、上記実施の形態において、複数種類のコンテンツをコンテンツ配信サーバ１００から各クライアント２００に配信し、新たなクライアントから配信要求されたコンテンツが、既に配信されたクライアントで所有していた場合は、このクライアントを代理サーバとして選択するよう構成してもよい。
【００３４】
例えば、コンテンツ配信サーバ１００より、異なるコンテンツがクライアント２００ａとクライアント２００ｂに配信され、このような状態で、クライアント２００ｃがクライアント２００ａと同じコンテンツの配信要求をコンテンツ配信サーバ１００に対して送った場合、コンテンツ配信サーバ１００では、同一のコンテンツを所有するクライアント２００ａを代理サーバとして選択する。
【００３５】
また、クライアントデータベース１０４を保持することに特化したクライアントデータベース管理サーバ（図示省略）をコンテンツ配信サーバ１００と別に設けてもよい。その場合は、コンテンツ取得後に自動起動されるサーバアプリケーションプログラムは、クライアントのネットワーク情報をそのクライアントデータベース管理サーバに対して送信することになる。そして、このような構成では、コンテンツ配信サーバ１００とクライアントデータベース管理サーバとは連係して動作する。
【００３６】
また、クライアント２００の認証を実施することに特化した認証サーバ（図示省略）をコンテンツ配信サーバ１００とは別に設けてもよい。この場合は、コンテンツをクライアント２００が取得時に認証要求する窓口となるサーバは認証サーバとなる。このような構成では、コンテンツ配信サーバ１００と認証サーバとが連係して動作する。
【００３７】
また、新たなクライアント２００に対して選択、配信指示する代理サーバ制御サーバ（図示省略）をコンテンツ配信サーバ１００とは別に設けてもよい。この場合は、コンテンツの配信が要求されたときにどの代理サーバがクライアント２００に対して適切かを判断するサーバが代理サーバ制御サーバとなる。このような構成では、コンテンツ配信サーバ１００と代理サーバ制御サーバとが連係して動作する。
【００３８】
また、コンテンツに潜在するサーバアプリケーションプログラムはそのクライアント２００の稼働状態を監視し、クライアント２００が起動する毎にコンテンツ配信サーバ１００に稼働していることを自動的に通知し、クライアント２００がシャットダウン時にコンテンツ配信サーバ１００にシャットダウンすることを通知するように動作し、これを、コンテンツ配信サーバ１００のクライアントデータベース１０４に反映させ、適切な代理サーバを選択時の情報として利用するよう動作してもよい。
【００３９】
また、サーバアプリケーションプログラムを潜在させたコンテンツと、本コンテンツを閲覧（再生）するプレーヤを含めて一体化して構成して実行ファイル形式で配信し、クライアント２００によるコンテンツ閲覧時は本実行ファイルを実行することによってのみコンテンツを閲覧できるようにしてもよく、このように構成した場合、コンテンツを閲覧するときは、確実にクライアントのコンピュータ上で、課金・認証・代理サーバ動作などが遂行される。
【００４０】
また、コンテンツにサーバアプリケーションプログラムを実行するスクリプト記述を含め、クライアント２００によるコンテンツ閲覧時にそのスクリプト記述が実行され、自動的にコンテンツに潜在するサーバアプリケーションプログラムが実行されるようにしてもよく、このように構成した場合、コンテンツ閲覧時は、確実にクライアントのコンピュータ上で、課金・認証・代理サーバ動作などが遂行される。
【００４１】
以上のように、実施の形態１のコンテンツ配信サーバによれば、サーバアプリケーションプログラムを潜在させたコンテンツを任意のクライアントに配信するコンテンツ配信部と、コンテンツを閲覧することによりサーバアプリケーションプログラムが起動し、任意のクライアントからクライアントのネットワーク情報が送信された場合、ネットワーク情報に基づいてクライアントを代理サーバとして管理する代理サーバ管理部と、特定のクライアントからコンテンツ配信要求を受けた場合、コンテンツダウンロード先として代理サーバのクライアントを指示すると共に、代理サーバのクライアントに対して、特定のクライアントにコンテンツを配信するよう指示する配信要求処理部とを備えたので、アプリケーションなどの事前インストールを必要とせず、コンテンツ配信サーバの負荷軽減を図ることができる。
【００４２】
また、実施の形態１のコンテンツ配信サーバによれば、配信要求処理部は、特定のクライアントからコンテンツ配信要求があった場合、代理サーバ管理部に対して、代理サーバのクライアントが稼働可能かを問い合わせ、代理サーバのクライアントが稼働可能であるという応答を得た場合に、特定のクライアントに対して代理サーバのクライアントをコンテンツダウンロード先として指示するようにしたので、より確実にコンテンツダウンロード先を指示することができ、更に、コンテンツ配信サーバの負荷軽減に寄与することができる。
【００４３】
また、実施の形態１のプログラムによれば、コンテンツ配信サーバからクライアントに対して配信されるコンテンツに含まれるプログラムであって、クライアントでコンテンツを閲覧した場合に、コンテンツ配信サーバに代わってコンテンツを他のクライアントへ配信する代理サーバになるか否かの選択入力を受け付けるステップと、選択入力の内容をコンテンツ配信サーバに送信するステップとをクライアントに実行させるようにしたので、コンテンツ配信サーバによって認証処理を行う必要がなく、コンテンツ配信サーバの負荷軽減に寄与することができる。
【００４４】
また、実施の形態１のプログラムによれば、代理サーバになることを選択したクライアントで、クライアントが起動した場合にコンテンツ配信サーバに稼働状態であることを通知するステップと、クライアントがシャットダウンする場合は、コンテンツ配信サーバに稼働状態を終了したことを通知するステップとをクライアントに実行させるようにしたので、実際に稼働状態にある代理サーバを確実に知ることができるため、コンテンツ配信サーバは、コンテンツ配信要求があった場合、確実な代理サーバをコンテンツダウンロード先として指示することができる。
【００４５】
また、実施の形態１のプログラムによれば、配信されたコンテンツがクライアント上に存在するかを監視し、コンテンツが存在した場合に代理サーバとして稼働可能であるとコンテンツ配信サーバに通知するステップをクライアントに実行させるようにしたので、コンテンツ配信サーバは、更に、確実な代理サーバをコンテンツダウンロード先として指示することができる。
【００４６】
また、実施の形態１のプログラムによれば、コンテンツと、コンテンツを閲覧するためのプレーヤとが一体に構成されると共に、コンテンツがプレーヤでのみ閲覧可能に構成され、これらが実行ファイル形式でコンテンツ配信サーバからクライアントに配信され、プレーヤが実行されることで同時に起動するようにしたので、コンテンツを閲覧するときは、確実にクライアント上で代理サーバ動作が遂行される効果がある。
【００４７】
また、実施の形態１のプログラムによれば、コンテンツにプログラムを実行するスクリプト記述が含まれ、クライアントでコンテンツを閲覧する場合、スクリプト記述に基づきプログラムが実行されるようにしたので、コンテンツを閲覧するときは、確実にクライアント上で代理サーバ動作が遂行される効果がある。
【００４８】
また、実施の形態１のコンテンツ配信方法によれば、コンテンツ配信サーバから任意のクライアントに対してコンテンツに潜在させたサーバアプリケーションプログラムを配信するステップと、任意のクライアントに配信されたコンテンツが閲覧されることによりサーバアプリケーションプログラムが実行され、クライアントのネットワーク情報を、コンテンツ配信サーバに通知するステップと、クライアントのネットワーク情報に基づき、コンテンツ配信サーバでクライアントを代理サーバとして登録するステップと、コンテンツ配信サーバに対して、特定のクライアントからコンテンツ配信要求があった場合に、特定のクライアントに対して、コンテンツダウンロード先として代理サーバのクライアントを指示すると共に、代理サーバのクライアントに対して、特定のクライアントにコンテンツを配信するよう指示するステップと、特定のクライアントから、代理サーバのクライアントに対してコンテンツ配信要求を行うことにより、代理サーバのクライアントから特定のクライアントに対してコンテンツを配信するステップとを備えたので、アプリケーションなどの事前インストールを必要とせず、コンテンツ配信サーバの負荷軽減を図ることができる。
【００４９】
また、実施の形態１のコンテンツ配信方法によれば、クライアントにおけるコンテンツの閲覧に応じた閲覧料金を算出する閲覧料金演算部を備え、閲覧料金演算部は、クライアントにおいて代理サーバとして稼働することの同意が得られた場合は、クライアントのコンテンツ閲覧料金を通常料金より割り引き、または無料として閲覧料金の演算を行い、代理サーバとして稼働することへの同意が得られなかった場合は、通常料金として閲覧料金の演算を行うようにしたので、代理サーバとして稼働するか否かでコンテンツの閲覧料金を決定することができる。
【００５０】
また、実施の形態１のコンテンツ配信方法によれば、クライアントにおけるコンテンツの閲覧に応じた閲覧料金を算出する閲覧料金演算部を備え、閲覧料金演算部は、クライアントが代理サーバとして稼働することに同意し、かつ、代理サーバとしてコンテンツを配信した場合は、配信したデータ量または配信時間に応じて、クライアントのコンテンツ閲覧料金を通常料金より割り引いた料金、または無料として閲覧料金の演算を行い、代理サーバとして稼働することへの同意が得られなかった場合は、通常料金として閲覧料金の演算を行うようにしたので、実際に代理サーバとして稼働した時間やデータ量に応じて閲覧料金を決定することができる。
【００５１】
実施の形態２．
実施の形態２では、コンテンツをクライアント間でローカルコピーした場合、コピー先のクライアントでコンテンツを再生した時に、サーバアプリケーションプログラムが自動起動するようにしたものである。コンテンツ配信サーバ１００およびクライアント２００の構成は図１と同様であるため、ここでの説明は省略し、以下、図１を援用して説明する。
【００５２】
次に、実施の形態２のコンテンツ配信の動作について説明する。
図４は、実施の形態２の動作を示す説明図である。
コンテンツ配信サーバ１００は、実施の形態１にて示された手順を踏み、クライアント２００ａに対してサーバアプリケーションプログラムを潜在させたコンテンツを配信する。その後、クライアント２００ａがコンテンツを閲覧（再生）した場合、配信されたコンテンツに潜在されたサーバアプリケーションプログラムが自動起動し、クライアント２００ａに対して課金内容の提示、および代理サーバとしての稼働受け入れ時の契約内容を示し、クライアント２００ａの操作者に判断を促す。
【００５３】
代理サーバとしての稼働に同意した場合、サーバアプリケーションプログラムは、その契約内容に従い、グローバルＩＰアドレス、開放ポート番号等のネットワーク情報をコンテンツ配信サーバ１００に対して通知する（ステップＳＴ２０１）。
【００５４】
コンテンツ配信サーバ１００では、クライアント２００ａから送信されたネットワーク情報通知の内容を元にクライアント２００ａのネットワーク情報をクライアントデータベース１０４に記録する。尚、ここまでの動作は実施の形態１と同様である。
【００５５】
次に、クライアント２００ａがローカルにネットワーク通信、または記録メディアにより、先にクライアント２００に配信したコンテンツをクライアント２００ｂに受け渡した場合（ステップＳＴ２０２）、クライアント２００ｂがコンテンツ再生時に、配信されたコンテンツに潜在されたサーバアプリケーションプログラムが自動起動し、クライアント２００ｂに対して課金内容の提示、および代理サーバとしての稼働受け入れ時の契約内容を示し、クライアント２００ｂの操作者に判断を促す。代理サーバとしての稼働に同意した場合は、その契約内容に従い、グローバルＩＰアドレス、開放ポート番号等のネットワーク情報通知をコンテンツ配信サーバ１００に対して送信する（ステップＳＴ２０３）。
【００５６】
尚、ファイアウォールがあり、開放されたポートを持たない場合は、例えばSoftEtherなどに代表されるＮＡＴ越え技術を用いてファイアウォールを越えた通信を実施してもよい。また、この内容については本発明の特徴点とは直接関係はないため、ここでの詳細な説明は省略する。
【００５７】
コンテンツ配信サーバ１００では、クライアント２００ｂから送信されたネットワーク情報通知の内容を元にクライアント２００ｂのネットワーク情報をクライアントデータベース１０４に記録する。そして、クライアント２００ｂに対して付与したユーザＩＤと、コンテンツ再生許可をクライアント２００ｂに対して送信する（ステップＳＴ２０４）。
これにより、クライアント２００ｂでは、コンテンツが再生されると共に、コンテンツ配信サーバ１００から送信されたコンテンツ再生許可を保持する。
【００５８】
また、クライアント２００ｂが代理サーバとしての稼働に同意した場合は、実施の形態１に示したように、実際に代理サーバとして稼働した時間もしくは送信したパケット数に応じて、クライアントのコンテンツ閲覧料金を割り引く、もしくは無料にし、実際には代理サーバとして稼働しなかったクライアントに関しては通常料金を課金するように運営してもよい。
【００５９】
また、このとき、実施の形態１に示したように、予め通常料金を回収し、その代理サーバ稼働内容に対応して料金を返金していく運営を実施してもよい。
【００６０】
以降、上記の動作を繰り返し行い、コンテンツ配信サーバ１００はコンテンツがクライアント２００間で正規の手順を踏まずにローカルコピーされた場合にコピーしたファイルを受け取ったクライアント２００を新たな代理サーバとして使用することができ、また、新たにコンテンツに対する正規権限を持ったクライアント２００として登録することが可能となる。
【００６１】
また、実施の形態１に示したように、例えば、ネットワーク情報通知時に、一緒にクライアント２００ｂが入力したクレジット番号等の電子決済可能な情報を送信して、その情報を元にクライアント２００ｂから料金を回収してもよい。このとき、実施の形態１に示したように、セキュリティの問題が懸念されるため、コンテンツ配信サーバ１００とクライアント２００ｂの間の通信は、例えばＲＳＡなどに代表される暗号化されたデータ通信が実施されてもよい。
【００６２】
一方、クライアント２００ｂが代理サーバとしての稼働に同意しなかった場合、クライアント２００ｂからコンテンツ配信サーバ１００に対して代理サーバ拒否通知が行われる（ステップＳＴ２０５）。このような場合は、例えば、コンテンツ再生許可を与えずに再生を停止させるか、あるいは、料金課金を行いコンテンツの再生を許可する。このときの料金課金方法としては、実施の形態１に示したように、例えば、クレジットカード等の電子決済などが用いられ、それに伴い上述した暗号化されたデータ通信が実施されてもよい。
【００６３】
また、料金の課金にも代理サーバとしての稼働にも同意しなかった場合、サーバアプリケーションプログラムおよびコンテンツを自動削除するように制御してもよい。
【００６４】
また、実施の形態１に示したように、クライアントデータベースを保持することに特化したクライアントデータベース管理サーバをコンテンツ配信サーバ１００とは別に設けてもよい。その場合は、コンテンツ取得後に自動起動されるサーバアプリケーションプログラムがクライアント２００のネットワーク情報を通知するサーバはクライアントデータベース管理サーバとなる。このような構成では、コンテンツ配信サーバ１００とクライアントデータベース管理サーバが連係して動作する。
【００６５】
また、実施の形態１に示したように、クライアント２００の認証を実施することに特化した認証サーバをコンテンツ配信サーバ１００とは別に設けてもよい。この場合は、コンテンツをクライアント２００が取得時に認証要求する窓口となるサーバは認証サーバとなる。このような構成では、コンテンツ配信サーバ１００と認証サーバが連係して動作する。
【００６６】
また、実施の形態１に示したように、新たなクライアント２００に対して選択、配信指示する代理サーバ制御サーバをコンテンツ配信サーバ１００とは別に設けてもよい。この場合は、コンテンツの配信が要求されたときにどの代理サーバがクライアント２００に対して適切かを判断するサーバが代理サーバ制御サーバとなる。このような構成では、コンテンツ配信サーバ１００と代理サーバ制御サーバとが連係して動作する。
【００６７】
また、実施の形態１に示したように、コンテンツに潜在するサーバアプリケーションプログラムが、そのクライアントの稼働状態を監視し、クライアントが起動する毎に、コンテンツ配信サーバ１００に稼働していることを自動的に通知し、クライアントがシャットダウン時にコンテンツ配信サーバ１００にシャットダウンすることを通知するように動作し、これをコンテンツ配信サーバ１００のクライアントデータベース１０４に反映させ、適切な代理サーバを選択時の情報として利用するよう動作してもよい。
【００６８】
また、実施の形態１に示したように、サーバアプリケーションプログラムを潜在させたコンテンツと、本コンテンツを閲覧（再生）するプレーヤを含めて一体化して構成して実行ファイル形式で配信し、クライアント２００によるコンテンツ閲覧時は本実行ファイルを実行することによってのみコンテンツを閲覧できるようにしてもよく、このように構成した場合、コンテンツを閲覧するときは、確実にクライアントのコンピュータ上で、課金・認証・代理サーバ動作などが遂行される。
【００６９】
また、先の実施の形態１に示したように、コンテンツにサーバアプリケーションプログラムを実行するスクリプト記述を含め、クライアント２００によるコンテンツ閲覧時にそのスクリプト記述が実行され、自動的にコンテンツに潜在するサーバアプリケーションプログラムが実行されるようにしてもよく、このように構成した場合、コンテンツ閲覧時は、確実にクライアントのコンピュータ上で、課金・認証・代理サーバ動作などが遂行される。
【００７０】
以上のように、実施の形態２のプログラムによれば、クライアント間でローカルコピーしたコンテンツを閲覧した場合に、コンテンツを管理するコンテンツ配信サーバに代わってコンテンツを他のクライアントへ配信する代理サーバになるか否かの選択入力を受け付けるステップと、選択入力の内容をコンテンツ配信サーバに送信するステップとをクライアントに実行させるようにしたので、コンテンツファイルがクライアント間で正規の手順を踏まずにローカルコピーされた場合でも、コピーしたファイルを受け取ったクライアントを新たな代理サーバとして使用することができ、また、新たにコンテンツに対する正規権限を持ったクライアントとして管理することが可能となる。
【図面の簡単な説明】
【００７１】
【図１】この発明の実施の形態１によるコンテンツ配信サーバとクライアントとを示す構成図である。
【図２】この発明の実施の形態１の動作を示す説明図（その１）である。
【図３】この発明の実施の形態１の動作を示す説明図（その２）である。
【図４】この発明の実施の形態２の動作を示す説明図である。
【符号の説明】
【００７２】
１００  コンテンツ配信サーバ、１０１  コンテンツ配信部、１０２  代理サーバ管理部、１０３  配信要求処理部、１０４  クライアントデータベース、２００，２００ａ，２００ｂ，２００ｃ  クライアント。
【図１】
2007102557.tif 000003
【図２】
2007102557.tif 000004
【図３】
2007102557.tif 000005
【図４】
2007102557.tif 000006