(57)【特許請求の範囲】
【請求項１】
通信システムであって、
印刷出力部と画像読取部との少なくとも一方を有し且つ所定のＬＡＮの内部に設けられる複数のデバイスと、
前記所定のＬＡＮの内部に設けられ、前記複数のデバイスと前記所定のＬＡＮの外部に設けられた外部サーバとの通信を中継する複数のゲートウエイと、
を備え、
前記複数のゲートウエイは、第１のゲートウエイを有し、
前記第１のゲートウエイは、
前記所定のＬＡＮ内のデバイスを検索するデバイス検索処理を実行する検索手段と、
前記デバイス検索処理によって検索された２以上のデバイスのうち前記外部サーバとの通信を中継するゲートウエイとして動作するデバイスであるゲートウエイデバイスの情報を取得する取得手段と、
前記第１のゲートウエイによって前記外部サーバとの通信中継処理が管理されるデバイスである第１の管理対象デバイスを決定する決定手段と、
を有し、
前記決定手段は、前記デバイス検索処理によって検索された２以上のデバイスから、少なくとも前記ゲートウエイデバイスを除外した上で、前記第１の管理対象デバイスを決定することを特徴とする通信システム。
【請求項２】
請求項１に記載の通信システムにおいて、
前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスから、スリープ中のデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする通信システム。
【請求項３】
請求項１または請求項２に記載の通信システムにおいて、
前記決定手段は、最新のデバイス検索処理によって検索されたデバイスの数が前回のデバイス検索処理によって検索されたデバイスの数よりも多い場合、前記第１の管理対象デバイスの更新処理を実行することを特徴とする通信システム。
【請求項４】
請求項１ないし請求項３のいずれかに記載の通信システムにおいて、
前記所定のＬＡＮの外部に設けられ、前記複数のデバイスのうちの特定のデバイスに対するアクセス要求を前記外部サーバから受け付ける管理サーバ、
をさらに備え、
前記第１のゲートウエイは、
前記第１の管理対象デバイスの情報を前記管理サーバに送信し、
前記管理サーバは、
前記複数のゲートウエイのそれぞれの管理対象デバイスの登録情報であって前記第１のゲートウエイによる管理対象デバイスの情報を含む登録情報を格納する格納手段と、
前記特定のデバイスに対するアクセス要求が前記外部サーバから受け付けられると、前記特定のデバイスに対する通信を中継することが可能なゲートウエイを前記登録情報に基づき決定する中継装置決定手段と、
前記中継装置決定手段によって決定されたゲートウエイに対して、前記外部サーバとの間でトンネル接続を確立すべき旨のトンネル接続要求を送信する通信手段と、
を有し、
前記中継装置決定手段によって決定された前記ゲートウエイは、前記トンネル接続要求に応じてトンネル接続を前記外部サーバとの間に確立し、前記トンネル接続を利用して前記外部サーバと前記特定のデバイスとの間の通信を中継することを特徴とする通信システム。
【請求項５】
請求項４に記載の通信システムにおいて、
前記管理サーバの前記通信手段は、
前記第１のゲートウエイとの間に通信セッションを予め確立しておき、
前記中継装置決定手段によって前記特定のデバイス向けのゲートウエイとして前記第１のゲートウエイが決定される場合には、前記通信セッションを利用して、前記トンネル接続要求を前記第１のゲートウエイに送信することを特徴とする通信システム。
【請求項６】
請求項４または請求項５に記載の通信システムにおいて、
前記決定手段は、前記ゲートウエイデバイスの情報を前記管理サーバに問い合わせることを特徴とする通信システム。
【請求項７】
請求項６に記載の通信システムにおいて、
前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記管理サーバに送信し、その問合せ結果を前記管理サーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする通信システム。
【請求項８】
請求項１ないし請求項５のいずれかに記載の通信システムにおいて、
前記決定手段は、前記ゲートウエイデバイスの情報を、前記所定のＬＡＮの内部に設けられたプリントサーバに問い合わせることを特徴とする通信システム。
【請求項９】
請求項８に記載の通信システムにおいて、
前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記プリントサーバに送信し、その問合せ結果を前記プリントサーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする通信システム。
【請求項１０】
請求項１ないし請求項５のいずれかに記載の通信システムにおいて、
前記決定手段は、前記ゲートウエイデバイスであるか否かを前記２以上のデバイスのそれぞれに問い合わせ、前記２以上のデバイスに関する問合せ結果に基づいて、前記２以上のデバイスのうちの前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする通信システム。
【請求項１１】
所定のＬＡＮの外部に設けられた外部サーバと前記所定のＬＡＮの内部に設けられた複数のデバイスとの間の通信を中継する複数のゲートウエイのうちの一のゲートウエイであって、
前記所定のＬＡＮ内のデバイスを検索するデバイス検索処理を実行する検索手段と、
前記デバイス検索処理によって検索された２以上のデバイスのうち前記外部サーバとの通信を中継するゲートウエイとして動作するデバイスであるゲートウエイデバイスの情報を取得する取得手段と、
前記所定のＬＡＮの内部に設けられた前記複数のゲートウエイのうちの前記一のゲートウエイである第１のゲートウエイによって前記外部サーバとの通信中継処理が管理されるデバイスである第１の管理対象デバイスを決定する決定手段と、
を有し、
前記決定手段は、前記デバイス検索処理によって検索された２以上のデバイスから、少なくとも前記ゲートウエイデバイスを除外した上で、前記第１の管理対象デバイスを決定することを特徴とするゲートウエイ。
【請求項１２】
請求項１１に記載のゲートウエイにおいて、
前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスから、スリープ中のデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とするゲートウエイ。
【請求項１３】
請求項１１または請求項１２に記載のゲートウエイにおいて、
前記決定手段は、最新のデバイス検索処理によって検索されたデバイスの数が前回のデバイス検索処理によって検索されたデバイスの数よりも多い場合、前記第１の管理対象デバイスの更新処理を実行することを特徴とするゲートウエイ。
【請求項１４】
請求項１１ないし請求項１３のいずれかに記載のゲートウエイにおいて、
前記決定手段は、前記ゲートウエイデバイスの情報を、前記所定のＬＡＮの外部に設けられた管理サーバに問い合わせることを特徴とするゲートウエイ。
【請求項１５】
請求項１４に記載のゲートウエイにおいて、
前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記管理サーバに送信し、その問合せ結果を前記管理サーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とするゲートウエイ。
【請求項１６】
請求項１１ないし請求項１３のいずれかに記載のゲートウエイにおいて、
前記決定手段は、前記ゲートウエイデバイスの情報を前記所定のＬＡＮの内部に設けられたプリントサーバに問い合わせることを特徴とするゲートウエイ。
【請求項１７】
請求項１６に記載のゲートウエイにおいて、
前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記プリントサーバに送信し、その問合せ結果を前記プリントサーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とするゲートウエイ。
【請求項１８】
請求項１１ないし請求項１３のいずれかに記載のゲートウエイにおいて、
前記決定手段は、前記ゲートウエイデバイスであるか否かを前記２以上のデバイスのそれぞれに問い合わせ、前記２以上のデバイスに関する問合せ結果に基づいて、前記２以上のデバイスのうちの前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とするゲートウエイ。
【請求項１９】
所定のＬＡＮの外部に設けられた外部サーバと前記所定のＬＡＮの内部に設けられた複数のデバイスとの間の通信を中継する複数のゲートウエイのうちの一のゲートウエイに内蔵されたコンピュータに、
ａ）前記所定のＬＡＮ内のデバイスを検索するデバイス検索処理を実行するステップと、
ｂ）前記デバイス検索処理によって検索された２以上のデバイスのうち前記外部サーバとの通信を中継するゲートウエイとして動作するデバイスであるゲートウエイデバイスの情報を取得する取得手段と、
ｃ）前記所定のＬＡＮの内部に設けられた前記複数のゲートウエイのうちの前記一のゲートウエイである第１のゲートウエイによって前記外部サーバとの通信中継処理が管理されるデバイスである第１の管理対象デバイスを決定するステップと、
を実行させるためのプログラムであって、
前記ステップｃ）においては、前記デバイス検索処理によって検索された２以上のデバイスから少なくとも前記ゲートウエイデバイスが除外された上で、前記第１の管理対象デバイスが決定されることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＡＮ外部のサーバとＬＡＮ内部のデバイスとの間の通信を行う通信システム、およびそれに関連する技術に関する。
【背景技術】
【０００２】
ＬＡＮ外部のサーバ（クラウドサーバ等）とＬＡＮ内部のデバイス（画像形成装置等）との連携を図る技術が存在する。
【０００３】
たとえば、クラウド上のサーバ（クラウドサーバ）に格納された電子文書をローカル側（ＬＡＮ内部）の画像形成装置を用いて印刷出力する技術が存在する（特許文献１参照）。
【０００４】
特許文献１には、画像形成装置（デバイス）とゲートウエイとクラウドサーバとを備える文書出力システム（通信システム）が示されている。このシステムにおいては、クラウドサーバに格納された電子文書がゲートウエイ等を介して画像形成装置に送信され、画像形成装置１０において当該電子文書の印刷出力が行われる。なお、ゲートウエイおよび画像形成装置（デバイス）はＬＡＮの内部に設けられており、クラウドサーバはＬＡＮの外部に設けられている。
【０００５】
ところで、上述のようなシステムにおいては、通常、ＬＡＮの内部の画像形成装置（デバイス）とＬＡＮの外部のクラウドサーバとの間にはファイアウォールが設けられる。
【０００６】
ＬＡＮ内部の画像形成装置からＬＡＮ外部のクラウドサーバへのアクセスは、ファイアウォールを通過し、当該アクセスは許可される。
【０００７】
しかしながら、逆向きのアクセス、すなわち、ＬＡＮ外部のクラウドサーバからＬＡＮ内部の画像形成装置への直接的なアクセスは、ファイアウォールによってブロックされる。すなわち、クラウドサーバから直接、画像形成装置に対するアクセスを行うことはできない。
【０００８】
これに対して、ＬＡＮ外部の管理サーバとＬＡＮ内部のゲートウエイ（通信中継装置）との間に（ファイアフォールの例外として）メッセージセッション（通信セッション）を確立しておき、ＬＡＮ外部のクラウドサーバから、当該管理サーバおよび当該ゲートウエイを経由して、ＬＡＮ内部の画像形成装置にアクセスする技術が考えられる。
【０００９】
図１７および図１８は、そのような技術を示す図である。各ゲートウエイ３０（３０ａ，３０ｂ）は、その起動時等において、予め指定された管理サーバ５０との間にメッセージセッション（５１１，５２１）を確立しておく（図１７の太線参照）。その後、図１８に示すように、クラウドサーバ７０から特定のデバイス１０ｄへのアクセス要求発生時においては、管理サーバ５０と或るゲートウエイ３０（たとえば３０ａ）との間の当該メッセージセッション（たとえば５１１）を利用することにより管理サーバ５０から当該ゲートウエイ３０ａにトンネル接続要求が送信される。当該ゲートウエイ３０ａはトンネル接続要求に基づきクラウドサーバ７０との間にトンネル通信を確立する。そして、当該トンネル通信を用いてクラウドサーバ７０から（ゲートウエイ３０経由で）デバイス（画像形成装置）１０ｄへのアクセスが行われる。このような技術については、後に詳述する。
【００１０】
なお、特許文献２には、同様の技術が示されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０１３−７３５７８号公報
【特許文献２】特開２０１４−２１５８４６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ところで、上記システムにおいては複数のゲートウエイがＬＡＮ内に設けられる。当該複数のゲートウエイは、それぞれの管理対象のデバイスとクラウドサーバとの間の通信を中継する。
【００１３】
複数のゲートウエイはそれぞれの管理対象のデバイスをたとえば次のようにして決定することが考えられる。具体的には、各ゲートウエイは、それぞれ、同一ネットワークの内の複数のデバイスを検索し、当該複数のデバイスの中から独自に選定したデバイスを管理対象デバイスとして決定する。
【００１４】
しかしながら、このように各ゲートウエイがそれぞれ独自に管理対象デバイスを決定する場合には、複数のゲートウエイが別のゲートウエイをも管理対象デバイスとして設定することが生じ得る。たとえば、一のゲートウエイ２０１は、他のゲートウエイ２０２をも含む４台のデバイス２０２，２０３，２０４，２０５をその管理対象とし、他のゲートウエイ２０２は、別のゲートウエイ２０１をも含む４台のデバイス２０１，２０３，２０４，２０５をその管理対象とすることがある。各ゲートウエイは、自装置以外のゲートウエイに管理されることを要しないにもかかわらず、自装置以外のゲートウエイに管理されるのは好ましくない。たとえば、各ゲートウエイのハードウエアリソース（メモリリソース等）が他のゲートウエイ（本来は管理不要な他のゲートウエイ）の管理のために利用されるので、当該リソースが浪費されてしまう。
【００１５】
そこで、本発明は、複数のゲートウエイによって複数のデバイスをより効率的に管理することが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【００１６】
上記課題を解決すべく、請求項１の発明は、通信システムであって、印刷出力部と画像読取部との少なくとも一方を有し且つ所定のＬＡＮの内部に設けられる複数のデバイスと、前記所定のＬＡＮの内部に設けられ、前記複数のデバイスと前記所定のＬＡＮの外部に設けられた外部サーバとの通信を中継する複数のゲートウエイと、を備え、前記複数のゲートウエイは、第１のゲートウエイを有し、前記第１のゲートウエイは、前記所定のＬＡＮ内のデバイスを検索するデバイス検索処理を実行する検索手段と、前記デバイス検索処理によって検索された２以上のデバイスのうち前記外部サーバとの通信を中継するゲートウエイとして動作するデバイスであるゲートウエイデバイスの情報を取得する取得手段と、前記第１のゲートウエイによって前記外部サーバとの通信中継処理が管理されるデバイスである第１の管理対象デバイスを決定する決定手段と、を有し、前記決定手段は、前記デバイス検索処理によって検索された２以上のデバイスから、少なくとも前記ゲートウエイデバイスを除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００１７】
請求項２の発明は、請求項１の発明に係る通信システムにおいて、前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスから、スリープ中のデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００１８】
請求項３の発明は、請求項１または請求項２の発明に係る通信システムにおいて、前記決定手段は、最新のデバイス検索処理によって検索されたデバイスの数が前回のデバイス検索処理によって検索されたデバイスの数よりも多い場合、前記第１の管理対象デバイスの更新処理を実行することを特徴とする。
【００１９】
請求項４の発明は、請求項１ないし請求項３のいずれかの発明に係る通信システムにおいて、前記所定のＬＡＮの外部に設けられ、前記複数のデバイスのうちの特定のデバイスに対するアクセス要求を前記外部サーバから受け付ける管理サーバ、をさらに備え、前記第１のゲートウエイは、前記第１の管理対象デバイスの情報を前記管理サーバに送信し、前記管理サーバは、前記複数のゲートウエイのそれぞれの管理対象デバイスの登録情報であって前記第１のゲートウエイによる管理対象デバイスの情報を含む登録情報を格納する格納手段と、前記特定のデバイスに対するアクセス要求が前記外部サーバから受け付けられると、前記特定のデバイスに対する通信を中継することが可能なゲートウエイを前記登録情報に基づき決定する中継装置決定手段と、前記中継装置決定手段によって決定されたゲートウエイに対して、前記外部サーバとの間でトンネル接続を確立すべき旨のトンネル接続要求を送信する通信手段と、を有し、前記中継装置決定手段によって決定された前記ゲートウエイは、前記トンネル接続要求に応じてトンネル接続を前記外部サーバとの間に確立し、前記トンネル接続を利用して前記外部サーバと前記特定のデバイスとの間の通信を中継することを特徴とする。
【００２０】
請求項５の発明は、請求項４の発明に係る通信システムにおいて、前記管理サーバの前記通信手段は、前記第１のゲートウエイとの間に通信セッションを予め確立しておき、前記中継装置決定手段によって前記特定のデバイス向けのゲートウエイとして前記第１のゲートウエイが決定される場合には、前記通信セッションを利用して、前記トンネル接続要求を前記第１のゲートウエイに送信することを特徴とする。
【００２１】
請求項６の発明は、請求項４または請求項５の発明に係る通信システムにおいて、前記決定手段は、前記ゲートウエイデバイスの情報を前記管理サーバに問い合わせることを特徴とする。
【００２２】
請求項７の発明は、請求項６の発明に係る通信システムにおいて、前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記管理サーバに送信し、その問合せ結果を前記管理サーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００２３】
請求項８の発明は、請求項１ないし請求項５のいずれかの発明に係る通信システムにおいて、前記決定手段は、前記ゲートウエイデバイスの情報を、前記所定のＬＡＮの内部に設けられたプリントサーバに問い合わせることを特徴とする。
【００２４】
請求項９の発明は、請求項８の発明に係る通信システムにおいて、前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記プリントサーバに送信し、その問合せ結果を前記プリントサーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００２５】
請求項１０の発明は、請求項１ないし請求項５のいずれかの発明に係る通信システムにおいて、前記決定手段は、前記ゲートウエイデバイスであるか否かを前記２以上のデバイスのそれぞれに問い合わせ、前記２以上のデバイスに関する問合せ結果に基づいて、前記２以上のデバイスのうちの前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００２６】
請求項１１の発明は、所定のＬＡＮの外部に設けられた外部サーバと前記所定のＬＡＮの内部に設けられた複数のデバイスとの間の通信を中継する複数のゲートウエイのうちの一のゲートウエイであって、前記所定のＬＡＮ内のデバイスを検索するデバイス検索処理を実行する検索手段と、前記デバイス検索処理によって検索された２以上のデバイスのうち前記外部サーバとの通信を中継するゲートウエイとして動作するデバイスであるゲートウエイデバイスの情報を取得する取得手段と、前記所定のＬＡＮの内部に設けられた前記複数のゲートウエイのうちの前記一のゲートウエイである第１のゲートウエイによって前記外部サーバとの通信中継処理が管理されるデバイスである第１の管理対象デバイスを決定する決定手段と、を有し、前記決定手段は、前記デバイス検索処理によって検索された２以上のデバイスから、少なくとも前記ゲートウエイデバイスを除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００２７】
請求項１２の発明は、請求項１１の発明に係るゲートウエイにおいて、前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスから、スリープ中のデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００２８】
請求項１３の発明は、請求項１１または請求項１２の発明に係るゲートウエイにおいて、前記決定手段は、最新のデバイス検索処理によって検索されたデバイスの数が前回のデバイス検索処理によって検索されたデバイスの数よりも多い場合、前記第１の管理対象デバイスの更新処理を実行することを特徴とする。
【００２９】
請求項１４の発明は、請求項１１ないし請求項１３のいずれかの発明に係るゲートウエイにおいて、前記決定手段は、前記ゲートウエイデバイスの情報を、前記所定のＬＡＮの外部に設けられた管理サーバに問い合わせることを特徴とする。
【００３０】
請求項１５の発明は、請求項１４の発明に係るゲートウエイにおいて、前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記管理サーバに送信し、その問合せ結果を前記管理サーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００３１】
請求項１６の発明は、請求項１１ないし請求項１３のいずれかの発明に係るゲートウエイにおいて、前記決定手段は、前記ゲートウエイデバイスの情報を前記所定のＬＡＮの内部に設けられたプリントサーバに問い合わせることを特徴とする。
【００３２】
請求項１７の発明は、請求項１６の発明に係るゲートウエイにおいて、前記決定手段は、前記デバイス検索処理によって検索された前記２以上のデバイスの情報と当該２以上のデバイスの中に前記ゲートウエイデバイスが存在するか否かに関する問合せとを前記プリントサーバに送信し、その問合せ結果を前記プリントサーバから受信することによって、前記２以上のデバイスに含まれる前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００３３】
請求項１８の発明は、請求項１１ないし請求項１３のいずれかの発明に係るゲートウエイにおいて、前記決定手段は、前記ゲートウエイデバイスであるか否かを前記２以上のデバイスのそれぞれに問い合わせ、前記２以上のデバイスに関する問合せ結果に基づいて、前記２以上のデバイスのうちの前記ゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、前記第１の管理対象デバイスを決定することを特徴とする。
【００３４】
請求項１９の発明は、所定のＬＡＮの外部に設けられた外部サーバと前記所定のＬＡＮの内部に設けられた複数のデバイスとの間の通信を中継する複数のゲートウエイのうちの一のゲートウエイに内蔵されたコンピュータに、ａ）前記所定のＬＡＮ内のデバイスを検索するデバイス検索処理を実行するステップと、ｂ）前記デバイス検索処理によって検索された２以上のデバイスのうち前記外部サーバとの通信を中継するゲートウエイとして動作するデバイスであるゲートウエイデバイスの情報を取得する取得手段と、ｃ）前記所定のＬＡＮの内部に設けられた前記複数のゲートウエイのうちの前記一のゲートウエイである第１のゲートウエイによって前記外部サーバとの通信中継処理が管理されるデバイスである第１の管理対象デバイスを決定するステップと、を実行させるためのプログラムであって、前記ステップｃ）においては、前記デバイス検索処理によって検索された２以上のデバイスから少なくとも前記ゲートウエイデバイスが除外された上で、前記第１の管理対象デバイスが決定されることを特徴とする。
【００３５】
請求項１ないし請求項１９に記載の発明によれば、デバイス検索処理によって検索された２以上のデバイスから、少なくともゲートウエイデバイスが除外された上で、第１の管理対象デバイスが決定される。したがって、複数のゲートウエイのうちの一のゲートウエイが、他のゲートウエイをも含むデバイスをその管理対象デバイスとすることを回避しつつ、複数のゲートウエイによって複数のデバイスをより効率的に管理することが可能である。
【図面の簡単な説明】
【００３６】
【図１】第１実施形態に係る通信システムの概略構成を示す図である。
【図２】ＭＦＰの構成を示す概略図である。
【図３】各装置の概略構成を示す図である。
【図４】ゲートウエイの動作を示すフローチャートである。
【図５】通信ステムにおける動作を示す概念図である。
【図６】デバイス検索処理によって検索されたデバイスを示す図である。
【図７】ゲートウエイデバイスに関する問合せ結果を示す図である。
【図８】管理対象デバイスとして決定されたデバイスを示す図である。
【図９】管理サーバ内の管理テーブルを示す図である。
【図１０】デバイスリストからゲートウエイデバイスが除外される様子を示す図である。
【図１１】第２実施形態に係るゲートウエイの動作を示すフローチャートである。
【図１２】デバイス検索処理によって検索されたデバイスを示す図である。
【図１３】管理対象デバイスとして決定されたデバイスを示す図である。
【図１４】ゲートウエイデバイスおよびスリープ中デバイスがデバイスリストから除外される様子を示す図である。
【図１５】第３実施形態に係るゲートウエイの動作を示すフローチャートである。
【図１６】ゲートウエイデバイスの問合せ処理等を示す図である。
【図１７】通信システムにおける動作を示す概念図である。
【図１８】通信システムにおける動作を示す概念図である。
【発明を実施するための形態】
【００３７】
以下、本発明の実施形態を図面に基づいて説明する。
【００３８】
＜１．第１実施形態＞
＜１−１．システム構成概要＞
図１は、本発明の実施形態に係る通信システム１の概略構成を示す図である。図１に示すように、通信システム１は、複数のデバイス１０（１０ａ，１０ｂ，１０ｃ，...）と、複数のゲートウエイ３０（３０ａ，３０ｂ）とを備える。また、通信システム１は、管理サーバコンピュータ（以下、単に管理サーバとも称する）５０と、クラウドサーバコンピュータ（以下、単にクラウドサーバとも称する）７０と、クライアントコンピュータ（以下、単にクライアントとも称する）９０とをさらに備える。
【００３９】
各要素１０，３０，５０，７０，９０は、ネットワーク１０８を介して互いに接続されており、ネットワーク通信を実行することが可能である。なお、ネットワーク１０８は、ＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（ワイドエリアネットワーク）、インターネットなどによって構成される。また、ネットワーク１０８への接続形態は、有線接続であってもよく或いは無線接続であってもよい。
【００４０】
複数のデバイス１０および複数のゲートウエイ３０は、企業内等に構築された或るＬＡＮ１０７の内部に設けられている。一方、管理サーバ５０、クラウドサーバ７０およびクライアント９０は、ＬＡＮ１０７の外部に設けられている。なお、クライアント９０は、ＬＡＮ１０７の内部に設けられていてもよい。
【００４１】
ここでは、デバイス１０として、マルチ・ファンクション・ペリフェラル（Multi-Functional Peripheral）（ＭＦＰとも略称する）を例示する。ＭＦＰは、画像形成装置あるいは通信装置などとも称される。
【００４２】
また、ゲートウエイ３０は、ここではデバイス１０としてのＭＦＰとは別のＭＦＰに構築される。具体的には、ハードウエアとしてのＭＦＰ内に組み込まれたソフトウエア（プログラム）を実行することにより、ゲートウエイ３０が実現される。
【００４３】
一方、管理サーバ５０、クラウドサーバ７０およびクライアント９０は、いわゆるパーソナルコンピュータ等を用いて構築される。
【００４４】
この通信システム１においては、たとえば、クライアント９０からクラウドサーバ７０へと送出された印刷指令が、管理サーバ５０およびゲートウエイ３０を経由してデバイス１０へと送信され、デバイス（ＭＦＰ）１０において印刷出力が行われる。
【００４５】
複数のゲートウエイ３０は、複数のデバイス１０とクラウドサーバ７０との通信を中継する機能を有しており、各ゲートウエイ３０は、通信中継装置とも称される。
【００４６】
管理サーバ５０は、クラウドサーバ７０と複数のゲートウエイ３０との通信等を管理する装置である。管理サーバ５０は、複数のデバイス１０のうちの特定のデバイスに対するアクセス要求をクラウドサーバ７０から受け付けるとともに、当該アクセス要求に応じて、複数のゲートウエイ３０のいずれかに対してクラウドサーバ７０とのトンネル接続要求を送信する。
【００４７】
＜１−２．ＭＦＰの構成概要＞
図２は、ＭＦＰの構成を示す概略図である。ＭＦＰは、スキャナ機能、プリンタ機能、コピー機能およびデータ通信機能などを備える装置（複合機とも称する）である。
【００４８】
ＭＦＰは、印刷出力処理（プリント処理）および画像読取処理（スキャン処理）等を行うことが可能な画像形成装置である。この実施形態では、ＬＡＮ１０７内に複数のＭＦＰ２００（２０１〜２０５）が設けられている。また、当該複数のＭＦＰ２０１〜２０５のうちの一部のＭＦＰ２０１，２０２は、ゲートウエイ３０としても動作する。
【００４９】
図２に示すように、ＭＦＰは、画像読取部２、印刷出力部３、通信部４、格納部５、入出力部６およびコントローラ９等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
【００５０】
画像読取部２は、ＭＦＰの所定の位置に載置された原稿を光学的に読み取って、当該原稿の画像データ（原稿画像とも称する）を生成する処理部である。
【００５１】
印刷出力部３は、対象画像に関する画像データに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。
【００５２】
通信部４は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。さらに、通信部４は、ネットワーク１０８を介したネットワーク通信が可能である。このネットワーク通信では、ＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）およびＦＴＰ（File Transfer Protocol）等の各種のプロトコルが利用され、当該ネットワーク通信を利用することによって、ＭＦＰは、所望の相手先（管理サーバ５０およびクラウドサーバ７０等）との間で各種のデータを授受することが可能である。
【００５３】
詳細には、ゲートウエイ３０として動作するＭＦＰの通信部４は、ゲートウエイ３０と管理サーバ５０との間に確立されたメッセージセッション（後述）を利用して、管理サーバ５０と通信すること（特に管理サーバ５０からのデータを受信すること）ができる。また、デバイス１０として動作するＭＦＰの通信部４は、ゲートウエイ３０とクラウドサーバ７０との間に確立されたトンネル接続（後述）を利用して、当該ゲートウエイ３０を経由してクラウドサーバ７０と通信すること（特にクラウドサーバ７０からのデータを受信すること）もできる。なお、通信部４は、他の装置に対してデータ等を送信する送信部と、他の装置からデータ等を受信する受信部とを有する。
【００５４】
格納部５は、ハードディスクドライブ（ＨＤＤ）および不揮発性メモリ等の格納装置で構成される。
【００５５】
入出力部６は、ＭＦＰに対する入力を受け付ける操作入力部６ａと、各種情報の表示出力を行う表示部６ｂとを備えている。なお、入出力部６は、操作部とも称される。
【００５６】
コントローラ９は、ＭＦＰを統括的に制御する制御部であり、ＣＰＵと、各種の半導体メモリ（ＲＡＭおよびＲＯＭ等）とを備えて構成される。
【００５７】
コントローラ９は、ＣＰＵにおいて、ＲＯＭ（例えば、ＥＥＰＲＯＭ等）内に格納されている所定のソフトウエアプログラム（単にプログラムとも称する）を実行することによって、各種の処理部（画像形成動作等を制御する動作制御部１６、および後述するゲートウエイ処理部１８等）を実現する。
【００５８】
たとえば、ゲートウエイ３０として動作するＭＦＰのコントローラ９は、ゲートウエイ処理部１８（通信制御部４１、デバイス情報取得部４５、ゲートウエイ情報取得部４６および管理デバイス決定部４７（図３参照（後述））等を含む）を実現する。また、デバイス１０のみとして動作するＭＦＰのコントローラ９も同様の処理部を有していても良いが、ゲートウエイ３０として機能するための処理部を有していなくてもよい。なお、当該プログラムは、たとえば各種の可搬性の記録媒体（ＵＳＢメモリ等）に記録され、当該記録媒体を介してＭＦＰにインストールされればよい。あるいは当該プログラムは、ネットワーク１０８等を介してダウンロードされてＭＦＰにインストールされるようにしてもよい。
【００５９】
また、このＭＦＰは、動作モードとして、合計３つのモード、詳細には通常モードおよび２段階のスリープモード（第１段階のスリープモード（簡易スリープモードとも称する）、および第２段階のスリープモード（ディープスリープモードとも称する））を有する。
【００６０】
これら３つのモードのうち、通常モードの消費電力が最も大きく、ディープスリープモードの消費電力が最も小さい。たとえば、簡易スリープモードにおいては、印刷出力部３および画像読取部２に対する電力供給が停止されるのに対して、ディープスリープモードにおいては、コントローラ（メインコントローラ）９等への電力供給も停止される。ディープスリープモードにおいては、通信部４の一部と、スリープからの復帰動作を制御する復帰制御部（復帰用通信制御部を含む）を有するサブコントローラ８（図２）とに対しては電力が供給され、その他の処理部に対する電力供給は停止される。ディープスリープモードにおいては、メッセージセッションを利用した通信動作、およびトンネル接続を利用した通信動作を行うことはできない。換言すれば、ＭＦＰ１０は、ディープスリープモード中においては、ゲートウエイとしての機能を有効化することはできない。
【００６１】
＜１−３．各要素の構成概要＞
図３は、各要素３０，５０，７０等の概略構成を示す図である。図３を参照して、これらの各要素について説明する。
【００６２】
＜クラウドサーバ７０＞
クラウドサーバ７０は、通信制御部８１を備える。通信制御部８１は、管理サーバ５０との通信を実行する。また、通信制御部８１は、各ゲートウエイ３０との通信をトンネル通信（後述）を用いて実行する。
【００６３】
＜管理サーバ５０＞
管理サーバ５０は、通信制御部６１、デバイス情報管理部６５および解析部６７などの各種の処理部を備える。
【００６４】
これら各種の処理部は、管理サーバ５０のＣＰＵにおいて、格納部（ＨＤＤ等）に格納されている所定のソフトウエアプログラム（単にプログラムとも称する）を実行することによって実現される。なお、当該プログラムは、たとえば各種の可搬性の記録媒体（ＤＶＤ−ＲＯＭ等）に記録され、当該記録媒体を介して管理サーバ５０にインストールされればよい。あるいは当該プログラムは、ネットワーク１０８等を介してダウンロードされて管理サーバ５０にインストールされるようにしてもよい。
【００６５】
通信制御部６１は、通信部５４（通信用ハードウエア）と協働して、各種の通信動作を制御する。たとえば、通信制御部６１は、クラウドサーバ７０との通信を実行し、クラウドサーバ７０からのアクセス要求を受信する。また、通信制御部６１は、各ゲートウエイ３０との通信をメッセージセッション（後述）を用いて実行する。なお、通信部５４は、他の装置に対してデータ等を送信する送信部と、他の装置からデータ等を受信する受信部とを有する。
【００６６】
デバイス情報管理部６５は、管理サーバ５０による管理対象の複数のゲートウエイ３０の情報（管理ゲートウエイ情報）、および当該複数のゲートウエイ３０からそれぞれ受信した管理デバイス情報（各ゲートウエイ３０による管理対象のデバイスの情報）等を管理する処理部である。これらの情報（管理ゲートウエイ情報および管理デバイス情報）は、管理サーバ５０の格納部（ＨＤＤ（ハードディスクドライブ）等）５５内に格納された管理テーブル６９に記述されている。管理テーブル６９においては、管理ゲートウエイ情報（各ゲートウエイ３０の識別情報（たとえばＩＰアドレス）等）、および各ゲートウエイ３０と各ゲートウエイ３０の配下のデバイス（管理対象デバイス）との関係を示す管理デバイス情報等が記述されている。
【００６７】
解析部６７は、クラウドサーバ７０から受信したアクセス要求の内容を解析するとともに、当該アクセス要求に応じた接続先デバイス１０に対する通信を中継することが可能なゲートウエイ３０を、管理テーブル６９に基づき決定する処理部である。解析部６７は、利用すべきゲートウエイ３０（通信中継装置）を決定する中継装置決定部とも表現される。
【００６８】
また、通信制御部６１および通信部５４等は、解析部（中継装置決定部）６７によって決定されたゲートウエイ３０（通信中継装置）に対して、クラウドサーバ７０との間でトンネル接続を確立すべき旨のトンネル接続要求を送信する。
【００６９】
なお、解析部（中継装置決定部）６７によって決定されたゲートウエイ３０（通信中継装置）は、当該トンネル接続要求を受信すると、当該トンネル接続要求に応じてトンネル接続をクラウドサーバ７０との間に確立する。そして、当該ゲートウエイ３０は、当該トンネル接続を利用して、クラウドサーバ７０と接続先デバイス１０との間の通信を中継する。
【００７０】
＜ゲートウエイ３０＞
各ゲートウエイ３０は、それぞれ、通信制御部４１、デバイス情報取得部４５、ゲートウエイ情報取得部４６および管理デバイス決定部４７などの各種の処理部を備える。これら各種の処理部は、ゲートウエイ３０（ＭＦＰ）のコントローラ９において、所定のプログラムを実行することによって実現される。
【００７１】
通信制御部４１は、他の装置との通信を制御する処理部である。通信制御部４１は、メッセージセッション通信制御部４２とトンネル通信制御部４３とＬＡＮ内通信制御部４４とを有する。
【００７２】
ＬＡＮ内通信制御部４４は、ＬＡＮ内の各種装置との通信を実行する処理部である。ＬＡＮ内通信制御部４４は、たとえば、デバイス検索用のブロードキャストパケットを同一ＬＡＮ内の各装置に対して送信（一斉同報）すること等によって、ＬＡＮ１０７内のデバイスを検索するデバイス検索処理を実行する。
【００７３】
一方、メッセージセッション通信制御部４２とトンネル通信制御部４３とは、それぞれ、ＬＡＮ外の各種装置との通信を実行する処理部である。
【００７４】
メッセージセッション通信制御部４２は、管理サーバ５０との通信をメッセージセッション（後述）を用いて実行する処理部である。メッセージセッション通信制御部４２は、管理サーバ５０との間にメッセージセッション（後述）を確立して、管理サーバ５０との通信を実行する。メッセージセッション通信制御部４２は、対管理サーバ通信部（あるいは管理サーバ通信部）とも称される。
【００７５】
トンネル通信制御部４３は、クラウドサーバ７０との通信をトンネル通信（後述）を用いて実行する処理部である。トンネル通信制御部４３は、クラウドサーバ７０との間にトンネル通信を確立して、クラウドサーバ７０と特定のデバイス１０との通信を中継する。トンネル通信制御部４３は、対クラウドサーバ通信部（あるいはクラウドサーバ通信部）とも称される。
【００７６】
後述するように、メッセージセッションを利用することによって、ＬＡＮ１０７の外部の装置（管理サーバ５０）からＬＡＮ１０７の内部の装置（ゲートウエイ３０）に対して、データを送信することが可能である。また、トンネル接続を利用することによって、ＬＡＮ１０７の外部の装置（クラウドサーバ７０）からＬＡＮ１０７の内部の装置（ゲートウエイ３０およびデバイス１０）に対して、データを送信することが可能である。
【００７７】
また、デバイス情報取得部４５は、デバイス検索処理を行い、同一ＬＡＮ内に存在するデバイスの情報を収集する処理部である。
【００７８】
ゲートウエイ情報取得部４６は、デバイス検索処理によって検索された２以上のデバイスのうちゲートウエイデバイス（外部サーバ７０との通信を中継するゲートウエイとして動作するデバイス）の情報を取得する処理部である。
【００７９】
さらに、管理デバイス決定部４７は、デバイス情報取得部４５によって取得された管理デバイス情報等に基づいて、本ゲートウエイ３０の管理下に配置するデバイス１０（本ゲートウエイ３０による管理対象デバイス）を決定する処理部である。換言すれば、管理デバイス決定部４７は、本ゲートウエイ３０によって外部サーバ７０との通信中継処理が管理されるデバイス（第１の管理対象デバイス）を決定する処理部である。
【００８０】
＜１−４．動作概要＞
この実施形態においても、図１７および図１８に示すような上述の動作が行われる。具体的には、ＬＡＮ外部の管理サーバ５０とＬＡＮ内部のゲートウエイ３０との間に（ファイアフォールの例外としての）メッセージセッションを確立しておき、ＬＡＮ外部のクラウドサーバ７０から、当該管理サーバ５０および当該ゲートウエイ３０を経由して、ＬＡＮ内部の画像形成装置にアクセスすることが行われ得る。以下では、まず、このような動作について説明する。
【００８１】
上述（図１７参照）のように、ゲートウエイ３０は、その起動時等において、予め指定された管理サーバ５０との間に通信セッション（詳細には、メッセージセッション）（５１１，５１２）を予め確立しておく。その後、クラウドサーバ７０から特定のデバイス１０へのアクセス要求発生時において、管理サーバ５０とゲートウエイ３０（３０ａ）との間の当該メッセージセッション（常時接続通信セッション）（５１１）を利用することにより、管理サーバ５０から当該ゲートウエイ３０ａにトンネル接続要求が送信される。当該ゲートウエイ３０ａは、当該トンネル接続要求に基づき、クラウドサーバ７０との間にトンネル通信を確立する（図１８参照）。そして、当該トンネル通信を用いてクラウドサーバ７０から（ゲートウエイ３０経由での）デバイス（画像形成装置）１０へのアクセスが行われる。
【００８２】
より詳細には、まず、各ゲートウエイ３０は、それぞれの起動時等において、予め指定された管理サーバ５０に対してメッセージセッションの接続要求（確立要求）を送信する。これに応じて、管理サーバ５０が当該確立要求を承認することによって、各ゲートウエイ３０と管理サーバ５０との間にメッセージセッション（５１１，５２１）がそれぞれ確立される（図１７参照）。換言すれば、ＬＡＮ１０７の内部のゲートウエイ３０からＬＡＮ１０７の外部の管理サーバ５０へのアクセスに応じて、メッセージセッションが確立される。なお、このようなメッセージセッション（通信セッション）としては、たとえば、「XMPP:eXtensible Messaging and Presence Protocol」）などのプロトコルを用いたものが例示される。また、後述するように、各ゲートウエイ３０は、各ゲートウエイ３０の管理下のデバイス（管理対象デバイス）の情報（デバイスリスト３００）等を管理サーバ５０へ送信しておく。また、管理サーバ５０は、各ゲートウエイ３０による管理対象デバイスの情報（各デバイスリスト３００に記述された情報）を含む登録情報（管理テーブル６９）を、管理サーバ５０の格納部５５（図３）に格納する。
【００８３】
そして、管理サーバ５０とゲートウエイ３０との間の当該メッセージセッションを利用して、クラウドサーバ７０からデバイス（画像形成装置）１０へのアクセスが行われ得る。
【００８４】
詳細には、クラウドサーバ７０が特定のデバイス１０ｂに対するアクセス（通信）を行いたい場合には、まず特定のデバイス１０ｂ向けのアクセス要求がクラウドサーバ７０から管理サーバ５０に送信される。
【００８５】
管理サーバ５０は、特定のデバイス１０に対応するゲートウエイ３０（特定のデバイス１０ｂをその配下に有する特定のゲートウエイ３０ａ等）を管理情報（管理テーブル６９）に基づいて特定する。換言すれば、アクセスすべきゲートウエイ３０が管理テーブル６９に基づいて特定される。なお、これに限定されず、たとえば、アクセスすべきゲートウエイ３０は、アクセスすべき特定のデバイス１０等とともにユーザ等によって予め指定されていてもよい。そして、アクセスすべきゲートウエイ３０は、当該指定に基づいて特定されるようにしてもよい。
【００８６】
また、管理サーバ５０は、特定されたゲートウエイ３０に対して、トンネル接続要求を送信する。
【００８７】
たとえば、まず、特定のデバイス１０ｄに対するアクセス要求がクラウドサーバ７０から管理サーバ５０に送信された場合において、管理サーバ５０は、特定のデバイス１０ｄに対応するゲートウエイ（３０ａ）を管理情報（管理テーブル６９）に基づいて特定する。なお、特定のデバイス１０ｄに対応するゲートウエイが複数存在する場合には、当該複数のゲートウエイのうちの適宜の一方が選択されればよい。
【００８８】
つぎに、管理サーバ５０と（特定のデバイス１０ｄに対応する）特定のゲートウエイ３０ａとの間にメッセージセッション５１１が確立されているときには、管理サーバ５０は、当該特定されたゲートウエイ３０ａに対してトンネル接続要求を当該メッセージセッション５１１を介して送信する。「トンネル接続要求」は、クラウドサーバ７０との間にトンネル接続を確立すべき旨の接続要求（確立要求）である。このように、管理サーバ５０と特定のゲートウエイ３０ａとの間にメッセージセッション５１１が確立されているときには、当該トンネル接続要求は、管理サーバ５０とゲートウエイ３０ａとの間の当該メッセージセッション５１１を利用して送信される。
【００８９】
トンネル接続要求を受信したゲートウエイ３０は、当該トンネル接続要求に応答して、ＨＴＴＰ（Hypertext Transfer Protocol）セッション（より詳細には、ＨＴＴＰＳ（Hypertext Transfer Protocol Secure）セッション）の確立要求をクラウドサーバ７０に対して送信する。そして、クラウドサーバ７０が当該確立要求を承認することによって、当該ゲートウエイ３０とクラウドサーバ７０との間に当該ＨＴＴＰセッションによるトンネル接続（トンネル通信）が確立される。換言すれば、ＬＡＮ１０７の内部のゲートウエイ３０からＬＡＮ１０７の外部のクラウドサーバ７０へのアクセスに応じて、トンネル接続（トンネル通信）が確立される。そして、このＨＴＴＰセッションによるトンネル通信を用いて、クラウドサーバ７０は、ゲートウエイ３０を経由してデバイス１０（たとえば１０ｄ）へと各種のデータを送信することが可能である。このようなＨＴＴＰ（ＨＴＴＰＳ）セッションの確立要求は、トンネル接続の確立要求とも称される。なお、図１８においては、砂地ハッチング付きの細長い矩形によって「トンネル通信」が模式的に示されている。
【００９０】
ところで、上述のように、ＬＡＮ内に複数のゲートウエイが存在する場合においては、複数のゲートウエイのうちの一のゲートウエイが、他のゲートウエイをも含むデバイスをその管理対象デバイスとすることが生じ得る。
【００９１】
そこで、この実施形態においては、このような事態を回避しつつ、複数のゲートウエイによって複数のデバイスをより効率的に管理することが可能な技術を例示する。具体的には、ゲートウエイ３０ａは、デバイス検索処理によって検索された２以上のデバイス（ＬＡＮ内のデバイス）の中から、ゲートウエイとして機能（動作）するデバイス（ゲートウエイデバイスとも称する）を少なくとも除外して、当該ゲートウエイ３０ａの管理対象デバイスを決定する。これによれば、ゲートウエイ３０ａは、その管理対象デバイスとして他のゲートウエイ３０ｂ（ゲートウエイデバイス）を登録する事態を回避することが可能である。換言すれば、複数のゲートウエイによる複数のデバイスの効率的な管理が実現される。
【００９２】
＜１−５．管理対象デバイス決定動作＞
図４は、ゲートウエイ３０（詳細には３０ａ）の動作を示すフローチャートである。また、図５は、本システム１における動作を示す概念図である。以下、これらの図を参照しつつ、ゲートウエイ３０ａの管理対象デバイスの決定動作について詳細に説明する。この管理対象デバイス決定動作（図４および図５等参照）は、或る時刻の到来に応じて実行されればよい。たとえば、１時間おき（あるいは数時間おき）の各時刻に当該動作がそれぞれ実行されればよい。
【００９３】
まず、ステップＳ１１において、ゲートウエイ３０ａは、ＬＡＮ１０７内のデバイスを検出する。たとえば、ゲートウエイ３０ａは、デバイス検索用のブロードキャストパケットを同一ＬＡＮ内の各装置に対して送信（一斉同報）する。ゲートウエイ３０ａは、各装置からの返信に基づいて同一ＬＡＮ内の各装置を検出する。ゲートウエイ３０ａは、検出された装置（デバイス）をデバイスリスト３０１にリストアップする。図６には、この時点におけるデバイスリスト３０１の一例が示されている。図６のデバイスリスト３０１においては、同一ＬＡＮ１０７内に存在する複数のデバイスのうち、自装置２０１を除く２以上のデバイス（ここでは合計４台のデバイス（ＭＦＰ）２０２〜２０５）がリストアップされている。このように、デバイス検索処理によってゲートウエイ３０ａの管理対象デバイスの候補デバイスが検索される。
【００９４】
なお、ステップＳ１１のデバイス検索処理においては、ゲートウエイ３０ａは、同一ＬＡＮ１０７の全体を検索対象範囲として指定してもよく、あるいはＬＡＮ１０７の一部を検索対象範囲として指定してもよい。たとえば、ゲートウエイ３０ａは、ＬＡＮ１０７内の全ネットワークのうちの１又は複数のサブネットワーク（一部のネットワーク）を検索対象として指定してもよい。
【００９５】
ステップＳ１２においては、新たに検出されたデバイスが存在するか否か（換言すれば、１つ以上のデバイスが新たに検出されたか否か）が判定される。今回（最新）のステップＳ１１のデバイス検出処理の処理結果（最新の検出結果）と前回のステップＳ１１のデバイス検出処理の処理結果（ゲートウエイ３０ａの格納部５に記憶されている検出結果）とが比較されることによって、新規検出デバイスの有無が判定される。
【００９６】
新たなデバイスが検出されない場合には、図４の本処理は終了する。一方、少なくとも１つの新たなデバイス（たとえばデバイス２０２）が検出される場合には、ステップＳ１３に進む。換言すれば、ゲートウエイ３０ａは、今回のデバイス検索処理によって検索さ
れたデバイスの数が前回のデバイス検索処理によって検索されたデバイスの数よりも多い場合に、その管理対象デバイスの更新処理を実行する。これによれば、更新処理の頻度を最小限に抑制することが可能である。
【００９７】
ステップＳ１３，Ｓ１４においては、ゲートウエイ３０ａは、他のゲートウエイの情報を管理サーバ５０に問い合わせて取得する（図５も参照）。
【００９８】
具体的には、ステップＳ１３において、ゲートウエイ３０ａは、他のゲートウエイデバイスの情報（たとえば、ゲートウエイ３０の識別情報（ゲートウエイ３０のＩＰアドレスあるいはＭＡＣアドレス等））の送信要求を管理サーバ５０に対して送信する。管理サーバ５０は、当該送信要求に応じて、自装置５０に格納されていた管理テーブル６９（図９参照）に基づいて、ゲートウエイ３０ａ以外のゲートウエイの情報（たとえば、デバイス２０２（３０ｂ）がゲートウエイである旨の情報（デバイス２０２の識別情報等））を取得し、当該情報をゲートウエイ３０ａに送信する。なお、管理サーバ５０は、自らが保持しているゲートウエイ情報（デバイス２０１，２０２，２２１，２２２，...がゲートウエイである旨の情報）の全てを、ゲートウエイ３０ａに送信してもよいが、後述するように、ＬＡＮ１０７内のゲートウエイの情報のみをゲートウエイ３０ａに送出することが好ましい。
【００９９】
そして、ゲートウエイ３０ａは、当該送信要求に応じて管理サーバ５０から返信されてきた当該情報を受信することによって、他のゲートウエイ３０ｂの情報（デバイス２０２等がゲートウエイである旨の情報）を取得する。
【０１００】
ここにおいて、ゲートウエイ３０ａは、他のゲートウエイ３０の情報の送信要求を管理サーバ５０に送信するにあたっては、次のような動作を行うことが好ましい。
【０１０１】
具体的には、ゲートウエイ３０ａは、ステップＳ１１での検索処理結果（デバイス検索処理によって検索された２以上のデバイスの情報）をも管理サーバ５０に送信しつつ、当該２以上のデバイス（ステップＳ１１でのデバイス検索処理結果）の中にゲートウエイデバイスが存在するか否かを、管理サーバ５０に問い合わせる。管理サーバ５０は、当該ゲートウエイデバイスの存否に関する問合せに対して、問合せ結果を返信する。当該２以上のデバイスの中にゲートウエイデバイスが存在する場合には、管理サーバ５０は、当該ゲートウエイデバイスの情報（識別情報）等を問合せ結果として問合せ元装置（ゲートウエイ３０ａ）に送信し、ゲートウエイ３０ａは、当該問合せ結果を受信する（ステップＳ１４）。
【０１０２】
たとえば、ステップＳ１３において、ゲートウエイ３０ａは、デバイス検索処理の処理結果（「デバイス２０２〜２０５」）をもステップＳ１１の管理サーバ５０に送信（通知）する。管理サーバ５０は、管理テーブル６９に記憶されたゲートウエイデバイス情報（詳細には、複数のゲートウエイデバイス２０１，２０２，２２１，２２２，...）とゲートウエイ３０ａから送信されてきた検索結果（４つのデバイス２０２，２０３，２０４，２０５）との両者に基づいて、当該両者に重複して含まれているデバイスの存否を判定する。管理サーバ５０は、当該両者に重複して含まれているデバイス（重複デバイス）が存在する場合には、当該重複デバイス（たとえばデバイス２０２）の情報（識別情報）（データ３２０）等を問合せ結果として問合せ元装置（ゲートウエイ３０ａ）に送信し、ゲートウエイ３０ａは当該問合せ結果を受信する（ステップＳ１４）。図７は、問合せ結果を含むデータ３２０を示す図である。図７のデータ３２０においては、デバイス検索処理結果に係る４つのデバイス２０２〜２０５のうちデバイス２０２のみがゲートウエイデバイス（ゲートウエイ機能内蔵デバイス）である旨が示されている。
【０１０３】
このような動作によれば、ＬＡＮ１０７とは別のＬＡＮ内のゲートウエイ２２１，２２２，...の情報がＬＡＮ１０７内の装置に流出することが回避される。すなわち、管理サーバ５０によって管理されているゲートウエイの情報がＬＡＮ１０７以外のＬＡＮ内のゲートウエイ（たとえば、ゲートウエイ２２１，２２２）の情報を含む場合等においても、セキュリティを確保することが可能である。
【０１０４】
次のステップＳ１５においては、ゲートウエイ３０ａは、デバイスリスト３０１の更新処理を実行する。具体的には、ステップＳ１４で受信された問合せ結果に基づいて、ステップＳ１１での処理結果（２以上のデバイス）に含まれるゲートウエイデバイスを特定し、当該ゲートウエイデバイスを少なくとも除外した上で、ゲートウエイ３０ａの管理対象デバイスを決定する。
【０１０５】
たとえば、４つのデバイス２０２〜２０５がステップＳ１１にて検索された場合において、デバイス２０２がゲートウエイデバイスである旨が特定されると、デバイスリスト３０１からゲートウエイデバイス２０２が除外（削除）される。そして、当該デバイス２０２を除く３つのデバイス２０３，２０４，２０５が、ゲートウエイ３０ａの管理対象デバイスとして特定される（図８および図１０参照）。
【０１０６】
デバイスリスト３０１の当該更新処理の後、ステップＳ１６において、更新後のデバイスリスト３０１が管理サーバ５０に送信される。また、管理サーバ５０は、更新後のデバイスリスト３０１に基づき管理テーブル６９を更新する。
【０１０７】
なお、その後、たとえば、デバイス２０５（１０ｃ）に対する印刷出力指令がクラウドサーバ７０を経由して付与される場合には、まず、クラウドサーバ７０から管理サーバ５０にデバイス２０５に対するアクセス指令が付与される。つぎに、管理サーバ５０は、更新後の管理テーブル６９を参照して、デバイス２０５を管理するゲートウエイ３０（３０ａ）を特定する。そして、管理サーバ５０は、管理サーバ５０とゲートウエイ３０ａとの間のメッセージセッション５１１を利用することにより、当該ゲートウエイ３０ａにトンネル接続要求を送信する。当該ゲートウエイ３０ａは、当該トンネル接続要求に基づき、クラウドサーバ７０との間にトンネル通信を確立する（図１８参照）。そして、当該トンネル通信を用いてクラウドサーバ７０から（ゲートウエイ３０経由での）デバイス（画像形成装置）１０へのアクセスが行われる。具体的には、デバイス２０５に対する印刷出力指令がクラウドサーバ７０からデバイス１０（２０５）へと送出される。
【０１０８】
以上のような動作によれば、ゲートウエイ３０ａは、ゲートウエイデバイスの情報を管理サーバ５０から取得し（ステップＳ１４）、デバイス検索処理によって検索された２以上のデバイスから、少なくともゲートウエイデバイスを除外した上で、ゲートウエイ３０ａの管理対象デバイスを決定する（ステップＳ１５）。したがって、複数のゲートウエイのうちの一のゲートウエイが、他のゲートウエイをも含むデバイスをその管理対象デバイスとすることを回避しつつ、複数のゲートウエイによって複数のデバイスをより効率的に管理することが可能である。
【０１０９】
＜２．第２実施形態＞
第２実施形態は、第１実施形態の変形例である。この第２実施形態においては、ステップＳ１１で検索されたデバイスから、スリープ中（詳細には、ディープスリープ中）のデバイスが少なくとも除外されて、ゲートウエイ３０ａの管理対象デバイスが決定される態様を例示する。以下では、第１実施形態との相違点を中心に説明する。
【０１１０】
図１１は、第２実施形態に係るゲートウエイ３０ａの動作を示すフローチャートである。以下、図１１等を参照しつつ、第２実施形態に係るゲートウエイ３０ａの管理対象デバイスの決定動作について詳細に説明する。なお、第２実施形態では、同一のＬＡＮ１０７内に６台のデバイス２００（２０１〜２０６）が存在するものとする。また、そのうち、デバイス２０１，２０２，２０６はゲートウエイ機能を有するとともに、デバイス２０６は現在スリープ中であるものとする。
【０１１１】
まず、ステップＳ１１においては、第１実施形態と同様にしてデバイス検索処理が実行され、ＬＡＮ内に存在するデバイスが検出される。そして、検出された装置（デバイス）がデバイスリスト３０１にリストアップされる。図１２には、この時点におけるデバイスリスト３０１の一例が示されている。図１２のデバイスリスト３０１においては、自装置２０１以外の合計５台のデバイス（ＭＦＰ）２０２〜２０６がリストアップされている。
【０１１２】
また、ここでは、ゲートウエイ３０ａは、ＬＡＮ内の各装置の状態（「スリープ中」（詳細には、「簡易スリープ」あるいは「ディープスリープ」）または「稼働中」（アクティブ）であるか等）に関する情報をも、各装置との通信を介して取得するものとする。たとえば、ゲートウエイ３０ａ（２０１）は、ＬＡＮ１０７内に、自装置２０１以外に５台のデバイス２０２〜２０６が存在する旨に加えて、デバイス２０６が「スリープ中」（「ディープスリープ中」）である旨をも知得する。この実施形態では、或るデバイスがディープスリープモード（ゲートウエイとしての機能を有効化することができないスリープモード）である場合に、当該デバイスは「スリープ中」であると判定されるものとする。
【０１１３】
その後、ステップＳ１３においては、第１実施形態と同様に、ゲートウエイ３０ａは、他のゲートウエイ３０の情報の送信要求を管理サーバ５０に送信するに際して、ステップＳ１１での検索処理結果（デバイス検索処理によって検索された２以上のデバイスの情報）をも管理サーバ５０に送信する。
【０１１４】
ただし、この第２実施形態では、ゲートウエイ３０ａは、ステップＳ１１での検索処理結果（換言すれば、その管理対象デバイスの候補）から、スリープ中のデバイス（２０６）を予め除外しておく。そして、ゲートウエイ３０ａは、その管理対象デバイスの候補として複数（ここでは４台）のデバイス２０２〜２０５が存在する旨を管理サーバ５０に通知するとともに、当該４台のデバイスの中にゲートウエイデバイスが存在するか否かを、管理サーバ５０に対して問い合わせる。管理サーバ５０は、当該４台のデバイスの中にゲートウエイデバイスが存在する場合には、そのゲートウエイデバイスの情報（識別情報）等を問合せ結果として問合せ元装置（ゲートウエイ３０ａ）に送信する。
【０１１５】
たとえば、ゲートウエイ３０ａは、デバイス検索処理の処理結果からデバイス２０６を除外した４つのデバイス（「デバイス２０２〜２０５」）を、管理対象デバイス候補として管理サーバ５０に送信（通知）する。管理サーバ５０は、管理テーブル６９に記憶されたゲートウエイデバイス情報（詳細には、複数のゲートウエイデバイス２０１，２０２，２２１，２２２，...）とゲートウエイ３０ａから送信されてきた検索結果（４つのデバイス２０２，２０３，２０４，２０５）との両者に基づいて、当該両者に重複して含まれているデバイスの存否を判定する。管理サーバ５０は、当該両者に重複して含まれているデバイス（重複デバイス）が存在する場合には、当該重複デバイス（たとえばデバイス２０２）の情報（識別情報）（データ３２０（図７））等を問合せ結果として問合せ元装置（ゲートウエイ３０ａ）に送信する。この結果、４つのデバイス２０２，２０３，２０４，２０５のうち、デバイス２０２以外の３つのデバイス２０３，２０４，２０５が管理対象デバイス候補として決定される。
【０１１６】
その後、第１実施形態と同様に、ステップＳ１４，Ｓ１５，Ｓ１６の各処理が実行される。なお、ステップＳ１５においては、（ステップＳ１３にて管理対象デバイス候補から既に除外された）スリープ中デバイス２０６をも除いて、ゲートウエイ３０ａの管理対象デバイスが決定される。なお、図１４は、デバイスリスト３０１が更新される様子を示す図である。図１４の上段には、ステップＳ１１の直後のデバイスリスト３０１が示されており、図１４の下段には、ステップＳ１５の更新処理後のデバイスリスト３０１が示されている（図１３も参照）。このような処理の結果、図１４の下段および図１３に示されるように、たとえば、デバイス２０３，２０４，２０５が管理対象デバイスとして決定される。
【０１１７】
以上のような動作によれば、第１実施形態と同様の効果を得ることが可能である。また、ステップＳ１３においては、ゲートウエイ機能を有するスリープ中デバイス２０６が管理対象デバイス候補から除外されるので、効率的な管理が可能である。
【０１１８】
特に、デバイス２０６がスリープ中である場合には、ゲートウエイとしてのデバイス２０６の管理対象デバイスの情報が管理サーバ５０に通知されておらず、管理サーバ５０は、デバイス２０６がゲートウエイ機能を有している旨（デバイス２０６がゲートウエイデバイスである旨）を把握していないことがある。このような場合であっても、ゲートウエイ３０ａ側で、スリープ中デバイスを管理対象デバイスから除外することによれば、ゲートウエイデバイスをより確実に除外することが可能である。
【０１１９】
なお、上記第２実施形態では、ゲートウエイ３０ａは、スリープ中デバイス２０６をステップＳ１３にて管理対象デバイス候補から除外しているが、本発明はこれに限定されない。たとえば、ゲートウエイ３０ａは、スリープ中デバイス２０６をステップＳ１５にて管理対象デバイス候補から除外するようにしてもよい。
【０１２０】
また、上記第２実施形態では、或るデバイスがディープスリープモード（ゲートウエイとしての機能を有効化することができないスリープモード）である場合に、当該デバイスはスリープ中であると判定されているが、これに限定されない。たとえば、或るデバイスが簡易スリープモードである場合にも、当該デバイスはスリープ中であると判定されるようにしてもよい。
【０１２１】
＜３．第３実施形態＞
第３実施形態は、第１実施形態の変形例である。
【０１２２】
第１実施形態においては、ゲートウエイ３０ａは、ステップＳ１３，Ｓ１４にて、管理サーバ５０と通信することによって、ゲートウエイデバイスの情報を取得している。
【０１２３】
この第３実施形態においては、ゲートウエイ３０ａは、ステップＳ１３，Ｓ１４にて、ＬＡＮ１０７内の各デバイスと通信することによって、ゲートウエイデバイスの情報を取得する。そして、管理対象デバイスの絞り込み処理（ゲートウエイデバイスを管理対象デバイスから除外する処理）を実行する。以下、このような態様について説明する。
【０１２４】
図１５は、第３実施形態に係るゲートウエイ３０（３０ａ）の動作を示すフローチャートである。以下、図１５等を参照しつつ、第３実施形態に係るゲートウエイ３０ａの管理対象デバイスの決定動作について説明する。
【０１２５】
ステップＳ１３，Ｓ１４以外においては、第１実施形態と同様の処理が実行される。
【０１２６】
一方、ステップＳ１３においては、ゲートウエイ３０ａは、ステップＳ１１のデバイス検索処理で検索された各デバイス（たとえば２０２〜２０５）に対して、当該各デバイス（問合せ先装置）がゲートウエイデバイスであるか否かをそれぞれ問い合わせる。また、ゲートウエイ３０ａは、各デバイスからの返答に基づいて、各デバイスがゲートウエイデバイスであるか否かに関する情報を取得する（ステップＳ１４）。なお、図１６は、ゲートウエイ３０ａ（２０１）が、ステップＳ１１にて検出された複数のデバイス２０２〜２０５のそれぞれに対して、上述の問合せ等（ステップＳ１３，Ｓ１４）を行っている様子を示す図である。
【０１２７】
なお、このような問合せは、明示的な問合せであることを要しない。たとえば、ゲートウエイに対する接続要求を各デバイスに送信することによって、このような問合せを実現するようにしてもよい。具体的には、ゲートウエイ３０ａが各デバイスに対してゲートウエイに対する接続要求を送信すると、当該問合せを受信した各デバイスはそれぞれ次のような返信を行う。
【０１２８】
当該問合せを受信したデバイスがゲートウエイデバイスである場合には、当該デバイスは、ゲートウエイ３０ａからの接続要求を拒否し、その旨（接続要求許否）をゲートウエイ３０ａに返信する。一方、当該問合せを受信したデバイスがゲートウエイデバイスでない場合には、当該デバイスは、通信内容（接続要求）を理解できず、通信エラーメッセージをゲートウエイ３０ａに返信する。
【０１２９】
その後、ステップＳ１５，Ｓ１６において、第１実施形態と同様の動作が行われる。ただし、ゲートウエイ３０ａは、各デバイスからの返答に基づいて、各デバイスがゲートウエイデバイスであるか否かを判断する。具体的には、問合せ先装置から接続要求許否が返信されてきた場合には、ゲートウエイ３０ａは、当該問合せ先装置がゲートウエイデバイスである旨を判断する。一方、問合せ先装置から通信エラーメッセージが返信されてきた場合には、ゲートウエイ３０ａは、当該問合せ先装置がゲートウエイデバイスでない旨を判断する。このようにして、各問合せ結果に基づいてゲートウエイデバイスが特定される。そして、当該ゲートウエイデバイスを少なくとも除外した上で、ゲートウエイ３０ａの管理対象デバイスが決定される。
【０１３０】
以上のような動作によっても、第１実施形態と同様の効果を得ることが可能である。特に、第３実施形態によれば、ゲートウエイ３０ａは、管理サーバ５０との通信を要さずに他のゲートウエイデバイスを特定することが可能である。
【０１３１】
なお、第２実施形態に関しても同様の思想を適用することが可能である。その場合、ゲートウエイ３０ａは、ステップＳ１３にてスリープ中デバイス２０６を管理対象デバイス（候補）から予め除外すればよい。換言すれば、ステップＳ１３においては、スリープ中デバイス２０６に対してゲートウエイであるか否かに関する問合せを行うことを要しない。
【０１３２】
＜４．変形例等＞
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【０１３３】
たとえば、上記各実施形態においては、各ゲートウエイ３０の管理対象デバイス決定動作は、或る時刻の到来に応じて実行される態様を例示したが、これに限定されない。具体的には、これに代えて、或るいは、これとともに、各ゲートウエイ３０の起動時等に実行されるようにしてもよい。
【０１３４】
また、上記第１実施形態等においては、ゲートウエイデバイスの情報を管理サーバ５０に問い合わせる態様等を例示しているが、これに限定されず、ゲートウエイ３０ａは、ゲートウエイデバイスの情報を、ＬＡＮ１０７内のプリントサーバに問い合わせるようにしてもよい。なお、当該プリントサーバは、上述の管理テーブル６９と同様のデータを格納しているものとする。
【０１３５】
より具体的には、ゲートウエイ３０ａは、デバイス検索処理によって検索された２以上のデバイスの情報と当該２以上のデバイスの中にゲートウエイデバイスが存在するか否かに関する問合せとをプリントサーバに送信する。ゲートウエイ３０ａは、その問合せ結果をプリントサーバから受信することによって、当該２以上のデバイスに含まれるゲートウエイデバイスを特定する。このようにして、ゲートウエイ３０ａは、プリントサーバからゲートウエイデバイスの情報を取得するようにしてもよい。そして、ゲートウエイ３０ａは、特定された当該ゲートウエイデバイスを少なくとも除外した上で、ゲートウエイ３０ａによる管理対象デバイスを決定するようにしてもよい。
【０１３６】
また、上記各実施形態では、デバイス１０としてＭＦＰを例示したがこれに限定されない。たとえば、プリント処理を実行する印刷出力部とスキャン処理を実行する画像読取部との少なくとも一方を有する画像形成装置等であってもよい。より詳細には、デバイス１０は、単機能プリンタ、あるいは、単機能スキャナ等であってもよい。
【符号の説明】
【０１３７】
１  通信システム
１０  デバイス
３０，３０ａ，３０ｂ  ゲートウエイ（通信中継装置）
５０  管理サーバ
７０  クラウドサーバ
９０  クライアント
１０７  ＬＡＮ
２０１〜２０６  ＭＦＰ
３０１  （ゲートウエイ３０ａの）デバイスリスト
【図１】
0006507833.tif 000002
【図２】
0006507833.tif 000003
【図３】
0006507833.tif 000004
【図４】
0006507833.tif 000005
【図５】
0006507833.tif 000006
【図６】
0006507833.tif 000007
【図７】
0006507833.tif 000008
【図８】
0006507833.tif 000009
【図９】
0006507833.tif 000010
【図１０】
0006507833.tif 000011
【図１１】
0006507833.tif 000012
【図１２】
0006507833.tif 000013
【図１３】
0006507833.tif 000014
【図１４】
0006507833.tif 000015
【図１５】
0006507833.tif 000016
【図１６】
0006507833.tif 000017
【図１７】
0006507833.tif 000018
【図１８】
0006507833.tif 000019