Connection request forwarding system, and computer-readable non-transitory recording medium storing connection request forwarding program

By introducing a communication unit and a control unit in the information processing system, combined with the connection request forwarding program, the problem of connection requests cannot be accurately routed is solved, and the function of forwarding connection requests to the corresponding information processing system is realized, which improves the reliability of the system and efficiency.

CN119211330APending Publication Date: 2024-12-27KYOCERA DOCUMENT SOLUTIONS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411494800.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-10-25
Filing Date
2024-10-24
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

The existing information processing system cannot effectively forward the connection request from the connection source to the corresponding information processing system in multiple information processing systems, resulting in the connection request being unable to be accurately routed.

Method used

A connection request forwarding system is designed, including a communication unit and a control unit. By executing a connection request forwarding program stored in a computer, the connection request is forwarded from the connection source to an appropriate information processing system in a plurality of information processing systems, based on the HTTP request. The forwarding conditions are established to establish a corresponding relationship for forwarding.

Benefits of technology

It realizes forwarding connection requests to the information processing system corresponding to the requested content, ensuring that connection requests can accurately reach the target system, and improving the reliability and efficiency of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119211330A_ABST
    Figure CN119211330A_ABST
Patent Text Reader

Abstract

A connection request forwarding system includes a communication unit and a control unit. The communication unit performs communication with a connection source and a plurality of information processing systems. The control unit functions as a connection request forwarding unit that receives a connection request transmitted from a connection source and forwards the connection request to any one of the plurality of information processing systems. When a transfer condition of the connection request is satisfied based on at least the HTTP request of the connection request, the connection request transfer unit transfers the connection request to the information processing system associated with the transfer condition. As a result, a connection request from a connection source can be transferred to the information processing system corresponding to the content of the connection request among the plurality of information processing systems.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a connection request forwarding system for forwarding a connection request from a connection source to any one of a plurality of information processing systems, and a computer-readable non-transitory recording medium storing a connection request forwarding program. Background Art

[0002] Conventionally, there is known a technique for connecting to an information processing system from a connection source external to the information processing system and using a function provided by the information processing system. Summary of the invention

[0003] By the way, in the above-mentioned conventional technology, there is the following problem: in the case of having multiple information processing systems and a connection request forwarding system that forwards a connection request from a connection source to any one of the multiple information processing systems, it is impossible to forward the connection request from the connection source to an information processing system among the multiple information processing systems that corresponds to the content of the connection request.

[0004] The present invention is made in view of the above-mentioned problems, and its purpose is to provide a connection request forwarding system and a connection request forwarding program that can forward a connection request from a connection source to an information processing system corresponding to the content of the connection request among multiple information processing systems.

[0005] Solutions for solving problems

[0006] A connection request forwarding system according to one aspect of the present invention includes a communication unit and a control unit. The communication unit communicates with a connection source and a plurality of information processing systems. The control unit functions as a connection request forwarding unit that receives a connection request sent from a connection source and forwards it to any one of the plurality of information processing systems. When a forwarding condition of the connection request is satisfied at least based on an HTTP request of the connection request, the connection request forwarding unit forwards the connection request to an information processing system that has established a corresponding relationship with the forwarding condition as a destination.

[0007] A computer-readable non-transitory recording medium according to another aspect of the present invention stores a connection request forwarding program. The connection request forwarding program is executed by a processor included in the computer, so that the computer functions as a connection request forwarding unit. The connection request forwarding unit receives a connection request sent from a connection source connected to the computer and forwards it to any one of a plurality of information processing systems connected to the computer. When a forwarding condition of the connection request is satisfied at least based on an HTTP request of the connection request, the connection request forwarding unit forwards the connection request to an information processing system that has established a corresponding relationship with the forwarding condition as a destination.

[0008] According to the present invention, a connection request from a connection source can be forwarded to an information processing system corresponding to the content of the connection request among a plurality of information processing systems. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Figure 1 It is a block diagram of the system.

[0010] Figure 2 is a block diagram of an example of a gateway.

[0011] Figure 3A This is a diagram showing an example of a URL before forwarding.

[0012] Figure 3B This is a diagram showing an example of an HTTP request of a connection request sent to a URL before forwarding.

[0013] Figure 4 This is a diagram showing an example of a forwarding rule.

[0014] Figure 5 This is a flowchart showing an example of the operation of the gateway when a connection request is received.

[0015] Fig. 6A This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0016] Figure 6B This is a diagram showing an example of an HTTP request forwarded to the image processing system cluster.

[0017] Fig. 7A This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0018] Figure 7B FIG. 1 is a diagram showing another example of an HTTP request forwarded to the image processing system cluster.

[0019] Figure 8 is a diagram showing another example of forwarding rules.

[0020] Fig.9A This is a diagram showing another example of the URL of the destination of the connection request.

[0021] Fig. 9B This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0022] Fig.10 is a diagram showing another example of forwarding rules.

[0023] Fig.11 is a flowchart showing another example of the operation of the gateway when a connection request is received.

[0024] Fig. 12A This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0025] Fig. 12B FIG. 1 is a diagram showing another example of an HTTP request forwarded to the image processing system cluster.

[0026] Fig.13A This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0027] Fig. 13B FIG. 1 is a diagram showing another example of an HTTP request forwarded to the image processing system cluster.

[0028] Fig.14A is a diagram showing another example of the URL before forwarding.

[0029] Fig. 14B This is a diagram showing another example of an HTTP request sent to a pre-forwarding URL.

[0030] Fig.15 is a diagram showing another example of forwarding rules.

[0031] Fig.16A This is a diagram showing another example of a URL before forwarding.

[0032] Fig. 16B This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0033] Fig.17 is a diagram showing another example of forwarding rules.

[0034] Fig.18 is a flowchart showing another example of the operation of the gateway when a connection request is received.

[0035] Fig.19A This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0036] Fig.19B FIG. 1 is a diagram showing another example of an HTTP request forwarded to the image processing system cluster.

[0037] Fig. 20AThis is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0038] Fig. 20B FIG. 1 is a diagram showing another example of an HTTP request forwarded to the image processing system cluster.

[0039] Fig.21A This is a diagram showing another example of an HTTP request of a connection request sent to a URL before forwarding.

[0040] Fig. 21B FIG. 1 is a diagram showing another example of an HTTP request forwarded to the image processing system cluster.

[0041] Fig.22A is a diagram showing another example of the URL before forwarding.

[0042] Fig. 22B This is a diagram showing another example of an HTTP request sent to a pre-forwarding URL.

[0043] Fig.23 is a diagram showing another example of forwarding rules. DETAILED DESCRIPTION

[0044] Hereinafter, embodiments of the present invention will be described using the drawings.

[0045] (First Embodiment)

[0046] First, the configuration of the system according to the first embodiment will be described.

[0047] Figure 1 It is a block diagram of the system 10 according to the first embodiment.

[0048] like Figure 1 As shown, the system 10 has a plurality of image processing system clusters 20 as information processing systems, and the information processing systems implement document processing such as generating, searching, editing, and saving documents. In addition to the image processing system cluster 20, the system 10 may also have at least one image processing system cluster having the same structure as the image processing system cluster 20. The image processing system cluster 20 may also operate in a multi-tenant model used by multiple tenants. The image processing system cluster 20 may be composed of one computer such as a PC (Personal Computer), or may be composed of multiple computers. The image processing system cluster 20 may also be implemented on the cloud.

[0049] The image processing system cluster 20 may be set for each region, such as the United States, Europe, or Asia, etc. For example, by setting the image processing system cluster 20 for each region, the system 10 can, for example, distribute the processing load to each region, and even if any image processing system cluster 20 stops, other image processing system clusters 20 can continue processing.

[0050] The image processing system cluster 20 may be configured for each function regarding at least a part of functions such as an authentication function for authenticating a user, a tenant management function for managing a tenant, or a device management function for managing an image forming apparatus 50 described later. By configuring the image processing system cluster 20 for each function, the system 10 can, for example, set one image processing system cluster 20 for a specific function throughout the world to reduce costs.

[0051] Regarding at least a part of the tenants, the image processing system cluster 20 may be configured for each tenant. By configuring the image processing system cluster 20 for each tenant, the system 10 can distribute the processing load to each tenant and improve security performance, for example.

[0052] The system 10 includes a gateway 30, which relays a session to any image processing system cluster 20 configured at the back end based on a request from an image forming device 50, a computer 60, or an external system 70 described later. The gateway 30 may be composed of a single computer such as a PC, or may be composed of a plurality of computers. The gateway 30 may also be implemented on the cloud.

[0053] The system 10 includes a database 40 storing a forwarding rule 41 for forwarding a connection request from an image forming apparatus 50 , a computer 60 , or an external system 70 as a connection source to any one of the plurality of image processing system clusters 20 .

[0054] The system 10 includes an image forming device 50 that is used as a device for receiving a document from the image processing system cluster 20, transmitting a document to the image processing system cluster 20, or printing a document. In addition to the image forming device 50, the system 10 may include at least one image forming device having the same structure as the image forming device 50.

[0055] The system 10 includes a computer 60, which is composed of a mobile device such as a smartphone or a PC. In addition to the computer 60, the system 10 may include at least one computer having the same structure as the computer 60. The computer 60 can use the image processing system cluster 20 via an application such as a web browser or a local application. The computer 60 can, for example, store a document in the image processing system cluster 20, search for a document managed by the image processing system cluster 20, refer to a document managed by the image processing system cluster 20, or edit a document managed by the image processing system cluster 20.

[0056] The system 10 includes an external system 70 that uses the image processing system cluster 20 outside the image processing system cluster 20. In addition to the external system 70, the system 10 may include at least one external system having the same structure as the external system 70. The external system 70 may also be a cloud service.

