Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6536050B2 - Communication system, control device, communication method, and computer program - Google Patents
[go: Go Back, main page]

JP6536050B2 - Communication system, control device, communication method, and computer program - Google Patents

Communication system, control device, communication method, and computer program Download PDF

Info

Publication number
JP6536050B2
JP6536050B2 JP2015018949A JP2015018949A JP6536050B2 JP 6536050 B2 JP6536050 B2 JP 6536050B2 JP 2015018949 A JP2015018949 A JP 2015018949A JP 2015018949 A JP2015018949 A JP 2015018949A JP 6536050 B2 JP6536050 B2 JP 6536050B2
Authority
JP
Japan
Prior art keywords
tunnel
connection
job
network
execute
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
JP2015018949A
Other languages
Japanese (ja)
Other versions
JP2016144057A (en
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 JP2015018949A priority Critical patent/JP6536050B2/en
Publication of JP2016144057A publication Critical patent/JP2016144057A/en
Application granted granted Critical
Publication of JP6536050B2 publication Critical patent/JP6536050B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、あるネットワークの中の装置と外の装置との通信の技術に関する。   The present invention relates to the technology of communication between devices in a network and devices outside the network.

近年、LAN(Local Area Network)に設けられている画像形成装置およびNAS(Network Attached Storage)などの装置(以下、「内部装置」と記載する。)を、LANの外の装置(以下、「外部装置」と記載する。)から遠隔的に使用する技術が、提案されている。LANには、ルータなどの装置がゲートウェイとして設けられている。   Recently, an apparatus such as an image forming apparatus provided in a LAN (Local Area Network) and an apparatus such as a NAS (Network Attached Storage) (hereinafter referred to as an "internal apparatus") is an apparatus outside the LAN (hereinafter referred to as an "external A technology that is used remotely from the device) is proposed. In the LAN, an apparatus such as a router is provided as a gateway.

外部装置と内部装置とが行う通信を改善する方法として、特許文献1、2に記載されるような方法が提案されている。   As methods for improving communication between an external device and an internal device, methods as described in Patent Documents 1 and 2 have been proposed.

特許文献1に記載される方法は、プライベートネットワークと公衆通信ネットワークとの間における通信を効率よく行う方法であって、公衆回線において使用されないことが明確にされたプライベートIPアドレス体系を持って構築されたプライベートネットワークと公衆回線との間に、NAPTルーターと、プライベートネットワークに接続されたアドレス・ポート管理転送装置とを設け、プライベートネットワークに接続されたコンピュータと公衆回線に接続されたコンピュータや公衆回線に接続されたプライベートネットワークに接続されたコンピュータとの間における公衆回線を使ったデータ通信に際して、双方向で呼び出し及びデータ通信を行うようにする。   The method described in Patent Document 1 is a method for efficiently performing communication between a private network and a public communication network, and is constructed with a private IP address system clarified not to be used on a public network. Between a private network and a public network, a NAPT router and an address / port management transfer device connected to the private network are provided, and a computer connected to the private network and a computer or public network connected to the public network In data communication using a public circuit between a computer connected to a connected private network, calling and data communication can be performed bidirectionally.

特許文献2に記載される方法は、最低保障帯域を確保しつつ、リソースに空きがある場合に最低保障帯域を超えてパケットの送出を可能にするための補正であって、IPNWに設定された優先トンネルおよび非優先トンネルを介してデータの送受信を行うゲートウェイ装置は、パケットを受信すると、ポリシング設定部が、そのパケットを優先処理(帯域保障の設定)すべきか否かを判定し、優先処理すべきと判定した場合に、フローごとの上限帯域をポリシング情報を参照して設定する。そして、トンネル選択部は、設定された上限帯域までのパケットは、優先トンネルを用いて送信するように選択し、上限帯域を超えたパケットは、非優先トンネルを用いて送信するように選択する。トンネル選択部が選択したトンネルを用いて、パケット送信部がパケットの転送を行う。   The method described in Patent Document 2 is a correction for enabling transmission of a packet beyond the minimum guaranteed bandwidth when resources are available while securing the minimum guaranteed bandwidth, and is set in the IPNW. When the gateway apparatus that transmits and receives data via the priority tunnel and the non-priority tunnel receives a packet, the policing setting unit determines whether the packet should be subjected to priority processing (setting of bandwidth guarantee) or not. When it is determined that it should be performed, the upper limit bandwidth for each flow is set with reference to policing information. Then, the tunnel selection unit selects packets up to the set upper limit band to be transmitted using the priority tunnel, and selects packets exceeding the upper limit band to be transmitted using the non-priority tunnel. The packet transmission unit transfers the packet using the tunnel selected by the tunnel selection unit.

特開2004−228736号公報JP 2004-228736 A 特開2012−44344号公報JP 2012-44344 A

外部装置と内部装置とが通信を行う際は、物理的には、ゲートウェイを経由する。通信がトンネルを介して行われると、ゲートウェイにおけるパケットのカプセル化、および、カプセル化されたパケットのデコードの負荷が掛かる。したがって、同時期に行われる通信の数が多いほど、ゲートウェイの負荷が大きくなる。   When the external device and the internal device communicate, they physically go through the gateway. When communication is performed via a tunnel, packet encapsulation at the gateway and decoding of the encapsulated packet are burdened. Thus, the greater the number of simultaneous communications, the greater the load on the gateway.

本発明は、このような問題点に鑑み、外部装置と内部装置との通信に伴うゲートウェイの負荷を従来よりも軽減することを目的とする。   SUMMARY OF THE INVENTION In view of such problems, the present invention aims to reduce the load on the gateway involved in the communication between an external device and an internal device as compared with the prior art.

本発明の一形態に係る通信システムは、特定のネットワークに設けられる第一の装置と、前記ネットワークの外部に設けられる第二の装置と、によって構成される通信システムであって、前記第二の装置に、前記ネットワークのゲートウェイと当該第二の装置との間のトンネル以外の、当該ゲートウェイおよび当該第二の装置の少なくとも一方を端とする第二のトンネルの数が所定の数以上になる場合に、当該トンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立の要求を当該第一の装置に対して与える要求手段と、前記コネクションが確立される前は、前記トンネルを介して前記第一の装置へ特定のジョブの実行のために使用するデータの一部分を送信し、当該コネクションが確立された後は、当該コネクションを介して当該第一の装置へ、当該特定のジョブの実行の指令および当該データの残りを送信する指令手段と、が設けられ、前記第一の装置に、前記コネクションを確立する確立手段、が設けられ、前記第二の装置に、さらに、前記要求を与えた後、前記トンネルを切断する切断手段、が設けられる。
本発明の他の一形態に係る通信システムは、特定のネットワークに設けられる第一の装置と、前記ネットワークの外部に設けられる第二の装置と、によって構成される通信システムであって、前記第二の装置に、前記ネットワークのゲートウェイと当該第二の装置との間のトンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立の要求を当該第一の装置に対して与える要求手段と、前記コネクションを介して前記第一の装置へ特定のジョブの実行の指令を送信し、さらに、前記トンネルが切断されるまでは、当該コネクションおよび当該トンネルを介して当該第一の装置へ、当該特定のジョブの実行のために使用するデータを当該トンネルおよび当該コネクションに分けて送信し、当該トンネルが切断された後は、当該コネクションを介して当該第一の装置へ当該データを送信する、指令手段と、が設けられ、前記第一の装置に、前記コネクションを確立する確立手段、が設けられ、前記第二の装置に、さらに、前記要求を与えた後、前記トンネルを切断する切断手段、が設けられる。
本発明の他の一形態に係る通信システムは、特定のジョブを実行する、特定のネットワークに設けられる第一の装置と、前記ネットワークの外部に設けられる第二の装置と、によって構成される通信システムであって、前記第二の装置に、前記特定のジョブが複数ある場合に前記ネットワークのゲートウェイと当該第二の装置との間に当該特定のジョブごとに1つずつ確立されたトンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立の要求を当該第一の装置に対して与える要求手段、が設けられ、前記第一の装置に、前記複数の特定のジョブのうちの優先度の低いジョブから優先的に、当該ジョブのために前記コネクションを確立する確立手段、が設けられ、前記第二の装置に、さらに、前記要求を与えた後、前記トンネルを切断する切断手段、が設けられる。
A communication system according to an aspect of the present invention is a communication system including a first device provided in a specific network and a second device provided outside the network, When the number of second tunnels having at least one of the gateway and the second device other than the tunnel between the gateway of the network and the second device is greater than or equal to a predetermined number. Request means for giving the first device a request for establishing a connection between the first device and the second device via the tunnel, and before the connection is established. Transmitting part of data used for execution of a specific job to the first device through the tunnel, and after the connection is established, the connection To the first device via a command means for transmitting the remaining instructions and the data of the execution of the specific job, it is provided to the first device, establishing means for establishing the connection, but And means for disconnecting the tunnel after the second device is provided with the request.
A communication system according to another aspect of the present invention is a communication system including a first device provided in a specific network and a second device provided outside the network, The second device requests the establishment of a connection between the first device and the second device via the tunnel between the gateway of the network and the second device, the first device Request means for giving to the first device via the connection, and a command for execution of a specific job to the first device, and further, until the tunnel is disconnected, the connection and the tunnel via the connection. Data to be used for execution of the specific job is divided into the tunnel and the connection and transmitted to the first device, and after the tunnel is disconnected, Command means for transmitting the data to the first device via the connection, the first device being provided with establishment means for establishing the connection, and the second device being provided Furthermore, a disconnecting means is provided for disconnecting the tunnel after giving the request.
A communication system according to another aspect of the present invention is a communication configured by a first device provided in a specific network and a second device provided outside the network, which executes a specific job. The system, wherein, when there are a plurality of the specific jobs in the second device, one tunnel is established between the gateway of the network and the second device for each of the specific jobs. Request means for providing the first device with a request for establishing a connection between the first device and the second device, the first device being provided with the plurality of identification devices Establishing means for establishing the connection for the job from the lower priority job among the jobs in the first job, and after giving the second apparatus the request, Cutting means for cutting the tunnel, it is provided.

本発明によると、ネットワークの中の装置と外の装置との通信に伴うゲートウェイの負荷を従来よりも軽減することができる。   According to the present invention, it is possible to reduce the load on the gateway associated with communication between a device in the network and a device outside the network.

情報処理システムの全体的な構成の例を示す図である。It is a figure which shows the example of the whole structure of an information processing system. ゲートウェイのハードウェア構成の例を示す図である。It is a figure which shows the example of the hardware constitutions of a gateway. 画像形成装置のハードウェア構成の例を示す図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of an image forming apparatus. クラウドサーバおよび管理サーバのハードウェア構成の例を示す図である。It is a figure which shows the example of the hardware constitutions of a cloud server and a management server. 画像形成装置およびゲートウェイそれぞれの機能的構成の例を示す図である。FIG. 2 is a diagram showing an example of the functional configuration of each of the image forming apparatus and the gateway. クラウドサーバおよび管理サーバそれぞれの機能的構成の例を示す図である。It is a figure which shows the example of a functional structure of each of a cloud server and a management server. デバイス属性データの例を示す図である。It is a figure which shows the example of device attribute data. 印刷ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、および画像形成装置それぞれの処理の流れの例を示すシーケンス図である。FIG. 6 is a sequence diagram showing an example of the flow of processing of each of a cloud server, a management server, a gateway, and an image forming apparatus during a print job. 印刷ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、および画像形成装置それぞれの処理の流れの例を示すシーケンス図である。FIG. 6 is a sequence diagram showing an example of the flow of processing of each of a cloud server, a management server, a gateway, and an image forming apparatus during a print job. セキュア保存ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、およびファイルサーバそれぞれの処理の流れの例を示すシーケンス図である。FIG. 14 is a sequence diagram showing an example of the flow of processing of each of the cloud server, the management server, the gateway, and the file server in the case of a secure storage job. クラウドサーバの全体的な処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of the whole processing of a cloud server. ゲートウェイおよび画像形成装置それぞれの機能的構成の例を示す図である。FIG. 2 is a diagram showing an example of the functional configuration of each of a gateway and an image forming apparatus. クラウドサーバおよび管理サーバそれぞれの機能的構成の例を示す図である。It is a figure which shows the example of a functional structure of each of a cloud server and a management server. 印刷ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、および画像形成装置それぞれの処理の流れの例を示すシーケンス図である。FIG. 6 is a sequence diagram showing an example of the flow of processing of each of a cloud server, a management server, a gateway, and an image forming apparatus during a print job. 印刷ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、および画像形成装置それぞれの処理の流れの例を示すシーケンス図である。FIG. 6 is a sequence diagram showing an example of the flow of processing of each of a cloud server, a management server, a gateway, and an image forming apparatus during a print job. クラウドサーバの全体的な処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of the whole processing of a cloud server. クラウドサーバの全体的な処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of the whole processing of a cloud server. 印刷ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、および画像形成装置それぞれの処理の流れの変形例を示すシーケンス図である。FIG. 14 is a sequence diagram showing a modified example of the flow of processing of each of the cloud server, the management server, the gateway, and the image forming apparatus at the time of a print job. 印刷ジョブの際のクラウドサーバ、管理サーバ、ゲートウェイ、および画像形成装置それぞれの処理の流れの変形例を示すシーケンス図である。FIG. 14 is a sequence diagram showing a modified example of the flow of processing of each of the cloud server, the management server, the gateway, and the image forming apparatus at the time of a print job.

〔第一の実施形態〕
図1は、情報処理システム5の全体的な構成の例を示す図である。図2は、ゲートウェイ16のハードウェア構成の例を示す図である。図3は、画像形成装置10のハードウェア構成の例を示す図である。図4は、クラウドサーバ21および管理サーバ24のハードウェア構成の例を示す図である。
First Embodiment
FIG. 1 is a diagram showing an example of the overall configuration of the information processing system 5. FIG. 2 is a diagram showing an example of the hardware configuration of the gateway 16. FIG. 3 is a diagram showing an example of the hardware configuration of the image forming apparatus 10. As shown in FIG. FIG. 4 is a diagram showing an example of the hardware configuration of the cloud server 21 and the management server 24. As shown in FIG.

図1に示すように、情報処理システム5は、ローカルエリアネットワーク1、クラウドサーバ21、管理サーバ24、端末装置3、および通信回線4などによって構成される。   As shown in FIG. 1, the information processing system 5 includes a local area network 1, a cloud server 21, a management server 24, a terminal device 3, a communication line 4 and the like.

ローカルエリアネットワーク1は、役所、企業、または学校などに設けられる。ローカルエリアネットワーク1は、画像形成装置10、端末装置14、ファイルサーバ15、ゲートウェイ16、および通信回線17などによって構成される。   The local area network 1 is provided in a public office, a company, or a school. The local area network 1 includes an image forming apparatus 10, a terminal device 14, a file server 15, a gateway 16, a communication line 17, and the like.

ゲートウェイ16、クラウドサーバ21、管理サーバ24、および端末装置3は、通信回線4を介して通信を行うことができる。通信回線4としてインターネット回線が用いられる。   The gateway 16, the cloud server 21, the management server 24, and the terminal device 3 can communicate via the communication line 4. An Internet line is used as the communication line 4.

ゲートウェイ16は、ローカルエリアネットワーク1の各装置とクラウドサーバ21、管理サーバ24、および端末装置3との間で行われる通信を中継する。   The gateway 16 relays communication performed between each device of the local area network 1 and the cloud server 21, the management server 24, and the terminal device 3.

ただし、ローカルエリアネットワーク1の外の装置(以下、「外部装置」と記載する。)からローカルエリアネットワーク1の中の装置(以下、「内部装置」と記載する。)へのアクセスを厳しく制限する。特に、内部装置から外部装置へアクセスしコネクション(接続)を確立することはできるが、外部装置から内部装置へアクセスしコネクションを確立することはできない。   However, the access from devices outside the local area network 1 (hereinafter referred to as “external devices”) to devices within the local area network 1 (hereinafter referred to as “internal devices”) is strictly limited. . In particular, although the internal device can access and establish a connection from the external device, the external device can not access and establish the connection from the internal device.

ゲートウェイ16は、図2に示すように、CPU(Central Processing Unit)16a、RAM(Random Access Memory)16b、ROM(Read Only Memory)16c、フラッシュメモリ16d、WAN(Wide Area Network)ポート16e、LAN(Local Area Network)ポート16fのほか種々の回路によって構成される。ゲートウェイ16として、例えば、SaaS(Software as a Service)型ゲートウェイが用いられる。「SaaS型ゲートウェイ」は、SaaSゲートウェイ機能を持った機器であって、ルーティングの機能、HTTPトンネルの機能、XMPP(eXtensible Messaging and Presence Protocol)クライアントの機能、および制御用のソフトウエアなどによって構成される機器である。   The gateway 16 is, as shown in FIG. 2, a central processing unit (CPU) 16a, a random access memory (RAM) 16b, a read only memory (ROM) 16c, a flash memory 16d, a wide area network (WAN) port 16e, a LAN (LAN). It is configured by various circuits in addition to the Local Area Network port 16f. For example, a software as a service (SaaS) type gateway is used as the gateway 16. The “SaaS-type gateway” is a device having a SaaS gateway function, and is configured by a routing function, an HTTP tunnel function, an XMPP (eXtensible Messaging and Presence Protocol) client function, and software for control. It is a device.

WANポート16eは、インターネット側の回線すなわち通信回線4が繋がれる。LANポート16fは、ローカルエリアネットワーク1側の回線すなわち通信回線17が繋がれる。   The WAN port 16e is connected to a line on the Internet side, ie, the communication line 4. The LAN port 16 f is connected to a line on the side of the local area network 1, that is, a communication line 17.

ROM16cまたはフラッシュメモリ16dには、データ中継プログラム16Pが記憶されている。データ中継プログラム16Pは、RAM16bにロードされ、CPU16aによって実行される。   A data relay program 16P is stored in the ROM 16c or the flash memory 16d. The data relay program 16P is loaded into the RAM 16b and executed by the CPU 16a.

通信回線17は、ツイストペアケーブルおよびハブなどによって構成される。画像形成装置10、端末装置14、またはファイルサーバ15が無線LANの機能を有する場合は、さらに通信回線17に無線基地局を設けてもよい。   The communication line 17 is configured by a twisted pair cable, a hub, and the like. When the image forming apparatus 10, the terminal device 14, or the file server 15 has a wireless LAN function, the communication line 17 may be further provided with a wireless base station.

画像形成装置10は、コピー、スキャン、ファックス、またはPCプリントなどの機能を備えた画像処理装置である。「複合機」または「MFP(Multi Function Peripherals)」などと呼ばれることもある。   The image forming apparatus 10 is an image processing apparatus provided with functions such as copying, scanning, faxing, and PC printing. It may also be called "MFP" or "MFP (Multi Function Peripherals)".

画像形成装置10は、図3に示すように、CPU10a、RAM10b、ROM10c、補助記憶装置10d、タッチパネルディスプレイ10e、操作キーパネル10f、NIC10g、モデム10h、スキャンユニット10i、画像処理部10j、およびプリントユニット10kなどによって構成される。   As shown in FIG. 3, the image forming apparatus 10 includes a CPU 10a, a RAM 10b, a ROM 10c, an auxiliary storage device 10d, a touch panel display 10e, an operation key panel 10f, an NIC 10g, a modem 10h, a scan unit 10i, an image processing unit 10j, and a print unit 10k. Composed of

タッチパネルディスプレイ10eは、ユーザに対するメッセージを示す画面、ユーザがコマンドまたは情報を入力するための画面、およびCPU10aなどが実行した処理の結果を示す画面などを表示する。また、タッチパネルディスプレイ10eは、タッチされた位置を示す信号をCPU10aへ送る。   The touch panel display 10e displays a screen showing a message for the user, a screen for the user to input a command or information, and a screen showing a result of processing executed by the CPU 10a or the like. Further, the touch panel display 10 e sends a signal indicating the touched position to the CPU 10 a.

操作キーパネル10fは、いわゆるハードウェアキーボードであって、テンキー、スタートキー、ストップキー、電源キー、および種々のファンクションキーなどのキーによって構成される。   The operation key panel 10f is a so-called hardware keyboard, and includes keys such as a ten key, a start key, a stop key, a power key, and various function keys.

NIC10gは、通信回線17などを介してローカルエリアネットワーク1の内外の装置(端末装置14およびクラウドサーバ21など)と通信を行うための装置である。   The NIC 10 g is a device for communicating with devices inside and outside the local area network 1 (such as the terminal device 14 and the cloud server 21) via the communication line 17 or the like.

モデム10hは、ファクシミリ端末との間でG3などのプロトコルで画像データをやり取りする。   The modem 10 h exchanges image data with the facsimile terminal according to a protocol such as G3.

スキャンユニット10iは、プラテンガラスの上にセットされた用紙に記されている画像を読み取って画像データを生成する。   The scan unit 10i reads an image written on a sheet set on a platen glass to generate image data.

画像処理部10jは、NIC10g、モデム10h、またはスキャンユニット10iによって得られた画像データに対して解像度の変換、傾き補正、および天地補正などの処理を行う。   The image processing unit 10j performs processing such as resolution conversion, tilt correction, and top-bottom correction on image data obtained by the NIC 10g, the modem 10h, or the scan unit 10i.

プリントユニット10kは、スキャンユニット10iによって読み取られた画像のほか、他の装置から受信した画像を、画像処理部10jによって処理が必要に応じて施された後、用紙に印刷する。   The print unit 10k prints an image received from another apparatus, as well as the image read by the scan unit 10i, on a sheet of paper after the image processing unit 10j performs processing as necessary.

ROM10cまたは補助記憶装置10dには、上述のコピーなどの機能を実現するためのプログラムが記憶されている。さらに、連携プログラム10Pが記憶されている。   The ROM 10c or the auxiliary storage device 10d stores a program for realizing the above-mentioned functions such as copying. Further, the cooperation program 10P is stored.

これらのプログラムは、必要に応じてRAM10bにロードされ、CPU10aによって実行される。補助記憶装置10dとして、HDD(Hard Disk Drive)またはSSD(Solid State Drive)などが用いられる。   These programs are loaded into the RAM 10b as needed, and executed by the CPU 10a. An HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like is used as the auxiliary storage device 10d.

端末装置14は、画像形成装置10のサービスを使用するためのクライアントである。端末装置14として、パーソナルコンピュータ、スマートフォン、またはタブレットコンピュータなどが用いられる。   The terminal device 14 is a client for using the service of the image forming apparatus 10. As the terminal device 14, a personal computer, a smartphone, a tablet computer, or the like is used.

ファイルサーバ15は、ファイルを記憶し、他の装置からの要求に基づいてファイルを提供する。ファイルサーバ15として、NAS(Network Attached Storage)が用いられる。   The file server 15 stores files and provides files based on requests from other devices. A NAS (Network Attached Storage) is used as the file server 15.

クラウドサーバ21は、いわゆるクラウドサービスを提供するためのサーバである。特に、クラウドサーバ21のクラウドサービスによると、外部装置から画像形成装置10へ印刷ジョブを与え、画像形成装置10に印刷を行わせることができる。また、外部装置からファイルサーバ15へファイルを保存することができる。クラウドサーバ21として、いわゆるサーバ機が用いられる。   The cloud server 21 is a server for providing a so-called cloud service. In particular, according to the cloud service of the cloud server 21, a print job can be given from the external apparatus to the image forming apparatus 10, and the image forming apparatus 10 can perform printing. Also, files can be saved from the external device to the file server 15. A so-called server machine is used as the cloud server 21.

クラウドサーバ21は、図4に示すように、CPU20a、RAM20b、ROM20c、補助記憶装置20d、およびNIC20eなどによって構成される。   As shown in FIG. 4, the cloud server 21 includes a CPU 20a, a RAM 20b, a ROM 20c, an auxiliary storage device 20d, an NIC 20e, and the like.

ROM20cまたは補助記憶装置20dには、上述のクラウドサービスを提供するためのサーバプログラム21Pが記憶されている。サーバプログラム21Pは、RAM20bにロードされ、CPU20aによって実行される。   The ROM 20c or the auxiliary storage device 20d stores a server program 21P for providing the above-described cloud service. The server program 21P is loaded into the RAM 20b and executed by the CPU 20a.

管理サーバ24は、ローカルエリアネットワーク1の内部装置に関する情報を管理し、外部装置から内部装置へのアクセスを可能にするための支援を行う。   The management server 24 manages information on internal devices of the local area network 1 and supports external devices to allow access to the internal devices.

管理サーバ24のハードウェアの構成も、クラウドサーバ21のハードウェアの構成と同様であって、図4に示した通りである。ただし、ROM20cまたは補助記憶装置20dには、サーバプログラム21Pの代わりに管理プログラム24Pが記憶されている。   The hardware configuration of the management server 24 is also the same as the hardware configuration of the cloud server 21, as shown in FIG. However, in place of the server program 21P, a management program 24P is stored in the ROM 20c or the auxiliary storage device 20d.

端末装置3は、画像形成装置10をローカルエリアネットワーク1の外から使用するためのクライアントである。端末装置3として、パーソナルコンピュータ、スマートフォン、またはタブレットコンピュータなどが用いられる。   The terminal device 3 is a client for using the image forming apparatus 10 from the outside of the local area network 1. As the terminal device 3, a personal computer, a smartphone, a tablet computer, or the like is used.

端末装置3には、クラウドサーバ21のサービスを使用するためのアプリケーションがインストールされている。   In the terminal device 3, an application for using the service of the cloud server 21 is installed.

図5は、画像形成装置10およびゲートウェイ16それぞれの機能的構成の例を示す図である。図6は、クラウドサーバ21および管理サーバ24それぞれの機能的構成の例を示す図である。   FIG. 5 is a diagram showing an example of the functional configuration of each of the image forming apparatus 10 and the gateway 16. FIG. 6 is a diagram showing an example of the functional configuration of each of the cloud server 21 and the management server 24. As shown in FIG.

連携プログラム10P、データ中継プログラム16P、サーバプログラム21P、および管理プログラム24Pによると、ユーザは、端末装置3を操作して画像形成装置10に印刷ジョブを実行させたりファイルサーバ15にファイルを保存させたりすることができる。さらに、これらのプログラムによると、従来よりもゲートウェイ16の負荷を軽減することができる。以下、これらの仕組みを、図5〜図7などを参照しながら説明する。   According to the cooperation program 10P, the data relay program 16P, the server program 21P, and the management program 24P, the user operates the terminal device 3 to cause the image forming apparatus 10 to execute a print job or cause the file server 15 to save a file. can do. Furthermore, according to these programs, the load on the gateway 16 can be reduced as compared to the conventional case. Hereinafter, these mechanisms will be described with reference to FIGS.

データ中継プログラム16Pを実行することによって、図5に示すトンネル確立部161、第一の外内中継部162、第一の内外中継部163、第二の外内中継部164、第二の内外中継部165、ログデータ書込部166、ログデータ保存部167、およびトンネル切断部168などがゲートウェイ16に実現される。   By executing the data relay program 16P, the tunnel establishment unit 161, the first outer / inner relay unit 162, the first inner / outer relay unit 163, the second outer / inner relay unit 164, the second inner / outer relay shown in FIG. The unit 165, the log data writing unit 166, the log data storage unit 167, the tunnel disconnection unit 168, and the like are realized in the gateway 16.

なお、トンネル確立部161ないしトンネル切断部168の全部または一部を、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)などの回路によってハードウェアモジュールとして実現してもよい。画像形成装置10、クラウドサーバ21、および管理サーバ24それぞれの後述する各部についても、同様である。   Note that all or part of the tunnel establishing unit 161 to the tunnel disconnecting unit 168 may be realized as a hardware module by a circuit such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC). The same applies to respective units described later of the image forming apparatus 10, the cloud server 21, and the management server 24.

