(57)【要約】【課題】複数のデバイスサーバが存在するデバイスサーバシステムにおいて，クライアントと当該複数のデバイスサーバとの間の通信に必要なトラフィックを低減する。【解決手段】デバイスサーバシステムにおいて，クライアントから複数のデバイスサーバにデータを送信する際，従来のデバイスサーバシステムの通信であるセッション型通信にて送信されるデータを複製して，これをマルチキャスト通信にて複数のデバイスサーバに送信する。これにより，セッション型通信を複数使用する場合に比べて，消費するトラフィックを大幅に低減することができる。すなわち，デバイスサーバの数に関わらず，必要なトラフィックを１つのセッション型通信および１つのマルチキャスト通信にだけに限定することができる。【選択図】図２
2014119774.tif 000002
【特許請求の範囲】
【請求項１】
所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントであって，  
前記複数のデバイスサーバのうち，所定のデバイスサーバ（マスターデバイスサーバ）とセッション型通信を行うことにより，当該マスターデバイスサーバと自身との間においてデータの送受信を行うセッション通信手段と，
前記複数のデバイスサーバのうち，前記マスターデバイスサーバを除く他のデバイスサーバ（スレーブデバイスサーバ）に向けて，前記セッション通信手段において前記クライアントから前記マスターデバイスサーバに向けて送信されるデータと同一のデータをマルチキャスト通信にて送信するマルチキャスト通信手段と，
を備えるクライアント。
【請求項２】
前記クライアントは，さらに，
前記クライアントから前記複数のデバイスサーバに向けて送信するデータ（送信データ）が特定のものの場合にのみ，前記マスターデバイスサーバに対する当該送信データの送信を，前記セッション通信手段ではなく，前記マルチキャスト通信手段により行わせるよう切り替える通信切替手段と，
を備える請求項１に記載のクライアント。
【請求項３】
前記クライアントは，さらに，
前記マスターデバイスサーバに接続されている所定のデバイスの動作モードを取得する動作モード取得手段と，
前記スレーブデバイスサーバに接続されている所定のデバイスが動作可能な動作モード（動作可能モード）を取得する動作可能モード取得手段と，
前記動作モード取得手段が取得した動作モードと，前記動作可能モード取得手段が取得した動作可能モードとを比較する動作モード比較手段と，
を備え，
前記動作モード比較手段による比較の結果，前記動作モード取得手段が取得した動作モードが，前記動作可能モード取得手段が取得した動作可能モードに含まれる場合，当該動作可能モードを備える所定のデバイスが接続されたスレーブデバイスサーバについてのみ，前記マルチキャスト通信手段の送信対象とする，
請求項１または２に記載のクライアント。
【請求項４】
所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントであって，
前記クライアント内部において所定のデバイスサーバとの間におけるセッション型通信を疑似的に行う疑似セッション通信手段と，
前記疑似セッション通信手段が実行されている場合にのみ，前記複数のデバイスサーバのうち，少なくとも２以上のデバイスサーバに向けて，前記疑似セッション通信手段において前記クライアントから前記所定のデバイスサーバに向けて送信されるデータと同一のデータを，マルチキャスト通信にて送信するマルチキャスト通信手段と，
を備えるクライアント。
【請求項５】
所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントを，  
前記複数のデバイスサーバのうち，所定のデバイスサーバ（マスターデバイスサーバ）とセッション型通信を行うことにより，当該マスターデバイスサーバと自身との間においてデータの送受信を行うセッション通信手段，
前記複数のデバイスサーバのうち，前記マスターデバイスサーバを除く他のデバイスサーバ（スレーブデバイスサーバ）に向けて，前記セッション通信手段において前記クライアントから前記マスターデバイスサーバに向けて送信されるデータと同一のデータをマルチキャスト通信にて送信するマルチキャスト通信手段，
として機能させるプログラム。
【請求項６】
前記プログラムは，さらに，前記クライアントを
前記クライアントから前記複数のデバイスサーバに向けて送信するデータ（送信データ）が特定のものの場合にのみ，前記マスターデバイスサーバに対する当該送信データの送信を，前記セッション通信手段ではなく，前記マルチキャスト通信手段により行わせるよう切り替える通信切替手段，
として機能させる請求項４に記載のプログラム。
【請求項７】
前記プログラムは，さらに，クライアントを
前記マスターデバイスサーバに接続されている所定のデバイスの動作モードを取得する動作モード取得手段，
前記スレーブデバイスサーバに接続されている所定のデバイスが動作可能な動作モード（動作可能モード）を取得する動作可能モード取得手段，
前記動作モード取得手段が取得した動作モードと，前記動作可能モード取得手段が取得した動作可能モードとを比較する動作モード比較手段，
として機能させ，
前記動作モード比較手段による比較の結果，前記動作モード取得手段が取得した動作モードが，前記動作可能モード取得手段が取得した動作可能モードに含まれる場合，当該動作可能モードを備える所定のデバイスが接続されたスレーブデバイスサーバについてのみ，前記マルチキャスト通信手段の送信対象とする，
請求項５または６に記載のプログラム。
【請求項８】
所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントを，
前記クライアント内部において所定のデバイスサーバとの間におけるセッション型通信を疑似的に行う疑似セッション通信手段，
前記疑似セッション通信手段が実行されている場合にのみ，前記複数のデバイスサーバのうち，少なくとも２以上のデバイスサーバに向けて，前記疑似セッション通信手段において前記クライアントから前記所定のデバイスサーバに向けて送信されるデータと同一のデータを，マルチキャスト通信にて送信するマルチキャスト通信手段，
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデバイスサーバシステムに関し，特に単一のクライアントと複数のデバイスサーバとが通信を行うシステムに関する。
【背景技術】
【０００２】
ネットワークを通じて，コンピュータ周辺機器であるデバイスを当該ネットワークに接続しているクライアントから利用することのできるシステム（デバイスサーバシステム）が知られている（非特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【非特許文献１】サイレックス・テクノロジー株式会社ホームページ＜http://www.silex.jp/products/usbdeviceserver/sx3000gb.html＞
【０００４】
デバイスサーバシステムでは，クライアントのデバイスドライバが発行したコマンドがネットワークパケットに変換され，これがクライアントからデバイスサーバに向けて送信される。当該パケットを受信したデバイスサーバは，受信したネットワークパケットに含まれるコマンドを取り出し，自身に接続しているデバイスに転送する。
【０００５】
一方，デバイスサーバは，デバイスより受け取った応答をネットワークパケットに変換し，これをコマンドの送信元であるクライアントに送信する。
【０００６】
こうすることにより，デバイスサーバシステムでは，ネットワークを経由してクライアントからデバイスを利用することができる。
【０００７】
上記したクライアントとデバイスサーバとの間の通信は，通常は，セッション型通信（たとえばＴＣＰ）を用いて行われる。
【０００８】
図１は，デバイスサーバシステムにおけるシステム全体図の一例である。クライアント１０１とデバイスサーバ１０２，１０３，および１０４がネットワーク接続されている。各デバイスサーバには，キーボード１０５，１０６および１０７，ならびに変換デバイス１０８，１０９および１１０がＵＳＢインタフェースを通じて接続されている。なお，変換デバイスには映像を表示するモニタ１１１，１１２および１１３がＲＧＢ信号のケーブルにて接続されている。
【０００９】
各キーボードは単に入力手段としてのデバイスである。一方，各変換デバイスは，ＵＳＢの信号に含まれる映像データを映像信号であるＲＧＢに変換する装置である。
【００１０】
デバイスサーバシステムは，デバイスサーバに接続されているデバイスをクライアントに直接接続されているかのように擬制するものである。このため，各デバイスサーバに接続されているキーボードを操作することで，クライアント１０１に対してデータを入力することが可能であるとともに，各モニタにクライアント１０１から出力された映像データを表示することができる。
【００１１】
キーボードから入力されたデータや映像データを送受信する場合，クライアント１０１と各デバイスサーバとの間にＴＣＰのセッションを生成しこのセッションを用いて通信（ＴＣＰ通信）する。
【００１２】
図では３台のデバイスサーバしか存在しないが，デバイスサーバシステムは，より多くのデバイスサーバを使用することも可能である。デバイスサーバの数に応じて，ＴＣＰのセッションを確保すればよいだけである。
【００１３】
ところが，図１に示すように映像データをクライアントからデバイスサーバに送信する場合，以下で説明するようにネットワークトラフィックに関する問題があった。
【００１４】
一般に映像データのデータ量は他の種類のデータ（たとえばコマンド）と比較し，圧倒的に多い。したがって，クライアント１０１から出力された映像データを連続的にデバイスサーバに送信することは，多くのネットワークトラフィックを消費する。さらに，消費するネットワークトラフィックはデバイスサーバごとに独立であり，デバイスサーバの数に比例してトラフィックが増加するため，ネットワーク環境に依存して使用可能なデバイスサーバの数が事実上制限されてしまうという問題があった。
【発明の概要】
【発明が解決しようとする課題】
【００１５】
本発明はかかる課題を解決するものである。複数のデバイスサーバが存在するデバイスサーバシステムにおいて，クライアントと当該複数のデバイスサーバとの間の通信に必要なトラフィックを低減することを目的とする。
【課題を解決するための手段】
【００１６】
本発明にかかる第１の形態は，所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントであって，複数のデバイスサーバのうち，所定のデバイスサーバ（マスターデバイスサーバ）とセッション型通信を行うことにより，当該マスターデバイスサーバと自身との間においてデータの送受信を行うセッション通信手段と，複数のデバイスサーバのうち，マスターデバイスサーバを除く他のデバイスサーバ（スレーブデバイスサーバ）に向けて，セッション通信手段においてクライアントからマスターデバイスサーバに向けて送信されるデータと同一のデータをマルチキャスト通信にて送信するマルチキャスト通信手段を備えるクライアントである。
【００１７】
好ましくは，クライアントは，さらに，クライアントから複数のデバイスサーバに向けて送信するデータ（送信データ）が特定のものの場合にのみ，マスターデバイスサーバに対する当該送信データの送信を，セッション通信手段ではなく，マルチキャスト通信手段により行わせるよう切り替える通信切替手段を備える。
【００１８】
好ましくは，クライアントは，さらに，マスターデバイスサーバに接続されている所定のデバイスの動作モードを取得する動作モード取得手段と，スレーブデバイスサーバに接続されている所定のデバイスが動作可能な動作モード（動作可能モード）を取得する動作可能モード取得手段と，動作モード取得手段が取得した動作モードと，動作可能モード取得手段が取得した動作可能モードとを比較する動作モード比較手段と，を備え，動作モード比較手段による比較の結果，動作モード取得手段が取得した動作モードが，動作可能モード取得手段が取得した動作可能モードに含まれる場合，当該動作可能モードを備える所定のデバイスが接続されたスレーブデバイスサーバについてのみ，マルチキャスト通信手段の送信対象とする。
【００１９】
本発明にかかる第２の形態は，所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントであって，  クライアント内部において所定のデバイスサーバとの間におけるセッション型通信を疑似的に行う疑似セッション通信手段と，疑似セッション通信手段が実行されている場合にのみ，複数のデバイスサーバのうち，少なくとも２以上のデバイスサーバに向けて，疑似セッション通信手段においてクライアントから所定のデバイスサーバに向けて送信されるデータと同一のデータを，マルチキャスト通信にて送信するマルチキャスト通信手段を備えるクライアントである。
【００２０】
本発明にかかる第３の形態は，所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントを，複数のデバイスサーバのうち，所定のデバイスサーバ（マスターデバイスサーバ）とセッション型通信を行うことにより，当該マスターデバイスサーバと自身との間においてデータの送受信を行うセッション通信手段，複数のデバイスサーバのうち，マスターデバイスサーバを除く他のデバイスサーバ（スレーブデバイスサーバ）に向けて，セッション通信手段においてクライアントからマスターデバイスサーバに向けて送信されるデータと同一のデータをマルチキャスト通信にて送信するマルチキャスト通信手段として機能させるプログラムである。
【００２１】
好ましくは，プログラムは，さらに，クライアントをクライアントから複数のデバイスサーバに向けて送信するデータ（送信データ）が特定のものの場合にのみ，マスターデバイスサーバに対する当該送信データの送信を，セッション通信手段ではなく，マルチキャスト通信手段により行わせるよう切り替える通信切替手段として機能させる。
【００２２】
好ましくは，プログラムは，さらに，クライアントをマスターデバイスサーバに接続されている所定のデバイスの動作モードを取得する動作モード取得手段，スレーブデバイスサーバに接続されている所定のデバイスが動作可能な動作モード（動作可能モード）を取得する動作可能モード取得手段，動作モード取得手段が取得した動作モードと，動作可能モード取得手段が取得した動作可能モードとを比較する動作モード比較手段，として機能させ，動作モード比較手段による比較の結果，動作モード取得手段が取得した動作モードが，動作可能モード取得手段が取得した動作可能モードに含まれる場合，当該動作可能モードを備える所定のデバイスが接続されたスレーブデバイスサーバについてのみ，マルチキャスト通信手段の送信対象とする。
【００２３】
本発明にかかる第４の形態は，所定のデバイスが各々接続されている複数のデバイスサーバとクライアントとが，ネットワーク接続されているデバイスサーバシステムにおけるクライアントを，クライアント内部において所定のデバイスサーバとの間におけるセッション型通信を疑似的に行う疑似セッション通信手段，疑似セッション通信手段が実行されている場合にのみ，複数のデバイスサーバのうち，少なくとも２以上のデバイスサーバに向けて，疑似セッション通信手段においてクライアントから所定のデバイスサーバに向けて送信されるデータと同一のデータを，マルチキャスト通信にて送信するマルチキャスト通信手段として機能させるプログラムである。
【発明の効果】
【００２４】
本発明によれば，デバイスサーバシステムにおいて，クライアントから複数のデバイスサーバにデータを送信する際，従来のデバイスサーバシステムの通信であるセッション型通信にて送信されるデータを複製して，これをマルチキャスト通信にて複数のデバイスサーバに送信する。これにより，セッション型通信を複数使用する場合に比べて，消費するトラフィックを大幅に低減することができる。
【発明を実施するための形態】
【００２５】
以下では図面を参照し本発明に係る実施例を説明する。なお，特に断りのない限り，図面において同じ番号を付した要素は，同じものを示す。
［実施例１］
［システム全体図］
【００２６】
図１は本発明にかかるシステム全体図の一例である。詳細は上述のとおりであるため，説明は省略する。
［本発明にかかるデータ送信］
【００２７】
図２は本発明にかかるデータ送信の一例である。デバイスサーバシステムの構成は，図１で説明したものと同じである。
【００２８】
本発明におけるデータ送信の特徴は，デバイスサーバとクライアントとの間の通信に，従来のセッション型通信であるＴＣＰ通信に加え，マルチキャスト通信を使用する点である。たとえば，クライアント１０１とデバイスサーバ１０２との間の通信はＴＣＰ通信を使用し，その他のデバイスサーバ，つまりデバイスサーバ１０３およびデバイスサーバ１０４との間の通信はマルチキャスト通信を使用する。
【００２９】
クライアント１０１とデバイスサーバ１０２との間の通信はＴＣＰ通信を使用することから，クライアント１０１との間の通信は，双方向通信となる。つまり，クライアント１０１からデバイスサーバ１０２への通信だけでなく，デバイスサーバ１０２からクライアント１０１への通信も行える。たとえば，キーボード１０５の入力をクライアント１０１に向けて送信することが可能である。
【００３０】
一方，クライアント１０１と，デバイスサーバ１０３および１０４との間の通信は，マルチキャスト通信であるため，クライアント１０１からそれぞれのデバイスサーバに向けての片方向通信となる。したがって，キーボード１０６およびキーボード１０７によって入力されたデータはクライアント１０１に向けて送信されない。
【００３１】
このように本発明におけるデータ送信の特徴は，ＴＣＰ通信だけでなく，ＴＣＰ通信とマルチキャスト通信を併用する点にある。
［接続要求処理タスク１］
【００３２】
図３はクライアント１０１の動作フローの一部である。これはデバイスサーバとクライアント１０１との間の接続，すなわちＴＣＰ通信を確立するためのものである。この接続は，クライアント１０１またはデバイスサーバのどちらがトリガとなってもよいが，本実施例ではデバイスサーバからクライアント１０１に対して接続を試みている。
【００３３】
ステップ３０１にて，デバイスサーバから送信された接続要求を受信したかどうかを判断する。この結果，受信していれば次のステップに進み，そうでなければ当該判断を繰り返す。
【００３４】
ステップ３０２にて，マスターが存在するかどうかを判断する。ここでのマスターとは，すでにＴＣＰ通信による接続を確立しているデバイスサーバのことであり，これが存在するかどうかを判断する。本発明は，デバイスサーバとの間のＴＣＰ通信を最小限に抑制することが狙いであるため，ＴＣＰにて接続することができるデバイスサーバの数に上限を設けているわけである。本実施例ではマスターになることができるデバイスサーバは１台としている。判断の結果，すでにマスターが存在する場合，ステップ３０３に進み，そうでない場合ステップ３０４に進む。
【００３５】
ステップ３０３にて，ステップ３０１にて受信した接続要求の送信元デバイスサーバに対して，当該デバイスサーバがスレーブである旨を応答する。すなわち，すでにマスターとなるデバイスサーバが存在するので，スレーブであることを接続要求の送信元デバイスサーバに対して通知し認識させるわけである。自身がスレーブであることを認識したデバイスサーバは，後に説明するマルチキャスト通信を受信した際，これを読み捨てることなく通常のＴＣＰ接続時と同様に処理することとなる。
【００３６】
ステップ３０４にて，ステップ３０１にて受信した接続要求の送信元デバイスサーバに対して，当該デバイスサーバがマスターである旨を応答する。すなわち，マスターが存在しないので，マスターであることを接続要求の送信元デバイスサーバに対して通知し認識させるわけである。
【００３７】
ステップ３０５にて，クライアント１０１とデバイスサーバはＴＣＰ通信が可能な接続を確立する。これによりクライアント１０１とデバイスサーバに接続されているデバイスとの間で双方向通信が可能になる。
【００３８】
このように接続要求処理タスク１は，接続要求を送信したデバイスサーバがマスターまたはスレーブのいずれで動作するかを決定するタスクである。
［データ送信タスク］
【００３９】
図４はクライアント１０１の動作フローの一部である。特に，クライアント１０１からデバイスサーバに向けてデータ送信する際のフローである。
【００４０】
ステップ４０１にて，送信するデータがあるかどうかを判断する。つまり，デバイスサーバに向けて送信すべきデータ（例えば，映像データ）があるかどうかを判断する。判断の結果，データが存在すれば次のステップに進み，そうでなければ当該判断を繰り返す。
【００４１】
ステップ４０２にて，スレーブが存在するかどうかを判断する。つまり，デバイスサーバの中に，マスターであるデバイスサーバだけでなくスレーブとなっているデバイスサーバが存在するかどうかを判断する。判断の結果，スレーブが存在すればステップ４０３および４０４に進み，そうでなければステップ４０４のみに進む。
【００４２】
ステップ４０３にて，スレーブに向けてマルチキャスト通信にてデータを送信する。このマルチキャスト通信は，ネットワーク環境により，複数存在するデバイスサーバのうち，スレーブに認定されたもののみに到達する場合と，すべてのデバイスサーバに到達する場合とが存在する。マルチキャスト通信の特性上，本来は，スレーブに認定されたもののみに到達するのであるが，これには専用のネットワークハブなどが必要となるため，このネットワークハブが存在しないネットワーク環境の場合には，すべてのデバイスサーバに到達する。この場合，上述したように，スレーブとなっているデバイスサーバだけが，このマルチキャスト通信を処理する。
【００４３】
ステップ４０４にて，マスターに向けてＴＣＰ通信にてデータを送信する。
【００４４】
このように，スレーブが存在する場合には，マスターに対するＴＣＰ通信に加え，スレーブに対してはマルチキャスト通信にてデータ送信する。一方，マスターしか存在しない場合には，ＴＣＰ通信のみ使用することとなる。マスターからスレーブに向けて送信される通信はマルチキャスト通信であるため，スレーブの数に関係なく常に一定のトラフィックしか発生しない。このため，スレーブの数が多いほど，本実施例によるトラフィック軽減の効果が大きくなる。
［実施例２］
【００４５】
先の実施例は，各デバイスサーバに接続している変換デバイス，さらにはその先のモニタがすべて同一能力であるという前提のものであった。しかし，実際には，たとえば必ずしも同一能力のモニタが接続しているとは限らない場合もある。モニタごとに対応する解像度が異なるなどである。本実施例ではそのような場合について説明する。
［接続要求タスク２］
【００４６】
図５は本実施例にかかる接続要求タスクである。先の実施例との違いは，ステップ５０１，５０２および５０３である。その他のステップは同一であるため説明を省略する。
【００４７】
ステップ５０１にて，接続要求を送信したデバイスサーバ，この場合スレーブの候補であるデバイスサーバに対して，解像度を要求する。具体的には，スレーブのデバイスサーバに接続しているモニタが動作可能な解像度の情報である。得られる情報は単一の場合や複数の場合がある。
【００４８】
ステップ５０２にて，解像度を受信したかどうかを判断し，受信していれば次のステップ進み，そうでなければ当該判断を繰り返す。
【００４９】
ステップ５０３にて，受信した解像度（１または複数）の中に，マスターに接続しているモニタが使用している解像度が存在するかどうかを判断する。つまり，マスターのモニタが使用している解像度を，スレーブのモニタも使用（サポート）できるかどうかを判断する。
【００５０】
判断の結果，サポートしていればステップ３０３に進み，スレーブである旨を応答し，そうでなければステップ３０１に戻る。つまり，スレーブの解像度とマスターの解像度に共通点が無い場合，接続要求を送信したデバイスサーバはスレーブになることができないわけである。結果として，ステップ４０３にて行われるマルチキャスト送信は，解像度についてマスターとの共通点が存在するスレーブのみが送信対象となる。
【００５１】
解像度比較の様子を図６を例に説明する。接続要求を送信したデバイスサーバ（つまりスレーブ候補）が動作可能な解像度が，図の左側にリストされている。一方，マスターが動作中の解像度が図の右側に表示されている。上段の図の場合，マスターが動作中である１２８０ｘ１０２４という解像度がスレーブ候補の動作可能解像度に含まれるため，サポート可能と判断する。一方，下段の図の場合，マスターが動作中である１８００ｘ１６００という解像度がスレーブ候補の動作可能解像度に含まれないため，サポート不可と判断する。
【００５２】
なお，モニタの解像度が異なるということは，変換デバイスの動作モードが異なることを意味する。たとえば，変換デバイス自体は同じものであっても，モニタの解像度が異なると，その動作モードが異なる。このため，実際には，変換デバイスの動作モードによってスレーブにすべきかどうかを判断することとなる。
【００５３】
本実施例によれば，所定のデバイスサーバをスレーブにすべきかどうかについて，当該所定のデバイスサーバに接続されているデバイスの能力に基づいて判断することができる。これにより，複数のデバイスサーバが存在するデバイスサーバシステムにおいて，各デバイスサーバの利用効率を向上させることができる。つまり，スレーブに適していないと判断されたデバイスサーバは，異なる用途でマスターやスレーブとなることができるわけである。
［実施例３］
【００５４】
これまでの実施例では，クライアントとマスターとの間の通信に，セッション型通信であるＴＣＰ通信を使用し，スレーブに対してはマルチキャスト通信を使用した。本実施例では，送信するデータが特定のものである場合，マスターに対する通信にＴＣＰ通信を使用せず，マルチキャスト通信を使用する。
【００５５】
既に述べたように，マルチキャスト通信はＴＣＰ通信とは異なり片方向の通信である。このため，一般的には，多少のパケットロストなどが比較的許容されることが多い映像や音声データといったものの送信に利用される。本実施例では，この特性を利用して，クライアントから送信されるデータが映像または音声データである場合，ＴＣＰ通信を用いず，マルチキャスト通信のみを用いる。つまり，マスターに向けた送信を，ＴＣＰ通信からマルチキャスト通信に切り替えるわけである。
【００５６】
この切り替えは，すでにＴＣＰ通信が存在することを前提として，これをマルチキャスト通信に切り替えることをいう。つまり，ＴＣＰ通信が使用されていない状態において，マルチキャスト通信を用いることではない。図３のステップ３０５で説明したように，デバイスサーバシステムを利用するには，クライアントとデバイスサーバに接続されているデバイスとの接続動作が必要となる。この接続には双方向通信が必要となることからＴＣＰ通信を用いる。しかし，接続後は必ずしもＴＣＰ通信を使う必要がないことから，本実施例で示したように，送信データが特定のものである場合のみ，すでに存在するＴＣＰ通信ではなく，マルチキャスト通信に切り替えて送信するわけである。
【００５７】
これにより，ＴＣＰ通信で消費していたネットワークトラフィックを抑制することができる。もちろん，映像または音声データ以外のデータを送受信する場合には，ＴＣＰ通信のセッションを使用して通信を行う。
【００５８】
なお，マルチキャスト通信にて送信するデータの種類は，映像や音声データに限定されず，実際のデータの種類に応じて柔軟に決定することが可能である。たとえば，映像や音声データ以外であっても，パケットロスト等が許容されるデータであると判断した場合に，マルチキャスト通信にて送信するようにすることもできる。
【００５９】
本実施例によれば，特定の場合にマスターに対する通信にマルチキャスト通信を用いることができるため，マスターに対して用いるＴＣＰ通信にかかるトラフィックを軽減することができる。なお，マスターに対する双方向通信が必要な場合は，ＴＣＰ通信を復活させることもできる。この場合，ＴＣＰ通信にかかるトラフィックは，マルチキャスト通信に加え余分に消費することとなる。
［その他の実施形態］
【００６０】
これまでの実施例では，デバイスサーバの種別としてマスターとスレーブが存在した。しかし，本発明にかかるデバイスサーバシステムは，実体としてのマスターを用いることなく実現することも可能である。
【００６１】
その手段は，クライアント内部で，仮想的にマスターとのＴＣＰ通信を行うことである。具体的には，クライアント内部にて仮想的なマスターを生成し，当該マスターとのＴＣＰ通信を疑似的に行う（疑似ＴＣＰ通信を行う）ことである。当該疑似ＴＣＰ通信はクライアント内部にて完結するため，実際のトラフィックは発生しない。
【００６２】
現実の動作としては，所定のトリガに基づいて，実際のＴＣＰ通信と疑似ＴＣＰ通信とを適宜切り替えて行えばよい。他方，デバイスサーバとの通信を開始する時点から実際のＴＣＰ通信を使用せず，疑似ＴＣＰ通信のみを利用することで，マルチキャスト通信だけを用いてデバイスサーバにデータ送信することも可能である。
【００６３】
これにより，本発明にかかるデバイスサーバシステムにおいて，実体としてのマスターを用いることなく，すべてのスレーブに向けてマルチキャストにてデータ送信することができる。結果として，実際に発生するトラフィックを，マルチキャスト通信に必要なもののみにすることができる。つまり，マスターに対するＴＣＰ通信のトラフィックを削減できるわけである。
［まとめ］
【００６４】
本発明によれば，デバイスサーバシステムにおいて，クライアントから複数のデバイスサーバにデータを送信する際，従来のデバイスサーバシステムの通信であるセッション型通信にて送信されるデータを複製して，これをマルチキャスト通信にて複数のデバイスサーバに送信する。これにより，セッション型通信を複数使用する場合に比べて，消費するトラフィックを大幅に低減することができる。
【図面の簡単な説明】
【００６５】
【図１】システム全体図
【図２】本発明におけるデータ送信
【図３】接続要求処理タスク１
【図４】データ送信タスク
【図５】接続要求処理タスク２
【図６】解像度比較の様子
【符号の説明】
【００６６】
４０３  マルチキャスト通信
４０４  ＴＣＰ通信
【図１】
2014119774.tif 000003
【図２】
2014119774.tif 000004
【図３】
2014119774.tif 000005
【図４】
2014119774.tif 000006
【図５】
2014119774.tif 000007
【図６】
2014119774.tif 000008