JP6311666B2 - 通信システム、管理サーバおよびプログラム - Google Patents

通信システム、管理サーバおよびプログラム Download PDF

Info

Publication number
JP6311666B2
JP6311666B2 JP2015132927A JP2015132927A JP6311666B2 JP 6311666 B2 JP6311666 B2 JP 6311666B2 JP 2015132927 A JP2015132927 A JP 2015132927A JP 2015132927 A JP2015132927 A JP 2015132927A JP 6311666 B2 JP6311666 B2 JP 6311666B2
Authority
JP
Japan
Prior art keywords
tunnel connection
communication
connection request
request
tunnel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015132927A
Other languages
English (en)
Other versions
JP2017016422A (ja
Inventor
高廣 河野
高廣 河野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2015132927A priority Critical patent/JP6311666B2/ja
Priority to US15/192,964 priority patent/US10158501B2/en
Priority to CN201610509551.XA priority patent/CN106330855B/zh
Publication of JP2017016422A publication Critical patent/JP2017016422A/ja
Application granted granted Critical
Publication of JP6311666B2 publication Critical patent/JP6311666B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Description

本発明は、ファイアウォールの外側のクラウドサーバとファイアウォールの内側のデバイスとの間の通信を行う通信システム、およびそれに関連する技術に関する。
LAN外部のサーバ(クラウドサーバ等)とLAN内部のデバイス(画像形成装置等)との連携を図る技術が存在する。
たとえば、クラウド上のサーバ(クラウドサーバ)に格納された電子文書をローカル側(LAN内部)の画像形成装置を用いて印刷出力する技術が存在する(特許文献1参照)。
特許文献1には、画像形成装置(デバイス)とゲートウエイとクラウドサーバとを備える文書出力システム(通信システム)が示されている。このシステムにおいては、クラウドサーバに格納された電子文書がゲートウエイ等を介して画像形成装置に送信され、画像形成装置10において当該電子文書の印刷出力が行われる。なお、ゲートウエイおよび画像形成装置(デバイス)はLANの内部に設けられており、クラウドサーバはLANの外部に設けられている。
ところで、上述のようなシステムにおいては、通常、LANの内部の画像形成装置(デバイス)とLANの外部のクラウドサーバとの間にはファイアウォールが設けられる。
LAN内部の画像形成装置からLAN外部のクラウドサーバへのアクセスは、ファイアウォールを通過し、当該アクセスは許可される。
しかしながら、逆向きのアクセス、すなわち、LAN外部のクラウドサーバからLAN内部の画像形成装置への直接的なアクセスは、ファイアウォールによってブロックされる。すなわち、クラウドサーバから直接、画像形成装置に対するアクセスを行うことはできない。
これに対して、LAN外部の管理サーバとLAN内部のゲートウエイ(通信中継装置)との間に(ファイアフォールの例外として)メッセージセッション(通信セッション)を確立しておき、LAN外部のクラウドサーバから、当該管理サーバおよび当該ゲートウエイを経由して、LAN内部の画像形成装置にアクセスする技術が考えられる。
図26および図27は、そのような技術を示す図である。ゲートウエイ30(30a)は、その起動時等において、予め指定された管理サーバ50との間にメッセージセッション511を確立しておく(図26の太線参照)。その後、クラウドサーバ70から(管理サーバ50を介した)特定のデバイス10aへのアクセス要求発生時においては、管理サーバ50と或るゲートウエイ30(30a)との間の当該メッセージセッション511を利用することにより管理サーバ50から当該ゲートウエイ30aにトンネル接続要求が送信される。当該トンネル接続要求は、トンネル接続(ゲートウエイ30とクラウドサーバ70との間でのトンネル接続)を確立すべき旨を当該ゲートウエイ30に要求する指令である。換言すれば、当該トンネル接続要求は、トンネル接続を用いた通信をゲートウエイ30に行わせる指令である。当該トンネル接続要求に基づき、ゲートウエイ30aはクラウドサーバ70との間にトンネル通信を確立する(図27参照)。そして、当該トンネル通信を用いてクラウドサーバ70から(ゲートウエイ30経由で)デバイス(画像形成装置)10aへのアクセスが行われる。このような技術については、後に詳述する。
なお、特許文献2には、同様の技術が示されている。
このような技術においては、管理サーバ50によってゲートウエイの管理が行われる。
特開2013−73578号公報 特開2014−215846号公報
上記特許文献2の技術とは逆向きのアクセス、すなわち、LAN外部のクラウドサーバからLAN内部の画像形成装置へのアクセスは、ファイアウォールを通過することを必ずしも要しない。ただし、セキュリティ上の問題(後述)等によって、LAN外部のクラウドサーバからLAN内部の画像形成装置へのアクセスにおいても、管理サーバ50を介した通信が行われることが好ましい。
さらに、仮に、管理サーバ50を介さずにファイアウォールの内部のデバイスからファイアウォールの外部のサーバへの通信が行われる場合には、複数の通信が無秩序に行われるなど、システム統制上の問題も存在する。
このような問題を解消するためには、ファイアウォールの外側のクラウドサーバとファイアウォールの内側のデバイスとの間の通信は、管理サーバ50を介して行われることが好ましい。
たとえば、管理サーバ50は、各クラウドサーバからの通信依頼および各デバイスからの通信依頼を受け付け、その受付順序に従って、各通信依頼に基づく処理(ゲートウエイに対するトンネル接続要求等)を行うことが考えられる。
しかしながら、各通信依頼に基づく処理が当該各通信依頼の受付順序のみに従って行われる場合には、各通信依頼に基づく処理が非効率的な実行順序で実行されることも多い。
そこで、この発明は、複数の通信依頼に基づく処理を効率的に実行することが可能な通信システムおよびそれに関連する技術を提供することを課題とする。
上記課題を解決すべく、請求項1の発明は、通信システムであって、ファイアウォールの内側に設けられる少なくとも1つのデバイスと、前記ファイアウォールの外側に設けられる少なくとも1つのクラウドサーバと、前記少なくとも1つのデバイスと前記少なくとも1つのクラウドサーバで実行される少なくとも1つのアプリケーションとの間の通信を中継する少なくとも1つのゲートウエイと、前記少なくとも1つのデバイスと前記少なくとも1つのアプリケーションとの間の通信であって前記少なくとも1つのゲートウエイを介した通信を管理する管理サーバと、を備え、前記管理サーバは、前記少なくとも1つのデバイスのいずれかからの通信依頼であって前記少なくとも1つのデバイス側から前記少なくとも1つのアプリケーション側へ向かう向きのデータ転送を伴う通信の依頼である第1の通信依頼と、前記少なくとも1つのアプリケーションのいずれかからの通信依頼であって前記少なくとも1つのアプリケーション側から前記少なくとも1つのデバイス側へ向かう向きのデータ転送を伴う通信の依頼である第2の通信依頼とを含む複数の通信依頼を受信する受信手段と、前記複数の通信依頼に基づく複数のトンネル接続要求の実行順序を制御するトンネル接続要求制御手段と、を有し、各トンネル接続要求は、前記少なくとも1つのゲートウエイのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのトンネル接続を用いた通信を行うべき旨を前記少なくとも1つのゲートウエイのいずれかに対して要求する指令であり、前記トンネル接続要求制御手段は、前記第1の通信依頼に基づくトンネル接続要求である第1のトンネル接続要求を、前記第2の通信依頼に基づくトンネル接続要求である第2のトンネル接続要求よりも優先して実行することを特徴とする。
請求項2の発明は、請求項1の発明に係る通信システムにおいて、前記トンネル接続要求制御手段は、利用ユーザによる指示に応じたユーザ指示処理の実行のための第3の通信依頼に基づくトンネル接続要求である第3のトンネル接続要求と、前記利用ユーザによる指示を前提としない管理処理の実行のための第4の通信依頼に基づくトンネル接続要求である第4のトンネル接続要求とのうち、前記第3のトンネル接続要求を前記第4のトンネル接続要求よりも優先して実行することを特徴とする。
請求項3の発明は、請求項2の発明に係る通信システムにおいて、前記トンネル接続要求制御手段は、(1)前記第1のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、(2)前記第1のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、(3)前記第2のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、(4)前記第2のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、を前記1)〜4)の順序で優先順位付けして実行することを特徴とする。
請求項4の発明は、請求項1ないし請求項3のいずれかの発明に係る通信システムにおいて、前記通信システムには複数のデバイスが設けられ、前記トンネル接続要求制御手段は、前記複数のデバイスのうち第1の閾値よりも大きな数のトンネル接続を未だ確立していない第1のデバイスに関するトンネル接続要求を、前記複数のデバイスのうち前記第1の閾値よりも大きな数のトンネル接続を既に確立している第2のデバイスに関するトンネル接続要求よりも、優先して実行することを特徴とする。
請求項5の発明は、請求項1ないし請求項4のいずれかの発明に係る通信システムにおいて、前記通信システムには複数のゲートウエイが設けられ、前記トンネル接続要求制御手段は、前記複数のゲートウエイのうち第2の閾値よりも大きな数のトンネル接続を未だ確立していない第1のゲートウエイに関するトンネル接続要求を、前記複数のゲートウエイのうち前記第2の閾値よりも大きな数のトンネル接続を既に確立している第2のゲートウエイに関するトンネル接続要求よりも、優先して実行することを特徴とする。
請求項6の発明は、請求項1ないし請求項5のいずれかの発明に係る通信システムにおいて、前記通信システムには複数のアプリケーションが設けられ、前記トンネル接続要求制御手段は、前記複数のアプリケーションのうち第3の閾値よりも大きな数のトンネル接続を未だ確立していない第1のアプリケーションに関するトンネル接続要求を、前記複数のアプリケーションのうち前記第3の閾値よりも大きな数のトンネル接続を既に確立している第2のアプリケーションに関するトンネル接続要求よりも、優先して実行することを特徴とする。
請求項7の発明は、請求項1ないし請求項6のいずれかの発明に係る通信システムにおいて、前記トンネル接続要求制御手段は、前記受信手段によって受信された前記複数の通信依頼に対応する複数のトンネル接続要求に対して各評価値をそれぞれ算出し、前記各評価値に基づいて前記複数のトンネル接続要求の優先順位を決定することを特徴とする。
請求項8の発明は、請求項2または請求項3の発明に係る通信システムにおいて、前記第3の通信依頼および前記第4の通信依頼は、それぞれ、前記少なくとも1つのデバイスのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのデータ通信を伴う通信の依頼であり、前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルに基づいて判定することを特徴とする。
請求項9の発明は、請求項8の発明に係る通信システムにおいて、前記トンネル接続要求制御手段は、前記各通信依頼と当該各通信依頼に応じた前記データ通信にて利用される通信プロトコルとの対応関係を示すデータテーブルに基づいて、前記各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルを判定することを特徴とする。
請求項10の発明は、請求項2または請求項3の発明に係る通信システムにおいて、前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、前記通信依頼の依頼元ユーザが利用ユーザであるか管理ユーザであるかに応じて判定することを特徴とする。
請求項11の発明は、ファイアウォールの内側に設けられる少なくとも1つのデバイスと前記ファイアウォールの外側に設けられる少なくとも1つのクラウドサーバで実行される少なくとも1つのアプリケーションとの間の通信であって少なくとも1つのゲートウエイによって中継される通信を管理する管理サーバであって、前記少なくとも1つのデバイスのいずれかからの通信依頼であって前記少なくとも1つのデバイス側から前記少なくとも1つのアプリケーション側へ向かう向きのデータ転送を伴う通信の依頼である第1の通信依頼と、前記少なくとも1つのアプリケーションのいずれかからの通信依頼であって前記少なくとも1つのアプリケーション側から前記少なくとも1つのデバイス側へ向かう向きのデータ転送を伴う通信の依頼である第2の通信依頼とを含む複数の通信依頼を受信する受信手段と、前記複数の通信依頼に基づく複数のトンネル接続要求の実行順序を制御するトンネル接続要求制御手段と、を備え、各トンネル接続要求は、前記少なくとも1つのゲートウエイのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのトンネル接続を用いた通信を行うべき旨を前記少なくとも1つのゲートウエイのいずれかに対して要求する指令であり、前記トンネル接続要求制御手段は、前記第1の通信依頼に基づくトンネル接続要求である第1のトンネル接続要求を、前記第2の通信依頼に基づくトンネル接続要求である第2のトンネル接続要求よりも優先して実行することを特徴とする。
請求項12の発明は、請求項11の発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、利用ユーザによる指示に応じたユーザ指示処理の実行のための第3の通信依頼に基づくトンネル接続要求である第3のトンネル接続要求と、前記利用ユーザによる指示を前提としない管理処理の実行のための第4の通信依頼に基づくトンネル接続要求である第4のトンネル接続要求とのうち、前記第3のトンネル接続要求を前記第4のトンネル接続要求よりも優先して実行することを特徴とする。
請求項13の発明は、請求項12の発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、(1)前記第1のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、(2)前記第1のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、(3)前記第2のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、(4)前記第2のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、を前記(1)〜(4)の順序で優先順位付けして実行することを特徴とする。
請求項14の発明は、請求項11ないし請求項13のいずれかの発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、前記ファイアウォールの内側に設けられる複数のデバイスのうち第1の閾値よりも大きな数のトンネル接続を未だ確立していない第1のデバイスに関するトンネル接続要求を、前記複数のデバイスのうち前記第1の閾値よりも大きな数のトンネル接続を既に確立している第2のデバイスに関するトンネル接続要求よりも、優先して実行することを特徴とする。
請求項15の発明は、請求項11ないし請求項14のいずれかの発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、前記少なくとも1つのデバイスと前記少なくとも1つのアプリケーションとの間の通信を中継する複数のゲートウエイのうち第2の閾値よりも大きな数のトンネル接続を未だ確立していない第1のゲートウエイに関するトンネル接続要求を、前記複数のゲートウエイのうち前記第2の閾値よりも大きな数のトンネル接続を既に確立している第2のゲートウエイに関するトンネル接続要求よりも、優先して実行することを特徴とする。
請求項16の発明は、請求項11ないし請求項15のいずれかの発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、前記ファイアウォールの外側に設けられる複数のアプリケーションのうち第3の閾値よりも大きな数のトンネル接続を未だ確立していない第1のアプリケーションに関するトンネル接続要求を、前記複数のアプリケーションのうち前記第3の閾値よりも大きな数のトンネル接続を既に確立している第2のアプリケーションに関するトンネル接続要求よりも、優先して実行することを特徴とする。
請求項17の発明は、請求項11ないし請求項16のいずれかの発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、前記受信手段によって受信された前記複数の通信依頼に対応する前記複数のトンネル接続要求に対して各評価値をそれぞれ算出し、前記各評価値に基づいて前記複数のトンネル接続要求の優先順位を決定することを特徴とする。
請求項18の発明は、請求項12または請求項13の発明に係る管理サーバにおいて、前記第3の通信依頼および前記第4の通信依頼は、それぞれ、前記少なくとも1つのデバイスのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのデータ通信を伴う通信の依頼であり、前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルに基づいて判定することを特徴とする。
請求項19の発明は、請求項18の発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、前記各通信依頼と前記各通信依頼に応じた前記データ通信にて利用される通信プロトコルとの対応関係を示すデータテーブルに基づいて、前記各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルを判定することを特徴とする。
請求項20の発明は、請求項12または請求項13の発明に係る管理サーバにおいて、前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、前記通信依頼の依頼元ユーザが利用ユーザであるか管理ユーザであるかに応じて判定することを特徴とする。
請求項21の発明は、ファイアウォールの内側に設けられる少なくとも1つのデバイスと前記ファイアウォールの外側に設けられる少なくとも1つのクラウドサーバで実行される少なくとも1つのアプリケーションとの間の通信であって少なくとも1つのゲートウエイによって中継される通信を管理する管理サーバに内蔵されたコンピュータに、a)前記少なくとも1つのデバイスのいずれかからの通信依頼であって前記少なくとも1つのデバイス側から前記少なくとも1つのアプリケーション側へ向かう向きのデータ転送を伴う通信の依頼である第1の通信依頼と、前記少なくとも1つのアプリケーションのいずれかからの通信依頼であって前記少なくとも1つのアプリケーション側から前記少なくとも1つのデバイス側へ向かう向きのデータ転送を伴う通信の依頼である第2の通信依頼とを含む複数の通信依頼を受信するステップと、b)前記複数の通信依頼に基づく複数のトンネル接続要求の実行順序を制御するステップと、を実行させるためのプログラムであって、各トンネル接続要求は、前記少なくとも1つのゲートウエイのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのトンネル接続を用いた通信を行うべき旨を前記少なくとも1つのゲートウエイのいずれかに対して要求する指令であり、前記ステップb)においては、前記第1の通信依頼に基づくトンネル接続要求である第1のトンネル接続要求が、前記第2の通信依頼に基づくトンネル接続要求である第2のトンネル接続要求よりも優先して実行されることを特徴とする。
請求項1ないし請求項21に記載の発明によれば、複数の通信依頼に基づくトンネル接続要求を効率的に実行することが可能である。
第1実施形態に係る通信システムの概略構成を示す図である。 図1の一部を示す図である。 MFPの構成を示す概略図である。 各装置の概略構成を示す図である。 アプリトリガ通信依頼に関する動作を示す図である。 デバイストリガ通信依頼に関する動作を示す図である。 トンネル接続要求の分類を示す図である。 分類に応じた付与ポイントを示す図である。 各トンネル接続要求に対する評価値(優先値)の付与例を示す図である。 管理サーバの動作を示すフローチャートである。 図10の一部動作の詳細を示すフローチャートである。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 第2実施形態におけるトンネル接続要求の分類を示す図である。 分類に応じた付与ポイントを示す図である。 各トンネル接続要求に対する評価値(優先値)の付与例を示す図である。 各トンネル接続要求に対する評価値(優先値)の付与例を示す図である。 管理サーバの一部の動作を示すフローチャートである。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 管理サーバの待ち行列内の様子を示す概念図である。 通信システムにおける動作を示す概念図である。 通信システムにおける動作を示す概念図である。
以下、本発明の実施形態を図面に基づいて説明する。
<1.第1実施形態>
<1−1.システム構成概要>
図1および図2は、本発明の実施形態に係る通信システム1の概略構成を示す図である。なお、図2は、図1の一部を示す図である。
図1等に示すように、通信システム1は、複数のデバイス10(10a,10b,10c,...)と、複数のゲートウエイ30(30a,30b)と、管理サーバコンピュータ(以下、単に管理サーバとも称する)50とを備える。通信システム1は、複数のクラウドサーバコンピュータ(以下、単にクラウドサーバとも称する)70と、複数のクライアントコンピュータ(以下、単にクライアントとも称する)90とをさらに備える。
各要素10,30,50,70,90は、ネットワーク108(図2参照)を介して互いに接続されており、ネットワーク通信を実行することが可能である。なお、ネットワーク108は、LAN(ローカルエリアネットワーク)107およびインターネットなどによって構成される。ネットワーク108への接続形態は、有線接続であってもよく或いは無線接続であってもよい。
各ゲートウエイ30および当該各ゲートウエイ30に対応する1または2以上のデバイス10が、企業内等に構築された各LAN107の内部(換言すれば、ファイアウォールの内側)に設けられている。各ゲートウエイ30には、同じLAN107内に設けられたデバイス10が接続されている。より詳細には、たとえば、図1に示すように、或る企業のLAN107a内に1台のゲートウエイ30aと3台のデバイス10(10a,10b,10c)が設けられ、別の企業のLAN107b内に1台のゲートウエイ30bと2台のデバイス10(10d,10e)が設けられる。なお、各LAN107内には、単一のゲートウエイ30が設けられてもよく、2以上のゲートウエイ30が設けられてもよい。
一方、管理サーバ50、クラウドサーバ70およびクライアント90は、LAN107の外部(換言すれば、ファイアウォールの外側)に設けられている。なお、クライアント90は、LAN107の内部に設けられていてもよい。
また、ここでは、デバイス10として、マルチ・ファンクション・ペリフェラル(Multi-Functional Peripheral)(MFPとも略称する)を例示する。MFPは、画像形成装置あるいは通信装置などとも称される。
一方、ゲートウエイ30、管理サーバ50、クラウドサーバ70およびクライアント90は、サーバ用コンピュータあるいはパーソナルコンピュータ等を用いて構築される。
この通信システム1においては、クラウドサーバ70(詳細には、クラウドサーバ70に実装されるアプリケーションソフトウエアプログラム(以下、単にアプリケーションとも称する)80)からの通信依頼に基づく処理が実行される。アプリケーション80からの当該通信依頼は、アプリケーション80から発せられるもの(アプリケーション側がトリガになるもの)であり、「アプリトリガ通信依頼」とも称される。「アプリトリガ通信依頼」においては、図1の上側(クラウドサーバ70側)から下側(デバイス10側)に向かう向き(「下向き」とも表現される)のデータ転送を伴う処理が行われる。たとえば、クライアント90からクラウドサーバ70へと送出された印刷指令が、管理サーバ50およびゲートウエイ30を経由してデバイス10へと送信され、デバイス(MFP)10において印刷出力が行われる。このような印刷出力は、クラウドサーバを経由した処理であることから、「クラウドプリント」などとも称される。「クラウドプリント」における通信依頼は、「アプリトリガ通信依頼」の一例である。
また、この通信システム1においては、逆に、デバイス10からの通信依頼(ゲートウエイ経由)に基づく処理も実行される。デバイス10からの当該通信依頼は、デバイス10から発せられるもの(デバイス側がトリガになるもの)であり、「デバイストリガ通信依頼」とも称される。「デバイストリガ通信依頼」においては、上述の「下向き」の処理とは逆向きの処理、すなわち図1の下側(デバイス10側)から上側(クラウドサーバ70側)に向かう向き(「上向き」とも表現される)のデータ転送を伴う処理が行われる。たとえば、デバイス10で生成されたスキャン画像が、管理サーバ50の管理下において、デバイス10からゲートウエイ30を経由してクラウドサーバ70へと送信され、クラウドサーバ70において格納される。このようなスキャン処理は、クラウドサーバへの格納処理を伴うことから、「クラウドスキャン」などとも称される。「クラウドスキャン」における通信依頼は、「デバイストリガ通信依頼」の一例である。
各クラウドサーバ70には、それぞれ、1または複数のアプリケーション80がインストールされている。各アプリケーション80は、サース(SaaS:Software as a Service)形式で提供される。換言すれば、各アプリケーション80の機能は、サービスとして提供される。たとえば、クラウドプリント用のアプリケーション80aがクラウドサーバ70aにインストールされ、クラウドプリントサービスがアプリケーション80aおよびデバイス10等を用いて提供される。また、クラウドスキャン用のアプリケーション80bがクラウドサーバ70bにインストールされ、クラウドスキャンサービスがアプリケーション80bおよびデバイス10等を用いて提供される。
また、各ゲートウエイ30は、当該各ゲートウエイ30に対応するデバイス10と複数のクラウドサーバ70(詳細には、アプリケーション80)との通信を中継する機能を有している。各ゲートウエイ30は、通信中継装置とも称される。
管理サーバ50は、複数のデバイス10と複数のクラウドサーバ70(詳細には、アプリケーション80)との間の通信、特に各ゲートウエイ30を介した通信(トンネル接続通信)等を管理する装置である。
管理サーバ50は、複数のデバイス10のうちの特定のデバイス10に対するアクセス要求(通信依頼)をクラウドサーバ70から受け付けるとともに、当該アクセス要求に応じて、複数のゲートウエイ30のうち特定のデバイス10に対応するゲートウエイ30に対して、クラウドサーバ70とのトンネル接続要求を送信する。また、管理サーバ50は、複数のクラウドサーバ70のうちの特定のクラウドサーバ70(アプリケーション80)に対するアクセス要求(通信依頼)をデバイス10から受け付けるとともに、当該アクセス要求に応じて、複数のゲートウエイ30のうちの或るゲートウエイ30に対して、クラウドサーバ70とのトンネル接続要求を送信する。
ここで、各トンネル接続要求は、複数のゲートウエイ30のいずれかと複数のクラウドサーバ70(複数のアプリケーション80)のいずれかとの間でのトンネル接続を用いた通信を行うべき旨を、複数の1つのゲートウエイ30のいずれかに対して要求する指令である。
また、後に詳述するように、管理サーバ50は、デバイス10あるいはクラウドサーバ70(アプリケーション80)からの複数の通信依頼を受け付け(受信し)、当該複数の通信依頼に基づく複数のトンネル接続要求の処理順序を制御する。
管理サーバ50は、各通信依頼を受け付けると、当該各通信依頼に対応する各トンネル接続要求を待ち行列に投入する。ただし、各トンネル接続要求が待ち行列に投入される際には、各トンネル接続要求の優先度合いを示す指標値(優先値)Vが各トンネル接続要求に割り当てられる。そして、各トンネル接続要求は、当該待ち行列内において、当該各トンネル接続要求の指標値Vに従った位置(順序(ひいては待ち時間の大小)が互いに相違する位置)に配置される。待ち行列内にて指標値Vに応じた位置に配置され格納された各トンネル接続要求は、自らの実行順序の到来を待機する。そして、自らの実行順序が到来したトンネル接続要求が実行される。このように、管理サーバ50は、複数のトンネル接続要求を、その優先度合いに応じた順序で実行する。なお、優先処理の詳細等については後述する。
<1−2.MFPの構成概要>
上述のように、この実施形態では、デバイス10として、マルチ・ファンクション・ペリフェラル(Multi-Functional Peripheral)(MFPとも略称する)を例示する。
図3は、MFPの構成を示す概略図である。MFPは、スキャナ機能、プリンタ機能、コピー機能およびデータ通信機能などを備える装置(複合機とも称する)である。
MFPは、印刷出力処理(プリント処理)および画像読取処理(スキャン処理)等を行うことが可能な画像形成装置である。
図3に示すように、MFPは、画像読取部2、印刷出力部3、通信部4、格納部5、入出力部6およびコントローラ9等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
画像読取部2は、MFPの所定の位置に載置された原稿を光学的に読み取って、当該原稿の画像データ(原稿画像とも称する)を生成する処理部である。
印刷出力部3は、対象画像に関する画像データに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。
通信部4は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。さらに、通信部4は、ネットワーク108を介したネットワーク通信が可能である。このネットワーク通信では、UDP(User Datagram Protocol)、TCP(Transmission Control Protocol)、IP(Internet Protocol)、SNMP(Simple Network Management Protocol)およびFTP(File Transfer Protocol)等の各種の通信プロトコルが利用され、当該ネットワーク通信を利用することによって、MFPは、所望の相手先(ゲートウエイ30、管理サーバ50およびクラウドサーバ70等)との間で各種のデータを授受することが可能である。
たとえば、MFPの通信部4は、ゲートウエイ30とクラウドサーバ70との間に確立されたトンネル接続(後述)を利用して、当該ゲートウエイ30を経由してクラウドサーバ70と通信すること(クラウドサーバ70へデータを送信すること、および/またはクラウドサーバ70からのデータを受信すること)が可能である。なお、通信部4は、他の装置に対してデータ等を送信する送信部と、他の装置からデータ等を受信する受信部とを有する。
格納部5は、ハードディスクドライブ(HDD)および不揮発性メモリ等の格納装置で構成される。
入出力部6は、MFPに対する入力を受け付ける操作入力部6aと、各種情報の表示出力を行う表示部6bとを備えている。なお、入出力部6は、操作部とも称される。
コントローラ9は、MFPを統括的に制御する制御部であり、CPUと、各種の半導体メモリ(RAMおよびROM等)とを備えて構成される。
コントローラ9は、CPUにおいて、ROM(例えば、EEPROM等)内に格納されている所定のソフトウエアプログラム(単にプログラムとも称する)を実行することによって、各種の処理部(画像形成動作等を制御する動作制御部16等)を実現する。なお、当該プログラムは、たとえば各種の可搬性の記録媒体(USBメモリ等)に記録され、当該記録媒体を介してMFPにインストールされればよい。あるいは当該プログラムは、ネットワーク等を介してダウンロードされてMFPにインストールされるようにしてもよい。
<1−3.各要素の構成概要>
図4は、各要素30,50,70等の概略構成を示す図である。図4を参照して、これらの各要素について説明する。なお、この実施形態では、ゲートウエイ30、管理サーバ50、クラウドサーバ70およびクライアント90は、サーバ用コンピュータあるいはパーソナルコンピュータ等を用いて構築される。
<クラウドサーバ70>
クラウドサーバ70は、通信制御部81を備える。通信制御部81は、管理サーバ50との通信を実行する。また、通信制御部81は、各ゲートウエイ30との通信をトンネル通信(後述)を用いて実行する。
また、上述のように、各クラウドサーバ70には、それぞれ、1または複数のアプリケーション80がインストールされている。各アプリケーション80は、通信制御部81等を介して、他の装置50,30,10(詳細にはそれぞれのアプリケーション)等と通信する。
<ゲートウエイ30>
ゲートウエイ30は、その配下に存在するデバイス10と複数のクラウドサーバ70(アプリケーション80)との通信を中継する。
各ゲートウエイ30は、それぞれ、通信制御部41などの各種の処理部を備える。当該各種の処理部は、ゲートウエイ30(MFP)のコントローラ9において、所定のプログラムを実行することによって実現される。
通信制御部41は、他の装置との通信を制御する処理部である。通信制御部41は、メッセージセッション通信制御部42とトンネル通信制御部43とLAN内通信制御部44とを有する。
LAN内通信制御部44は、LAN内の各種装置との通信を実行する処理部である。
一方、メッセージセッション通信制御部42とトンネル通信制御部43とは、それぞれ、LAN外の各種装置との通信を実行する処理部である。
メッセージセッション通信制御部42は、管理サーバ50との通信をメッセージセッションを用いて実行する処理部である。メッセージセッション通信制御部42は、管理サーバ50との間にメッセージセッション(たとえば、XMPP(eXtensible Messaging and Presence Protocol)等を利用するメッセージセッション)を確立して、管理サーバ50との通信を実行する。メッセージセッション通信制御部42は、対管理サーバ通信部(あるいは管理サーバ通信部)とも称される。
トンネル通信制御部43は、クラウドサーバ70との通信をトンネル通信を用いて実行する処理部である。トンネル通信制御部43は、クラウドサーバ70との間にトンネル接続(たとえば、HTTPS(Hypertext Transfer Protocol Secure)等を利用する通信セッション)を確立して、クラウドサーバ70と特定のデバイス10との通信を中継する。トンネル通信制御部43は、対クラウドサーバ通信部(あるいはクラウドサーバ通信部)とも称される。
後述するように、トンネル接続等を利用することによって、LAN107の外部の装置(クラウドサーバ70)からLAN107の内部の装置(ゲートウエイ30およびデバイス10)に対してデータを送信すること(およびその逆向きのデータ送信)が可能である。
<管理サーバ50>
管理サーバ50は、デバイス10、ゲートウエイ30およびクラウドサーバ70(アプリケーション80を含む)を管理するサーバである。
管理サーバ50は、通信制御部61、情報管理部65およびアクセス制御部67などの各種の処理部を備える。
これら各種の処理部は、管理サーバ50のCPUにおいて、格納部(HDD等)に格納されている所定のソフトウエアプログラム(単にプログラムとも称する)を実行することによって実現される。なお、当該プログラムは、たとえば各種の可搬性の記録媒体(DVD−ROM等)に記録され、当該記録媒体を介して管理サーバ50にインストールされればよい。あるいは当該プログラムは、ネットワーク108等を介してダウンロードされて管理サーバ50にインストールされるようにしてもよい。
通信制御部61は、通信部54(通信用ハードウエア)と協働して、各種の通信動作を制御する。たとえば、通信制御部61は、クラウドサーバ70との通信を実行し、クラウドサーバ70からのアクセス要求を受信する。また、通信制御部61は、各ゲートウエイ30との通信をメッセージセッション等を用いて実行する。なお、通信部54は、他の装置に対してデータ等を送信する送信部と、他の装置からデータ等を受信する受信部とを有する。当該受信部は、複数の通信依頼(後述)を受信し、当該送信部は、当該複数の通信依頼に基づくトンネル接続要求をゲートウエイ30に送信する。
情報管理部65は、管理サーバ50による管理対象の複数のゲートウエイ30の情報(管理ゲートウエイ情報)、および当該複数のゲートウエイ30からそれぞれ受信した管理デバイス情報(各ゲートウエイ30による管理対象のデバイス10の情報)等を管理する処理部である。これらの情報(管理ゲートウエイ情報および管理デバイス情報)は、管理サーバ50の格納部(HDD(ハードディスクドライブ)等)55内に格納された管理テーブル69に記述されている。管理テーブル69においては、管理ゲートウエイ情報(各ゲートウエイ30の識別情報(たとえばIPアドレス)等)、および各ゲートウエイ30と各ゲートウエイ30の配下のデバイス(管理対象デバイス)との関係を示す管理デバイス情報等が記述されている。
また、情報管理部65は、複数のクラウドサーバ70の情報、および複数のクラウドサーバ70内の各アプリケーション80の情報等をも管理する。これらの情報も、管理テーブル69に格納される。また、情報管理部65は、各ゲートウエイ30と各クラウドサーバ70との間に確立されているトンネル接続の接続数等をも管理テーブル69等にて管理する。
アクセス制御部67は、クラウドサーバ70から受信したアクセス要求(通信依頼)の内容、およびデバイス10からゲートウエイ30を経由して受信したアクセス要求(通信依頼)の内容を解析する。具体的には、当該通信依頼の依頼元(デバイス10/アプリケーション80(クラウドサーバ70))、および依頼処理種類(ユーザ指示処理/管理処理)(後述)等が解析結果として得られる。また、各アクセス制御部67は、これらの解析結果に基づいて、複数の通信依頼の各優先度合いに基づき、当該複数の通信依頼および当該複数の通信依頼に関する複数のトンネル接続要求の実行順序を制御する。なお、アクセス制御部67は、トンネル接続要求を制御する処理部であることから、トンネル接続要求制御部などとも表現される。
通信制御部61および通信部54等は、ゲートウエイ30(通信中継装置)に対して、「トンネル接続要求」(当該ゲートウエイ30と指定したクラウドサーバ70との間でトンネル接続を確立すべき旨の要求)を送信する。
なお、管理サーバ50のアクセス制御部67から当該トンネル接続要求を受信したゲートウエイ30(通信中継装置)は、当該トンネル接続要求に応じてトンネル接続をクラウドサーバ70との間に確立する。そして、当該ゲートウエイ30は、当該トンネル接続を利用して、クラウドサーバ70と接続先デバイス10との間の通信を中継する。
<1−4.通信依頼に基づく動作>
この通信システム1においては、デバイス10とクラウドサーバ70(アプリケーション80)との間でのファイアウォールを越える通信が、ゲートウエイ30と管理サーバ50とを利用して行われる。具体的には、次の2種類の動作、すなわち「アプリトリガ通信依頼」に関する動作および「デバイストリガ通信依頼」に関する動作(後述)が実行される。
以下では、まず「アプリトリガ通信依頼」に関する動作について説明する。
<アプリトリガ通信依頼に関する動作(「下向き」の動作)>
この実施形態においても、図26および図27に示すような上述の動作(「アプリトリガ通信依頼」に関する動作)が行われる。具体的には、LAN外部の管理サーバ50とLAN内部のゲートウエイ30(30a)との間に(ファイアフォールの例外としての)メッセージセッション511(図26参照)を確立しておき、さらに当該メッセージセッション511を利用して管理サーバ50からゲートウエイ30へトンネル接続要求(デバイス10a向けのアクセス要求)が送信される。また、当該トンネル接続要求に応じて、ゲートウエイ30とクラウドサーバ70との間にトンネル接続が形成される(図27参照)。そして、当該トンネル接続を利用して、LAN外部のクラウドサーバ70から、ゲートウエイ30を経由して、LAN内部のデバイス10にアクセスすることが行われ得る。たとえば、クラウドサーバ70aを利用した「クラウドプリント」がデバイス10a(画像形成装置)にて行われ得る。
以下では、まず、このような動作について主に図5を参照しながら説明する。なお、図5は、「アプリトリガ通信依頼」に関する動作を示す図である。
上述(図26参照)のように、まず、ゲートウエイ30aは、その起動時等において、予め指定された管理サーバ50との間に通信セッション(詳細には、メッセージセッション)511を予め確立しておく。具体的には、ゲートウエイ30aは、予め指定された管理サーバ50に対してメッセージセッションの確立要求を送信する。これに応じて、管理サーバ50が当該確立要求を承認することによって、ゲートウエイ30aと管理サーバ50との間にメッセージセッション511が確立される(図26参照)。換言すれば、LAN107の内部のゲートウエイ30からLAN107の外部の管理サーバ50へのアクセスに応じて、メッセージセッションが確立される。なお、このようなメッセージセッション(通信セッション)としては、たとえば、「XMPP:eXtensible Messaging and Presence Protocol」)などの通信プロトコルを用いたものが例示される。
また、ゲートウエイ30aは、ゲートウエイ30aの管理下のデバイス(管理対象デバイス)の情報等を管理サーバ50へ送信しておく。また、管理サーバ50は、各ゲートウエイ30による管理対象デバイス10の情報(各デバイスリストに記述された情報)を含む登録情報を、管理サーバ50の格納部55内の管理テーブル69(図4)に格納する。
その後、「クラウドプリント」に関するユーザ操作がクライアント90にて行われ、クラウドサーバ70a(アプリケーション80a)がユーザ操作に基づく指示をクライアント90から受け付ける(S11(図5))。当該指示に応答して、クラウドサーバ70a(アプリケーション80a)は、特定のデバイス10a向けの通信依頼(アクセス要求)を管理サーバ50に送信する(S12)。
管理サーバ50は、クラウドサーバ70(アプリケーション80)からの通信依頼(「アプリトリガ通信依頼」)を受信すると、デバイス10に対するアクセス権限を依頼元のクラウドサーバ70(アプリケーション80)が有している旨を確認する。たとえば、管理サーバ50は、予め生成され格納部55に格納されたアクセス権限情報(デバイス10aに対するアクセス権限を有するアプリケーション80がリストアップされた情報)等に基づいて、当該アクセス権限の有無を判定する。
依頼元アプリケーション80が当該アクセス権限を有している旨が判定されると、その後、管理サーバ50は、当該アプリトリガ通信依頼に基づくトンネル接続要求を、トンネル接続要求に関する待ち行列に投入する。
その後、待ち行列内で待機していたトンネル接続要求の実行順序が到来すると、管理サーバ50は、当該トンネル接続要求をゲートウエイ30に向けて送信する(S13(図5))。詳細には、管理サーバ50は、管理サーバ50とゲートウエイ30(30a)との間の当該メッセージセッション(常時接続通信セッション)511を利用することにより、アクセス要求に基づくトンネル接続要求を当該ゲートウエイ30aに送信する。「トンネル接続要求」は、クラウドサーバ70(アプリケーション80)との間にトンネル接続を確立すべき旨をゲートウエイ30に要求する指令である。換言すれば、当該トンネル接続要求は、トンネル接続を用いた通信をゲートウエイ30に行わせる指令である。
当該トンネル接続要求を受信したゲートウエイ30aは、当該トンネル接続要求に応答して、トンネル接続(トンネル通信)をクラウドサーバ70a(アプリケーション80a)との間に形成する(S14(図5))(図27も参照)。なお、図27においては、砂地ハッチング付きの細長い矩形によって「トンネル通信」が模式的に示されている。
詳細には、ゲートウエイ30aは、当該トンネル接続要求に応答して、HTTP(Hypertext Transfer Protocol)セッション(より詳細には、HTTPS(Hypertext Transfer Protocol Secure)セッション)の確立要求をクラウドサーバ70aに対して送信する。このようなHTTP(HTTPS)セッションの確立要求は、(ゲートウエイ30による)トンネル接続の確立要求とも称される。なお、ゲートウエイ30による「トンネル接続の確立要求」と管理サーバ50による「トンネル接続要求」とは互いに異なるものである。ゲートウエイ30による「トンネル接続の確立要求」は、管理サーバ50による「トンネル接続要求」に応答して、ゲートウエイ30からクラウドサーバ70に向けて実際のトンネル接続確立のために発せられる要求(指令)である。
そして、ゲートウエイ30による「トンネル接続の確立要求」をクラウドサーバ70aが承認することによって、当該ゲートウエイ30aとクラウドサーバ70aとの間に当該HTTPセッションによるトンネル接続(トンネル通信)が確立される。換言すれば、LAN107の内部のゲートウエイ30からLAN107の外部のクラウドサーバ70へのアクセスに応じて、トンネル接続が確立される。
トンネル接続が確立されると、ゲートウエイ30aは、当該トンネル接続を用いてクラウドサーバ70aとデバイス10aとの間の通信(主に「下向き」のデータ通信)を中継する(S15,S16)。より詳細には、HTTP(HTTPS)セッションによるトンネル通信を用いることによって、クラウドサーバ70は、ゲートウエイ30を経由してデバイス10(たとえば10d)へと各種のデータを送信することが可能である。
このようにして、クラウドサーバ70から(ゲートウエイ30経由での)デバイス(画像形成装置)10へのアクセスがトンネル通信を用いて行われる。
以上のように、管理サーバ50は、アプリケーション80(80a)からの通信依頼であってアプリケーション80(80a)から(ゲートウエイ30を介して)デバイス10(10a)へ向かう向き(「下向き」)のデータ転送を伴う通信の依頼(「アプリトリガ通信依頼」とも称する)を受信する。そして、管理サーバ50は、当該アプリトリガ通信依頼に基づくトンネル接続要求をその待ち行列に投入し、待ち行列内で待機していたトンネル接続要求の実行順序が到来すると、当該トンネル接続要求をゲートウエイ30に向けて送信する。その後、ゲートウエイ30は、当該トンネル接続要求に応じて、トンネル接続をクラウドサーバ70a(アプリケーション80a)との間に形成し、当該トンネル接続を用いてクラウドサーバ70aとデバイス10aとの間の通信(主に「下向き」のデータ通信)を中継する。
<デバイストリガ通信依頼に関する動作(「上向き」の動作)>
この通信システム1においては、上述の「アプリトリガ通信依頼」に基づく動作(「下向き」の動作)とは謂わば「逆向き」の動作(「デバイストリガ通信依頼」(後述)に関する動作)も行われる。以下、図6を参照しながら当該動作について説明する。なお、デバイストリガ通信依頼を伴う処理として、ここでは「クラウドスキャン」を例示する。
具体的には、まず、上記と同様に、ゲートウエイ30aは、その起動時等において、予め指定された管理サーバ50との間に通信セッション(メッセージセッション)511を予め確立しておく。
その後、たとえば「クラウドスキャン」に関するユーザ操作がデバイス10(たとえば10a)にて行われ、デバイス10は、クラウドサーバ70(たとえば70b)で動作中のアプリケーション80(たとえば80b)に対する通信依頼を、ゲートウエイ30を介して、管理サーバ50に送信する(S21,S22)。当該通信依頼は、デバイス10からの通信依頼(ゲートウエイ経由)であってデバイス10から(ゲートウエイ30を介して)アプリケーション80へ向かう向き(「上向き」)のデータ転送を伴う通信の依頼である。当該通信依頼は、デバイス10から発せられるもの(デバイス側がトリガになるもの)であり、「デバイストリガ通信依頼」とも称される。
管理サーバ50は、ゲートウエイ30を経由した通信依頼(「デバイストリガ通信依頼」)を受信すると、クラウドサーバ70(アプリケーション80)に対するアクセス権限を依頼元のデバイス10(10a)が有している旨を確認する。たとえば、管理サーバ50は、依頼元デバイス10のアクセス権限の有無を通信先のアプリケーション80bに問い合わせ(S23)、その問い合わせ結果に基づいて当該アクセス権限の有無を判定するようにすればよい。あるいは、管理サーバ50は、アプリケーション80bから予め受信しておいたアクセス権限情報(アプリケーション80bに対するアクセス権限を有するデバイス10がリストアップされた情報)に基づいて、(この時点ではアプリケーション80bと通信せずに)、当該アクセス権限の有無を判定するようにしてもよい。
依頼元デバイス10が当該アクセス権限を有している旨が判定(確認)されると、その後、上記と同様の動作が行われる。
具体的には、管理サーバ50は、当該デバイストリガ通信依頼に基づくトンネル接続要求を、当該トンネル接続要求に関する待ち行列に投入する。なお、デバイストリガ通信依頼に基づくトンネル接続要求とアプリトリガ通信依頼に基づくトンネル接続要求とは、同じ待ち行列に投入される。
その後、待ち行列内で待機していたトンネル接続要求の実行順序が到来すると、管理サーバ50は、当該トンネル接続要求をゲートウエイ30に向けて送信する(S24)。ゲートウエイ30は、当該トンネル接続要求に応じて、トンネル接続をクラウドサーバ70b(アプリケーション80b)との間に形成(確立)する(S25)。そして、ゲートウエイ30は、当該トンネル接続を用いてデバイス10aとクラウドサーバ70bとの間の通信(主に「上向き」のデータ通信(スキャン画像のアップロード処理等))を中継する(S26)。
このようにして、デバイストリガ通信依頼を伴う処理が実行される。
なお、このようなデバイストリガ通信依頼においては、セキュリティ向上のため、次のような処理が行われることが好ましい。具体的には、管理サーバ50は、デバイストリガ通信依頼の依頼元デバイス10がアクセス権限を有している旨を確認した後、管理サーバ50は、クラウドサーバ70からワンタイムパスワードを受領する(S23)。そして、管理サーバ50は、当該ワンタイムパスワードを利用してクラウドサーバ70にアクセスしてトンネル接続を形成する(S25)。このような処理によれば、クラウドサーバ70等のセキュリティを向上させることが可能である。
<1−5.複数のトンネル接続要求に関する制御動作の概要>
上述のように、各種の通信依頼が、アプリケーション80から管理サーバ50へ(ステップS12参照)、あるいは、デバイス10から(ゲートウエイ30を経由して)管理サーバ50へと(ステップS21,S22参照)随時送信される。詳細には、「アプリトリガ通信依頼」がアプリケーション80から管理サーバ50へと随時送信され、「デバイストリガ通信依頼」がデバイス10から(ゲートウエイ30を経由して)管理サーバ50へと随時送信される。
ところで、これらの複数の通信依頼を処理する手法としては、管理サーバ50において当該複数の通信依頼(および当該複数の通信依頼に基づく複数のトンネル接続要求)をその受付順(受信順)に従って順次に処理していくことが考えられる。より詳細には、管理サーバ50は、当該複数の通信依頼(および当該複数のトンネル接続要求等)を受付順に従って順次に待ち行列に投入し、待ち行列内で待機している当該複数の通信依頼(および当該複数のトンネル接続要求等)を当該受付順に従って処理すればよい。
しかしながら、各通信依頼および当該各通信依頼に基づくトンネル接続要求が当該各通信依頼の受付順序のみに従って行われることは、必ずしも効率的ではない。
たとえば、管理サーバ50が複数の「クラウドプリント」を受け付け且つその後に「クラウドスキャン」を受け付けた場合を想定する。「クラウドスキャン」は、LAN内のデバイス(MFP)10を利用した処理であり、クラウドスキャンの利用ユーザは、当該デバイス10の近くに存在し、素早いレスポンスを期待している。一方、「クラウドプリント」は、主にLANの外(外出先等)に居る利用ユーザから依頼され且つLAN内のデバイス10で印刷出力される処理である。クラウドプリントの利用ユーザは、当該デバイス10に近くに居らず、素早いレスポンスを求めていない(外出から戻ったときに印刷出力されていれば十分である等)ことが多い。
このような状況において、複数のクラウドプリントに関するトンネル接続要求等が優先されると、当該クラウドスキャンに関するトンネル接続要求は、当該複数のクラウドプリントに関するトンネル接続要求が行われるまで実行されない。その結果、クラウドスキャンの利用ユーザは、素早いレスポンスを求めているにもかかわらず、比較的長い期間に亘って待機することを余儀なくされる。
各通信依頼に基づくトンネル接続要求が当該各通信依頼の受付順序のみに従って行われる場合には、このような問題等が生じる。
そこで、この実施形態においては、管理サーバ50は、図7〜図11等に示すように、種々の要素を考慮して実行順序を決定する動作等を実行する。この結果、たとえば、「クラウドスキャン」に関するトンネル接続要求が、「クラウドプリント」に関するトンネル接続要求よりも優先して実行される(図9等参照)。なお、図7は、トンネル接続要求の分類(後述)を示す図であり、図8は当該分類に応じた付与ポイントを示す図であり、図9は、各トンネル接続要求に対する評価値の付与例を示す図である。また、図10および図11は、本実施形態に係る管理サーバ50の動作を示すフローチャートである。
まず、図10を参照して、管理サーバ50の動作の概要について説明する。
図10に示すように、ステップS51にて管理サーバ50が当該各通信依頼を受信すると、管理サーバ50は、ステップS52にて、各通信依頼(および当該各通信依頼に基づく各トンネル接続要求)に対してそれぞれ優先度合いを決定する。詳細には、管理サーバ50は、複数の通信依頼(および複数のトンネル接続要求)に対する各評価値(優先度合いに関する評価値(指標値V))をそれぞれ算出し、当該各評価値に基づいて当該複数のトンネル接続要求の優先順位を決定する。
このような優先度合いが決定された上で、各通信依頼(および当該各トンネル接続要求)が待ち行列に投入される(ステップS53)。
その後、管理サーバ50は、その実行順序が到来したトンネル接続要求を順次に実行する。換言すれば、管理サーバ50は、複数のトンネル接続要求を、その優先度合いに応じた順序で実行する。これによれば、各通信依頼および当該各通信依頼に基づくトンネル接続要求を効率的に実行することが可能である。
<1−6.トンネル接続要求の優先順位決定動作>
次に、優先順位決定処理(ステップS52)の詳細について説明する。ただし、図11(ステップS52の詳細フローチャート)を参照する前に、優先順位決定処理の概略について図7〜図9を参照しながら説明する。
<依頼処理の分類1:デバイストリガ/アプリトリガ>
この実施形態においては、複数の通信依頼(アクセス要求)が、その依頼元(「デバイス」/「アプリケーション」)に応じて分類される(デバイストリガ通信依頼/アプリトリガ通信依頼)。換言すれば、複数の通信依頼に基づく複数のトンネル接続要求が、「デバイストリガ通信依頼」に基づくトンネル接続要求と「アプリトリガ通信依頼」に基づくトンネル接続要求とに分類される。
<依頼処理の分類2:ユーザ指示処理(非理処理)/管理処理>
また、複数の通信依頼(アクセス要求)は、その処理種類(「ユーザ指示処理」/「管理処理」)に応じても分類される。換言すれば、複数の通信依頼に基づく複数のトンネル接続要求は、「ユーザ指示処理」のための通信依頼に基づくトンネル接続要求と「管理処理」のための通信依頼に基づくトンネル接続要求とにも分類される。
ここにおいて、「ユーザ指示処理の実行のための通信依頼」は、明示のユーザ指示(利用ユーザ(一般ユーザないし非管理ユーザとも称される)からの手動指示)に基づく処理(ユーザ指示処理)を実行するための通信依頼である。
一方、「管理処理の実行のための通信依頼」は、管理処理(利用ユーザによる明示の指示(手動指示)に基づくのではなく装置により自動的に開始される管理用の処理)を実行するための通信依頼である。なお、「ユーザ指示処理」は、利用ユーザによる指示を前提とする処理であるのに対して、「管理処理」は、利用ユーザによる指示を前提としない処理である、とも表現される。このように、「ユーザ指示処理」と「管理処理」とは概念的に対峙するものであり、「ユーザ指示処理」は、「非管理処理」であるとも表現される。また、「管理処理」は、ユーザ指示処理とは異なり、利用ユーザからは見えない状態で(バックグラウンドで)実行される処理であることから、「バックグラウンド処理」とも称される。
たとえば、上述の「クラウドスキャン」は、デバイス10のユーザによる明示のスキャン指示に基づくスキャン処理(スキャンジョブ)である。当該クラウドスキャンを実行するための通信依頼は、「ユーザ指示処理の実行のための通信依頼」であるとも表現される。同様に、上述の「クラウドプリント」は、アプリケーション80のユーザによる明示のプリント指示に基づくプリント処理(プリントジョブ)である。クラウドプリントを実行するための通信依頼も、「ユーザ指示処理の実行のための通信依頼」であるとも表現される。
一方、「結果通知」は、デバイス10による処理の処理結果をアプリケーション80に自動的に通知する処理(処理結果自動通知処理)である。当該結果通知を実行するための通信依頼は、「管理処理の実行のための通信依頼」であるとも表現される。同様に、「装置情報取得」は、アプリケーション80による情報取得処理(MFP10および/またはゲートウエイ30の情報をアプリケーション80が自動的に取得する処理)である。当該「装置情報取得」を実行するための依頼処理も、「管理処理の実行のための通信依頼」であるとも表現される。
なお、「結果通知」処理は、その依頼元がデバイス10であることから、「デバイストリガ通信依頼」処理にも分類される。また、「装置情報取得」処理は、その依頼元がアプリケーション80であることから、「アプリトリガ通信依頼」処理にも分類される。
<依頼処理の複合的分類>
複数の通信依頼(アクセス要求)は、上述の2つの分類基準、すなわち、(1)「デバイストリガ通信依頼」であるか否かに関する基準、(2)「ユーザ指示処理(非管理処理)」であるか否かに関する基準、を用いて大きく4つに分類される。同様に、複数の通信依頼に基づく複数のトンネル接続要求も、当該2つの分類基準を用いて大きく4つに分類される。以下では、複数のトンネル接続要求の分類について主に説明するが、複数の通信依頼も同様に分類される。
図7は、このような分類を示す図である。図7においては、複数の通信依頼に基づく複数のトンネル接続要求が複数の種類に分類されている。当該複数の種類は、次の4つ、すなわち、
・C11:「デバイストリガ通信依頼」且つ「ユーザ指示処理のための通信依頼」に基づくトンネル接続要求と、
・C12:「デバイストリガ通信依頼」且つ「管理処理のための通信依頼」に基づくトンネル接続要求と、
・C21:「アプリトリガ通信依頼」且つ「ユーザ指示処理のための通信依頼」に基づくトンネル接続要求と、
・C22:「アプリトリガ通信依頼」且つ「管理処理のための通信依頼」に基づくトンネル接続要求と、
を含む。
管理サーバ50は、各通信依頼を受信すると、当該各通信依頼に含まれるデータ等に基づき当該各通信依頼の処理内容を解析し、当該各通信依頼に対応する処理の種類等を知得する。たとえば、管理サーバ50は、処理種類を示す番号(「クラウドスキャン」=「001」、「クラウドプリント」=「002」、「装置状態取得」=「003」、「結果通知」=「004」等)を当該データから知得する。また、管理サーバ50は、当該データから知得した処理種類と管理サーバ50内のデータテーブル(各処理種類と上述の4つの分類C11,C12,C21,C22)との対応関係を示すデータテーブル)とに基づいて、各処理種類のトンネル接続要求が4つの分類のいずれに該当するかを決定する。換言すれば、当該処理種類と当該データテーブルとに基づいて、各トンネル接続要求が、「デバイストリガ通信依頼」に基づくトンネル接続要求であるか「アプリトリガ通信依頼」に基づくトンネル接続要求であるかが決定される。また、当該処理種類と当該データテーブルとに基づいて、各トンネル接続要求が、「ユーザ指示処理」に基づくトンネル接続要求であるか「管理処理」に基づくトンネル接続要求であるかも決定される。
そして、4種類の分類C11,C12,C21,C22のうち、分類C11に属するトンネル接続要求に対して最も高い優先度合い(指標値V)が付与され、分類C12に属するトンネル接続要求に対して2番目に高い優先度合いが付与される。また、分類C21に属するトンネル接続要求に対して3番目に高い優先度合いが付与され、分類C22に属するトンネル接続要求に対して4番目に高い優先度合いが付与される。
より具体的には、図8および図9に示すようなポイントが付与される。「デバイストリガ通信依頼」に基づくトンネル接続要求に対しては、「+100」ポイントが付与され、「アプリトリガ通信依頼」に基づくトンネル接続要求に対しては、「+0」ポイントが付与される。また、「ユーザ指示処理のための通信依頼」に基づくトンネル接続要求に対しては、「+10」ポイントが付与され、「管理処理のための通信依頼」に基づくトンネル接続要求に対しては、「+0」ポイントが付与される。
図11には、このようなポイント(評価値)付与動作が示されている。図11のステップS61において、トンネル接続要求がデバイストリガ通信依頼に基づくものであるか否かが判定される。トンネル接続要求がデバイストリガ通信依頼に基づくものである旨が判定される場合には、「+100」ポイントが付与される(ステップS62)。一方、トンネル接続要求がアプリトリガ通信依頼に基づくものである旨が判定される場合には、ポイントは加算されない。なお、このようなポイント分配処理(加算処理)によれば、デバイストリガ通信依頼に基づくトンネル接続要求がアプリトリガ通信依頼に基づくトンネル接続要求よりも優先して実行される。
また、ステップS63においては、トンネル接続要求がユーザ指示処理に基づくものであるか否かが判定される。トンネル接続要求がユーザ指示処理に基づくものである旨が判定される場合には、「+10」ポイントが付与される(ステップS64)。一方、トンネル接続要求が管理処理に基づくものである旨が判定される場合には、ポイントは加算されない。なお、このようなポイント分配処理(加算処理)によれば、ユーザ指示処理に基づくトンネル接続要求が管理処理に基づくトンネル接続要求よりも優先して実行される。
ここにおいて、「デバイストリガ通信依頼」に基づくトンネル接続要求に対する重み付け(加算値「+100」)は、「ユーザ指示処理」に基づくトンネル接続要求に対する重み付け(加算値「+10」)よりも大きい。これにより、上述の2つの分類基準、すなわち、(1)「デバイストリガ通信依頼」であるか否かに関する基準、(2)「ユーザ指示処理(非管理処理)」であるか否かに関する基準、のうち、前者の基準(1)が後者の基準(2)よりも重視される(図7も参照)。
この結果、図9に示すような合計ポイント(指標値V)が付与される。分類C11に属するトンネル接続要求(換言すれば、デバイストリガ通信依頼に基づき且つユーザ指示処理にも基づくトンネル接続要求)(たとえば、クラウドスキャンに関するトンネル接続要求)には合計110(=100+10)ポイントが付与される(V=110)(ステップS62,S64参照)。分類C12に属するトンネル接続要求(換言すれば、デバイストリガ通信依頼に基づき且つ管理処理にも基づくトンネル接続要求)(たとえば、結果通知に関するトンネル接続)には合計100(=100+0)ポイントが付与される(V=100)(ステップS62参照)。また、分類C21に属するトンネル接続要求(換言すれば、アプリトリガ通信依頼に基づき且つユーザ指示処理にも基づくトンネル接続要求)には合計10(=0+10)ポイントが付与される(V=10)(ステップS64参照)。そして、分類C22に属するトンネル接続要求(換言すれば、アプリトリガ通信依頼に基づき且つ管理処理にも基づくトンネル接続要求)には、合計0(=0+0)ポイントが付与される(V=0)。
このように、4種類に分類されるトンネル接続要求C11,C12,C21,C22がこの順序で高い順に並ぶように、複数のトンネル接続要求に対して優先度合い(指標値V)が付与される。
そして、管理サーバ50は、このような指標値Vに基づいて、複数のトンネル接続要求の優先順位を決定する。具体的には、管理サーバ50は、4種類のトンネル接続要求C11,C12,C21,C22をこの順序で優先順位付けして実行する。
なお、2つ以上のトンネル接続要求の指標値Vが全く同一である場合には、当該2つ以上のトンネル接続要求は、その受付順序に従って処理される。
<1−7.優先順位決定処理等の一例>
図12〜図15は、管理サーバ50の待ち行列内の様子を示す概念図である。これらの図を参照しながら、優先順位決定処理の一例について説明する。
図12の状態ST1においては、クラウドスキャン301に対応するトンネル接続要求201(C11)と装置状態取得処理C22(302)に対応するトンネル接続要求202とが既に待ち行列に投入されている。
ここで、クラウドスキャン301は、デバイス10aからゲートウエイ30aを経由してアプリケーション80bに向かう通信を依頼する処理である。また、装置状態取得処理302は、アプリケーション80cからゲートウエイ30aを経由してデバイス10aに向かう通信を依頼する処理である。また、クラウドスキャン301に関するトンネル接続要求201には「+110」の指標値Vが付与されており、装置状態取得処理302に関するトンネル接続要求202には「+0」の指標値Vが付与されている。
図12に示すように、この状態ST1においては、クラウドプリント303に関する通信依頼がさらに受信される。なお、クラウドプリント303は、アプリケーション80aからゲートウエイ30aを経由してデバイス10aに向かう通信を依頼する処理である。
当該通信依頼が受信されると、管理サーバ50は、クラウドプリント303に対応するトンネル接続要求203(C21)の指標値Vを「+10」に設定する。そして、管理サーバ50は、指標値Vの降順になるように、待ち行列においてクラウドプリント303に関するトンネル接続要求203を、クラウドスキャン301に関するトンネル接続要求201の次順位(且つ装置状態取得処理302に関するトンネル接続要求202の前順位)の位置に配置する(図13も参照)。
次に、図13(状態ST2)に示すように、クラウドスキャン304に対応する通信依頼が受信されると、管理サーバ50は、当該通信依頼に対応するトンネル接続要求204(C11)の指標値Vを「+110」に設定する。ここで、クラウドスキャン304は、デバイス10aからゲートウエイ30aを経由してアプリケーション80bに向かう通信を依頼する処理である。そして、管理サーバ50は、指標値Vの降順になるように、待ち行列においてクラウドスキャン304に関するトンネル接続要求204をクラウドスキャン301に関するトンネル接続要求201の次順位(且つクラウドプリント303に関するトンネル接続要求203の前順位)の位置に配置する(図14も参照)。
次に、図14(状態ST3)に示すように、結果通知処理305に対応する通信依頼が受信されると、管理サーバ50は、当該通信依頼に対応するトンネル接続要求205(C12)の指標値Vを「+100」に設定する。ここで、結果通知処理305は、デバイス10aからゲートウエイ30aを経由してアプリケーション80dに向かう通信を依頼する処理である。そして、管理サーバ50は、指標値Vの降順になるように、待ち行列において結果通知処理305に関するトンネル接続要求205をクラウドスキャン304に関するトンネル接続要求204の次順位(且つクラウドプリント303に関するトンネル接続要求203の前順位)の位置に配置する(図15も参照)。
以上のようにして、複数の通信依頼および当該複数の通信依頼に基づく複数のトンネル接続要求の実行順序が決定される。そして、上述のように、当該実行順序に基づいて、複数の通信依頼および当該複数の通信依頼に基づく複数のトンネル接続要求が実行される。
詳細には、上述のように、2つの分類基準、すなわち、(1)「デバイストリガ通信依頼」であるか否かに関する基準、(2)「ユーザ指示処理(非管理処理)」であるか否かに関する基準、のうち、前者の基準(1)が後者の基準(2)よりも重視される。
より具体的には、まず、前者の基準(1)が優先的に(比較的大きな重み付けで)適用され、「デバイストリガ通信依頼」に基づくトンネル接続要求C1(C11,C12)が、「アプリトリガ通信依頼」に基づくトンネル接続要求C2(C21,C22)よりも優先して実行される。
また、後者の基準(2)が次順位で(比較的小さな重み付けで)適用され、「非管理処理」に基づくトンネル接続要求と「管理処理」に基づくトンネル接続要求とのうち、「非管理処理」に基づくトンネル接続要求が、「管理処理」に基づくトンネル接続要求よりも優先して実行される。より詳細には、同じ「デバイストリガ通信依頼」に基づくトンネル接続要求C1(図7参照)の相互間において、「ユーザ指示処理(非管理処理)」に基づくトンネル接続要求C11が、「管理処理」に基づくトンネル接続要求C12よりも優先して実行される。同様に、同じ「アプリトリガ通信依頼」に基づくトンネル接続要求C2の相互間において、「ユーザ指示処理(非管理処理)」に基づくトンネル接続要求C21が、「管理処理」に基づくトンネル接続要求C22よりも優先して実行される。
このように、複数のトンネル接続要求のうち、トンネル接続要求C11,C12,C21,C22とがこの順序で優先順位付けされて実行される。
<1−8.実施形態の効果等>
以上のような動作によれば、複数のトンネル接続要求のうち、デバイストリガ通信依頼に基づくトンネル接続要求がアプリトリガ通信依頼に基づくトンネル接続要求よりも優先して実行される。これによれば、複数のトンネル接続要求が好適な順序で実行され得る。
ここにおいて、アプリケーションでの処理が蓄積された(アプリケーションでの処理負荷が集中した)場合、アプリケーション側のハードウエア変更等(クラウドサーバ70のハードウエア追加等)によってアプリケーション側の処理能力を向上させることは比較的容易である。一方、デバイスでの処理が蓄積された場合、デバイス側のハードウエア変更および追加等によってデバイスの処理能力を向上させることは比較的困難である。特に、デバイスの処理が待ち行列内の比較的後ろ側にて集中すると、比較的遅い時点から処理が開始されるとともに処理期間の遅延等が発生し、処理の終了時点(終期)が大きく遅延する事態になる可能性が高い。これに対して、デバイスの処理を比較的早い時点から開始することによれば、このような事態の発生を回避あるいは抑制することが可能である。
また、デバイス側から発せられる処理(デバイストリガ依頼処理)は、デバイスのハードウエアと特に密接に関連する処理(デバイスでの処理との関連性が比較的高い処理)であることが多い。上述のようにデバイスのハードウエア能力の拡大の余地が少ないこと等を考慮すると、「デバイストリガ依頼処理」を「アプリトリガ依頼処理」よりも優先することが好ましい。
また、「デバイストリガ通信依頼」に関する処理は、「アプリトリガ通信依頼」に関する処理と比べて、比較的高い即時性を要求されることが多い。たとえば、「クラウドスキャン」(デバイストリガ通信依頼処理(且つユーザ指示処理))は、「クラウドプリント」(アプリトリガ通信依頼処理(且つユーザ指示処理))よりも早期に実行されることが望まれることが多い。「クラウドスキャン」(デバイストリガ通信依頼処理)は、LANの内側に存在する人(デバイス10の近くに居る人)からの指示に基づく処理である。一方、「クラウドプリント」(アプリトリガ通信依頼に対応する処理)は、多くの場合、LANの外側に存在する人(デバイスから遠く離れた人)からの指示に基づく処理である。デバイスの近くに居る人は、デバイスへの接近を伴う動作(デバイスのスキャナを用いたスキャン動作等)を比較的早い時期に行うことを希望することが多い。このように、一般に「クラウドスキャン」は「クラウドプリント」よりも高い即時性要求を有している。そして、「クラウドスキャン」が「クラウドプリント」よりも優先的に(先に)実行されることによれば、このような要求を充足させることが可能である。
また、「結果通知」処理(デバイストリガ通信依頼処理(且つ管理処理))と「装置状態取得」処理(アプリトリガ通信依頼処理(且つ管理処理))とを比較すると、「結果通知」処理は、「装置状態取得」処理よりも、比較的高い即時性を要求されることが多い。「結果通知」処理(デバイストリガ通信依頼に対応する処理)は、LANの内側のデバイス10における各種処理の処理結果を通知する処理であり、その即時性要求が比較的高い処理である。換言すれば、「装置状態取得」処理の即時性要求は、「結果通知」処理の即時性要求よりも低い。このような事情を考慮すると、「結果通知」処理(「デバイストリガ依頼処理」)を「装置状態取得」処理(「アプリトリガ依頼処理」)よりも優先することが好ましい。
上記実施形態においては、上記のような事情を踏まえ、デバイストリガ通信依頼に基づくトンネル接続要求がアプリトリガ通信依頼に基づくトンネル接続要求よりも優先して実行される。これによれば、安定したシステム運用を効率的に実現することが可能である。
また、上記実施形態においては、「ユーザ指示処理」に基づくトンネル接続要求が、「管理処理」に基づくトンネル接続要求よりも優先して実行される。利用ユーザによる指示操作に基づくユーザ指示処理(非管理処理)は、処理を実行したい利用ユーザが現に存在している(現に所望の操作を行っている)という特質を有していることに基づき即時性要求が高いと判断され、優先的に実行される。これによれば、当該特質を有するユーザ指示処理に基づくトンネル接続要求が、適切に優先的に実行され得る。
<2.第2実施形態>
<2−1.概要>
第2実施形態は、第1実施形態の変型例である。以下では、第1実施形態との相違点を中心に説明する。
上記第1実施形態においては、管理サーバ50は、アプリケーション80あるいはデバイス10から受信した複数の通信依頼に基づく複数のトンネル接続要求の実行順序を、当該複数の通信依頼の依頼内容の分類結果のみに基づいて決定している。
一方、第2実施形態においては、当該複数のトンネル接続要求の実行順序が、当該複数の通信依頼の依頼内容の分類結果のみならず、当該複数の通信依頼の受信時点での各装置等(デバイス10、ゲートウエイ30およびクラウドサーバ70(アプリケーション80))の負荷の推定結果にも基づいて決定される態様を例示する。
具体的には、上述の4つのカテゴリー(C11,C12,C21,C22)のうちの同じカテゴリーに分類された2以上のトンネル接続要求の優先順位が、当該2以上のトンネル接続要求のそれぞれに関連する装置等の負荷に応じて決定される(図16参照)。なお、図16は、第2実施形態における分類(トンネル接続要求の分類)を示す図である。
換言すれば、この第2実施形態においては、上述の2つの分類基準(1)(2)に加えて、(3)当該複数の通信依頼の受信時点での各装置等が所定程度以上の高負荷状態を有するか否かに関する基準が用いられる。また、当該分類基準(3)は、上述の2つの分類基準(1)(2)よりも低い重み付けで考慮される。
また、この第2実施形態においては、管理サーバ50は、各通信依頼に関連する各装置等の負荷を、当該装置等に関するトンネル接続の接続状況(トンネル接続の現在の接続数等)に基づいて推定する。なお、上述のように、当該トンネル接続の接続状況(接続数等)は、管理サーバ50(情報管理部65および管理テーブル69等)にて管理されている。
<2−2.デバイス10の負荷>
たとえば、ゲートウエイ30とクラウドサーバ70(アプリケーション80)との間に既に確立されているトンネル接続であって特定のデバイス10に関連するトンネル接続の接続数が閾値TH1(「2本」)よりも大きい場合には、管理サーバ50は、当該特定のデバイス10の負荷が所定程度よりも大きい(端的に言えば「ビジー状態」である)と判定する。一方、当該特定のデバイス10に関連するトンネル接続の接続数が閾値TH1よりも小さい場合には、管理サーバ50は、当該特定のデバイス10の負荷が所定程度よりも小さい(端的に言えば「非ビジー状態」である)と判定する。なお、等号成立時は、ビジー状態であると判定されてもよく、逆に非ビジー状態であると判定されてもよい。
そして、管理サーバ50は、非ビジー状態であると判定されたデバイス10に関するトンネル接続要求(ビジーデバイスに関するトンネル接続要求)を、ビジー状態であると判定されたデバイス10に関するトンネル接続要求(非ビジーデバイスに関するトンネル接続要求)よりも優先して実行する。
より詳細には、管理サーバ50は、或るトンネル接続要求を受信した際に、当該トンネル接続要求に関与するデバイス10に関してその時点で既に確立されている(別の)トンネル接続の接続数に基づき、当該デバイス10が「ビジー状態」であるか否かを判定する。
図17に示すように、当該デバイスが「ビジー状態」である場合には、受信した当該トンネル接続要求に対してマイナスポイント(「−1」ポイント)が付与される。一方、当該デバイスが「非ビジー状態」である場合には、受信した当該トンネル接続要求に対してゼロポイント(「0」ポイント)が付与される。そして、第1実施形態と同様のポイント付与結果に対して、さらにこれらのマイナスポイント等が加算される(結果的に低減等される)ことによって、各トンネル接続要求に対する評価値(指標値V)が算出され、当該評価値に基づいて優先順位が決定される。
これによれば、同じカテゴリー(C11,C12,C21,C22のいずれか)に分類された2以上のトンネル接続要求のうち、「非ビジー状態」のデバイス10に関するトンネル接続要求が、「ビジー状態」のデバイス10に関するトンネル接続要求よりも優先して実行される。すなわち、比較的空いているデバイス10に関するトンネル接続要求が比較的優先して実行されるので、ビジー状態のデバイス10に関するトンネル接続が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。したがって、システム全体としての動作を効率化することが可能である。
<2−3.ゲートウエイ30の負荷>
同様に、たとえば、ゲートウエイ30とクラウドサーバ70(アプリケーション80)との間に既に確立されているトンネル接続であって特定のゲートウエイ30に関連するトンネル接続の接続数が閾値TH2(「4本」)よりも大きい場合には、管理サーバ50は、当該特定のゲートウエイ30の負荷が所定程度よりも大きい(端的に言えば「ビジー状態」である)と判定する。一方、当該特定のゲートウエイ30に関連するトンネル接続の接続数が閾値TH2よりも小さい場合には、管理サーバ50は、当該特定のゲートウエイ30の負荷が所定程度よりも小さい(端的に言えば「非ビジー状態」である)と判定する。なお、等号成立時は、ビジー状態であると判定されてもよく、逆に非ビジー状態であると判定されてもよい。
そして、管理サーバ50は、非ビジー状態であると判定されたゲートウエイ30に関するトンネル接続要求(ビジーゲートウエイに関するトンネル接続要求)を、ビジー状態であると判定されたゲートウエイ30に関するトンネル接続要求(非ビジーゲートウエイに関するトンネル接続要求)よりも優先して実行する。
より詳細には、管理サーバ50は、或るトンネル接続要求を受信した際に、当該トンネル接続要求に関与するゲートウエイ30に関してその時点で既に確立されている(別の)トンネル接続の接続数に基づき、当該ゲートウエイ30が「ビジー状態」であるか否かを判定する。
図17に示すように、当該ゲートウエイ30が「ビジー状態」である場合には、受信した当該トンネル接続要求に対してマイナスポイント(「−1」ポイント)が付与される。一方、当該ゲートウエイ30が「非ビジー状態」である場合には、受信した当該トンネル接続要求に対してゼロポイント(「0」ポイント)が付与される。そして、第1実施形態と同様のポイント付与結果に対して、さらにこれらのマイナスポイント等が加算されることによって、各トンネル接続要求に対する評価値(指標値V)が算出され、当該評価値に基づいて優先順位が決定される。
これによれば、同じカテゴリー(C11,C12,C21,C22のいずれか)に分類された2以上のトンネル接続要求のうち、「非ビジー状態」のゲートウエイ30に関するトンネル接続要求が、「ビジー状態」のゲートウエイ30に関するトンネル接続要求よりも優先して実行される。すなわち、比較的空いているゲートウエイ30に関するトンネル接続要求が比較的優先して実行されるので、ビジー状態のゲートウエイ30に関するトンネル接続が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。したがって、システム全体としての動作を効率化することが可能である。
<2−4.アプリケーション80の負荷>
同様に、たとえば、ゲートウエイ30とクラウドサーバ70(アプリケーション80)との間に既に確立されているトンネル接続であって、特定のアプリケーション80に関連するトンネル接続の接続数が閾値TH3(「10本」)よりも大きい場合には、管理サーバ50は、当該特定のアプリケーション80の負荷が所定程度よりも大きい(端的に言えば「ビジー状態」である)と判定する。一方、当該特定のアプリケーション80に関連するトンネル接続の接続数が閾値TH3よりも小さい場合には、管理サーバ50は、当該特定のアプリケーション80の負荷が所定程度よりも小さい(端的に言えば「非ビジー状態」である)と判定する。なお、等号成立時は、ビジー状態であると判定されてもよく、逆に非ビジー状態であると判定されてもよい。
そして、管理サーバ50は、非ビジー状態であると判定されたアプリケーション80に関するトンネル接続要求(ビジーゲートウエイに関するトンネル接続要求)を、ビジー状態であると判定されたアプリケーション80に関するトンネル接続要求(非ビジーゲートウエイに関するトンネル接続要求)よりも優先して実行する。
より詳細には、管理サーバ50は、或るトンネル接続要求を受信した際に、当該トンネル接続要求に関与するアプリケーション80に関してその時点で既に確立されている(別の)トンネル接続の接続数に基づき、当該アプリケーション80が「ビジー状態」であるか否かを判定する。
図17に示すように、当該アプリケーション80が「ビジー状態」である場合には、受信した当該トンネル接続要求に対してマイナスポイント(「−1」ポイント)が付与される。一方、当該アプリケーション80が「非ビジー状態」である場合には、当該受信したトンネル接続要求に対してゼロポイント(「0」ポイント)が付与される。そして、第1実施形態と同様のポイント付与結果に対して、さらにこれらのマイナスポイント等が加算されることによって、各トンネル接続要求に対する評価値(指標値V)が算出され、当該評価値に基づいて優先順位が決定される。
これによれば、同じカテゴリー(C11,C12,C21,C22のいずれか)に分類された2以上のトンネル接続要求のうち、「非ビジー状態」のアプリケーション80に関するトンネル接続要求が、「ビジー状態」のアプリケーション80に関するトンネル接続要求よりも優先して実行される。すなわち、比較的空いているアプリケーション80に関するトンネル接続要求が比較的優先して実行されるので、ビジー状態のアプリケーション80に関するトンネル接続が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。したがって、システム全体としての動作を効率化することが可能である。
<2−5.トンネル接続要求の優先順位決定動作等>
第2実施形態においても、第1実施形態と同様の動作が行われる。ただし、図20の動作が図11の動作に代えて実行される。図20は、トンネル接続要求の優先順位決定動作を示すフローチャートである。
図20に示すように、ステップS61〜S64は、第1実施形態と同様である。
その後、受信したトンネル接続要求に関連するデバイス10が「ビジー状態」である場合には、当該トンネル接続要求に対してマイナスポイント(「−1」ポイント)が付与される(ステップS71,S72)。一方、当該デバイス10が「非ビジー状態」である場合には、当該トンネル接続要求に対してポイントが付与されない(「0」ポイントが付与される)。
また、受信したトンネル接続要求に関連するゲートウエイ30が「ビジー状態」である場合には、当該トンネル接続要求に対してマイナスポイント(「−1」ポイント)が付与される(ステップS73,S74)。一方、当該ゲートウエイ30が「非ビジー状態」である場合には、当該トンネル接続要求に対してポイントが付与されない(「0」ポイントが付与される)。
さらに、受信したトンネル接続要求に関連するアプリケーション80が「ビジー状態」である場合には、当該トンネル接続要求に対してマイナスポイント(「−1」ポイント)が付与される(ステップS75,S76)。一方、当該アプリケーション80が「非ビジー状態」である場合には、当該トンネル接続要求に対してポイントが付与されない(「0」ポイントが付与される)。
なお、ステップS71〜76にて付与されるポイントは、負荷調整ポイントとも称される。第2実施形態においては、ステップS61〜S64で算出されたポイントに対して、ステップS71〜76にて算出された当該負荷調整ポイントが加算されることによって指標値Vが算出される。そして、当該指標値Vに基づいて各トンネル接続要求の処理順序が決定される。また、2つ以上のトンネル接続要求の指標値V(ステップS71〜S76での負荷調整ポイント加算(減算)後のポイント)が全く同一である場合には、当該2つ以上のトンネル接続要求は、その受付順序に従って処理される。
<2−6.優先順位決定処理の一例>
<状態ST3まで>
図21〜図25は、管理サーバ50の待ち行列内の様子を示す概念図である。これらの図を参照しながら、優先順位決定処理の一例について説明する。
第2実施形態においても、状態ST1〜ST3では、第1実施形態(図12〜図14参照)と同様の処理が実行される。なお、図21においては、状態ST3に関する処理結果(図15参照)に対して、新たなクラウドスキャン306に関するトンネル接続要求206が受信された状況が示されている。
ただし、この第2実施形態においては、各装置等(デバイス10、ゲートウエイ30、クラウドサーバ70(アプリケーション80))の負荷を考慮したマイナスポイントも付与される。ここでは、複数のデバイス10のうちデバイス10aのみがビジーであり、複数のゲートウエイ30のうちゲートウエイ30aのみがビジーであり、複数のアプリケーション80のうちアプリケーション80bのみがビジーである場合を想定する。
この場合、クラウドスキャン301(図21の最上欄参照)に関するトンネル接続要求201には、デバイス10aがビジー状態であることに基づく「−1」ポイントと、ゲートウエイ30aがビジー状態であることに基づく「−1」ポイントと、アプリケーション80bがビジー状態であることに基づく「−1」ポイントとの合計値「−3」ポイントが付与される(図21の右から2列目(負荷調整ポイント欄)参照)。
そして、その他のポイント「110」に負荷調整ポイント「−3」を加算することによって、クラウドスキャン301に関するトンネル接続要求201の評価値(指標値V)は、合計「107」ポイントに設定される(図21の最右列(合計値欄)、および図18の上から2段目参照)。
同様に、クラウドスキャン304に関するトンネル接続要求204の指標値Vも、合計「107」ポイントに設定される。
また、結果通知処理305に関するトンネル接続要求205には、デバイス10aがビジー状態であることに基づく「−1」ポイントと、ゲートウエイ30aがビジー状態であることに基づく「−1」ポイントとの合計値(負荷調整ポイント)「−2」ポイントが付与される。その他のポイント「100」に負荷調整ポイント「−2」を加算することによって、結果通知処理305に関するトンネル接続要求205の指標値Vは、合計「98」ポイントに設定される(図21の最右列、および図19の上から2段目参照)。
同様に、クラウドプリント303に関するトンネル接続要求203の指標値Vは、合計「8」ポイントに設定され(図18の最下段も参照)、装置状態取得処理302に関するトンネル接続要求202の指標値Vは、合計「−2」ポイントに設定される(図19の最下段参照)。
なお、これらの各指標値は、各通信依頼の受信時に設定される。具体的には、クラウドスキャン301、装置状態取得処理302、クラウドプリント303、クラウドスキャン304、結果通知処理305の各処理に関する指標値Vは、当該各処理に関する通信依頼の受信時に(この順序で)設定される。そして、待ち行列内において、各通信依頼に基づくトンネル接続要求が、図21に示すような優先順位で配列される。なお、図21等においては、複数のトンネル接続要求が、その優先順位の高いものから順に、上から下に向けて配置されている。
<状態ST4>
次に、図21(状態ST4)に示すように、新たな通信依頼、具体的にはクラウドスキャン306に対応する通信依頼が受信されると、管理サーバ50は、当該通信依頼に対応するトンネル接続要求206(C11)の指標値Vを「+108」に設定する。ここで、クラウドスキャン306は、デバイス10b(10aではない)からゲートウエイ30aを経由してアプリケーション80bに向かう通信を依頼する処理であり、負荷調整ポイントは「−2」である。そして、管理サーバ50は、指標値Vの降順になるように、待ち行列においてクラウドスキャン306に関するトンネル接続要求206をクラウドスキャン301に関するトンネル接続要求201よりも前の順位の位置(先頭位置)に配置する(図22も参照)。
これによれば、同一のカテゴリー(C11)に分類される2つのクラウドスキャン301,306の相互間においては、負荷調整ポイントの大小によってその優先順位が決定される。具体的には、同一のゲートウエイ30aを経由して同一のアプリケーション80bに向かうデータ送信を伴う2つの通信依頼に基づく2つのトンネル接続要求201,206の優先順位は、その互いに異なる依頼元デバイス10a,10bの負荷状況に応じて決定される。そして、決定された優先順位に従って当該2つのトンネル接続要求が実行される。詳細には、「非ビジー状態」のデバイス10bに関するトンネル接続要求206が、「ビジー状態」のデバイス10aに関するトンネル接続要求201よりも優先して実行される。換言すれば、管理サーバ50は、複数のデバイスのうち閾値TH1よりも大きな数のトンネル接続が未だ確立されていないデバイス10bに関するトンネル接続要求を、当該複数のデバイスのうち閾値TH1よりも大きな数のトンネル接続が既に確立されているデバイス10aに関するトンネル接続要求よりも、優先して実行する。すなわち、比較的空いているデバイス10bに関するトンネル接続要求206が比較的優先して実行される。したがって、ビジー状態のデバイス10aに関するトンネル接続要求201が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。ひいては、システム全体としての動作を効率化することが可能である。
<状態ST5>
つぎに、図22(状態ST5)に示すように、クラウドプリント307に対応する通信依頼が受信されると、管理サーバ50は、当該通信依頼に対応するトンネル接続要求207(C21)の指標値Vを「+9」に設定する。ここで、クラウドプリント307は、アプリケーション80aからゲートウエイ30aを経由してデバイス10b(10aではない)に向かう通信を依頼する処理であり、負荷調整ポイントは「−1」である。そして、管理サーバ50は、待ち行列においてクラウドプリント307に関するトンネル接続要求207を「結果通知処理305に関するトンネル接続要求205の次順位且つクラウドプリント303に関するトンネル接続要求203の前順位」の位置に配置する(図23も参照)。
これによれば、同一のカテゴリー(C21)に分類される2つのクラウドプリント303,307の相互間においては、負荷調整ポイントの大小によってその優先順位が決定される。具体的には、同一アプリケーション80aから同一のゲートウエイ30を経由して受信される2つの通信依頼に基づく2つのトンネル接続要求203,207の優先順位は、その互いに異なる関与デバイス10a,10bの負荷状況に応じて決定される。そして、決定された優先順位に従って当該2つのトンネル接続要求が実行される。詳細には、「非ビジー状態」のデバイス10bに関するトンネル接続要求207が、「ビジー状態」のデバイス10aに関するトンネル接続要求203よりも優先して実行される。すなわち、比較的空いているデバイス10bに関するトンネル接続要求207が比較的優先して実行されるので、ビジー状態のデバイス10aに関するトンネル接続要求203が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。したがって、システム全体としての動作を効率化することが可能である。
<状態ST6>
次に、図23(状態ST6)に示すように、クラウドプリント308に対応する通信依頼が受信されると、管理サーバ50は、当該通信依頼に対応するトンネル接続要求208(C21)の指標値Vを「+10」に設定する。ここで、クラウドプリント308は、アプリケーション80aからゲートウエイ30b(ゲートウエイ30aではない)を経由してデバイス10e(10aではない)に向かう通信を依頼する処理であり、負荷調整ポイントは「0」である。そして、管理サーバ50は、待ち行列においてクラウドプリント308に関するトンネル接続要求208を「結果通知処理305に関するトンネル接続要求205の次順位且つクラウドプリント307に関するトンネル接続要求207の前順位」の位置に配置する(図24も参照)。
これによれば、同一のカテゴリー(C21)に分類される2つのクラウドプリント307,308の相互間においては、負荷調整ポイントの大小によってその優先順位が決定される。具体的には、同一アプリケーション80aから受信される2つの通信依頼に基づく2つのトンネル接続要求207,208の優先順位は、その互いに異なる関与ゲートウエイ30b,30aの負荷状況とその互いに異なる関与デバイス10e,10bの負荷状況とに応じて決定される。ここでは、関与デバイス10e,10bの負荷状況は互いに同等(いずれも「低負荷」)であり、関与ゲートウエイ30b,30aの負荷状況が互いに異なっている。したがって、2つのトンネル接続要求207,208の優先順位は、関与ゲートウエイ30b,30aの負荷状況に応じて実質的に決定される。そして、決定された優先順位に従って当該2つのトンネル接続要求が実行される。詳細には、「非ビジー状態」のゲートウエイ30bに関するトンネル接続要求208が、「ビジー状態」のゲートウエイ30aに関するトンネル接続要求207よりも優先して実行される。換言すれば、管理サーバ50は、複数のゲートウエイ30のうち閾値TH2よりも大きな数のトンネル接続を未だ確立していないゲートウエイ30bに関するトンネル接続要求を、当該複数のゲートウエイ30のうちの閾値TH2よりも大きな数のトンネル接続を既に確立しているゲートウエイ30aに関するトンネル接続要求よりも、優先して実行する。すなわち、比較的空いているゲートウエイ30bに関するトンネル接続要求208が比較的優先して実行される。したがって、ビジー状態のゲートウエイ30aに関するトンネル接続要求207が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。ひいては、システム全体としての動作を効率化することが可能である。
<状態ST7>
次に、図24(状態ST7)に示すように、クラウドスキャン309に対応する通信依頼が受信されると、管理サーバ50は、当該通信依頼に対応するトンネル接続要求209(C11)の指標値Vを「+108」に設定する。ここで、クラウドスキャン309は、デバイス10aからゲートウエイ30aを経由してアプリケーション80e(80bではない)に向かう通信を依頼する処理であり、負荷調整ポイントは「−2」である。そして、管理サーバ50は、待ち行列においてクラウドスキャン309に関するトンネル接続要求209をクラウドスキャン306に関するトンネル接続要求206の次順位(且つクラウドスキャン301に関するトンネル接続要求201の前順位)の位置に配置する(図24も参照)。
これによれば、同一のカテゴリー(C11)に分類される2つのクラウドスキャン301,309の相互間においては、負荷調整ポイントの大小によってその優先順位が決定される。具体的には、同一のデバイス10aから同一のゲートウエイ30aを経由して異なるアプリケーション80a,80bに向かうデータ送信を伴う2つの通信依頼に基づく2つのトンネル接続要求201,209の優先順位は、その互いに異なる送信先アプリケーション80b,80eの負荷状況に応じて決定される。そして、決定された優先順位に従って当該2つのトンネル接続要求が実行される。詳細には、「非ビジー状態」のアプリケーション80eに関するトンネル接続要求209が、「ビジー状態」のアプリケーション80bに関するトンネル接続要求201よりも優先して実行される。換言すれば、管理サーバ50は、複数のアプリケーション80のうち閾値TH3よりも大きな数のトンネル接続を未だ確立していないアプリケーション80eに関するトンネル接続要求を、複数のアプリケーション80のうち閾値TH2よりも大きな数のトンネル接続を既に確立しているアプリケーション80bに関するトンネル接続要求よりも、優先して実行する。すなわち、比較的空いているアプリケーション80eに関するトンネル接続要求209が比較的優先して実行される。したがって、ビジー状態のアプリケーション80bに関するトンネル接続要求201が実行されることに伴う待ち時間の発生および/または処理時間の長大化を回避あるいは抑制することができる。ひいては、システム全体としての動作を効率化することが可能である。
<3.変形例等>
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
たとえば、上記各実施形態においては、トンネル接続要求がユーザ指示処理に基づくものであるか管理処理に基づくものであるかが、依頼処理の処理種類(当該処理種類を表すデータ等)に基づいて決定されているが、これに限定されない。
具体的には、管理サーバ50は、トンネル接続要求がユーザ指示処理に基づくものであるか管理処理に基づくものであるかを、各通信依頼に係るデータ転送にて利用される通信プロトコルに基づいて判定するようにしてもよい。たとえば、通信依頼後の実際のデータ通信が、通信速度(リアルタイム性)を優先しデータの完全性を保証しない通信プロトコル(たとえばUDP(User Datagram Protocol))を用いるものである場合には、当該通信依頼に対応するトンネル接続要求は管理処理に基づくトンネル接続要求である、と判定されるようにしてもよい。逆に、通信依頼後の実際のデータ通信が、データの完全性を重視する通信プロトコル(たとえばTCP(Transmission Control Protocol))を用いるデータ通信を伴うものである場合には、当該通信依頼に対応するトンネル接続要求は非管理処理に基づくトンネル接続要求であると判定するようにしてもよい。なお、管理サーバ50は、各通信依頼と当該各通信依頼に応じた実際のデータ通信にて利用される通信プロトコルとの対応関係を示すデータテーブルを格納部55に予め格納しておく。そして、管理サーバ50は、当該データテーブル等に基づいて、各通信依頼に応じた通信プロトコル(各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコル(UDP/TCP等))を判定(取得)すればよい。
あるいは、管理サーバ50は、通信依頼の依頼元のユーザ種類に応じて、当該通信依頼に対応するトンネル接続要求がユーザ指示処理に基づくものであるか管理処理に基づくものであるかを判定するようにしてもよい。詳細には、依頼元ユーザが管理者(管理ユーザ)である場合には、当該通信依頼に対応するトンネル接続要求が管理処理に基づくトンネル接続要求である旨が決定されればよい。逆に、依頼元ユーザが利用者(利用ユーザ)(非管理者)である場合には、当該通信依頼に対応するトンネル接続要求がユーザ指示処理に基づくトンネル接続要求である旨が決定されればよい。
さらには、当該通信依頼が定期的に(一定周期で)発生しているものである場合、当該通信依頼に対応するトンネル接続要求は管理処理に基づくトンネル接続要求であると判定されるようにしてもよい。たとえば、毎日同時刻に通算で所定回数以上繰り返して受信される同種の通信依頼は、「管理処理」に関するものであると判定されるようにしてもよい。
また、上記各実施形態においては、複数の通信依頼(および当該複数の通信依頼に基づく複数のトンネル接続要求)が2つの分類基準を用いて大きく4つに分類されている(図7等参照)が、これに限定されない。たとえば、2つの分類基準のうちの一方(具体的には、「デバイストリガ通信依頼」であるか否かに関する基準)のみを用いて、複数の通信依頼(および当該複数の通信依頼に基づく複数のトンネル接続要求)が大きく2つにのみ分類されるようにしてもよい。
また、上記各実施形態においては、各クラウドサーバ70に1つのアプリケーション80が設けられているが、これに限定されず、単一のクラウドサーバ70内に複数のアプリケーション80が設けられてもよい。
また、上記各実施形態においては、1つのアプリケーション80が単一の機能を有しているが、これに限定されず、1つのアプリケーション80が複数の機能(たとえば、クラウドスキャン機能およびクラウドプリント機能)を有していてもよい。換言すれば、各アプリケーション80は複数の種類の処理を実行するものであってもよい。
また、上記各実施形態の通信システム1においては、複数のデバイス10と複数のゲートウエイ30と複数のクラウドサーバ70(アプリケーション80)とが設けられているが、これに限定されない。具体的には、各装置等10,30,70(80)のうちの少なくとも1つが単一であってもよい。たとえば、通信システム1において、複数のデバイス10と単一のゲートウエイ30と複数のアプリケーション80とが設けられてもよい。あるいは、単一のデバイス10と単一のゲートウエイ30と複数のアプリケーション80とが設けられてもよい。あるいは、単一のデバイス10と単一のゲートウエイ30と単一のアプリケーション80とが設けられてもよい。
1 通信システム
10 デバイス(MFP)
30 ゲートウエイ
50 管理サーバ
70 クラウドサーバ
80 アプリケーション
90 クライアント
V 指標値

