(57)【要約】【課題】ＩＰネットワークに直結され、ホストコンピュータからＩＰネットワークを介して、ＵＳＢデバイス以外の入出力デバイスを制御できるドライブ装置を提供する。【解決手段】ネットワークＩ／Ｆと、ホストコンピュータとの間でネットワークを介してＩＰパケットを送受信する通信制御ドライバと、ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する、或いは、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するトンネリングドライバと、ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出、或いは、アプリケーションデータからＵＳＢデバイスアプリケーションデータを生成するアプリケーションデータ変換部と、入出力デバイスに対してアプリケーションデータを入出力する入出力デバイスドライバを備え、ホストコンピュータとネットワークを介して接続される。【選択図】図２
2015106200.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータとネットワークを介して接続される入出力デバイスドライブ装置であって、
ネットワークＩ／Ｆと、
ホストコンピュータとの間でネットワークを介してＩＰパケットを送受信する通信制御ドライバと、
ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する、或いは、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するトンネリングドライバと、
ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出、或いは、アプリケーションデータからＵＳＢデバイスアプリケーションデータを生成するアプリケーションデータ変換部と、
入出力デバイスに対してアプリケーションデータを入出力する入出力デバイスドライバ、
を備えることを特徴とする入出力デバイスドライブ装置。
【請求項２】
前記入出力デバイスドライブ装置にスピーカーが接続され、
前記トンネリングドライバが、受信したＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化し、
前記アプリケーションデータ変換部が、ＵＳＢデバイスアプリケーションデータからオーディオデータを抽出し、
前記入出力デバイスドライバが、スピーカーＩ／Ｆに合致したデータ形式に変換してオーディオデータを出力する、
ことを特徴とする請求項１の入出力デバイスドライブ装置。
【請求項３】
前記入出力デバイスドライブ装置にスキャナが接続され、
前記入出力デバイスドライバが、少なくともスキャナからスキャナデータを入力し、
前記アプリケーションデータ変換部が、少なくともスキャナデータからＵＳＢデータ形式に合致したＵＳＢデバイスアプリケーションデータに変換し、
前記トンネリングドライバが、少なくともＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する、
ことを特徴とする請求項１の入出力デバイスドライブ装置。
【請求項４】
ホストコンピュータと、
入出力デバイスが直結された入出力デバイスドライブ装置と、
がネットワークを介して接続されるシステムにおける入出力ドライブ方法であって、
１）ホストコンピュータに搭載されたアプリケーションが、ローカル接続されたＵＳＢデバイスに出力するようにＵＳＢデバイスドライバに対してデータ出力するステップ、
２）ホストコンピュータのトンネリングドライバが、前記ＵＳＢデバイスドライバが出力したＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化するステップ、
３）ホストコンピュータの通信制御ドライバがＩＰパケットを入出力デバイスドライブ装置に送信するステップ、
４）入出力デバイスドライブ装置の通信制御ドライバがＩＰパケットを受信するステップ、
５）入出力デバイスドライブ装置のトンネリングドライバが、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するステップ、
６）入出力デバイスドライブ装置のアプリケーションデータ変換部が、ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出するステップ、
７）入出力デバイスドライブ装置の入出力デバイスドライバが前記入出力デバイスのデータＩ／Ｆに合致するデータに変換してアプリケーションデータを出力するステップ、
を備えることを特徴とする入出力デバイスドライブ方法。
【請求項５】
ホストコンピュータと、
入出力デバイスが直結された入出力デバイスドライブ装置と、
がネットワークを介して接続されるシステムにおける入出力ドライブ方法であって、
１）入出力デバイスドライブ装置の入出力デバイスドライバが前記入出力デバイスのアプリケーションデータを入力するステップ、
２）入出力デバイスドライブ装置のアプリケーションデータ変換部が、入力したアプリケーションデータをＵＳＢデバイスアプリケーションデータに変換するステップ、
３）入出力デバイスドライブ装置のトンネリングドライバが、ＵＳＢデバイスアプリケーションデータにＩＰパケットにカプセル化するステップ、
４）入出力デバイスドライブ装置の通信制御ドライバがＩＰパケットをホストコンピュータに送信するステップ、
５）ホストコンピュータの通信制御ドライバがＩＰパケットを入出力デバイスドライブ装置から受信するステップ、
６）ホストコンピュータのトンネリングドライバが、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化してＵＳＢデバイスドライバに引き渡すステップ、
７）ホストコンピュータに搭載されたアプリケーションが、ローカル接続されたＵＳＢデバイスから入力するようにＵＳＢデバイスドライバからデータ入力するステップ、
を備えることを特徴とする入出力デバイスドライブ方法。
【請求項６】
ホストコンピュータと、
入出力デバイスが直結された入出力デバイスドライブ装置と、
がネットワークを介して接続されるシステムであって、
ａ）ホストコンピュータは、
ローカル接続されたＵＳＢデバイスに出力するようにＵＳＢデバイスドライバに対してデータ出力するアプリケーション、
前記ＵＳＢデバイスドライバが出力したＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化するトンネリングドライバ、
ＩＰパケットを入出力デバイスドライブ装置に送信する通信制御ドライバ、
を備え、
ｂ）入出力デバイスドライブ装置は、
ＩＰパケットを受信する通信制御ドライバ、
ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するトンネリングドライバ、
ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出するアプリケーションデータ変換部、
前記入出力デバイスのデータＩ／Ｆに合致するデータに変換してアプリケーションデータを出力する入出力デバイスドライバ、
を備えることを特徴とする入出力デバイスドライブシステム。
【請求項７】
ホストコンピュータと、
入出力デバイスが直結された入出力デバイスドライブ装置と、
がネットワークを介して接続されるシステムであって、
ａ）ホストコンピュータは、
ＩＰパケットを入出力デバイスドライブ装置から受信する通信制御ドライバ、
ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化してＵＳＢデバイスドライバに引き渡すトンネリングドライバ、
トンネリングドライバからデカプセル化したＵＳＢデバイスアプリケーションデータを受取り、アプリケーションに渡すＵＳＢデバイスドライバ、
ローカル接続されたＵＳＢデバイスから入力するようにＵＳＢデバイスドライバからデータ入力するアプリケーション、
を備え、
ｂ）入出力デバイスドライブ装置は、
前記入出力デバイスのアプリケーションデータを入力する入出力デバイスドライバ、
入力したアプリケーションデータをＵＳＢデバイスアプリケーションデータに変換するアプリケーションデータ変換部、
ＵＳＢデバイスアプリケーションデータにＩＰパケットにカプセル化するトンネリングドライバ、
ＩＰパケットをホストコンピュータに送信する通信制御ドライバ、
を備えることを特徴とする入出力デバイスドライブシステム。
【請求項８】
前記入出力デバイスドライバは、前記アプリケーションデータ変換部が抽出したオーディオデータをＩ２Ｓ（Inter-IC Sound）規格に準拠した信号に変換し、前記スピーカーＩ／Ｆにオーディオデータを出力することを特徴とする請求項２の入出力デバイスドライブ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Internet Protocol）ネットワークを介して制御される入出力デバイスのドライブ装置、ドライブ方法およびドライブシステムに関するものである。
【背景技術】
【０００２】
近年、有線ＬＡＮ（Ｌｏｃａｌ
Ａｒｅａ Ｎｅｔｗｏｒｋ）または無線ＬＡＮなどのＩＰネットワークはますます広がり、人々の生活のインフラとなっている。ネットワークＩ／Ｆ（インタフェース）の低価格化も進んでいる。
また、コンピュータにローカル接続されていた周辺機器は、ＩＰネットワークが周辺機器の制御データの送受信に十分耐えるほど高速化した現在において、ＩＰネットワークを介して、コンピュータからの制御が可能になってきている。
このような状況下、ＩＰネットワークを通じて、コンピュータの周辺機器であるＵＳＢ（Ｕｎｉｖｅｒｓａｌ Ｓｅｒｉａｌ Ｂｕｓ）デバイスを当該ネットワークに接続しているコンピュータから利用することのできるＵＳＢデバイスサーバシステムが知られている（特許文献１、非特許文献１を参照）。
【０００３】
ＵＳＢデバイスサーバシステムでは、ホストコンピュータのＵＳＢデバイスドライバが発行した制御コマンド等のＵＳＢデータがＩＰパケットに変換され（カプセル化）、これがホストコンピュータからＵＳＢデバイスサーバに向けて送信される。ＩＰパケットを受信したＵＳＢデバイスサーバは、受信したＩＰパケットに含まれる制御コマンド等のＵＳＢデータを取り出し（デカプセル化）、ＵＳＢ通信に変換してＵＳＢデバイスサーバ自身にローカル接続されているＵＳＢデバイスに転送する。
【０００４】
ＵＳＢデバイスサーバとＵＳＢデバイスとの間における通信は、ＵＳＢ規格の通信に準じている。例えば、ホストコンピュータからＵＳＢデバイスへの送信の場合、ホストコンピュータからＵＳＢデバイスサーバを経由してＵＳＢデバイスにデータを送信するとともに、随時、ＵＳＢデバイスのステータスに関する応答をホストコンピュータはＵＳＢデバイスサーバ経由で受信する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２８７４５３号公報
【非特許文献】
【０００６】
【非特許文献１】サイレックス・テクノロジー株式会社ホームページ＜http://www.silex.jp/products/usbdeviceserver/sx3000gb.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来、ホストコンピュータがＩＰネットワークを介してＵＳＢデバイスを制御する場合、上述のＵＳＢデバイスサーバが利用されている。
ＵＳＢデバイスサーバを用いることで、ＬＡＮなどネットワーク接続したＵＳＢデバイスは、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用できるので、ＵＳＢデバイスのドライバやＵＳＢデバイス付属のアプリケーションソフトウェアもそのまま利用することが可能になるというメリットがある。
【０００８】
しかしながら、従来のＵＳＢデバイスサーバの場合、あくまでＵＳＢデバイスを制御することが前提であり、ＵＳＢデバイス以外の入出力デバイスを制御することはできなかった。ＵＳＢデバイス以外の入出力デバイスに対して、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用できる装置、方法、システムは知られていない。
【０００９】
上記事情に鑑みて、本発明は、ＩＰネットワークに直結され、ホストコンピュータからＩＰネットワークを介して、ＵＳＢデバイス以外の入出力デバイスを制御できるドライブ装置、ドライブ方法およびドライブシステムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成すべく、本発明の入出力デバイスドライブ装置は、ホストコンピュータとネットワーク（ＬＡＮ）を介して接続され、下記１）〜５）から構成される。
１）ネットワークＩ／Ｆ
２）ホストコンピュータとの間でネットワーク（ＬＡＮ）を介してＩＰパケットを送受信する通信制御ドライバ
３）ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する、或いは、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するトンネリングドライバ
４）ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出、或いは、アプリケーションデータからＵＳＢデバイスアプリケーションデータを生成するアプリケーションデータ変換部
５）入出力デバイスに対してアプリケーションデータを入出力する入出力デバイスドライバ
【００１１】
上記構成の入出力デバイスドライブ装置によれば、ネットワークＩ／ＦやＵＳＢＩ／Ｆを有しない入出力デバイスを、ＩＰネットワークを介してホストコンピュータから制御でき、かつ、ホストコンピュータのアプリケーションは、あたかもローカルに接続されたＵＳＢデバイスのようにデータを処理できる。
【００１２】
上記１）のネットワークＩ／Ｆは、ハードウェアで構成される。その他の上記２）〜５）はソフトウェアで実現される。
上記２）の通信制御ドライバは、ホストコンピュータとの間でＩＰパケットを送受信するものであり、ＴＣＰ／ＩＰ（Transmission Control Protocol／Internet
Protocol）に従って処理するドライバプログラムである。
上記３）のトンネリングドライバは、ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する、或いは、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するプログラムである。
【００１３】
上記４）のアプリケーションデータ変換部は、ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出、或いは、アプリケーションデータからＵＳＢデバイスアプリケーションデータを生成するプログラムである。
上記５）の入出力デバイスドライバは、入出力デバイスに対してアプリケーションデータの入出力（Ｉ／Ｏ）を実現する。
【００１４】
上記の本発明の入出力デバイスドライブ装置において、入出力デバイスドライブ装置にスピーカーが接続される場合、トンネリングドライバが、受信したＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化し、アプリケーションデータ変換部が、ＵＳＢデバイスアプリケーションデータからオーディオデータを抽出し、入出力デバイスドライバが、スピーカーＩ／Ｆに合致したデータ形式に変換してオーディオデータを出力する。
【００１５】
ここで、ＵＳＢデバイスアプリケーションデータから抽出するオーディオデータとは、例えば、ＵＳＢオーディオの場合、Ｌ−Ｒ ２ｃｈのＰＣＭオーディオデータなどが挙げられる。入出力デバイスドライバは、Ｌ−Ｒ ２ｃｈのＰＣＭオーディオデータなどをスピーカーＩ／Ｆに対して出力する。また、スピーカーＩ／Ｆへの物理接続は、ディジタル信号ケーブルを介する接続、ＳＰＩ（シリアル・ペリフェラル・インタフェース）など他の接続Ｉ／Ｆでも構わない。つまり、入出力デバイスドライバが、スピーカーＩ／Ｆに合致した形式のデータを出力し、スピーカーＩ／Ｆで、スピーカーから出力できるデータ形式に変換（例えば、ディジタル／アナログ変換）を行うことで、スピーカーから音声を出力させる。特に、入出力デバイスドライバは、アプリケーションデータ変換部が抽出したオーディオデータをＩ２Ｓ（Inter-IC Sound）規格に準拠した信号に変換することにより、スピーカー側でＩ２Ｓディジタル信号を音声用のＤ／Ａコンバータ（ＤＡＣ）を用いてアナログ信号に変換し、アナログ信号をシンプルに電力増幅しスピーカーを駆動できる。上記構成によれば、ＵＳＢデバイスではないスピーカーに対して、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用することができる。
【００１６】
また、上記の本発明の入出力デバイスドライブ装置において、入出力デバイスドライブ装置にスキャナが接続される場合、入出力デバイスドライバが、少なくともスキャナ制御部からスキャナデータを入力し、アプリケーションデータ変換部が、少なくともスキャナデータからＵＳＢデータ形式に合致したＵＳＢデバイスアプリケーションデータに変換し、トンネリングドライバが、少なくともＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する。カプセル化されたＩＰパケットは、通信制御ドライバを介して、ホストコンピュータとの間でＩＰパケットを受信する。
上記構成によれば、ＵＳＢデバイスではないスキャナに対して、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用することができる。
【００１７】
次に、本発明の入出力デバイスドライブ方法について説明する。
本発明の入出力デバイスドライブ方法は、ホストコンピュータと、入出力デバイスが直結された入出力デバイスドライブ装置とがネットワークを介して接続されるシステムにおける入出力ドライブ方法である。
先ず、ホストコンピュータがネットワークを介して入出力デバイスにデータ出力する場合、本発明の入出力デバイスドライブ方法は、下記ａ１）〜ａ７）のステップから構成される。かかる構成によれば、ＵＳＢデバイスではない出力デバイス（例えば、スピーカー）に対して、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用することができる。
【００１８】
ａ１）ホストコンピュータに搭載されたアプリケーションが、ローカル接続されたＵＳＢデバイスに出力するようにＵＳＢデバイスドライバに対してデータ出力するステップ
ａ２）ホストコンピュータのトンネリングドライバが、前記ＵＳＢデバイスドライバが出力したＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化するステップ
ａ３）ホストコンピュータの通信制御ドライバがＩＰパケットを入出力デバイスドライブ装置に送信するステップ
ａ４）入出力デバイスドライブ装置の通信制御ドライバがＩＰパケットを受信するステップ
ａ５）入出力デバイスドライブ装置のトンネリングドライバが、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するステップ
ａ６）入出力デバイスドライブ装置のアプリケーションデータ変換部が、ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出するステップ
ａ７）入出力デバイスドライブ装置の入出力デバイスドライバが前記入出力デバイスのデータＩ／Ｆに合致するデータに変換してアプリケーションデータを出力するステップ
【００１９】
また、ホストコンピュータがネットワークを介して入出力デバイスからデータ入力する場合、本発明の入出力デバイスドライブ方法は、下記ｂ１）〜ｂ７）のステップから構成される。かかる構成によれば、ＵＳＢデバイスではない入力デバイス（例えば、スキャナ）に対して、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用することができる。
【００２０】
ｂ１）入出力デバイスドライブ装置の入出力デバイスドライバが前記入出力デバイスのアプリケーションデータを入力するステップ
ｂ２）入出力デバイスドライブ装置のアプリケーションデータ変換部が、入力したアプリケーションデータをＵＳＢデバイスアプリケーションデータに変換するステップ
ｂ３）入出力デバイスドライブ装置のトンネリングドライバが、ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化するステップ
ｂ４）入出力デバイスドライブ装置の通信制御ドライバがＩＰパケットをホストコンピュータに送信するステップ
ｂ５）ホストコンピュータの通信制御ドライバがＩＰパケットを入出力デバイスドライブ装置から受信するステップ
ｂ６）ホストコンピュータのトンネリングドライバが、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化してＵＳＢデバイスドライバに引き渡すステップ
ｂ７）ホストコンピュータに搭載されたアプリケーションが、ローカル接続されたＵＳＢデバイスから入力するようにＵＳＢデバイスドライバからデータ入力するステップ
【００２１】
次に、本発明の入出力デバイスドライブシステムについて説明する。
本発明の第１の観点の入出力デバイスドライブシステムは、ホストコンピュータと、入出力デバイスが直結された入出力デバイスドライブ装置とがネットワークを介して接続されるシステムであり、ホストコンピュータがネットワークを介して入出力デバイスにデータ出力するシステムである。
【００２２】
第１の観点の入出力デバイスドライブシステムにおけるホストコンピュータは、ローカル接続されたＵＳＢデバイスに出力するようにＵＳＢデバイスドライバに対してデータ出力するアプリケーション、ＵＳＢデバイスドライバが出力したＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化するトンネリングドライバ、ＩＰパケットを入出力デバイスドライブ装置に送信する通信制御ドライバを備える。
【００２３】
また、第１の観点の入出力デバイスドライブシステムにおける入出力デバイスドライブ装置は、ＩＰパケットを受信する通信制御ドライバ、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化するトンネリングドライバ、ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出するアプリケーションデータ変換部、入出力デバイスのデータＩ／Ｆに合致するデータに変換してアプリケーションデータを出力する入出力デバイスドライバを備える。
【００２４】
かかる構成によれば、ＵＳＢデバイスではない出力デバイス（例えば、スピーカー）を、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用することができる。
【００２５】
本発明の第２の観点の入出力デバイスドライブシステムは、ホストコンピュータと、入出力デバイスが直結された入出力デバイスドライブ装置とがネットワークを介して接続されるシステムであり、ホストコンピュータがネットワークを介して入出力デバイスからデータ入力するシステムである。
【００２６】
第２の観点の入出力デバイスドライブシステムにおけるホストコンピュータは、ＩＰパケットを入出力デバイスドライブ装置から受信する通信制御ドライバ、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化してＵＳＢデバイスドライバに引き渡すトンネリングドライバ、トンネリングドライバからデカプセル化したＵＳＢデバイスアプリケーションデータを受取り、アプリケーションに渡すＵＳＢデバイスドライバ、ローカル接続されたＵＳＢデバイスから入力するようにＵＳＢデバイスドライバからデータ入力するアプリケーションを備える。
【００２７】
また、第２の観点の入出力デバイスドライブシステムにおける入出力デバイスドライブ装置は、入出力デバイスのアプリケーションデータを入力する入出力デバイスドライバ、入力したアプリケーションデータをＵＳＢデバイスアプリケーションデータに変換するアプリケーションデータ変換部、ＵＳＢデバイスアプリケーションデータにＩＰパケットにカプセル化するトンネリングドライバ、ＩＰパケットをホストコンピュータに送信する通信制御ドライバを備える。
【００２８】
かかる構成によれば、ＵＳＢデバイスではない入力デバイス（例えば、スキャナ）に対して、あたかもホストコンピュータにＵＳＢケーブルでローカル接続されているかのように利用することができる。
【発明の効果】
【００２９】
本発明の入出力デバイスドライブ装置によれば、ホストコンピュータは、ＵＳＢ対応ではない入出力デバイスに対して、ＵＳＢデバイスとして擬制させたうえでＵＳＢデバイスサーバシステム技術を応用することにより、ネットワークを意識せず、まるでローカル接続されたＵＳＢデバイスにデータ入出力するように、ネットワークを介して入出力デバイスを制御できるといった効果がある。
【図面の簡単な説明】
【００３０】
【図１】本発明の入出力デバイスドライブシステムの概略構成図
【図２】本発明の入出力デバイスドライブシステムの機能ブロック図
【図３】実施例１の入出力デバイスドライブシステムの機能ブロック図
【図４】実施例１の入出力デバイスドライブシステムにおけるスピーカーＩ／Ｆへのデータ出力の機能ブロック図
【図５】実施例２の入出力デバイスドライブシステムの機能ブロック図
【図６】従来のＵＳＢデバイスサーバシステムの概略構成図
【図７】従来のＵＳＢデバイスサーバシステムの機能ブロック図（１）
【図８】従来のＵＳＢデバイスサーバシステムの機能ブロック図（２）
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施形態について、図面を参照しながら詳細に説明していく。なお、本発明の範囲は、以下の実施例や図示例に限定されるものではなく、幾多の変更及び変形が可能である。
【００３２】
（従来のＵＳＢデバイスサーバシステム）
本発明の入出力デバイスドライブ装置を説明するに際し、ＵＳＢデバイスサーバと対比して説明するのが理解しやすい。そこで、先ず、従来のＵＳＢデバイスサーバシステムについて説明する。図６は、従来のＵＳＢデバイスサーバのシステム概略構成図を示している。ＵＳＢデバイスサーバシステムでは、ＵＳＢデバイスサーバ１０にＵＳＢケーブル５０でＵＳＢデバイス３０が接続され、クライアント２０はネットワーク４０経由で、デバイスサーバ１０に接続されるＵＳＢデバイス３０を制御する。
図７および図８は、従来のＵＳＢデバイスサーバシステムの機能ブロック図である。また、図８では、ハードウェア（Ｈ／Ｗ）で実現される機能ブロックと、ソフトウェア（Ｓ／Ｗ）で実現される機能ブロックとを区別して描いている。
【００３３】
クライアント２０は、一般的なパーソナルコンピュータと同様なハードウェア構成を備えており、図示しないＣＰＵ、入力部、表示部、メモリ、外部記憶部、図示するネットワークＩ／Ｆ２１などが内部バスで接続されている。
クライアント２０には、外部記憶部に格納され、実行時にメモリに搭載されるアプリケーション２４とＵＳＢデバイスドライバ２３とトンネリングドライバ２６がソフトウェア部品として存在している。
この他、ソフトウェア部品としては、図示しないＯＳ（Operating
System）、ＯＳと同時に起動しそのまま常に起動している図示しない常駐モジュール、通信制御ドライバ（ＴＣＰ／ＩＰ）２５があり、制御に必要な各種データと共に外部記憶部に格納されている。これらソフトウェア部品及び各種データは、ＣＰＵの制御に従い、メモリ上に読み出されて各種制御が実行される。
【００３４】
なお、当該常駐モジュールは、図７に示される前記従来のＵＳＢデバイスサーバシステム上で動作するソフトウェア部品であり、以下に記載の前記従来のＵＳＢデバイスサーバシステムにおいて、データの監視、制御などを担うプログラムである。また、ＵＳＢデバイスサーバ１０には、ＵＳＢデバイス３０がＵＳＢケーブル５０によってローカルに接続されている。
【００３５】
ＵＳＢデバイスサーバ１０は、ＵＳＢデバイス３０が接続されると、ＵＳＢデバイス３０を認識して識別するためのＵＳＢデバイス情報を受信する。受信したＵＳＢデバイス情報に基づいて、ＵＳＢデバイス３０とのデータ送受信に必要となるＵＳＢコアドライバ１２を生成し、ＵＳＢデバイス３０を制御できる状態にする。
また、ＵＳＢデバイスサーバ１０は、受信したＵＳＢデバイス情報をクライアント２０に送信する。
【００３６】
一方、ＵＳＢデバイス３０は、ハードウェアとしてＵＳＢデバイスＩ／Ｆ３１が存在し、これをＵＳＢガジェットドライバ３２が制御する。このような構成によって、クライアント２０側のアプリケーション２４と、ＵＳＢデバイス３０側のＵＳＢデバイスアプリケーション３３の間でデータの受け渡しが可能になる。
【００３７】
クライアント２０のＵＳＢデバイスドライバ２３は、ＯＳやアプリケーション２４、前記常駐モジュールなど上位プログラムからのデータ入出力要求を、データ入出力対象のＵＳＢデバイス３０に応じたデータ形式に変換し、また、ＵＳＢデバイス３０からの応答を上位プログラムへ渡す。
【００３８】
ＵＳＢデバイスドライバ２３は、アプリケーション２４からのデータ入出力要求を、ＵＳＢデバイス３０に応じたデータ形式に変換し、ＵＳＢのデータ形式に準拠したパケットデータに変換してトンネリングドライバ２６に渡す。また、トンネリングドライバ２６から送られてくるＵＳＢのデータ形式に準拠したパケットデータを、データ形式を変換してアプリケーション２４へ渡す。
【００３９】
トンネリングドライバ２６は、ＵＳＢデバイスドライバ２３から渡されたパケットデータをＩＰパケットにカプセル化する。その一方で、ＵＳＢデバイスサーバ１０からＩＰパケットを受信すると、ＩＰパケットから応答パケットデータを取り出し（デカプセル化して）、ＵＳＢデバイスドライバ２３に受け渡す。
【００４０】
一方、ＵＳＢデバイスサーバ１０には、ネットワークＩ／Ｆ１１と通信制御ドライバ（ＴＣＰ／ＩＰ）１５とトンネリングドライバ１６とＵＳＢコアドライバ１２とＵＳＢホストコントローラ１７が搭載されている。
トンネリングドライバ１６では、クライアント２０からＩＰパケットを受信すると、このＩＰパケットからＵＳＢのデータ形式に準拠したパケットデータを取り出し（デカプセル化して）、ＵＳＢコアドライバ１２に送る。また、ＵＳＢコアドライバ１２からＵＳＢのデータ形式に準拠したパケットデータを受け取って、ＩＰパケットにカプセル化する。
【００４１】
また、ＵＳＢデバイス３０には、ＵＳＢデバイスＩ／Ｆ３１とＵＳＢガジェットドライバ３２とＵＳＢデバイスアプリケーション３３が搭載されている。ＵＳＢデバイスアプリケーション３３は、ＵＳＢガジェットドライバ３２で、ＵＳＢのデータ形式に準拠したパケットデータに変換し、ＵＳＢデバイスＩ／Ｆ３１を介して、ＵＳＢデバイスサーバ１０との間でデータの受け渡しを行う。
【００４２】
このようなＵＳＢデバイスサーバシステムの構成によって、ホストコンピュータ（クライアントＰＣ）側のアプリケーション２４と、ＵＳＢデバイス側のＵＳＢデバイスアプリケーション３３の間でデータの受け渡しが可能になる。
【００４３】
（本発明の入出力デバイスドライブシステム）
次に、本発明の入出力デバイスドライブシステムについて説明する。図１に本発明の入出力デバイスドライブシステムの概略構成図を、図２に本発明の入出力デバイスドライブシステムの機能ブロック図を示す。図２に示す機能ブロック図では、ハードウェア（Ｈ／Ｗ）で実現される機能ブロックと、ソフトウェア（Ｓ／Ｗ）で実現される機能ブロックとを区別して描いている。
本発明の入出力デバイスドライブシステムでは、入出力デバイスドライブ装置１にＵＳＢデバイス以外の入出力デバイス６０が入出力デバイスＩ／Ｆ６１を介して、接続され、クライアント２０はネットワーク４０経由で、入出力デバイスドライブ装置１に接続される入出力デバイス６０を、あたかもクライアント２０にＵＳＢケーブルでローカル接続されているＵＳＢデバイスのように制御できる。
【００４４】
図２に示すように、ホスト側のクライアント２０に搭載される機能ブロックは、従来のＵＳＢデバイスサーバシステムにおけるものと同じである。クライアント２０は、あたかもローカル接続されているＵＳＢデバイスのように入出力デバイス６０を制御する。
本発明の入出力デバイスドライブ装置１は、ホスト側とネットワーク（ＬＡＮ）４０を介して接続される。本発明の入出力デバイスドライブ装置は、ネットワークＩ／Ｆ２と、ホスト側とネットワーク（ＬＡＮ）４０を介してＩＰパケットを送受信する通信制御ドライバ３と、トンネリングドライバ４と、アプリケーションデータ変換部５と、入出力デバイスドライバ６から構成される。
トンネリングドライバ４は、上述のＵＳＢデバイスサーバ１０におけるトンネリングドライバ１６と同様、ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化する、或いは、ＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化する。また、アプリケーションデータ変換部５は、ＵＳＢデバイスアプリケーションデータからアプリケーションデータを抽出、或いは、アプリケーションデータからＵＳＢデバイスアプリケーションデータを生成する。また、入出力デバイスドライバは、入出力デバイスに対してアプリケーションデータの入出力（Ｉ／Ｏ）を行う。
【００４５】
入出力デバイスドライブ装置を用いることにより、ＵＳＢデバイス以外の入出力デバイスをＵＳＢデバイスとして擬制させたうえで、ホストコンピュータからＩＰネットワークを介して制御でき、かつ、ホストコンピュータのアプリケーションは、あたかもローカルに接続されたＵＳＢデバイスのようにデータを処理できるのである。
【実施例１】
【００４６】
図３は、実施例１の入出力デバイスドライブシステムの機能ブロック図を示している。また、図４は、実施例１における入出力デバイスドライブ装置及び入出力デバイスのハードウェア構成図を示している。
実施例１では、ホスト側のアプリケーション２４がネットワーク（ＬＡＮ）４０を介してＵＳＢデバイスではないスピーカーにオーディオデータを出力するシステムについて説明する。
図３に示すように、入出力デバイスドライブ装置１のトンネリングドライバ４が、ホスト側からネットワークＩ／Ｆ２により受信したＩＰパケットをＵＳＢデバイスアプリケーションデータにデカプセル化し、オーディオデータ変換部５ａが、ＵＳＢデバイスアプリケーションデータからオーディオデータを抽出し、抽出したデータをオーディオドライバ６ａに引き渡す。
【００４７】
オーディオドライバ６ａは、スピーカー７０のスピーカーＩ／Ｆ７１に、オーディオデータを出力する。これについて、図４を参照して詳細に説明する。図４において、入出力デバイスドライブ装置１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＬＡＮ
Ｉ／Ｆ１０４、Ｃｏｄｅｃ１０５が内部バス１０９で接続されているハードウェア構成になっている。オーディオドライバ６ａは、ＲＡＭ１０３上から、オーディオデータ変換部５ａがＩＰパケットをデカプセル化したＵＳＢデバイスアプリケーションデータから抽出したオーディオデータをＣｏｄｅｃ１０５にデータ転送し、Ｃｏｄｅｃ１０５はオーディオデータをＩ２Ｓ（Inter-IC Sound）規格に準拠した信号に変換して、スピーカーＩ／Ｆ７１に信号転送する。
【００４８】
スピーカーＩ／Ｆ７１は、図４に示すように、ＤＡＣ（Ｄｉｇｉｔａｌ
ｔｏ  Ａｎａｌｏｇ  Ｃｏｎｖｅｒｔｅｒ）およびＡＭＰ（Ａｍｐｌｉｆｉｅｒ）を備え、ＤＡＣによってＩ２Ｓディジタル信号をアナログ信号へ変換し、ＡＭＰが変換された信号を適切に電力増幅してスピーカー７０に信号を渡す。これにより、スピーカー７０から音声を出力する。スピーカーＩ／Ｆ７１からスピーカー７０までの処理は、全てハードウェアにて処理できる。
【００４９】
実施例１の入出力デバイスドライブシステムで実現する機能は、オーディオストリーミング、ＶＯＩＣＥ  ｏｖｅｒ  ＩＰの類に近いが、ホスト側は、ＵＳＢデバイスではないスピーカー７０をＵＳＢオーディオデバイスとして認識している点が特徴である。
実施例１の入出力デバイスドライブシステムを用いることにより、例えば、iTunes（登録商標）やMedia Playerなどが、ホスト側でそのまま利用可能となる。
【実施例２】
【００５０】
図５は、実施例２の入出力デバイスドライブシステムの機能ブロック図を示している。
実施例２では、ホスト側のアプリケーション２４がネットワーク（ＬＡＮ）４０を介してＵＳＢデバイスではないスキャナからデータを入力するシステムについて説明する。
図５に示すように、入出力デバイスドライブ装置のスキャナドライバ６ｂが、スキャナ制御部８１を通してスキャナ８０から取り込んだスキャナデータをスキャナデータ変換部５ｂに入力し（スキャナデータを受信し）、スキャナデータ変換部５ｂが、スキャナデータからＵＳＢデータ形式に合致したＵＳＢデバイスアプリケーションデータに変換する。そして、トンネリングドライバ４が、ＵＳＢデバイスアプリケーションデータをＩＰパケットにカプセル化して、通信制御ドライバ３が、カプセル化したＩＰパケットをネットワーク（ＬＡＮ）４０を介して、ホスト側に送信する。
【００５１】
一方、これと逆にホスト側アプリケーション２４からスキャナに指示する際には、トンネリングドライバ４が、ＩＰパケットからＵＳＢデータ形式のコマンドを取り出し、さらにスキャナデータ変換部５ｂがスキャナドライバ６ｂに直接指示する形式のデータに変換して転送し、スキャナドライバ６ｂがスキャナ制御部８１を通じてスキャナ８０を制御する。
これにより、ホスト側のアプリケーション２４は、ＵＳＢデバイスではないスキャナ８０を、ネットワーク（ＬＡＮ）４０を介して、あたかもクライアント２０にＵＳＢケーブルで接続されているスキャナと同様に利用できる。
【産業上の利用可能性】
【００５２】
本発明は、ＩＰネットワークを介して入出力デバイスを制御するシステムに有用である。
【符号の説明】
【００５３】
１、１００    入出力デバイスドライブ装置
２、１１、２１    ネットワークＩ／Ｆ
３、１５、２５    通信制御ドライバ（ＴＣＰ／ＩＰ）
４、１６、２６    トンネリングドライバ
５    アプリケーションデータ変換部
６    入出力デバイスドライバ
１０  ＵＳＢデバイスサーバ
２０  クライアント（ホストコンピュータ）
３０  ＵＳＢデバイス
４０  ネットワーク（ＬＡＮ）
５０  ＵＳＢケーブル
６０  入出力デバイス
６１  入出力デバイスＩ／Ｆ
７０  スピーカー
７１  スピーカーＩ／Ｆ
７２  シリアル信号ケーブル
８０  スキャナ
８１  スキャナ制御部
【図１】
2015106200.tif 000003
【図２】
2015106200.tif 000004
【図３】
2015106200.tif 000005
【図４】
2015106200.tif 000006
【図５】
2015106200.tif 000007
【図６】
2015106200.tif 000008
【図７】
2015106200.tif 000009
【図８】
2015106200.tif 000010