[0057] Figure 2 : is a block diagram of the gateway 30 in the case where it is composed of one computer.

[0058] like Figure 2 As shown, the gateway 30 includes: an operation unit 31, which is an operation device such as a keyboard or a mouse for inputting various operations; a display unit 32, which is a display device such as an LCD (Liquid Crystal Display) for displaying various information; a communication unit 33, which is a communication device that communicates with an external device via a network such as a LAN or the Internet, or directly communicates with an external device through a wired or wireless connection without going through a network; a storage unit 34, which is a non-volatile storage device such as a semiconductor memory or an HDD (Hard Disk Drive) for storing various information; and a control unit 35, which controls the gateway 30 as a whole.

[0059] The storage unit 34 stores a connection request forwarding program 34A for forwarding a connection request from a connection source to any one of the plurality of image processing system clusters 20. The connection request forwarding program 34A may be installed in the gateway 30 at the manufacturing stage of the gateway 30, may be additionally installed in the gateway 30 from an external storage medium such as a USB (Universal Serial Bus) memory, or may be additionally installed in the gateway 30 from a network.

[0060] The control unit 35 includes, for example, a CPU (Central Processing Unit), a ROM (Read Only Memory) storing programs and various data, and a RAM (Random Access Memory) as a memory used as a work area of ​​the CPU of the control unit 35. The CPU of the control unit 35 executes the program stored in the storage unit 34 or the ROM of the control unit 35.

[0061] The control unit 35 implements a connection request forwarding unit 35A that executes a connection request forwarding program 34A to forward a connection request from a connection source to any one of the plurality of image processing system clusters 20. Therefore, the gateway 30 constitutes a connection request forwarding system of the present invention.

[0062] Figure 3A This is a diagram showing an example of a URL (Uniform Resource Locator) of a destination of a connection request sent from a connection source. Figure 3B It is shown that Figure 3A The URL shown is a diagram of an example of an HTTP (Hypertext Transfer Protocol) request 80 of a connection request to be sent to a destination.

[0063] Figure 1 The connection source such as the image forming apparatus 50 , the computer 60 , or the external system 70 shown in the figure sends a connection request to a specific URL (hereinafter referred to as “pre-forwarding URL”) in order to connect to the image processing system cluster 20 .

[0064] For example, the URL before forwarding is Figure 3A The URL is in the format of "https: / / example.net / region / tenant-id / function / " as shown.

[0065] Figure 3AThe domain name "example.net" in the URL before forwarding is the domain name of the gateway 30. In "region" in the path in the URL before forwarding, a specific character string indicating a region is actually recorded, such as "us" indicating the United States, "eu" indicating Europe, or "as" indicating Asia. In "tenant-id" in the path in the URL before forwarding, a specific character string indicating a tenant ID as identification information of the tenant is actually recorded, such as "000-111-333". In "function" in the path in the URL before forwarding, a specific character string indicating a function of the image processing system cluster 20 is actually recorded, such as "auth" indicating an authentication function, "TM" indicating a tenant management function, or "DM" indicating a device management function.

[0066] by Figure 3A The HTTP request 80 of the connection request sent from the connection source as the destination URL before forwarding shown has, for example, Figure 3B The structure shown.

[0067] Figure 3B The HTTP request 80 shown has: a request line 81 as the first line; and a header field 82, which is arranged immediately after the request line 81 and may be composed of multiple lines. The HTTP request 80 may also have a message body, which may be composed of multiple lines immediately after the blank line after the header field 82, after which a blank line is arranged.

[0068] The request line 81 includes a method 81A that specifies the type of request, a requested target 81B that is placed immediately after the method 81A with a space between them, and an HTTP version 81C that is placed immediately after the target 81B with a space between them.

[0069] Method 81A Figure 3B Although "GET" is used in the example shown, methods other than "GET" may be used.

[0070] Target 81B is Figure 3A The path in the URL before forwarding is " / region / tenant-id / function / ".

[0071] The header field 82 is configured with a header in the format of “field name: value” for each line. For example, the header field 82 includes a Host header 82A that specifies the domain name of the server to be connected. Figure 3B The Host header 82A shown is a representation of Figure 3A The domain name "Host:example.net" in the URL before forwarding is shown.

[0072] Figure 4 It is a diagram showing the forwarding rule 41.

[0073] Figure 4 The forwarding rule 41 shown shows, for each forwarding condition, the forwarding condition of the connection request, an ID as identification information of the forwarding condition, and a forwarding destination associated with the forwarding condition.

[0074] The smaller the numerical value of the ID, the more preferentially the forwarding condition is applied. The forwarding condition with ID "001" in the forwarding rule 41 is the following condition: the path included in the request line 81 of the HTTP request 80 is completely consistent with the string " / eu / 000-111-222 / ". The forwarding condition with ID "002" in the forwarding rule 41 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / eu / ". The forwarding condition with ID "003" in the forwarding rule 41 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / us / ". The forwarding condition with ID "004" in the forwarding rule 41 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / 000-111-333 / ". The forwarding condition with ID "005" in the forwarding rule 41 is a condition that the string " / auth / " is included in the path included in the request line 81 of the HTTP request 80. The forwarding condition with ID "006" in the forwarding rule 41 is a condition that the path included in the request line 81 of the HTTP request 80 can be any string.

[0075] There is a case where the instruction to edit the path included in the request line 81 of the HTTP request 80 establishes a correspondence with the forwarding condition in the forwarding rule 41. The forwarding conditions with IDs "001", "004", and "005" in the forwarding rule 41 include a string ""url action":"non"", which indicates that the instruction to edit the path has not established a correspondence. The forwarding condition with ID "002" in the forwarding rule 41 includes a string ""url action":"edit"," / "", which indicates that the instruction to edit has established a correspondence, and the instruction to edit replaces the string " / eu / " in the string of the path included in the request line 81 of the HTTP request 80 with the string " / ". The forwarding condition with ID "003" in the forwarding rule 41 includes the string "url action": "edit", " / ", which indicates that an edit instruction establishes a corresponding relationship, and the edit instruction replaces the string " / us / " in the string of the path included in the request line 81 of the HTTP request 80 with the string " / ". The replaced string may also include a regular expression.

[0076] In the forwarding destination in the forwarding rule 41, the portion other than the path in the URL of the forwarding destination of the connection request is shown. "companyA.example.com" in the forwarding destination corresponding to the forwarding condition with ID "001" in the forwarding rule 41 is, for example, the domain name of the image processing system cluster 20 configured in Europe, which is used for the tenant with tenant ID "000-111-222" for the device management function. "eu.example.com" in the forwarding destination corresponding to the forwarding condition with ID "002" in the forwarding rule 41 is, for example, the domain name of the image processing system cluster 20 configured in Europe. "us.example.com" in the forwarding destination corresponding to the forwarding condition with ID "003" in the forwarding rule 41 is, for example, the domain name of the image processing system cluster 20 configured in the United States. "companyB.example.com" in the forwarding destination corresponding to the forwarding condition with ID "004" in the forwarding rule 41 is, for example, the domain name of the image processing system cluster 20 for the tenant with tenant ID "000-111-333". "auth.example.com" in the forwarding destination corresponding to the forwarding condition with ID "005" in the forwarding rule 41 is, for example, the domain name of the image processing system cluster 20 used for the authentication function. "as.example.com" in the forwarding destination corresponding to the forwarding condition with ID "006" in the forwarding rule 41 is, for example, the domain name of the image processing system cluster 20 configured in Asia.

[0077] As described above, the forwarding condition with ID "006" in the forwarding rule 41 is a condition that the path included in the request line 81 of the HTTP request 80 can be any character string. Therefore, the forwarding destination corresponding to the forwarding condition with ID "006" in the forwarding rule 41 is a standard forwarding destination determined when all other forwarding conditions are not satisfied. In addition, the forwarding rule 41 may not include a standard forwarding destination.

[0078] Next, the operation of gateway 30 when receiving a connection request from image forming apparatus 50 , computer 60 , or external system 70 will be described.

[0079] In addition, the following describes an example of a case where the gateway 30 receives a connection request from the image forming device 50, but the same applies to a case where the gateway 30 receives a connection request from an image forming device other than the image forming device 50, and a case where the gateway 30 receives a connection request from a computer 60 or an external system 70.

[0080] The image forming device 50 sends a connection request to the pre-forwarding URL as described above in order to connect to the image processing system cluster 20. Figure 3A The following explains the format of "https: / / example.net / region / tenant-id / function / " as shown in the figure.

[0081] Figure 5 This is a flowchart of the operation of the gateway 30 when a connection request is received from the image forming device 50 .

[0082] When receiving a connection request from the image forming device 50, the connection request forwarding unit 35A of the gateway 30 executes Figure 5 Action shown.

[0083] like Figure 5 As shown, the connection request forwarding unit 35A acquires the forwarding rule 41 from the database 40 (step S101).

[0084] When the process of step S101 is finished, connection request forwarding section 35A obtains the path included in request line 81 of HTTP request 80 of the connection request received from image forming apparatus 50 (step S102). That is, connection request forwarding section 35A obtains the path in the URL before forwarding.

[0085] When the process of step S102 is completed, the connection request forwarding unit 35A determines whether there is a forwarding condition that is satisfied based on at least the acquired path among the forwarding conditions in the acquired forwarding rule 41 (step S103).

[0086] When it is determined in step S103 that, among the forwarding conditions in the acquired forwarding rule 41, there is a forwarding condition that is satisfied at least based on the acquired path, the connection request forwarding unit 35A determines a forwarding destination that establishes a corresponding relationship in the forwarding rule 41 with the forwarding condition with the smallest ID that is satisfied at least based on the acquired path (hereinafter referred to as the "target forwarding condition") among the forwarding conditions in the acquired forwarding rule 41 (step S104).

