説明

自動ネットワーク接続機能付きクライアントまたはコントローラおよびネットワーク接続プログラム

【課題】 クライアントサーバシステムにおいて、クライアントが何らかの要因でネットワークとの接続が切れた場合、クライアントとコントローラとが自動的に再び同一サーバに接続することができる自動ネットワーク接続機能付きクライアントおよびコントローラを提供すること。
【解決手段】 自動ネットワーク接続機能付きクライアントは、第1のサーバとの接続が切断され第1のサーバとは異なる第2のサーバに接続した場合に、第1のサーバを探索することにより第1のサーバを発見できれば、第1のサーバと再接続を実行する。また、自動ネットワーク接続機能付きコントローラは、クライアントを監視および/または制御し、クライアントが第1のサーバとの接続が切断され第1のサーバとは異なる第2のサーバに接続した場合に、クライアントが接続されている第2のサーバを探索することにより第2のサーバを発見できれば、クライアントと同一のサーバに接続する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は自動ネットワーク接続機能付きクライアントおよびコントローラに関し、さらに詳しくは、クライアントサーバシステムにおいて、何らかの要因でクライアントとサーバとの接続が切断された場合、クライアントとコントローラとが再び同一サーバに接続することができる自動ネットワーク接続機能付きクライアントおよびコントローラに関する。
【背景技術】
【0002】
現在、ネットワーク上でのクライアントサーバシステムを用いたコンテンツ配信がおこなわれている。コンテンツ配信中にサーバの異常などによりクライアントとサーバとの接続が切断された場合、クライアントはサーバと接続を回復しなければ中断したコンテンツの配信を受けることができない。そこで、クライアントに自動接続回復機能を持たせ、サーバとの接続が切断された場合であっても、ネットワーク上の別のサーバと接続することによって、ネットワークへ迅速な接続回復が図られている。クライアントが再生できることを最優先するならば、上記自動接続回復機能を有していることは非常に有利である。しかし、図1のように、多数の曲の音楽データを蓄積した複数のサーバSVと、複数のオーディオクライアントCLと、複数のコントローラCNとを備え、夫々がLAN(ローカルエリアネットワーク)101により相互に接続されているネットワークオーディオシステム100のようなクライアントサーバシステムでは、コントローラCN1からクライアントCL1をコントロール(監視および/または制御)するためには夫々が同一サーバSV1に接続されている必要がある。コントローラCN1は、サーバSV1経由でクライアントCL1をコントロールするからである。それ故、クライアントCL1が何らかの要因でサーバSV1との接続が切れ、上記自動接続回復機能によってクライアントCL1が別のサーバSV2と接続し、ネットワークNW1からコントローラCN1の監視/制御範囲外であるネットワークNW2へ移動した場合、コントローラCN1はサーバSV2に接続されているクライアントCL1をコントロールすることができなくなる。
【0003】
【特許文献1】WO 03/102919
【発明の開示】
【発明が解決しようとする課題】
【0004】
本発明は上記従来の課題を解決するためになされたものであり、その目的とするところは、クライアントサーバシステムにおいて、クライアントが何らかの要因でネットワークとの接続が切れた場合、クライアントとコントローラとが自動的に再び同一サーバに接続することができる自動ネットワーク接続機能付きクライアントおよびコントローラを提供することである。
【課題を解決するための手段】
【0005】
本発明の好ましい実施形態による自動ネットワーク接続機能付きクライアントは、複数のサーバの少なくとも1つと接続する接続手段と、第1のサーバとの接続が切断され、該接続手段が該第1のサーバとは異なる第2のサーバに接続した場合に、該第1のサーバを探索する探索手段とを備え、該探索手段が該第1のサーバを発見した場合に、該接続手段が該第1のサーバと再接続する。
【0006】
何らかの要因によりクライアントとサーバとの接続が切れ、クライアントが第2のサーバに接続された場合(すなわち、クライアントがコントローラからの監視/制御範囲外のネットワークに移動した場合)でも、自動ネットワーク接続機能によって、クライアントは切断前に接続していた第1のサーバを探索し、再接続する。その結果、クライアントがコントローラからの監視/制御範囲外のネットワークに移動した場合でも、クライアントはサーバとの接続状態を自ら迅速に元通りに回復することができ、再度同じコントローラからの監視/制御が可能となる。
【0007】
さらに好ましい実施形態においては、クライアントは第1のサーバのサーバ特定情報を登録するサーバ接続履歴手段と、現在稼動しているサーバのサーバ特定情報をサーバリストに登録するサーバリスト登録手段とをさらに備え、上記探索手段が、該サーバリスト内に該第1のサーバのサーバ特定情報が存在するか否かを判断する。
【0008】
クライアントは、接続が切断される前の第1のサーバのサーバ特定情報をサーバ接続履歴として登録し、さらに、ブロードキャストによりサーバを探索して、現在稼動中のサーバのサーバ特定情報をサーバリストに登録する。そして、サーバリスト内にサーバ接続履歴と一致するサーバ特定情報を探索することにより、第1のサーバが復旧したか否かを判断することができる。それ故、クライアントが別のサーバに接続された場合であっても、第1のサーバが復旧後、迅速に第1のサーバに再接続することができる。
【0009】
本発明の別の好ましい実施形態による自動ネットワーク接続機能付きコントローラは、複数のサーバの少なくとも1つと接続する接続手段と、クライアントを監視および/または制御する監視/制御手段と、該クライアントが、第1のサーバとの接続が切断され、該第1のサーバとは異なる第2のサーバに接続した場合に、該クライアントが接続されている第2のサーバを探索する探索手段とを備え、該探索手段が該第2のサーバを発見した場合に、該接続手段が、該クライアントと同一のサーバに接続する。
【0010】
何らかの要因でクライアントとサーバとの接続が切れ、クライアントが別のサーバに接続された場合であっても、コントローラはクライアントが接続されているサーバを探索し発見した場合に、コントローラとクライアントとが同一のサーバへ接続する。その結果、クライアントがコントローラからの監視/制御範囲外のネットワークに移動したとしても、迅速にクライアントとコントローラとが同一サーバに接続することができ、再度同じコントローラからクライアントを監視および/または制御することができる。
【0011】
さらに好ましい実施形態においては、コントローラは、監視および/または制御していた上記クライアントのクライアント特定情報を登録するクライアント監視/制御履歴手段と、サーバに接続されているクライアントのクライアント特定情報を含むクライアントリストを該サーバから受信するクライアントリスト受信手段とを備え、上記探索手段が該クライアントリスト内に該クライアントのクライアント特定情報が存在するか否かを判断する。
【0012】
コントローラは、監視および/または制御対象のクライアントのクライアント特定情報をクライアント監視/制御履歴として登録する。さらに、ブロードキャストによりサーバを探索して稼動しているサーバを探索し、発見されたサーバに対して順次接続し、クライアントリストをサーバから取得する。そして、クライアントリスト内にクライアント監視/制御履歴と一致するクライアント特定情報を探索することにより監視および/または制御対象のクライアントが接続されているサーバを探索することができる。それ故、クライアントが別のサーバに接続された場合であっても、迅速にクライアントが接続された別のサーバを発見することができる。
【0013】
さらに好ましい実施形態においては、コントローラは、上記探索手段が前記クライアントが接続されている上記第2のサーバを発見した場合に、該クライアントを前記第1のサーバに再接続させる手段をさらに備える。
【0014】
コントローラが第2のサーバに接続されたクライアントを第1のサーバへ戻すことにより、コントローラとクライアントとが同一のサーバに接続することができる。従って、切断前と同じコントローラからクライアントを再び監視および/または制御することが可能になる。第1のサーバと同じ音楽データや映像データが第2のサーバに無いなど第2のサーバに接続したのではコンテンツ再生を継続できないという事態を避けることができる。
【0015】
さらに好ましい実施形態においては、コントローラは、上記探索手段が前記クライアントが接続されている上記第2のサーバを発見した場合に、該第2のサーバへ接続する手段をさらに備える。
【0016】
コントローラが、クライアントが接続されているサーバに接続するので、コントローラとクライアントとが同一のサーバに接続することができる。再生を継続したいコンテンツが第2のサーバに存在する場合には、クライアントを第1のサーバに接続させる必要が無く、コントローラが監視および/または制御対象のクライアントが接続されているサーバに接続するだけで、元の接続状態に戻す事ができる。
【0017】
本発明の別の局面においては、クライアントプログラムが提供される。このプログラムは、複数のサーバの少なくとも1つと接続可能なクライアントを実行させるためのクライアントプログラムであって、複数のサーバのいずれかと接続するステップと、該第1のサーバとの接続が切断された場合に、該第1のサーバとは異なる第2のサーバに接続するステップと、該第1のサーバを探索する探索ステップと、該探索ステップにおいて、該第1のサーバが発見された場合に、該第1のサーバに再び接続するステップとをコンピュータに実行させる。
【0018】
本発明のクライアントプログラムをコンピュータにインストールすることによって、何らかの要因によりクライアントと第1のサーバとの接続が切れ、クライアントが第2のサーバに接続された場合でも、探索ステップによりクライアントは切断前に接続していた第1のサーバを探索する。探索ステップにおいて第1のサーバを発見できれば、クライアントは第1のサーバに再接続するステップにより第1のサーバに再接続する。その結果、クライアントがコントローラからの監視/制御範囲外のネットワークに移動した場合でも、クライアントはサーバとの接続状態を自ら迅速に元通りに回復することができ、接続が切断される前と同じコントローラからクライアントを再び監視および/または制御することができる。
【0019】
さらに別の局面においては、コントローラプログラムが提供される。複数のサーバの少なくとも1つと接続可能なコントローラを実行させるためのクライアントプログラムであって、複数のサーバのいずれかと接続するステップと、クライアントを監視および/または制御する監視/制御ステップと、該クライアントが、第1のサーバとの接続が切断され、該第1のサーバとは異なる第2のサーバに接続した場合に、該クライアントが接続されている第2のサーバを探索する探索ステップと、該探索ステップにおいて該第2のサーバを発見した場合に、該クライアントと同一のサーバに接続するステップとをコンピュータに実行させる。
【0020】
本発明のコントローラプログラムをコンピュータにインストールすることによって、何らかの要因でクライアントとサーバとの接続が切れ、クライアントが別のサーバに接続された場合であっても、コントローラは探索ステップによりクライアントが接続されているサーバを探索する。探索ステップにおいてクライアントを発見できれば、接続ステップによりコントローラとクライアントとが同一のサーバへ接続する。その結果、クライアントがコントローラからの制御範囲外のネットワークに移動したとしても、迅速にクライアントとコントローラとが同一サーバに接続することができ、接続が切断される前と同じコントローラからクライアントを再び監視および/または制御することができる。
【発明の効果】
【0021】
本発明によれば、クライアントが何らかの要因でネットワークとの接続が切れ、クライアントが別のサーバに接続された場合であっても、ユーザに操作面で違和感を与えること無く迅速にクライアントとコントローラとが自動的に再び同一サーバに接続することができるクライアントサーバシステムを提供することが可能となる。
【発明を実施するための最良の形態】
【0022】
以下、本発明の実施の形態をネットワーク型コンテンツ再生システムを例として図面を参照して詳しく説明する。図中同一又は相当部分には同一符号を付してその説明を援用する。
【0023】
[ネットワーク型コンテンツ再生システムの全体構成]
図1は、本発明の好ましい実施形態によるネットワーク型コンテンツ再生システム100を示すブロック図である。ネットワーク型コンテンツ再生システム100は、複数のコンテンツ(例えば、音楽データ)を蓄積する複数のサーバSV(本例では、2つのサーバSV1、SV2)と、1または複数のオーディオクライアントCL(本例では、3つのオーディオクライアントCL1〜CL3)と、1または複数のコントローラCN(本例では、2つのコントローラCN1およびCN2)とを備える。サーバSV、オーディオクライアントCLおよびコントローラCNはLAN(ローカルエリアネットワーク)101等のネットワークにより相互に接続される。
【0024】
本例においてネットワークNW1は、サーバSV1と、サーバSV1に接続されているオーディオクライアントCL1およびオーディオクライアントCL2と、コントローラCN1とを備える。コントローラCN1はサーバSV1を介してオーディオクライアント(CL1およびCL2)に再生指示を出す(これを制御と呼ぶ)。オーディオクライアント(CL1およびCL2)は、コントローラCN1からの指示に従い(あるいは自発的に)、サーバSV1に蓄積されているコンテンツをサーバSV1から取得して再生する。また、オーディオクライアント(CL1およびCL2)は自身の情報(ステータスなど)をサーバSV1に送信し、コントローラCN1はサーバSV1からオーディオクライアント(CL1およびCL2)の情報を取得して表示装置に表示する(これを監視と呼ぶ)。この様に、サーバSV1を中心として、ネットワークNW1が構成される。
【0025】
ネットワークNW2は、サーバSV2およびサーバSV2に接続されているオーディオクライアントCL3とコントローラCN2とを備える。ネットワークNW2においてもサーバSV2とオーディオクライアントCL3とコントローラCN2とがネットワークNW1と同様に動作することができる。
【0026】
次に、サーバSVのハードウェア構造に関して図面を参照して詳細に説明する。図2は、本発明の好ましい実施形態によるサーバSVのハードウェア構成を示すブロック図である。サーバSVは、コンテンツ(例えば、圧縮デジタル曲データ)を蓄積するための記憶装置(例えば、ハードディスクドライブ)205と、データベース管理部202およびネットワークプロトコル処理部203を含むCPU処理部201と、本サーバSVとLAN101との間で信号を送受信するLANコントローラ204とを備える。記憶装置205はコンテンツデータを保存する。
【0027】
下記表1は、記憶装置205に格納されるクライアントリストである。
【表1】