連携プログラム10Pを実行することによって、図5に示すコネクション確立部101、ジョブ実行制御部102、ジョブ完了通知部103、およびログ通知部104などが画像形成装置10に実現される。   By executing the cooperation program 10P, the connection establishing unit 101, the job execution control unit 102, the job completion notification unit 103, the log notification unit 104, etc. shown in FIG. 5 are realized in the image forming apparatus 10.

サーバプログラム21Pを実行することによって、図6に示すジョブ指令受付部201、トンネル要求部202、トンネル確立部203、機能問合部204、直接通信可否判別部205、コネクション要求部206、コネクション確立部207、トンネル切断部208、ジョブ付与部209、およびコネクション切断部210などがクラウドサーバ21に実現される。   By executing the server program 21P, the job command reception unit 201, the tunnel request unit 202, the tunnel establishment unit 203, the function inquiry unit 204, the direct communication availability determination unit 205, the connection request unit 206, and the connection establishment unit illustrated in FIG. The cloud server 21 is realized with 207, a tunnel disconnection unit 208, a job assignment unit 209, a connection disconnection unit 210, and the like.

管理プログラム24Pを実行することによって、図6に示す機能記憶部241、要求転送部242、および機能回答部243などが管理サーバ24に実現される。   By executing the management program 24P, the function storage unit 241, the request transfer unit 242, the function response unit 243, and the like illustrated in FIG.