[0087] When the process of step S104 is completed, the connection request forwarding unit 35A determines whether the instruction to edit the path is associated with the target forwarding condition in the forwarding rule 41 (step S105).

[0088] When it is determined in step S105 that the instruction to edit the path establishes a correspondence relationship with the target forwarding condition in the forwarding rule 41, the connection request forwarding unit 35A edits the path included in the request line 81 of the HTTP request 80 according to the instruction to edit the path to establish a correspondence relationship with the target forwarding condition (step S106). For example, when the forwarding rule 41 obtained in step S101 is Figure 4 In the case where the forwarding rule is shown and the request line 81 of the HTTP request 80 is "GET / eu / 000-111-222 / TM / HTTP / 1.1", since the forwarding condition with ID "002" is the target forwarding condition, the connection request forwarding unit 35A edits the request line 81 of the HTTP request 80 to "GET / 000-111-222 / TM / HTTP / 1.1" through the processing of step S106.

[0089] When it is determined in step S105 that the instruction to edit the path is not associated with the target forwarding condition in the forwarding rule 41, or when the processing of step S106 is terminated, the connection request forwarding unit 35A forwards the HTTP request 80 to the image processing system cluster 20 as the forwarding destination determined in step S104 (step S107), and terminates. Figure 5 Action shown.

[0090] When it is determined in step S103 that there is no forwarding condition that is satisfied at least based on the acquired path among the forwarding conditions in the acquired forwarding rule 41, the connection request forwarding unit 35A executes an error response such as "404 not found" to the image forming device 50 as the connection source (step S108), and ends. Figure 5 Action shown.

[0091] Fig. 6A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Figure 3B The example shown is a diagram of an example of a different one. Figure 6B It shows that the received Fig. 6A The illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0092] In forwarding rule 41 is Figure 4 In the case of the forwarding rules shown, upon receiving Fig. 6AWhen the HTTP request 80 shown in FIG. 1 is received, at least based on the path included in the request line 81 of the HTTP request 80, the forwarding condition with the ID "004" is satisfied (Yes in step S103), and the instruction to edit the path is not associated with the forwarding condition with the ID "004" in the forwarding rule 41 (No in step S105), so the connection request forwarding unit 35A changes the Host header 82A of the HTTP request 80 from "Host: example.net" (refer to FIG. 1 ). Fig. 6A . ) is replaced with "Host:companyB.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "004" (refer to Figure 6B . ) and forward Figure 6B The HTTP request 80 is shown (step S107).

[0093] Fig. 7A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Figure 3B as well as Fig. 6A The example shown is a diagram of an example of a different one. Figure 7B It shows that the received Fig. 7A The illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0094] In forwarding rule 41 is Figure 4 In the case of the forwarding rules shown, upon receiving Fig. 7A When the HTTP request 80 shown in FIG. 1 is received, at least based on the path included in the request line 81 of the HTTP request 80, the forwarding condition with the ID "002" is satisfied (Yes in step S103), and the instruction to edit the path is associated with the forwarding condition with the ID "002" in the forwarding rule 41 (Yes in step S105), so the connection request forwarding unit 35A changes the Host header 82A of the HTTP request 80 from "Host: example.net" (refer to FIG. 1 ). Fig. 7A . ) is replaced with "Host:eu.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "002" (refer to Figure 7B ), and from the path included in the target 81B of the request line 81 of the HTTP request 80, such as Figure 7B Remove " / eu" as shown (step S106), and forward Figure 7B The HTTP request 80 is shown (step S107).

[0095] As described above, according to the first embodiment, the gateway 30 forwards the connection request to the image processing system cluster 20 as the forwarding destination corresponding to the forwarding condition established in the forwarding rule 41, and the forwarding condition is satisfied at least based on the HTTP request 80 of the connection request from the connection source (steps S101 to S104, and step S107). As a result, the connection request from the connection source can be forwarded to the image processing system cluster 20 corresponding to the content of the connection request among the plurality of image processing system clusters 20.

[0096] In addition, according to the first embodiment, the gateway 30 forwards the connection request to the image processing system cluster 20 as the forwarding destination corresponding to the forwarding condition established in the forwarding rule 41, and the forwarding condition is satisfied based on at least the path included in the request line 81 of the HTTP request 80 of the connection request from the connection source (steps S101 to S104, and step S107). As a result, the connection request from the connection source can be forwarded to the appropriate image processing system cluster 20 with a simple structure.

[0097] Furthermore, according to the first embodiment, when the forwarding condition of any one of the IDs "001" to "005" is satisfied, that is, when at least a specific character string is included in the path included in the request line 81 of the HTTP request 80, the gateway 30 forwards the connection request to the specific image processing system cluster 20 as the destination. As a result, the connection request from the connection source can be forwarded to the appropriate image processing system cluster 20 with a simple structure.

[0098] In addition, according to the first embodiment, a forwarding condition (a forwarding condition with an ID of "001", "002" or "003") is associated with a forwarding destination in the forwarding rule 41, and the forwarding condition includes a condition that a character string indicating a specific region is included in a path included in the request line 81 of the HTTP request 80, and the forwarding destination is the image processing system cluster 20 set in the region. As a result, when the path included in the request line 81 of the HTTP request 80 includes at least a character string indicating a specific region, the gateway 30 can forward the connection request to the image processing system cluster 20 set in the region.

[0099] In addition, the forwarding condition does not need to establish a correspondence with the forwarding destination in the forwarding rule 41. The forwarding condition includes: a condition that a string representing a specific region is included in the path included in the request line 81 of the HTTP request 80, and the forwarding destination is an image processing system cluster 20 set in the region.

[0100] In addition, according to the first embodiment, a forwarding condition (a forwarding condition with an ID of "001" or "004") is associated with a forwarding destination in the forwarding rule 41, and the forwarding condition includes a condition that a character string indicating a specific tenant using the image processing system cluster 20 is included in a path included in the request line 81 of the HTTP request 80, and the forwarding destination is the image processing system cluster 20 for the tenant. As a result, when the path included in the request line 81 of the HTTP request 80 includes at least a character string indicating a specific tenant using the image processing system cluster 20, the gateway 30 can forward the connection request to the image processing system cluster 20 for the tenant.

[0101] In addition, the forwarding condition does not necessarily need to establish a correspondence with the forwarding destination in the forwarding rule 41. The forwarding condition includes: a condition that a string representing a specific tenant using the image processing system cluster 20 is included in the path included in the request line 81 of the HTTP request 80, and the forwarding destination is the image processing system cluster for the tenant.

[0102] In addition, according to the first embodiment, a forwarding condition (a forwarding condition with an ID of "001" or "005") is associated with a forwarding destination in the forwarding rule 41, and the forwarding condition includes a condition that a character string indicating a specific function of the image processing system cluster 20 is included in a path included in the request line 81 of the HTTP request 80, and the forwarding destination is the image processing system cluster 20 used for the function. As a result, when the path included in the request line 81 of the HTTP request 80 includes at least a character string indicating the use of the specific function of the image processing system cluster 20, the gateway 30 can forward the connection request to the image processing system cluster 20 used for the function.

[0103] In addition, the forwarding condition does not need to establish a correspondence with the forwarding destination in the forwarding rule 41. The forwarding condition includes the condition that a string representing a specific function of the image processing system cluster 20 is included in the path included in the request line 81 of the HTTP request 80, and the forwarding destination is the image processing system cluster 20 used for the function.

[0104] Furthermore, according to the first embodiment, when the instruction to edit the path in the request line 81 of the HTTP request 80 of the connection request is associated with the satisfied forwarding condition in the forwarding rule 41 (Yes in step S105), the gateway 30 edits the path according to the instruction (step S106), and forwards the connection request (step S107). As a result, the structure of the image processing system cluster at the forwarding destination of the connection request can be set to a structure corresponding to the edited path.

[0105] For example, the instruction to edit the path associated with the forwarding condition with ID "002" or "003" in the forwarding rule 41 is an instruction to edit to remove the character string indicating the region from the path. Therefore, when the forwarding condition with ID "002" or "003" in the forwarding rule 41 is satisfied at least based on the path, the structure of the plurality of image processing system clusters 20 to which the connection request is forwarded may be a structure that performs the same action regardless of the region. That is, the code for implementing the application program of these image processing system clusters 20 may be a common code.

[0106] The forwarding rule 41 includes forwarding conditions related to all regions, tenant IDs, and functions (forwarding conditions with ID "001"), forwarding conditions related only to regions (forwarding conditions with ID "002" or "003"), forwarding conditions related only to tenant IDs (forwarding conditions with ID "004"), and forwarding conditions related only to functions (forwarding conditions with ID "005"). However, the forwarding rule 41 may include at least one of forwarding conditions related only to regions and tenant IDs, forwarding conditions related only to regions and functions, and forwarding conditions related only to tenant IDs and functions.

[0107] For example, as forwarding conditions related only to regions and functions, forwarding conditions such as "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific region." or "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific function of the image processing system cluster 20." or "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific region, and the path includes a character string representing a specific function of the image processing system cluster 20." can be listed.

[0108] The forwarding rule 41 may also be set so that, among the forwarding conditions related to all tenant IDs and functions, the forwarding conditions related to only the tenant ID, and the forwarding conditions related to only the function, the forwarding conditions related to all tenant IDs and functions are applied with the highest priority. In addition, the forwarding rule 41 may also be set so that, among the forwarding conditions related to only the tenant ID and the forwarding conditions related to only the function, the forwarding conditions related to only the tenant ID are applied with the highest priority.