【0028】
クライアントリストは、サーバSVに接続されているクライアントに関する情報(クライアント特定情報)が登録されている。コントローラCNは、サーバSVからクライアントリストを取得することにより、サーバSVに現在接続されているオーディオクライアントCLを知ることができる。ここで、クライアント特定情報とは各クライアントに付けられているクライアント名および固体識別子を含む。クライアント名はユーザが自由に変更できる文字列などからなる識別子であり、固体識別子はMACアドレスなどクライアント固有の識別子である。また、クライアント特定情報にIPアドレスおよびポート番号を利用しても良い。
【0029】
次に、オーディオクライアントCLのハードウェア構造に関して図面を参照して詳細に説明する。図3は、本発明の好ましい実施形態によるオーディオクライアントCLのハードウェア構成を示すブロック図である。オーディオクライアントCLは、ネットワークプロトコル処理部303およびシステム動作部302を含むマイコン処理部301と、フラッシュメモリ306と、順次入力されたコンテンツデータなど(本例では圧縮デジタル曲データ)を一時的に記憶して順次出力するメモリ305と、圧縮デジタル曲データをデコードして非圧縮デジタル曲を生成する音声処理部308と、デジタル曲データをアナログ曲データに変換するD/A変換機(DAC)307と、本オーディオクライアントCLとLAN101との間で信号を送受信するLANコントローラ304とを備える。
【0030】
オーディオクライアントCLは、メモリ305に、下記表2に示すサーバリストが登録される。
【表2】

