JP2013109466A - デバイス識別装置 - Google Patents

デバイス識別装置 Download PDF

Info

Publication number
JP2013109466A
JP2013109466A JP2011252546A JP2011252546A JP2013109466A JP 2013109466 A JP2013109466 A JP 2013109466A JP 2011252546 A JP2011252546 A JP 2011252546A JP 2011252546 A JP2011252546 A JP 2011252546A JP 2013109466 A JP2013109466 A JP 2013109466A
Authority
JP
Japan
Prior art keywords
peripheral device
identification information
information
virtual
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011252546A
Other languages
English (en)
Other versions
JP5803600B2 (ja
JP2013109466A5 (ja
Inventor
Takushi Yokokawa
卓志 横川
Eishoku Hayashi
栄植 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Silex Technology Inc
Original Assignee
Silex Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Silex Technology Inc filed Critical Silex Technology Inc
Priority to JP2011252546A priority Critical patent/JP5803600B2/ja
Publication of JP2013109466A publication Critical patent/JP2013109466A/ja
Publication of JP2013109466A5 publication Critical patent/JP2013109466A5/ja
Application granted granted Critical
Publication of JP5803600B2 publication Critical patent/JP5803600B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Systems (AREA)

Abstract

【課題】シリアル番号を持たない複数の周辺機器が接続された場合であっても,常に当該周辺機器を一意に識別できる装置,プログラムおよびシステムを提供する。
【解決手段】デバイスサーバシステムにおいて,ドライバがUSBデバイスを指定する際に用いる論理通信経路の生成に,デバイスサーバのMACアドレスおよびUSBの物理ポート番号に基づいた第1の仮想シリアル番号とUSBデバイスの機器情報に基づいた第2の仮想シリアル番号の両方を用いる。これにより,ドライバからUSBデバイスへの通信経路である論理通信経路を常に固定的にすることができる。この結果,シリアル番号を持たないUSBデバイスを複数接続したとしても,ドライバからは,常に希望するUSBデバイスに対して通信を行うことができる。
【選択図】図5

Description

本願発明は,デバイスサーバシステムにおいてデバイスを識別する技術に関し,特に,デバイス自身が自己を識別させるための情報(デバイス識別情報)を備えていない場合に適用可能なものである。
USB機器(以下,USBデバイス)に代表される周辺機器をネットワークで共有するデバイスサーバシステムという技術が知られている。デバイスサーバシステムとは,図1に示すようなシステムであり,PC101などのコンピュータとUSBデバイスであるプリンタA103およびプリンタB104が接続されたデバイスサーバ102とがネットワーク接続されている環境において,PC101からネットワーク越しに当該USBデバイスを利用させることのできるシステムである。
図1でも示すとおり,通常,デバイスサーバ102には複数のUSBデバイスが接続可能であり,PC101はネットワークを通じてこれらUSBデバイスを利用することができる(詳細は非特許文献1を参照)。
サイレックス・テクノロジー株式会社 ホームページ<http://www.silex.jp/products/usbdeviceserver/index.html?init>
ところで,デバイスサーバシステムにおいて複数のUSBデバイスを利用する場合,以下のような問題があった。
通常,USBデバイスは,製造時に自身に割り当てられたユニークな番号であるシリアル番号(以下で記載のデバイス識別情報と同義)を,自身の備える不揮発性メモリに保存している。PC101上で動作し,USBデバイスを制御するドライバは,このシリアル番号を用いて生成された論理的な通信経路(以下,論理通信経路)によって,通信する相手(USBデバイス)を特定し,通信を行う。
しかし,USBデバイスによっては,コスト等の事情から不揮発性メモリを搭載していない,即ち,シリアル番号を持たないものも存在する。そこで従来は,このようなUSBデバイスを識別する手段として,USBデバイスがデバイスサーバ102に接続された際,デバイスサーバ102によって仮想のシリアル番号(以下,第1の仮想シリアル番号と称し,その理由は後述する。)が生成され,ドライバとUSBデバイス間の通信は,この第1の仮想シリアル番号に基づいて生成された論理通信経路を用いて行われていた。なお,後述する本願発明においては,この仮想シリアル番号のほか,他の仮想シリアル番号も用いるため,第1の仮想シリアル番号と記載している。
上述した第1の仮想シリアル番号は,USBデバイスの接続台数や接続順,および接続ポートなどの情報を元に生成されるものであるため,USBデバイスの電源を入れる順序やデバイスサーバ102がUSBデバイスを認識する順序などによって,その都度,変化してしまうことがあった。
このような動作は,複数のUSBデバイスをそれぞれ区別して利用したいユーザにとっては,大きな問題となる。特に,同一機種のUSBデバイスを複数使用する場合,その区別をすることは事実上不可能であった。
例えば,シリアル番号を持たない複数の同じ機種のUSBプリンタが接続されている場合,プリンタのステータスを監視するアプリケーションが表示するステータス情報が何れのプリンタのものかは一見しただけではわからない。また,表示されている情報とプリンタの対応関係が判明したとしても,次回の起動時に同じ対応関係になるとは限らないという問題もあった。このような問題に対して,以下の技術が開示されている。
特開2009−159048号公報
特許文献2に開示の技術は,シリアル番号を持たないUSBデバイスが接続された際,上述した第1の仮想シリアル番号を生成するものであるが,この仮想シリアル番号が,常にユニーク(一意)で,固定的であることが特徴となるものである。これにより,USBデバイスの電源を入れなおしたとしても,常に固定的な論理通信経路が生成され,ドライバからは,常に希望するUSBデバイスへ通信が行えることを意図したものである。
具体的には図2に示すとおり,USBデバイスが接続されたデバイスサーバ102のMACアドレスと,デバイスサーバ102のUSBポートに固定的に割り当てられている番号とを組みわせたものを第1の仮想シリアル番号として用いる。
ところが,特許文献2に開示の技術は,常に一意の第1の仮想シリアル番号を生成できるものの,これをもとに生成される論理通信経路が,常に固定であるとは限らなかった。つまり,常に固定的な論理通信経路を生成するには,第1の仮想シリアル番号が固定なだけでは十分でなかったわけである。
図3はこのような問題の具体例である。本図は,非特許文献1に開示のデバイスサーバシステムにおいてデータ通信経路を図示したものであり,PC101のドライバからデバイスサーバ102に接続されたプリンタA103およびプリンタB104を使う場面を想定したものである。
デバイスサーバシステムは,本図で示す仮想ドライバが大きな役割を果たしている。この仮想ドライバが,ドライバが送受信可能なUSBパケットとデバイスサーバが送受信可能なネットワークパケットとを相互に変換することにより,PC101からデバイスサーバ102に接続されたデバイス(プリンタA103およびプリンタB104)が利用できるわけである。
図3の論理通信経路Aおよび論理通信経路Bは,本来は,プリンタのシリアル番号をもとにドライバによって生成されるものである。特許文献2では,デバイスサーバ102のMACアドレスである112233445566と,デバイスサーバ102が備えるUSBポートの物理的(固定的)番号である01および02を組みわせた第1の仮想シリアル番号をもとに生成していた。
図3の上側は,論理通信経路AがプリンタA103に対応しており,論理通信経路BがプリンタB104に対応している様子を示している。つまり,ドライバが論理通信経路Aを指定して通信することでプリンタA103と通信が行え,同様に論理通信経路Bを指定することでプリンタB104と通信が行えるわけである。
しかしながら,特許文献2に開示の発明だけでは,毎回このような対応関係とならない場合もあった。つまり,図3の下側に示すように,論理通信経路BがプリンタA103に対応し,論理通信経路AがプリンタB104に対応することもあったわけである。
このようになる原因は,ドライバが固定的な論理通信経路を生成する際に必要な情報が欠落していたことにある。すなわち,デバイスサーバ102のMACアドレスとデバイスサーバ102の物理的USBポート番号に基づいて生成された第1の仮想シリアル番号だけでは,常に固定的な論理通信経路を生成できなかったわけである。
本願発明の目的は,上述した問題を解決するためのものである。すなわち,シリアル番号を持たない複数の周辺機器が接続された場合であっても,常に当該周辺機器を一意に識別できる装置,プログラムおよびシステムを提供することである。
本願発明にかかる第1の形態は,周辺機器が接続可能な周辺機器サーバとコンピュータとがネットワークで接続され,当該コンピュータから当該周辺機器を利用可能な周辺機器利用システムにおける当該周辺機器サーバであって,周辺機器を接続する周辺機器インタフェースと,周辺機器サーバを常にユニークに特定することができる情報を取得する周辺機器サーバ情報取得手段と,周辺機器インタフェースに固定的に関連付けられた情報を取得する周辺機器インタフェース情報取得手段と,周辺機器の機器情報を取得する機器情報取得手段と,周辺機器インタフェースに接続された周辺機器が自身の識別情報(周辺機器識別情報)を備えているかどうかを判断する,周辺機器識別情報存否判断手段と,周辺機器識別情報存否判断手段が,周辺機器識別情報を備えていないと判断した場合動作する手段であって,周辺機器サーバ情報取得手段と周辺機器インタフェース情報取得手段とによって取得されたそれぞれの情報に基づき周辺機器利用システム内において常にユニークであり不変な第1の仮想識別情報を生成する第1の仮想識別情報生成手段,周辺機器から取得した機器情報に基づき第2の仮想識別情報を生成する第2の仮想識別情報生成手段,および生成した第1の仮想識別情報と生成した第2の仮想識別情報とに基づいて,周辺機器の仮想の識別情報(周辺機器仮想識別情報)を生成する,周辺機器仮想識別情報生成手段を備え,さらに,周辺機器サーバは,コンピュータから送信された周辺機器の識別情報の問い合わせに対し,生成した仮想周辺機器識別情報を応答する周辺機器識別情報応答手段,を備え,周辺機器仮想識別情報は,コンピュータにおいて,周辺機器に対する,常に固定の論理通信経路を生成するために用いられる,ことを特徴とする。
さらに好ましくは,機器情報は周辺機器のデバイスディスクリプタであり,第2の仮想識別情報生成手段は,ディスクリプタのiManufacturer情報とiProduct情報を取得し,当該取得した情報に基づいて不変の値を特定し,当該不変の値を第2の仮想識別情報として生成する,ことを特徴とする。
本願発明にかかる第2の形態は,周辺機器が接続可能な周辺機器サーバとコンピュータとがネットワークで接続され,当該コンピュータから当該周辺機器を利用可能な周辺機器利用システムにおける当該周辺機器サーバを,周辺機器サーバを常にユニークに特定することができる情報を取得する周辺機器サーバ情報取得手段と,周辺機器サーバの備える周辺機器インタフェースに固定的に関連付けられた情報を取得する周辺機器インタフェース情報取得手段と,周辺機器の機器情報を取得する機器情報取得手段と,周辺機器インタフェースに接続された周辺機器が自身の識別情報(周辺機器識別情報)を備えているかどうかを判断する,周辺機器識別情報存否判断手段と,周辺機器識別情報存否判断手段が,周辺機器識別情報を備えていないと判断した場合動作する,周辺機器サーバ情報取得手段と周辺機器インタフェース情報取得手段とによって取得されたそれぞれの情報に基づき周辺機器利用システム内において常にユニークであり不変な第1の仮想識別情報を生成する第1の仮想識別情報生成手段,周辺機器から取得した機器情報に基づき第2の仮想識別情報を生成する第2の仮想識別情報生成手段,および生成した第1の仮想識別情報と生成した第2の仮想識別情報とに基づいて,周辺機器の仮想の識別情報(周辺機器仮想識別情報)を生成する,周辺機器仮想識別情報生成手段を備え,さらに,周辺機器サーバは,コンピュータから送信された周辺機器の識別情報の問い合わせに対し,生成した仮想周辺機器識別情報を応答する周辺機器識別情報応答手段と,して機能させるプログラムであって,周辺機器仮想識別情報は,コンピュータにおいて,周辺機器に対する,常に固定の論理通信経路を生成するために用いられる,ことを特徴とする。
さらに好ましくは,機器情報は周辺機器のデバイスディスクリプタであり,第2の仮想識別情報生成手段は,ディスクリプタのiManufacturer情報とiProduct情報を取得し,当該取得した情報に基づいて不変の値を特定し,当該不変の値を第2の仮想識別情報として生成する,ことを特徴とする。
本願発明にかかる第3の形態は,周辺機器が接続可能な周辺機器サーバとコンピュータとがネットワークで接続され,当該コンピュータから当該周辺機器を利用可能な周辺機器利用システムであって,周辺機器サーバは,周辺機器を接続する周辺機器インタフェースと,周辺機器サーバを常にユニークに特定することができる情報を取得する周辺機器サーバ情報取得手段と,周辺機器インタフェースに固定的に関連付けられた情報を取得する周辺機器インタフェース情報取得手段と,周辺機器の機器情報を取得する機器情報取得手段と,周辺機器インタフェースに接続された周辺機器が自身の識別情報(周辺機器識別情報)を備えているかどうかを判断する,周辺機器識別情報存否判断手段と,周辺機器識別情報存否判断手段が,周辺機器識別情報を備えていないと判断した場合動作する手段であって,周辺機器サーバ情報取得手段と周辺機器インタフェース情報取得手段とによって取得されたそれぞれの情報に基づき周辺機器利用システム内において常にユニークであり不変な第1の仮想識別情報を生成する第1の仮想識別情報生成手段,周辺機器から取得した機器情報に基づき第2の仮想識別情報を生成する第2の仮想識別情報生成手段,および生成した第1の仮想識別情報と生成した第2の仮想識別情報とに基づいて,周辺機器の仮想の識別情報(周辺機器仮想識別情報)を生成する,周辺機器仮想識別情報生成手段,を備えるとともに,コンピュータから送信された周辺機器の識別情報の問い合わせに対し,生成した仮想周辺機器識別情報を応答する周辺機器識別情報応答手段,を備え,コンピュータは,周辺機器サーバに向けて,周辺機器識別情報の問い合わせを送信する手段と,問合せに対する応答として,周辺機器サーバから送信された周辺機器識別情報を受信する手段と,受信した周辺機器識別情報に基づいて,周辺機器に対する,常に固定の論理通信経路を生成する手段と,を備えることを特徴とする。
さらに好ましくは,機器情報は周辺機器のデバイスディスクリプタであり,第2の仮想識別情報生成手段は,ディスクリプタのiManufacturer情報とiProduct情報を取得し,当該取得した情報に基づいて不変の値を特定し,当該不変の値を第2の仮想識別情報として生成する,ことを特徴とする。
本願発明によれば,デバイスサーバシステムにおいて,ドライバがUSBデバイスを指定する際に用いる論理通信経路の生成に,デバイスサーバのMACアドレスおよびUSBの物理ポート番号に基づいた第1の仮想シリアル番号とUSBデバイスの機器情報に基づいた第2の仮想シリアル番号の両方を用いる。これにより,ドライバからUSBデバイスへの通信経路である論理通信経路を常に固定的にすることができる。この結果,シリアル番号を持たないUSBデバイスを複数接続したとしても,ドライバからは,常に希望するUSBデバイスに対して通信を行うことができる。
以下では図面を参照し本願発明に係る実施例を説明する。
[実施例1]
[システム全体図]
図1は本願発明にかかるシステム全体図の一例である。詳細説明は背景技術においてすでになされているため割愛する。なお,プリンタA103とプリンタB104は,同一機種である場合を想定する。
[シーケンス図(1)]
図4は,本願発明にかかるデバイスサーバシステムのシーケンス図である。デバイスサーバ102にUSBデバイス(本実施例では同一機種プリンタを想定)が接続(ステップ401)され,デバイスサーバ102のステップ402およびステップ403において,それぞれのデバイス識別情報を生成する。
その後,PC101からUSBデバイスへの接続要求(ステップ404)があれば,これに対してデバイスサーバ102は,生成したデバイス識別情報を応答(ステップ405)する。これを受信したPC101では,USBデバイスのドライバインストール(ステップ406)が行われ,PC101からデバイスへの通信が可能になる。この時,USBデバイスへの論理通信経路が生成される。
そして,PC101,具体的にはPC101のドライバはUSBデバイスを指定して通信を行う(ステップ407)。この通信は,デバイスサーバ102を経由してUSBデバイスに到達する(ステップ408)。
なお,本願発明は,上述したデバイス識別情報の生成(ステップ402)の処理に特徴を有するものであり,以下では,この部分を中心に説明する。
[機能ブロック図]
図5はデバイスサーバ102の機能ブロック図である。
デバイス識別情報存否判断手段505は,周辺機器インタフェース501を介してUSBデバイスの識別情報が存在するかどうかを判断する。このデバイス識別情報が上述した論理通信経路を生成する際に必要な情報であり,これが存在しない場合は,後述する第1の仮想シリアル番号生成手段504,および第2の仮想シリアル番号生成手段507に生成を指示する。
第1の仮想シリアル番号生成手段504は,上記指示に基づき,デバイスサーバ情報取得手段503が取得したデバイスサーバ情報と周辺機器インタフェース情報取得手段502が取得した周辺機器インタフェース501のインタフェース情報をもとに第1の仮想シリアル番号を生成する。この第1の仮想シリアル番号は,背景技術において説明したとおりのものであり,デバイスサーバ102自身のMACアドレスと物理USBポート番号に基づいて生成されるものである。つまり,デバイスサーバ情報取得手段503が取得する情報は,デバイスサーバ102のMACアドレスであり,周辺機器インタフェース情報取得手段502が取得する情報は,当該USBデバイスが接続されている周辺機器インタフェース501の物理ポート番号である。
第2の仮想シリアル番号生成手段507は,上記指示に基づき,機器情報取得手段506を経由して取得したデバイスの機器情報をもとに第2の仮想シリアル番号を生成する。ここでいう機器情報とは具体的には図8に示すものであり,一般的にはデバイスディスクリプタと呼ばれている。機器情報内にあるiManufacture,iProductおよびiSerialNumberは,本願発明において重要な情報であり,利用の仕方については後述する。
デバイス識別情報生成手段508は,生成された第1の仮想シリアル番号と第2の仮想シリアル番号とを用いて,デバイス識別情報を生成する。
デバイス識別情報問合受信手段510は,ネットワークインタフェース509を通じて,PC101からのデバイス識別情報問合せを受信し,デバイス識別情報応答手段511は,これに対する応答として,デバイス識別情報生成手段508が生成したデバイス識別情報を応答する。
[シーケンス図(2)]
図6は,本願発明にかかるデバイスサーバシステムのシーケンス図である。図4との違いは,デバイス識別情報,およびその元となる第1の仮想シリアル番号と第2の仮想シリアル番号の使われ方を中心に記載している点である。なお,図示するように,ドライバと仮想ドライバは,いずれもPC101内部のものである。なお,仮想ドライバについては背景技術にて説明済みのため説明を省略する。
ステップ601にて,USBデバイスがデバイスサーバ102に接続される。
ステップ602にて,デバイスサーバ102は,接続されたUSBデバイスがデバイス識別情報を備えているかどうかを判断し,備えていなければ,ステップ603に進む。
ステップ603にて,デバイスサーバ102は,USBデバイスのデバイス識別情報を生成する。具体的には,すでに説明した第1の仮想シリアル番号,および第2の仮想シリアル番号を生成し,これらをもとにデバイス識別情報を生成する。
ステップ604にて,PC101の仮想ドライバからデバイスサーバ102に向けて送信された,USBデバイスへの接続要求を受信する。
ステップ605にて,受信した接続要求に対し,デバイスサーバ102は生成したデバイス識別情報を応答する。
ステップ606にて,仮想ドライバは受信したデバイス識別情報をドライバに渡す。
ステップ607にて,ドライバは渡されたデバイス識別情報をもとにUSBデバイスへの論理通信経路を生成する。
ステップ608にて,ドライバは生成した論理通信経路を指定してUSBデバイスへの通信を開始する。
ステップ609にて,仮想ドライバは,ドライバが指定した論理通信経路をもとにUSBデバイスへの通信経路を特定する。具体的には,USBデバイスに対するインタフェースおよびエンドポイントを特定する。
ステップ610にて,仮想ドライバは特定した通信経路をネットワークパケットに変換する。
ステップ611にて,このネットワークパケットをデバイスサーバ102に送信する。
ステップ612にて,ネットワークパケットを受信したデバイスサーバ102は,中身のインタフェースおよびエンドポイントを参照し,該当するUSBデバイスに対して通信を行う。
[デバイス識別情報生成の動作フロー]
図7はデバイスサーバ102がデバイス識別情報を生成する際の動作フローである。この処理は図6におけるステップ607の具体的動作である。
すでに述べたように,本願発明では,USBデバイスがデバイス識別情報を備えていない場合,デバイスサーバ102がこれを生成する。そして,このデバイス識別情報は,第1の仮想シリアル番号と第2の仮想シリアル番号をもとに生成されるものである。
したがって,デバイス識別情報を生成するフローとしては,ステップ701〜ステップ703に示す通りとなる。
第1の仮想シリアル番号を生成するため,ステップ711において,デバイスサーバ102のMACアドレスを取得する。
ステップ712において,USBデバイスが接続されているUSBポートの物理ポート番号を取得する。
ステップ713において,これらの情報をもとに第1の仮想シリアル番号を生成する。この生成の過程は図2で示したとおりである。
第2の仮想シリアル番号を生成するため,ステップ721にて,USBデバイスの機器情報を取得する。この機器情報は図8に示した通りでる。
ステップ722にて,取得した機器情報のiManufacturer情報を参照する。
ステップ723にて,取得した機器情報のiProduct情報を参照する。
ステップ724にて,参照したiManufacturer情報およびiProduct情報をもとに第2の仮想シリアル番号を生成する。
[第2の仮想シリアル番号生成の規則]
すでに述べたように,本願発明の特徴は,デバイス識別情報の生成にある。このデバイス識別情報の生成には第1の仮想シリアル番号と第2の仮想シリアル番号が用いられる。従来技術においては,第1の仮想シリアル番号だけを用いており,それだけでは不十分であると述べた。そこで本願発明では,第2の仮想シリアル番号も用いるが,以下で,その生成の詳細について説明する。
第2の仮想シリアル番号の生成には,USBデバイスの機器情報(デバイスディスクリプタ)が用いられてり,中でもiManufacturer情報とiProduct情報を用いる。これらの情報はUSBデバイスの製造者が任意に設定できる値である。
図9は,第2の仮想シリアル番号生成の規則について図示したものである。図9において第2の仮想シリアル番号に相当するのは,iSerialNumberである。これは1バイトの値で表されるものであり,iManufacturer情報とiProduct情報をもとに生成される。
iManufacturer情報とiProduct情報も通常は1バイトの値である。図示するように,iManufacturer情報が1であり,iProduct情報が2である場合には,iSerialNumberは3を割り当てる。
別の例として,iManufacturer情報が2であり,iProduct情報が0である場合には,iSerialNumberは1を割り当てる。
このようにiSerialNumberを生成するには所定の規則がある。つまり,iManufacturer情報とiProduct情報を除いた値で1に最も近い値が,iSerialNumberになるわけである。
このような規則を設けることにより,iManufacturer情報とiProduct情報との重複を避けつつ,常に固定のiSerialNumberを生成することができる。ひいては,これをもとに生成されるデバイス識別情報や,さらには論理通信経路を常に固定のものとすることができるわけである。
なお,iSerialNumberは,iManufacturer情報とiProduct情報と重複せず,常に不変(固定的)なものであればどのような値でもよい。上述したように,最も1に近い値とするのは,こうした条件を満たす方法のうちの1つである。
ところで,USBデバイスが同じ機種の場合には,iManufacturer情報とiProduct情報とが同じ値になることもある。このような場合,上記の規則に従ってiSerialNumberを生成すると,当然同じ値のiSerialNumberが得られることとなる。USBデバイスの識別は,上述の第1の仮想シリアル番号で可能であるため,同じ値のiSerialNumberが生成されることは特に問題ではない。本願発明にとって重要なのは,任意のUSBデバイスに対して生成されるiSerialNumberが常に同じ値であることであり,それが他のUSBデバイスのiSerialNumberと同じであるかどうかは問わないわけである。
さらに別の場合として,iManufacturer情報とiProduct情報を持たないUSBデバイスもある。ただ,どのようなUSBデバイスであってもデバイスディスクリプタは備えていることから,iManufacturer情報とiProduct情報には,単に0(ゼロ)の値が入っているだけである。このような場合も,上述するように同じ値のiSerialNumberが生成されることとなる。
[まとめ]
本願発明によれば,デバイスサーバシステムにおいて,ドライバがUSBデバイスを指定する際に用いる論理通信経路の生成に,デバイスサーバのMACアドレスおよびUSBの物理ポート番号に基づいた第1の仮想シリアル番号とUSBデバイスの機器情報に基づいた第2の仮想シリアル番号の両方を用いる。これにより,ドライバからUSBデバイスへの通信経路である論理通信経路を常に固定的にすることができる。この結果,シリアル番号を持たないUSBデバイスを複数接続したとしても,ドライバからは,常に希望するUSBデバイスに対して通信を行うことができる。
システム全体図 第1の仮想シリアル番号生成の様子 論理通信経路とデバイスとの対応 シーケンス図(1) デバイスサーバの機能ブロック シーケンス図(2) デバイス識別情報生成の動作フロー 機器情報の詳細 第2の仮想シリアル番号生成の規則
501 周辺機器インタフェース
502 周辺機器インタフェース情報取得手段
503 デバイスサーバ情報取得手段
504 第1の仮想シリアル番号生成手段
505 デバイス識別情報存否判断手段
506 機器情報取得手段
507 第2の仮想シリアル番号生成手段
508 デバイス識別情報生成手段
510 デバイス識別情報問合受信手段
511 デバイス識別情報応答手段

Claims (6)

  1. 周辺機器が接続可能な周辺機器サーバとコンピュータとがネットワークで接続され,当該コンピュータから当該周辺機器を利用可能な周辺機器利用システムにおける当該周辺機器サーバであって,
    (1)周辺機器を接続する周辺機器インタフェースと,
    (2)前記周辺機器サーバを常にユニークに特定することができる情報を取得する周辺機器サーバ情報取得手段と,
    (3)前記周辺機器インタフェースに固定的に関連付けられた情報を取得する周辺機器インタフェース情報取得手段と,
    (4)前記周辺機器の機器情報を取得する機器情報取得手段と,
    (5)周辺機器インタフェースに接続された周辺機器が自身の識別情報(周辺機器識別情報)を備えているかどうかを判断する,周辺機器識別情報存否判断手段と,
    前記周辺機器識別情報存否判断手段が,周辺機器識別情報を備えていないと判断した場合動作する手段であって,
    (6−a)前記周辺機器サーバ情報取得手段と前記周辺機器インタフェース情報取得手段とによって取得されたそれぞれの情報に基づき前記周辺機器利用システム内において常にユニークであり不変な第1の仮想識別情報を生成する第1の仮想識別情報生成手段,
    (6−b)前記周辺機器から取得した前記機器情報に基づき第2の仮想識別情報を生成する第2の仮想識別情報生成手段,および
    (6−c)生成した第1の仮想識別情報と生成した第2の仮想識別情報とに基づいて,前記周辺機器の仮想の識別情報(周辺機器仮想識別情報)を生成する,周辺機器仮想識別情報生成手段
    を備え,
    さらに,前記周辺機器サーバは,
    (7)前記コンピュータから送信された前記周辺機器の識別情報の問い合わせに対し,生成した前記仮想周辺機器識別情報を応答する周辺機器識別情報応答手段,を備え,
    前記周辺機器仮想識別情報は,前記コンピュータにおいて,前記周辺機器に対する,常に固定の論理通信経路を生成するために用いられる,
    ことを特徴とする。
  2. 前記機器情報は前記周辺機器のデバイスディスクリプタであり,
    前記第2の仮想識別情報生成手段は,前記ディスクリプタのiManufacturer情報とiProduct情報を取得し,当該取得した情報に基づいて不変の値を特定し,当該不変の値を第2の仮想識別情報として生成する,
    ことを特徴とする請求項1に記載の周辺機器サーバ。
  3. 周辺機器が接続可能な周辺機器サーバとコンピュータとがネットワークで接続され,当該コンピュータから当該周辺機器を利用可能な周辺機器利用システムにおける当該周辺機器サーバを,
    (1)前記周辺機器サーバを常にユニークに特定することができる情報を取得する周辺機器サーバ情報取得手段と,
    (2)前記周辺機器サーバの備える周辺機器インタフェースに固定的に関連付けられた情報を取得する周辺機器インタフェース情報取得手段と,
    (3)前記周辺機器の機器情報を取得する機器情報取得手段と,
    (4)前記周辺機器インタフェースに接続された周辺機器が自身の識別情報(周辺機器識別情報)を備えているかどうかを判断する,周辺機器識別情報存否判断手段と,
    前記周辺機器識別情報存否判断手段が,周辺機器識別情報を備えていないと判断した場合動作する,
    (5−a)前記周辺機器サーバ情報取得手段と前記周辺機器インタフェース情報取得手段とによって取得されたそれぞれの情報に基づき前記周辺機器利用システム内において常にユニークであり不変な第1の仮想識別情報を生成する第1の仮想識別情報生成手段,
    (5−b)前記周辺機器から取得した前記機器情報に基づき第2の仮想識別情報を生成する第2の仮想識別情報生成手段,および
    (5−c)生成した第1の仮想識別情報と生成した第2の仮想識別情報とに基づいて,前記周辺機器の仮想の識別情報(周辺機器仮想識別情報)を生成する,周辺機器仮想識別情報生成手段を備え,
    さらに,前記周辺機器サーバは,
    (7)前記コンピュータから送信された前記周辺機器の識別情報の問い合わせに対し,生成した前記仮想周辺機器識別情報を応答する周辺機器識別情報応答手段と,して機能させるプログラムであって,
    前記周辺機器仮想識別情報は,前記コンピュータにおいて,前記周辺機器に対する,常に固定の論理通信経路を生成するために用いられる,
    ことを特徴とする。
  4. 前記機器情報は前記周辺機器のデバイスディスクリプタであり,
    前記第2の仮想識別情報生成手段は,前記ディスクリプタのiManufacturer情報とiProduct情報を取得し,当該取得した情報に基づいて不変の値を特定し,当該不変の値を第2の仮想識別情報として生成する,
    ことを特徴とする請求項3に記載のプログラム。
  5. 周辺機器が接続可能な周辺機器サーバとコンピュータとがネットワークで接続され,当該コンピュータから当該周辺機器を利用可能な周辺機器利用システムであって,
    前記周辺機器サーバは,
    (1)周辺機器を接続する周辺機器インタフェースと,
    (2)前記周辺機器サーバを常にユニークに特定することができる情報を取得する周辺機器サーバ情報取得手段と,
    (3)前記周辺機器インタフェースに固定的に関連付けられた情報を取得する周辺機器インタフェース情報取得手段と,
    (4)前記周辺機器の機器情報を取得する機器情報取得手段と,
    (5)周辺機器インタフェースに接続された周辺機器が自身の識別情報(周辺機器識別情報)を備えているかどうかを判断する,周辺機器識別情報存否判断手段と,
    前記周辺機器識別情報存否判断手段が,周辺機器識別情報を備えていないと判断した場合動作する手段であって,
    (6−a)前記周辺機器サーバ情報取得手段と前記周辺機器インタフェース情報取得手段とによって取得されたそれぞれの情報に基づき前記周辺機器利用システム内において常にユニークであり不変な第1の仮想識別情報を生成する第1の仮想識別情報生成手段,
    (6−b)前記周辺機器から取得した前記機器情報に基づき第2の仮想識別情報を生成する第2の仮想識別情報生成手段,および
    (6−c)生成した第1の仮想識別情報と生成した第2の仮想識別情報とに基づいて,前記周辺機器の仮想の識別情報(周辺機器仮想識別情報)を生成する,周辺機器仮想識別情報生成手段,を備えるとともに,
    (7)前記コンピュータから送信された前記周辺機器の識別情報の問い合わせに対し,生成した前記仮想周辺機器識別情報を応答する周辺機器識別情報応答手段,を備え,
    前記コンピュータは,
    (8)前記周辺機器サーバに向けて,周辺機器識別情報の問い合わせを送信する手段と,
    (9)前記問合せに対する応答として,前記周辺機器サーバから送信された周辺機器識別情報を受信する手段と,
    (10)受信した周辺機器識別情報に基づいて,前記周辺機器に対する,常に固定の論理通信経路を生成する手段と,
    を備えることを特徴とする。
  6. 前記機器情報は前記周辺機器のデバイスディスクリプタであり,
    前記第2の仮想識別情報生成手段は,前記ディスクリプタのiManufacturer情報とiProduct情報を取得し,当該取得した情報に基づいて不変の値を特定し,当該不変の値を第2の仮想識別情報として生成する,
    ことを特徴とする請求項5に記載の周辺機器利用システム。
JP2011252546A 2011-11-18 2011-11-18 デバイス識別装置 Active JP5803600B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011252546A JP5803600B2 (ja) 2011-11-18 2011-11-18 デバイス識別装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011252546A JP5803600B2 (ja) 2011-11-18 2011-11-18 デバイス識別装置

Publications (3)

Publication Number Publication Date
JP2013109466A true JP2013109466A (ja) 2013-06-06
JP2013109466A5 JP2013109466A5 (ja) 2015-01-08
JP5803600B2 JP5803600B2 (ja) 2015-11-04

Family

ID=48706176

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011252546A Active JP5803600B2 (ja) 2011-11-18 2011-11-18 デバイス識別装置

Country Status (1)

Country Link
JP (1) JP5803600B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11226780B2 (en) 2018-08-30 2022-01-18 Seiko Epson Corporation Information processing apparatus and control method of information processing apparatus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008263289A (ja) * 2007-04-10 2008-10-30 Ricoh Co Ltd 画像読み取り装置、読み取りデータ機密制御プログラム及び記録媒体
JP2009104421A (ja) * 2007-10-23 2009-05-14 Hitachi Ltd ストレージアクセス装置
JP2011182329A (ja) * 2010-03-03 2011-09-15 Yamaha Corp リモート制御システム
JP2011182327A (ja) * 2010-03-03 2011-09-15 Yamaha Corp リモート制御システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008263289A (ja) * 2007-04-10 2008-10-30 Ricoh Co Ltd 画像読み取り装置、読み取りデータ機密制御プログラム及び記録媒体
JP2009104421A (ja) * 2007-10-23 2009-05-14 Hitachi Ltd ストレージアクセス装置
JP2011182329A (ja) * 2010-03-03 2011-09-15 Yamaha Corp リモート制御システム
JP2011182327A (ja) * 2010-03-03 2011-09-15 Yamaha Corp リモート制御システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11226780B2 (en) 2018-08-30 2022-01-18 Seiko Epson Corporation Information processing apparatus and control method of information processing apparatus

Also Published As

Publication number Publication date
JP5803600B2 (ja) 2015-11-04

Similar Documents

Publication Publication Date Title
US8774055B2 (en) Switching method
US9787817B2 (en) Communication system and control device
JP2017212726A5 (ja)
RU2005114495A (ru) Web-служба для обнаружения удаленных приложений
CN107733839B (zh) 数据传输方法和系统
KR20160065774A (ko) 링크의 건전성을 점검하는 방법 및 장치
JP6509477B2 (ja) 制御装置および制御プログラム
WO2017032112A1 (zh) 一种与无中央处理器单板通讯的方法及通讯设备
JP2019523951A (ja) セキュアな通信を行う方法および産業コンピューティング装置
WO2017000790A1 (zh) 网关设备响应网络连通性方法和装置
WO2015036462A1 (en) Integration method and system
JPWO2015190079A1 (ja) 計算機システム、遠隔デバイスの接続管理方法及びプログラム
CN111008254A (zh) 一种对象创建方法、装置、计算机设备和存储介质
JP5803600B2 (ja) デバイス識別装置
CN112751724B (zh) 检测链路状态的方法及装置
CN111177053B (zh) 一种数据通信方法、装置、系统及计算机可读存储介质
WO2017043073A1 (ja) 通信先判定装置、通信先判定方法、及び、記録媒体
JP2011014036A (ja) 周辺機器管理装置および周辺機器管理プログラム
CN112019358A (zh) 网络配置方法、装置、设备和系统
CN114020678B (zh) 服务器串行控制台重定向方法、装置、系统以及电子设备
CN115454896A (zh) 基于smbus的ssd mctp控制消息验证方法、装置、计算机设备及存储介质
JP2013109466A5 (ja)
JP6412641B2 (ja) 通信リンクの送信方法、装置及び端末
WO2012117500A1 (ja) 通信装置
JP2018526924A (ja) データ処理システムを駆動するための方法、装置、及びコンピュータプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141118

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20141118

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20141209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150501

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150817

R150 Certificate of patent or registration of utility model

Ref document number: 5803600

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250