Claims (21)

  1. 通信システムであって、
    ファイアウォールの内側に設けられる少なくとも1つのデバイスと、
    前記ファイアウォールの外側に設けられる少なくとも1つのクラウドサーバと、
    前記少なくとも1つのデバイスと前記少なくとも1つのクラウドサーバで実行される少なくとも1つのアプリケーションとの間の通信を中継する少なくとも1つのゲートウエイと、
    前記少なくとも1つのデバイスと前記少なくとも1つのアプリケーションとの間の通信であって前記少なくとも1つのゲートウエイを介した通信を管理する管理サーバと、
    を備え、
    前記管理サーバは、
    前記少なくとも1つのデバイスのいずれかからの通信依頼であって前記少なくとも1つのデバイス側から前記少なくとも1つのアプリケーション側へ向かう向きのデータ転送を伴う通信の依頼である第1の通信依頼と、前記少なくとも1つのアプリケーションのいずれかからの通信依頼であって前記少なくとも1つのアプリケーション側から前記少なくとも1つのデバイス側へ向かう向きのデータ転送を伴う通信の依頼である第2の通信依頼とを含む複数の通信依頼を受信する受信手段と、
    前記複数の通信依頼に基づく複数のトンネル接続要求の実行順序を制御するトンネル接続要求制御手段と、
    を有し、
    各トンネル接続要求は、前記少なくとも1つのゲートウエイのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのトンネル接続を用いた通信を行うべき旨を前記少なくとも1つのゲートウエイのいずれかに対して要求する指令であり、
    前記トンネル接続要求制御手段は、前記第1の通信依頼に基づくトンネル接続要求である第1のトンネル接続要求を、前記第2の通信依頼に基づくトンネル接続要求である第2のトンネル接続要求よりも優先して実行することを特徴とする通信システム。
  2. 請求項1に記載の通信システムにおいて、
    前記トンネル接続要求制御手段は、利用ユーザによる指示に応じたユーザ指示処理の実行のための第3の通信依頼に基づくトンネル接続要求である第3のトンネル接続要求と、前記利用ユーザによる指示を前提としない管理処理の実行のための第4の通信依頼に基づくトンネル接続要求である第4のトンネル接続要求とのうち、前記第3のトンネル接続要求を前記第4のトンネル接続要求よりも優先して実行することを特徴とする通信システム。
  3. 請求項2に記載の通信システムにおいて、
    前記トンネル接続要求制御手段は、
    (1)前記第1のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、
    (2)前記第1のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、
    (3)前記第2のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、
    (4)前記第2のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、
    前記(1)〜(4)の順序で優先順位付けして実行することを特徴とする通信システム。
  4. 請求項1ないし請求項3のいずれかに記載の通信システムにおいて、
    前記通信システムには複数のデバイスが設けられ、
    前記トンネル接続要求制御手段は、前記複数のデバイスのうち第1の閾値よりも大きな数のトンネル接続を未だ確立していない第1のデバイスに関するトンネル接続要求を、前記複数のデバイスのうち前記第1の閾値よりも大きな数のトンネル接続を既に確立している第2のデバイスに関するトンネル接続要求よりも、優先して実行することを特徴とする通信システム。
  5. 請求項1ないし請求項4のいずれかに記載の通信システムにおいて、
    前記通信システムには複数のゲートウエイが設けられ、
    前記トンネル接続要求制御手段は、前記複数のゲートウエイのうち第2の閾値よりも大きな数のトンネル接続を未だ確立していない第1のゲートウエイに関するトンネル接続要求を、前記複数のゲートウエイのうち前記第2の閾値よりも大きな数のトンネル接続を既に確立している第2のゲートウエイに関するトンネル接続要求よりも、優先して実行することを特徴とする通信システム。
  6. 請求項1ないし請求項5のいずれかに記載の通信システムにおいて、
    前記通信システムには複数のアプリケーションが設けられ、
    前記トンネル接続要求制御手段は、前記複数のアプリケーションのうち第3の閾値よりも大きな数のトンネル接続を未だ確立していない第1のアプリケーションに関するトンネル接続要求を、前記複数のアプリケーションのうち前記第3の閾値よりも大きな数のトンネル接続を既に確立している第2のアプリケーションに関するトンネル接続要求よりも、優先して実行することを特徴とする通信システム。
  7. 請求項1ないし請求項6のいずれかに記載の通信システムにおいて、
    前記トンネル接続要求制御手段は、前記受信手段によって受信された前記複数の通信依頼に対応する複数のトンネル接続要求に対して各評価値をそれぞれ算出し、前記各評価値に基づいて前記複数のトンネル接続要求の優先順位を決定することを特徴とする通信システム。
  8. 請求項2または請求項3に記載の通信システムにおいて、
    前記第3の通信依頼および前記第4の通信依頼は、それぞれ、前記少なくとも1つのデバイスのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのデータ通信を伴う通信の依頼であり、
    前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルに基づいて判定することを特徴とする通信システム。
  9. 請求項8に記載の通信システムにおいて、
    前記トンネル接続要求制御手段は、前記各通信依頼と当該各通信依頼に応じた前記データ通信にて利用される通信プロトコルとの対応関係を示すデータテーブルに基づいて、前記各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルを判定することを特徴とする通信システム。
  10. 請求項2または請求項3に記載の通信システムにおいて、
    前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、前記通信依頼の依頼元ユーザが利用ユーザであるか管理ユーザであるかに応じて判定することを特徴とする通信システム。
  11. ファイアウォールの内側に設けられる少なくとも1つのデバイスと前記ファイアウォールの外側に設けられる少なくとも1つのクラウドサーバで実行される少なくとも1つのアプリケーションとの間の通信であって少なくとも1つのゲートウエイによって中継される通信を管理する管理サーバであって、
    前記少なくとも1つのデバイスのいずれかからの通信依頼であって前記少なくとも1つのデバイス側から前記少なくとも1つのアプリケーション側へ向かう向きのデータ転送を伴う通信の依頼である第1の通信依頼と、前記少なくとも1つのアプリケーションのいずれかからの通信依頼であって前記少なくとも1つのアプリケーション側から前記少なくとも1つのデバイス側へ向かう向きのデータ転送を伴う通信の依頼である第2の通信依頼とを含む複数の通信依頼を受信する受信手段と、
    前記複数の通信依頼に基づく複数のトンネル接続要求の実行順序を制御するトンネル接続要求制御手段と、
    を備え、
    各トンネル接続要求は、前記少なくとも1つのゲートウエイのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのトンネル接続を用いた通信を行うべき旨を前記少なくとも1つのゲートウエイのいずれかに対して要求する指令であり、
    前記トンネル接続要求制御手段は、前記第1の通信依頼に基づくトンネル接続要求である第1のトンネル接続要求を、前記第2の通信依頼に基づくトンネル接続要求である第2のトンネル接続要求よりも優先して実行することを特徴とする管理サーバ。
  12. 請求項11に記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、利用ユーザによる指示に応じたユーザ指示処理の実行のための第3の通信依頼に基づくトンネル接続要求である第3のトンネル接続要求と、前記利用ユーザによる指示を前提としない管理処理の実行のための第4の通信依頼に基づくトンネル接続要求である第4のトンネル接続要求とのうち、前記第3のトンネル接続要求を前記第4のトンネル接続要求よりも優先して実行することを特徴とする管理サーバ。
  13. 請求項12に記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、
    (1)前記第1のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、
    (2)前記第1のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、
    (3)前記第2のトンネル接続要求であって前記第3のトンネル接続要求でもあるトンネル接続要求と、
    (4)前記第2のトンネル接続要求であって前記第4のトンネル接続要求でもあるトンネル接続要求と、
    前記(1)〜(4)の順序で優先順位付けして実行することを特徴とする管理サーバ。
  14. 請求項11ないし請求項13のいずれかに記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、前記ファイアウォールの内側に設けられる複数のデバイスのうち第1の閾値よりも大きな数のトンネル接続を未だ確立していない第1のデバイスに関するトンネル接続要求を、前記複数のデバイスのうち前記第1の閾値よりも大きな数のトンネル接続を既に確立している第2のデバイスに関するトンネル接続要求よりも、優先して実行することを特徴とする管理サーバ。
  15. 請求項11ないし請求項14のいずれかに記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、前記少なくとも1つのデバイスと前記少なくとも1つのアプリケーションとの間の通信を中継する複数のゲートウエイのうち第2の閾値よりも大きな数のトンネル接続を未だ確立していない第1のゲートウエイに関するトンネル接続要求を、前記複数のゲートウエイのうち前記第2の閾値よりも大きな数のトンネル接続を既に確立している第2のゲートウエイに関するトンネル接続要求よりも、優先して実行することを特徴とする管理サーバ。
  16. 請求項11ないし請求項15のいずれかに記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、前記ファイアウォールの外側に設けられる複数のアプリケーションのうち第3の閾値よりも大きな数のトンネル接続を未だ確立していない第1のアプリケーションに関するトンネル接続要求を、前記複数のアプリケーションのうち前記第3の閾値よりも大きな数のトンネル接続を既に確立している第2のアプリケーションに関するトンネル接続要求よりも、優先して実行することを特徴とする管理サーバ。
  17. 請求項11ないし請求項16のいずれかに記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、前記受信手段によって受信された前記複数の通信依頼に対応する前記複数のトンネル接続要求に対して各評価値をそれぞれ算出し、前記各評価値に基づいて前記複数のトンネル接続要求の優先順位を決定することを特徴とする管理サーバ。
  18. 請求項12または請求項13に記載の管理サーバにおいて、
    前記第3の通信依頼および前記第4の通信依頼は、それぞれ、前記少なくとも1つのデバイスのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのデータ通信を伴う通信の依頼であり、
    前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルに基づいて判定することを特徴とする管理サーバ。
  19. 請求項18に記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、前記各通信依頼と前記各通信依頼に応じた前記データ通信にて利用される通信プロトコルとの対応関係を示すデータテーブルに基づいて、前記各通信依頼に応じて実際のデータ通信にて用いられる通信プロトコルを判定することを特徴とする管理サーバ。
  20. 請求項12または請求項13に記載の管理サーバにおいて、
    前記トンネル接続要求制御手段は、前記受信手段によって受信された通信依頼に基づくトンネル接続要求が前記第3のトンネル接続要求であるか前記第4のトンネル接続要求であるかを、前記通信依頼の依頼元ユーザが利用ユーザであるか管理ユーザであるかに応じて判定することを特徴とする管理サーバ。
  21. ファイアウォールの内側に設けられる少なくとも1つのデバイスと前記ファイアウォールの外側に設けられる少なくとも1つのクラウドサーバで実行される少なくとも1つのアプリケーションとの間の通信であって少なくとも1つのゲートウエイによって中継される通信を管理する管理サーバに内蔵されたコンピュータに、
    a)前記少なくとも1つのデバイスのいずれかからの通信依頼であって前記少なくとも1つのデバイス側から前記少なくとも1つのアプリケーション側へ向かう向きのデータ転送を伴う通信の依頼である第1の通信依頼と、前記少なくとも1つのアプリケーションのいずれかからの通信依頼であって前記少なくとも1つのアプリケーション側から前記少なくとも1つのデバイス側へ向かう向きのデータ転送を伴う通信の依頼である第2の通信依頼とを含む複数の通信依頼を受信するステップと、
    b)前記複数の通信依頼に基づく複数のトンネル接続要求の実行順序を制御するステップと、
    を実行させるためのプログラムであって、
    各トンネル接続要求は、前記少なくとも1つのゲートウエイのいずれかと前記少なくとも1つのアプリケーションのいずれかとの間でのトンネル接続を用いた通信を行うべき旨を前記少なくとも1つのゲートウエイのいずれかに対して要求する指令であり、
    前記ステップb)においては、前記第1の通信依頼に基づくトンネル接続要求である第1のトンネル接続要求が、前記第2の通信依頼に基づくトンネル接続要求である第2のトンネル接続要求よりも優先して実行されることを特徴とするプログラム。