【0031】
サーバリストには、現在稼動しているサーバのサーバ特定情報が登録される。サーバ特定情報は各サーバに付けられているサーバ名および固体識別子を含む。ここで、サーバ名はユーザが自由に変更できる文字列などからなる識別子であり、固体識別子はMACアドレスなどサーバ固有の識別子である。また、サーバ特定情報に各サーバSVのIPアドレスおよびポート番号を利用しても良い。このサーバリストによりオーディオクライアントCLは現在稼動しているサーバSVを把握することができる。
【0032】
また、オーディオクライアントCLは、メモリ305に下記表3に示すサーバ接続履歴を有する。サーバ接続履歴には、切断される前にオーディオクライアントCLが接続していたサーバSVのサーバ特定情報が登録される。
【表3】

【0033】
オーディオクライアントCLはサーバSVからの音楽データに基づいて音楽を再生する。なお、オーディオクライアントCLには、このような音楽再生機能だけでなく、ユーザの操作に応じて選曲、再生、停止などの制御機能も有する能動的なクライアントと、音楽再生機能だけを有する受動的なクライアントとがある。音楽再生機能だけを有するオーディオクライアントCLは、例えば壁や天井などに埋設され、コントローラCNからの指示に従って音楽を再生する。
【0034】
次に、コントローラCNのハードウェア構造に関して図面を参照して詳細に説明する。図4は、本発明の好ましい実施形態によるコントローラCNのハードウェア構成を示すブロック図である。コントローラCNは、サーバSVに対してクライアントとして機能する。コントローラCNは、LANコントローラ404と、システム動作部402およびネットワークプロトコル処理部403を含むマイコン処理部401と、フラッシュメモリ406と、メモリ405、CRTやLCDといった表示装置410と、キーボードやマウスといった入力装置409とを備える。コントローラCNがオーディオクライアントCLと異なる点は、オーディオクライアントCLは再生機能を有するのに対し、コントローラCNは再生機能を有さなくても良く、主としてオーディオクライアントCLを監視および/または制御する機能を有する点である。
【0035】
コントローラCNのメモリ405には、表2と同じ構成のサーバリストが登録される。サーバリストは各サーバに付けられてるサーバ名および固体識別子を含むサーバ特定情報が登録される。サーバリストは、コントローラがブロードキャストして、稼動中のサーバを発見するために使用される。
【0036】
さらにコントローラCNのメモリ405には、サーバSVから表1に示すクライアントリストを取得して記憶する。クライアントリストは、先述の通り、監視/制御対象のクライアントがサーバに接続されているかを判断するために使用される。
【0037】
コントローラCNは、メモリ405に下記表4に示すクライアント監視/制御履歴を有する。クライアント監視/制御履歴は、切断される前にコントローラCNが監視/制御していたオーディオクライアントCLのクライアント特定情報が登録される。クライアント監視/制御履歴は、クライアントリストと比較することにより、監視/制御対象のクライアントが接続されているサーバを探索するために使用される。
【表4】