[0109] In the first embodiment, the case where the pre-forwarding URL is in the format of "https: / / example.net / region / tenant-id / function / " is described. However, the pre-forwarding URL may not include at least one of "region", "tenant-id" and "function". For example, the pre-forwarding URL may be any one of "https: / / example.net / region / tenant-id / ", "https: / / example.net / region / function / ", "https: / / example.net / tenant-id / function / ", "https: / / example.net / region / ", "https: / / example.net / tenant-id / " and "https: / / example.net / function / ". For example, in the case where the pre-forwarding URL is in the format of "https: / / example.net / region / ", forwarding rule 41 may be Figure 8 Forwarding rules shown.

[0110] In the first embodiment, the path included in the request line 81 of the HTTP request 80 includes a character string indicating a region, a character string indicating a tenant ID, and a character string indicating a function. However, the path included in the request line 81 of the HTTP request 80 may include a character string indicating an attribute other than the region, the tenant ID, and the function, instead of or in addition to the character string indicating the region, the character string indicating the tenant ID, and the character string indicating the function.

[0111] In the first embodiment, the forwarding condition is a condition related to the path included in the request line 81 of the HTTP request 80. However, the forwarding condition may also include a condition related to a location other than the path included in the request line 81 in the HTTP request 80. For example, the forwarding condition may also include a condition related to the value of a specific header in the header field 82 of the HTTP request 80.

[0112] (Second Embodiment)

[0113] Next, the configuration of the system 10 according to the second embodiment will be described. In the description of the system 10 according to the second embodiment, the same configuration as that of the first embodiment will not be described repeatedly.

[0114] Fig.9AThis is a diagram showing another example of the URL of the destination of the connection request sent from the connection source. Fig. 9B It is shown that Fig.9A The URL shown is a diagram of an example of an HTTP request 80 to which a connection request is sent.

[0115] For example, the URL before forwarding is Fig.9A The URL is in the format of "https: / / example.net / region / " as shown.

[0116] Fig.9A The domain name "example.net" in the URL before forwarding is the domain name of the gateway 30. In the path "region" in the URL before forwarding, a specific character string indicating a region, such as "us" for the United States, "eu" for Europe, or "as" for Asia, is actually recorded.

[0117] by Fig.9A The HTTP request 80 of the connection request sent from the connection source as the destination URL before forwarding shown has, for example, Fig. 9B The structure shown.

[0118] exist Fig. 9B In the HTTP request 80 shown, method 81A is Fig. 9B Although "GET" is used in the example shown, methods other than "GET" may be used.

[0119] Target 81B is Fig.9A The path " / region / " in the URL before forwarding is shown.

[0120] For example, the header field 82 includes a Host header 82A, a tenant-id header 82B specifying a tenant ID as identification information of a connected tenant, and a function header 82C specifying a function of the image processing system cluster 20 . Fig. 9B The Host header 82A shown is a representation of Fig.9A The domain name "Host:example.net" in the URL before forwarding is shown. Fig. 9B The tenant-id header 82B shown is "tenant-id:000-111-333" indicating "000-111-333" as the tenant ID. Fig. 9BThe function header 82C shown is "function: auth" indicating the authentication function. In addition to "auth" indicating the authentication function, there are various values ​​for "function", such as "TM" indicating the tenant management function or "DM" indicating the device management function.

[0121] Fig.10 4 is a diagram showing the forwarding rule 42 .

[0122] Fig.10 The forwarding rule 42 shown shows, for each forwarding condition, the forwarding condition of the connection request, an ID as identification information of the forwarding condition, and a forwarding destination associated with the forwarding condition.

[0123] The smaller the numerical value of the ID, the more preferentially the forwarding condition is applied. The forwarding condition with ID "001" in the forwarding rule 42 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / eu / ". The forwarding condition with ID "002" in the forwarding rule 42 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / us / ". The forwarding condition with ID "003" in the forwarding rule 42 is the following condition: the value of the tenant-id header 82B in the header field 82 of the HTTP request 80 is completely consistent with the string "000-111-333". The forwarding condition with ID "004" in the forwarding rule 42 is the following condition: the value of the function header 82C in the header field 82 of the HTTP request 80 includes the string " / auth / ". The forwarding condition of the ID "005" in the forwarding rule 42 is a condition that the path included in the request line 81 of the HTTP request 80 and the value of the header in the header field 82 of the HTTP request 80 can be any character string.

[0124] There is a case where the instruction to edit the path included in the request line 81 of the HTTP request 80 establishes a correspondence with the forwarding condition in the forwarding rule 42. The forwarding conditions with IDs "003" and "004" in the forwarding rule 42 include a string "url action": "non", which indicates that the instruction to edit the path does not establish a correspondence. The forwarding condition with ID "001" in the forwarding rule 42 includes a string "url action": "edit", " / ", which indicates that the instruction to edit is established. The instruction to edit replaces the string " / eu / " in the string of the path included in the request line 81 of the HTTP request 80 with the string " / ". The forwarding condition with ID "002" in the forwarding rule 42 includes the string "url action": "edit", " / ", which indicates that an edit instruction establishes a corresponding relationship, and the edit instruction replaces the string " / us / " in the string of the path included in the request line 81 of the HTTP request 80 with the string " / ". The replaced string may also include a regular expression.

[0125] In the forwarding destination in the forwarding rule 42, the portion other than the path in the URL of the forwarding destination of the connection request is shown. The forwarding destination "eu.example.com" corresponding to the forwarding condition with ID "001" in the forwarding rule 42 is, for example, the domain name of the image processing system cluster 20 configured in Europe. The forwarding destination "us.example.com" corresponding to the forwarding condition with ID "002" in the forwarding rule 42 is, for example, the domain name of the image processing system cluster 20 configured in the United States. The forwarding destination "companyA.example.com" corresponding to the forwarding condition with ID "003" in the forwarding rule 42 is, for example, the domain name of the image processing system cluster 20 for the tenant with tenant ID "000-111-333". The forwarding destination "auth.example.com" corresponding to the forwarding condition with ID "004" in the forwarding rule 42 is, for example, the domain name of the image processing system cluster 20 used for the authentication function. The “as.example.com” in the forwarding destination associated with the forwarding condition with ID “005” in the forwarding rule 42 is, for example, the domain name of the image processing system cluster 20 arranged in Asia.

[0126] As described above, the forwarding condition with ID "005" in the forwarding rule 42 is a condition that the path included in the request line 81 of the HTTP request 80 and the value of the header in the header field 82 of the HTTP request 80 can be any character string. Therefore, the forwarding destination corresponding to the forwarding condition with ID "005" in the forwarding rule 42 is a standard forwarding destination determined when all other forwarding conditions are not satisfied. In addition, the forwarding rule 42 may not include a standard forwarding destination.

[0127] Next, the operation of gateway 30 when receiving a connection request from image forming apparatus 50 , computer 60 , or external system 70 will be described.

[0128] In addition, the following describes an example of a case where the gateway 30 receives a connection request from the image forming device 50, but the same applies to a case where the gateway 30 receives a connection request from an image forming device other than the image forming device 50, and a case where the gateway 30 receives a connection request from a computer 60 or an external system 70.

[0129] The image forming device 50 sends a connection request to the pre-forwarding URL as described above in order to connect to the image processing system cluster 20. Fig.9A The following explains the format of "https: / / example.net / region / " shown in the figure.

[0130] Fig.11 This is a flowchart of the operation of the gateway 30 when a connection request is received from the image forming device 50 .

[0131] When receiving a connection request from the image forming device 50, the connection request forwarding unit 35A of the gateway 30 executes Fig.11 Action shown.

[0132] like Fig.11 As shown, the connection request forwarding unit 35A acquires the forwarding rule 42 from the database 40 (step S201).

[0133] When the processing of step S201 is completed, the connection request forwarding unit 35A determines that in the acquired forwarding rule 42, Fig.11 Whether there is a forwarding condition that has not yet become a target in the indicated action (step S202).

[0134] When it is determined in step S202 that, in the forwarding rule 42 obtained, Fig.11 If there is a forwarding condition that is not yet a target in the action shown, the connection request forwarding unit 35A will forward the request to the forwarding rule 42 in this case. Fig.11Among the forwarding conditions that have not become the target in the indicated operation, the forwarding condition with the smallest ID is set as the target (step S203).

[0135] When the process of step S203 is finished, the connection request forwarding unit 35A determines whether the condition related to the path included in the request line 81 of the HTTP request 80 is included in the forwarding condition of the current destination (step S204).

[0136] When it is determined in step S204 that the condition related to the path included in the request line 81 of the HTTP request 80 is included in the forwarding condition of the current target, the connection request forwarding portion 35A obtains the path included in the request line 81 of the HTTP request 80 of the connection request received from the image forming device 50 (step S205). That is, the connection request forwarding portion 35A obtains the path in the URL before forwarding.

[0137] When it is determined in step S204 that the condition related to the path included in the request line 81 of the HTTP request 80 is not included in the forwarding condition of the current target, or when the processing of step S205 is ended, the connection request forwarding unit 35A determines whether the condition related to the value of the header in the header field 82 of the HTTP request 80 is included in the forwarding condition of the current target (step S206).

[0138] When it is determined in step S206 that the condition related to the value of the header in the header field 82 of the HTTP request 80 is included in the forwarding condition of the current target, the connection request forwarding unit 35A obtains the value of the header related to the forwarding condition of the current target from the header field 82 of the HTTP request 80 of the connection request, which is a connection request received from the image forming device 50 (step S207).

[0139] When it is determined in step S206 that the condition related to the value of the header in the header field 82 of the HTTP request 80 is not included in the forwarding condition of the current target, or when the processing of step S207 is terminated, the connection request forwarding unit 35A determines whether the forwarding condition of the current target is satisfied (step S208). Here, when the path is obtained in step S205, the connection request forwarding unit 35A determines whether the forwarding condition of the current target is satisfied at least based on the obtained path. Similarly, when the value is obtained in step S207, the connection request forwarding unit 35A determines whether the forwarding condition of the current target is satisfied at least based on the obtained value.

