(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0005】
また、近年では、クライアント側のコンピュータ内に存在するデータ、ソフトウェア、ハードウェア等の機能をインターネット上のサーバ群に移行し、ユーザはインターネットを介して、それらを必要に応じて必要な分だけ利用するコンピュータの利用形態である、所謂クラウドコンピューティングが提案されている。クラウドコンピューティングでは、スケールアウトを実現しつつ、ユーザが操作するコンピュータ(端末装置)と、ユーザが利用を望むデバイスとを容易に接続することが求められている。なおデバイスとは、スキャナ、プリンタ、複合機等のコンピュータの周辺機器(画像処理装置)である。
【0006】
本発明は、クラウドコンピューティング環境において、スケールアウトを実現しつつ、端末装置と画像処理装置との接続を容易に確立することができる情報処理システム、情報処理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の請求項1に係る情報処理システムは、端末装置と情報処理装置と画像処理装置とが接続される情報処理システムにおいて、前記情報処理装置は、ネットワークを介して接続された前記画像処理装置から接続要求を受信する第1受信手段と、前記第1受信手段により受信された前記接続要求を前記情報処理装置の第1仮想マシンに対して転送する第1転送手段と、ネットワークを介して接続された前記端末装置から接続要求を受信する第2受信手段と、前記第2受信手段により受信された前記接続要求を前記情報処理装置の第2仮想マシンに対して転送する第2転送手段と、を有し、前記第2仮想マシンは、前記端末装置を介してユーザにより選択された前記画像処理装置の識別情報を受信すると、該識別情報に基づいて前記第1仮想マシンを識別する第1仮想マシン識別情報を取得する取得手段と、前記取得した第1仮想マシン識別情報に基づいて、前記第1仮想マシンに対して、前記画像処理装置との接続権限を委譲するよう要求する接続委譲要求手段と、前記第1仮想マシンから前記接続権限を受け取ると、前記第2仮想マシンと前記画像処理装置とを接続させる接続手段と、を備えている、ことを特徴とする。
【0008】
本発明の請求項2に係る情報処理システムは、請求項1に記載の構成において、前記第1仮想マシンは、前記第2仮想マシンから前記接続
権限の委譲
の要求を受け取ると、該第2仮想マシンへ、前記接続権限を委譲する接続委譲手段を備えている。
【0009】
本発明の請求項3に係る情報処理システムは、請求項1又は2に記載の構成において、前記識別情報には、ユーザが設定したジョブに対応して当該情報処理システムにおいて生成されたジョブ識別情報が関連付けられており、前記第2仮想マシンは、前記画像処理装置に対して前記ジョブを実行する実行手段をさらに備えている。
【0010】
本発明の請求項4に係る情報処理システムは、請求項3に記載の構成において、前記画像処理装置は、ユーザが提示したジョブ識別情報を前記第2仮想マシンへ送信する。
【0011】
本発明の請求項5に係る情報処理システムは、請求項4に記載の構成において、前記第2仮想マシンは、前記端末装置を介して受信した少なくとも1つのジョブ識別情報を記憶する記憶部と、前記画像処理装置から送信されたジョブ識別情報が、前記記憶
部のジョブ識別情報と一致するか否かを判定する判定手段とを備え、前記実行手段は、前記画像処理装置に対して、前記記憶部のジョブ識別情報と一致する、前記画像処理装置から送信されたジョブ識別情報のジョブを実行する。
【0012】
本発明の請求項6に係る情報処理システムは、請求項5に記載の構成において、前記情報処理装置は、
第1の前記端末装置から接続要求を受信すると、前記第2仮想マシンに対して該接続要求を転送し、
第2の前記端末装置から接続要求を受信すると、第3仮想マシンに対して該接続要求を転送し、前記第3仮想マシンは、前記第3仮想マシンが前記第2
の前記端末装置を介して受信したジョブ識別情報のジョブを、前記第1仮想マシンから前記接続権限を受け取った前記第2仮想マシンに委譲する。
【0013】
本発明の請求項7に係る情報処理システムは、端末装置と情報処理装置と画像処理装置とが接続される情報処理システムにおいて、前記情報処理装置は、ネットワークを介して接続された前記画像処理装置から接続要求を受信する第1受信手段と、前記第1受信手段により受信された前記接続要求を前記情報処理装置の第1仮想マシンに対して転送する第1転送手段と、ネットワークを介して接続された前記端末装置から接続要求を受信する第2受信手段と、前記第2受信手段により受信された前記接続要求を前記情報処理装置の第2仮想マシンに対して転送する第2転送手段と、を有し、前記第2仮想マシンは、前記端末装置を介してユーザにより選択された前記画像処理装置の識別情報を受信すると、該識別情報に基づいて前記第1仮想マシンを識別する第1仮想マシン識別情報を取得する取得手段と、前記取得した第1仮想マシン識別情報に基づいて、前記第1仮想マシンに対して、前記端末装置との接続権限と、前記端末装置を介して受信する、ユーザが設定したジョブとを委譲する委譲手段と、を備え、前記第1仮想マシンは、前記第2仮想マシンから前記接続権限を受け取ると、前記第1仮想マシンと前記画像処理装置とを接続させる接続手段を備えている。
【0014】
本発明の請求項8に係る情報処理システムは、請求項7に記載の構成において、前記第1仮想マシンは、前記画像処理装置に対して前記ジョブを実行する実行手段をさらに備えている。
【0015】
本発明の請求項9に係る情報処置装置は、
ネットワークを介して画像処理装置と端末装置とに接続された情報処理装置において、前記画像処理装置から接続要求を受信する第1受信手段と、前記第1受信手段により受信された前記接続要求を当該情報処理装置の第1仮想マシンに対して転送する第1転送手段と、
前記端末装置から接続要求を受信する第2受信手段と、前記第2受信手段により受信された前記接続要求を当該情報処理装置の第2仮想マシンに対して転送する第2転送手段と、を有し、前記第2仮想マシンは、前記端末装置を介してユーザにより選択された前記画像処理装置の識別情報を受信すると、該識別情報に基づいて前記第1仮想マシンを識別する第1仮想マシン識別情報を取得する取得手段と、前記取得した第1仮想マシン識別情報に基づいて、前記第1仮想マシンに対して、前記画像処理装置との接続権限を委譲するよう要求する接続委譲要求手段と、前記第1仮想マシンから前記接続権限を受け取ると、前記第2仮想マシンと前記画像処理装置とを接続させる接続手段と、を備えている。
【0016】
本発明の請求項10に係るプログラムは、コンピュータを、コンピュータを、情報処理装置にネットワークを介して接続された画像処理装置から接続要求を受信する第1受信手段、前記第1受信手段により受信された前記接続要求を前記情報処理装置の第1仮想マシンに対して転送する第1転送手段、前記情報処理装置にネットワークを介して接続された端末装置から接続要求を受信する第2受信手段、及び、前記第2受信手段により受信された前記接続要求を前記情報処理装置の第2仮想マシンに対して転送する第2転送手段、として機能させるためのプログラムであって、前記第2仮想マシンは、前記端末装置を介してユーザにより選択された前記画像処理装置の識別情報を受信すると、該識別情報に基づいて前記第1仮想マシンを識別する第1仮想マシン識別情報を取得する取得手段と、前記取得した第1仮想マシン識別情報に基づいて、前記第1仮想マシンに対して、前記画像処理装置との接続権限を委譲するよう要求する接続委譲要求手段と、前記第1仮想マシンから前記接続権限を受け取ると、前記第2仮想マシンと前記画像処理装置とを接続させる接続手段と、を含む。
【発明の効果】
【0017】
本発明の請求項1,7,9,10の構成によれば、スケールアウトを実現しつつ、端末装置と画像処理装置との接続を容易に確立することができる。また、本発明の請求項7の構成によれば、仮想マシンと画像処理装置との接続切替を行わず、ジョブを委譲することによりジョブが実行されるため、上記接続切替に要する負荷が低減される。
【0018】
本発明の請求項2の構成によれば、第1仮想マシンから第2仮想マシンへ画像処理装置との接続権限が委譲される。
【0019】
本発明の請求項3の構成によれば、画像処理装置に本接続される第2仮想マシンによりジョブが実行される。
【0020】
本発明の請求項4の構成によれば、画像処理装置により認証されたジョブが実行されるため、意図しないジョブの実行を抑制することができる。
【0021】
本発明の請求項5,6の構成によれば、例えばユーザAのジョブID1よりも先に認証されたユーザBのジョブID2が実行されるため、同一の画像処理装置を複数ユーザで適切に共有することができる。
【0022】
本発明の請求項8の構成によれば、画像処理装置に本接続される第1仮想マシンによりジョブが実行される。
【発明を実施するための形態】
【0024】
本発明の一実施形態について、図面を用いて以下に説明する。
【0025】
図1は、本実施形態に係るデバイス接続管理システム1の機能ブロック図である。同図に示すように、デバイス接続管理システム1(情報処理システム)は、デバイス管理部10(情報処理装置)と、操作端末20(端末装置)と、デバイス30(画像処理装置)とを含んでいる。操作端末20及びデバイス30はそれぞれ、インターネット等のネットワークを介して、デバイス管理部10に接続されている。すなわち、デバイス接続管理システム1は、操作端末20と、デバイス30と、該操作端末20及び該デバイス30にネットワークを介して接続されるデバイス管理部10とを含んで実現されるクラウドコンピューティングにおいて、該操作端末20と該デバイス30との接続を管理するシステムである。なお、
図1のデバイス接続管理システム1では、1個の操作端末20と、1個のデバイス30を示しているが、本発明はこれに限定されず、操作端末20及びデバイス30はそれぞれ複数個存在していてもよい。
【0026】
操作端末20は、ユーザが操作・指示する装置であり、例えば、パーソナルコンピュータ(PC)、情報携帯端末(PDA)、スマートフォン等である。
【0027】
デバイス30は、一般的にPC等に有線又は無線により接続される周辺機器であり、例えば、スキャナ、プリンタ、複合機等の画像処理装置である。デバイス30は、通信機能を有し、ネットワークを介してデバイス管理部10に接続されている。なお、デバイス30は、通信機能を有する中継器又は他の操作端末を介して、デバイス管理部10にネットワーク接続されていてもよい。
【0028】
デバイス管理部10は、クラウドの中に構築されるサーバ群であり、分配部11と、接続管理部12と、複数のVMと、を含んでいる。
【0029】
VMは、クラウド環境において構築される仮想マシン(Virtual Machine)であり、物理的なコンピュータを仮想化技術によって論理的なコンピュータに分割し、分割された中で独立したオペレーティングシステムを有して動作する論理的(仮想的)なコンピュータである。
図1ではn個のVMが示されている。
【0030】
分配部11は、操作端末20及びデバイス30からネットワークを介して受信する接続要求を一元的に管理し、任意のVMに対して接続要求を転送する。すなわち、分配部11は、複数のVM間の負荷が均等になるように処理を分散して割り当てる負荷分散装置であり、例えばクラウドの中に構築される複数のVMのうち余力のあるVMに接続要求を転送する。分配部11は、上記接続要求を受信する受信手段、及び該接続要求を転送する転送手段としての機能を有する。
【0031】
接続管理部12は、操作端末20からネットワークを介して受信するジョブ情報(ジョブID)、操作端末20とネットワーク接続するVMの情報、デバイス30とネットワーク接続するVMの情報等を登録及び管理する。接続管理部12は、上記各情報を記憶する記憶部を含んでいる。なお、記憶部は、接続管理部12の外部(例えば分配部11)に設けられていてもよい。
【0032】
上記デバイス接続管理システム1は、概略的には、操作端末20及びデバイス30からのそれぞれの接続要求を任意の異なるVMに転送(仮接続)し、操作端末20からのデバイス30の利用要求に基づいて、一方のVMの接続権限及び/又はジョブを、他方のVMに委譲することにより、操作端末20とデバイス30との接続を確立し、ジョブを実行する構成を有する。
【0033】
ここで、上記構成を実現するための方法として、2つの方法(実施例)が考えられる。
図2は、実施例1に係るデバイス接続管理システム1の構成を示す模式図である。実施例1は、操作端末20に接続されたVM(以下、サービスVMという。)が、デバイス30に接続されたVM(以下、保留VMという。)を検索し、保留VMからサービスVMへデバイス30との接続権限を委譲し、サービスVMがジョブを実行する構成である。
図3は、実施例2に係るデバイス接続管理システム1の構成を示す模式図である。実施例2は、操作端末20に接続されたサービスVMが、デバイス30に接続された保留VMを検索し、サービスVMから保留VMへジョブを委譲し、保留VMがジョブを実行する構成である。
【0034】
以下では、上記実施例1,2に係るデバイス接続管理システム1の処理について具体例を挙げて説明する。ここでは、デバイス30の一例として、スキャナを挙げる。
【0035】
[実施例1]
図4及び
図5は、実施例1に係るデバイス接続管理システム1の動作フロー図である。
【0036】
先ず、ユーザはデバイス30(スキャナ)の電源を投入する。これによりデバイス30が起動する(S101)。デバイス30は、起動後、分配部11へ接続要求を送信する(S102)。接続要求には、デバイス30を特定するための情報(デバイス識別情報)が含まれている。
【0037】
分配部11は、デバイス30から接続要求を受信すると、任意のVM(保留VM;第1仮想マシン)へ接続要求(仮接続要求)を転送する(S103)。分配部11は、負荷の小さいVM、例えばジョブが未だ登録されていないVMに対して、仮接続要求を転送する。
【0038】
保留VMは、分配部11から仮接続要求を受信すると、デバイス30との仮接続を確立する。保留VMは、仮接続後、接続管理部12へ仮接続情報を送信するとともに、デバイス30へ仮接続完了通知を送信する(S104)。仮接続情報は、デバイス識別情報と、保留VMを特定するための情報(保留VM識別情報)とが関連付けられた情報である。よって、仮接続情報から、デバイス30と該デバイス30に仮接続されている保留VMとを特定することができる。
【0039】
接続管理部12は、保留VMから仮接続情報を受信すると、仮接続情報を内部の記憶部に登録する。
【0040】
その後、ユーザは操作端末20により、Webブラウザを利用してWebサイトにアクセスする(S105)。ここでのWebサイトは、例えば、クラウドコンピューティングにおけるスキャナサービスに関するサイトである。
【0041】
Webサイトにアクセスすると、分配部11は、任意のVM(サービスVM;第2仮想マシン)へログイン処理依頼(接続要求)を送信する(S106)。分配部11は、上記と同様に例えば負荷の小さい、保留VMとは異なるVMに対して、ログイン処理依頼を送信する。ログイン処理依頼には、ユーザの操作端末20を特定するための情報(端末識別情報)が含まれている。
【0042】
サービスVMは、分配部11からログイン処理依頼を受信すると、対応する操作端末20へログイン画面を送信する(S107)。
【0043】
操作端末20がサービスVMからログイン画面を受信すると、ユーザは、操作端末20の表示部に表示されたログイン画面に、ユーザ情報(例えば、ユーザID、パスワード等)を入力する。入力が完了すると、操作端末20は、ユーザ情報を含むログイン要求をサービスVMへ送信する(S108)。
【0044】
サービスVMは、操作端末20からログイン要求を受信すると、ログイン要求のユーザ情報に基づいて、ユーザ認証を行い、認証するとサービス画面を操作端末20へ送信する(S109)。これにより、操作端末20とサービスVMとが仮接続される。
【0045】
操作端末20がサービスVMからサービス画面を受信すると、ユーザは、操作端末20の表示部に表示されたサービス画面において、ジョブ設定を行う。具体的には、ユーザは、デバイス(ここではスキャナ)を選択し、ジョブの実行予約を行う。ユーザがジョブの実行予約を行うと、ジョブを識別するための情報(ジョブID)がデバイス接続管理システム1の内部で生成される(S110)。ユーザにより設定されたジョブ(ジョブID)には、利用するデバイスを特定するための情報(デバイス識別情報)が関連付けられている。
【0046】
サービスVMは、ジョブIDを内部の記憶部に登録するとともに、ジョブIDに関連付けられているデバイス識別情報を接続管理部12へ送信する(S111)。
【0047】
接続管理部12は、サービスVMからデバイス識別情報を受信すると、記憶部に登録されている仮接続情報を参照して、デバイス識別情報に関連付けられている保留VM識別情報を取得する。接続管理部12は、取得した保留VM識別情報をサービスVMへ送信する(S112)。
【0048】
サービスVMは、接続管理部12から保留VM識別情報を受信すると、該保留VM識別情報により特定される保留VMに対して、デバイス30との接続権限を委譲するよう要求(接続委譲要求を送信)する(S113)。保留VMは、サービスVMから接続委譲要求を受信すると、デバイス30との接続権限をサービスVMへ委譲する(S114)。接続権限がサービスVMに委譲されると、デバイス30とサービスVMとが本接続される。
【0049】
デバイス30とサービスVMとが本接続されると、ネゴシエーションが行われ、デバイス30とサービスVMとの間の通信条件等が情報交換される(S115)。
【0050】
上記本接続が完了すると、サービスVMは、本接続情報を接続管理部12へ送信し、接続管理部12は、本接続情報を記憶部に登録する(S116)。本接続情報は、ジョブIDと、サービスVMの識別情報(サービスVM識別情報)と、デバイス30の識別情報(デバイス識別情報)とが関連付けられた情報である。また、サービスVMは、ジョブIDを操作端末20へ送信し、その後、デバイス30からの指示を待機する(S117)。
【0051】
その後、ユーザは利用するデバイス30にジョブIDを入力し、デバイス30により認証(受付)が行われる(S118)。デバイス30は、入力されたジョブIDを認証すると、ジョブIDをサービスVMへ送信する(S119)。なお、デバイス30は、入力されたジョブIDの認証を行わずに該ジョブIDをサービスVMへ送信してもよい。
【0052】
サービスVMは、デバイス30からジョブIDを受信すると、データ転送の事前確認を行う。すなわち、サービスVMは、本接続情報に含まれるジョブIDと、デバイス30から受信したジョブIDとを比較し、両者が一致するか否かを判定する(S120)。なお、サービスVMは、自身の記憶部に登録されている本接続情報に基づいて上記判定処理を行ってもよいし、接続管理部12の記憶部に登録されている本接続情報を参照して上記判定処理を行ってもよい。
【0053】
本接続情報に含まれるジョブIDと、デバイス30から受信したジョブIDとが一致する場合、サービスVMは、デバイス30へ許可通知を送信する(S121)。デバイス30がサービスVMから上記許可通知を受信すると、デバイス30は利用可能状態となり、ユーザはスキャン操作を行う(S122)。デバイス30は、予約されたジョブを実行するためのデータ(スキャンデータ)をサービスVMへ投入し、サービスVMは該ジョブを実行する(S123)。
【0054】
サービスVMは、ジョブ実行後、接続解除要求を接続管理部12へ送信する(S124)。接続解除要求には、ジョブIDとデバイス識別情報とサービスVM識別情報とが関連付けられた情報が含まれている。接続管理部12は、サービスVMから接続解除要求を受信すると、ジョブIDに関するデバイス30とサービスVMとの本接続を解除する。
【0055】
上記一連の処理により、サービスVMとデバイス30との接続が確立され、ジョブIDに対応するジョブが実行される。これにより、スケールアウトを実現しつつ、操作端末とデバイスとの接続を容易に確立することができる。
【0056】
上記のように、サービスVMは、操作端末20を介してユーザにより選択されたデバイス30のデバイス識別情報を受信すると、デバイス識別情報に基づいて、デバイス識別情報と保留VM識別情報とを関連付けて記憶する記憶部から、保留VM識別情報を取得する取得部(取得手段)と、取得した保留VM識別情報に基づいて、保留VMに対して、デバイス30との接続権限を委譲するよう要求する接続委譲要求部(接続委譲要求手段)と、保留VMから接続権限を受け取ると、サービスVMとデバイス30とを接続させる接続部(接続手段)と、を備えている。また、サービスVMは、デバイス30に対してジョブを実行する実行部(実行手段)を備えている。すなわち、サービスVMは、上記各手段としての機能を有している。
【0057】
また、保留VMは、サービスVMから接続委譲要求を受け取ると、サービスVMへ接続権限を委譲する接続委譲部(接続委譲手段)を備えている。すなわち、保留VMは、接続委譲手段としての機能を有している。
【0058】
また、デバイス30は、ユーザが提示したジョブIDを認証する認証部(認証手段)を備えているとともに、認証したジョブIDをサービスVMへ送信する。すなわち、デバイス30は、認証手段としての機能を有している。
【0059】
ここで、
図4及び
図5に示した処理例では、1人のユーザがジョブを入力した場合について示しているが、本実施例1はこれに限定されず、複数のユーザが、同一のデバイスを選択して、互いに異なるジョブを入力した場合でも適用することができる。以下では、複数のユーザが異なるジョブを入力して、同一のデバイスを共有する例(変形例)について説明する。
【0060】
[変形例]
図6〜
図8は、変形例に係るデバイス接続管理システム1の動作フロー図である。なお、
図4及び
図5に示した処理と同一の処理は説明を省略する。
【0061】
図6〜
図8におけるユーザA、操作端末1、及びサービスVM1は、
図4及び
図5のユーザ、操作端末、及びサービスVMに相当する。
図6〜
図8において、操作端末2は、ユーザBが操作する端末であり、サービスVM2は、操作端末2とネットワーク接続される任意のVMである。以下では、操作端末1を第1操作端末20、操作端末2を第2操作端末20と称す。
【0062】
ユーザAがジョブ設定したデバイス情報を含むジョブが、サービスVM1に登録され(S111)、保留VMから、デバイス30との接続権限がサービスVM1へ委譲され(S114)、サービスVM1から、内部で生成されたジョブID1が第1操作端末20へ送信され(S117)、その後、デバイス30からの指示を待機する処理までは、
図4及び
図5に示した処理と同一である。但し、本接続及びネゴシエーションの処理(
図5のS115)は、後工程に変更される。よって、
図7のS116では、サービスVM1から仮接続情報1が接続管理部12へ送信され、仮接続情報1が接続管理部12の記憶部に登録される。この仮接続情報1は、ジョブID1と、サービスVM1の識別情報(サービスVM1識別情報)と、デバイス30の識別情報(デバイス識別情報)とが関連付けられた情報である。
【0063】
ユーザBが第2操作端末20により、Webブラウザを利用してWebサイトにアクセスすると(S201)、分配部11は、任意のVM(例えば、サービスVM2)へログイン処理依頼(接続要求)を送信する(S202)。ログイン処理依頼には、ユーザBの第2操作端末20を特定するための情報(端末識別情報)が含まれている。
【0064】
サービスVM2は、分配部11からログイン処理依頼を受信すると、対応する第2操作端末20へログイン画面を送信する(S203)。
【0065】
第2操作端末20がサービスVM2からログイン画面を受信すると、ユーザBは、第2操作端末20の表示部に表示されたログイン画面に、ユーザ情報(ユーザID、パスワード等)を入力する。入力が完了すると、第2操作端末20は、ユーザ情報を含むログイン要求をサービスVM2へ送信する(S204)。
【0066】
サービスVM2は、第2操作端末20からログイン要求を受信すると、ログイン要求のユーザ情報に基づいて、ユーザ認証を行い、認証するとサービス画面を第2操作端末20へ送信する(S205)。これにより、第2操作端末20とサービスVM2とが仮接続される。
【0067】
第2操作端末20がサービスVM2からサービス画面を受信すると、ユーザBは、第2操作端末20の表示部に表示されたサービス画面において、ジョブ設定を行う。具体的には、ユーザBは、同一のデバイス(ここでは同一のスキャナ)を選択し、ジョブの実行予約を行う。ユーザがジョブの実行予約を行うと、ジョブを識別するための情報(ジョブID2)がシステムの内部で生成される(S206)。ユーザBにより設定されたジョブ(ジョブID2)には、ジョブID1に対応するデバイスと同一のデバイス識別情報が関連付けられている。
【0068】
サービスVM2は、ジョブID2を内部の記憶部に登録するとともに、ジョブID2に関連付けられているデバイス識別情報を接続管理部12へ送信する(S207)。
【0069】
接続管理部12は、サービスVM2からデバイス識別情報を受信すると、記憶部に登録されている仮接続情報1を参照して、デバイス識別情報に関連付けられているサービスVM1の識別情報を取得する。接続管理部12は、取得したサービスVM1識別情報をサービスVM2へ送信する(S208)。
【0070】
サービスVM2は、接続管理部12からサービスVM1識別情報を取得すると、該サービスVM1識別情報により特定されるサービスVM1にジョブID2のジョブを委譲する(S209)。
【0071】
サービスVM1は、サービスVM2からジョブID2を受信すると、仮接続情報2を記憶部に登録する(S210)。この仮接続情報2は、ジョブID2と、サービスVM1の識別情報(サービスVM1識別情報)と、デバイス30の識別情報(デバイス識別情報)とが関連付けられた情報である。また、サービスVM1は、ジョブID2を第2操作端末20へ送信し、その後、デバイス30からの指示を待機する(S211)。
【0072】
その後、例えばユーザBがユーザAよりも先に、利用するデバイス30にジョブID2を入力し、デバイス30により認証(受付)が行われると(S212)、デバイス30は、ジョブID2をサービスVM1へ送信する(S213)。なお、デバイス30は、入力されたジョブID2の認証を行わずに該ジョブID2をサービスVMへ送信してもよい。
【0073】
サービスVM1は、デバイス30からジョブID2を受信すると、データ転送の事前確認を行う。すなわち、サービスVM1は、仮接続情報1,2に含まれるジョブID1,ID2と、デバイス30から受信したジョブID2とを比較し、両者が一致するか否かを判定する(S214)。
【0074】
仮接続情報1,2に含まれるジョブID2と、デバイス30から受信したジョブID2とが一致する場合、サービスVM1は、デバイス30と本接続し、ネゴシエーションを行う(S215)。そして、デバイス30が利用可能状態となり、ユーザBがスキャン操作を行う(S216)。デバイス30は、予約されたジョブID2のジョブを実行するためのデータ(スキャンデータ)をサービスVM1へ投入し、サービスVM1ではジョブID2のジョブが実行される(S217)。
【0075】
サービスVM1は、ジョブID2のジョブの実行後、接続解除要求を接続管理部12へ送信する(S218)。接続解除要求には、ジョブID2とデバイス識別情報とサービスVM1識別情報とが関連付けられた情報が含まれている。接続管理部12は、サービスVM1から接続解除要求を受信すると、デバイス30とサービスVM1との本接続を解除する。
【0076】
上記変形例の処理によれば、ユーザAのジョブID1よりも先にデバイス30により認証(または送信)されたユーザBのジョブID2が実行される。すなわち、同一のデバイス30を複数ユーザで適切に共有することができる。
【0077】
また、上記のように、サービスVMは、複数の操作端末20を介して受信した複数のジョブIDを記憶する記憶部と、デバイス30により認証されたジョブIDが、記憶部のジョブIDと一致するか否かを判定する判定部(判定手段)とを備え、実行部が、デバイス30に対して、記憶部のジョブIDと一致する、デバイス30により認証されたジョブIDのジョブを実行する構成を有する。すなわち、サービスVMは、判定手段としての機能を有している。
【0078】
また、分配部11は、第1操作端末20から接続要求を受信すると、サービスVM1に対して該接続要求を転送し、第2操作端末20から接続要求を受信すると、サービスVM2に対して該接続要求を転送し、サービスVM2は、該サービスVM2が第2操作端末20を介して受信したジョブID2のジョブを、保留VMから接続権限を受け取った前記サービスVM1に委譲する構成を有している。
【0079】
[実施例2]
実施例2に係るデバイス接続管理システム1の処理について説明する。実施例2に係るデバイス接続管理システム1の処理は、ユーザが設定したジョブがサービスVMに登録される処理までは、実施例1(
図4及び
図5のS101〜S112)と同一である。
図9は、実施例2に係るデバイス接続管理システム1における上記S112以降の動作フローを示している。ここでは、実施例1との相違点を中心に説明する。
【0080】
サービスVMは、接続管理部12から保留VM識別情報を受信すると(S112)、ユーザにより設定されたジョブを、対応する保留VMへ委譲する(S301)。また、サービスVMは、操作端末20からログインにより確立された仮接続(
図4のS108)の権限を保留VMへ委譲する(S302)。
【0081】
保留VMは、ジョブIDのジョブ及び操作端末20との接続権限を委譲されると、ジョブIDを内部の記憶部に登録するとともに操作端末20へ送信し、その後、デバイス30からの指示を待機する(S303)。
【0082】
その後、ユーザは利用するデバイス30にジョブIDを入力し、デバイス30により認証(受付)が行われる(S304)。デバイス30は、入力されたジョブIDを認証すると、ジョブIDを保留VMへ送信する(S305)。なお、デバイス30は、入力されたジョブIDの認証を行わずに該ジョブIDをサービスVMへ送信してもよい。
【0083】
保留VMは、デバイス30からジョブIDを受信すると、データ転送の事前確認を行う。すなわち、保留VMは、サービスVMから受信したジョブIDと、デバイス30から受信したジョブIDとを比較し、両者が一致するか否かを判定する(S306)。
【0084】
サービスVMから受信したジョブIDと、デバイス30から受信したジョブIDとが一致する場合、保留VMは、デバイス30と本接続し、ネゴシエーションを行う(S307)。そして、デバイス30が利用可能状態となり、ユーザはスキャン操作を行う(S309)。デバイス30は、予約されたジョブを実行するためのデータ(スキャンデータ)を保留VMへ投入し、保留VMは該ジョブを実行する(S310)。
【0085】
保留VMは、ジョブ実行後、接続解除要求を接続管理部12へ送信する(S311)。接続解除要求には、ジョブIDとデバイス識別情報と保留VM識別情報とが関連付けられた情報が含まれている。接続管理部12は、保留VMから接続解除要求を受信すると、デバイス30と保留VMとの本接続を解除する。
【0086】
上記処理によれば、スケールアウトを実現しつつ、ジョブを実行するVMとデバイスとの接続を容易に確立することができる。また、上記処理によれば、VMとデバイスとの接続切替を行わず、ジョブを委譲することによりジョブが実行されるため、上記接続切替に要する負荷が低減される。本実施例は、ジョブの設定情報が比較的少ない場合に特に有効である。
【0087】
上記のように、サービスVMは、操作端末20を介してユーザにより選択されたデバイス30のデバイス識別情報を受信すると、デバイス識別情報に基づいて、デバイス識別情報と保留VMの保留VM識別情報とを関連付けて記憶する記憶部から、保留VM識別情報を取得する取得部(取得手段)と、取得した保留VM識別情報に基づいて、保留VMに対して、操作端末20との接続権限と、操作端末20を介して受信するユーザが設定したジョブとを委譲する委譲部(委譲手段)と、を備えている。すなわち、サービスVMは、上記各手段としての機能を有している。
【0088】
また、保留VMは、サービスVMから操作端末20との接続権限を受け取ると、保留VMとデバイス30とを接続させる接続部(接続手段)と、デバイス30に対してジョブを実行する実行部(実行手段)と、を備えている。すなわち、保留VMは、上記各手段として機能する。
【0089】
上述したデバイス管理部10(情報処理装置)に備えられる上記の各部の機能は、CPU等の制御手段、メモリ等の記憶手段、外部デバイスとデータを送受信する入出力手段等を備えたコンピュータが、コンピュータ読み取り可能な情報記憶媒体に格納されたプログラムを読み込み実行することで実現されるものとしてもよい。なお、プログラムは光ディスク、磁気ディスク、磁気テープ、光磁気ディスク、フラッシュメモリ等の情報記憶媒体によってコンピュータたるデバイス管理部10に供給されることとしてもよいし、インターネット等のデータ通信網を介してデバイス管理部10に供給されることとしてもよい。