ぼちぼち書くブログ

日記とかうまいもんとかパソコンのことをマイペースで記します。高知市に住んでいるので地元の情報も投稿します。

USBデバイスサーバーを使えば解決:カンタン私書箱プリント~プリンター共有だけでは終わらない可能性が見えた

以前、サードパーティー製のプリントサーバー(USB印刷用)を使ってリコーの複合機にプリントアウトした際に、「カンタン私書箱プリント」が正しく動作せず、プリントアウトのタイミングによっては他人の私書箱に印刷物が紛れ込んでしまう不具合が起きるという事を記しました。

mypace.sasapurin.com

この不具合が起きる状況や構成、印刷の仕組みから、プリントサーバーの性能(機能)的にプリントジョブ(キュー)を順序良く実行することが出来ない為、印刷データがデータとデータの間に紛れ込んでしまうと、そのまま紛れ込んだ状態で印刷されるので、他人に私書箱に入ってしまうという症状ではないかと推測しました。

この不具合を回避するには、プリントサーバーのバッファ容量を大きく確保したり、ジョブの順番を正しく捌ける様に配慮されていないとダメ(本気のプリントサーバー機能が必要)だと言う結論に至った訳です。

一番良い方法はWindows Server等のServer OSのプリントサーバー機能を使う事だと行き着きました。スプール機能が充実していればジョブの混入は起こらないので、他人の私書箱に入る事は無いハズなのです。

しかし、その後ひょんな事からもっと手軽で有効な解決方法を見つけてしまいました。

USBデバイスをネットワーク共有する仕組み

結構マイナーなモノなので知らない人はなにそれ?という感じだと思いますが、USBデバイスをネットワーク上で共有する為の接続機器があります。見た目はサードパーティー製のプリントサーバーと同じなのですが機能が違います。

その名も「USBデバイスサーバー」は、「排他式」という接続方式が大前提なのですが、この接続方式の特性が今回の問題解決の鍵となりました。

各種USBデバイスをネットワーク上で「共有する」という目的に使用出来ますが、その共有には前提条件があります。「排他式」とは、平たく言えば「順番に交代しながら使う」方式です。誰かが使っている時には使えません。この「排他式」の大前提を逆手に取れば、プリントアウト時のジョブの混入は起こらない訳です。

もう少しUSBデバイスサーバーの動作について記すと、USBデバイスサーバーがネットワーク上に接続されていて、何らかのUSBデバイスが接続されているとします。そのネットワーク上のUSBデバイスを使う為には、パソコン上にUSBデバイスを認識させる必要があるのです。

この辺りの概念はUSBデバイスの基本なのでUSBメモリー等を使ったことがある人は直ぐに理解していただけると思いますが、必ずUSBデバイスをパソコンに認識させて「USBデバイスを認識しました」という感じでOS(Windows等)に利用許可を渡してやらなくてはなりません。

繰り返しになりますが、これは同じタイミングではどれか1台だけのPCに限定されるので、他のPCがそのUSBデバイスを使っている時は順番待ちになります。USBメモリーを同時に複数のPCで使用するのは無理だという事はご理解いただけると思います。USBデバイスが排他式なのはどうしようもないのです。

USBデバイスサーバのメリット

排他式であるという一見不便なところが今回の最大のメリットです。今回のプリントアウトで印刷物が紛れ込むという不具合を根本的な動作原理のところで解決するしくみの決めてが、この排他式接続でした。プリンターもUSBケーブルで接続すればUSBデバイスなのですから、当然ながら順番に使うしかないのです。

実際に複合機のUSBポートにUSBデバイスサーバを接続し、ネットワークに接続して共有します。そして各クライアントのプリンター設定に新たにこのUSBポートを設定してやり、自動接続&自動切断を設定します。複数メンバーで検証してみたところ、誰かが印刷中は「USBデバイスが使用されています」となり順番待ちになりますが、一定時間経つと再接続して成功したら印刷ジョブを複合機に送ります。印刷リクエストが終わったらUSB接続を解除してくれます。プリンターの使用(印刷)は早い者勝ちですが順番にプリンターを共用出来る仕組みでした。

更に別の用途もまだまだ考えられる

全く違う利用シーンをイメージしていただく為に一つ活用事例を上げてみます。高価な業務用アプリにはUSBドングルキー(ライセンス鍵)が使われている場合があります。複数のパソコンにアプリをインストール出来るけど、USBドングルキーを接続しているPCしか使用出来ないという制限(鍵)がかけられる仕組みです。このUSBドングルキーを、USBデバイスサーバでネットワーク上に置いておけば、誰か一人しか使用できないのはそのままですが、接続の手間だけで使用出来てしまいます。