[0140] When it is determined in step S208 that the forwarding condition of the current destination is not satisfied, the connection request forwarding unit 35A executes the process of step S202.

[0141] If it is determined in step S208 that the forwarding condition of the current destination is satisfied, the connection request forwarding unit 35A determines whether the instruction to edit the path is associated with the forwarding condition of the current destination in the forwarding rule 42 (step S209).

[0142] When it is determined in step S209 that the instruction to edit the path is associated with the forwarding condition of the current target in the forwarding rule 42, the connection request forwarding unit 35A edits the path included in the request line 81 of the HTTP request 80 according to the instruction to edit the path associated with the forwarding condition of the current target (step S210). For example, when the forwarding rule 42 acquired in step S201 is Fig.10 When the forwarding rule shown is met and the request line 81 of the HTTP request 80 is "GET / eu / HTTP / 1.1", and the forwarding condition with ID "001" is the forwarding condition of the current target, the connection request forwarding unit 35A edits the request line 81 of the HTTP request 80 to "GET / HTTP / 1.1" through the processing of step S210.

[0143] When it is determined in step S209 that the instruction for editing the path does not establish a correspondence with the forwarding condition of the current target in the forwarding rule 42, or when the processing of step S210 is completed, the connection request forwarding unit 35A determines the forwarding destination that establishes a correspondence with the forwarding condition of the current target in the acquired forwarding rule 42 (step S211).

[0144] When the processing of step S211 is completed, the connection request forwarding unit 35A forwards the HTTP request 80 to the image processing system cluster 20 as the forwarding destination determined in step S211 (step S212), and ends. Fig.11 Action shown.

[0145] When it is determined in step S202 that, in the forwarding rule 42 obtained, Fig.11 If the forwarding condition that has not become the target does not exist in the operation shown, the connection request forwarding unit 35A executes an error response such as "404 not found" to the image forming device 50 that is the connection source (step S213), and ends. Fig.11 Action shown.

[0146] Fig. 12A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Fig. 9B The example shown is a diagram of an example of a different one. Fig. 12B It shows that the received Fig. 12AThe illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0147] In forwarding rule 42, Fig.10 In the case of the forwarding rules shown, upon receiving Fig. 12A In the case of HTTP request 80 shown in FIG. 1 , at least based on the value of tenant-id header 82B in header field 82 of HTTP request 80, forwarding condition with ID “003” is satisfied (Yes in step S208), and the instruction to edit the path is not associated with forwarding condition with ID “003” in forwarding rule 42 (No in step S209), so connection request forwarding unit 35A changes Host header 82A of HTTP request 80 from “Host: example.net” (refer to FIG. 1 ). Fig. 12A . ) is replaced with "Host:companyA.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "003" (refer to Fig. 12B . ) and forward Fig. 12B The HTTP request 80 is shown (step S212).

[0148] Fig.13A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Fig. 9B as well as Fig. 12A The example shown is a diagram of an example of a different one. Fig. 13B It shows that the received Fig.13A The illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0149] In forwarding rule 42, Fig.10 In the case of the forwarding rules shown, upon receiving Fig.13A When the HTTP request 80 shown in FIG. 8 is sent, at least based on the path included in the request line 81 of the HTTP request 80, the forwarding condition with the ID "001" is satisfied (Yes in step S208), and the instruction to edit the path is associated with the forwarding condition with the ID "001" in the forwarding rule 42 (Yes in step S209), so the connection request forwarding unit 35A selects the path from the target 81B included in the request line 81 of the HTTP request 80 as shown in FIG. Fig. 13B As shown in FIG. 1 , “ / eu” is removed (step S210), and the Host header 82A of the HTTP request 80 is changed from “Host: example.net” (refer to Fig.13A. ) is replaced with "Host:eu.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "001" (refer to Fig. 13B . ) and forward Fig. 13B The HTTP request 80 is shown (step S212).

[0150] As described above, according to the second embodiment, the gateway 30 forwards the connection request to the image processing system cluster 20 as the forwarding destination corresponding to the forwarding condition established in the forwarding rule 42, which is based on at least the satisfaction of the value of the specific header in the header field 82 of the HTTP request 80 of the connection request from the connection source (steps S201 to S208, step S211, and step S212). As a result, the connection request from the connection source can be forwarded to the image processing system cluster 20 corresponding to the content of the connection request among the plurality of image processing system clusters 20.

[0151] Furthermore, according to the second embodiment, when the forwarding condition of ID "003" or "004" is satisfied, that is, when the value of a specific header in the header field 82 of the HTTP request 80 includes at least a specific character string, the gateway 30 forwards the connection request to the specific image processing system cluster 20 as the destination. As a result, the connection request from the connection source can be forwarded to the appropriate image processing system cluster 20 with a simple structure.

[0152] In addition, according to the second embodiment, a forwarding condition (forwarding condition with ID "003") is associated with a forwarding destination in the forwarding rule 42, and the forwarding condition includes a condition that a character string indicating a specific tenant using the image processing system cluster 20 is included in the value of a specific header in the header field 82 of the HTTP request 80, and the forwarding destination is the image processing system cluster 20 for the tenant. As a result, when the value of the specific header in the header field 82 of the HTTP request 80 includes at least a character string indicating a specific tenant using the image processing system cluster 20, the gateway 30 can forward the connection request to the image processing system cluster 20 for the tenant.

[0153] In addition, the forwarding condition does not necessarily need to establish a correspondence with the forwarding destination in the forwarding rule 42. The forwarding condition includes: the value of a specific header in the header field 82 of the HTTP request 80 includes a string representing a specific tenant using the image processing system cluster 20, and the forwarding destination is the image processing system cluster 20 used for the tenant.

[0154] In addition, according to the second embodiment, a forwarding condition (forwarding condition with ID "004") is associated with a forwarding destination in the forwarding rule 42, and the forwarding condition includes a condition that a character string indicating a specific function of the image processing system cluster 20 is included in the value of a specific header in the header field 82 of the HTTP request 80, and the forwarding destination is the image processing system cluster 20 for the function. As a result, when the value of the specific header in the header field 82 of the HTTP request 80 includes at least a character string indicating a specific function of the image processing system cluster 20, the gateway 30 can forward the connection request to the image processing system cluster 20 for the function.

[0155] In addition, the forwarding condition does not need to establish a correspondence with the forwarding destination in the forwarding rule 42. The forwarding condition includes: the value of a specific header in the header field 82 of the HTTP request 80 includes a string representing a specific function of the image processing system cluster 20, and the forwarding destination is the image processing system cluster 20 used for the function.

[0156] According to the second embodiment, when the instruction to edit the path in the request line 81 of the HTTP request 80 of the connection request is associated with the forwarding condition that is satisfied in the forwarding rule 42 (Yes in step S209), the gateway 30 edits the path according to the instruction (step S210), and forwards the connection request (step S212). As a result, the structure of the image processing system cluster 20 at the forwarding destination of the connection request can be set to a structure corresponding to the edited path.

[0157] For example, the instruction to edit the path associated with the forwarding condition with ID "001" or "002" in the forwarding rule 42 is an instruction to edit to remove the character string indicating the region from the path. Therefore, when the forwarding condition with ID "001" or "002" in the forwarding rule 42 is satisfied at least based on the path, the structure of the plurality of image processing system clusters to which the connection request is forwarded may be a structure that performs the same action regardless of the region. That is, the code of the application program for realizing these image processing system clusters may also be a common code.

[0158] In the second embodiment, the structure of editing the path is described when the forwarding condition in the forwarding rule 42 is satisfied at least based on the path. However, the structure of editing the path is also the same when the forwarding condition in the forwarding rule 42 is satisfied at least based on the value of a specific header in the header field 82 of the HTTP request 80.

[0159] The forwarding rule 42 includes forwarding conditions related only to regions among regions, tenant IDs, and functions (forwarding conditions with IDs of "001" or "002"), forwarding conditions related only to tenant IDs (forwarding conditions with IDs of "003"), and forwarding conditions related only to functions (forwarding conditions with IDs of "004"). However, the forwarding rule 42 may include at least one of forwarding conditions related to all regions, tenant IDs, and functions, forwarding conditions related only to regions and tenant IDs, forwarding conditions related only to regions and functions, and forwarding conditions related only to tenant IDs and functions.

[0160] For example, as forwarding conditions related only to regions and functions, the following forwarding conditions can be listed: "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific region." or "The value of a specific header in the header field 82 of the HTTP request 80 includes a character string representing a specific function of the image processing system cluster 20." Or this forwarding condition: "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific region, and the value of a specific header in the header field 82 of the HTTP request 80 includes a character string representing a specific function of the image processing system cluster 20."

[0161] The forwarding rule 42 may also be set so that, among the forwarding conditions related to all tenant IDs and functions, the forwarding conditions related to only the tenant ID, and the forwarding conditions related to only the function, the forwarding conditions related to all tenant IDs and functions are applied with the highest priority. In addition, the forwarding rule 42 may also be set so that, among the forwarding conditions related to only the tenant ID and the forwarding conditions related to only the function, the forwarding conditions related to only the tenant ID are applied with the highest priority.

[0162] In the second embodiment, the case where the tenant-id header 82B and the function header 82C are included in the header field 82 is described. However, at least one of the tenant-id header 82B and the function header 82C may not be included in the header field 82. For example, when the tenant-id header 82B is not included in the header field 82, the pre-forwarding URL and the HTTP request 80 may be Fig.14A as well as Fig. 14B The URL and HTTP request before forwarding are shown.