JP2015132927A 2015-07-01 2015-07-01 通信システム、管理サーバおよびプログラム Active JP6311666B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015132927A JP6311666B2 (ja) 2015-07-01 2015-07-01 通信システム、管理サーバおよびプログラム
US15/192,964 US10158501B2 (en) 2015-07-01 2016-06-24 Communication system, management server, and recording medium
CN201610509551.XA CN106330855B (zh) 2015-07-01 2016-06-30 通信系统、管理服务器以及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015132927A JP6311666B2 (ja) 2015-07-01 2015-07-01 通信システム、管理サーバおよびプログラム

Publications (2)

Publication Number Publication Date
JP2017016422A JP2017016422A (ja) 2017-01-19
JP6311666B2 true JP6311666B2 (ja) 2018-04-18

Family

ID=57684260

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015132927A Active JP6311666B2 (ja) 2015-07-01 2015-07-01 通信システム、管理サーバおよびプログラム

Country Status (3)

Country Link
US (1) US10158501B2 (ja)
JP (1) JP6311666B2 (ja)
CN (1) CN106330855B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7129773B2 (ja) 2017-12-25 2022-09-02 キヤノン電子株式会社 プリンタ及びその制御方法
JP7196560B2 (ja) 2018-11-27 2022-12-27 株式会社リコー 表示システムおよび充電制御方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10630507B2 (en) * 2016-11-29 2020-04-21 Ale International System for and method of establishing a connection between a first electronic device and a second electronic device
EP3580901B1 (en) * 2017-02-09 2021-07-28 Cumulocity GmbH Connection apparatus for establishing a secured application-level communication connection
KR101944744B1 (ko) * 2017-10-31 2019-02-01 삼성에스디에스 주식회사 메시지 처리 장치
JP6908721B2 (ja) * 2017-11-13 2021-07-28 ヤマハ発動機株式会社 通信ネットワークシステム
JP2019186658A (ja) * 2018-04-04 2019-10-24 コニカミノルタ株式会社 通信システム、プラットフォームサーバおよびプログラム
JP7331500B2 (ja) * 2019-06-28 2023-08-23 コニカミノルタ株式会社 画像形成装置及びデータ転送方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3124926B2 (ja) 1996-04-23 2001-01-15 松下電工株式会社 バーチャルlan方式
US6654792B1 (en) * 2000-02-28 2003-11-25 3Com Corporation Method and architecture for logical aggregation of multiple servers
JP2002182866A (ja) * 2000-12-13 2002-06-28 Fujitsu Ltd ネットワーク環境における印刷制御方法、プリントサーバ、クライアント、および記録媒体
JP2003016031A (ja) 2001-07-02 2003-01-17 Toshiba Corp クライアント/サーバー・システムの優先接続制御方式
KR20040029438A (ko) * 2001-08-22 2004-04-06 피어리스 시스템즈 코퍼레이션 무선 장치를 통한 인쇄를 가능하게 하는 출력 관리 시스템및 방법
KR100485801B1 (ko) * 2002-03-07 2005-04-28 삼성전자주식회사 서로 다른 사설망에 존재하는 네트워크장치들 간의직접접속을 제공하는 망접속장치 및 방법
JP2004139586A (ja) * 2002-09-24 2004-05-13 Ricoh Co Ltd 仲介装置、通信システム、仲介装置の制御方法、プログラム及び記録媒体
CN101009698A (zh) * 2006-01-26 2007-08-01 华为技术有限公司 Ims网络中保障会话发起质量的方法及网络单元和系统
JP5029823B2 (ja) 2007-09-06 2012-09-19 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、消費電力管理システム、消費電力管理方法およびプログラム
JP5093598B2 (ja) * 2008-03-28 2012-12-12 富士通株式会社 制御中継プログラム、制御中継装置および制御中継方法
US8149431B2 (en) * 2008-11-07 2012-04-03 Citrix Systems, Inc. Systems and methods for managing printer settings in a networked computing environment
JP5427056B2 (ja) * 2010-02-02 2014-02-26 キヤノン株式会社 印刷システム及びその印刷方法、画像形成装置とその制御方法及びプログラム
CN102163302B (zh) * 2010-02-24 2012-11-07 北大方正集团有限公司 环节任务处理方法及装置
US9436414B2 (en) * 2010-05-08 2016-09-06 Hewlett-Packard Development Company, L.P. Managing a printing device behind a firewall
US8996657B2 (en) * 2010-09-01 2015-03-31 Canon Kabushiki Kaisha Systems and methods for multiplexing network channels
JP2012086416A (ja) * 2010-10-18 2012-05-10 Canon Inc 画像形成装置、印刷ジョブ制御方法およびプログラム
JP5791367B2 (ja) * 2011-05-19 2015-10-07 キヤノン株式会社 画像形成装置とプロキシサーバを有するネットワークシステムおよび、その制御方法、制御プログラム、並びにプロキシサーバ
US8767257B2 (en) * 2011-06-29 2014-07-01 Konica Minolta Laboratory U.S.A., Inc. Method and system for retrieving print media attributes from a print media database server
JP6180084B2 (ja) * 2011-07-20 2017-08-16 キヤノン株式会社 画像処理装置、その制御方法及びプログラムと記憶媒体
JP5760908B2 (ja) 2011-09-29 2015-08-12 コニカミノルタ株式会社 文書出力システム、印刷管理装置およびプログラム
JP5780136B2 (ja) * 2011-11-30 2015-09-16 ブラザー工業株式会社 サーバ
JP6055201B2 (ja) * 2012-05-10 2016-12-27 キヤノン株式会社 サーバー装置、システム及びその制御方法
US9152195B2 (en) * 2013-01-21 2015-10-06 Lenovo (Singapore) Pte. Ltd. Wake on cloud
JP6107261B2 (ja) * 2013-03-15 2017-04-05 ブラザー工業株式会社 中継装置、画像処理装置および通信システム
JP5867448B2 (ja) 2013-04-26 2016-02-24 コニカミノルタ株式会社 ネットワークシステム、アクセス支援サーバ、処理装置、通信代行装置、およびコンピュータプログラム
JP2013179678A (ja) 2013-05-13 2013-09-09 Yamaha Corp ルータ装置
JP5870990B2 (ja) * 2013-12-04 2016-03-01 コニカミノルタ株式会社 中継装置、画像形成装置、中継方法および中継プログラム
JP5939242B2 (ja) * 2013-12-12 2016-06-22 コニカミノルタ株式会社 通信システム、管理サーバ、ゲートウエイおよびプログラム
JP6137149B2 (ja) * 2014-12-01 2017-05-31 コニカミノルタ株式会社 情報処理システム、クラウドサーバー、装置制御方法および装置制御プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7129773B2 (ja) 2017-12-25 2022-09-02 キヤノン電子株式会社 プリンタ及びその制御方法
JP7196560B2 (ja) 2018-11-27 2022-12-27 株式会社リコー 表示システムおよび充電制御方法