〔準備〕
図7は、デバイス属性データ7Aの例を示す図である。
[Preparation]
FIG. 7 is a diagram showing an example of the device attribute data 7A.

管理サーバ24の機能記憶部241には、クラウドサーバ21のクラウドサービスを介して外部装置から使用することができる内部装置ごとの機能に関する情報が、予め、記憶されている。   The function storage unit 241 of the management server 24 stores, in advance, information related to functions of each internal device that can be used by an external device via the cloud service of the cloud server 21.

具体的には、図7に示すように、画像形成装置10およびファイルサーバ15などの内部装置それぞれのデバイス属性データ7Aが記憶されている。以下、画像形成装置10およびファイルサーバ15それぞれのデバイス属性データ7Aを「デバイス属性データ7A1」および「デバイス属性データ7A2」と区別して記載することがある。   Specifically, as shown in FIG. 7, device attribute data 7A of each of the internal devices such as the image forming device 10 and the file server 15 are stored. Hereinafter, the device attribute data 7A of the image forming apparatus 10 and the file server 15 may be described separately from “device attribute data 7A1” and “device attribute data 7A2”.

デバイス属性データ7Aにおいて、「デバイスコード」フィールドは、このデバイス属性データ7Aに係る内部装置の識別子を示す。例えばデバイス属性データ7A1のデバイスコードには、画像形成装置10の識別子が示される。   In the device attribute data 7A, the "device code" field indicates an identifier of an internal device related to the device attribute data 7A. For example, an identifier of the image forming apparatus 10 is indicated in the device code of the device attribute data 7A1.

「コネクション確立機能有無」フィールドは、このデバイス属性データ7Aに係る内部装置が外部装置とのコネクションを確立する機能(以下、「コネクション確立機能」と記載する。)を有するか否かを示す。「有」は、コネクション確立機能を有することを意味し、「無」は、コネクション確立機能を有しないことを意味する。   The "connection establishment function presence / absence" field indicates whether or not the internal device related to the device attribute data 7A has a function of establishing a connection with an external device (hereinafter referred to as "connection establishment function"). "Yes" means having a connection establishment function, and "No" means not having a connection establishment function.

「スペック」フィールドは、このデバイス属性データ7Aに係る内部装置が有する、コネクション確立機能以外の機能を示す。   The "spec" field indicates a function other than the connection establishment function that the internal device related to the device attribute data 7A has.

デバイス属性データ7Aの内容は、予め管理者によって入力され、機能記憶部241に登録される。   The content of the device attribute data 7A is previously input by the administrator and registered in the function storage unit 241.

〔ジョブの指令の受付およびトンネルの確立〕
クラウドサーバ21のジョブ指令受付部201は、端末装置3からジョブの指令を受け付ける。以下、特に、画像を用紙に印刷するジョブである印刷ジョブまたはファイルを暗号化して保存するセキュア保存ジョブの指令を受け付ける場合を例に説明する。
[Accept job order and establish tunnel]
The job command receiving unit 201 of the cloud server 21 receives a job command from the terminal device 3. Hereinafter, in particular, a case of receiving an instruction of a secure storage job that encrypts and stores a print job or a file that is a job for printing an image on paper will be described as an example.

また、この際に、ジョブ指令受付部201は、ジョブに使用するデータを端末装置3から受信する。例えば、印刷ジョブの場合は、印刷する画像の画像データ7Bを受信する。また、セキュア保存ジョブの場合は、保存するファイル7Cを受信する。さらに、ジョブを実行させる内部装置の指定を受け付ける。以下、指定された内部装置を「指定装置」と記載する。   Further, at this time, the job command receiving unit 201 receives data to be used for the job from the terminal device 3. For example, in the case of a print job, the image data 7B of the image to be printed is received. In the case of a secure storage job, the file 7C to be stored is received. Furthermore, the specification of the internal device for executing the job is received. Hereinafter, the designated internal device will be referred to as "designated device".

トンネル要求部202は、ジョブの指令がジョブ指令受付部201によって受け付けられると、クラウドサーバ21とゲートウェイ16との間のトンネルの確立を管理サーバ24に対して要求する。この際に、トンネル確立コマンド7Dを管理サーバ24へ送信する。トンネル確立コマンド7Dには、クラウドサーバ21の識別子(例えば、IP(Internet Protocol)アドレス)が示されている。   When a job command is received by the job command receiving unit 201, the tunnel request unit 202 requests the management server 24 to establish a tunnel between the cloud server 21 and the gateway 16. At this time, a tunnel establishment command 7D is sent to the management server 24. The tunnel establishment command 7D indicates an identifier of the cloud server 21 (for example, an IP (Internet Protocol) address).

すると、管理サーバ24において、要求転送部242は、クラウドサーバ21からのトンネル確立コマンド7Dをゲートウェイ16へ転送する。   Then, in the management server 24, the request transfer unit 242 transfers the tunnel establishment command 7 D from the cloud server 21 to the gateway 16.

ゲートウェイ16において、トンネル確立部161は、トンネル確立コマンド7Dを管理サーバ24から受信すると、トンネル確立コマンド7Dに基づいてクラウドサーバ21へアクセスする。   In the gateway 16, when the tunnel establishment unit 161 receives the tunnel establishment command 7D from the management server 24, the tunnel establishment unit 161 accesses the cloud server 21 based on the tunnel establishment command 7D.

そして、トンネル確立部161およびクラウドサーバ21のトンネル確立部203は、ゲートウェイ16とクラウドサーバ21との間でトンネルを確立する。トンネルの確立は、公知の方法によって行われる。   Then, the tunnel establishing unit 161 and the tunnel establishing unit 203 of the cloud server 21 establish a tunnel between the gateway 16 and the cloud server 21. The establishment of the tunnel is done by known methods.

トンネル要求部202は、ジョブの指令が端末装置3から与えられるごとに、トンネルの確立を要求する。よって、ジョブごとにトンネルが確立される。   The tunnel request unit 202 requests establishment of a tunnel each time a command of a job is given from the terminal device 3. Thus, a tunnel is established for each job.

〔トンネルの削減およびジョブの指令〕
上述の通り、外部装置からジョブの指令があるごとに外部装置とゲートウェイ16との間にトンネルを確立すると、トンネルの数が増え、ゲートウェイ16の負荷が増加してしまう。すると、内部装置と外部装置との間の通信が滞ることがある。これを未然に防止するために、同時期に存在させることができるトンネルの数を限定する場合もある。この場合は、外部装置が内部装置に実行させるジョブが制限されることがある。
[Tunnel reduction and job command]
As described above, when a tunnel is established between the external device and the gateway 16 each time there is a job command from the external device, the number of tunnels increases and the load on the gateway 16 increases. Then, communication between the internal device and the external device may be interrupted. In order to prevent this, the number of tunnels that can be present at the same time may be limited. In this case, the job that the external device causes the internal device to execute may be limited.

そこで、ゲートウェイ16の負荷を軽減するためにトンネルの削減の処理が次のように実行される。   Therefore, in order to reduce the load on the gateway 16, the process of tunnel reduction is performed as follows.

クラウドサーバ21において、機能問合部204は、トンネルが確立されたら、指定装置(端末装置3によって指定された内部装置)がコネクション確立機能を有しているか否かを管理サーバ24に対して問い合せる。この際に、指定装置のデバイス識別子を示す問合データ7Eを管理サーバ24へ送信する。   In the cloud server 21, when the tunnel is established, the function inquiry unit 204 inquires the management server 24 whether or not the designated device (the internal device designated by the terminal device 3) has a connection establishing function. . At this time, inquiry data 7E indicating the device identifier of the designated device is transmitted to the management server 24.

すると、管理サーバ24において、機能回答部243は、問合データ7Eに示される内部装置のデバイス属性データ7A(図7参照)に基づいて、コネクション確立機能の有無をチェックし、その結果を示す回答データ7Fをクラウドサーバ21へ送信する。例えば、画像形成装置10が指定された場合は、デバイス属性データ7A1のコネクション確立機能フィールドに「有」が示されるので、機能回答部243は、コネクション確立機能を有している旨を示すデータを回答データ7Fとしてクラウドサーバ21へ送信する。   Then, in the management server 24, the function response unit 243 checks the presence or absence of the connection establishment function based on the device attribute data 7A (refer to FIG. 7) of the internal device shown in the inquiry data 7E. Data 7F is transmitted to the cloud server 21. For example, when the image forming apparatus 10 is designated, “Yes” is indicated in the connection establishment function field of the device attribute data 7A1, so the function reply unit 243 indicates data indicating that the connection establishment function is provided. It transmits to the cloud server 21 as answer data 7F.

クラウドサーバ21において、直接通信可否判別部205は、回答データ7Fが機能問合部204によって得られると、これに基づいて、指定装置と直接的に(トンネルを介さずに)通信を行うことができるか否かを判別する。具体的には、コネクション確立機能を有している旨がこの回答データ7Fに示されていれば、直接的に通信を行うことができると判別する。コネクション確立機能を有していない旨が示されていれば、直接的に通信を行うことができないと判別する。   In the cloud server 21, when the response data 7F is obtained by the function inquiry unit 204, the direct communication possibility determination unit 205 can directly communicate with the designated device (without passing through a tunnel) based on this. Determine if you can. Specifically, if the response data 7F indicates that the connection establishment function is included, it is determined that communication can be performed directly. If it is indicated that the connection establishment function is not provided, it is determined that communication can not be performed directly.

コネクション要求部206は、指定装置と直接的に通信を行うことができると直接通信可否判別部205によって判別されたら、トンネル確立部203によって確立されたトンネルを経由して、クラウドサーバ21と指定装置との間のコネクションを確立するように指定装置に対して要求する。この際に、クラウドサーバ21の識別子(例えば、IPアドレス)を示すコネクション確立コマンド7Gを指定装置へ送信する。   If it is determined by the direct communication availability determination unit 205 that the connection request unit 206 can directly communicate with the designated device, the cloud server 21 and the designated device are connected via the tunnel established by the tunnel establishment unit 203. Request the designated device to establish a connection between At this time, a connection establishment command 7G indicating an identifier (for example, an IP address) of the cloud server 21 is transmitted to the designated device.

以下、画像形成装置10がコネクション確立機能を有し、指定装置が画像形成装置10である場合を例に説明する。   Hereinafter, the case where the image forming apparatus 10 has a connection establishing function and the designation device is the image forming apparatus 10 will be described as an example.

画像形成装置10において、コネクション確立部101は、コネクション確立コマンド7Gを受信すると、コネクション確立コマンド7Gに基づいてクラウドサーバ21へアクセスする。   In the image forming apparatus 10, when receiving the connection establishment command 7G, the connection establishment unit 101 accesses the cloud server 21 based on the connection establishment command 7G.

そして、コネクション確立部101およびクラウドサーバ21のコネクション確立部207は、画像形成装置10とクラウドサーバ21との間でコネクションを確立する。コネクションの確立は、公知の方法によって行われる。   Then, the connection establishing unit 101 and the connection establishing unit 207 of the cloud server 21 establish a connection between the image forming apparatus 10 and the cloud server 21. The connection is established by a known method.

トンネル切断部208は、コネクションが確立されたら、このコネクションを確立するために使用したトンネルを切断(開放)する。   When the connection is established, the tunnel disconnection unit 208 disconnects (opens) the tunnel used to establish this connection.

ジョブ付与部209は、トンネルの切断の処理と前後してまたは並行して、コネクションを介して指定装置へジョブの指令を与える。この際に、ジョブに必要なデータ(画像データ7Bまたはファイル7Cなど)を指定装置へ送信する。例えば、画像形成装置10に印刷ジョブの指令を与える場合は、画像データ7Bを送信する。   The job assignment unit 209 sends a job instruction to the designated device via the connection before or after or in parallel with the process of disconnecting the tunnel. At this time, data (such as image data 7B or file 7C) necessary for the job is transmitted to the designated device. For example, in the case of giving a print job instruction to the image forming apparatus 10, the image data 7B is transmitted.

なお、コネクションを介する場合は、ジョブの指令およびデータは、クラウドサーバ21においてパケット化され、ゲートウェイ16を介して指定装置へ届けられる。   In the case of connection via a connection, job instructions and data are packetized in the cloud server 21 and delivered to the designated device via the gateway 16.

ジョブ付与部209は、コネクション確立機能を有していない旨を示す回答データ7Fが機能問合部204によって得られた場合は、トンネルを介して指定装置へジョブの指令を与える。この際に、コネクションを介する場合と同様、ジョブに必要なデータを指定装置へ送信する。   When the function inquiry unit 204 obtains the response data 7F indicating that the connection establishment function is not provided, the job assignment unit 209 issues a job instruction to the designated device via the tunnel. At this time, as in the case of connection, data necessary for the job is transmitted to the designated device.

また、ジョブ付与部209は、ジョブの指令およびデータなどを、コネクションに応じて適宜、暗号化などの処理を施す。例えば、コネクションがSSL(Secure Sockets Layer)に対応していれば、SSLに基づいて暗号化し、送信する。SSLに対応しているか否かは、送信先の内部装置に問い合せてもよい。または、管理サーバ24から送信先の内部装置のデバイス属性データ7Aを取得し、これに基づいて判別してもよい。   Also, the job assignment unit 209 appropriately performs processing such as encryption of job instructions and data according to the connection. For example, if the connection supports SSL (Secure Sockets Layer), it encrypts and transmits based on SSL. You may ask the destination internal device whether it supports SSL. Alternatively, the device attribute data 7A of the internal device of the transmission destination may be acquired from the management server 24, and the determination may be made based on this.

なお、トンネルを介する場合は、ジョブの指令およびデータは、クラウドサーバ21において、パケット化され、トンネルのプロトコルに応じてカプセル化される。そして、ゲートウェイ16を経由して指定装置へ届けられる。   In the case of passing through a tunnel, job instructions and data are packetized in the cloud server 21 and encapsulated according to the tunnel protocol. Then, it is delivered to the designated device via the gateway 16.