[0163] Fig.14A is the URL before forwarding, Fig.9A The example shown is a diagram of an example of a different one. Fig. 14B is a diagram showing HTTP request 80 and Fig. 9BThe example shown is a diagram of an example of a different one.

[0164] exist Fig.14A In the "tenant-id" of the URL "https: / / example.net / region / tenant-id / " shown as the forwarding URL, a specific character string indicating the tenant ID, such as "000-111-333", is actually recorded. Fig. 14B The header field 82 of the HTTP request 80 shown does not include a tenant-id header 82B (see Fig.9A as well as Fig. 9B . ).

[0165] Before forwarding, the URL and HTTP request 80 are Fig.14A as well as Fig. 14B In the case of the forwarding URL and HTTP request shown in FIG. 4 , the forwarding rule 42 may also be Fig.15 Forwarding rules shown.

[0166] Fig.15 is shown with Fig.10 The forwarding rule 42 shown is a diagram of an example of a different forwarding rule 42 .

[0167] Fig.15 The forwarding condition of the ID “003” in the forwarding rule 42 shown is a condition that the path included in the request line 81 of the HTTP request 80 includes a character string of “ / 000-111-333 / ”.

[0168] In the second embodiment, as the forwarding condition, the condition related to the value of the tenant-id header 82B in the header field 82 of the HTTP request 80 and the condition related to the value of the function header 82C are described. However, as the forwarding condition, a condition related to the value of a specific header in the header field 82 of the HTTP request 80 that is not the tenant-id header 82B or the function header 82C may be set.

[0169] (Third Embodiment)

[0170] Next, the configuration of the system 10 according to the third embodiment will be described. In the description of the system 10 according to the third embodiment, the same configuration as that of the first embodiment will not be described repeatedly.

[0171] Fig.16A This is a diagram showing another example of the URL of the destination of the connection request sent from the connection source. Fig. 16B It is shown that Fig.16AThe URL shown is a diagram of an example of an HTTP request 80 to which a connection request is sent.

[0172] For example, the URL before forwarding is Fig.16A The URL is in the format of "https: / / example.net / region / " as shown.

[0173] Fig.16A The domain name "example.net" in the URL before forwarding is the domain name of the gateway 30. In the path "region" in the URL before forwarding, a specific character string indicating a region, such as "us" for the United States, "eu" for Europe, or "as" for Asia, is actually recorded.

[0174] by Fig.16A The HTTP request 80 of the connection request sent from the connection source as the destination URL before forwarding shown has, for example, Fig. 16B The structure shown.

[0175] exist Fig. 16B In the HTTP request 80 shown, method 81A is Fig. 16B Although "GET" is used in the example shown, methods other than "GET" may be used.

[0176] Target 81B is Fig.16A The path " / region / " in the URL before forwarding is shown.

[0177] For example, the header field 82 includes a Host header 82A, a tenant-id header 82B, a function header 82C, and a user-id header 82D that specifies a user ID indicating identification information of a user who has made a connection request. Fig. 16B The Host header 82A shown is a representation of Fig.16A The domain name "Host:example.net" in the URL before forwarding is shown. Fig. 16B The tenant-id header 82B shown is "tenant-id:000-111-333" indicating "000-111-333" as the tenant ID. Fig. 16B The function header 82C shown is "function: auth" indicating the authentication function. Fig. 16B The user-id header 82D shown is "user-id: U0001" indicating "U0001" as the user ID.

[0178] Fig.17 It is a diagram showing the forwarding rule 43.

[0179] Fig.17 The forwarding rule 43 shown shows, for each forwarding condition, a forwarding condition of a connection request, an ID as identification information of the forwarding condition, a forwarding destination corresponding to the forwarding condition, and a prohibition condition of forwarding of the connection request corresponding to the forwarding condition.

[0180] The smaller the numerical value of the ID, the more preferentially the forwarding condition is applied. The forwarding condition with ID "001" in the forwarding rule 43 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / eu / ". The forwarding condition with ID "002" in the forwarding rule 43 is the following condition: the path included in the request line 81 of the HTTP request 80 includes the string " / us / ". The forwarding condition with ID "003" in the forwarding rule 43 is the following condition: the value of the tenant-id header 82B in the header field 82 of the HTTP request 80 is completely consistent with the string "000-111-333". The forwarding condition with ID "004" in the forwarding rule 43 is the following condition: the value of the function header 82C in the header field 82 of the HTTP request 80 includes the string " / auth / ". The forwarding condition of the ID “005” in the forwarding rule 43 is a condition that the path included in the request line 81 of the HTTP request 80 and the value of the header in the header field 82 of the HTTP request 80 can be any character string.

[0181] There is a case where the instruction to edit the path included in the request line 81 of the HTTP request 80 establishes a correspondence with the forwarding condition in the forwarding rule 43. The forwarding conditions with IDs "003" and "004" in the forwarding rule 43 include a string "url action": "non", which indicates that the instruction to edit the path does not establish a correspondence. The forwarding condition with ID "001" in the forwarding rule 43 includes a string "url action": "edit", " / ", which indicates that the instruction to edit is established. The instruction to edit replaces the string " / eu / " in the string of the path included in the request line 81 of the HTTP request 80 with the string " / ". The forwarding condition with ID "002" in forwarding rule 43 includes the string "url action": "edit", " / ", which indicates that an edit instruction establishes a corresponding relationship, and the edit instruction replaces the string " / us / " in the string of the path included in the request line 81 of the HTTP request 80 with the string " / ". A regular expression may also be included in the replaced string.

[0182] In the forwarding destination in the forwarding rule 43, the portion other than the path in the URL of the forwarding destination of the connection request is shown. The forwarding destination "eu.example.com" corresponding to the forwarding condition with ID "001" in the forwarding rule 43 is, for example, the domain name of the image processing system cluster 20 configured in Europe. The forwarding destination "us.example.com" corresponding to the forwarding condition with ID "002" in the forwarding rule 43 is, for example, the domain name of the image processing system cluster 20 configured in the United States. The forwarding destination "companyA.example.com" corresponding to the forwarding condition with ID "003" in the forwarding rule 43 is, for example, the domain name of the image processing system cluster 20 for the tenant with tenant ID "000-111-333". The forwarding destination "auth.example.com" corresponding to the forwarding condition with ID "004" in the forwarding rule 43 is, for example, the domain name of the image processing system cluster 20 used for the authentication function. The “as.example.com” in the forwarding destination associated with the forwarding condition with ID “005” in the forwarding rule 43 is, for example, the domain name of the image processing system cluster 20 arranged in Asia.

[0183] As described above, the forwarding condition with ID "005" in the forwarding rule 43 is a condition that the path included in the request line 81 of the HTTP request 80 and the value of the header in the header field 82 of the HTTP request 80 can be any character string. Therefore, the forwarding destination corresponding to the forwarding condition with ID "005" in the forwarding rule 43 is a standard forwarding destination determined when all other forwarding conditions are not satisfied. In addition, the forwarding rule 43 may not include a standard forwarding destination.

[0184] The prohibited condition that establishes a correspondence with the forwarding condition with ID "001" in forwarding rule 43 is the following condition: "The IP (Internet Protocol) address of the connection source is any one of "192.0.2.0~192.0.2.10", and the tenant ID is "000-111-333" or "000-111-444". ". The prohibited condition that establishes a correspondence with the forwarding condition with ID "002" in forwarding rule 43 is the following condition: "The IP address of the connection source is any one of "192.0.2.20~192.0.2.30"." or "The user ID is "U0001" or "U0002". ". The prohibited condition that establishes a correspondence with the forwarding condition with ID "003" in forwarding rule 43 is the following condition: "The user ID is "U0003". ". The prohibition condition corresponding to the forwarding condition with ID "004" in forwarding rule 43 is the following condition: "The IP address of the connection source is "192.0.2.40"." or "The tenant ID is "000-111-555".". The prohibition condition corresponding to the forwarding condition with ID "005" in forwarding rule 43 does not exist.

[0185] Next, the operation of gateway 30 when receiving a connection request from image forming apparatus 50 , computer 60 , or external system 70 will be described.

[0186] In addition, the following describes an example of a case where the gateway 30 receives a connection request from the image forming device 50, but the same applies to a case where the gateway 30 receives a connection request from an image forming device other than the image forming device 50, and a case where the gateway 30 receives a connection request from a computer 60 or an external system 70.

[0187] The image forming device 50 sends a connection request to the pre-forwarding URL as described above in order to connect to the image processing system cluster 20. Fig.16A The following explains the format of "https: / / example.net / region / " shown in the figure.

[0188] Fig.18 This is a flowchart of the operation of the gateway 30 when a connection request is received from the image forming device 50 .

[0189] When receiving a connection request from the image forming device 50, the connection request forwarding unit 35A of the gateway 30 executes Fig.18 Action shown.

[0190] like Fig.18 As shown, the connection request forwarding unit 35A acquires the forwarding rule 43 from the database 40 (step S301).

[0191] When the processing of step S301 is completed, the connection request forwarding unit 35A determines whether the forwarding rule 43 obtained in this case Fig.18 Whether there is a forwarding condition that has not yet become a target in the indicated action (step S302).

[0192] When it is determined in step S302 that, in the forwarding rule 43 obtained, Fig.18 If there is a forwarding condition that is not yet a target in the action shown, the connection request forwarding unit 35A will forward the request to the forwarding rule 43 in this case. Fig.18 Among the forwarding conditions that have not become the target in the indicated operation, the forwarding condition with the smallest ID is set as the target (step S303).

[0193] When the process of step S303 is finished, the connection request forwarding section 35A determines whether the condition related to the path included in the request line 81 of the HTTP request 80 is included in the forwarding condition of the current destination (step S304).

