(57)【要約】【課題】コンテンツを送信する際の通信方式を簡易に切りかえたい。【解決手段】プレイヤー１００は、ネットワーク３００を介して、対象となるサーバ２００によって送信されたコンテンツを受信する。ネットワーク検出部１６は、ネットワーク３００上において稼動しているサーバ２００の数および他のプレイヤー１００の数を検出する。受信制御部４４は、検出したサーバ２００の数および他のプレイヤー１００の数をもとに、対象となるサーバ２００との間で実行すべき通信方式として、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを選択する。コンテンツ受信部４６は、選択した結果にしたがって、対象となるサーバ２００によって送信されたコンテンツを受信する。【選択図】図１
2009134676.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、対象となるコンテンツ送信装置によって送信されたコンテンツを受信するコンテンツ受信装置であって、
ネットワーク上において稼動しているコンテンツ送信装置の数および他のコンテンツ受信装置の数を検出する検出部と、
前記検出部において検出したコンテンツ送信装置の数および他のコンテンツ受信装置の数をもとに、対象となるコンテンツ送信装置との間で実行すべき通信方式として、コンテンツ送信装置から起動される第１プル型通信を固定的に使用する方式、コンテンツ受信装置から起動される第２プル型通信を固定的に使用する方式、第１プル型通信と第２プル型通信とを動的に切りかえる方式のいずれかを選択する選択部と、
前記選択部において選択した結果にしたがって、対象となるコンテンツ送信装置によって送信されたコンテンツを受信する実行部と、
を備えるコンテンツ受信装置。
【請求項２】
前記選択部は、前記検出部において複数のコンテンツ送信装置が検出された場合に、第２プル型通信を固定的に使用する方式を選択し、
前記実行部は、対象となるコンテンツ送信装置に対してコンテンツの送信を指示することを特徴とする請求項１に記載のコンテンツ受信装置。
【請求項３】
前記選択部は、前記検出部においてひとつのコンテンツ送信装置が検出され、かつ少なくともひとつの他のコンテンツ受信装置が検出された場合に、第１プル型通信を固定的に使用する方式を選択することを特徴とする請求項１または２に記載のコンテンツ受信装置。
【請求項４】
ユーザからの指示を受けつける第１受付部と、
対象となるコンテンツ送信装置から、実行すべき通信方式の指示を受けつける第２受付部とをさらに備え、
前記選択部は、前記検出部においてひとつのコンテンツ送信装置が検出され、かつ他のコンテンツ受信装置が検出されなかった場合に、第１プル型通信と第２プル型通信とを動的に切りかえる方式を選択し、
前記実行部は、前記選択部において、第１プル型通信と第２プル型通信とを動的に切りかえる方式が選択された場合に、前記第１受付部において指示を受けつけると、通信方式として第２プル型通信を実行し、前記第２受付部において指示を受けつけると、第１プル型通信方式を実行することを特徴とする請求項１から３のいずれかに記載のコンテンツ受信装置。
【請求項５】
ネットワークを介して、対象となるコンテンツ受信装置にコンテンツを送信するコンテンツ送信装置であって、
ネットワーク上において稼動しているコンテンツ受信装置の数および他のコンテンツ送信装置の数を検出する検出部と、
前記検出部において検出したコンテンツ受信装置の数および他のコンテンツ送信装置の数をもとに、対象となるコンテンツ受信装置との間で実行すべき通信方式として、コンテンツ送信装置から起動される第１プル型通信を固定的に使用する方式、コンテンツ受信装置から起動される第２プル型通信を固定的に使用する方式、第１プル型通信と第２プル型通信とを動的に切りかえる方式のいずれかを選択する選択部と、
前記選択部において選択した結果にしたがって、対象となるコンテンツ受信装置にコンテンツを送信する実行部と、
を備えるコンテンツ送信装置。
【請求項６】
前記選択部は、前記検出部において他のコンテンツ送信装置が検出された場合に、第２プル型通信を固定的に使用する方式を選択し、
前記実行部は、対象となるコンテンツ受信装置からの指示に応じて、コンテンツを送信することを特徴とする請求項５に記載のコンテンツ送信装置。
【請求項７】
前記選択部は、前記検出部において他のコンテンツ送信装置が検出されず、かつ複数のコンテンツ受信装置が検出された場合に、第１プル型通信を固定的に使用する方式を選択することを特徴とする請求項５または６に記載のコンテンツ送信装置。
【請求項８】
ユーザからの指示を受けつける第１受付部と、
対象となるコンテンツ受信装置から、実行すべき通信方式の指示を受けつける第２受付部とをさらに備え、
前記選択部は、前記検出部において他のコンテンツ送信装置が検出されず、かつひとつのコンテンツ受信装置が検出された場合に、第１プル型通信と第２プル型通信とを動的に切りかえる方式を選択し、
前記実行部は、前記選択部において、第１プル型通信と第２プル型通信とを動的に切りかえる方式が選択された場合に、前記第１受付部において指示を受けつけると、通信方式として第１プル型通信を実行し、前記第２受付部において指示を受けつけると、第２プル型通信方式を実行することを特徴とする請求項５から７のいずれかに記載のコンテンツ送信装置。
【請求項９】
ネットワーク上において稼動しているコンテンツ送信装置の数とコンテンツ受信装置の数とをもとに、コンテンツ送信装置からコンテンツ受信装置へコンテンツを送信する際の通信方式として、コンテンツ送信装置から起動される第１プル型通信を固定的に使用する方式、コンテンツ受信装置から起動される第２プル型通信を固定的に使用する方式、第１プル型通信と第２プル型通信とを動的に切りかえる方式のいずれかを選択することを特徴とするコンテンツ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ通信技術に関し、特に所定の通信プロトコルを使用しながらコンテンツを送信するコンテンツ通信方法ならびにそれを利用したコンテンツ送信装置およびコンテンツ受信装置に関する。
【背景技術】
【０００２】
ネットワークにおいてコンテンツを送信するための通信プロトコルには、一般的に、プル型通信とプッシュ型通信とが含まれる。プッシュ型通信とは、送信側においてデータを準備できれば、送信側が直ちにデータを送信する形態であり、プル型通信とは、受信側が、自らの処理量を考慮しながら、データ送信の要求を送信側に行う形態である。これらは、独立した通信プロトコルとして定義され、両者の混合運用の技術は定義されていない。この２種類の通信方式をサポートするために、コンテンツ受信装置であるプレイヤーとコンテンツ送信装置であるサーバに両方式を搭載することが考えられる。
【０００３】
しかしながら、そのような状況であっても、プレイヤーがサーバに対して、プル型通信によってコンテンツの取り出しおよび再生を実行している途中に、サーバから同一のプレイヤーへプッシュ型通信を実行しようとしてもプレイヤーはコンテンツを再生できない。また、携帯電話装置、デジタルカメラのような機器において、同時に２種類の通信を動作させると機器の乏しいリソースおよび通信帯域が無駄に消費されてしまう。そのため、必要に応じて、通信方式を動的に切りかえることが好ましい。例えば、ユーザに対して、メニューを提示することによって通信モードを選択させる方式が提案されている（例えば、特許文献１参照。）。
【特許文献１】特開２００６−８０７４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、メニューをもとにユーザが通信方式を選択する場合、ユーザの手動選択と事前のペアリング設定が必要となり、操作が複雑になる。ユーザの利便性を考慮すると、現在の通信方式をユーザに意識させずに、複数の通信方式の切替がなされるべきである。つまり、ネットワークの構成およびユーザによる送信の指示操作にしたがって、自動的に通信方式を切りかえられることが望ましい。
【０００５】
本発明はこうした状況に鑑みてなされたものであり、その目的は、コンテンツを送信する際の通信方式を簡易に切りかえるコンテンツ通信技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様のネットワークを介して、対象となるコンテンツ送信装置によって送信されたコンテンツを受信するコンテンツ受信装置は、ネットワーク上において稼動しているコンテンツ送信装置の数および他のコンテンツ受信装置の数を検出する検出部と、検出部において検出したコンテンツ送信装置の数および他のコンテンツ受信装置の数をもとに、対象となるコンテンツ送信装置との間で実行すべき通信方式として、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを選択する選択部と、選択部において選択した結果にしたがって、対象となるコンテンツ送信装置によって送信されたコンテンツを受信する実行部と、を備える。
【０００７】
「コンテンツ」とは、番組に含まれた映像データ、音声データ、情報データのそれぞれあるいはそれらの任意の組合せに相当する。また、「コンテンツ」は、映像データ等のそのものでもよく、あるいは映像データ等に対して符号化等の処理を行ったものでもよい。この態様によると、ネットワーク上において稼動しているコンテンツ送信装置の数とコンテンツ受信装置の数とに応じて、コンテンツ送信装置との間の通信方式を選択するので、コンテンツを受信する際の通信方式を簡易に切りかえることができる。
【０００８】
選択部は、検出部において複数のコンテンツ送信装置が検出された場合に、プル型通信を固定的に使用する方式を選択し、実行部は、対象となるコンテンツ送信装置に対してコンテンツの送信を指示してもよい。この場合、複数のコンテンツ送信装置が検出された場合に、プル型通信を固定的に使用するので、複数のコンテンツ送信装置から同時にプッシュ型通信がなされることによる混乱を回避できる。
【０００９】
選択部は、検出部においてひとつのコンテンツ送信装置が検出され、かつ少なくともひとつの他のコンテンツ受信装置が検出された場合に、プッシュ型通信を固定的に使用する方式を選択してもよい。この場合、ひとつのコンテンツ送信装置と複数のコンテンツ受信装置が存在する場合に、プッシュ型通信が使用されるので、ひとつのコンテンツ送信装置が主導となる通信によって、混乱を回避できる。
【００１０】
ユーザからの指示を受けつける第１受付部と、対象となるコンテンツ送信装置から、実行すべき通信方式の指示を受けつける第２受付部とをさらに備え、選択部は、検出部においてひとつのコンテンツ送信装置が検出され、かつ他のコンテンツ受信装置が検出されなかった場合に、プッシュ型通信とプル型通信とを動的に切りかえる方式を選択し、実行部は、選択部において、プッシュ型通信とプル型通信とを動的に切りかえる方式が選択された場合に、第１受付部において指示を受けつけると、通信方式としてプル型通信を実行し、第２受付部において指示を受けつけると、プッシュ型通信方式を実行してもよい。この場合、指示に応じて、プッシュ型通信とプル型通信とを動的に切りかえるので、さまざまなユースケースに柔軟に対応できる。
【００１１】
本発明の別の態様は、ネットワークを介して、対象となるコンテンツ受信装置にコンテンツを送信するコンテンツ送信装置である。この装置は、ネットワーク上において稼動しているコンテンツ受信装置の数および他のコンテンツ送信装置の数を検出する検出部と、検出部において検出したコンテンツ受信装置の数および他のコンテンツ送信装置の数をもとに、対象となるコンテンツ受信装置との間で実行すべき通信方式として、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを選択する選択部と、選択部において選択した結果にしたがって、対象となるコンテンツ受信装置にコンテンツを送信する実行部と、を備える。
【００１２】
この態様によると、ネットワーク上において稼動しているコンテンツ送信装置の数とコンテンツ受信装置の数とに応じて、コンテンツ受信装置との間の通信方式を選択するので、コンテンツを送信する際の通信方式を簡易に切りかえることができる。
【００１３】
選択部は、検出部において他のコンテンツ送信装置が検出された場合に、プル型通信を固定的に使用する方式を選択し、実行部は、対象となるコンテンツ受信装置からの指示に応じて、コンテンツを送信してもよい。この場合、複数のコンテンツ送信装置が検出された場合に、プル型通信を固定的に使用するので、複数のコンテンツ送信装置から同時にプッシュ型通信がなされることによる混乱を回避できる。
【００１４】
選択部は、検出部において他のコンテンツ送信装置が検出されず、かつ複数のコンテンツ受信装置が検出された場合に、プッシュ型通信を固定的に使用する方式を選択してもよい。この場合、ひとつのコンテンツ送信装置と複数のコンテンツ受信装置が存在する場合に、プッシュ型通信が使用されるので、ひとつのコンテンツ送信装置が主導となる通信によって、混乱を回避できる。
【００１５】
ユーザからの指示を受けつける第１受付部と、対象となるコンテンツ受信装置から、実行すべき通信方式の指示を受けつける第２受付部とをさらに備え、選択部は、検出部において他のコンテンツ送信装置が検出されず、かつひとつのコンテンツ受信装置が検出された場合に、プッシュ型通信とプル型通信とを動的に切りかえる方式を選択し、実行部は、選択部において、プッシュ型通信とプル型通信とを動的に切りかえる方式が選択された場合に、第１受付部において指示を受けつけると、通信方式としてプッシュ型通信を実行し、第２受付部において指示を受けつけると、プル型通信方式を実行してもよい。この場合、指示に応じて、プッシュ型通信とプル型通信とを動的に切りかえるので、さまざまなユースケースに柔軟に対応できる。
【００１６】
本発明のさらに別の態様は、コンテンツ通信方法である。この方法は、ネットワーク上において稼動しているコンテンツ送信装置の数とコンテンツ受信装置の数とをもとに、コンテンツ送信装置からコンテンツ受信装置へコンテンツを送信する際の通信方式として、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを選択する。
【００１７】
本発明のさらに別の態様もまた、コンテンツ受信装置である。この装置は、ネットワークを介して、対象となるコンテンツ送信装置によって送信されたコンテンツを受信するコンテンツ受信装置であって、ネットワーク上において稼動しているコンテンツ送信装置の数および他のコンテンツ受信装置の数を検出する検出部と、検出部において検出したコンテンツ送信装置の数および他のコンテンツ受信装置の数をもとに、対象となるコンテンツ送信装置との間で実行すべき通信方式として、コンテンツ送信装置から起動される第１プル型通信を固定的に使用する方式、コンテンツ受信装置から起動される第２プル型通信を固定的に使用する方式、第１プル型通信と第２プル型通信とを動的に切りかえる方式のいずれかを選択する選択部と、選択部において選択した結果にしたがって、対象となるコンテンツ送信装置によって送信されたコンテンツを受信する実行部と、を備える。
【００１８】
本発明のさらに別の態様もまた、コンテンツ送信装置である。この装置は、ネットワークを介して、対象となるコンテンツ受信装置にコンテンツを送信するコンテンツ送信装置であって、ネットワーク上において稼動しているコンテンツ受信装置の数および他のコンテンツ送信装置の数を検出する検出部と、検出部において検出したコンテンツ受信装置の数および他のコンテンツ送信装置の数をもとに、対象となるコンテンツ受信装置との間で実行すべき通信方式として、コンテンツ送信装置から起動される第１プル型通信を固定的に使用する方式、コンテンツ受信装置から起動される第２プル型通信を固定的に使用する方式、第１プル型通信と第２プル型通信とを動的に切りかえる方式のいずれかを選択する選択部と、選択部において選択した結果にしたがって、対象となるコンテンツ受信装置にコンテンツを送信する実行部と、を備える。
【００１９】
本発明のさらに別の態様もまた、コンテンツ通信方法である。この方法は、ネットワーク上において稼動しているコンテンツ送信装置の数とコンテンツ受信装置の数とをもとに、コンテンツ送信装置からコンテンツ受信装置へコンテンツを送信する際の通信方式として、コンテンツ送信装置から起動される第１プル型通信を固定的に使用する方式、コンテンツ受信装置から起動される第２プル型通信を固定的に使用する方式、第１プル型通信と第２プル型通信とを動的に切りかえる方式のいずれかを選択する。
【００２０】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００２１】
本発明によれば、コンテンツを送信する際の通信方式を簡易に切りかえることができる。
【発明を実施するための最良の形態】
【００２２】
本発明を具体的に説明する前に、概要を述べる。本発明の実施例は、ネットワークを介して接続されたサーバとプレイヤーによって構成されるコンテンツ通信システムに関する。コンテンツ通信システムにおいて、サーバは、コンテンツを予め記憶しており、ネットワークを介して当該コンテンツをプレイヤーに送信する。プレイヤーは、コンテンツを受信すると、コンテンツを再生する。ここで、サーバとプレイヤー間においてコンテンツを送信するための通信方式として、プル型通信方式とプッシュ型通信方式が一般的に規定される。これらの通信方式に対応するために、サーバおよびプレイヤーは、両者の通信方式に必要な制御モジュールおよびユーザインターフェイスを搭載する。しかしながら、両者は両立する関係にはないので、サーバおよびプレイヤーには、通信方式を切りかえるための機能が要求される。また、ユーザの利便性を考慮すると、切替機能は簡易に実行される方が望ましい。
【００２３】
本実施例に係るサーバおよびプレイヤーのそれぞれは、ネットワークに接続している他機器の稼動状況を監視することによって、ネットワークの構成を自動的に検出する。また、それぞれは、検出した構成情報をもとに、通信方式を決定する。その後、それぞれは、自らに搭載されている制御モジュールおよびユーザインターフェイスを起動または停止状態にすることによって、プル型またはプッシュ型にシステムの通信方式を切りかえる。また、それぞれは、ユーザの操作も考慮してユーザの望んでいる通信方式を自動的に選択する。
【００２４】
図１は、本発明の実施例に係るコンテンツ通信システム１０００の構成を示す。コンテンツ通信システム１０００は、プレイヤー１００、サーバ２００、ネットワーク３００を含む。プレイヤー１００は、プル型ユーザインターフェイス部１０、切替ルール記憶部１２、デバイスリスト記憶部４０、自機器情報記憶部４２、ネットワーク検出部１６、受信制御部４４、通信インターフェイス部１８、再生部１４、コンテンツ受信部４６を含む。また、受信制御部４４は、切替制御部５２、プル制御部５４、受動的プッシュ制御部５６を含み、ネットワーク検出部１６は、ネットワーク解析部４８、デバイス管理部５０を含む。
【００２５】
サーバ２００は、プッシュ型ユーザインターフェイス部２０、切替ルール記憶部２２、デバイスリスト記憶部７０、自機器情報記憶部７２、ネットワーク検出部２６、送信制御部７４、通信インターフェイス部２８、コンテンツ送信部７６、コンテンツ記憶部２４を含む。また、ネットワーク検出部２６は、デバイス管理部７８、ネットワーク解析部８０を含み、送信制御部７４は、切替制御部８２、受動的プル制御部８４、プッシュ制御部８６を含む。なお、以下の説明では、プレイヤー１００とサーバ２００とを総称して機器と呼ぶ場合もある。
【００２６】
図１に示されたコンテンツ通信システム１０００においては、プレイヤー１００とサーバ２００との２種類の機器が、ネットワーク３００を介して接続され、互いに通信してコンテンツの送信が実施されている。しかしながら、複数のプレイヤー１００あるいは複数のサーバ２００が、ネットワーク３００に接続されていてもよい。ここで、サーバ２００は、コンテンツを記憶しており、ネットワーク３００を介して、対象となるプレイヤー１００にコンテンツを送信する。一方、プレイヤー１００は、ネットワーク３００を介して、対象となるサーバ２００によって送信されたコンテンツを受信し、受信したコンテンツを再生する。なお、ネットワーク３００は、有線ネットワークであってもよいし、無線ネットワークであってもよく、さらに両者の組合せであってもよい。
【００２７】
自機器情報記憶部７２は、自機器の機器ＩＤ、機種、型番、メーカなどの機器情報を記録する。機種は、プレイヤー１００またはサーバ２００に対応するので、自機器情報記憶部７２は、サーバ２００である旨を記憶する。ネットワーク検出部２６は、ネットワーク３００上において稼動しているプレイヤー１００の数および他のサーバ２００の数を検出する。また、ネットワーク検出部２６は、検出したネットワーク３００の構成を送信制御部７４に出力する。
【００２８】
ネットワーク検出部２６のうち、デバイス管理部７８は、自機器情報および後述するデバイスリストを管理する。デバイス管理部７８は、自機器情報記憶部７２から自機器の情報を読み出した後、通信インターフェイス部２８を介して自機器情報をネットワーク３００上に広告する。また、デバイス管理部７８は、通信インターフェイス部２８を介してネットワーク３００上の他機器の機器情報も収集する。さらに、デバイス管理部７８は、収集した機器情報をもとに、デバイスリスト記憶部７０に記憶されているデバイスリストを更新する。
【００２９】
デバイスリスト記憶部７０は、ネットワーク３００上において稼動中のプレイヤー１００とサーバ２００の情報を記憶する。なお、後述するデバイスリスト記憶部４０も同様である。図２は、デバイスリスト記憶部４０、７０に記憶されるデバイスリストのデータ構造を示す。ここで、デバイスリストは、ネットワーク３００に接続されているプレイヤー１００とサーバ２００との機器情報を記録するためのデータストラクチャーである。図２のごとく、デバイスリストの一例は、機器ＩＤ欄４００と機器種類欄４０２とによって構成される。機器ＩＤ欄４００に含まれた機器ＩＤは、ネットワーク機器に割り当てられるユニークな識別コードに相当する。機器種類欄４０２に含まれた機器種類の項目では、該当機器がプレイヤー１００であるかサーバ２００であるかが示される。図１に戻る。
【００３０】
ネットワーク解析部８０は、ネットワーク３００の構成を解析する。具体的には、ネットワーク解析部８０は、デバイスリスト記憶部７０に記憶されたデバイスリストを参照しながら、ネットワーク３００において稼動しているプレイヤー１００の数およびサーバ２００の数を導出することによって、ネットワーク３００の構成を導出する。さらに、ネットワーク解析部８０は、導出した結果を送信制御部７４に出力する。
【００３１】
切替ルール記憶部２２には、ネットワーク解析部８０において解析したネットワーク３００の構成に応じて、採用すべき通信方式に関するルールを記憶する。なお、後述する切替ルール記憶部１２も同様に構成されている。切替ルール記憶部２２に記憶されたルールのデータ構造を説明する前に、ルールとして規定されている通信方式の動作の概要を説明する。図３（ａ）−（ｄ）は、コンテンツ通信システム１０００における通信方式に応じた動作の概要を示す。図３（ａ）−（ｄ）においては、プレイヤー１００を「Ｐ」と示し、サーバ２００を「Ｓ」と示す。
【００３２】
図３（ａ）は、「Ｃａｓｅ１」であり、これは、プレイヤー１００が１台であり、サーバ２００が１台である場合に相当する。「Ｃａｓｅ１」では、プレイヤー１００およびサーバ２００のユーザの操作に応じて通信方式を動的に決める。以下、このような通信方式を「早い者勝ち」という。「早い者勝ち」では、プル型通信とプッシュ型通信を共に使用可能な状態にしている。そのような状態において、ユーザが、例えば操作メニューで「送信」ボタンを押すように、どちらかが先に起動して通信を実行すると、他方の通信方式の実行は禁止され、通信が終わったときに他方の通信方式が再び使用可能な状態に戻される。したがって、ユーザのニーズに合わせてシステムの通信方式がプル型とプッシュ型の間で動的に切りかえられる。
【００３３】
図３（ｂ）は、「Ｃａｓｅ２」であり、これは、プレイヤー１００が１台であり、サーバ２００が複数台である場合である。「Ｃａｓｅ２」では、システムの通信方式として、強制的にプル型通信を実行し、プッシュ型通信を禁止する。このように定めることによって、多数のサーバ２００から同時にひとつのプレイヤー１００へのプッシュ型通信がなされ、プレイヤー１００において混乱が生じることを回避できる。
【００３４】
図３（ｃ）は、「Ｃａｓｅ３」であり、これは、プレイヤー１００が複数台であり、サーバ２００が１台である場合である。「Ｃａｓｅ３」では、システムの通信方式として、強制的にプッシュ型通信を実行し、プル型通信を禁止する。この利用法は特にデジタルカメラや携帯電話端末などのモバイルサーバ機器に適している。また、図３（ｄ）は、「Ｃａｓｅ４」であり、これは、プレイヤー１００が複数台であり、サーバ２００も複数台である場合である。「Ｃａｓｅ４」では、「Ｃａｓｅ２」と同様に、強制的にプル型通信を実行し、プッシュ型通信を禁止する。
【００３５】
図４（ａ）−（ｂ）は、切替ルール記憶部１２、２２に記憶された切替ルールのデータ構造を示す。図４（ａ）が切替ルール記憶部１２に記憶された切替ルールに相当し、図４（ｂ）が切替ルール記憶部２２に記憶された記憶ルールに相当する。稼動すべき構成部材と停止すべき構成部材とが、「Ｃａｓｅ１」から「Ｃａｓｅ４」のそれぞれに対応づけられながら示されている。切替ルール記憶部１２に記憶された切替ルールは、プル制御部５４、受動的プッシュ制御部５６、プル型ユーザインターフェイス部１０に対する制御を決めており、切替ルール記憶部２２に記憶された切替ルールは、プッシュ制御部８６、受動的プル制御部８４、プッシュ型ユーザインターフェイス部２０に対する制御を決めている。なお、図中の「○」記号は稼動状態に相当し、「×」記号は停止状態に相当する。図１に戻る。
【００３６】
送信制御部７４は、切替ルール記憶部２２に記憶された切替ルールを参照しながら、ネットワーク解析部８０において検出したプレイヤー１００の数および他のサーバ２００の数、つまりネットワーク３００の構成をもとに、対象となるプレイヤー１００との間で実行すべき通信方式を決定する。つまり、送信制御部７４は、ネットワーク３００構成にしたがって機器の通信方式を自動的に切りかえ、その通信過程を制御する。
【００３７】
具体的に、切替制御部８２は、ネットワーク３００の構成に応じて、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを選択する。ここで、プッシュ型通信とプル型通信とを動的に切りかえる方式が前述の「早い者勝ち」に相当する。また、切替制御部８２は、プッシュ型ユーザインターフェイス部２０、プッシュ制御部８６、受動的プル制御部８４の稼動状態を制御する。その結果、切替制御部８２の制御によって、プレイヤー１００とサーバ２００の間におけるコンテンツ通信の方式がプル型とプッシュ型の間にて切りかえられる。
【００３８】
例えば、切替制御部８２は、ネットワーク検出部２６において他のサーバ２００が検出された場合、つまり「Ｃａｓｅ２」または「Ｃａｓｅ４」の場合、プル型通信を固定的に使用する方式を選択する。また、切替制御部８２は、切替ルールにしたがって、受動的プル制御部８４の稼動、プッシュ制御部８６とプッシュ型ユーザインターフェイス部２０の停止を決定する。
【００３９】
また、切替制御部８２は、ネットワーク検出部２６において他のサーバ２００が検出されず、かつ複数のプレイヤー１００が検出された場合、つまり「Ｃａｓｅ３」の場合、プッシュ型通信を固定的に使用する方式を選択する。また、切替制御部８２は、切替ルールにしたがって、プッシュ制御部８６とプッシュ型ユーザインターフェイス部２０の稼動、受動的プル制御部８４の停止を決定する。
【００４０】
また、切替制御部８２は、ネットワーク検出部２６において他のサーバ２００が検出されず、かつひとつのプレイヤー１００が検出された場合、つまり「Ｃａｓｅ１」の場合、プッシュ型通信とプル型通信とを動的に切りかえる方式を選択する。また、切替制御部８２は、プッシュ型通信を実行する際、プッシュ制御部８６とプッシュ型ユーザインターフェイス部２０の稼動、受動的プル制御部８４の停止を決定し、プル型通信を実行する際、受動的プル制御部８４の稼動、プッシュ制御部８６とプッシュ型ユーザインターフェイス部２０の停止を決定する。送信制御部７４は、後述するプッシュ型ユーザインターフェイス部２０において指示を受けつけると、通信方式としてプッシュ型通信を実行し、通信インターフェイス部２８において指示を受けつけると、プル型通信方式を実行する。
【００４１】
受動的プル制御部８４は、通信インターフェイス部２８を介した指示であって、かつ対象となるプレイヤー１００からの指示に応じて、コンテンツ送信部７６にコンテンツを送信させる。プッシュ型ユーザインターフェイス部２０は、ユーザからの指示を受けつける。また、プッシュ制御部８６は、受けつけた指示に応じてプッシュ型通信を制御する。具体的に、プッシュ型ユーザインターフェイス部２０は、ネットワーク３００上のプッシュ型通信をサポートするプレイヤー１００のリストをユーザに提示し、ユーザの入力を受けつけてプッシュ型通信の命令をプッシュ制御部８６に発行する。プッシュ制御部８６は、プッシュ型通信の命令に応じて、コンテンツ送信部７６にプッシュ型通信を実行させる。
【００４２】
コンテンツ送信部７６は、送信制御部７４からの指示にしたがって、対象となるプレイヤー１００に、コンテンツ記憶部２４に記憶されたコンテンツを送信する。なお、いずれの通信方式が使用されても、コンテンツは、コンテンツ記憶部２４からコンテンツ送信部７６の順に転送される。通信インターフェイス部２８は、プレイヤー１００とサーバ２００との間で行われる制御メッセージの交換を制御する。そのため、通信インターフェイス部２８は、対象となるプレイヤー１００から、プル型通信方式の指示を受けつける。また、対象となるプレイヤー１００へ、プッシュ型通信方式の指示を送信する。
【００４３】
プレイヤー１００における自機器情報記憶部４２、ネットワーク検出部１６、デバイスリスト記憶部４０、切替ルール記憶部１２は、サーバ２００における自機器情報記憶部７２、ネットワーク検出部２６、デバイスリスト記憶部７０、切替ルール記憶部２２と同様であるので、ここでは説明を省略する。
【００４４】
受信制御部４４は、切替ルール記憶部２２に記憶された切替ルールを参照しながら、ネットワーク解析部８０において検出したサーバ２００の数および他のプレイヤー１００の数、つまりネットワーク３００の構成をもとに、対象となるサーバ２００との間で実行すべき通信方式を決定する。つまり、受信制御部４４は、ネットワーク３００構成にしたがって機器の通信方式を自動的に切りかえ、その通信過程を制御する。その際、切替制御部５２は、切替制御部８２と同様に、ネットワーク３００の構成、つまり「Ｃａｓｅ１」から「Ｃａｓｅ４」に応じて、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを選択する。
【００４５】
「Ｃａｓｅ１」から「Ｃａｓｅ４」のそれぞれに対応した通信方式は、前述の通りなので、ここでは、説明を省略する。なお、「Ｃａｓｅ２」または「Ｃａｓｅ４」の場合、切替制御部５２は、プル制御部５４、プル型ユーザインターフェイス部１０の稼動、受動的プッシュ制御部５６の停止を決定する。また、「Ｃａｓｅ３」の場合、切替制御部５２は、受動的プッシュ制御部５６の稼動、プル制御部５４、プル型ユーザインターフェイス部１０の停止を決定する。また、「Ｃａｓｅ１」の場合、切替制御部８２は、プッシュ型通信を実行する際、受動的プッシュ制御部５６の稼動、プル制御部５４、プル型ユーザインターフェイス部１０の停止を決定し、プル型通信を実行する際、プル制御部５４、プル型ユーザインターフェイス部１０の稼動、受動的プッシュ制御部５６の停止を決定する。
【００４６】
プル型ユーザインターフェイス部１０は、ユーザからの指示を受けつける。具体的に、プル型ユーザインターフェイス部１０は、ネットワーク３００上のプル型送信をサポートするサーバ２００のリストをユーザに提示し、ユーザの入力を受けつけてプル型転送の命令をプル制御部５４に発行する。プル制御部５４は、ユーザの命令に応じて、プル型通信を実行する。つまり、プル制御部５４は、対象となるサーバ２００に対してコンテンツの送信を指示する。受動的プッシュ制御部５６は、プッシュ制御部８６の命令にしたがい受動的にプッシュ型通信を実行する。
【００４７】
コンテンツ受信部４６は、受信制御部４４において選択した結果にしたがって、対象となるサーバ２００によって送信されたコンテンツを受信する。再生部１４は、コンテンツ受信部４６において受信されたコンテンツであって、かつ画像、音楽、映像などのコンテンツを再生する。なお、いずれの通信方式が使用されてもコンテンツは、コンテンツ受信部４６から再生部１４の順に転送される。通信インターフェイス部１８は、プレイヤー１００とサーバ２００と間で行われる制御メッセージの交換を制御する。つまり、通信インターフェイス部１８は、対象となるサーバ２００から、プッシュ型通信方式の指示を受けつける。また、対象となるサーバ２００へ、プル型通信方式の指示を送信する。
【００４８】
この構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリにロードされた通信機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００４９】
以上の構成によるコンテンツ通信システム１０００の動作を説明する。図５は、デバイス管理部５０、７８による管理手順を示すフローチャートである。機器が起動すると、またはネットワーク３００に参加すると、デバイス管理部５０またはデバイス管理部７８は、起動処理した（Ｓ１０）後、自機器情報記憶部４２または自機器情報記憶部７２からの自機器情報を読み出す。また、デバイス管理部５０またはデバイス管理部７８は、デバイスリスト記憶部４０またはデバイスリスト記憶部７０においてデバイスリストを新規作成する（Ｓ１２）とともに、自機器の情報を自機器情報記憶部４２または自機器情報記憶部７２から読み出し、デバイスリストに登録する（Ｓ１４）。
【００５０】
また、デバイス管理部５０またはデバイス管理部７８は、通信インターフェイス部１８または通信インターフェイス部２８を介して、ネットワーク３００上に自分が稼動していることを広告し（Ｓ１６）、さらに他の機器宛に機器情報の取得要求を送信する（Ｓ１８）。その後、他機器の機器情報応答を受信した場合（Ｓ２０のＹ）、デバイス管理部５０またはデバイス管理部７８は、デバイスリストを更新する（Ｓ２２）。受信した機器情報応答が「稼動」という情報であれば該当機器の項目を追加し、「停止」であれば該当項目を削除する。一方、他機器の機器情報応答を受信しない場合（Ｓ２０のＮ）、ステップ２２は、スキップされる。
【００５１】
通信インターフェイス部１８または通信インターフェイス部２８は、他機器からの機器情報要求を受信した場合（Ｓ２４のＹ）、自分が稼動していることを相手に知らせる（Ｓ２６）。一方、通信インターフェイス部１８または通信インターフェイス部２８が他機器からの機器情報要求を受信しない場合（Ｓ２４のＮ）、ステップ２６は、スキップされる。自機器停止命令を受信しなければ（Ｓ２８のＮ）、ステップ２０に戻る。自機器停止命令を受信する場合（Ｓ２８のＹ）、つまり機器が停止した場合あるいはネットワーク３００から離脱する場合に、デバイス管理部５０またはデバイス管理部７８は、自機器が停止することを広告し（Ｓ３０）、デバイスリストを削除して（Ｓ３２）、機器の停止処理（Ｓ３４）を実行する。
【００５２】
図６は、ネットワーク解析部４８、８０による解析手順を示すフローチャートである。ネットワーク解析部４８またはネットワーク解析部８０は、デバイスリスト記憶部４０またはデバイスリスト記憶部７０からデバイスリストを読み取る（Ｓ５０）。また、ネットワーク解析部４８またはネットワーク解析部８０は、ネットワーク３００上で稼動しているプレイヤー１００とサーバ２００の数を集計する（Ｓ５２）。さらに、ネットワーク解析部４８またはネットワーク解析部８０は、集計した数をもとに、ネットワーク３００構成、つまりプレイヤー１００の数とサーバ２００数を切替制御部５２あるいは切替制御部８２に出力する（Ｓ５４）。
【００５３】
切替制御部５２あるいは切替制御部８２は、ネットワーク解析部４８あるいはネットワーク解析部８０からのネットワーク３００構成を読み取り、切替ルール記憶部１２あるいは切替ルール記憶部２２に記憶している通信方式の切替ルールと照合することによって、通信方式を決定する。
【００５４】
図７は、切替制御部５２、８２による制御手順を示すフローチャートである。切替制御部５２あるいは切替制御部８２は、ネットワーク解析部４８あるいはネットワーク解析部８０からのネットワーク３００の構成を読み取る（Ｓ７０）。つづいて、切替制御部５２あるいは切替制御部８２は、切替ルール記憶部１２あるいは切替ルール記憶部２２から、通信方式の切替ルールを読み取る（Ｓ７２）。ネットワーク３００構成が「Ｃａｓｅ１」である場合（Ｓ７４のＹ）、切替制御部５２あるいは切替制御部８２は、「早い者勝ち」方式を採用する（Ｓ７６）。一方、ネットワーク３００構成が「Ｃａｓｅ１」でなく（Ｓ７４のＮ）、ネットワーク３００構成が「Ｃａｓｅ２」または「Ｃａｓｅ４」である場合（Ｓ７８のＹ）、切替制御部５２あるいは切替制御部８２は、強制的に通信方式をプル型に切りかえる。
【００５５】
具体的には、プレイヤー１００の受動的プッシュ制御部５６あるいはサーバ２００のプッシュ制御部８６とプッシュ型ユーザインターフェイス部２０との稼動を停止させる（Ｓ８２）。つまり、プル型通信のみが許可されるようにネットワーク３００が設定される。一方、ネットワーク３００構成が「Ｃａｓｅ２」または「Ｃａｓｅ４」でない場合（Ｓ７８のＮ）、つまり「Ｃａｓｅ３」の場合、プレイヤー１００のプル制御部５４とプル型ユーザインターフェイス部１０あるいはサーバ２００の受動的プル制御部８４との稼動を停止させる（Ｓ８６）。つまり、プッシュ型通信のみが許可されるようにネットワーク３００が設定される。ネットワーク３００が変化すれば（Ｓ８８のＹ）、ステップ７０に戻る。ネットワーク３００が変化せず（Ｓ８８のＮ）、自機器が停止しなければ（Ｓ９０のＮ）、ステップ８８に戻る。自機器が停止すれば（Ｓ９０のＹ）、処理を終了する。
【００５６】
図８は、プレイヤー１００による早い者勝ち設定時の動作手順を示すフローチャートである。切替制御部５２は、プル制御部５４、受動的プッシュ制御部５６を監視し、プル型ユーザインターフェイス部１０またはサーバ２００から転送命令が届いたかを検出する（Ｓ１１０）。検出されたのがプル型通信の命令であれば（Ｓ１１２のＹ）、切替制御部５２は、受動的プッシュ制御部５６の稼動を停止させる（Ｓ１１４）ことによって、サーバ２００のプッシュ制御部８６からのプッシュ型通信命令を受けつけないようにする。また、プル制御部５４は、サーバ２００の受動的プル制御部８４にプル型通信の命令を発行し（Ｓ１１６）、プル型通信と再生を開始させる（Ｓ１１８）。プル型通信が終了すると、切替制御部５２は、受動的プッシュ制御部５６を再び起動し（Ｓ１２０）、プッシュ型通信を受けつけられるように設定する。
【００５７】
一方、検出されたのがプル型通信の命令でなければ（Ｓ１１２のＮ）、つまりプッシュ型通信の命令であれば、切替制御部５２は、プル制御部５４とプル型ユーザインターフェイス部１０の稼動を停止させ（Ｓ１２２）、ユーザからのプル型通信命令を受けつけないようにしてから、サーバ２００のプッシュ制御部８６からの命令にしたがってプッシュ型通信と再生を行う（Ｓ１２４）。プッシュ型通信と再生が終わると、切替制御部５２は、プル制御部５４とプル型ユーザインターフェイス部１０を再び起動し（Ｓ１２６）、プル型通信を受けつけられるように設定する。自機器が停止されなければ（Ｓ１２８のＮ）、ステップ１１０に戻る。一方、自機器が停止されれば（Ｓ１２８のＹ）、処理は終了される。
【００５８】
図９は、サーバ２００による早い者勝ち設定時の動作手順を示すフローチャートである。切替制御部８２は、プッシュ制御部８６、受動的プル制御部８４を監視し、プッシュ型ユーザインターフェイス部２０またはプレイヤー１００から転送命令が届いたかを検出する（Ｓ１４０）。検出されたのがプッシュ型通信の命令であれば（Ｓ１４２のＹ）、切替制御部８２は、受動的プル制御部８４の稼動を停止させる（Ｓ１４４）ことによって、プレイヤー１００のプル制御部５４からのプル型通信命令を受けつけないようにする。また、プッシュ制御部８６は、プレイヤー１００の受動的プッシュ制御部５６にプッシュ型通信の命令を発行し（Ｓ１４６）、プッシュ型通信と再生を開始させる（Ｓ１４８）。プッシュ型通信が終了すると、切替制御部８２は、受動的プル制御部８４を再び起動し（Ｓ１５０）、プル型通信を受けつけられるように設定する。
【００５９】
一方、検出されたのがプッシュ型通信の命令でなければ（Ｓ１４２のＮ）、つまりプル型通信の命令であれば、切替制御部８２は、プッシュ制御部８６とプッシュ型ユーザインターフェイス部２０の稼動を停止させ（Ｓ１５２）、ユーザからのプッシュ型通信命令を受けつけないようにしてから、プレイヤー１００のプル制御部５４からの命令にしたがってプル型通信と再生を行う（Ｓ１５４）。プル型通信と再生が終わると、切替制御部８２は、プッシュ制御部８６とプッシュ型ユーザインターフェイス部２０を再び起動し（Ｓ１５６）、プッシュ型通信を受けつけられるように設定する。自機器が停止されなければ（Ｓ１５８のＮ）、ステップ１４０に戻る。一方、自機器が停止されれば（Ｓ１５８のＹ）、処理は終了される。
【００６０】
以下、本発明に係る変形例を説明する。変形例では、切替ルール記憶部１２および切替ルール記憶部２２に記憶される切替ルールが、実施例での切替ルールと異なる。例えば、コンテンツ通信システム１０００の柔軟性をさらに向上させるためには、「Ｃａｓｅ２」から「Ｃａｓｅ４」のいずれかに対しても、「早い者勝ち」の通信方式を導入すればよい。
【００６１】
図１０（ａ）−（ｂ）は、図３（ｄ）のＣａｓｅ４に早い者勝ち設定を行った場合の動作の概要を示す。図１０（ａ）は、プレイヤーＰ１とサーバＳ１の間においてプル型通信（１）が先に発生した場合を示す。Ｐｈａｓｅ１において、Ｐ１とＳ１とはプル型通信を許可し、プッシュ型通信を拒否するようにそれぞれの内部のモジュールを自動的に設定する。Ｐｈａｓｅ２において、（１）の通信が行われている途中に、他のプレイヤーＰ２からサーバＳ１へのプル型通信（２）は許可されるが、サーバＳ１からプレイヤーＰ２へのプッシュ型通信は許可されない。
【００６２】
なお、プレイヤーＰ１とサーバＳ１以外の機器間において発生する通信には、この制限を受けることなく、Ｐｈａｓｅ１に示したようにプル型通信とプッシュ型通信の「早い者勝ち」によって自動的に転送方式が決まる。Ｐｈａｓｅ３において、（１）の通信が終了し、（２）の通信がまだ進行中であれば、プレイヤーＰ１のプッシュ型通信機能だけが回復する。Ｐｈａｓｅ４において、すべての通信が終了すると、サーバＳ１のプッシュ型通信機能も回復する。
【００６３】
図１０（ｂ）は、プレイヤーＰ１とサーバＳ１の間においてプッシュ型通信（１）が先に発生した場合を示す。Ｐｈａｓｅ１において、プレイヤーＰ１とサーバＳ１は、プッシュ型通信を許可し、プル型通信を拒否するようにそれぞれの内部モジュールを自動的に設定する。Ｐｈａｓｅ２において、（１）の通信が行われている途中に、サーバＳ１と他のプレイヤーＰ２の間では、プッシュ型通信しかできない。なお、プレイヤーＰ１とサーバＳ１以外の機器間において発生する通信は、この制限を受けない。Ｐｈａｓｅ３において、（１）の通信が終了し、（２）の通信が進行中であれば、プレイヤーＰ１のプル型通信機能だけが回復する。Ｐｈａｓｅ４において、すべての通信が終了すると、サーバＳ１のプル型通信機能も回復する。
【００６４】
以下、本発明に係る別の変形例を説明する。実施例では、プッシュ型通信とプル型通信とを自動的に切りかえている。一方、別の変形例では、プッシュ型通信とプル型通信とを手動にて切りかえる。図１１は、本発明の別の変形例に係るコンテンツ通信システム１０００の構成を示す。図１１に示された構成のうち、図１にも示された構成には、同一の符号を付与する。プレイヤー１００とサーバ２００に手動設定インターフェイス部９０、手動設定インターフェイス部９２が導入され、これらは、ユーザの手動切換命令を受けつけると、切替制御部５２あるいは切替制御部８２に出力する。切替制御部５２あるいは切替制御部８２は、ユーザの命令にしたがって、各制御モジュールおよびユーザインターフェイスの稼動状態を設定し、手動設定プル型、手動設定プッシュ型、自動設定の３つの通信モードの設定が可能になる。
【００６５】
以下、本発明に係るさらに別の変形例を説明する。これまでは、コンテンツ通信システム１０００全体に対してプッシュ型通信やプル型通信を規定している。一方、さらに別の変形例では、コンテンツ通信システム１０００を複数のグループに分割し、各グループに対してプッシュ型通信やプル型通信を規定する。図１２は、本発明のさらに別の変形例に係るコンテンツ通信システム１０００の構成を示す。コンテンツ通信システム１０００は、第１プレイヤー１００ａから第５プレイヤー１００ｅと総称されるプレイヤー１００、第１サーバ２００ａから第５サーバ２００ｅと総称されるサーバ２００を含む。図示のごとく、コンテンツ通信システム１０００には、複数のプレイヤー１００と、複数のサーバ２００とが含まれるので、これまでは、図３（ｄ）に示された「Ｃａｓｅ４」に相当しており、強制的にプル型通信が実行されていた。
【００６６】
しかしながら、図１２におけるコンテンツ通信システム１０００のうち、第１プレイヤー１００ａから第３プレイヤー１００ｃ、第１サーバ２００ａから第４サーバ２００ｄによって、第１グループ２１０が形成されている。また、コンテンツ通信システム１０００のうち、第４プレイヤー１００ｄ、第５プレイヤー１００ｅ、第５サーバ２００ｅによって、第２グループ２１２が形成されている。つまり、コンテンツ通信システム１０００は、第１グループ２１０、第２グループ２１２というふたつのグループに分割されている。ここで、第１グループ２１０は、３つのプレイヤー１００と４つのサーバ２００とを含んでいるので、Ｃａｓｅ４に相当する。一方、第２グループ２１２は、ふたつのプレイヤー１００とひとつのサーバ２００を含んでいるので、Ｃａｓｅ３に相当する。そのため、第１グループ２１０では、強制的にプル型通信が実行されるが、第２グループ２１２では、強制的にプッシュ型通信が実行される。このように、コンテンツ通信システム１０００内においても、グループ毎に異なった形態の通信がなされる。
【００６７】
さらに別の変形例に係るプレイヤー１００およびサーバ２００の構成は、図１と同様のタイプである。自機器情報記憶部７２は、前述の情報に加えて、自機器の属するグループを識別するための情報（以下、「グループ情報」という）も記録する。グループ情報は、例えば、グループ識別番号「１」、グループ識別番号「２」等によって示される。なお、グループ識別番号は、ユーザによって直接入力されればよい。あるいは、コンテンツが動画像データである場合、動画像データのレートに応じてグループ識別番号が規定されていてもよい。例えば、レートが１００ｋｂｐｓのコンテンツをグループ識別番号「１」に対応づけ、レートが１Ｍｂｐｓのコンテンツをグループ識別番号「２」に対応づける。ユーザから、レートに関する情報を受けつけ、自機器情報記憶部７２は、受けつけた情報をグループ情報に変換して記憶する。デバイス管理部７８は、自機器情報記憶部７２から自機器の情報、グループ情報を読み出した後、通信インターフェイス部２８を介してこれらの情報をネットワーク３００上に広告する。また、デバイス管理部７８は、通信インターフェイス部２８を介してネットワーク３００上の他機器の情報も収集する。さらに、デバイス管理部７８は、収集した機器情報をもとに、デバイスリスト記憶部７０に記憶されているデバイスリストを更新する。
【００６８】
図１３は、本発明のさらに別の変形例に係るデバイスリスト記憶部７０に記憶されるデバイスリストのデータ構造を示す。図１３のデバイスリストでは、図２のデバイスリストにグループ欄４０４が追加されている。グループ欄４０４には、各機器に対応したグループ識別番号が示されている。図１に戻る。ネットワーク解析部８０は、ネットワーク３００の構成を解析する。具体的には、ネットワーク解析部８０は、デバイスリスト記憶部７０に記憶されたデバイスリストを参照しながら、自らのグループ識別番号と同一の識別番号を有したプレイヤー１００の数およびサーバ２００の数を導出することによって、ネットワーク３００の構成を導出する。さらに、ネットワーク解析部８０は、導出した結果を送信制御部７４に出力する。送信制御部７４は、各グループを「Ｃａｓｅ１」から「Ｃａｓｅ４」のいずれかに分類する。
【００６９】
プレイヤー１００における自機器情報記憶部４２、ネットワーク検出部１６、デバイスリスト記憶部４０、切替ルール記憶部１２、受信制御部４４は、サーバ２００における自機器情報記憶部７２、ネットワーク検出部２６、デバイスリスト記憶部７０、切替ルール記憶部２２、送信制御部７４と同様であるので、ここでは説明を省略する。
【００７０】
図１４は、本発明のさらに別の変形例に係るネットワーク解析部４８、８０による解析手順を示すフローチャートである。ネットワーク解析部４８またはネットワーク解析部８０は、デバイスリスト記憶部４０またはデバイスリスト記憶部７０からデバイスリストを読み取る（Ｓ２００）。また、複数のグループが混在している場合（Ｓ２０２のＹ）、ネットワーク解析部４８またはネットワーク解析部８０は、自らが属するグループの情報を抽出する（Ｓ２０４）。一方、複数のグループが混在していなければ（Ｓ２０２のＮ）、ステップ２０４はスキップされる。ネットワーク解析部４８またはネットワーク解析部８０は、ネットワーク３００上で稼動しているプレイヤー１００とサーバ２００の数を集計する（Ｓ２０６）。さらに、ネットワーク解析部４８またはネットワーク解析部８０は、集計した数をもとに、ネットワーク３００構成、つまりプレイヤー１００の数とサーバ２００数を切替制御部５２あるいは切替制御部８２に出力する（Ｓ２０８）。
【００７１】
以下、本発明に係るさらに別の変形例を説明する。ここでも、コンテンツ通信システム１０００に複数のグループが含まれているが、グループの管理は、管理装置においてなされる。図１５は、本発明のさらに別の変形例に係るコンテンツ通信システム１０００の構成を示す。図１５のコンテンツ通信システム１０００は、図１２に対して管理装置２２０が加えられている。管理装置２２０は、プレイヤー１００やサーバ２００から機器情報を受けつける。管理装置２２０は、受けつけた情報をもとに、図２のようなデバイスリストを生成する。また、管理装置２２０は、ユーザから各機器に対するグループ指定情報を受けつける。その結果、図２のようなデバイスリストは、図１３のようなデバイスリストに更新される。さらに、管理装置２２０は、プレイヤー１００およびサーバ２００にデバイスリストを送信する。プレイヤー１００およびサーバ２００は、デバイスリスト記憶部４０あるいはデバイスリスト記憶部７０にデバイスリストを記憶する。これ以降の処理は、前述の通りであるので、説明を省略する。
【００７２】
本発明の実施例によれば、ネットワーク上において稼動しているサーバの数とプレイヤーの数とに応じて、サーバとプレイヤーとの間の通信方式を選択するので、コンテンツを送信する際の通信方式を簡易に切りかえることができる。また、ネットワーク上において稼動しているサーバの数とプレイヤーの数とに応じて、プッシュ型通信を固定的に使用する方式、プル型通信を固定的に使用する方式、プッシュ型通信とプル型通信とを動的に切りかえる方式のいずれかを自動的に選択するので、プッシュ型通信とプル型通信との両立を簡易に実現できる。
【００７３】
また、複数のサーバが検出された場合に、プル型通信を固定的に使用するので、複数のサーバからプレイヤーへ同時にプッシュ型通信がなされることによる混乱を回避できる。また、ひとつのサーバと複数のプレイヤーが存在する場合に、プッシュ型通信が使用されるので、ひとつのサーバが主導となる通信によって、混乱を回避できる。また、指示に応じて、プッシュ型通信とプル型通信とを動的に切りかえるので、さまざまな通信方式に柔軟に対応できる。また、コンテンツ通信システムの中に、複数のグループが含まれる場合でも、各グループに対してプッシュ型通信あるいはプル型通信が決定されるので、各グループに適した処理を実行できる。
【００７４】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００７５】
本発明の実施例において、プレイヤー１００およびサーバ２００は、プル型通信およびプッシュ型通信に対応している。しかしながらこれに限らず例えば、プル型通信あるいはプッシュ型通信に対応したプレイヤー１００あるいはサーバ２００が、コンテンツ通信システム１０００に含まれてもよい。このようなプレイヤー１００あるいはサーバ２００は、自機器の情報を広告する際に、プル型通信あるいはプッシュ型通信に対応している旨の情報も広告する。その結果、Ｃａｓｅ１からＣａｓｅ４に定められた規則が無視され、プル型通信およびプッシュ型通信のいずれか一方に対応したプレイヤー１００あるいはサーバ２００に合わせた通信が実行される。例えば、Ｃａｓｅ３に相当する場合でも、プル型通信のみに対応したプレイヤー１００が含まれていれば、プル型通信が実行される。また、Ｃａｓｅ２に対応する場合でも、プッシュ型通信のみに対応したサーバ２００が含まれていれば、プッシュ型通信が実行される。本変形例によれば、プル型通信およびプッシュ型通信のいずれか一方に対応したプレイヤー１００あるいはサーバ２００がコンテンツ通信システム１０００に含まれている場合でも、通信を実行できる。
【００７６】
本発明の実施例において、コンテンツ通信システム１０００は、プル型通信あるいはプッシュ型通信を選択する。しかしながらこれに限らず例えば、コンテンツ通信システム１０００は、これら以外の通信を選択してもよい。具体的には、２種類のプル型通信が規定されており、コンテンツ通信システム１０００は、そのうちのいずれかを選択する。ひとつ目のプル型通信（以下、「第１プル型通信」という）は、サーバ２００から起動されるプル型通信である。サーバ２００は、ユーザからの指示を受けつけると、その旨をプレイヤー１００へ通知する。その後、プレイヤー１００は、サーバ２００へコンテンツの送信を要求し、サーバ２００は、プレイヤー１００へコンテンツを送信する。つまり、第１プル型通信とは、最終的にプル型通信がなされるが、最初の指示を送信側にて受ける処理に相当する。一方、ふたつ目のプル型通信（以下、「第２プル型通信」という）は、プレイヤー１００から起動されるプル型通信である。これは、これまでの説明通りであるので、ここでは、説明を省略する。
【００７７】
このような変形例に係るコンテンツ通信システム１０００の構成は、図１に示されたコンテンツ通信システム１０００と同様の構成である。なお、図１およびその説明における「プッシュ」は、「第１プル」に置きかえられ、「プル」は、「第２プル」に置きかえられればよいが、ここでは、前述のとおりに示す。また、通信インターフェイス部１８から受動的プッシュ制御部５６へ向かう矢印が、双方向の矢印に置きかえられ、プッシュ制御部８６から通信インターフェイス部２８へ向かう矢印も、双方向の矢印に置きかえられる。また、以下では、これまでとの相違点、特に第１プル型通信を中心に説明する。プッシュ型ユーザインターフェイス部２０は、前述のごとく、ユーザからの指示を受けつける。
【００７８】
プッシュ制御部８６は、通信インターフェイス部２８を介して、受けつけた指示をプレイヤー１００へ送信する。受動的プッシュ制御部５６は、通信インターフェイス部１８を介して、サーバ２００からの指示を受けつける。その後、受動的プッシュ制御部５６は、通信インターフェイス部２８を介してサーバ２００へ、プル制御部５４と同様に、コンテンツの送信を要求する。プッシュ制御部８６は、通信インターフェイス部２８を介して、プレイヤー１００からの送信要求を受けつける。プッシュ制御部８６は、受動的プル制御部８４と同様に、要求に応じて、コンテンツ送信部７６にコンテンツを送信させる。本変形例によれば、さまざまな通信に対して本発明を適用できる。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施例に係るコンテンツ通信システムの構成を示す図である。
【図２】図１のデバイスリスト記憶部に記憶されるデバイスリストのデータ構造を示す図である。
【図３】図３（ａ）−（ｄ）は、図１のコンテンツ通信システムにおける通信方式に応じた動作の概要を示す図である。
【図４】図４（ａ）−（ｂ）は、図１の切替ルール記憶部に記憶された切替ルールのデータ構造を示す図である。
【図５】図１のデバイス管理部による管理手順を示すフローチャートである。
【図６】図１のネットワーク解析部による解析手順を示すフローチャートである。
【図７】図１の切替制御部による制御手順を示すフローチャートである。
【図８】図１のプレイヤーによる早い者勝ち設定時の動作手順を示すフローチャートである。
【図９】図１のサーバによる早い者勝ち設定時の動作手順を示すフローチャートである。
【図１０】図１０（ａ）−（ｂ）は、図３（ｄ）のＣａｓｅ４に早い者勝ち設定を行った場合の動作の概要を示す図である。
【図１１】本発明の変形例に係るコンテンツ通信システムの構成を示す図である。
【図１２】本発明のさらに別の変形例に係るコンテンツ通信システムの構成を示す図である。
【図１３】本発明のさらに別の変形例に係るデバイスリスト記憶部に記憶されるデバイスリストのデータ構造を示す図である。
【図１４】本発明のさらに別の変形例に係るネットワーク解析部による解析手順を示すフローチャートである。
【図１５】本発明のさらに別の変形例に係るコンテンツ通信システムの構成を示す図である。
【符号の説明】
【００８０】
１０  プル型ユーザインターフェイス部、  １２  切替ルール記憶部、  １４  再生部、  １６  ネットワーク検出部、  １８  通信インターフェイス部、  ２０  プッシュ型ユーザインターフェイス部、  ２２  切替ルール記憶部、  ２４  コンテンツ記憶部、  ２６  ネットワーク検出部、  ２８  通信インターフェイス部、  ４０  デバイスリスト記憶部、  ４２  自機器情報記憶部、  ４４  受信制御部、  ４６  コンテンツ受信部、  ４８  ネットワーク解析部、  ５０  デバイス管理部、  ５２  切替制御部、  ５４  プル制御部、  ５６  受動的プッシュ制御部、  ７０  デバイスリスト記憶部、  ７２  自機器情報記憶部、  ７４  送信制御部、  ７６  コンテンツ送信部、  ７８  デバイス管理部、  ８０  ネットワーク解析部、  ８２  切替制御部、  ８４  受動的プル制御部、  ８６  プッシュ制御部、  １００  プレイヤー、  ２００  サーバ、  ３００  ネットワーク、  １０００  コンテンツ通信システム。
【図１】
2009134676.tif 000003
【図２】
2009134676.tif 000004
【図３】
2009134676.tif 000005
【図４】
2009134676.tif 000006
【図５】
2009134676.tif 000007
【図６】
2009134676.tif 000008
【図７】
2009134676.tif 000009
【図８】
2009134676.tif 000010
【図９】
2009134676.tif 000011
【図１０】
2009134676.tif 000012
【図１１】
2009134676.tif 000013
【図１２】
2009134676.tif 000014
【図１３】
2009134676.tif 000015
【図１４】
2009134676.tif 000016
【図１５】
2009134676.tif 000017