〔ゲートウェイ16におけるデータの中継〕
上述の通り、外部装置と内部装置とは、トンネルまたはコネクションを介してデータのやり取りを行うが、データは、物理的に必ずゲートウェイ16を経由する。ゲートウェイ16において、データは、次のように処理される。
[Relaying of data in the gateway 16]
As described above, although the external device and the internal device exchange data via a tunnel or connection, the data physically always passes through the gateway 16. At the gateway 16, the data is processed as follows.

第一の外内中継部162は、トンネルのプロトコルのカプセルを外部装置から受信すると、これをパケットに戻して宛先の内部装置へ転送する。   When receiving the capsule of the protocol of the tunnel from the external device, the first external / internal relay unit 162 converts it back into a packet and transfers it to the destination internal device.

第一の内外中継部163は、内部装置からクラウドサーバ21へ宛てて送信されたデータのパケットをカプセル化してクラウドサーバ21へ転送する。   The first internal / external relay unit 163 encapsulates a packet of data transmitted from the internal device to the cloud server 21 and transfers the packet to the cloud server 21.

第二の外内中継部164は、外部装置から送信されてきたパケットを受信すると、これを宛先の内部装置へ転送する。   When receiving the packet transmitted from the external device, the second outer / inner relay unit 164 transfers the packet to the destination internal device.

第二の内外中継部165は、内部装置からクラウドサーバ21へ宛てて送信されたデータのパケットを、クラウドサーバ21へ転送する。   The second internal / external relay unit 165 transfers to the cloud server 21 a packet of data transmitted from the internal device to the cloud server 21.

第一の外内中継部162ないし第二の内外中継部165による中継は、公知の方法によって行われる。後述する、外部装置と内部装置との間でやり取りされるデータのカプセルまたはパケットも同様に、第一の外内中継部162ないし第二の内外中継部165の何れかによって中継される。   The relaying by the first outer / inner relay section 162 to the second inner / outer relay section 165 is performed by a known method. Similarly, a capsule or packet of data exchanged between an external device and an internal device, which will be described later, is similarly relayed by any of the first outer / inner relay portion 162 to the second inner / outer relay portion 165.

〔ジョブの実行および後処理〕
画像形成装置10において、ジョブ実行制御部102は、クラウドサーバ21からジョブの指令および画像データ7Bを受信すると、印刷ジョブを実行する。つまり、画像データ7Bに基づいて画像が用紙に印刷されるようにプリントユニット10kなどを制御する。
[Job execution and post processing]
In the image forming apparatus 10, the job execution control unit 102 executes a print job when receiving a job instruction and image data 7B from the cloud server 21. That is, based on the image data 7B, the print unit 10k and the like are controlled such that an image is printed on a sheet.

コネクションを介してジョブが付与された場合は、印刷ジョブが完了すると、ジョブ完了通知部103およびログ通知部104によって次の処理が行われる。   When a job is assigned via a connection, when the print job is completed, the following processing is performed by the job completion notification unit 103 and the log notification unit 104.

ジョブ完了通知部103は、印刷ジョブが完了した旨を示すジョブ完了データ7Hを、コネクションを介してクラウドサーバ21へ送信する。   The job completion notification unit 103 transmits job completion data 7H indicating that the print job is completed to the cloud server 21 via the connection.

ログ通知部104は、コネクションに関するログ(このコネクションを介して行った通信の概要など)を示すログデータ7Jをゲートウェイ16へ送信する。   The log notification unit 104 transmits, to the gateway 16, log data 7J indicating a log related to the connection (such as an outline of communication performed via the connection).

クラウドサーバ21において、コネクション切断部210は、コネクションを介してジョブ完了データ7Hを受信すると、このコネクションを切断(開放)する。   In the cloud server 21, when receiving the job completion data 7H via the connection, the connection disconnection unit 210 disconnects (releases) the connection.

ゲートウェイ16において、ログデータ書込部166は、ログデータ7Jを受信すると、これをログデータ保存部167に保存させる。   In the gateway 16, when the log data writing unit 166 receives the log data 7J, the log data writing unit 166 causes the log data storage unit 167 to store the log data 7J.

一方、トンネルを介してジョブが付与された場合は、各装置において、次のように処理が行われる。以下、指定装置がファイルサーバ15である場合を例に説明する。   On the other hand, when a job is assigned via a tunnel, processing is performed as follows in each device. Hereinafter, the case where the designated device is the file server 15 will be described as an example.

ファイルサーバ15は、ジョブの指令とともにファイル7Cを受信すると、これを保存する。   When the file server 15 receives the file 7C together with the job command, the file server 15 saves the file 7C.

ゲートウェイ16において、トンネル切断部168は、ファイルサーバ15へのファイル7Cの送信が完了したら、ファイル7Cの中継に使用したトンネルを切断(開放)する。   In the gateway 16, when the transmission of the file 7C to the file server 15 is completed, the tunnel disconnection unit 168 disconnects (opens) the tunnel used for relaying the file 7C.

ログデータ書込部166は、トンネルに関するログ(このトンネルを介して行った通信の概要など)を示すログデータ7Kをログデータ保存部167に保存させる。   The log data writing unit 166 causes the log data storage unit 167 to store log data 7 K indicating a log related to a tunnel (such as an outline of communication performed via this tunnel).

図8および図9は、印刷ジョブの際のクラウドサーバ21、管理サーバ24、ゲートウェイ16、および画像形成装置10それぞれの処理の流れの例を示すシーケンス図である。   FIGS. 8 and 9 are sequence diagrams showing an example of the process flow of the cloud server 21, the management server 24, the gateway 16, and the image forming apparatus 10 at the time of a print job.

次に、コネクション確立機能を有する内部装置にジョブを実行させる場合の、各装置の処理の流れを、この内部装置が画像形成装置10である場合を例に、図8〜図9のフローチャートを参照しながら説明する。   Next, referring to the flowcharts of FIG. 8 to FIG. 9, the flow of processing of each device when causing the internal device having the connection establishing function to execute a job is an example where the internal device is the image forming device 10. While explaining.