[0194] When it is determined in step S304 that the condition related to the path included in the request line 81 of the HTTP request 80 is included in the forwarding condition of the current target, the connection request forwarding portion 35A obtains the path included in the request line 81 of the HTTP request 80 of the connection request received from the image forming device 50 (step S305). That is, the connection request forwarding portion 35A obtains the path in the URL before forwarding.

[0195] When it is determined in step S304 that the condition related to the path included in the request line 81 of the HTTP request 80 is not included in the forwarding condition of the current target, or when the processing of step S305 is completed, the connection request forwarding unit 35A determines whether the condition related to the value of the header in the header field 82 of the HTTP request 80 is included in the forwarding condition of the current target (step S306).

[0196] When it is determined in step S306 that the condition related to the value of the header in the header field 82 of the HTTP request 80 is included in the forwarding condition of the current target, the connection request forwarding unit 35A obtains the value of the header related to the forwarding condition of the current target from the header field 82 of the HTTP request 80 of the connection request, which is a connection request received from the image forming device 50 (step S307).

[0197] When it is determined in step S306 that the condition related to the value of the header in the header field 82 of the HTTP request 80 is not included in the forwarding condition of the current target, or when the processing of step S307 is terminated, the connection request forwarding unit 35A determines whether the forwarding condition of the current target is satisfied (step S308). Here, when the path is obtained in step S305, the connection request forwarding unit 35A determines whether the forwarding condition of the current target is satisfied based on at least the path obtained in step S305. Similarly, when the value is obtained in step S307, the connection request forwarding unit 35A determines whether the forwarding condition of the current target is satisfied based on at least the value obtained in step S307.

[0198] When it is determined in step S308 that the forwarding condition of the current destination is not satisfied, the connection request forwarding unit 35A executes the process of step S302.

[0199] If it is determined in step S308 that the forwarding condition of the current destination is satisfied, the connection request forwarding unit 35A determines whether the prohibition condition associated with the forwarding condition of the current destination in the acquired forwarding rule 43 is satisfied (step S309).

[0200] Here, when the IP address of the connection source is included in the prohibition condition, the IP address of the connection source notified from the connection source may be used in step S309, and the prohibition condition is associated with the forwarding condition of the current target in the acquired forwarding rule 43. For example, when the IP address of the connection source is included in the header field 82 of the HTTP request 80, the connection request forwarding unit 35A may acquire the IP address of the connection source from the header field 82 in step S309.

[0201] When the tenant ID is included in the prohibition condition, the connection request forwarding unit 35A can also obtain the value of the tenant-id header 82B in the header field 82 of the HTTP request 80 as the tenant ID in step S309, and the prohibition condition establishes a correspondence with the forwarding condition of the current target in the acquired forwarding rule 43.

[0202] When the user ID is included in the prohibition condition, the connection request forwarding unit 35A can also obtain the value of the user-id header 82D in the header field 82 of the HTTP request 80 as the user ID in step S309. The prohibition condition establishes a correspondence with the forwarding condition of the current target in the acquired forwarding rule 43.

[0203] When there is no prohibition condition associated with the forwarding condition of the current target in the acquired forwarding rule 43, the connection request forwarding unit 35A determines in step S309 that the prohibition condition is not satisfied.

[0204] When it is determined in step S309 that the prohibition condition associated with the forwarding condition of the current destination in the acquired forwarding rule 43 is satisfied, the connection request forwarding unit 35A executes the process of step S302 .

[0205] When it is determined in step S309 that the prohibition condition for establishing a correspondence with the forwarding condition of the current target in the acquired forwarding rule 43 is not satisfied, the connection request forwarding unit 35A determines whether the instruction for editing the path establishes a correspondence with the forwarding condition of the current target in the forwarding rule 43 (step S310).

[0206] When it is determined in step S310 that the instruction to edit the path is associated with the forwarding condition of the current target in the forwarding rule 43, the connection request forwarding unit 35A edits the path included in the request line 81 of the HTTP request 80 according to the instruction to edit the path to be associated with the forwarding condition of the current target in the forwarding rule 43 (step S311). For example, when the forwarding rule 43 obtained in step S301 is Fig.17 When the forwarding rule shown is met and the request line 81 of the HTTP request 80 is "GET / eu / HTTP / 1.1", and the forwarding condition with ID "001" is the forwarding condition of the current target, the connection request forwarding unit 35A edits the request line 81 of the HTTP request 80 to "GET / HTTP / 1.1" through the processing of step S311.

[0207] When it is determined in step S310 that the instruction for editing the path does not establish a correspondence with the forwarding condition of the current target in the forwarding rule 43, or when the processing of step S311 is completed, the connection request forwarding unit 35A determines the forwarding destination that establishes a correspondence with the forwarding condition of the current target in the acquired forwarding rule 43 (step S312).

[0208] When the processing of step S312 is completed, the connection request forwarding unit 35A forwards the HTTP request 80 to the image processing system cluster 20 as the forwarding destination determined in step S312 (step S313), and ends. Fig.18 Action shown.

[0209] When it is determined in step S302 that, in the forwarding rule 43 obtained, Fig.18If the forwarding condition that has not become the target does not exist in the operation shown, the connection request forwarding unit 35A executes an error response such as "404 not found" to the image forming device 50 that is the connection source (step S314), and ends. Fig.18 Action shown.

[0210] Fig.19A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Fig. 16B The example shown is a diagram of an example of a different one. Fig.19B It shows that the received Fig.19A The illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0211] In forwarding rule 43 it is Fig.17 In the case of the forwarding rule shown, when receiving a forwarding source with IP address "192.0.2.50", Fig.19A In the case of HTTP request 80 shown in FIG. 1 , at least based on the value of tenant-id header 82B in header field 82 of HTTP request 80, the forwarding condition with ID “003” is satisfied (Yes in step S308), the prohibition condition is not satisfied (No in step S309), and the instruction to edit the path does not establish a corresponding relationship with the forwarding condition with ID “003” in forwarding rule 43 (No in step S310), so connection request forwarding unit 35A changes Host header 82A of HTTP request 80 from “Host: example.net” (refer to FIG. 1 ). Fig.19A . ) is replaced with "Host:companyA.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "003" (refer to Fig.19B . ) and forward Fig.19B The HTTP request 80 is shown (step S313).

[0212] Fig. 20A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Fig. 16B as well as Fig.19A The example shown is a diagram of an example of a different one. Fig. 20B It shows that the received Fig. 20A The illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0213] In forwarding rule 43 it is Fig.17In the case of the forwarding rule shown, when receiving a forwarding source with the IP address "192.0.2.60", Fig. 20A When the HTTP request 80 shown in FIG. 8 is made, at least based on the path included in the request line 81 of the HTTP request 80, the forwarding condition with the ID "001" is satisfied (Yes in step S308), the prohibition condition is not satisfied (No in step S309), and the instruction to edit the path is associated with the forwarding condition with the ID "001" in the forwarding rule 43 (Yes in step S310), so the connection request forwarding unit 35A selects the path from the target 81B included in the request line 81 of the HTTP request 80 as shown in FIG. Fig. 20B As shown in the figure, " / eu" is removed (step S311), and the Host header 82A of the HTTP request 80 is changed from "Host: example.net" (refer to Fig. 20A . ) is replaced with "Host:eu.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "001" (refer to Fig. 20B . ) and forward Fig. 20B The HTTP request 80 is shown (step S313).

[0214] Fig.21A is a HTTP request 80 showing a connection request sent to the URL before forwarding. Fig. 16B , Fig.19A as well as Fig. 20A The example shown is a diagram of an example of a different one. Fig. 21B It shows that the received Fig.21A The illustrated HTTP request 80 is a diagram showing an example of an HTTP request 80 that is forwarded by the connection request forwarding unit 35A to the image processing system cluster 20 .

[0215] In forwarding rule 43 it is Fig.17 In the case of the forwarding rule shown, when receiving a forwarding source with the IP address "192.0.2.40" Fig.21A When the HTTP request 80 is shown, at least based on the value of the function header 82C in the header field 82 of the HTTP request 80, the forwarding condition with ID "004" is satisfied (yes in step S308), but based on the IP address of the forwarding source, the prohibition condition is also satisfied (yes in step S309), so the connection request forwarding unit 35A will not forward the HTTP request 80 to the forwarding destination that establishes a correspondence with the forwarding condition with ID "004".

[0216] The forwarding condition with ID "005" is satisfied (Yes in step S308), the prohibition condition is not satisfied (No in step S309), and the instruction to edit the path is not associated with the forwarding condition with ID "005" in the forwarding rule 43 (No in step S310), so the connection request forwarding unit 35A changes the Host header 82A of the HTTP request 80 from "Host: example.net" (refer to Fig.21A . ) is replaced with "Host:as.example.com" which indicates the domain name of the forwarding destination associated with the forwarding condition with ID "005" (refer to Fig. 21B . ) and forward Fig. 21B The HTTP request 80 is shown (step S313).

[0217] As described above, according to the third embodiment, when the forwarding condition is satisfied at least based on the HTTP request 80 of the connection request from the connection source (Yes in step S308), when the prohibition condition is not satisfied (No in step S309), the gateway 30 forwards the connection request to the image processing system cluster 20 as the forwarding destination associated with the forwarding condition (steps S312 and S313). Even when the forwarding condition is satisfied at least based on the HTTP request 80 (Yes in step S308), when the prohibition condition is satisfied (Yes in step S309), the gateway 30 does not forward the connection request. As a result, the connection request from the connection source can be forwarded to the image processing system cluster 20 corresponding to the content of the connection request among the plurality of image processing system clusters 20.