別にメリットは無いんじゃないか?と思うかも知れませんが、USBドングルキーを手渡しでやり取りしてたとしたら、誰かがポケットに入れてて持ち歩いていたり、そのまま自宅に持ち帰ったとか、最悪はどこかで落として紛失したとかいうトラブルも考えられます。その点USBデバイスサーバでネットワーク上に置いておけば(物理的には施錠された部屋に置いておくとか厳重に管理すれば)、無くしてしまうなんて事は起こりません。決められた場所に置いたままでネットワーク共有できてしまう点がUSBデバイスサーバの最大のメリットでしょう。

USBドングルキーが2個以上ある場合は、USBデバイスサーバがそれぞれに欲しくなります。排他式ですからUSBドングルキー①が使用中なら、②のUSBドングルキー(USBデバイスサーバ)を使おうとするのは当然です。

USBドングルキーは一般的にライセンスとつながっているので、業務アプリを開発している会社は、USBドングルキーを増やしたければその分のお金をくださいね!という商売をしています。「同時利用数」と呼ばれますがキーで制限するのは良い仕組みだと思います。

プライベートユースでのメリット

私はこういう利用方法を考えていたりします。

自宅で使用するパソコンは、実は複数台あるのですが、一度に数台使うことは無くて今日はコレを使おうと言う感じで使う目的(用途)によって引っ張り出してくるノートパソコンを変えているのが実情です。

これには、同じPCの中に、アレもコレもインストールして、ごった煮状態の環境にするのが嫌(トラブルの原因)だからです。なるだけすっきりさせておきたいというのが長年パソコンを使って来て快適に使い続けるコツだとわかっているからです。

しかし、使い慣れたトラックボール(マウス)は同じものを使いたいです。手が慣れていますから当然です。

そこで、USBデバイスサーバでトラックボールのレシーバーをネットワーク共有してしまいます。するとパソコンAを使用する時には、ネットワーク上に置いてあるトラックボールのレシーバーにパソコンを接続させてUSB認識させると、トラックボールが使用出来ます。同様にパソコンBを使うときはパソコンAは電源を切って片付けていますので、パソコンBからトラックボールのレシーバーに接続すれば、普段通りトラックボールが使用出来てしまいます。

いちいち、パソコンにトラックボールのUSBレシーバーを差し替える手間が省けますから、USBコネクタが少しずつでも劣化して行くことを抑えられますし、手間も省けます。レシーバーを無くしたなんて事も起こりません。

USBデバイスの種類

先日、USBデバイスってどれくらい有るのかなと適当に思いつくものをリストアップしましたら、結構な種類の機器が存在する事を再認識しました。

mypace.sasapurin.com

指紋認証(静脈認証)デバイスなんかも、USBデバイスサーバで共有できたら便利かも知れません。置き場所はいつも同じ場所で良く接続しなおす手間も無い訳ですからね。

USBデバイスサーバーは、接続してみてから用途を考えるという逆転の機器とも考えられ、かなりマニアックなものですが、ハマると手放せなくなる可能性を秘めている機器だと思います。

国産メーカーでは、アイ・オー・データの「net.USB」という商標?がありますが、本家はサイレックスの製品と考えた方が正解でしょう。正確に調べた訳ではありませんが、アイ・オー・データの「net.USB」はサイレックスの技術を使わせてもらっている立場の様です。アイ・オー・データの製品の場合は「net.USB」を選べば比較的安心だとは思います。どうやら過去にもBuffaloやPlanexが類似品を出していた様ですが既に終息していてアイ・オー・データが同商標で地道に製品化を続けている様ですから日本国内では唯一と行っても良いでしょう。

一番信頼出来るのがサイレックスで、同社はまだ新製品を出しているのでこのジャンルでは一番の信頼筋だと思います。ただ、世界規模とは言えニッチな製品であることは間違いないので、今後いつまでこの事業が続くかは誰も分からない事だと思います。便利さに気づいてもっともっと活用する人が増えると先も明るくなるのですが。

Wi-Fi対応のUSBデバイスサーバーも存在しますので、LANケーブルすら敷設出来ない場所に電源さえ有ればUSB機器を設置出来るので、例えばUSB接続のWebカメラを窓際に設置したりとか、天井裏に設置したりとかも可能になる訳ですね。使い方を誤ると危険な事になりかねないので注意が必要ですが、色々な事が出来る可能性を秘めているテクノロジーだと思います。

サイレックス・テクノロジー IEEE802.11a/b/g/n対応 Wireless USBデバイスサーバ SX-DS-3000WAN

サイレックス・テクノロジー IEEE802.11a/b/g/n対応 Wireless USBデバイスサーバ SX-DS-3000WAN

 
サイレックス・テクノロジー ハイパフォーマンスUSBデバイスサーバ SX-DS-4000U2

サイレックス・テクノロジー ハイパフォーマンスUSBデバイスサーバ SX-DS-4000U2