クラウドサーバ21は、画像形成装置10に印刷ジョブを実行させる指令および画像データ7Bを端末装置3から受け付けると(図8の#701)、管理サーバ24へトンネル確立コマンド7Dを送信することによって、新規のトンネルの確立(作成)を要求する(#702)。   When the cloud server 21 receives an instruction to cause the image forming apparatus 10 to execute a print job and the image data 7B from the terminal device 3 (# 701 in FIG. 8), the cloud server 21 transmits a tunnel establishment command 7D to the management server 24 Request establishment (creation) of a tunnel (# 702).

管理サーバ24は、トンネル確立コマンド7Dを受け付けると(#721)、これをゲートウェイ16へ転送することによって、新規のトンネルの確立を要求する(#722)。   When the management server 24 receives the tunnel establishment command 7D (# 721), the management server 24 transfers the same to the gateway 16 to request establishment of a new tunnel (# 722).

ゲートウェイ16は、トンネル確立コマンド7Dを受信すると(#731)、クラウドサーバ21へアクセスする(#732)。そして、ゲートウェイ16およびクラウドサーバ21は、新規のトンネルを確立する(#703、#733)。   When the gateway 16 receives the tunnel establishment command 7D (# 731), the gateway 16 accesses the cloud server 21 (# 732). Then, the gateway 16 and the cloud server 21 establish a new tunnel (# 703, # 733).

クラウドサーバ21は、トンネルの確立の処理と前後してまたは並行して、管理サーバ24へ問合データ7Eを送信することによって、画像形成装置10がコネクション確立機能を有するか否かを問い合せる(#704)。   The cloud server 21 inquires whether or not the image forming apparatus 10 has a connection establishment function by transmitting the inquiry data 7E to the management server 24 before or after or in parallel with the process of establishing a tunnel (# 704).

管理サーバ24は、問合データ7Eを受信すると(#723)、画像形成装置10のデバイス属性データ7Aつまりデバイス属性データ7A1に基づいて回答データ7Fを生成しクラウドサーバ21へ送信する(#724)。これにより、問合せに対する回答がなされる。本例では、回答データ7Fには、コネクション確立機能を有する旨が示される。   When the management server 24 receives the inquiry data 7E (# 723), it generates the response data 7F based on the device attribute data 7A of the image forming apparatus 10, that is, the device attribute data 7A1 and transmits it to the cloud server 21 (# 724). . This makes an answer to the query. In this example, the response data 7F indicates that it has a connection establishment function.

クラウドサーバ21は、回答データ7Fを受信すると(#705)、トンネルを介さずに(つまり、直接的に)画像形成装置10との通信を行うことができるか否かを回答データ7Fに基づいて判別する(#706)。本例では、コネクション確立機能を有する旨が回答データ7Fに示されるので、トンネルを介さずに通信を行うことができると判別する。   When the cloud server 21 receives the response data 7F (# 705), based on the response data 7F, whether or not communication with the image forming apparatus 10 can be performed without passing through a tunnel (that is, directly). It discriminates (# 706). In this example, since the response data 7F indicates that the connection establishment function is provided, it is determined that communication can be performed without passing through a tunnel.

すると、クラウドサーバ21は、ステップ#703で確立したトンネルを介してコネクション確立コマンド7Gをゲートウェイ16へ送信することによって、新規のコネクションの確立を要求する(#707)。   Then, the cloud server 21 requests establishment of a new connection by transmitting a connection establishment command 7G to the gateway 16 through the tunnel established in step # 703 (# 707).

ゲートウェイ16は、コネクション確立コマンド7Gを受け付けると(#734)、コネクション確立コマンド7Gを画像形成装置10へ転送することによって、新規のコネクションの確立を要求する(#735)。   When the connection establishment command 7G is received (# 734), the gateway 16 requests establishment of a new connection by transferring the connection establishment command 7G to the image forming apparatus 10 (# 735).

画像形成装置10は、コネクション確立コマンド7Gを受信すると(#741)、このトンネルを介してクラウドサーバ21へアクセスする(#742)。そして、画像形成装置10およびクラウドサーバ21は、新規のコネクションを確立する(#743、#708)。   When receiving the connection establishment command 7G (# 741), the image forming apparatus 10 accesses the cloud server 21 via this tunnel (# 742). Then, the image forming apparatus 10 and the cloud server 21 establish a new connection (# 743, # 708).

クラウドサーバ21は、このコネクションが確立したら、このトンネルを切断(開放)する(図9の#709)。   When the connection is established, the cloud server 21 disconnects (opens) this tunnel (# 709 in FIG. 9).

トンネルの切断の処理と前後してまたは並行して、クラウドサーバ21は、このコネクションを介して印刷ジョブの指令および画像データ7Bを画像形成装置10へ送信する(#710)。   Before or after the tunnel disconnection process, the cloud server 21 transmits a print job command and image data 7B to the image forming apparatus 10 via this connection (# 710).

画像形成装置10は、印刷ジョブの指令および画像データ7Bを受信すると(#744)、これらに基づいて印刷ジョブを実行する(#745)。そして、このコネクションを介してジョブ完了データ7Hをクラウドサーバ21へ送信するとともに(#746)、ログデータ7Jをゲートウェイ16へ送信する(#747)。   When receiving the print job command and the image data 7B (# 744), the image forming apparatus 10 executes the print job based on these (# 745). Then, the job completion data 7H is transmitted to the cloud server 21 via this connection (# 746), and the log data 7J is transmitted to the gateway 16 (# 747).

クラウドサーバ21は、ジョブ完了データ7Hを受信すると(#711)、このコネクションを切断する(#712)。   When receiving the job completion data 7H (# 711), the cloud server 21 disconnects this connection (# 712).

ゲートウェイ16は、ログデータ7Jを受信すると(#736)、これを保存する(#737)。   When the gateway 16 receives the log data 7J (# 736), it stores the log data 7J (# 737).

図10は、セキュア保存ジョブの際のクラウドサーバ21、管理サーバ24、ゲートウェイ16、およびファイルサーバ15それぞれの処理の流れの例を示すシーケンス図である。   FIG. 10 is a sequence diagram showing an example of the process flow of each of the cloud server 21, the management server 24, the gateway 16, and the file server 15 in the case of a secure storage job.

次に、コネクション確立機能を有しない内部装置にジョブを実行させる場合の、各装置の処理の流れを、この内部装置がファイルサーバ15である場合を例に、図10のフローチャートを参照しながら説明する。   Next, the flow of processing of each device when causing the internal device not having the connection establishment function to execute a job will be described with reference to the flowchart of FIG. Do.

端末装置3からのジョブの受付の処理、トンネルの確立の処理、コネクション確立機能の有無の問合せの処理、および直接的な通信の可否の判別の処理は、図8のステップ#701〜#706、#721〜724、および#731〜#733と同様に行われる(図10の#751〜#756、#761〜764、および#771〜#773)。   The process of accepting a job from the terminal device 3, the process of establishing a tunnel, the process of inquiring the presence or absence of a connection establishment function, and the process of determining whether or not direct communication can be performed are steps # 701 to # 706 in FIG. It carries out similarly to # 721-724, and # 731- # 733 (# 751- # 756 of FIG. 10, # 761-764, and # 771- # 773).

ただし、本例においては、セキュア保存ジョブおよびファイル7Cが端末装置3から受け付けられる。また、画像形成装置10のコネクション確立機能有無についてではなく、ファイルサーバ15のコネクション確立機能の有無について、問合わせおよび回答がなされる。   However, in the present example, the secure storage job and the file 7C are received from the terminal device 3. Further, the inquiry and the answer are made regarding the presence or absence of the connection establishment function of the file server 15, not about the presence or absence of the connection establishment function of the image forming apparatus 10.

クラウドサーバ21は、ステップ#756において、問合せの結果に基づいて、ファイルサーバ15がコネクション確立機能を有しないと判別する。そして、ステップ#753で確立したトンネルを介して、セキュア保存ジョブの指令およびファイル7Cをファイルサーバ15へ宛ててゲートウェイ16へ送信する(#757)。   In step # 756, the cloud server 21 determines that the file server 15 does not have the connection establishment function based on the result of the inquiry. Then, the command for the secure storage job and the file 7C are sent to the file server 15 via the tunnel established at step # 753 to the gateway 16 (# 757).

ゲートウェイ16は、セキュア保存ジョブの指令およびファイル7Cを受信すると(#774)、これらをファイルサーバ15へ転送する(#775)。   When the gateway 16 receives the secure storage job command and the file 7C (# 774), the gateway 16 transfers these to the file server 15 (# 775).

ファイルサーバ15は、セキュア保存ジョブの指令およびファイル7Cを受信すると(#781)、ファイル7Cを暗号化して保存する(#782)。   When the file server 15 receives the command of the secure storage job and the file 7C (# 781), the file server 15 encrypts the file 7C and stores it (# 782).

そして、ゲートウェイ16は、このトンネルを切断し(#776)、ログデータ7Kを保存する(#777)。なお、トンネルの切断は、クラウドサーバ21が行ってもよい。   Then, the gateway 16 disconnects this tunnel (# 776), and stores the log data 7K (# 777). The cloud server 21 may disconnect the tunnel.

図11は、クラウドサーバ21の全体的な処理の流れの例を説明するフローチャートである。   FIG. 11 is a flowchart illustrating an example of the overall processing flow of the cloud server 21.

クラウドサーバ21は、サーバプログラム21Pに基づいて、図11に示す手順で処理を実行する。   The cloud server 21 executes the process according to the procedure shown in FIG. 11 based on the server program 21P.

クラウドサーバ21は、端末装置3からジョブの指令、それに用いるデータ、およびジョブを実行させる内部装置の指定などを受け付けると(図11の#31でYes)、トンネルを確立するように、管理サーバ24を介してゲートウェイ16へ要求する(#32)。さらに、指定された内部装置(指定装置)のコネクション確立機能の有無を管理サーバ24へ問い合せる(#33)。   When the cloud server 21 receives an instruction of a job, data to be used for the job, and designation of an internal device to execute the job from the terminal device 3 (Yes in # 31 of FIG. 11), the management server 24 establishes the tunnel. Request to the gateway 16 (# 32). Further, the management server 24 is inquired of the presence / absence of the connection establishment function of the designated internal device (designated device) (# 33).

クラウドサーバ21とゲートウェイ16との間でトンネルが確立されたら(#34でYes)、指定装置がコネクション確立機能を有していれば(#35でYes)、クラウドサーバ21は、コネクションの確立を、このトンネルおよびゲートウェイ16を介して指定装置へ要求する(#36)。   If a tunnel is established between the cloud server 21 and the gateway 16 (Yes in # 34), if the designated device has a connection establishment function (Yes in # 35), the cloud server 21 establishes a connection. , Requests the designated device via this tunnel and the gateway 16 (# 36).

そして、クラウドサーバ21と画像形成装置10との間でコネクションが確立したら(#37でYes)、クラウドサーバ21は、このトンネルを切断するとともに(#38)、このコネクションを介して、ジョブの指令およびそれに用いるデータを指定装置へ送信する(#39)。   Then, when a connection is established between the cloud server 21 and the image forming apparatus 10 (Yes in # 37), the cloud server 21 disconnects this tunnel (# 38), and issues a job instruction via this connection. And the data used for it is transmitted to the designated device (# 39).

その後、画像形成装置10からジョブ完了データ7Hを受信したら、このコネクションを切断する(#40)。   Thereafter, when the job completion data 7H is received from the image forming apparatus 10, this connection is disconnected (# 40).

一方、指定装置がコネクション確立機能を有していなければ(#35でNo)、クラウドサーバ21は、このトンネルおよびゲートウェイ16を介してジョブの指令およびそれに用いるデータを指定装置へ送信する(#41)。   On the other hand, if the designated device does not have the connection establishment function (No in # 35), the cloud server 21 transmits the job instruction and the data to be used for the job to the designated device via this tunnel and the gateway 16 (# 41 ).

第一の実施形態によると、可能であればトンネルをコネクションに切り換えることにより、外部装置と内部装置との通信に伴うゲートウェイ16の負荷を従来よりも軽減することができる。   According to the first embodiment, by switching the tunnel to the connection if possible, the load on the gateway 16 involved in the communication between the external device and the internal device can be reduced as compared to the prior art.

〔第二の実施形態〕
図12は、ゲートウェイ16および画像形成装置10それぞれの機能的構成の例を示す図である。図13は、クラウドサーバ21および管理サーバ24それぞれの機能的構成の例を示す図である。図14および図15は、印刷ジョブの際のクラウドサーバ21、管理サーバ24、ゲートウェイ16、および画像形成装置10それぞれの処理の流れの例を示すシーケンス図である。
Second Embodiment
FIG. 12 is a diagram showing an example of the functional configuration of each of the gateway 16 and the image forming apparatus 10. As shown in FIG. FIG. 13 is a diagram showing an example of the functional configuration of each of the cloud server 21 and the management server 24. As shown in FIG. FIGS. 14 and 15 are sequence diagrams showing an example of the process flow of the cloud server 21, the management server 24, the gateway 16, and the image forming apparatus 10 at the time of a print job.

第一の実施形態では、内部装置がコネクション確立機能を有していれば、クラウドサーバ21と内部装置との間にコネクションを確立し、このコネクションを介してジョブの指令をクラウドサーバ21から内部装置へ与えられた。この際に、他のジョブの有無を考慮しなかった。   In the first embodiment, if the internal device has a connection establishing function, a connection is established between the cloud server 21 and the internal device, and a job command is issued from the cloud server 21 via the connection. Was given to At this time, the presence or absence of another job was not considered.

第二の実施形態では、他のジョブ、特にコネクション確立機能を有しない内部装置に実行させるジョブが発生するまでは、トンネルを用い、発生した後にコネクションを用いる。   In the second embodiment, a tunnel is used, and a connection is used after the occurrence of another job, in particular, a job to be executed by an internal device having no connection establishment function.

第二の実施形態において、ローカルエリアネットワーク1の全体的な構成は、第一の実施形態の場合と同様であり、図1に示した通りである。ゲートウェイ16および画像形成装置10それぞれのハードウェアの構成も、第一の実施形態の場合と同様であり、図2および図3に示した通りである。クラウドサーバ21および管理サーバ24のハードウェアの構成も、第一の実施形態の場合と同様であり、図4に示した通りである。   In the second embodiment, the overall configuration of the local area network 1 is the same as that of the first embodiment, as shown in FIG. The hardware configuration of each of the gateway 16 and the image forming apparatus 10 is the same as that of the first embodiment, as shown in FIGS. 2 and 3. The hardware configuration of the cloud server 21 and the management server 24 is also the same as that of the first embodiment, as shown in FIG.

ただし、画像形成装置10のROM10cまたは補助記憶装置10dには、連携プログラム10P(図5参照)の代わりに連携プログラム10Qが記憶されている。連携プログラム10Pによると、図12に示すコネクション確立部171、ジョブ実行制御部172、ジョブ完了通知部173、およびログ通知部174が画像形成装置10に実現される。   However, a cooperation program 10Q is stored in the ROM 10c or the auxiliary storage device 10d of the image forming apparatus 10 instead of the cooperation program 10P (see FIG. 5). According to the cooperation program 10 P, the connection establishing unit 171, the job execution control unit 172, the job completion notification unit 173, and the log notification unit 174 shown in FIG. 12 are realized in the image forming apparatus 10.

また、クラウドサーバ21のROM20cまたは補助記憶装置20dには、サーバプログラム21P(図6参照)の代わりにサーバプログラム21Qが記憶されている。サーバプログラム21Qによると、図13に示すジョブ指令受付部271、トンネル要求部272、トンネル確立部273、機能問合部274、直接通信可否判別部275、コネクション要求部276、コネクション確立部277、トンネル切断部278、ジョブ付与部279、コネクション切断部280、切換要否判別部281、およびジョブ中断指令部282などがクラウドサーバ21に実現される。   In addition, a server program 21Q is stored in the ROM 20c or the auxiliary storage device 20d of the cloud server 21 instead of the server program 21P (see FIG. 6). According to the server program 21Q, the job command reception unit 271, the tunnel request unit 272, the tunnel establishment unit 273, the function inquiry unit 274, the direct communication availability determination unit 275, the connection request unit 276, the connection establishment unit 277 shown in FIG. A disconnection unit 278, a job assignment unit 279, a connection disconnection unit 280, a switching necessity determination unit 281, a job interruption instruction unit 282, and the like are realized in the cloud server 21.

第一の実施形態の場合と同様、管理サーバ24は、管理プログラム24Pに基づいて処理を行い、ゲートウェイ16は、データ中継プログラム16Pに基づいて処理を行う。   As in the first embodiment, the management server 24 performs processing based on the management program 24P, and the gateway 16 performs processing based on the data relay program 16P.

以下、各装置の各部の処理を、画像形成装置10に印刷ジョブを実行させる場合を例に、図14〜図15のシーケンス図を参照しながら説明する。第一の実施形態と重複する点については、説明を省略する。   Hereinafter, the processing of each part of each apparatus will be described with reference to the sequence diagrams of FIGS. 14 to 15 by taking the case where the image forming apparatus 10 executes a print job as an example. The description of the points overlapping with the first embodiment will be omitted.

クラウドサーバ21において、ジョブ指令受付部271は、第一の実施形態のジョブ指令受付部201と同様に、端末装置3から印刷ジョブの指令および画像データ7Bなどを受け付ける(図14の#801)。   In the cloud server 21, the job command receiving unit 271 receives a print job command, image data 7B, and the like from the terminal device 3 as in the job command receiving unit 201 of the first embodiment (# 801 in FIG. 14).

トンネル要求部272は、トンネル要求部202と同様に、管理サーバ24を介してゲートウェイ16へ、クラウドサーバ21とゲートウェイ16との間のトンネルの確立を要求する(#802)。この際に、管理サーバ24およびゲートウェイ16は、第一の実施形態の場合と同様に処理を行う(#821〜#822、#831〜#832)。   Similar to the tunnel request unit 202, the tunnel request unit 272 requests the gateway 16 via the management server 24 to establish a tunnel between the cloud server 21 and the gateway 16 (# 802). At this time, the management server 24 and the gateway 16 perform processing in the same manner as in the first embodiment (# 821 to # 822, # 831 to # 832).

トンネル確立部273は、ゲートウェイ16からのアクセスがあると、第一の実施形態の場合と同様に、トンネルを確立する(#803、#833)。   The tunnel establishing unit 273 establishes a tunnel when there is an access from the gateway 16 as in the first embodiment (# 803, # 833).

切換要否判別部281は、現在の、クラウドサーバ21とゲートウェイ16との間のトンネルの数に応じて、ステップ#803で確立したトンネルをコネクションに切り換える必要があるか否かを判別する(#804)。具体的には、現在のトンネルの数(以下、「現トンネル数」と記載する。)が所定の数以上であれば、切り換える必要があると判別し、現トンネル数が所定の数未満であれば、切り換える必要がないと判別する。   According to the current number of tunnels between the cloud server 21 and the gateway 16, the switching necessity determining unit 281 determines whether it is necessary to switch the tunnel established in step # 803 to a connection (# 804). Specifically, if the current number of tunnels (hereinafter referred to as “the current number of tunnels”) is equal to or greater than a predetermined number, it is determined that switching is necessary, and the current number of tunnels is less than the predetermined number. For example, it is determined that there is no need to switch.

切り換える必要があると判別された場合は、以下、クラウドサーバ21の機能問合部274ないしコネクション切断部280、管理サーバ24の機能回答部243、ゲートウェイ16の第一の外内中継部162ないしトンネル切断部168、および画像形成装置10のコネクション確立部171ないしログ通知部174が、第一の実施形態のステップ#704〜#712、#723〜#724、#734〜#737、#741〜#747と同様の処理を行う(図8および図9参照)。   If it is determined that it is necessary to switch, the function inquiry unit 274 to the connection disconnection unit 280 of the cloud server 21, the function response unit 243 of the management server 24, and the first outer / inner relay unit 162 to the tunnel of the gateway 16 are hereinafter described. The disconnecting unit 168 and the connection establishing unit 171 to the log notifying unit 174 of the image forming apparatus 10 are the steps # 704 to # 712, # 723 to # 724, # 734 to # 737, and # 741 to # 74 in the first embodiment. The same process as 747 is performed (see FIGS. 8 and 9).

一方、切り換える必要がないと判別された場合は、ジョブ付与部279が、このトンネルおよびゲートウェイ16を介して画像形成装置10へ印刷ジョブの指令および画像データ7Bを送信し始める(#805、#834〜#835)。   On the other hand, if it is determined that switching is unnecessary, the job giving unit 279 starts transmitting a print job command and image data 7B to the image forming apparatus 10 via the tunnel and the gateway 16 (# 805, # 834 ~ # 835).

そして、画像形成装置10において、ジョブ実行制御部172は、印刷ジョブの指令を受信し、画像データ7Bを受信し始めると(#851)、スプールおよび印刷などを開始する(#852)。   Then, in the image forming apparatus 10, the job execution control unit 172 receives a print job instruction, and when it starts to receive the image data 7B (# 851), it starts spooling and printing (# 852).

その後、クラウドサーバ21が他のジョブを受け付けることなく、画像形成装置10への画像データ7Bの送信を完了した場合は、ゲートウェイ16において、第一の実施形態のステップ#776〜#777と同様に、このトンネルの切断およびログデータ7Kの記録が行われる(図10参照)。   After that, when the cloud server 21 completes the transmission of the image data 7B to the image forming apparatus 10 without accepting another job, the gateway 16 performs steps similar to steps # 776 to # 777 of the first embodiment. The disconnection of the tunnel and the recording of the log data 7K are performed (see FIG. 10).

しかし、画像データ7Bの送信を完了するまでに、クラウドサーバ21が他のジョブを受け付けた場合は(#806)、各装置の各部は、次のように処理を行う。以下、ファイルサーバ15に対するセキュア保存ジョブが受け付けられた場合を例に説明する。   However, when the cloud server 21 receives another job until the transmission of the image data 7B is completed (# 806), each unit of each device performs the following processing. Hereinafter, a case where a secure storage job for the file server 15 is accepted will be described as an example.

機能問合部274は、画像形成装置10およびファイルサーバ15それぞれがコネクション確立機能を有するか否かを管理サーバ24へ問い合せる(#807)。管理サーバ24は、問合せを受け付けると(#823)、画像形成装置10およびファイルサーバ15それぞれのデバイス属性データ7Aに基づいて、回答する(#824)。問合せおよび回答の方法は、第一の実施形態で説明した通りである。   The function inquiry unit 274 inquires of the management server 24 whether each of the image forming apparatus 10 and the file server 15 has a connection establishing function (# 807). When the management server 24 receives the inquiry (# 823), it responds based on the device attribute data 7A of each of the image forming apparatus 10 and the file server 15 (# 824). The method of inquiry and response is as described in the first embodiment.

クラウドサーバ21において、切換要否判別部281は、機能問合部274が回答を受け付けると(#808)、このトンネルをコネクションに切り換える必要があるか否かを次のように判別する(#809)。   In the cloud server 21, when the function inquiry unit 274 receives an answer (# 808), the switching necessity determination unit 281 determines whether it is necessary to switch this tunnel to a connection as follows (# 809). ).

ステップ#808において受け付けた回答によって、ファイルサーバ15がコネクション確立機能を有しないことが分かった場合は、ファイルサーバ15のためにトンネルを確立しなければならない。そこで、この場合は、新たにトンネルを確立することによって、現トンネル数が所定の数以上になるのであれば、切換要否判別部281は、切り換える必要があると判別する。   If the response received in step # 808 indicates that the file server 15 does not have the connection establishment function, a tunnel must be established for the file server 15. Therefore, in this case, if the current tunnel number becomes equal to or more than a predetermined number by newly establishing a tunnel, the switching necessity determination unit 281 determines that it is necessary to switch.

直接通信可否判別部275は、切り換える必要があると切換要否判別部281によって判別されると、ステップ#808において受け付けた回答に基づいて、画像形成装置10が直接的に(トンネルを介さずに)通信を行うことができるか否かを判別する(#810)。判別の仕方は、第一の実施形態の場合と同様である。本例では、直接的に通信を行うことができると判別される。   If it is determined by the switching necessity determining unit 281 that the direct communication availability determining unit 275 needs to switch, the image forming apparatus 10 directly (without passing through the tunnel) based on the answer received in step # 808. ) It is determined whether communication can be performed (# 810). The determination method is the same as that of the first embodiment. In this example, it is determined that communication can be performed directly.

すると、ジョブ中断指令部282は、ステップ#803で確立したトンネルおよびゲートウェイ16を介して、印刷ジョブの中断の指令を示す中断コマンド7Lを画像形成装置10へ指令する(#811、#836〜図15の#837)。   Then, the job interruption instruction unit 282 instructs the image forming apparatus 10 to execute the interruption command 7L indicating the interruption instruction of the print job via the tunnel and the gateway 16 established in step # 803 (# 811, # 836-FIG. 15 # 837).

画像形成装置10において、ジョブ実行制御部172は、中断コマンド7Lを受信すると(#853)、印刷ジョブを中断し(#854)、これまでの処理のデータを保持する(#855)。   In the image forming apparatus 10, when receiving the interruption command 7L (# 853), the job execution control unit 172 interrupts the print job (# 854), and holds the data of the processing so far (# 855).

クラウドサーバ21において、コネクション要求部276は、第一の実施形態のコネクション要求部206と同様に、このトンネルおよびゲートウェイ16を介して、新規のコネクションを確立するように画像形成装置10へ要求する(#813、#838〜#839)。   In the cloud server 21, the connection request unit 276 requests the image forming apparatus 10 to establish a new connection via the tunnel and the gateway 16 as in the connection request unit 206 of the first embodiment (see FIG. # 813, # 838 to # 839).

画像形成装置10において、コネクション確立部171は、要求を受け付けると(#856)、第一の実施形態のコネクション確立部101と同様に、クラウドサーバ21のコネクション確立部277とともに、画像形成装置10とクラウドサーバ21との間にコネクションを確立する(#857〜#858、#814)。   In the image forming apparatus 10, when the connection establishing unit 171 receives the request (# 856), the connection establishing unit 171 of the cloud server 21 and the image forming apparatus 10 are similar to the connection establishing unit 101 of the first embodiment. A connection is established with the cloud server 21 (# 857 to # 858, # 814).

クラウドサーバ21において、コネクションの確立後、トンネル切断部278は、このトンネルを切断する(#815)。   In the cloud server 21, after establishing the connection, the tunnel disconnection unit 278 disconnects this tunnel (# 815).

ジョブ付与部279は、このコネクションを介して、画像データ7Bの送信を再開する(#816)。つまり、画像データ7Bのうち未だ送信していない部分(残りの部分)を送信し始める。   The job assignment unit 279 resumes the transmission of the image data 7B via this connection (# 816). That is, the part (the remaining part) of the image data 7B which has not been transmitted is started to be transmitted.

画像形成装置10において、ジョブ実行制御部172は、画像データ7Bの残りの部分を受信し始めると(#859)、残りの部分および保持しておいたデータに基づいて印刷ジョブの実行を再開する(#860)。   In the image forming apparatus 10, when the job execution control unit 172 starts to receive the remaining part of the image data 7B (# 859), the job execution control part 172 resumes the execution of the print job based on the remaining part and the stored data. (# 860).

そして、印刷ジョブが完了したら、ジョブ完了通知部173およびログ通知部174は、それぞれ、第一の実施形態のジョブ完了通知部103およびログ通知部104と同様に、ジョブ完了データ7Hをクラウドサーバ21へ送信するとともに(#861)、ログデータ7Jをゲートウェイ16へ送信する(#862)。   Then, when the print job is completed, the job completion notification unit 173 and the log notification unit 174 respectively transmit the job completion data 7H to the cloud server 21 similarly to the job completion notification unit 103 and the log notification unit 104 in the first embodiment. And the log data 7J to the gateway 16 (# 862).

画像形成装置10において、コネクション切断部280は、ジョブ完了データ7Hを受信すると(#817)、このコネクションを切断する(#818)。   In the image forming apparatus 10, when receiving the job completion data 7H (# 817), the connection disconnecting section 280 disconnects this connection (# 818).

また、ゲートウェイ16において、ログデータ7Jは、ログデータ保存部167に保存(記録)される(#840、#841)。   Also, in the gateway 16, the log data 7J is stored (recorded) in the log data storage unit 167 (# 840, # 841).

なお、画像形成装置10とクラウドサーバ21との間のトンネルがステップ#815において切断された後、ステップ#806で受け付けたセキュア保存ジョブのための処理が、各装置において、図10で説明した手順で実行される。   Note that after the tunnel between the image forming apparatus 10 and the cloud server 21 is disconnected in step # 815, the process for the secure storage job accepted in step # 806 is the procedure described in FIG. 10 in each apparatus. Is executed by

図16および図17は、クラウドサーバ21の全体的な処理の流れの例を説明するフローチャートである。   16 and 17 are flowcharts for explaining an example of the overall processing flow of the cloud server 21.

クラウドサーバ21は、サーバプログラム21Qに基づいて、図16〜図17に示す手順で処理を実行する。   The cloud server 21 executes processing in the procedure shown in FIGS. 16 to 17 based on the server program 21Q.

クラウドサーバ21は、端末装置3からジョブの指令、それに用いるデータ、およびジョブを実行させる内部装置の指定などを受け付けると(図16の#51)、トンネルを確立するように、管理サーバ24を介してゲートウェイ16へ要求し、トンネルを確立させる(#52)。   When the cloud server 21 receives an instruction of a job, data to be used for the job, designation of an internal device for executing the job, and the like from the terminal device 3 (# 51 in FIG. 16), it establishes a tunnel via the management server 24. It requests the gateway 16 to establish a tunnel (# 52).

さらに、クラウドサーバ21は、このトンネルをコネクションに切り換える必要があるか否かを、現トンネル数に基づいて判別する(#53)。   Furthermore, the cloud server 21 determines whether it is necessary to switch this tunnel to a connection based on the current number of tunnels (# 53).

切り換える必要がない場合は(#54でNo)、クラウドサーバ21は、ステップ#52で確立されたトンネルを介して、指定装置へのジョブの指令およびデータの送信などを開始する(図17の#55)。   If it is not necessary to switch (No in # 54), the cloud server 21 starts to transmit job instructions and data to the designated device via the tunnel established in Step # 52 (# in FIG. 17). 55).

そして、データの送信が完了するまで(#56でNo)、クラウドサーバ21は、次の処理を適宜、実行する。   Then, the cloud server 21 appropriately executes the following processing until the transmission of data is completed (No in # 56).

他のジョブの指令を端末装置3から受け付けた場合は(#57でYes)、クラウドサーバ21は、当該他のジョブの指定装置およびステップ#51で受け付けたジョブ(以下、「対象ジョブ」と記載する。)の指定装置それぞれのコネクション確立機能の有無を管理サーバ24へ問い合せる(#58)。そして、問合せの結果に応じて、対象ジョブのトンネルをコネクションに切り換える必要があるか否かを判別する(#59)。   When an instruction of another job is received from the terminal device 3 (Yes in # 57), the cloud server 21 describes the designated device of the other job and the job accepted in step # 51 (hereinafter referred to as “target job”) The management server 24 is inquired of the presence or absence of the connection establishment function of each of the designated devices (# 58). Then, in accordance with the result of the inquiry, it is determined whether or not the tunnel of the target job needs to be switched to the connection (# 59).

切り換える必要がない場合は(#60でNo)、クラウドサーバ21は、引き続き、対象ジョブのデータの送信を継続する。   If it is not necessary to switch (No in # 60), the cloud server 21 continues to transmit the data of the target job.

一方、切り換える必要がある場合は(#60でYes)、対象ジョブの指定装置がコネクション確立機能を有していれば(#61でYes)、クラウドサーバ21は、ステップ#52で確立したトンネルおよびゲートウェイ16を介して、この指定装置へ、ジョブの中断を指令するとともに(#62)、コネクションの確立の処理を行うように要求する(#63)。   On the other hand, when it is necessary to switch (Yes in # 60), if the designated device of the target job has a connection establishment function (Yes in # 61), the cloud server 21 determines the tunnel and the connection established in step # 52. While instructing the interruption of the job to the designated device via the gateway 16 (# 62), it requests the processing to establish a connection (# 63).

コネクションが確立されたら(#64でYes)、クラウドサーバ21は、このトンネルを切断し(#65)、このコネクションを介して対象ジョブの残りのデータをこの指定装置へ送信する(#66)。そして、送信が完了したら、このコネクションを切断する(#67)。   When a connection is established (Yes in # 64), the cloud server 21 disconnects this tunnel (# 65), and transmits the remaining data of the target job to this designated device via this connection (# 66). Then, when the transmission is completed, this connection is disconnected (# 67).

または、ステップ#53において、ステップ#52で確立したトンネルをコネクションに切り換える必要があると判別された場合は(#54でYes)、クラウドサーバ21は、管理サーバ24への問合せを行う(#68)。そして、その結果、このトンネルをコネクションに切り換えることができると判別したら(#69でYes)、第一の実施形態のステップ#36〜#40と同様、コネクションを新たに確立し、このコネクションを介してジョブの指令およびデータを指定装置へ送信する処理などを行う(#70〜#74)。   Alternatively, if it is determined in step # 53 that the tunnel established in step # 52 needs to be switched to a connection (Yes in # 54), the cloud server 21 makes an inquiry to the management server 24 (# 68). ). As a result, when it is determined that this tunnel can be switched to a connection (Yes in # 69), a connection is newly established as in Steps # 36 to # 40 of the first embodiment, and the connection is established via this connection. A process of transmitting job instructions and data to the designated device is performed (# 70 to # 74).

一方、切り換えることができないと判別したら(#69でNo)、第一の実施形態とステップ#41と同様に、このトンネルを介してジョブの指令およびデータを指定装置へ送信する(#75)。   On the other hand, if it is determined that switching can not be performed (No in # 69), the job instruction and data are transmitted to the designated device via this tunnel as in the first embodiment and step # 41 (# 75).

第二の実施形態によると、外部装置と内部装置との通信に伴うゲートウェイ16の負荷を従来よりも軽減することができる。また、コネクションへの切換えをトンネルの数に応じて行うことにより、無駄な切換えを減らし、資源を効率的に使用することができる。   According to the second embodiment, the load on the gateway 16 involved in the communication between the external device and the internal device can be reduced as compared to the prior art. Further, by switching to the connection according to the number of tunnels, unnecessary switching can be reduced and resources can be used efficiently.

なお、クラウドサーバ21は、トンネルをコネクションに切り換えるべきジョブを、次のように選出してもよい。ジョブの種類ごとに、予め優先度(優先順位)を設定しておく。優先度は、重要性の高さによって決めてもよいし、緊急性の高さによって決めてもよい。例えば、外出先から画像形成装置10に行わせる印刷ジョブは、ファイルサーバ15に保存されているファイルを外部装置へ送信するジョブよりも優先度を低く設定しておく。   The cloud server 21 may select a job to switch the tunnel to the connection as follows. Priorities (priorities) are set in advance for each type of job. The priority may be determined by the level of importance or by the level of urgency. For example, a print job to be performed by the image forming apparatus 10 from outside will have a lower priority than a job for transmitting a file stored in the file server 15 to an external apparatus.

現トンネル数が所定の数以上になったら、クラウドサーバ21は、トンネルを現在使用するジョブの中から、コネクション確立機能を有する内部装置が実行するジョブを抽出する。そして、抽出したジョブの中から、優先度の最も低いジョブを、トンネルをコネクションに切り換えるべきジョブとして選出する。   When the current number of tunnels becomes equal to or more than a predetermined number, the cloud server 21 extracts a job to be executed by an internal device having a connection establishing function from jobs currently using the tunnel. Then, among the extracted jobs, the job with the lowest priority is selected as the job to switch the tunnel to the connection.

第二の実施形態では、コネクションへの切換えを、現トンネル数が所定の数以上になった場合に行ったが、ゲートウェイ16における通信回線4の速度が所定の速度以下になった場合に行ってもよい。または、CPU16aの使用率が所定の値以上になった場合に行ってもよい。   In the second embodiment, switching to the connection is performed when the current number of tunnels is equal to or more than a predetermined number, but is performed when the speed of the communication line 4 in the gateway 16 becomes equal to or less than a predetermined speed. It is also good. Alternatively, it may be performed when the usage rate of the CPU 16a becomes equal to or more than a predetermined value.

第二の実施形態では、クラウドサーバ21は、ラウドサーバ21とゲートウェイ16との間のトンネルの数に応じて、トンネルをコネクションに切り換えるべきか否かを判別した。しかし、クラウドサーバ21と任意のゲートウェイとの間のトンネルの数に応じて、つまり、一方の端がクラウドサーバ21であり他方の端が任意のゲートウェイであるトンネルの数に応じて、判別してもよい。   In the second embodiment, according to the number of tunnels between the loud server 21 and the gateway 16, the cloud server 21 determines whether to switch the tunnel to the connection. However, according to the number of tunnels between the cloud server 21 and any gateway, that is, according to the number of tunnels in which one end is the cloud server 21 and the other end is an arbitrary gateway, It is also good.

または、トンネルをコネクションに切り換えるべきか否かをゲートウェイ16が判別してもよい。この場合に、ゲートウェイ16と任意の外部装置との間のトンネルの数に応じて判別してもよい。   Alternatively, the gateway 16 may determine whether to switch the tunnel to the connection. In this case, the determination may be made according to the number of tunnels between the gateway 16 and any external device.

第一の実施形態および第二の実施形態では、ジョブの例として、印刷ジョブおよびセキュア保存ジョブを挙げたが、他のジョブを内部装置に実行させることもできる。例えば、画像形成装置10に保存されているファイルを外部装置に送信するジョブを実行させることができる。画像形成装置10は、このジョブが与えられると、コネクションを介してファイルを外部装置へ送信する。   In the first embodiment and the second embodiment, the print job and the secure save job are mentioned as examples of jobs, but other jobs can be executed by the internal device. For example, it is possible to execute a job of transmitting a file stored in the image forming apparatus 10 to an external device. When this job is given, the image forming apparatus 10 transmits the file to the external device through the connection.

第一の実施形態および第二の実施形態では、クラウドサーバ21と内部装置との間にコネクションを確立したが、端末装置3と内部装置との間にコネクションを確立し、その後はクラウドサーバ21を介さずこのコネクションを介してジョブのデータなどをやり取りしてもよい。   In the first embodiment and the second embodiment, although the connection is established between the cloud server 21 and the internal device, the connection is established between the terminal device 3 and the internal device, and thereafter the cloud server 21 is The data of the job may be exchanged via this connection without intervention.

トンネルの数が少ない場合は、クラウドサーバ21は、トンネルおよびコネクションを併存させ、データを2つに分割しそれぞれをトンネルおよびコネクションを介して内部装置へ送信してもよい。コネクションが暗号化などのセキュリティの機能を備えない場合も同様に、通信を行ってもよい。   When the number of tunnels is small, the cloud server 21 may make the tunnel and the connection coexist, divide the data into two, and transmit each to the internal device via the tunnel and the connection. Even when the connection does not have a security function such as encryption, communication may be performed similarly.

第一の実施形態および第二の実施形態では、コネクションが確立された後に、トンネルを切断したが、コネクションの確立の要求がクラウドサーバ21から外部装置に対してなされた後、コネクションが確立される前に、切断してもよい。   In the first embodiment and the second embodiment, although the tunnel is disconnected after the connection is established, the connection is established after a request for establishing the connection is issued from the cloud server 21 to the external device. You may cut it before.

第一の実施形態および第二の実施形態では、クラウドサーバ21と管理サーバ24とを別々の装置によって実現したが、1台の装置によって実現してもよい。   In the first embodiment and the second embodiment, the cloud server 21 and the management server 24 are realized by separate devices, but may be realized by one device.

第一の実施形態および第二の実施形態では、ゲートウェイ16としてSaaS型ゲートウェイを用いることによって、ルーティングの機能とHTTPトンネルの機能およびXMPPクライアントの機能と1台の機器で実現したが、別々の装置によって実現してもよい。または、ルーティングの機能をルータによって実現し、HTTPトンネルの機能およびXMPPクライアントの機能を画像形成装置10に設けてもよい。   In the first embodiment and the second embodiment, although the function of routing and the function of HTTP tunnel and the function of XMPP client and one device are realized by using the SaaS type gateway as the gateway 16, they are separate devices. It may be realized by Alternatively, the routing function may be realized by a router, and the HTTP tunnel function and the XMPP client function may be provided in the image forming apparatus 10.

図18および図19は、印刷ジョブの際のクラウドサーバ21、管理サーバ24、ゲートウェイ16、および画像形成装置10それぞれの処理の流れの変形例を示すシーケンス図である。   FIGS. 18 and 19 are sequence diagrams showing modified examples of processing flows of the cloud server 21, the management server 24, the gateway 16, and the image forming apparatus 10 at the time of a print job.

第一の実施形態および第二の実施形態では、コネクションの確立後、画像形成装置10からの要求の有無に関わらず、クラウドサーバ21が画像形成装置10へ画像データ7Bを送信した。つまり、いわゆるプッシュ型で画像データ7Bを送信した。しかし、画像形成装置10からの要求があった後に、送信してもよい。つまり、いわゆるプル型で送信してもよい。   In the first embodiment and the second embodiment, after establishing the connection, the cloud server 21 transmits the image data 7B to the image forming apparatus 10 regardless of the presence or absence of the request from the image forming apparatus 10. That is, the image data 7B is transmitted in a so-called push type. However, it may be transmitted after the image forming apparatus 10 has made a request. That is, it may be transmitted in a so-called pull type.

例えば、各装置は、図18に示す手順で処理を行えばよい。図18に示す手順は、基本的に第一の実施形態と同様である。以下、印刷ジョブを画像形成装置10に実行させる場合を例に、相違点を中心に説明する。   For example, each device may perform processing in the procedure illustrated in FIG. The procedure shown in FIG. 18 is basically the same as that of the first embodiment. Hereinafter, differences from the case where the image forming apparatus 10 is caused to execute a print job will be described as an example.

端末装置3から印刷ジョブの指令を受け付けてからクラウドサーバ21と画像形成装置10との間にコネクションを確立するまでの処理は、基本的に第一の実施形態の場合と同様であり、図8〜図9のステップ#701〜#708、#721〜#735、#731〜#735、#741〜#743で説明した通りである。   The process from receiving a print job instruction from the terminal device 3 to establishing a connection between the cloud server 21 and the image forming apparatus 10 is basically the same as that in the first embodiment, as shown in FIG. Steps # 701 to # 708, # 721 to # 735, # 731 to # 735, and # 741 to # 743 in FIG.

ただし、クラウドサーバ21は、さらに、トンネルおよびゲートウェイ16を介して印刷ジョブに関する情報(例えば、画像形成装置10が行うべき印刷ジョブが生じたこと、その印刷ジョブの識別子、または、その印刷ジョブの内容)を画像形成装置10へ通知する(図18の#607、#634〜#635、#641)。   However, the cloud server 21 further includes information related to the print job via the tunnel and the gateway 16 (for example, the occurrence of the print job to be performed by the image forming apparatus 10, the identifier of the print job, or the content of the print job ) Is notified to the image forming apparatus 10 (# 607, # 634 to # 635, # 641 in FIG. 18).

コネクションの確立後の処理も、基本的に第一の実施形態の場合と同様であり、図8〜図9のステップ#709〜#712、#736〜#737、#744〜#747で説明した通りである。   The processing after establishment of the connection is also basically the same as in the case of the first embodiment, and has been described in Steps # 709 to # 712, # 736 to # 737, and # 744 to # 747 in FIGS. It is street.

ただし、画像形成装置10は、ステップ#641で受け付けた通知に基づいて、コネクションの確立後、そのコネクションを介してクラウドサーバ21に対して印刷ジョブのデータ(画像データ7B)を要求する(#645)。   However, after the connection is established, the image forming apparatus 10 requests the cloud server 21 for print job data (image data 7B) via the connection based on the notification received in step # 641 (# 645). ).

クラウドサーバ21は、画像形成装置10からの要求に応じて、画像データ7Bを画像形成装置10へそのコネクションを介して送信する(#611、#612)。   In response to the request from the image forming apparatus 10, the cloud server 21 transmits the image data 7B to the image forming apparatus 10 via the connection (# 611, # 612).

そして、画像形成装置10は、画像データ7Bを受信し(#646)、これに基づいて印刷ジョブを実行する(#647)。   Then, the image forming apparatus 10 receives the image data 7B (# 646), and executes a print job based on this (# 647).

その他、情報処理システム5、ローカルエリアネットワーク1、画像形成装置10、ファイルサーバ15、ゲートウェイ16、クラウドサーバ21、管理サーバ24の全体または各部の構成、処理内容、処理順序、データの構成などは、本発明の趣旨に沿って適宜変更することができる。   In addition, the configuration of the information processing system 5, the local area network 1, the image forming apparatus 10, the file server 15, the gateway 16, the cloud server 21, the whole or each part of the management server 24, processing contents, processing order, data construction, etc. It can change suitably along the meaning of the present invention.

5 情報処理システム(通信システム)
1 ローカルエリアネットワーク(特定のネットワーク)
10 画像形成装置(第一の装置)
101、181 コネクション確立部(確立手段)
21 クラウドサーバ(第二の装置、制御装置)
206、276 コネクション要求部(要求手段)
208、278 トンネル切断部(切断手段)
209、279 ジョブ付与部(指令手段)
7B 画像データ
コネクション確立コマンド7G
5 Information processing system (communication system)
1 Local area network (specific network)
10 Image forming apparatus (first apparatus)
101, 181 Connection establishment unit (establishment means)
21 Cloud server (second device, control device)
206, 276 Connection request unit (request means)
208, 278 Tunnel cutting part (cutting means)
209, 279 Job assignment unit (command means)
7B image data connection establishment command 7G

Claims (14)

特定のネットワークに設けられる第一の装置と、前記ネットワークの外部に設けられる第二の装置と、によって構成される通信システムであって、
前記第二の装置に、
前記ネットワークのゲートウェイと当該第二の装置との間のトンネル以外の、当該ゲートウェイおよび当該第二の装置の少なくとも一方を端とする第二のトンネルの数が所定の数以上になる場合に、当該トンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立の要求を当該第一の装置に対して与える要求手段
前記コネクションが確立される前は、前記トンネルを介して前記第一の装置へ特定のジョブの実行のために使用するデータの一部分を送信し、当該コネクションが確立された後は、当該コネクションを介して当該第一の装置へ、当該特定のジョブの実行の指令および当該データの残りを送信する指令手段と、
が設けられ、
前記第一の装置に、
前記コネクションを確立する確立手段、
が設けられ、
前記第二の装置に、さらに、
前記要求を与えた後、前記トンネルを切断する切断手段、
が設けられる、
ことを特徴とする通信システム。
A communication system comprising: a first device provided in a specific network; and a second device provided outside the network,
In the second device,
In the case where the number of second tunnels having at least one of the gateway and the second device other than the tunnel between the gateway of the network and the second device exceeds a predetermined number, a requesting unit through the tunnel, providing a request for establishing a connection between said first device and said second device with respect to the first device,
Before the connection is established, a part of data used for execution of a specific job is transmitted to the first device via the tunnel, and after the connection is established, the connection is established. Command means for transmitting an instruction to execute the specific job and the rest of the data to the first device;
Is provided,
In the first device,
Establishing means for establishing the connection;
Is provided,
Furthermore, in the second device,
Disconnecting means for disconnecting the tunnel after giving the request;
Is provided,
A communication system characterized by
前記指令手段は、前記トンネルが切断されるまでは、前記データを当該トンネルおよび前記コネクションに分けて送信する、
請求項に記載の通信システム。
The command means divides and transmits the data to the tunnel and the connection until the tunnel is disconnected.
The communication system according to claim 1 .
特定のネットワークに設けられる第一の装置と、前記ネットワークの外部に設けられる第二の装置と、によって構成される通信システムであって、
前記第二の装置に、
前記ネットワークのゲートウェイと当該第二の装置との間のトンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立の要求を当該第一の装置に対して与える要求手段
前記コネクションを介して前記第一の装置へ特定のジョブの実行の指令を送信し、さらに、前記トンネルが切断されるまでは、当該コネクションおよび当該トンネルを介して当該第一の装置へ、当該特定のジョブの実行のために使用するデータを当該トンネルおよび当該コネクションに分けて送信し、当該トンネルが切断された後は、当該コネクションを介して当該第一の装置へ当該データを送信する、指令手段と、
が設けられ、
前記第一の装置に、
前記コネクションを確立する確立手段、
が設けられ、
前記第二の装置に、さらに、
前記要求を与えた後、前記トンネルを切断する切断手段、
が設けられる、
ことを特徴とする通信システム。
A communication system comprising: a first device provided in a specific network; and a second device provided outside the network,
In the second device,
A request to request the first device to establish a connection between the first device and the second device through a tunnel between a gateway of the network and the second device and means,
An instruction to execute a specific job is transmitted to the first device via the connection, and further, until the tunnel is disconnected, the identification is made to the first device via the connection and the tunnel. Command means for dividing data to be used for execution of the job into the tunnel and the connection and transmitting the data, and transmitting the data to the first device through the connection after the tunnel is disconnected When,
Is provided,
In the first device,
Establishing means for establishing the connection;
Is provided,
Furthermore, in the second device,
Disconnecting means for disconnecting the tunnel after giving the request;
Is provided,
A communication system characterized by
前記ジョブが複数ある場合は、前記トンネルが前記ジョブごとに1つずつ確立され、
前記確立手段は、前記ジョブのうちの優先度の低いジョブから優先的に、当該ジョブのために前記コネクションを確立する、
請求項1ないし請求項のいずれかに記載の通信システム。
If there are multiple jobs, one tunnel is established for each job,
The establishing means establishes the connection for the job with priority given to the job with low priority among the jobs.
The communication system according to any one of claims 1 to 3 .
特定のジョブを実行する、特定のネットワークに設けられる第一の装置と、前記ネットワークの外部に設けられる第二の装置と、によって構成される通信システムであって、
前記第二の装置に、
前記特定のジョブが複数ある場合に前記ネットワークのゲートウェイと当該第二の装置との間に当該特定のジョブごとに1つずつ確立されたトンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立の要求を当該第一の装置に対して与える要求手段、
が設けられ、
前記第一の装置に、
前記複数の特定のジョブのうちの優先度の低いジョブから優先的に、当該ジョブのために前記コネクションを確立する確立手段、
が設けられ、
前記第二の装置に、さらに、
前記要求を与えた後、前記トンネルを切断する切断手段、
が設けられる、
ことを特徴とする通信システム。
A communication system comprising a first device provided in a specific network and a second device provided outside the network , which executes a specific job ,
In the second device,
The through one by one established tunnel for each said specific job between a particular job is the network gateway and the second device when there are a plurality, the first device and the second Request means for providing the first device with a request for establishing a connection with the device,
Is provided,
In the first device,
Establishing means for establishing the connection for the job with priority given to a low priority job among the plurality of specific jobs ;
Is provided,
Furthermore, in the second device,
Disconnecting means for disconnecting the tunnel after giving the request;
Is provided,
A communication system characterized by
前記第二の装置に、
前記コネクションを介して前記第一の装置へ前記特定のジョブの実行の指令を送信する指令手段、
が設けられる、
請求項に記載の通信システム。
In the second device,
Command means for transmitting a command for execution of the specific job to the first device via the connection;
Is provided,
The communication system according to claim 5 .
前記指令手段は、さらに、前記コネクションを介して前記第一の装置へ前記特定のジョブの実行のために使用するデータを送信する、
請求項に記載の通信システム。
The command means further transmits data used for execution of the specific job to the first device via the connection.
The communication system according to claim 6 .
特定のネットワークに設けられる処理装置に前記ネットワークの外部から処理を実行させるための制御装置であって、
前記ネットワークのゲートウェイと当該制御装置との間のトンネル以外の、当該ゲートウェイおよび当該制御装置の少なくとも一方を端とする第二のトンネルの数が所定の数以上になる場合に、当該トンネルを介して、前記処理装置と当該制御装置との間のコネクションの確立の要求を当該処理装置に対して与える要求手段と、
前記コネクションが確立される前は、前記トンネルを介して前記処理装置へ特定のジョブの実行のために使用するデータの一部分を送信し、当該コネクションが確立された後は、当該コネクションを介して当該処理装置へ、当該特定のジョブの実行の指令および当該データの残りを送信する指令手段と、
前記要求を与えた後、前記トンネルを切断する切断手段と、
を有することを特徴とする制御装置。
A control device for causing a processing device provided in a specific network to execute processing from the outside of the network,
When the number of second tunnels having at least one of the gateway and the control device other than the tunnel between the gateway of the network and the control device exceeds a predetermined number , Request means for providing the processing device with a request for establishing a connection between the processing device and the control device;
Before the connection is established, part of data used for execution of a specific job is transmitted to the processing device through the tunnel, and after the connection is established, the connection is used to transmit the part. Instruction means for transmitting to the processing device an instruction to execute the specific job and the rest of the data;
Disconnecting means for disconnecting the tunnel after giving the request;
A control device characterized by having.
特定のネットワークに設けられる処理装置に前記ネットワークの外部から処理を実行させるための制御装置であって、
前記ネットワークのゲートウェイと当該制御装置との間のトンネルを介して、前記処理装置と当該制御装置との間のコネクションの確立の要求を当該処理装置に対して与える要求手段と、
前記コネクションを介して前記処理装置へ特定のジョブの実行の指令を送信し、さらに、前記トンネルが切断されるまでは、当該コネクションおよび当該トンネルを介して当該処理装置へ、当該特定のジョブの実行のために使用するデータを当該トンネルおよび当該コネクションに分けて送信し、当該トンネルが切断された後は、当該コネクションを介して当該処理装置へ当該データを送信する、指令手段と、
前記要求を与えた後、前記トンネルを切断する切断手段と、
を有することを特徴とする制御装置。
A control device for causing a processing device provided in a specific network to execute processing from the outside of the network,
Request means for providing the processing device with a request for establishing a connection between the processing device and the control device via a tunnel between the gateway of the network and the control device;
An instruction to execute a specific job is transmitted to the processing device via the connection, and the specific job is executed to the processing device via the connection and the tunnel until the tunnel is disconnected. Command means for dividing data to be used for transmission into the tunnel and the connection and transmitting the data, and transmitting the data to the processing apparatus through the connection after the tunnel is disconnected;
Disconnecting means for disconnecting the tunnel after giving the request;
A control device characterized by having.
特定のネットワークに設けられる第一の装置および前記ネットワークの外部に設けられる第二の装置における通信方法であって、
前記ネットワークのゲートウェイと前記第二の装置との間のトンネル以外の、当該ゲートウェイおよび当該第二の装置の少なくとも一方を端とする第二のトンネルの数が所定の数以上になる場合に、当該トンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立を当該第一の装置に対して要求する処理を当該第二の装置に実行させ、
前記コネクションが確立される前は、前記トンネルを介して前記第一の装置へ特定のジョブの実行のために使用するデータの一部分を送信する処理を前記第二の装置に実行させ、
前記コネクションを確立する処理を前記第一の装置に実行させ、
前記コネクションが確立された後は、当該コネクションを介して前記第一の装置へ、前記特定のジョブの実行の指令および前記データの残りを送信する処理を前記第二の装置に実行させ、
前記要求する処理の後、前記トンネルを切断する処理を前記第二の装置に実行させる、
ことを特徴とする通信方法。
A communication method in a first device provided in a specific network and a second device provided outside the network,
Other than the tunnel between the gateway and the second device of the network, if the number of the second tunnel to the end of at least one of the gateway and the second device is equal to or greater than a predetermined number, the Causing the second device to execute a process of requesting the first device to establish a connection between the first device and the second device via a tunnel ;
Before the connection is established, the second device causes the second device to execute a process of transmitting a portion of data used for execution of a specific job to the first device via the tunnel;
Causing the first device to execute the process of establishing the connection;
After the connection is established, the second device is caused to execute a process of transmitting a command to execute the specific job and the rest of the data to the first device via the connection;
After the requesting process, cause the second device to execute the process of disconnecting the tunnel;
A communication method characterized by
特定のネットワークに設けられる第一の装置および前記ネットワークの外部に設けられる第二の装置における通信方法であって、
前記ネットワークのゲートウェイと前記第二の装置との間のトンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立を当該第一の装置に対して要求する処理を当該第二の装置に実行させ、
前記コネクションを介して前記第一の装置へ特定のジョブの実行の指令を送信する処理を前記第二の装置に実行させ、
前記トンネルが切断されるまでは、前記コネクションおよび当該トンネルを介して前記第一の装置へ、前記特定のジョブの実行のために使用するデータを当該トンネルおよび当該コネクションに分けて送信する処理を前記第二の装置に実行させ、
前記コネクションを確立する処理を前記第一の装置に実行させ、
前記要求する処理の後、前記トンネルを切断する処理を前記第二の装置に実行させ、
前記トンネルが切断された後は、前記コネクションを介して前記第一の装置へ前記データを送信する処理を前記第二の装置に実行させる、
ことを特徴とする通信方法。
A communication method in a first device provided in a specific network and a second device provided outside the network,
Through the tunnel between the gateway and the second device of the network, the process of requesting the establishment of a connection between the first device and the second device with respect to the first device Make the second device execute it,
Allowing the second device to execute a process of transmitting a command for execution of a specific job to the first device via the connection;
Until the tunnel is disconnected, the process of dividing data to be used for the execution of the specific job into the tunnel and the connection and transmitting the data to the first device via the connection and the tunnel is the process Let the second device execute
Causing the first device to execute the process of establishing the connection;
After the requesting process, the second apparatus is caused to execute the process of disconnecting the tunnel ;
After the tunnel is disconnected, cause the second device to execute the process of transmitting the data to the first device via the connection.
A communication method characterized by
特定のジョブを実行する、特定のネットワークに設けられる第一の装置および前記ネットワークの外部に設けられる第二の装置における通信方法であって、
前記特定のジョブが複数ある場合に前記ネットワークのゲートウェイと前記第二の装置との間に当該特定のジョブごとに1つずつ確立されたトンネルを介して、前記第一の装置と当該第二の装置との間のコネクションの確立を当該第一の装置に対して要求する処理を当該第二の装置に実行させ、
前記複数の特定のジョブのうちの優先度の低いジョブから優先的に、当該ジョブのために前記コネクションを確立する処理を前記第一の装置に実行させ、
前記要求する処理の後、前記トンネルを切断する処理を前記第二の装置に実行させる、
ことを特徴とする通信方法。
A first apparatus provided in a specific network , which executes a specific job , and a communication method in a second apparatus provided outside the network,
The through one by one established tunnel for each said specific job between a particular job is a gateway and the second device of the network when there are a plurality of said first device and said second Allowing the second device to execute a process of requesting the first device to establish a connection with the device;
The first apparatus is caused to execute the process of establishing the connection for the job from the lower priority job among the plurality of specific jobs ,
After the requesting process, cause the second device to execute the process of disconnecting the tunnel;
A communication method characterized by
特定のネットワークに設けられる処理装置に前記ネットワークの外部から処理を実行させるためのコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
前記ネットワークのゲートウェイと当該コンピュータとの間のトンネル以外の、当該ゲートウェイおよび当該コンピュータの少なくとも一方を端とする第二のトンネルの数が所定の数以上になる場合に、当該トンネルを介して、前記処理装置と当該コンピュータとの間のコネクションの確立を当該処理装置に対して要求する処理を実行させ、
前記コネクションが確立される前は、前記トンネルを介して前記処理装置へ特定のジョブの実行のために使用するデータの一部分を送信する処理を実行させ、
前記コネクションが確立された後は、当該コネクションを介して前記処理装置へ、前記特定のジョブの実行の指令および前記データの残りを送信する処理を実行させ、
前記要求する処理の後、前記トンネルを切断する処理を実行させる、
ことを特徴とするコンピュータプログラム。
A computer program for use in a computer for causing a processing device provided in a specific network to execute processing from the outside of the network,
On the computer
When the number of second tunnels having at least one of the gateway and the computer other than the tunnel between the gateway of the network and the computer is equal to or more than a predetermined number, the tunnel is used to Execute processing for requesting the processing device to establish a connection between the processing device and the computer;
Before the connection is established, a process of transmitting a portion of data used for execution of a specific job to the processing device through the tunnel is performed.
After the connection is established, a process of transmitting a command to execute the specific job and the rest of the data to the processing device via the connection is executed.
After the requested process, execute a process of disconnecting the tunnel,
A computer program characterized by
特定のネットワークに設けられる処理装置に前記ネットワークの外部から処理を実行させるためのコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
前記ネットワークのゲートウェイと当該コンピュータとの間のトンネルを介して、前記処理装置と当該コンピュータとの間のコネクションの確立を当該処理装置に対して要求する処理を実行させ、
前記コネクションを介して前記処理装置へ特定のジョブの実行の指令を送信する処理を実行させ、
前記トンネルが切断されるまでは、前記コネクションおよび当該トンネルを介して前記処理装置へ、前記特定のジョブの実行のために使用するデータを当該トンネルおよび当該コネクションに分けて送信する処理を実行させ、
前記要求する処理の後、前記トンネルを切断する処理を実行させ、
前記トンネルが切断された後は、前記コネクションを介して前記処理装置へ前記データを送信する処理を実行させる、
ことを特徴とするコンピュータプログラム。
A computer program for use in a computer for causing a processing device provided in a specific network to execute processing from the outside of the network,
On the computer
Processing of requesting the processing apparatus to establish a connection between the processing apparatus and the computer via a tunnel between a gateway of the network and the computer;
Execute a process of transmitting a command of execution of a specific job to the processing device via the connection;
Until the tunnel is disconnected, the processing device is caused to execute processing to divide data to be used for execution of the specific job into the tunnel and the connection via the connection and the tunnel.
After the requested process, execute a process of disconnecting the tunnel ,
After the tunnel is disconnected, execute processing of transmitting the data to the processing device through the connection.
A computer program characterized by
JP2015018949A 2015-02-03 2015-02-03 Communication system, control device, communication method, and computer program Active JP6536050B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015018949A JP6536050B2 (en) 2015-02-03 2015-02-03 Communication system, control device, communication method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015018949A JP6536050B2 (en) 2015-02-03 2015-02-03 Communication system, control device, communication method, and computer program

Publications (2)

Publication Number Publication Date
JP2016144057A JP2016144057A (en) 2016-08-08
JP6536050B2 true JP6536050B2 (en) 2019-07-03

Family

ID=56568878

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015018949A Active JP6536050B2 (en) 2015-02-03 2015-02-03 Communication system, control device, communication method, and computer program

Country Status (1)

Country Link
JP (1) JP6536050B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100485801B1 (en) * 2002-03-07 2005-04-28 삼성전자주식회사 Network connecting apparatus and method for offering direct connection between network devices existing different private networks
US7673048B1 (en) * 2003-02-24 2010-03-02 Cisco Technology, Inc. Methods and apparatus for establishing a computerized device tunnel connection
JP2009177239A (en) * 2008-01-21 2009-08-06 Mitsubishi Electric Corp Network relay device
JP5867448B2 (en) * 2013-04-26 2016-02-24 コニカミノルタ株式会社 Network system, access support server, processing device, communication proxy device, and computer program
JP5813835B2 (en) * 2014-07-31 2015-11-17 エヌ・ティ・ティ・コミュニケーションズ株式会社 Client device and communication system

Also Published As

Publication number Publication date
JP2016144057A (en) 2016-08-08

Similar Documents

Publication Publication Date Title
JP5867448B2 (en) Network system, access support server, processing device, communication proxy device, and computer program
JP5803991B2 (en) Print system, intermediate server, printing apparatus, job system, print job execution method, and computer program
EP3352431B1 (en) Network load balance processing system, method, and apparatus
CN106330855B (en) Communication system, management server, and control method
JP2016181774A (en) Image formation apparatus
US9203935B2 (en) Communication apparatus, communication systems, methods, and non-transitory computer-readable media for processing data according to different protocols in response to packets received using different interface standards
US10440094B2 (en) System for restricting remote operation command if not from relay device
US10367894B2 (en) Information processing apparatus, method for controlling the same, non-transitory computer-readable storage medium, and information processing system
US10705776B2 (en) Image processing apparatus, control method for image processing apparatus, and storage medium
JP6403505B2 (en) Information processing apparatus, control method therefor, and program
JP6531730B2 (en) Communication device and communication program
JP6289057B2 (en) COMMUNICATION DEVICE AND ITS CONTROL METHOD, PRINTING DEVICE, ITS CONTROL METHOD, AND PROGRAM
JP6794281B2 (en) Information processing device, control method of information processing device, and program
JP2012165269A (en) Relay server and relay communication system
JP6536050B2 (en) Communication system, control device, communication method, and computer program
JP2022161704A (en) Communication system and communication method
JP2016066265A (en) Information processing device, communication system, and program
JP2011160286A (en) Call control server, relay server, vpn device, vpn communication system, vpn networking method, program, and storage medium
JP7406705B2 (en) Information processing device and method of controlling the information processing device
JP6870337B2 (en) Image forming equipment, access support methods, and computer programs
JP2017173872A (en) Information processing apparatus, image formation apparatus, and information processing program
JP6515688B2 (en) Gateway device
JP6916529B2 (en) Device server and device server control method
US8854647B2 (en) Image forming apparatus with time-divisional function execution
JP6561965B2 (en) Communication device and communication program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190108

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190108

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: 20190507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190520

R150 Certificate of patent or registration of utility model

Ref document number: 6536050

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150