Also Published As

Publication number Publication date
CN106330855B (zh) 2020-04-03
US10158501B2 (en) 2018-12-18
CN106330855A (zh) 2017-01-11
JP2017016422A (ja) 2017-01-19
US20170005829A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
JP6311666B2 (ja) 通信システム、管理サーバおよびプログラム
JP6623797B2 (ja) 通信システム、通信中継装置およびプログラム
JP5995525B2 (ja) システム、画像形成装置、サーバー及びその制御方法
US9928013B2 (en) Print control system, method of controlling printing, and recording medium
JP6039446B2 (ja) Webサーバ装置、制御方法、そのプログラム。
US10534570B2 (en) Image forming system for relaying communication between a server on an internet and an image forming device, relay server, communication controlling method and non-transitory computer readable recording medium
US9992359B2 (en) Relay device employ technique of controlling a communication path established with a server and an image processing device when communication are relayed
JP4850394B2 (ja) 情報処理装置及び情報処理方法及びプログラム
JP5678556B2 (ja) ジョブ実行システム、ジョブ実行装置及びプログラム
US11218444B2 (en) Communication route selection based on access request
JP2019070981A5 (ja)
JP5806503B2 (ja) 通信システム、通信装置、それらの制御方法、及びプログラム
US20130176583A1 (en) Processing apparatus, processing system, and non-transitory computer readable medium
JP6500542B2 (ja) 画像形成装置、プログラム及び画像形成システム
JP6519342B2 (ja) 通信システム、通信中継装置およびプログラム
JP2009199281A (ja) データ送信装置
JP6079914B2 (ja) 印刷制御システム、印刷制御方法、情報処理装置、及び印刷制御プログラム
JP2016055587A (ja) 画像形成システム、画像形成装置およびプログラム
JP2024047095A (ja) 画像形成装置、画像形成プログラム、及び情報処理システム
JP6969233B2 (ja) 画像形成システム、印刷データ保存装置、画像形成装置及びプログラム
JP7107064B2 (ja) 端末及びプログラム
JP6801458B2 (ja) 通信システム、その管理装置、および、プログラム
US20140146359A1 (en) Image forming apparatus and recording medium
JP6008664B2 (ja) 出力指示装置、出力装置及びコンテンツ出力システム
JP2014176025A (ja) 中継装置及びfax送受信プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161020

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171017

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180305

R150 Certificate of patent or registration of utility model

Ref document number: 6311666

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150