(57)【要約】【課題】装置外部と通信可能な複数の実行環境を有する情報処理装置に関し、装置外部から単独の通信相手として認識される構成を実現する。【解決手段】複合機Ｍは、ハイパーバイザ１０のＡＲＰ要求制御部１２により、装置外部から送信されたＡＲＰ要求についてはＯＳ−Ｘ２０へ送信し、ＯＳ−Ｘ２０から送信されたＡＲＰ要求については装置外部及びＯＳ−Ｙ３０へ送信し、ＯＳ−Ｙ３０から送信されたＡＲＰ要求についてはＯＳ−Ｘ２０へ送信するように制御する。これにより、装置外部から送信されたＡＲＰ要求に対してＯＳ−Ｘ２０が応答動作を行う一方でＯＳ−Ｙ３０が応答動作を行うことはなく、また、ＯＳ−Ｙ３０から送信されたＡＲＰ要求は装置外部へ送信されない。【選択図】図１
2012014249.tif 000002
【特許請求の範囲】
【請求項１】
処理の実行環境となる第１実行環境及び第２実行環境と、前記第１実行環境及び前記第２実行環境をそれぞれ仮想環境として動作させるための仮想化処理を行う仮想化処理部を備え、
前記仮想化処理部は、装置外部から送信されたＡＲＰ要求については前記第１実行環境へ送信し、前記第１実行環境から送信されたＡＲＰ要求については装置外部及び前記第２実行環境へ送信し、前記第２実行環境から送信されたＡＲＰ要求については前記第１実行環境へ送信するように制御するＡＲＰ要求制御手段を有する、
ことを特徴とする情報処理装置。
【請求項２】
前記第２実行環境又は前記仮想化処理部は、前記第２実行環境から装置外部の通信相手を送信先に指定して送信するデータについて、当該データの送信元を示すアドレス情報を前記第１実行環境のアドレス情報に変更して前記第１実行環境を介さずに装置外部へ送信するように制御する送信制御手段を有する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１実行環境又は前記仮想化処理部は、装置外部の通信相手から前記第１実行環境を送信先に指定して送信されたデータについて、前記第２実行環境へ転送する条件を満たす場合に、当該データの送信先を示すアドレス情報を前記第２実行環境のアドレス情報に変更して前記第２実行環境へ転送するように制御する転送制御手段を有する、
ことを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
処理の実行環境となる第１実行環境及び第２実行環境と、前記第１実行環境及び前記第２実行環境をそれぞれ仮想環境として動作させるための仮想化処理を行う仮想化処理部を備えた情報処理装置が実現されるコンピュータに、
前記仮想化処理部で動作させる機能として、
装置外部から送信されたＡＲＰ要求については前記第１実行環境へ送信し、前記第１実行環境から送信されたＡＲＰ要求については装置外部及び前記第２実行環境へ送信し、前記第２実行環境から送信されたＡＲＰ要求については前記第１実行環境へ送信するように制御するＡＲＰ要求制御機能、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来、印刷・複写・ファクシミリ等の機能を複合的に備えた複合機などにおいて、処理の実行環境を実現するためのオペレーティングシステム（ＯＳ）を複数用意し、これらのＯＳをハイパーバイザ上で仮想環境（仮想ＯＳ）として動作させる構成を採用することで、各機能に関する処理をその機能に適したＯＳで実行させることが行われている。
【０００３】
また、他装置との間でＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）／ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）による通信を行えるようにしておき、他装置から送信された要求に応じた処理の実行や、処理結果の他装置への送信を行うように構成された複合機が知られている。
【０００４】
ＴＣＰ／ＩＰでは、ＩＰパケットを用いてデータの伝送が行われる。ＩＰパケットは、ＩＰアドレスで通信相手を特定しており、送信先及び送信元のそれぞれのＩＰアドレスを格納したＩＰヘッダ部をデータ本体に付加した構造となっている。なお、実際の伝送路上においては、ＩＰパケットがそのまま伝送されるのではなく、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）フレームを用いてＩＰパケットの伝送が行われる。ＭＡＣフレームは、ＭＡＣアドレスで通信相手を特定しており、送信先及び送信元のそれぞれのＭＡＣアドレスを格納したＭＡＣヘッダ部をデータ本体（ＩＰパケットが含まれる）に付加した構造となっている。
【０００５】
このため、データの送信元では、送信先のＩＰアドレスだけでなくＭＡＣアドレスも知っておく必要があり、送信先のＭＡＣアドレスが不明な場合には、送信先のＩＰアドレスを指定したＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）要求をブロードキャストで送信し、当該ＩＰアドレスに該当する装置（送信先）から返送されるＡＲＰ応答に基づいて送信先のＭＡＣアドレスを特定（解決）、るれるにはる                                                                                                                      するように構成されている。また、特定したＭＡＣアドレスは、該当するＩＰアドレスに対応付けてＡＲＰテーブルに格納しておくことで、以後の通信におけるＡＲＰ要求の負担を軽減するように構成されている。
【０００６】
本発明に関連する技術として、以下のような技術が開示されている。
例えば、複数の仮想ＯＳが動作しているコンピュータシステムにおいて、ネットワークインターフェースが各ＯＳで共有され、且つ共通の論理アドレスを使用する構成が開示されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−５００３８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、装置外部と通信可能な複数の実行環境を有する情報処理装置に関し、装置外部から単独の通信相手として認識される構成を実現することを目的とする。
【課題を解決するための手段】
【０００９】
請求項１に記載の本発明は、処理の実行環境となる第１実行環境及び第２実行環境と、前記第１実行環境及び前記第２実行環境をそれぞれ仮想環境として動作させるための仮想化処理を行う仮想化処理部を備え、前記仮想化処理部は、装置外部から送信されたＡＲＰ要求については前記第１実行環境へ送信し、前記第１実行環境から送信されたＡＲＰ要求については装置外部及び前記第２実行環境へ送信し、前記第２実行環境から送信されたＡＲＰ要求については前記第１実行環境へ送信するように制御するＡＲＰ要求制御手段を有する、ことを特徴とする情報処理装置である。
【００１０】
請求項２に記載の本発明は、前記第２実行環境又は前記仮想化処理部は、前記第２実行環境から装置外部の通信相手を送信先に指定して送信するデータについて、当該データの送信元を示すアドレス情報を前記第１実行環境のアドレス情報に変更して前記第１実行環境を介さずに装置外部へ送信するように制御する送信制御手段を有する、ことを特徴とする。
【００１１】
請求項３に記載の本発明は、請求項１又は請求項２に記載の情報処理装置において、前記第１実行環境又は前記仮想化処理部は、装置外部の通信相手から前記第１実行環境を送信先に指定して送信されたデータについて、前記第２実行環境へ転送する条件を満たす場合に、当該データの送信先を示すアドレス情報を前記第２実行環境のアドレス情報に変更して前記第２実行環境へ転送するように制御する転送制御手段を有する、ことを特徴とする。
【００１２】
請求項４に記載の本発明は、処理の実行環境となる第１実行環境及び第２実行環境と、前記第１実行環境及び前記第２実行環境をそれぞれ仮想環境として動作させるための仮想化処理を行う仮想化処理部を備えた情報処理装置が実現されるコンピュータに、前記仮想化処理部で動作させる機能として、装置外部から送信されたＡＲＰ要求については前記第１実行環境へ送信し、前記第１実行環境から送信されたＡＲＰ要求については装置外部及び前記第２実行環境へ送信し、前記第２実行環境から送信されたＡＲＰ要求については前記第１実行環境へ送信するように制御するＡＲＰ要求制御機能、を実現させるためのプログラムである。
【発明の効果】
【００１３】
請求項１、４に記載の本発明によると、装置外部と通信可能な複数の実行環境を有する情報処理装置に関し、装置外部から単独の通信相手として認識される構成を実現することができる。
【００１４】
請求項２に記載の本発明によると、第２実行環境から装置外部へのデータの送信を、第２実行環境の存在を装置外部に隠した状態で行うことができる。
【００１５】
請求項３に記載の本発明によると、装置外部から第２実行環境へのデータの送信を、第２実行環境の存在を装置外部に隠した状態で行うことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態に係る情報処理装置の機能構成を例示する図である。
【図２】本発明の一実施形態に係る情報処理装置におけるＡＲＰ要求について説明する図である。
【図３】本発明の一実施形態に係る情報処理装置においてＯＳ−Ｙから装置外部へデータを送信する動作について説明する図である。
【図４】本発明の一実施形態に係る情報処理装置において装置外部から受信したデータをＯＳ−Ｙへ転送する動作について説明する図である。
【図５】本発明の一実施形態に係る情報処理装置においてＯＳ−Ｙから装置外部へ送信するデータについて説明する図である。
【図６】本発明の一実施形態に係る情報処理装置において装置外部から受信してＯＳ−Ｙへ転送するデータについて説明する図である。
【図７】本発明の一実施形態に係る情報処理装置の主要なハードウェアを例示する図である。
【発明を実施するための形態】
【００１７】
本発明の一実施形態について、図面を参照して説明する。
なお、以下では、本発明の一実施形態に係る情報処理装置として、プリント・コピー・ファクシミリ等の機能を複合的に備えた複合機に適用した場合を例に説明するが、これに限定するものではない。
【００１８】
図１には、情報処理装置の一例に係る複合機Ｍの構成を例示してある。
本例の複合機Ｍは、コンピュータの物理的な構成要素であるハードウェア上でハイパーバイザ（仮想化処理部）１０を動作させ、このハイパーバイザ１０による仮想化処理のもとで、各機能に係る処理を実行する処理部（例えばアプリケーション）の実行環境を実現するためのＯＳ−Ｘ２０、ＯＳ−Ｙ３０をそれぞれ仮想環境（仮想ＯＳ）として動作させるように構成されている。
また、本例の複合機Ｍは、利用者端末Ｔ等の他装置との間でＴＣＰ／ＩＰにより通信可能に構成されている。
【００１９】
ハイパーバイザ１０は、ＩＰアドレスとＭＡＣアドレスとの対応を記憶するＡＲＰテーブル１１、ＡＲＰ要求についての制御を行うＡＲＰ要求制御部１２、データ送信についての制御を行う送信制御部１３、データ受信についての制御を行う受信制御部１４、を備えている。
【００２０】
ＯＳ−Ｘ２０は、複合機Ｍの利用者或いは利用者端末Ｔ等の他装置の利用者からの要求に応じて処理を実行するアプリケーション部２１、通信処理に係る各種プロトコルのソフトウェア群を保持するＩＰスタック部２２、通信処理に用いられる仮想的なインターフェースであるＩ／Ｆ（Ａ）部２３及びＩ／Ｆ（Ｂ）部２４、を備えている。
【００２１】
ＯＳ−Ｙ３０は、複合機Ｍの利用者或いは利用者端末Ｔ等の他装置の利用者からの要求に応じて処理を実行するアプリケーション部３１、通信処理に係る各種プロトコルのソフトウェア群を保持するＩＰスタック部３２、通信処理に用いられる仮想的なインターフェースであるＩ／Ｆ（Ｃ）部３３、を備えている。
【００２２】
なお、本例の複合機Ｍにおいて、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３及びＩ／Ｆ（Ｂ）部２４並びにＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３は、それぞれ異なるＩＰアドレスとＭＡＣアドレスを有する。そして、装置外部（利用者端末Ｔ等の他装置）との間の通信には、Ｉ／Ｆ（Ａ）部２３のＩＰアドレス及びＭＡＣアドレスを用い、装置内部における通信（ＯＳ−Ｘ２０とＯＳ−Ｙ３０との間の通信）には、Ｉ／Ｆ（Ｂ）部２４のＩＰアドレス及びＭＡＣアドレスとＩ／Ｆ（Ｃ）部３３のＩＰアドレス及びＭＡＣアドレスを用いるように構成されている。
【００２３】
ハイパーバイザ１０のＡＲＰ要求制御部１２、送信制御部１３、受信制御部１４について更に説明する。
まず、ハイパーバイザ１０のＡＲＰ要求制御部１２の動作について説明する。
図２（ａ）には、装置外部からＡＲＰ要求が送信された場合の処理の流れを例示してある。
ＡＲＰ要求制御部１２は、装置外部にある他装置（例えば利用者端末Ｔ）から送信されたＡＲＰ要求を受信すると、装置外部との通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３へ当該ＡＲＰ要求を送信する。一方、装置内部における通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４及びＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３には当該ＡＲＰ要求を送信しない。ＡＲＰ要求で指定されたＩＰアドレスがＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレスと一致する場合には、そのＭＡＣアドレスを含むＡＲＰ応答がＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から返信されるので、当該ＡＲＰ応答をＡＲＰ要求の送信元である他装置へ送信する。
【００２４】
図２（ｂ）には、ＯＳ−Ｘ２０からＡＲＰ要求が送信された場合の処理の流れを例示してある。
ＡＲＰ要求制御部１２は、装置外部との通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から送信されたＡＲＰ要求を受信すると、装置外部へ当該ＡＲＰ要求を送信する。一方、装置内部における通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４及びＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３には当該ＡＲＰ要求を送信しない。ＡＲＰ要求で指定されたＩＰアドレスが装置外部にある他装置（例えば利用者端末Ｔ）のＩＰアドレスと一致する場合には、そのＭＡＣアドレスを含むＡＲＰ応答が当該他装置から返信されるので、当該ＡＲＰ応答をＡＲＰ要求の送信元であるＩ／Ｆ（Ａ）部２３へ送信する。
【００２５】
また、ＡＲＰ要求制御部１２は、装置内部における通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４から送信されたＡＲＰ要求を受信すると、装置内部における通信の他の窓口となるＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３へ当該ＡＲＰ要求を送信する。一方、装置外部との通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３及び装置外部には当該ＡＲＰ要求を送信しない。ＡＲＰ要求で指定されたＩＰアドレスがＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＩＰアドレスと一致する場合には、そのＭＡＣアドレスを含むＡＲＰ応答がＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３から返信されるので、当該ＡＲＰ応答をＡＲＰ要求の送信元であるＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４へ送信する。
【００２６】
図２（ｃ）には、ＯＳ−Ｙ３０からＡＲＰ要求が送信された場合の処理の流れを例示してある。
ＡＲＰ要求制御部１２は、装置内部における通信の窓口となるＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３から送信されたＡＲＰ要求を受信すると、装置内部における通信の他の窓口となるＯＳ−Ｂ２０のＩ／Ｆ（Ｂ）部２４へ当該ＡＲＰ要求を送信する。一方、装置外部との通信の窓口となるＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３及び装置外部には当該ＡＲＰ要求を送信しない。ＡＲＰ要求で指定されたＩＰアドレスがＯＳ−Ｂ２０のＩ／Ｆ（Ｂ）部２４のＩＰアドレスと一致する場合には、そのＭＡＣアドレスを含むＡＲＰ応答がＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４から返信されるので、当該ＡＲＰ応答をＡＲＰ要求の送信元であるＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３へ送信する。
【００２７】
以上のように、本例の複合機Ｍでは、装置外部から送信されたＡＲＰ要求についてはＯＳ−Ｘ２０へ送信し、ＯＳ−Ｘ２０から送信されたＡＲＰ要求については装置外部及びＯＳ−Ｙ３０へ送信し、ＯＳ−Ｙ３０から送信されたＡＲＰ要求についてはＯＳ−Ｘ２０へ送信するように制御している。このため、装置外部から送信されたＡＲＰ要求に対してＯＳ−Ｘ２０が応答動作を行う一方でＯＳ−Ｙ３０が応答動作を行うことはなく、また、ＯＳ−Ｙ３０から送信されたＡＲＰ要求は装置外部へ送信されない。
したがって、ＯＳ−Ｙ３０の存在を装置外部から認識することができず、ＯＳ−Ｘ２０だけが装置外部から認識されることになり、装置外部から見て単独の通信相手として認識される。
【００２８】
なお、上記の処理によって特定されたＭＡＣアドレスは、該当するＩＰアドレスと対応付けてＡＲＰテーブル部１１に記憶される。本例のＡＲＰテーブル部１１は、ハイパーバイザ１０、ＯＳ−Ｘ２０、ＯＳ−Ｙ３０の各々からアクセス可能（書き込み及び読み出し可能）であり、その後の通信において利用できるように構成されている。
【００２９】
次に、ハイパーバイザ１０の送信制御部１３の動作について説明する。
送信制御部１３は、ＯＳ−Ｘ２０又はＯＳ−Ｙ３０からＴＣＰ接続要求を受信すると、当該ＴＣＰ接続要求を解析して送信先を特定し、送信先が装置内部である場合と送信先が装置外部である場合とで異なる送信制御を行う。
【００３０】
ＯＳ−Ｘ２０から装置外部にある他装置（例えば利用者端末Ｔ）へデータを送信する場合には、以下のような第１の送信制御が行われる。
第１の送信制御では、送信制御部１３は、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から装置外部にある他装置（例えば利用者端末Ｔ）に宛てたＴＣＰ接続要求を受信すると、当該ＴＣＰ接続要求を装置外部へ送出する。そして、送信先に指定された他装置からＴＣＰ接続応答を受信すると、当該ＴＣＰ接続応答をＴＣＰ接続要求の送信元であるＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３へ送信する。これにより、通信相手となる他装置との間に確立された仮想的な通信回線（ＴＣＰコネクション）を用いてＯＳ−Ｘ２０から当該他装置へのデータ送信が行われることになる。
【００３１】
一方、ＯＳ−Ｙ３０から装置外部にある他装置（例えば利用者端末Ｔ）へデータを送信する場合には、以下のような第２の送信制御又は第３の送信制御が行われる。なお、第２の送信制御又は第３の送信制御のいずれを行うかは、複合機Ｍの設定による。
【００３２】
第２の送信制御では、送信制御部１３は、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３から装置外部にある他装置（例えば利用者端末Ｔ）に宛てたＴＣＰ接続要求を受信すると、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３とＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４とを用いた内部通信によりＯＳ−Ｘ２０側に転送し、その後、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から送信されるＴＣＰ接続要求（送信元がＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３へと変更されたＴＣＰ接続要求）を装置外部へ送出する。そして、送信先に指定された他装置からＴＣＰ接続応答を受信すると、当該ＴＣＰ接続応答をＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３に送信し、ＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４とＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３とを用いた内部通信によりＯＳ−Ｙ３０側に転送させる。これにより、通信相手となる他装置との間に確立されたＴＣＰコネクションを用いてＯＳ−Ｙ３０から当該他装置へのデータ送信が行われることになる。すなわち、第２の送信制御では、ＯＳ−Ｙ３０から他装置へのデータ送信がＯＳ−Ｘ２０を経由して行われる。
【００３３】
第３の送信制御では、送信制御部１３は、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３から装置外部にある他装置（例えば利用者端末Ｔ）に宛てたＴＣＰ接続要求を受信すると、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３からのＴＣＰ接続要求に見せかけて装置外部へ送出する。そして、送信先に指定された他装置からＴＣＰ接続応答を受信すると、当該ＴＣＰ接続応答をＴＣＰ接続要求の送信元であるＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３へ送信する。より具体的には、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３からのＴＣＰ接続要求を、その送信元のＩＰアドレス及びＭＡＣアドレスをＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレス及びＭＡＣアドレスへと変更して装置外部へ送出し、その応答として受信したＴＣＰ接続応答を、その送信先のＩＰアドレス及びＭＡＣアドレスをＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＩＰアドレス及びＭＡＣアドレスへと変更してＩ／Ｆ（Ｃ）部３３へ送信する。これにより、通信相手となる他装置との間に確立されたＴＣＰコネクションを用いてＯＳ−Ｙ３０から当該他装置へのデータ送信が行われることになる。すなわち、第３の送信制御では、ＯＳ−Ｙ３０から他装置へのデータ送信がＯＳ−Ｘ２０を経由せずに行われる。
【００３４】
次に、ハイパーバイザ１０の受信制御部１４の動作について説明する。
装置外部にある他装置（例えば利用者端末Ｔ）からデータを受信する場合には、以下のような第１の受信制御又は第２の受信制御が行われる。なお、第１の受信制御又は第２の受信制御のいずれを行うかは、複合機Ｍの設定による。
【００３５】
第１の受信制御では、受信制御部１４は、装置外部にある他装置（例えば利用者端末Ｔ）からＴＣＰ接続要求を受信すると、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３に送信する。そして、ＯＳ−Ｘ２０により自身（ＯＳ−Ｘ２０）に対するＴＣＰ接続要求か否かを判定させ、自身に対するＴＣＰ接続要求であると判定された場合にＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から送信されるＴＣＰ接続応答を、装置外部へ送出する。これにより、通信相手となる他装置との間に確立されたＴＣＰコネクションを用いて当該他装置からＯＳ−Ｘ２０へのデータ送信が行われることになる。
【００３６】
一方、ＯＳ−Ｘ２０により自身に対するＴＣＰ接続要求ではないと判定された場合には、他のＯＳであるＯＳ−Ｙ３０を振分先に決定し、ＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４とＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３とを用いた内部通信によりＯＳ−Ｙ３０側にＴＣＰ接続要求を転送させる。その後、ＯＳ−Ｙ３０から送信されるＴＣＰ接続応答を、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３とＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４とを用いた内部通信によりＯＳ−Ｘ２０側に転送し、その後、ＴＣＰ接続応答をＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から送信されるＴＣＰ接続応答（送信元がＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３へと変更されたＴＣＰ接続応答）を装置外部へ送出する。これにより、通信相手となる他装置との間に確立されたＴＣＰコネクションを用いて当該他装置からＯＳ−Ｙ３０へのデータ送信が行われることになる。すなわち、第１の受信制御では、他装置からＯＳ−Ｙ３０へのデータ送信がＯＳ−Ｘ２０を経由して行われる。
【００３７】
第２の受信制御では、受信制御部１４は、装置外部にある他装置（例えば利用者端末Ｔ）からＴＣＰ接続要求を受信すると、その振分先がＯＳ−Ｘ２０又はＯＳ−Ｙ３０のいずれであるかを判定し、振分先はＯＳ−Ｘ２０であると判定された場合には、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３へＴＣＰ接続要求を送信し、その後、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３から送信されるＴＣＰ接続応答を、装置外部へ送出する。これにより、通信相手となる他装置との間に確立されたＴＣＰコネクションを用いて当該他装置からＯＳ−Ｘ２０へのデータ送信が行われることになる。
【００３８】
一方、振分先はＯＳ−Ｙ３０であると判定された場合には、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３へＴＣＰ接続要求を送信し、その後、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３から送信されるＴＣＰ接続応答を、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３からのＴＣＰ接続応答に見せかけて装置外部へ送出する。より具体的には、装置外部から受信したＴＣＰ接続要求を、その送信先ＩＰアドレス及びＭＡＣアドレスをＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＩＰアドレス及びＭＡＣアドレスへと変更してＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３へ送信し、その応答としてＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３から送信されたＴＣＰ接続応答を、その送信元のＩＰアドレス及びＭＡＣアドレスをＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレス及びＭＡＣアドレスへと変更して装置外部へ送出する。これにより、通信相手となる他装置との間に確立されたＴＣＰコネクションを用いて当該他装置からＯＳ−Ｙ３０へのデータ送信が行われることになる。すなわち、第２の受信制御では、他装置からＯＳ−Ｙ３０へのデータ送信がＯＳ−Ｘ２０を経由せずに行われる。
【００３９】
ここで、本例の複合機Ｍでは、装置外部から受信したＴＣＰ接続要求の振分先を、当該ＴＣＰ接続要求の解析結果と予め設定された振分規則とに基づいて決定している。より具体的には、装置外部から受信したＴＣＰ接続要求を解析してポート番号を特定し、ポート番号に応じた振分先が設定された振分表（振分規則の一例）を参照して振分先を決定している。なお、このような振分先の決定手法は一例に過ぎず、種々の手法により振分先を決定することができる。
【００４０】
次に、ＯＳ−Ｙ３０のアプリケーション部３１から利用者端末Ｔへデータが伝送される間、及び、利用者端末ＴからＯＳ−Ｙ３０のアプリケーション部３１へデータが伝送される間のアドレス情報の変遷について、図５及び図６を参照して説明する。
なお、図５及び図６において、「ｉｐ．ｓｒｃ」は送信元のＩＰアドレスであり、「ｉｐ．ｄｓｔ」は送信先のＩＰアドレスであり、「ｍａｃ．ｓｒｃ」は送信元のＭＡＣアドレスであり、「ｍａｃ．ｄｓｔ」は送信先のＭＡＣアドレスである。
【００４１】
また、Ｉ／Ｆ（Ａ）部２３のＩＰアドレスを“１２９．２４９．１０．１”、ＭＡＣアドレスを“ｍａｃ−Ａ”とし、Ｉ／Ｆ（Ｂ）部２４のＩＰアドレスを“１９２．１６８．１．１”、ＭＡＣアドレスを“ｍａｃ−Ｂ”とし、Ｉ／Ｆ（Ｃ）部３３のＩＰアドレスを“１９２．１６８．１．２”、ＭＡＣアドレスを“ｍａｃ−Ｃ”とする。
また、利用者端末ＴのＩＰアドレスを“１２９．２４９．１０．３”、ＭＡＣアドレスを“ｍａｃ−ＰＣ”とする。
【００４２】
図５（ａ）には、第２の送信制御における、ＯＳ−Ｙ３０のアプリケーション部３１から利用者端末Ｔへデータが伝送される間のアドレス情報の変遷について例示してある。
まず、アプリケーション部３１からＩ／Ｆ（Ｃ）部３３へ出力される段階では、（１）に示すように、送信元のＩＰアドレスにＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＩＰアドレスである“１９２．１６８．１．２”が設定され、送信先のＩＰアドレスに利用者端末ＴのＩＰアドレスである“１２９．２４９．１０．３”が設定されている。
次に、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３とＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４とを用いた内部通信によりＯＳ−Ｘ２０側にデータが転送される段階では、（２）に示すように、送信元のＭＡＣアドレスにＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＭＡＣアドレスである“ｍａｃ−Ｃ”が設定され、送信先のＭＡＣアドレスにＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４のＭＡＣアドレスである“ｍａｃ−Ｂ”が設定されている。
次に、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３を経由してハイパーバイザ１０の送信制御部１３から装置外部へデータが送出される段階では、（３）に示すように、送信元のＩＰアドレスがＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレスである“１２９．２４９．１０．１”に変更され、送信元のＭＡＣアドレスがＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＭＡＣアドレスである“ｍａｃ−Ａ”に変更され、送信先のＭＡＣアドレスが利用者端末ＴのＭＡＣアドレスである“ｍａｃ−ＰＣ”に変更されている。
【００４３】
図５（ｂ）には、第３の送信制御における、ＯＳ−Ｙ３０のアプリケーション部３１から利用者端末Ｔへデータが伝送される間のアドレス情報の変遷について例示してある。
まず、アプリケーション部３１からＩ／Ｆ（Ｃ）部３３へ出力される段階では、（１）に示すように、送信元のＩＰアドレスにＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＩＰアドレスである“１９２．１６８．１．２”が設定され、送信先のＩＰアドレスに利用者端末ＴのＩＰアドレスである“１２９．２４９．１０．３”が設定されている。
次に、ハイパーバイザ１０の送信制御部１３から装置外部へデータが送出される段階では、（２）に示すように、送信元のＩＰアドレスがＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレスである“１２９．２４９．１０．１”に変更され、送信元のＭＡＣアドレスにＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＭＡＣアドレスである“ｍａｃ−Ａ”が設定され、送信先のＭＡＣアドレスに利用者端末ＴのＭＡＣアドレスである“ｍａｃ−ＰＣ”に設定されている。
【００４４】
図６（ａ）には、第１の受信制御における、利用者端末ＴからＯＳ−Ｙ３０のアプリケーション部３１へデータが伝送される間のアドレス情報の変遷について例示してある。
まず、利用者端末Ｔから送信されたデータをハイパーバイザ１０の送信制御部１３で受信した段階では、（１）に示すように、送信元のＩＰアドレスに利用者端末ＴのＩＰアドレスである“１９２．２４９．１０．３”が設定され、送信先のＩＰアドレスにＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレスである“１２９．２４９．１０．１”が設定され、送信元のＭＡＣアドレスに利用者端末ＴのＭＡＣアドレスである“ｍａｃ−ＰＣ”が設定され、送信先のＭＡＣアドレスにＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＭＡＣアドレスである“ｍａｃ−Ａ”が設定されている。
次に、ＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３へ送信された後に、ＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４とＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３とを用いた内部通信によりＯＳ−Ｙ３０側にデータが転送される段階では、（２）に示すように、送信元のＭＡＣアドレスがＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４のＭＡＣアドレスである“ｍａｃ−Ｂ”に変更され、送信先のＭＡＣアドレスがＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＭＡＣアドレスである“ｍａｃ−Ｃ”に変更されている。
次に、（３）に示すようなアドレス情報を有するデータが、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３からアプリケーション部３１へ受け渡される。
【００４５】
図６（ｂ）には、第２の受信制御における、利用者端末ＴからＯＳ−Ｙ３０のアプリケーション部３１へデータが伝送される間のアドレス情報の変遷について例示してある。
まず、利用者端末Ｔから送信されたデータをハイパーバイザ１０の受信制御部１４で受信した段階では、（１）に示すように、送信元のＩＰアドレスに利用者端末ＴのＩＰアドレスである“１９２．２４９．１０．３”が設定され、送信先のＩＰアドレスにＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＩＰアドレスである“１２９．２４９．１０．１”が設定され、送信元のＭＡＣアドレスに利用者端末ＴのＭＡＣアドレスである“ｍａｃ−ＰＣ”が設定され、送信先のＭＡＣアドレスにＯＳ−Ｘ２０のＩ／Ｆ（Ａ）部２３のＭＡＣアドレスである“ｍａｃ−Ａ”が設定されている。
次に、ハイパーバイザ１０の送信制御部１３からＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３へ送信される段階では、（２）に示すように、送信先のＩＰアドレスがＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＩＰアドレスである“１９２．１６８．１．２”に変更され、送信先のＭＡＣアドレスがＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３のＭＡＣアドレスである“ｍａｃ−Ｃ”に変更されている。
次に、図６（ａ）の（３）と同様なアドレス情報を有するデータが、ＯＳ−Ｙ３０のＩ／Ｆ（Ｃ）部３３からアプリケーション部３１へ受け渡される。
【００４６】
ここで、以上の説明では、ＯＳ−Ｙ３０から他装置へのデータ送信をＯＳ−Ｘ２０を経由せずに行う場合のアドレス情報の変更をハイパーバイザ１０（送信制御部１３による第３の送信制御）において実施しているが、これに限定するものではなく、例えば、ＯＳ−Ｙ３０において実施するように構成してもよい。
また、ＯＳ−Ｙ３０からのデータ送信におけるアドレス情報の変更に際し、送信先のＭＡＣアドレスが不明な場合には、例えば、ＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４からのＡＲＰ要求に見せかけてハイパーバイザ１０からＡＲＰ要求を送信するようにしてもよく、また例えば、ＯＳ−Ｘ２０のＩ／Ｆ（Ｂ）部２４にＡＲＰ要求を代理して送信させるように指示してもよい。
【００４７】
また、ＡＲＰテーブル１１は、それを使用する各部（ハイパーバイザ１０、ＯＳ−Ｘ２０、ＯＳ−Ｙ３０の１以上）からアクセス可能であればよく、必ずしもハイパーバイザ１０に設ける必要はない。
また、複合機Ｍ上のＯＳとしては、ＯＳ−Ｘ２０、ＯＳ−Ｙ３０の２つに限定するものではなく、装置外部から認識される１つのＯＳ（本例ではＯＳ−Ｘ２０）と、装置外部から認識されない１以上のＯＳ（本例ではＯＳ−Ｙ３０）とを備えた構成であればよい。また、各ＯＳの種別や各ＯＳに実装する機能などは任意である。
【００４８】
図７には、本例の複合機（情報処理装置の一例）として動作するコンピュータの主要なハードウェアを例示してある。
本例では、各種演算処理を行うＣＰＵ５１、ＣＰＵ５１の作業領域となるＲＡＭ５２や基本的な制御プログラムを記録したＲＯＭ５３等の主記憶装置、本発明の一実施形態に係るプログラムや各種データを記憶する補助記憶装置（例えば、ＨＤＤ等の磁気ディスクや、フラッシュメモリ等の書き換え可能な不揮発性メモリなど）５４、各種情報を表示出力する表示装置等の出力機器及び操作者により入力操作に用いられる操作ボタン・タッチパネル等の入力機器とのインターフェースである入出力Ｉ／Ｆ５５、他の装置との間で有線又は無線により通信を行うインターフェースである通信Ｉ／Ｆ５６、等のハードウェア資源を有するコンピュータにより構成されている。
そして、本発明の一実施形態に係るプログラムを補助記憶装置５４等から読み出してＲＡＭ５２に展開し、これをＣＰＵ５１により実行させることで、本発明の一実施形態に係る情報処理装置をコンピュータ上に実現している。
【００４９】
なお、本発明の一実施形態に係るプログラムは、例えば、当該プログラムを記憶したＣＤ−ＲＯＭ等の外部記憶媒体から読み込む形式や、通信回線等を介して受信する形式などにより、本例に係るコンピュータに設定される。
また、本例のようなソフトウェア構成により情報処理装置を実現する態様に限られず、専用のハードウェアモジュールを用いて実現するようにしてもよい。
【符号の説明】
【００５０】
Ｍ：複合機、  Ｔ：利用者端末、
１０：ハイパーバイザ（仮想化処理部）、  ２０：ＯＳ−Ｘ、  ３０：ＯＳ−Ｙ）、
１１；ＡＲＰテーブル、  １２：ＡＲＰ要求制御部、  １３：送信制御部、  １４：受信制御部、
２１：アプリケーション部、  ２２：ＩＰスタック部、  ２３：Ｉ／Ｆ（Ａ）部、  ２４：Ｉ／Ｆ（Ｂ）部、
３１：アプリケーション部、  ３２：ＩＰスタック部、  ３３：Ｉ／Ｆ（Ｃ）部
【図１】
2012014249.tif 000003
【図２】
2012014249.tif 000004
【図３】
2012014249.tif 000005
【図４】
2012014249.tif 000006
【図５】
2012014249.tif 000007
【図６】
2012014249.tif 000008
【図７】
2012014249.tif 000009
【手続補正書】
【提出日】平成22年7月1日(2010.7.1)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
このため、データの送信元では、送信先のＩＰアドレスだけでなくＭＡＣアドレスも知っておく必要があり、送信先のＭＡＣアドレスが不明な場合には、送信先のＩＰアドレスを指定したＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）要求をブロードキャストで送信し、当該ＩＰアドレスに該当する装置（送信先）から返送されるＡＲＰ応答に基づいて送信先のＭＡＣアドレスを特定（解決）するように構成されている。また、特定したＭＡＣアドレスは、該当するＩＰアドレスに対応付けてＡＲＰテーブルに格納しておくことで、以後の通信におけるＡＲＰ要求の負担を軽減するように構成されている。