(57)【要約】【課題】論理的な通信路を確立する物理的な通信路に制限がある場合でも、通信データ量が多いデータを効率的に送信すること。【解決手段】通信サーバ（３００）／中継装置（１００）は、特定サーバと特定装置との間で通信が行なわれる特定ジョブが発生したかを判断し（３１１，１１１）、当該特定サーバと当該特定装置との間でデータを通信するための既存通信路が確立されているか判断し（３１２，１１２）、特定ジョブに伴なう通信データ量が多いと判断するための第１所定条件を満たすかを判断し（１１４）、確立されている既存通信路に加えて当該特定サーバと当該特定装置との間でデータを通信するための新規通信路を物理的通信路に確立することが可能な第２所定条件を満たすかを判断し（１１５）、特定ジョブが発生し、かつ、既存通信路が確立され、かつ、第１所定条件を満たし、かつ、第２所定条件を満たす場合に、新規通信路を確立する（１１６）。【選択図】図５
2018037770.tif 000002
【特許請求の範囲】
【請求項１】
特定サーバと少なくとも１つの特定装置との間で通信を行ない、前記特定サーバが前記特定装置に対して所定のサービスを提供するサービス提供システムであって、
前記特定サーバと、
前記特定装置と、
前記特定サーバが前記特定装置と通信を行なうための処理を実行する通信サーバと、
前記特定装置と同じプライベートネットワークに接続され、前記特定装置が前記特定サーバと通信を行なうための処理を実行する中継装置とを含み、
前記通信サーバおよび前記中継装置の少なくとも一方は、
物理的通信路にデータを送受信するための論理的な通信路を確立する確立手段と、
前記特定サーバと前記特定装置との間で通信が行なわれる特定ジョブが発生したかを判断する第１判断手段と、
前記確立手段によって当該特定サーバと当該特定装置との間でデータを通信するための論理的な既存通信路が確立されているかを判断する第２判断手段と、
前記特定ジョブに伴なう通信データ量が多いと判断するための第１所定条件を満たすかを判断する第３判断手段と、
前記第２判断手段によって確立されていると判断された前記既存通信路に加えて前記確立手段が当該特定サーバと当該特定装置との間でデータを通信するための論理的な新規通信路を前記物理的通信路に確立することが可能な第２所定条件を満たすかを判断する第４判断手段とを備え、
前記確立手段は、前記第１判断手段によって前記特定ジョブが発生したと判断され、かつ、前記第２判断手段によって前記既存通信路が確立されていると判断され、かつ、前記第３判断手段によって前記第１所定条件を満たすと判断され、かつ、前記第４判断手段によって前記第２所定条件を満たすと判断された場合に、前記新規通信路を確立する、サービス提供システム。
【請求項２】
前記第３判断手段は、前記通信データ量を特定可能なデータに基づいて前記第１所定条件を満たすか否かを判断する、請求項１に記載のサービス提供システム。
【請求項３】
前記確立手段は、前記特定装置が複数ある場合、前記特定装置ごとに通信路を確立する、請求項１に記載のサービス提供システム。
【請求項４】
前記通信サーバまたは前記中継装置は、さらに、
前記特定ジョブに伴なう通信の終了時に、当該通信のための通信路の他に同一の前記特定装置のための通信路が存在するかを判断する第５判断手段と、
前記第５判断手段によって存在すると判断された場合、前記特定ジョブに伴なう通信のための通信路を解放する解放手段とを備える、請求項３に記載のサービス提供システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、サービス提供システムに関し、特に、特定サーバと少なくとも１つの特定装置との間で通信を行ない、前記特定サーバが前記特定装置に対して所定のサービスを提供するサービス提供システムに関する。
【背景技術】
【０００２】
従来、サービスを提供するコンピュータであるサーバ群（いわゆるクラウド）によって複合機（以下、「ＭＦＰ」（Multi  Function  Peripherals）という）などの画像形成装置を用いてサービス（いわゆるクラウドサービス）を提供するシステムがあった。
【０００３】
提供されるサービスとしては、たとえば、文書や画像などを画像形成装置でスキャンした画像データをクラウドのストレージ（補助記憶装置）に記憶するサービス、ストレージに保存されている画像データを近くにあるシステム内の画像形成装置に出力するサービス、画像形成装置以外のデバイスからのプリント指示に応じてストレージに保存されている画像データなどを、システム内の画像形成装置に出力するサービス、および、画像形成装置以外のデバイスからのファックス送信指示に応じて所定の画像データを、システム内の画像形成装置からファックスの送信先に送信するサービスがある。
【０００４】
このようなサービスを提供するサーバと画像形成装置との通信をセキュアに行なう必要がある。たとえば、画像形成装置が設置されるユーザ側に、中継装置を設置して、中継装置によって、画像形成装置側から送信するデータを暗号化したり、サーバ側から送信されてきたデータを復号したりする。
【０００５】
サーバと画像形成装置との間でセキュアな通信を行なうために、ＨＴＴＰ（Hypertext  Transfer  Protocol）トンネル通信の技術を用いることが考えられる。トンネル通信とは、何らかのネットワークで接続されている物理的および論理的に離れた２点間を仮想の回線（トンネル）によりあたかも同一点であるかのように扱った通信である。ＨＴＴＰトンネル通信とは、トンネルを通過するデータをＨＴＴＰでカプセル化した通信である。ＨＴＴＰトンネル通信において、１つのジョブでの通信につき、１つのＨＴＴＰセッション（論理的な通信路）を確立し、他の通信とＨＴＴＰセッションを共有しないようにしていた（たとえば、特許文献１参照）。これにより、通信処理の不具合などが原因で、通信経路が混線し、誤った通信先にデータが送信されてしまうことを防止することができる。
【０００６】
しかし、このようにした場合、複数の通信が同時に行なわれた場合、中継装置のリソースの消費が多くなってしまうといった問題がある。また、物理的な通信路には制限がある。このような問題を解決するために、ＨＴＴＰ／２で追加された多重化ストリーム通信の機能を使うことが考えられる。多重化ストリーム通信とは、複数のＴＣＰ（Transmission  Control  Protocol）通信を非同期かつ双方向で行なう通信である。具体的には、１つの通信について１つのセッションを確立していたことに替えて、１つの画像形成装置（中継装置）について１つのセッションを確立することができる。これにより、中継装置のリソースの消費が効率化され、リソースの消費が軽減されることが期待される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１６−５８９３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ここで、画像形成装置におけるジョブの通信では、大容量の通信データが送信される場合があり、サーバと画像形成装置との間の通信がジョブのボトルネックとなるという特徴がある。このボトルネック解消のため、大容量の通信データの送信が行なわれる場合、ＨＴＴＰ／２のストリーム通信を用いてバルク転送で送信することが考えられる。このジョブの実行と共に、そのジョブのステータスの確認のための通信など複数の通信が同時に実行される場合がある。このような場合に、１セッション内の通信を大容量データの通信が占有してしまうと、通信路には制限があるため、大容量データの通信以外の通信などの処理に影響を与えてしまう。
【０００９】
この発明は上述の問題を解決するためになされたもので、この発明の目的の１つは、論理的な通信路が確立される物理的な通信路に制限がある場合でも、通信データ量が多いデータを効率的に送信することが可能なサービス提供システムを提供することである。
【課題を解決するための手段】
【００１０】
上述の目的を達成するために、この発明のある局面によれば、サービス提供システムは、特定サーバと少なくとも１つの特定装置との間で通信を行ない、特定サーバが特定装置に対して所定のサービスを提供するシステムであり、特定サーバと、特定装置と、特定サーバが特定装置と通信を行なうための処理を実行する通信サーバと、特定装置と同じプライベートネットワークに接続され、特定装置が特定サーバと通信を行なうための処理を実行する中継装置とを含む。
【００１１】
通信サーバおよび中継装置の少なくとも一方は、物理的通信路にデータを送受信するための論理的な通信路を確立する確立部と、特定サーバと特定装置との間で通信が行なわれる特定ジョブが発生したかを判断する第１判断部と、確立部によって当該特定サーバと当該特定装置との間でデータを通信するための論理的な既存通信路が確立されているかを判断する第２判断部と、特定ジョブに伴なう通信データ量が多いと判断するための第１所定条件を満たすかを判断する第３判断部と、第２判断部によって確立されていると判断された既存通信路に加えて確立部が当該特定サーバと当該特定装置との間でデータを通信するための論理的な新規通信路を物理的通信路に確立することが可能な第２所定条件を満たすかを判断する第４判断部とを備える。
【００１２】
確立部は、第１判断部によって特定ジョブが発生したと判断され、かつ、第２判断部によって既存通信路が確立されていると判断され、かつ、第３判断部によって第１所定条件を満たすと判断され、かつ、第４判断部によって第２所定条件を満たすと判断された場合に、新規通信路を確立する。
【００１３】
好ましくは、第３判断部は、通信データ量を特定可能なデータに基づいて第１所定条件を満たすか否かを判断する。
【００１４】
好ましくは、確立部は、特定装置が複数ある場合、特定装置ごとに通信路を確立する。さらに好ましくは、通信サーバまたは中継装置は、さらに、特定ジョブに伴なう通信の終了時に、当該通信のための通信路の他に同一の特定装置のための通信路が存在するかを判断する第５判断部と、第５判断部によって存在すると判断された場合、特定ジョブに伴なう通信のための通信路を解放する解放部とを備える。
【発明の効果】
【００１５】
この発明によれば、特定サーバと特定装置との間で通信が行なわれる特定ジョブが発生し、特定ジョブに伴なう通信データ量が多く、特定サーバと特定装置との間で既存通信路が確立されており、新規通信路を物理的通信路に確率可能であれば、新規通信路が確立され、通信データ量が多い通信が新規通信路で行なわれる。その結果、論理的な通信路が確立される物理的な通信路に制限がある場合でも、通信データ量が多いデータを効率的に送信することが可能なサービス提供システムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】この発明の実施の形態におけるサービス提供システムの概略を示す図である。
【図２】この実施の形態におけるＭＦＰの構成を示すブロック図である。
【図３】この実施の形態における通信サーバの構成を示すブロック図である。
【図４】この実施の形態における中継装置の構成を示すブロック図である。
【図５】この実施の形態におけるサービス提供システムの機能の概略を示す機能ブロック図である。
【図６】この実施の形態におけるサービス提供システムで実行される第１の処理の流れを示すフローチャートである。
【図７】この実施の形態におけるサービス提供システムで実行される第２の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下に、図面を参照しつつ、サービス提供システムの実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらの説明は繰り返さない。
【００１８】
図１は、この発明の実施の形態におけるサービス提供システム１の概略を示す図である。図１を参照して、サービス提供システム１は、ＭＦＰ２００（図１においては、ＭＦＰ２００Ａ，２００Ｂ）と、通信サーバ３００と、アプリケーションサーバ４００と、中継装置１００とを含む。通信サーバ３００およびアプリケーションサーバ４００は、それぞれ、単体のサーバに限定されず、サーバ群であってもよい。また、通信サーバ３００およびアプリケーションサーバ４００は１台のコンピュータで構成されてもよい。
【００１９】
通信サーバ３００およびアプリケーションサーバ４００は、サービスの提供者側に設置され、ＬＡＮ（Local  Area  Network）やＶＰＮ（Virtual  Private  Network）などの同じプライベートネットワーク８００に接続される。ＭＦＰ２００Ａ，２００Ｂおよび中継装置１００は、ユーザ側（利用者側）に設置され、同じプライベートネットワーク９００に接続される。中継装置１００は、インターネットや公衆回線や公衆無線ＬＡＮなどのパブリックネットワーク７００を介して、通信サーバ３００およびアプリケーションサーバ４００などのサーバ側と接続される。なお、図１においては、サーバ側には、中継装置１００のようなゲートウェイは記載されていないが備えられる。通信サーバ３００がゲートウェイの機能を有するようにしてもよい。
【００２０】
ＭＦＰ２００は、コピー機能、スキャナ機能、プリンタ機能、ファックス機能、および、通信機能を有し、画像が表された読取対象から画像を画像データとして読取ったり、他のＭＦＰなどの画像処理装置やコンピュータなどの他の装置から通信ネットワーク回線や電話回線などの通信回線を経由して画像データを受信したり、通信回線を経由して他の装置に画像データを送信したり、画像データに基づき画像を印刷したりする。画像とは、文書、線図、図面、イラスト、絵画および写真などである。画像データは、画像をデータとして表現したものであって、テキストデータもしくは文書データ、または、ベクトル形式もしくはビットマップ形式の画像データである。
【００２１】
アプリケーションサーバ４００は、ＭＦＰ２００を用いてサービスを提供する。提供するサービスは、たとえば、文書や画像などをＭＦＰ２００でスキャンした画像データをサーバ側のストレージに保存するサービス、ストレージに保存されている画像データを近くにあるサービス提供システム１内のＭＦＰ２００に出力するサービス、ＭＦＰ２００以外の装置（たとえば、携帯端末５００）からのプリント指示に応じてストレージに保存されている画像データなどを、サービス提供システム１内のＭＦＰ２００に出力するサービス、および、ＭＦＰ２００以外の装置（たとえば、携帯端末５００）からのファックス送信指示に応じて所定の画像データを、サービス提供システム１内のＭＦＰ２００からファックスの送信先に送信するサービスである。アプリケーションサーバ４００は、これらのようなサービスを提供するためのアプリケーションプログラムを実行する。なお、アプリケーションサーバ４００は、通信サーバ３００と異なるプライベートネットワークに接続されているサーバであってもよいし、異なるサービス提供者に設置されるサーバであってもよい。
【００２２】
通信サーバ３００は、ＭＦＰ２００とアプリケーションサーバ４００との通信を管理する。たとえば、通信サーバ３００は、ＭＦＰ２００とアプリケーションサーバ４００との通信を中継する中継装置１００の管理や認証をする。
【００２３】
図２は、この実施の形態におけるＭＦＰ２００の構成を示すブロック図である。図２を参照して、ＭＦＰ２００は、ＭＦＰ２００の全体を制御するための制御部２１０と、所定の情報を記憶するための記憶部２２０と、ＭＦＰ２００を操作するための操作部２３０と、ＭＦＰ２００の所定の情報を表示するための表示部２４０と、外部の装置とプライベートネットワーク９００を介して通信するための通信部２６０と、所定の画像を読込むためのスキャナ部２７０と、所定の画像を印刷するためのプリンタ部２８０とを含む。
【００２４】
記憶部２２０は、制御部２１０でプログラムを実行するために必要な作業領域として用いられるＲＡＭ（Random  Access  Memory）と、制御部２１０で実行するためのプログラムを記憶するためのＲＯＭ（Read  Only  Memory）とを含む。また、ＲＡＭには、所定の処理を実行するためのプログラムおよびデータが、操作部２３０、通信部２６０またはスキャナ部２７０から読込まれて記憶される。さらに、ＲＡＭの記憶領域を補助するための補助記憶装置として、ハードディスクドライブまたはメモリカードが用いられてもよい。
【００２５】
操作部２３０は、ＭＦＰ２００に所定の機能を実行させるための複数の操作ボタン、および、表示部２４０のディスプレイに構成されるタッチパネルを含む。操作部２３０の操作ボタンおよびタッチパネルが操作されることによってＭＦＰ２００に入力された操作内容を示す操作信号は、制御部２１０に受け渡される。
【００２６】
表示部２４０は、ディスプレイにタッチパネルが構成された液晶表示装置（以下「ＬＣＤ」（Liquid  Crystal  Display）という）を含む。表示部２４０のＬＣＤは、制御部２１０から受けた画像であって、ＭＦＰ２００の状態およびタッチパネルの操作ボタンを示す画像を表示する。なお、表示部２４０は、ＬＣＤに替えて、ＥＬ（Electro-Luminescence）ディスプレイ、プラズマディスプレイ、ＳＥＤ（Surface-conduction  Electron-emitter  Display）など他のＦＰＤ（Flat  Panel  Display）を含むようにしてもよい。
【００２７】
通信部２６０は、外部の装置、たとえば、中継装置１００などとの間でプライベートネットワーク９００を介して、予め定められたプロトコルで、データを送受信する。通信部２６０は、制御部２１０から受けたデータを外部に送信したり、外部から受信したデータを制御部２１０に受け渡したりする。
【００２８】
スキャナ部２７０は、紙またはその他の物から、それらの表面の視覚可能な情報を、光学的に読取って、読取った画像を画像データに変換し、その画像データを制御部２１０に受け渡す。
【００２９】
プリンタ部２８０は、制御部２１０から受けた画像データを画像に変換し、その画像を印刷用紙に印刷する。印刷用紙には、普通紙、写真用紙およびＯＨＰ（Overhead  projector）フィルムなどが含まれる。
【００３０】
制御部２１０は、ＭＰＵ（Micro  Processing  Unit）およびその補助回路からなる。制御部２１０は、記憶部２２０、操作部２３０、表示部２４０、通信部２６０、スキャナ部２７０およびプリンタ部２８０を制御し、記憶部２２０に記憶されたプログラムおよびデータにしたがって所定の処理を実行し、操作部２３０、通信部２６０またはスキャナ部２７０から入力されたデータを処理し、処理されたデータを、記憶部２２０に記憶させたり、表示部２４０に表示させたり、通信部２６０から出力させたり、プリンタ部２８０で印刷させたりする。
【００３１】
ＭＦＰ２００のコピー機能、プリンタ機能、スキャナ機能、ファクシミリ機能および通信機能は、それぞれ、制御部２１０、記憶部２２０、操作部２３０、表示部２４０、通信部２６０、スキャナ部２７０およびプリンタ部２８０のＭＦＰ２００の各部が協調することによって実現される。
【００３２】
図３は、この実施の形態における通信サーバ３００の構成を示すブロック図である。図３を参照して、通信サーバ３００は、通信サーバ３００の全体を制御するための制御部３１０と、所定の情報を記憶するための記憶部３２０と、記憶部３２０を補助して所定の情報を記憶するための外部記憶装置３５０と、外部の装置とプライベートネットワーク８００を介して通信するための通信部３６０とを含む。
【００３３】
記憶部３２０および通信部３６０は、それぞれ、図２で説明したＭＦＰ２００の記憶部２２０および通信部２６０と同様であるので、重複する説明は繰返さない。
【００３４】
外部記憶装置３５０は、ハードディスクドライブ、フレキシブルディスクドライブ、ＭＯ（Magneto-Optical  disk）ドライブ、ＣＤ（Compact  Disc）ドライブ、ＤＶＤ（Digital  Versatile  Disk）ドライブ、または、メモリカードリーダライタなどの記憶装置で構成される。外部記憶装置３５０は、制御部３１０から受けた所定のデータまたはプログラムを、記録媒体３５１に磁気的、光学的、または電気的に記録したり、記録媒体３５１から読出して制御部３１０に受け渡したりする。記録媒体３５１としては、ハードディスク，フレキシブルディスクなどの磁気ディスク、ＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory），ＣＤ−Ｒ（Compact  Disk  Recordable），ＣＤ−ＲＷ（Compact  Disk  ReWritable），ＤＶＤ−ＲＯＭ（Digital  Versatile  Disk  Read  Only  Memory），ＤＶＤ−Ｒ（Digital  Versatile  Disk  Recordable），ＤＶＤ−ＲＷ（Digital  Versatile  Disk  Rerecordable  Disc），ＤＶＤ−ＲＡＭ（Digital  Versatile  Disk  Random  Access  Memory），ＤＶＤ＋Ｒ，ＤＶＤ＋ＲＷ（Digital  Versatile  Disk  ReWritable）などの光ディスク、ＭＯ（Magneto-Optical  disk）などの光磁気ディスク、メモリカード、または、ＵＳＢ（Universal  Serial  Bus）メモリなどがある。
【００３５】
制御部３１０は、図２で説明したＭＦＰ２００の制御部２１０と同様の構成を有する。制御部３１０は、記憶部３２０、外部記憶装置３５０および通信部３６０を制御し、記憶部３２０に記憶されたプログラムおよびデータにしたがって所定の処理を実行し、外部記憶装置３５０または通信部３６０から入力されたデータを処理し、処理されたデータを、記憶部３２０または外部記憶装置３５０の記録媒体３５１に記憶させたり、通信部３６０から出力させたりする。
【００３６】
なお、この実施の形態においては、通信サーバ３００は、操作部および表示部を含まず、外部の装置の操作部からの操作によって操作され、外部の装置の表示部に情報を出力するが、これに限定されず、操作部および表示部の構成を含むこととしてもよい。操作部は、キーボードおよびマウスを含み、操作部のキーボードおよびマウスが操作されることによって通信サーバ３００に入力された操作内容を示す操作信号は、制御部３１０に受け渡される。表示部は、ＬＣＤを含み、ＬＣＤは、制御部３１０から受けた画像データに対応する画像を表示する。
【００３７】
アプリケーションサーバ４００の構成は、通信サーバ３００の構成と同様であるので、重複する説明は繰返さない。
【００３８】
図４は、この実施の形態における中継装置１００の構成を示すブロック図である。図４を参照して、中継装置１００は、中継装置１００の全体を制御するための制御部１１０と、所定の情報を記憶するための記憶部１２０と、記憶部１２０を補助して所定の情報を記憶するための外部記憶装置１５０と、外部の装置とプライベートネットワーク９００を介して通信するための第１通信部１６０と、外部の装置とパブリックネットワーク７００を介して通信するための第２通信部１７０とを含む。
【００３９】
記憶部１２０は、図２で説明したＭＦＰ２００の記憶部２２０と同様である。第１通信部１６０および第２通信部１７０は、図２で説明したＭＦＰ２００の通信部２６０と同様である。このため、重複する説明は繰返さない。
【００４０】
外部記憶装置１５０は、メモリカードリーダライタで構成される。なお、外部記憶装置１５０は、通信サーバ３００の外部記憶装置３５０と同様、ハードディスクドライブ、フレキシブルディスクドライブ、ＭＯドライブ、ＣＤドライブ、または、ＤＶＤドライブなどの記憶装置で構成されるようにしてもよい。外部記憶装置１５０は、制御部１１０から受けた所定のデータまたはプログラムを、メモリカードやＵＳＢ（Universal  Serial  Bus）メモリなどの記録媒体１９０に電気的に記録したり、記録媒体１９０から読出して制御部１１０に受け渡したりする。
【００４１】
図５は、この実施の形態におけるサービス提供システム１の機能の概略を示す機能ブロック図である。なお、この実施の形態においては、図５で説明するサービス提供システム１に含まれる通信サーバ３００および中継装置１００の各装置の複数の機能が、それぞれの制御部３１０，１１０によって、後述する図６および図７で説明するようなソフトウェアのプログラムが実行されることによって、各装置に構成される場合について説明する。しかし、これに限定されず、各装置の複数の機能の一部または全部がそれぞれ、専用のハードウェアで構成されるようにしてもよい。
【００４２】
図５を参照して、中継装置１００は、第１判断部１１１と、第２判断部１１２と、データ量取得部１１３と、第３判断部１１４と、第４判断部１１５と、通信路確立部１１６と、中継部１１７と、第５判断部１１８と、通信路解放部１１９とを含む。通信サーバ３００は、第１判断部３１１と、第２判断部３１２と、データ量取得部３１３とを含む。
【００４３】
第１判断部１１１およびデータ量取得部１１３は、制御部１１０および第１通信部１６０が協調して構成される。第２判断部１１２、第４判断部１１５、通信路確立部１１６、第５判断部１１８および通信路解放部１１９は、制御部１１０に構成される。第３判断部１１４および中継部１１７は、制御部１１０、第１通信部１６０および第２通信部１７０が協調して構成される。
【００４４】
第１判断部３１１およびデータ量取得部３１３は、制御部３１０および通信部３６０が協調して構成される。第２判断部３１２は、制御部３１０に構成される。
【００４５】
中継装置１００において、第１判断部１１１は、ＭＦＰ２００からジョブが発生したことを示す信号を受信することで、ＭＦＰ２００がアプリケーションサーバ４００と通信するジョブが発生したかを判断する。第２判断部１１２は、ジョブで通信するアプリケーションサーバ４００とこのＭＦＰ２００との間でデータを通信するための論理的な既存通信路が確立されているかを判断する。データ量取得部１１３は、ＭＦＰ２００からジョブで送信されるデータのサイズを推定可能なデータを取得する。
【００４６】
データのサイズを推定可能なデータは、たとえば、データがＰＪＬ（Print  Job  Language）の印刷データやスキャンデータである場合は、ヘッダ部に含まれるデータサイズを示すデータのようなデータのサイズを特定可能なデータである。しかし、データのサイズを推定可能であれば良く、たとえば、ジョブタイプを示すデータであってもよい。この場合、ジョブタイプが印刷ジョブやスキャンジョブであれば、大容量のデータと推定する。
【００４７】
通信サーバ３００において、第１判断部３１１は、アプリケーションサーバ４００からジョブが発生したことを示す信号を受信することで、アプリケーションサーバ４００がＭＦＰ２００と通信するジョブが発生したかを判断する。第２判断部３１２は、ジョブで通信するＭＰＦ２００とこのアプリケーションサーバ４００との間でデータを通信するための論理的な既存通信路が確立されているかを判断する。データ量取得部１１３は、アプリケーションサーバ４００からジョブで送信されるデータのサイズを推定可能なデータを取得する。
【００４８】
中継装置１００の第３判断部１１４は、中継装置１００のデータ量取得部１１３または通信サーバ３００のデータ量取得部３１３によって取得されたデータに基づいて、ジョブに伴なう通信データ量が多いと判断するための条件を満たすかを判断する。たとえば、取得されたデータがデータのサイズを特定可能なデータであれば、第３判断部１１４は、そのデータで特定されるデータ量が所定量以上であるとの条件を満たすかを判断する。取得されたデータがジョブタイプを示すデータであれば、第３判断部１１４は、そのデータで示されるジョブタイプが印刷ジョブまたはスキャンジョブであるとの条件を満たすかを判断する。
【００４９】
第４判断部１１５は、第２判断部１１２によって既存通信路が確立されていると判断された既存通信路に加えて、アプリケーションサーバ４００とＭＦＰ２００との間でデータを通信するための論理的な新規通信路を物理的通信路に確立することが可能な条件を満たすかを判断する。たとえば、第４判断部１１５は、現在のリソースの空き状況を確認し、空き状況が新たな論理的な通信路を確立するために必要なリソース以上であるかを判断する。リソースの空き状況は、たとえば、物理的通信路の帯域幅の使用率、通信を処理する制御部の使用率、通信のために用いられる記憶部の使用率、および、物理的通信路に確立されている論理的な通信路の数などから特定することができる。
【００５０】
通信路確立部１１６は、第１判断部１１１によってジョブが発生したと判断され、かつ、第２判断部１１２によって既存通信路が確立されていると判断され、かつ、第３判断部１１４によってジョブに伴なう通信データ量が多いと判断するための条件を満たすと判断され、かつ、第４判断部１１５によって新規通信路を確立することが可能であると判断された場合に、アプリケーションサーバ４００とＭＦＰ２００との間に新規通信路を確立する。
【００５１】
通信サーバ３００および中継装置１００の中継部３１４，１１７は、通信路確立部１１６によって新規通信路が確立されると、その新規通信路を用いてアプリケーションサーバ４００とＭＦＰ２００との通信を中継する。
【００５２】
中継装置１００において、第５判断部１１８は、通信路確立部１１６によって確立された新規通信路での通信が終了したときに、当該通信のための新規通信路の他に同一のＭＦＰ２００およびアプリケーションサーバ４００のための論理的な通信路が存在するかを判断する。
【００５３】
通信路解放部１１９は、第５判断部１１８によって新規通信路の他に論理的な通信路があると判断された場合、新規通信路を解放する。つまり、他に通信路がある場合は、新規通信路を再利用しない。第５判断部１１８によって新規通信路の他に論理的な通信路がないと判断された場合、新規通信路を維持し、その後、所定時間、新規通信路が利用されなければ、新規通信路を解放する。
【００５４】
図６は、この実施の形態におけるサービス提供システム１で実行される第１の処理の流れを示すフローチャートである。図６を参照して、この処理は、アプリケーションサーバ４００からの接続依頼をトリガとして実行される処理である。アプリケーションサーバ４００において、制御部は、ジョブの発生に伴ないデバイス（ここでは、ＭＦＰ２００）への接続依頼を通信サーバ３００に送信する（ステップＳ４１１）。
【００５５】
通信サーバ３００において、制御部３１０は、接続依頼の受信に応じて、当該デバイスであるＭＦＰ２００とアプリケーションサーバ４００との間に既存のＨＴＴＰセッション（既存通信路）が有るかを判断する（ステップＳ３１１）。この判断は、図５の第２判断部３１２の判断と同様である。ＨＴＴＰセッションが無い（ステップＳ３１１でＮＯ）と判断した場合、制御部３１０は、新規ＨＴＴＰセッションを確立し、アプリケーションサーバ４００とＭＦＰ２００との間の通信のデータを中継する（ステップＳ３１２）。一方、ＨＴＴＰセッションが有る（ステップＳ３１１でＹＥＳ）と判断した場合、制御部３１０は、セッション確立通知をアプリケーションサーバ４００に送信する（ステップＳ３１３）。
【００５６】
アプリケーションサーバ４００において、制御部は、通信サーバ３００からセッション確立通知を受信したかを判断する（ステップＳ４１２）。受信した（ステップＳ４１２でＹＥＳ）と判断した場合、制御部は、データの送信を開始する（ステップＳ４１３）。
【００５７】
通信サーバ３００において、制御部３１０は、アプリケーションサーバ４００から所定量のデータを受信したかを判断する（ステップＳ３１４）。受信した（ステップＳ３１４でＹＥＳ）と判断した場合、制御部３１０は、受信したデータを優先度が高の状態で中継装置１００に送信する（ステップＳ３１５）。このときに、アプリケーションサーバ４００への肯定応答（Ａｃｋ）はまだ送信しない。
【００５８】
中継装置１００において、制御部１１０は、通信サーバ３００から受信したデータに基づいて、アプリケーションサーバ４００とＭＦＰ２００との間で通信されるデータが大容量と推定されるかを判断する（ステップＳ１１１）。この判断は、図５の第３判断部１１４の判断と同様である。
【００５９】
通信されるデータが大容量である（ステップＳ１１１でＹＥＳ）と判断した場合、制御部１１０は、アプリケーションサーバ４００とＭＦＰ２００との通信に用いられるリソースに余裕があるかを判断する（ステップＳ１１２）。この判断は、図５の第４判断部１１５の判断と同様である。
【００６０】
通信されるデータが大容量でない（ステップＳ１１１でＮＯ）と判断した場合、または、リソースに余裕がない（ステップＳ１１２でＮＯ）と判断した場合、制御部１１０は、既存のＨＴＴＰセッションを用いてアプリケーションサーバ４００とＭＦＰ２００との通信を継続するための処理を実行する（ステップＳ１１３）。
【００６１】
通信されるデータが大容量であり（ステップＳ１１１でＹＥＳ）、かつ、リソースに余裕がある（ステップＳ１１２でＹＥＳ）と判断した場合、制御部１１０は、新規のトンネルを識別するためのトンネルＩＤを含む新規セッションへの切替通知を通信サーバ３００に送信する（ステップＳ１１４）。中継装置１００からの切替通知に応じて、通信サーバ３００において、制御部３１０は、アプリケーションサーバ４００からＭＦＰ２００へのストリームを切断する（ステップＳ３１６）。
【００６２】
次に、中継装置１００において、制御部１１０は、新規ＨＴＴＰセッション（トンネル）を確立する（ステップＳ１１５）。これに応じて、通信サーバ３００において、制御部３１０は、肯定応答（Ａｃｋ）をアプリケーションサーバ４００に送信する（ステップＳ３１７）。アプリケーションサーバ４００において、制御部は、通信サーバ３００からＡｃｋを受信したかを判断する（ステップＳ４１４）。受信した（ステップＳ４１４でＹＥＳ）と判断した場合、制御部は、ＭＦＰ２００へのデータの送信を再開する（ステップＳ４１５）。
【００６３】
通信サーバ３００および中継装置１００において、制御部３１０，１１０は、アプリケーションサーバ４００からのデータを新規トンネルで中継する（ステップＳ３１８，ステップＳ１１６）。ＭＦＰ２００において、制御部２１０は、アプリケーションサーバ４００から通信サーバ３００および中継装置１００で中継されたデータを受信する（ステップＳ２１１）。
【００６４】
図７は、この実施の形態におけるサービス提供システム１で実行される第２の処理の流れを示すフローチャートである。図７を参照して、この処理は、デバイス（ここではＭＦＰ２００）からの接続依頼をトリガとして実行される処理である。ＭＦＰ２００において、制御部は、ジョブの発生に伴ないアプリケーションサーバ４００への接続依頼を中継装置１００に送信する（ステップＳ２２１）。
【００６５】
中継装置１００において、制御部１１０は、接続依頼の受信に応じて、アプリケーションサーバ４００とＭＦＰ２００との間に既存のＨＴＴＰセッション（既存通信路）が有るかを判断する（ステップＳ１２１）。この判断は、図５の第２判断部１１２の判断と同様である。ＨＴＴＰセッションが無い（ステップＳ１２１でＮＯ）と判断した場合、制御部１１０は、実行する処理をステップＳ１２６に進める。一方、ＨＴＴＰセッションが有る（ステップＳ１２１でＹＥＳ）と判断した場合、制御部１１０は、セッション確立通知をＭＦＰ２００に送信する（ステップＳ１２２）。
【００６６】
ＭＦＰ２００において、制御部２１０は、中継装置１００からセッション確立通知を受信したかを判断する（ステップＳ２２２）。受信した（ステップＳ２２２でＹＥＳ）と判断した場合、制御部２１０は、データの送信を開始する（ステップＳ２２３）。
【００６７】
中継装置１００において、制御部１１０は、ＭＦＰ２００から所定量のデータを受信したかを判断する（ステップＳ１２３）。受信した（ステップＳ１２３でＹＥＳ）と判断した場合、制御部１１０は、ＭＦＰ２００から受信したデータに基づいて、ＭＦＰ２００とアプリケーションサーバ４００との間で通信されるデータが大容量と推定されるかを判断する（ステップＳ１２４）。この判断は、図５の第３判断部１１４の判断と同様である。
【００６８】
通信されるデータが大容量である（ステップＳ１２４でＹＥＳ）と判断した場合、制御部１１０は、ＭＦＰ２００とアプリケーションサーバ４００との通信に用いられるリソースに余裕があるかを判断する（ステップＳ１２５）。この判断は、図５の第４判断部１１５の判断と同様である。
【００６９】
通信されるデータが大容量でない（ステップＳ１２４でＮＯ）と判断した場合、または、リソースに余裕がない（ステップＳ１２５でＮＯ）と判断した場合、制御部１１０は、既存のＨＴＴＰセッションを用いる。
【００７０】
通信されるデータが大容量であり（ステップＳ１２４でＹＥＳ）、かつ、リソースに余裕がある（ステップＳ１２５でＹＥＳ）と判断した場合、制御部１１０は、新規ＨＴＴＰセッション（トンネル）を確立する（ステップＳ１２６）。
【００７１】
中継装置１００および通信サーバ３００において、制御部１１０，３１０は、新規ＨＴＴＰセッションを確立した場合は新規ＨＴＴＰセッションで、新規ＨＴＴＰセッションを確立していない場合は既存ＨＴＴＰセッションで、ＭＦＰ２００のデータを中継する（ステップＳ１２７，ステップＳ３２１）。アプリケーションサーバ４００において、制御部は、ＭＦＰ２００から中継装置１００および通信サーバ３００で中継されたデータを受信する（ステップＳ４２１）。
【００７２】
［効果］
（１）  以上説明したように、この実施の形態におけるサービス提供システム１は、図１で説明したように、アプリケーションサーバ４００と少なくとも１つのＭＦＰ２００との間で通信を行ない、アプリケーションサーバ４００がＭＦＰ２００に対して所定のサービスを提供するシステムである。サービス提供システム１は、アプリケーションサーバ４００と、ＭＦＰ２００と、アプリケーションサーバ４００がＭＦＰ２００と通信を行なうための処理を実行する通信サーバ３００と、ＭＦＰ２００と同じプライベートネットワークに接続され、ＭＦＰ２００がアプリケーションサーバ４００と通信を行なうための処理を実行する中継装置１００とを含む。
【００７３】
図５〜図７で説明したように、通信サーバ３００および中継装置１００の少なくとも一方は、物理的通信路にデータを送受信するための論理的な通信路を確立し、アプリケーションサーバ４００とＭＦＰ２００との間で通信が行なわれる特定ジョブが発生したかを判断し、当該アプリケーションサーバ４００と当該ＭＦＰ２００との間でデータを通信するための論理的な既存通信路が確立されているかを判断し、特定ジョブに伴なう通信データ量が多いと判断するための第１所定条件を満たすかを判断し、確立されていると判断された既存通信路に加えて当該アプリケーションサーバ４００と当該ＭＦＰ２００との間でデータを通信するための論理的な新規通信路を物理的通信路に確立することが可能な第２所定条件を満たすかを判断する。
【００７４】
図５〜図７で説明したように、通信サーバ３００および中継装置１００の少なくとも一方は、特定ジョブが発生したと判断され、かつ、既存通信路が確立されていると判断され、かつ、第１所定条件を満たすと判断され、かつ、第２所定条件を満たすと判断された場合に、新規通信路を確立する。
【００７５】
これにより、アプリケーションサーバ４００とＭＦＰ２００との間で通信が行なわれる特定ジョブが発生し、特定ジョブに伴なう通信データ量が多く、アプリケーションサーバ４００とＭＦＰ２００との間で既存通信路が確立されており、新規通信路を物理的通信路に確率可能であれば、新規通信路が確立され、通信データ量が多い通信が新規通信路で行なわれる。その結果、論理的な通信路が確立される物理的な通信路に制限がある場合でも、通信データ量が多いデータを効率的に送信することができる。
【００７６】
また、アプリケーションサーバ４００およびＭＦＰ２００には、特に変更を加えることなく、上述した効果を得ることができる。また、アプリケーションサーバ４００とＭＦＰ２００との間に１対１で通信路を確立するため、転送間違えなどの通信の信頼性の低減を防ぐことができる。
【００７７】
（２）  図５で説明したように、通信サーバ３００および中継装置１００の少なくとも一方は、通信データ量を特定可能なデータに基づいて第１所定条件を満たすか否かを判断する。
【００７８】
通信データ量を特定可能なデータでない場合は通信データ量を判断するためにデータを解析したり通信データ量を推定したりする処理が必要になる。しかし、これによれば、そのような処理が不要になるので、通信データ量に対する判断を効率良く行なうことができる。
【００７９】
（３）  通信サーバ３００および中継装置１００の少なくとも一方は、ＭＦＰ２００が複数ある場合、ＭＦＰ２００ごとに通信路を確立する。
【００８０】
従来、中継装置が複数のＭＦＰ２００に通信を振分けていたため、中継装置に負荷が掛かると、誤ったＭＦＰ２００に通信を振分けてしまうおそれがあった。しかし、これによれば、ＭＦＰ２００ごとに通信路を確立するので、中継装置に負荷が掛かっても、誤ったＭＦＰ２００に通信を振分けてしまうことを防止することができる。
【００８１】
（４）  図５で説明したように、通信サーバ３００または中継装置１００は、さらに、特定ジョブに伴なう通信の終了時に、当該通信のための通信路の他に同一のＭＦＰ２００のための通信路が存在するかを判断し、存在すると判断された場合、特定ジョブに伴なう通信のための通信路を解放する。
【００８２】
これにより、通信路の解放により、その通信路のためのリソースが解放される。その結果、不要な通信路を維持しておくことによる無駄なリソースの消費を抑えることができる。
【００８３】
［変形例］
（１）  前述した実施の形態においては、画像処理装置の具体例が、画像形成装置の１つであるＭＦＰ２００であることとしたが、これに限定されず、複写機やプリンタなどの画像形成装置であってもよいし、スキャナであってもよいし、ファクシミリであってもよい。
【００８４】
（２）  前述した実施の形態においては、ＭＦＰ２００などの特定装置にサービスを提供するのがアプリケーションサーバ４００であることとした。しかし、これに限定されず、特定装置にサービスを提供するのが、他のサーバであってもよく、たとえば、データを保存するためのストレージとしてのサーバであってもよい。
【００８５】
（３）  前述した実施の形態においては、中継装置１００およびＭＦＰ２００は分離した構成であることとした。しかし、これに限定されず、中継装置１００は、ＭＦＰ２００に内蔵されるように構成されてもよい。
【００８６】
（４）  前述した実施の形態においては、通信サーバ３００は、単体のサーバであることとした。しかし、これに限定されず、通信サーバ３００は、たとえば、通信モジュールのような形でアプリケーションサーバ４００などの他のサーバに内蔵されるように構成されてもよい。
【００８７】
（５）  前述した実施の形態においては、第３判断部１１４、第４判断部１１５、通信路確立部１１６、第５判断部１１８および通信路解放部１１９は、中継装置１００に備えられるようにした。しかし、これに限定されず、これらの構成が、それぞれ、中継装置１００に備えられるとともに通信サーバ３００に備えられるようにしてもよいし、中継装置１００には備えられずに通信サーバ３００に備えられるようにしてもよい。
【００８８】
（６）  前述した実施の形態においては、サービス提供システム１として発明を説明した。しかし、これに限定されず、サービス提供システム１で実行されるサービス提供方法として発明を捉えることができる。また、サービス提供システム１に含まれる通信サーバ３００または中継装置１００の装置として発明を捉えることができる。また、サービス提供システム１に含まれる通信サーバ３００または中継装置１００で図５から図７で説明した処理を実行する方法またはプログラムとして発明を捉えることができる。
【００８９】
また、当該プログラムを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。この記録媒体は、磁気テープ、フレキシブルディスク，ハードディスクなどの磁気ディスク、ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ−ＲＡＭ，ＤＶＤ＋Ｒ，ＤＶＤ＋ＲＷなどの光ディスク、ＭＯなどの光磁気ディスク、メモリカード、または、ＵＳＢメモリなどの固定的にプログラムを担持する媒体であってもよいし、ＡＳＰ（Application  Service  Provider）などのサーバから通信ネットワークを介してプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。
【００９０】
（７）  実施の形態および各変形例において説明された技術は、可能な限り、単独でも、組合わせても、実施することが意図される。
【００９１】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００９２】
１  サービス提供システム、１００  中継装置、１１０，２１０，３１０  制御部、１１１，３１１  第１判断部、１１２，３１２  第２判断部、１１３，３１３  データ量取得部、１１４  第３判断部、１１５  第４判断部、１１６  通信路確立部、１１７，３１４  中継部、１１８  第５判断部、１１９  通信路解放部、１２０，２２０，３２０  記憶部、１５０，３５０  外部記憶装置、１６０  第１通信部、１７０  第２通信部、１９０，３５１  記録媒体、２３０  操作部、２４０  表示部、２６０，３６０  通信部、２７０  スキャナ部、２８０  プリンタ部、３００  通信サーバ、４００  アプリケーションサーバ、５００  携帯端末、７００  パブリックネットワーク、８００，９００  プライベートネットワーク。
【図１】
2018037770.tif 000003
【図２】
2018037770.tif 000004
【図３】
2018037770.tif 000005
【図４】
2018037770.tif 000006
【図５】
2018037770.tif 000007
【図６】
2018037770.tif 000008
【図７】
2018037770.tif 000009