【0038】
[初期接続処理]
図5は、オーディオクライアントのサーバに対する初期接続処理を示すフロー図である。オーディオクライアントCLに電源が投入されると、そのオーディオクライアントCLはまずサーバSVを探索する(S501)。具体的には、オーディオクライアントCLはブロードキャストにより複数のサーバSVのサーバ特定情報を取得して、サーバリストに登録する。
【0039】
次に、オーディオクライアントCLはサーバ特定情報を取得した複数のサーバの中から1つのサーバを選択し、選択したサーバと接続する(S502)。接続が確立した後、オーディオクライアントCLは自身の情報であるクライアント情報を接続したサーバSVに送信する(S503)。ここで、クライアント情報は、[再生]、[停止]、[ポーズ]などのステータスや、音量情報、再生中の曲の情報である再生曲情報、およびリストを作成するためのリスト構築キーなどを含む。
【0040】
以上の動作により、オーディオクライアントCLは選択した1つのサーバSVと接続される。以降、オーディオクライアントCLはサーバSVに接続されたコントローラCNからの指示に従い、サーバSVから送信された音楽データを再生する。なお、コントローラCNによるサーバSVとの初期接続処理も図5と同じである。
【0041】
[接続監視処理および接続回復処理]
図6は、オーディオクライアントの監視処理および接続回復処理を示すフロー図である。オーディオクライアントCL(例えば、オーディオクライアントCL1)はサーバSV(例えば、サーバSV1)と接続してから所定期間が経過したか否かを判断する(S601)。所定期間後、オーディオクライアントCL1はサーバSV1との接続が維持されているか否かを判断する(S602、S603)。具体的には、オーディオクライアントCL1は接続確認コマンドをサーバSV1に送信する(S602)。サーバSV1からオーディオクライアントCL1に接続確認コマンドに対する返答がある場合(S603:YES)、接続は維持されていると判断される。一方、返答がない場合や送信エラーが起きる場合(S603:NO)、接続は切断されていると判断される。返答方法としては、たとえばサーバSV1が送信された接続確認コマンドと同じコマンドを返信する方法がある。
【0042】
ステップS603で返答があった場合、オーディオクライアントCLは再びS601に戻って所定期間経過後に接続が維持されているか否かを判断する(S601〜S603)。これにより、オーディオクライアントCL1は所定期間ごとにサーバSVとの接続状態をチェックする。接続が切断されている場合、オーディオクライアントCL1は同じサーバSV1に対して再接続を試みる(S502)。
【0043】
再接続を試みた結果、サーバSV1との接続に失敗した場合(S604:NO)、オーディオクライアントCL1は同じサーバSV1との接続を断念し、別のサーバSV2との接続回復処理を実行する(S501〜S503)。具体的には、オーディオクライアントCL1はブロードキャストにより接続可能なサーバSV2を探索し(S501)、探索したサーバSV2に接続する(S502)。そして、オーディオクライアントCL1はクライアント情報をサーバSV1に送信する(S503)。
【0044】
[自動ネットワーク接続処理(1)]
上記の接続回復処理によりオーディオクライアントCL1が別サーバSV2に接続された場合、ネットワークの構成は図7のようになり、別のサーバ(第2のサーバ、例えば、サーバSV2)に接続されたオーディオクライアントCL1はコントローラCN1ではコントロールできない状態になっている。次に、再びコントローラCN1でオーディオクライアントCL1をコントロール可能にさせるための自動ネットワーク接続処理を説明する。
【0045】
図8は、オーディオクライアントのネットワーク接続処理を示すフロー図である。接続回復処理後、オーディオクライアントCL1は所定期間が経過したか否かを判断する(S801)。所定期間後、オーディオクライアントCL1はまず現在ネットワーク上で稼動しているサーバSVを探索する。具体的には、オーディオクライアントCL1はブロードキャストにより複数のサーバSVのサーバ特定情報をサーバSVから取得して表2のようにサーバリストに登録する(S802、S803)。
【0046】
次に、オーディオクライアントCL1は、現在ネットワーク上で稼動しているサーバの中に、切断前に接続していたサーバSV1(第1のサーバ)が存在するか否かを判断する(S804)。詳細には、S803でサーバリストに登録されたサーバ特定情報の中に表3のサーバ接続履歴に登録されているサーバSV1のサーバ特定情報が存在するか否かを判断する。
【0047】
サーバSV1が発見された(サーバSV1のサーバ特定情報がサーバリストに存在する)場合(S804:YES)、オーディオクライアントCL1はサーバSV2との接続を切断し、サーバSV1と再接続する(S805)。再接続後、オーディオクライアントCL1は自身のクライアント情報をサーバSV1に送信する(S806)。
【0048】
オーディオクライアントCL1がサーバSV1に再接続した後、コントローラCN1はサーバSV1経由でクライアントCL1をコントロールすることができる。例えば、コントローラCN1はサーバSV1からオーディオクライアントCL1のクライアント情報を受信して、クライアントの状態を監視する(表示装置に表示する)。あるいは、コントローラCN1は、サーバSV1経由でオーディオクライアントCL1に再生指示コマンドを送信する。
【0049】
一方、S804において、サーバSV1が発見できない場合、再びS801に戻って、所定期間後にブロードキャストして、サーバSV1を探索する。
【0050】
以上の動作によって、オーディオクライアントCLが何らかの要因でサーバSV1との接続が切れ、上記自動接続回復機能によってオーディオクライアントCLが別のサーバSV2に接続された場合であっても、オーディオクライアントCL自身がサーバSV1を探索し、再接続することができる。以降、オーディオクライアントCL1はサーバSV1に接続されたコントローラCN1からの指示に従い、サーバSV1から送信された音楽データの再生、停止などをおこなう。その結果、接続が切断される前と同じコントローラで再びオーディオクライアントをコントロールすることが可能となり、ユーザはクライアントとサーバが再接続したことを意識することなくクライアントを利用できる。
【0051】
[自動ネットワーク接続処理(2)]
次に本発明の別の好ましい実施形態について図9および図10を参照して説明する。前の実施形態と同一部分については説明を省略する。
【0052】
図9は、本発明の好ましい実施形態による自動ネットワーク接続処理を示すブロック図である。本例における自動ネットワーク接続機能は、オーディオクライアントCL(例えば、オーディオクライアントCL1)が何らかの要因でサーバSV(第1のサーバ、例えば、サーバSV1)との接続が切れ、上記自動接続回復機能によってオーディオクライアントCL1が別のサーバ(第2のサーバ、例えば、サーバSV2)に接続された場合(図9の矢印A)、コントローラCN(例えば、コントローラCN1)がブロードキャストすることによってサーバを探索し、発見された各サーバに順次接続してオーディオクライアントCL1を探索する(図9の矢印B)。そして、サーバSV2にオーディオクライアントCL1が接続されていることを見つけると、コントローラCN1はオーディオクライアントCL1を元のネットワークに呼び戻す(図9の矢印C)と共に自身も元のネットワークに戻る(図9の矢印D)。
【0053】
図10は、本発明の好ましい実施形態によるコントローラにおける自動ネットワーク接続処理を示すフロー図である。接続回復処理後、コントローラCN1は所定期間が経過したか否かを判断する(S1001)。所定期間後、コントローラCN1はまずネットワーク上で稼動しているサーバSVを探索する。具体的には、コントローラCN1はブロードキャストによりサーバSVのサーバ特定情報を取得し(S1002)、表2のサーバリストに取得したサーバ特定情報を登録する(S1003)。次に、コントローラCN1はサーバ特定情報を取得した複数のサーバの中から(すなわちサーバリストの中から)1つのサーバ(例えば、サーバSV2)を選択し、選択したサーバSV2と接続する(S1004)。
【0054】
サーバSV2と接続が確立した後、コントローラCN1はサーバSV2を介してオーディオクライアントCL1を探索する。具体的には、コントローラCN1はサーバSV2にクライアントリストを要求し(S1005)、サーバSV2は要求に応じてコントローラCN1にクライアントリストを返信し、コントローラCN1はクライアントリストを受信し、これをメモリ305に登録する(S1006)。
【0055】
コントローラCN1は、監視および/または制御対象のクライアントCL1がサーバSV2に接続されているか否かを判断する。すなわち、S1006で登録したクライアントリストの中に表4のクライアント監視/制御履歴に登録されているオーディオクライアントCL1のクライアント特定情報が存在するか否かを判断する(S1007)。
【0056】
クライアントリストにオーディオクライアントCL1のクライアント特定情報が存在しない場合(S1007:NO)、コントローラCN1はサーバリストに登録された他のサーバに順次接続し、サーバ毎にクライアントリストを取得し、オーディオクライアントCL1が接続されているか否かを判断する(S1004〜S1007)。
【0057】
本例では、サーバSV2にオーディオクライアントCL1が接続されている(すなわち、クライアントリストにクライアントCL1のクライアント特定情報が存在する)ので(S1007:YES)、コントローラCN1はオーディオクライアントCL1にサーバSV1への接続要求(すなわち、サーバSV2への切断要求)を送信する(S1008)。接続要求を送信した後、オーディオクライアントCL1から接続要求を受信した旨の通知を受信すると、コントローラCN1はサーバSV2との接続を切断し、サーバSV1へ再び接続する(S1009)。一方、接続要求を受け取ったオーディオクライアントCL1は、サーバSV2との接続を切断し、サーバSV1と接続する。オーディオクライアントCL1は、サーバSV1に自身のクライアント情報で送信し、サーバSV1はこれを受信する。
【0058】
コントローラCN1は、サーバSV1へ再接続した後、所定期間が経過したか否かを判断する(S1010)、所定期間経過後(S1010:YES)、コントローラCN1は、オーディオクライアントCL1がサーバSV1へ接続されたか否かを確認する。具体的には、コントローラCN1は、サーバSV1にクライアントリストを要求し(S1011)、サーバSV1はクライアントリストをコントローラCN1に返信し、コントローラCN1はクライアントリストを受信し、登録する(S1012)。そして、サーバSV1のクライアントリスト内にオーディオクライアントCL1のクライアント特定情報があるか否かを判断する(S1013)。オーディオクライアントCL1のクライアント特定情報がクライアントリスト内に存在する(すなわちオーディオクライアントCL1がサーバSV1に再接続された)場合(S1013:YES)、コントローラCN1は、オーディオクライアントCL1を制御および/または監視する(S1014)。オーディオクライアントCL1のクライアント特定情報がクライアントリスト内に存在しない(すなわちオーディオクライアントCL1がサーバSV1にまだ接続されていない)場合(S1013:NO)、コントローラCN1は、S1011〜S1013を再度実行する。
【0059】
以上の動作によって、自動接続回復手段によってクライアントが別サーバに接続された場合であっても、コントローラがクライアントが接続されている別のサーバを迅速に探索し、コントローラ自らがそのサーバへ接続する。さらには、コントローラが別サーバに接続されたクライアントを元サーバへ再接続させることにより、同一サーバにクライアントとコントローラとが接続した状態にすることができる。以降、オーディオクライアントCLはサーバSVに接続されたコントローラCNからの指示に従い、サーバSVから送信された音楽データの再生、停止などをおこなう。その結果、接続が切断される前と同じコントローラで再びオーディオクライアントをコントロールすることが可能となり、ユーザはクライアントとサーバが再接続したことを意識することなくクライアントを利用できる。
【0060】
[自動ネットワーク接続処理(3)]
次に本発明のさらに別の好ましい実施形態について図11および図12を参照して説明する。前の実施形態と同一部分については説明を省略する。
【0061】
図11は、本発明の好ましい実施形態による自動ネットワーク接続処理を示すブロック図である。本例における自動ネットワーク接続機能は、オーディオクライアントCL(例えば、オーディオクライアントCL1)が何らかの要因でサーバSV(第1のサーバ、例えば、サーバSV1)との接続が切れ、上記自動接続回復機能によってオーディオクライアントCL1が別のサーバ(第2のサーバ、例えば、サーバSV2)に接続された場合(図11の矢印A)、コントローラCN(例えば、コントローラCN1)がブロードキャストすることによってサーバを探索し、発見された各サーバに順次接続してオーディオクライアントCL1を探索する。そして、サーバSV2にオーディオクライアントCL1が接続されていることを見つけると、コントローラCN1はオーディオクライアントCL1が接続されているサーバSV2に接続する(図11の矢印B)。
【0062】
図12は、本発明の好ましい実施形態によるコントローラにおける自動ネットワーク接続処理を示すフロー図である。自動ネットワーク接続処理をより詳細に説明する。接続回復処理後、コントローラCN1は所定期間が経過したか否かを判断する(S1201)。所定期間後、コントローラCN1はまずネットワーク上で稼動しているサーバSVを探索する。具体的には、コントローラCN1はブロードキャストによりサーバSVのサーバ特定情報を取得し(S1202)、表1のサーバリストに取得したサーバ特定情報を登録する(S1203)。次に、コントローラCN1はサーバ特定情報を取得した複数のサーバの中から(すなわちサーバリストの中から)1つのサーバ(例えば、サーバSV2)を選択し、選択したサーバSV2と接続する(S1204)。
【0063】
サーバSV2と接続が確立した後、コントローラCN1はサーバSV2を介してオーディオクライアントCL1を探索する(S1205)。具体的には、コントローラCN1にクライアントリストを要求し、サーバSV2は要求に応じてコントローラCNにクライアントリストを返信し、コントローラCN1はクライアントリストを受信し、これを登録する(S1206)。
【0064】
コントローラCN1は、監視および/または制御対象のクライアントCL1がサーバSV2に接続されているか否かを判断する。すなわち、S1206で登録したクライアントリストの中に表4のクライアント特定情報に登録されているオーディオクライアントCL1のクライアント特定情報が存在するか否かを判断する(S1207)。
【0065】
オーディオクライアントCL1のクライアント特定情報がクライアントリスト内に存在する(すなわちオーディオクライアントCL1がサーバSV1に再接続された)場合(S1207:YES)、コントローラCN1は、オーディオクライアントCL1を制御および/または監視する(S1208)。クライアントリストにオーディオクライアントCL1のクライアント特定情報が存在しない場合(S1207:NO)、コントローラCN1はサーバリストに登録された他のサーバに順次接続し、サーバ毎にクライアントリストを取得し、オーディオクライアントCL1が接続されているか否かを判断する(S1204〜S1207)。
【0066】
以上の動作によって、自動接続回復手段によってクライアントが別サーバに接続された場合であっても、コントローラがクライアントが接続されている別のサーバを迅速に探索し、コントローラ自らがそのサーバへ接続する。その結果、クライアントがサーバを移動した場合でも、再生可能なコンテンツ(音楽データや映像データなど)に影響が無い場合(再生したいコンテンツが接続した先の別サーバにも存在する場合など)は、コントローラおよびクライアントが元のサーバに再接続されずともよく、コントローラが監視および/または制御対象のクライアントが接続された別のサーバに接続するだけで、元の接続状態に戻す事ができ、再び監視および/または制御することができる。
【0067】
オーディオクライアントCLは、図5および図6に示した接続回復プログラムをコンピュータにインストールすることにより上述した自動接続回復機能を備える。さらにオーディオクライアントCLは図8に示したネットワーク接続プログラムをコンピュータにインストールすることにより、また、コントローラCNは図10または図12に示したネットワーク接続プログラムをインストールすることにより上述した自動ネットワーク接続機能を備える。
【0068】
なお、本実施の形態では、オーディオクライアントCLが自動接続回復機能を備えているが、コントローラCNが自動接続回復機能を備えていても良い。
【0069】
また、本実施の形態では、サーバSVが音楽データを蓄積しているが、これに変えて又はこれとともに映像データ(または静止画データ)を蓄積していても良く、その他、様々なコンテンツを蓄積していても良い。また、サーバSV、オーディオクライアントCLおよびコントローラCNはLAN101により相互に接続されるが、これに限定されることは無く、USB、IEEE1394など、コンピュータネットワークを構築するのに適切なものを採用すればよい。LAN101を採用する場合、PC(パーソナルコンピュータ)で標準的なTCP/IPプロトコルを採用するのが好ましいが、UDPプロトコルなどを採用しても良く、プロトコルは特に限定されない。また、図中ではLAN101の基幹配線から枝分かれするようにサーバSV、オーディオクライアントCLおよびコントローラCNが接続されているが、例えば10BASE−Tや100BASE−TXの場合にはハブを中心にしてスター状に接続される。
【0070】
さらに、本発明はクライアントサーバシステムとして述べてきたが、P2P(ピアツーピア)システムにも適用することができる。サーバに相当するピアと、自動ネットワーク接続機能付きクライアントに相当するピアおよび/または自動ネットワーク接続機能付きコントローラに相当するピアとを備えた端末であれば、P2Pシステムの端末として機能することができる。その結果、P2Pシステムにおいても、端末が何らかの要因でネットワークとの接続が切れた場合、クライアントに相当するピアとコントローラに相当するピアとが自動的に再び同一ネットワークに接続することができる。
【0071】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【産業上の利用可能性】
【0072】
本発明の自動ネットワーク接続機能付きクライアントまたはコントローラは、あらゆる用途および規模のクライアントサーバシステムに用いられ得るが、特にネットワークオーディオシステムに好適に用いられ得る。
【図面の簡単な説明】
【0073】
【図1】本発明の好ましい実施形態によるネットワーク型コンテンツ再生システムの全体構成を示すブロック図である。
【図2】本発明の好ましい実施形態によるサーバのハードウェア構成を示すブロック図である。
【図3】本発明の好ましい実施形態によるオーディオクライアントのハードウェア構成を示すブロック図である。
【図4】本発明の好ましい実施形態によるコントローラのハードウェア構成を示すブロック図である。
【図5】本発明の好ましい実施形態によるオーディオクライアントにおける初期接続処理を示すフロー図である。
【図6】本発明の好ましい実施形態によるオーディオクライアントにおける監視処理および接続回復処理を示すフロー図である。
【図7】本発明の好ましい実施形態によるオーディオクライアントにおける接続回復処理を示すブロック図である。
【図8】本発明の好ましい実施形態によるオーディオクライアントにおける自動ネットワーク接続処理を示すフロー図である。
【図9】本発明の好ましい実施形態によるコントローラにおける自動ネットワーク接続処理を示すブロック図である。
【図10】本発明の好ましい実施形態によるコントローラにおける自動ネットワーク接続処理を示すフロー図である。
【図11】本発明の好ましい実施形態によるコントローラにおける自動ネットワーク接続処理を示すブロック図である。
【図12】本発明の好ましい実施形態によるコントローラにおける自動ネットワーク接続処理を示すフロー図である。
【符号の説明】
【0074】
100 ネットワーク型コンテンツ再生システム
101 LAN
201 CPU処理部
202 データベース管理部
203 ネットワークプロトコル処理部
204 LANコントローラ
205 記憶装置
301 マイコン処理部
302 システム動作部
305 メモリ
306 フラッシュメモリ
307 DAC
308 音声処理部
409 入力装置
410 表示装置
CL オーディオクライアント
CN コントローラ
SV サーバ
NW ネットワーク