[0218] In addition, according to the third embodiment, the prohibition condition includes the following condition: the IP address of the connection source is a specific IP address (a prohibition condition that establishes a correspondence with the forwarding condition with ID "001", "002" or "004" in the forwarding rule 43). As a result, even if the forwarding condition is satisfied at least based on the HTTP request 80, the gateway 30 does not forward the connection request from the specific IP address. Therefore, the connection request from the connection source can be forwarded to the appropriate image processing system cluster 20 with a simple structure. The gateway 30 does not forward the connection request from the specific IP address, and thus can not forward the connection request from the region corresponding to the specific IP address.

[0219] In addition, according to the third embodiment, the prohibition condition includes the following condition: the HTTP request 80 includes a specific character string indicating a specific tenant using the image processing system cluster 20 (a prohibition condition that establishes a correspondence relationship with the forwarding condition with ID "001" or "004" in the forwarding rule 43). As a result, even if the forwarding condition is satisfied at least based on the HTTP request 80, the gateway 30 does not forward the connection request to the specific tenant. Therefore, the connection request from the connection source can be forwarded to the appropriate image processing system cluster 20 with a simple structure.

[0220] In addition, according to the third embodiment, the prohibition condition includes the following condition: the HTTP request 80 includes a specific character string indicating a specific user using the image processing system cluster 20 (a prohibition condition that establishes a correspondence relationship with the forwarding condition with ID "002" or "003" in the forwarding rule 43). As a result, even if the forwarding condition is satisfied at least based on the HTTP request 80, the gateway 30 does not forward the connection request from the specific user. Therefore, the connection request from the connection source can be forwarded to the appropriate image processing system cluster 20 with a simple structure.

[0221] The forwarding rule 43 includes a forwarding condition related only to a region among regions, tenant IDs, and functions (a forwarding condition with an ID of "001" or "002"), a forwarding condition related only to a tenant ID (a forwarding condition with an ID of "003"), and a forwarding condition related only to a function (a forwarding condition with an ID of "004"). However, the forwarding rule 43 may include at least one of a forwarding condition related to all regions, tenant IDs, and functions, a forwarding condition related only to a region and tenant ID, a forwarding condition related only to a region and a function, and a forwarding condition related only to a tenant ID and a function.

[0222] For example, as forwarding conditions related only to regions and functions, the following forwarding conditions can be listed: "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific region." or "The value of a specific header in the header field 82 of the HTTP request 80 includes a character string representing a specific function of the image processing system cluster 20." Or this forwarding condition: "The path included in the request line 81 of the HTTP request 80 includes a character string representing a specific region, and the value of a specific header in the header field 82 of the HTTP request 80 includes a character string representing a specific function of the image processing system cluster 20."

[0223] The forwarding rule 43 may also be set so that, among the forwarding conditions related to all tenant IDs and functions, the forwarding conditions related to only the tenant ID, and the forwarding conditions related to only the function, the forwarding conditions related to all tenant IDs and functions are applied with the highest priority. In addition, the forwarding rule 43 may also be set so that, among the forwarding conditions related to only the tenant ID and the forwarding conditions related to only the function, the forwarding conditions related to only the tenant ID are applied with the highest priority.

[0224] In the above, the case where the tenant-id header 82B and the function header 82C are included in the header field 82 is described. However, at least one of the tenant-id header 82B and the function header 82C may not be included in the header field 82. For example, when the tenant-id header 82B is not included in the header field 82, the pre-forwarding URL and the HTTP request 80 may be Fig.22A as well as Fig. 22B The URL and HTTP request before forwarding are shown.

[0225] Fig.22A is the URL before forwarding, Fig.16A The example shown is a diagram of an example of a different one. Fig. 22B is a diagram showing HTTP request 80 and Fig. 16B The example shown is a diagram of an example of a different one.

[0226] exist Fig.22A In the "tenant-id" of the URL "https: / / example.net / region / tenant-id / " shown as the forwarding URL, a specific character string indicating the tenant ID, such as "000-111-333", is actually recorded. Fig. 22B The header field 82 of the HTTP request 80 shown does not include a tenant-id header 82B (see Fig.16A as well as Fig. 16B . ).

[0227] Before forwarding, the URL and HTTP request 80 are Fig.22A as well as Fig. 22B In the case of the forwarding URL and HTTP request shown above, forwarding rule 43 can also be Fig.23 Forwarding rules shown.

[0228] Fig.23 is shown with Fig.17 The forwarding rule 43 shown is a diagram of an example of a different forwarding rule 43 .

[0229] Fig.23The forwarding condition of the ID “003” in the forwarding rule 43 shown is a condition that the path included in the request line 81 of the HTTP request 80 includes a character string of “ / 000-111-333 / ”.

[0230] In use Fig.23 In the case of the forwarding rule 43 shown, the connection request forwarding unit 35A uses the tenant ID included in the path included in the request line 81 of the HTTP request 80 in step S309 .

[0231] In the third embodiment, as the forwarding condition, the condition related to the value of the tenant-id header 82B in the header field 82 of the HTTP request 80 and the condition related to the value of the function header 82C are described. However, as the forwarding condition, a condition related to the value of a specific header in the header field 82 of the HTTP request 80 that is not the tenant-id header 82B or the function header 82C may be set.

[0232] In the third embodiment, as prohibition conditions, a condition related to a character string indicating a tenant ID included in a path included in a request line 81 of an HTTP request 80, a condition related to a value of a tenant-id header 82B in a header field 82 of the HTTP request 80, and a condition related to a value of a user-id header 82D in a header field 82 of the HTTP request 80 are described. However, as prohibition conditions, a condition related to a specific character string other than a tenant ID included in a path included in a request line 81 of an HTTP request 80 may be set, and a condition related to a value of a specific header that is neither the tenant-id header 82B nor the user-id header 82D may be set.

[0233] In the first to third embodiments, the image processing system cluster 20 may also operate in a multi-tenant model. However, the image processing system cluster 20 may also operate in a single-tenant model used by one tenant.

[0234] In the first to third embodiments, the information processing system of the present invention is the image processing system cluster 20. However, the information processing system of the present invention may not be a system that performs image processing.

Claims

1. A connection request forwarding system, characterized in that: include: A communication unit for communicating with a connection source and a plurality of information processing systems; as well as a control unit configured to function as a connection request forwarding unit configured to receive a connection request sent from the connection source and forward the connection request to any one of the plurality of information processing systems; The connection request forwarding unit is further configured to forward the connection request to the information processing system corresponding to the forwarding condition as a destination when a forwarding condition of the connection request is satisfied at least based on an HTTP request of the connection request.

2. The connection request forwarding system according to claim 1, characterized in that: The connection request forwarding unit is further configured to forward the connection request when the forwarding condition is satisfied based on at least a path included in the request line of the HTTP request.

3. The connection request forwarding system according to claim 2, characterized in that: The connection request forwarding unit is further configured to determine that the forwarding condition is satisfied when a specific first character string is included in the path.

4. The connection request forwarding system according to claim 3, characterized in that: When the first character string indicates a specific region, the forwarding condition is associated with the information processing system provided in the specific region.

5. The connection request forwarding system according to claim 3, characterized in that: When the first character string indicates a specific tenant using the information processing system, the forwarding condition is associated with the information processing system for the specific tenant.

6. The connection request forwarding system according to claim 3, characterized in that: When the first character string indicates a specific function of the information processing system, the forwarding condition is associated with the information processing system used for the specific function.

7. The connection request forwarding system according to claim 2, characterized in that: The connection request forwarding unit is further configured to edit the path according to the instruction when the forwarding condition is satisfied and a correspondence is established between the instruction for editing the path and the forwarding condition.

8. The connection request forwarding system according to claim 1, characterized in that: The connection request forwarding unit is further configured to forward the connection request when the forwarding condition is satisfied at least based on a value of a specific header in a header field of the HTTP request.

9. The connection request forwarding system according to claim 8, characterized in that: The connection request forwarding unit is further configured to determine that the forwarding condition is satisfied when a specific second character string is included in the value of the specific header.

10. The connection request forwarding system according to claim 9, characterized in that: When the second character string indicates a specific tenant using the information processing system, the forwarding condition is associated with the information processing system for the specific tenant.

11. The connection request forwarding system according to claim 9, characterized in that: When the second character string indicates a specific function of the information processing system, the forwarding condition is associated with the information processing system used for the specific function.

12. The connection request forwarding system according to claim 1, characterized in that: The connection request forwarding unit is further used to: forwarding the connection request when the forwarding condition is satisfied and when the prohibition condition for forwarding the connection request is not satisfied, Even in the case where the forwarding condition is satisfied, when the prohibition condition is satisfied, the connection request is not forwarded.

13. The connection request forwarding system according to claim 12, characterized in that: The connection request forwarding unit is further configured to determine that the prohibition condition is satisfied when the IP address of the connection source is a specific IP address.

14. The connection request forwarding system according to claim 12, characterized in that: The connection request forwarding unit is further configured to determine that the prohibition condition is satisfied when the HTTP request includes a specific third character string.

15. The connection request forwarding system according to claim 14, characterized in that: The third character string indicates a specific tenant using the information processing system.

16. The connection request forwarding system according to claim 14, characterized in that: The third character string indicates a specific user who uses the information processing system.

17. The connection request forwarding system according to claim 1, characterized in that: The connection request forwarding unit is further configured to, when the forwarding condition is not satisfied, execute an error response to the connection source instead of forwarding the connection request.

18. A computer-readable non-transitory recording medium storing a connection request forwarding program, characterized in that: The connection request forwarding program is used to execute the connection request forwarding program through a processor included in the computer, so that the computer functions as a connection request forwarding unit, and the connection request forwarding unit is used to receive a connection request sent from a connection source connected to the computer and forward it to any one of a plurality of information processing systems connected to the computer. The connection request forwarding unit is further configured to forward the connection request to the information processing system corresponding to the forwarding condition as a destination when a forwarding condition of the connection request is satisfied at least based on an HTTP request of the connection request.