【特許請求の範囲】
【請求項1】
複数のサーバの少なくとも1つと接続する接続手段と、
第1のサーバとの接続が切断され、該接続手段が該第1のサーバとは異なる第2のサーバに接続した場合に、該第1のサーバを探索する探索手段とを備え、
該探索手段が該第1のサーバを発見した場合に、該接続手段が該第1のサーバと再接続するクライアント。
【請求項2】
前記第1のサーバのサーバ特定情報を登録するサーバ接続履歴手段と、
現在稼動しているサーバのサーバ特定情報をサーバリストに登録するサーバリスト登録手段とをさらに備え、
前記探索手段が、該サーバリスト内に該第1のサーバのサーバ特定情報が存在するか否かを判断する、請求項1に記載のクライアント。
【請求項3】
複数のサーバの少なくとも1つと接続する接続手段と、
クライアントを監視および/または制御する監視/制御手段と、
該クライアントが、第1のサーバとの接続が切断され、該第1のサーバとは異なる第2のサーバに接続した場合に、該クライアントが接続されている第2のサーバを探索する探索手段とを備え、
該探索手段が該第2のサーバを発見した場合に、該接続手段が、該クライアントと同一のサーバに接続する、コントローラ。
【請求項4】
監視および/または制御していた前記クライアントのクライアント特定情報を登録するクライアント監視/制御履歴手段と、
サーバに接続されているクライアントのクライアント特定情報を含むクライアントリストを該サーバから受信するクライアントリスト受信手段とを備え、
前記探索手段が該クライアントリスト内に該クライアントのクライアント特定情報が存在するか否かを判断する、請求項3に記載のコントローラ。
【請求項5】
前記探索手段が、前記クライアントが接続されている前記第2のサーバを発見した場合に、該クライアントを前記第1のサーバに再接続させる手段をさらに備える、請求項3または4に記載のコントローラ。
【請求項6】
前記探索手段が、前記クライアントが接続されている前記第2のサーバを発見した場合に、前記接続手段が該第2のサーバに接続する、請求項3または4に記載のコントローラ。
【請求項7】
複数のサーバの少なくとも1つと接続可能なクライアントを実行させるためのクライアントプログラムであって、
複数のサーバのいずれかと接続するステップと、
該第1のサーバとの接続が切断された場合に、該第1のサーバとは異なる第2のサーバに接続するステップと、
該第1のサーバを探索する探索ステップと、
該探索ステップにおいて、該第1のサーバが発見された場合に、該第1のサーバに再び接続するステップとをコンピュータに実行させる、クライアントプログラム。
【請求項8】
複数のサーバの少なくとも1つと接続可能なコントローラを実行させるためのコントローラプログラムであって、
複数のサーバのいずれかと接続するステップと、
クライアントを監視および/または制御する監視/制御ステップと、
該クライアントが、第1のサーバとの接続が切断され、該第1のサーバとは異なる第2のサーバに接続した場合に、該クライアントが接続されている第2のサーバを探索する探索ステップと、
該探索ステップにおいて該第2のサーバを発見した場合に、該クライアントと同一のサーバに接続するステップとをコンピュータに実行させる、コントローラプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2006−252214(P2006−252214A)
【公開日】平成18年9月21日(2006.9.21)
【国際特許分類】
【出願番号】特願2005−68355(P2005−68355)
【出願日】平成17年3月11日(2005.3.11)
【出願人】(000000273)オンキヨー株式会社 (502)
【Fターム(参考)】