JP7011271B1 - Information processing methods, information processing systems and computer programs - Google Patents

Information processing methods, information processing systems and computer programs Download PDF

Info

Publication number
JP7011271B1
JP7011271B1 JP2020181480A JP2020181480A JP7011271B1 JP 7011271 B1 JP7011271 B1 JP 7011271B1 JP 2020181480 A JP2020181480 A JP 2020181480A JP 2020181480 A JP2020181480 A JP 2020181480A JP 7011271 B1 JP7011271 B1 JP 7011271B1
Authority
JP
Japan
Prior art keywords
transfer
communication
server
transfer device
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020181480A
Other languages
Japanese (ja)
Other versions
JP2022072173A (en
Inventor
将則 村井
篤 畑野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IO Data Device Inc
C Rise Ltd
Original Assignee
IO Data Device Inc
C Rise Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by IO Data Device Inc, C Rise Ltd filed Critical IO Data Device Inc
Priority to JP2020181480A priority Critical patent/JP7011271B1/en
Application granted granted Critical
Publication of JP7011271B1 publication Critical patent/JP7011271B1/en
Publication of JP2022072173A publication Critical patent/JP2022072173A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】容易な方法でグローバルネットワーク上の装置からプライベートネットワーク内の特定の装置に通信することができる情報処理方法等を提供する。【解決手段】情報処理方法は、第1転送装置は、第2転送装置からコネクションの確立要求を取得し、取得した前記コネクションの確立要求に応じて前記第1転送装置と前記第2転送装置との間のコネクションを確立し、確立された前記コネクションを用いて、第2通信装置の特定ポートを転送先として指定する転送要求を前記第2転送装置へ送信し、送信した前記転送要求に応じて、前記第1通信装置からの通信を受け付ける前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する通信トンネルを形成し、形成した前記通信トンネルを通じて、前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する。【選択図】図5PROBLEM TO BE SOLVED: To provide an information processing method or the like capable of communicating from a device on a global network to a specific device in a private network by an easy method. In an information processing method, a first transfer device acquires a connection establishment request from a second transfer device, and the first transfer device and the second transfer device respond to the acquired connection establishment request. A transfer request for specifying a specific port of the second communication device as a transfer destination is transmitted to the second transfer device by establishing a connection between the two, and using the established connection, in response to the transmitted transfer request. A communication tunnel is formed to transfer communication between the reception port of the first transfer device that receives communication from the first communication device and the specific port of the second communication device, and the first communication tunnel is formed. Transfers communication between the reception port of the transfer device and the specific port of the second communication device. [Selection diagram] FIG. 5

Description

本技術は、情報処理方法、情報処理システム及びコンピュータプログラムに関する。 The present technology relates to information processing methods, information processing systems and computer programs.

通常、インターネット等のグローバルネットワークと、オフィスや宅内等のプライベートネットワークとの間にはルータ等の中継機器が設置され、中継機器によりグローバルネットワークへ接続する際に用いられるグローバルIPアドレスからプライベートネットワーク側で用いられるプライベートIPアドレスへのネットワークアドレス変換(Network Address Translation :NAT)が行なわれている。このため、グローバルネットワーク上の装置がプライベートネットワーク内の装置に接続する場合においては、いわゆるNAT越えを行う必要がある。 Normally, a relay device such as a router is installed between a global network such as the Internet and a private network such as an office or a home, and the global IP address used when connecting to the global network by the relay device is on the private network side. Network Address Translation (NAT) is performed to the private IP address used. Therefore, when a device on the global network connects to a device in the private network, it is necessary to perform so-called NAT traversal.

NAT越えを行う技術として、従来、静的IPマスカレードによるポートフォワーディング(例えば、特許文献1参照)が使用されている。ポートフォワーディングでは、トンネル機能等を使う事により、グローバルネットワーク上のグローバルサーバの特定ポートと、プライベートネットワーク内のローカルサーバの特定ポートとをマッピングする。これにより、グローバルサーバのポートに届いたデータをトンネル経由でローカルサーバのマッピングされたポートに転送することができる。 Conventionally, port forwarding by static IP masquerading (see, for example, Patent Document 1) has been used as a technique for traversing NAT. In port forwarding, by using the tunnel function etc., the specific port of the global server on the global network and the specific port of the local server in the private network are mapped. This allows data arriving at the global server port to be forwarded through the tunnel to the local server's mapped port.

特開2000-341337号公報Japanese Unexamined Patent Publication No. 2000-341337

しかしながら、ポートフォワーディングでは、プライベートネットワーク側でポートマッピングの設定を行う必要があり、複雑な手順が必要とされるという問題がある。 However, in port forwarding, it is necessary to set the port mapping on the private network side, and there is a problem that a complicated procedure is required.

本開示の目的は、容易な方法でグローバルネットワーク上の装置からプライベートネットワーク内の特定の装置に通信することが可能な情報処理方法等を提供することにある。 An object of the present disclosure is to provide an information processing method or the like capable of communicating from a device on a global network to a specific device in a private network by an easy method.

本開示の一態様に係る情報処理方法は、グローバルネットワークに接続され、第1通信装置から受け付けた通信を転送する第1転送装置と、プライベートネットワークに接続される第2通信装置との通信を、前記プライベートネットワークに接続される第2転送装置を介して転送する情報処理方法であって、前記第1転送装置は、前記第2転送装置からコネクションの確立要求を取得し、取得した前記コネクションの確立要求に応じて前記第1転送装置と前記第2転送装置との間のコネクションを確立し、確立された前記コネクションを用いて、前記第2通信装置の特定ポートを転送先として指定する転送要求を前記第2転送装置へ送信し、送信した前記転送要求に応じて、前記第1通信装置からの通信を受け付ける前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する通信トンネルを形成し、形成した前記通信トンネルを通じて、前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する。 In the information processing method according to one aspect of the present disclosure, the communication between the first transfer device connected to the global network and transferring the communication received from the first communication device and the second communication device connected to the private network is performed. An information processing method for transferring via a second transfer device connected to the private network, wherein the first transfer device acquires a connection establishment request from the second transfer device and establishes the acquired connection. In response to the request, a transfer request is made by establishing a connection between the first transfer device and the second transfer device and using the established connection to specify a specific port of the second communication device as a transfer destination. Transfers communication between the reception port of the first transfer device and the specific port of the second communication device, which is transmitted to the second transfer device and receives communication from the first communication device in response to the transmitted transfer request. A communication tunnel is formed, and communication between the reception port of the first transfer device and the specific port of the second communication device is transferred through the formed communication tunnel.

本開示によれば、容易な方法でグローバルネットワーク上の装置からプライベートネットワーク内の特定の装置に通信することができる。 According to the present disclosure, a device on the global network can easily communicate with a specific device in the private network.

第1実施形態における情報処理システムの概要を示す図である。It is a figure which shows the outline of the information processing system in 1st Embodiment. 第1実施形態における情報処理システムの各装置の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of each apparatus of the information processing system in 1st Embodiment. 転送情報DBのレコードレイアウトを示す概念図である。It is a conceptual diagram which shows the record layout of the transfer information DB. 識別情報DBのレコードレイアウトを示す概念図である。It is a conceptual diagram which shows the record layout of the identification information DB. 情報処理システムにおいて実行される操作処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the operation processing executed in an information processing system. 第2実施形態における情報処理システムの各装置の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of each apparatus of the information processing system in 2nd Embodiment. 可否情報DBのレコードレイアウトを例示する説明図である。It is explanatory drawing which illustrates the record layout of the possibility information DB. 第2実施形態における情報処理システムにおいて実行される操作処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the operation processing executed in the information processing system in 2nd Embodiment. 第3実施形態における情報処理システムの概要を示す図である。It is a figure which shows the outline of the information processing system in 3rd Embodiment. 第3実施形態における情報処理システムにおいて実行される操作処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the operation processing executed in the information processing system in 3rd Embodiment. 第3実施形態における情報処理システムにおいて実行される操作処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the operation processing executed in the information processing system in 3rd Embodiment. 第4実施形態における情報処理システムの概要を示す図である。It is a figure which shows the outline of the information processing system in 4th Embodiment. 接続情報DBのレコードレイアウトを示す概念図である。It is a conceptual diagram which shows the record layout of the connection information DB. 第4実施形態における情報処理システムにおいて実行される操作処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the operation processing executed in the information processing system in 4th Embodiment. 第4実施形態における情報処理システムにおいて実行される操作処理の手順の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the procedure of the operation processing executed in the information processing system in 4th Embodiment. 第5実施形態における情報処理システムの概要を示す図である。It is a figure which shows the outline of the information processing system in 5th Embodiment. 第6実施形態における情報処理システムの概要を示す図である。It is a figure which shows the outline of the information processing system in 6th Embodiment. 第7実施形態における情報処理システムの概要を示す図である。It is a figure which shows the outline of the information processing system in 7th Embodiment.

本発明をその実施の形態を示す図面を参照して具体的に説明する。 The present invention will be specifically described with reference to the drawings showing the embodiments thereof.

(第1実施形態)
図1は、第1実施形態における情報処理システム100の概要を示す図である。情報処理システム100は、転送サーバ1と転送クライアント2とを含む。転送サーバ1は、グローバルIPアドレスによる通信ネットワークであるグローバルネットワークN1に接続されるよう構成されている。グローバルネットワークN1は、例えばインターネットである。転送サーバ1は、当該グローバルネットワークN1に接続されるクライアント装置3と通信可能に接続され、クライアント装置3との間でデータの送受信が可能である。転送クライアント2は、プライベートIPアドレスによるLAN(Local Area Network)等のプライベートネットワークN2に接続されるよう構成されている。転送クライアント2は、プライベートネットワークN2に接続されるサーバ4と通信可能に接続され、サーバ4との間でデータの送受信が可能である。転送クライアント2及びサーバ4は、中継装置5を介してグローバルネットワークN1に接続される。
(First Embodiment)
FIG. 1 is a diagram showing an outline of the information processing system 100 according to the first embodiment. The information processing system 100 includes a transfer server 1 and a transfer client 2. The transfer server 1 is configured to be connected to the global network N1, which is a communication network based on a global IP address. The global network N1 is, for example, the Internet. The transfer server 1 is communicably connected to the client device 3 connected to the global network N1 and can transmit and receive data to and from the client device 3. The transfer client 2 is configured to be connected to a private network N2 such as a LAN (Local Area Network) using a private IP address. The transfer client 2 is communicably connected to the server 4 connected to the private network N2, and can send and receive data to and from the server 4. The transfer client 2 and the server 4 are connected to the global network N1 via the relay device 5.

転送サーバ1は、例えばサーバコンピュータである。転送サーバ1は、クライアント装置3から送信される通信データを受信し、受信した通信データをプライベートネットワークN2内の転送クライアント2を介してサーバ4へ転送する第1転送装置に相当する。クライアント装置3は、例えばサーバコンピュータ又はパーソナルコンピュータ等の情報処理装置である。クライアント装置3は、スマートフォン又はタブレット端末等であってもよい。クライアント装置3は、転送サーバ1及び転送クライアント2を介してサーバ4と通信する第1通信装置に相当する。 The transfer server 1 is, for example, a server computer. The transfer server 1 corresponds to a first transfer device that receives communication data transmitted from the client device 3 and transfers the received communication data to the server 4 via the transfer client 2 in the private network N2. The client device 3 is an information processing device such as a server computer or a personal computer. The client device 3 may be a smartphone, a tablet terminal, or the like. The client device 3 corresponds to a first communication device that communicates with the server 4 via the transfer server 1 and the transfer client 2.

転送クライアント2は、中継装置5を介して転送サーバ1から通信データを受信し、受信した通信データをプライベートネットワークN2を介してサーバ4へ転送する第2転送装置に相当する。転送クライアント2は、例えばサーバコンピュータである。サーバ4は、クライアント装置3から送信される通信データを受信し、クライアント装置3の要求への応答を出力する。サーバ4は、転送サーバ1及び転送クライアント2を介してクライアント装置3と通信する第2通信装置に相当する。サーバ4は、例えばウェブサーバ、ファイルサーバ、APIサーバ、プロキシサーバ等であり、ウェブコンテンツ提供、ファイル転送、API提供、通信中継等のサービスを提供する。 The transfer client 2 corresponds to a second transfer device that receives communication data from the transfer server 1 via the relay device 5 and transfers the received communication data to the server 4 via the private network N2. The transfer client 2 is, for example, a server computer. The server 4 receives the communication data transmitted from the client device 3 and outputs a response to the request of the client device 3. The server 4 corresponds to a second communication device that communicates with the client device 3 via the transfer server 1 and the transfer client 2. The server 4 is, for example, a web server, a file server, an API server, a proxy server, or the like, and provides services such as web content provision, file transfer, API provision, and communication relay.

中継装置5は、プライベートネットワークN2とグローバルネットワークN1との間の通信を中継する中継装置5であり、例えばルータ、ゲートウェイ等である。中継装置5は、プライベートネットワークN2でのみ通用するプライベートIPアドレスと、グローバルネットワークN1で使用されるグローバルIPアドレスとを相互に変換するNAT(Network Address Translation )又はNAPT(Network Address Port Translation)機能を備える。 The relay device 5 is a relay device 5 that relays communication between the private network N2 and the global network N1, and is, for example, a router, a gateway, or the like. The relay device 5 has a NAT (Network Address Translation) or NAPT (Network Address Port Translation) function that mutually translates a private IP address that can be used only in the private network N2 and a global IP address that is used in the global network N1. ..

なお、転送クライアント2とサーバ4とが接続されるプライベートネットワークN2は同一セグメント内であるものに限定されない。例えば、プライベートネットワークN2は、異なるセグメントのネットワークであってもよく、VPN(Virtual Private Network )で接続された別拠点のプライベートネットワークであってもよい。 The private network N2 to which the transfer client 2 and the server 4 are connected is not limited to those within the same segment. For example, the private network N2 may be a network of different segments, or may be a private network of another base connected by a VPN (Virtual Private Network).

第1実施形態における情報処理システム100の転送方法の概要を説明する。情報処理システム100では、初めに転送クライアント2からの要求に応じて、転送クライアント2と転送サーバ1との間での通信のためのコネクション6が確立される。転送サーバ1は、コネクション6を用いて、プライベートネットワークN2内のサーバ4の特定ポートを転送先として指定する転送要求を転送クライアント2へ送信する。転送要求に応じて、転送サーバ1の受付ポートと、指定されたサーバ4の特定ポートとをマッピングする通信回路、すなわち通信トンネルが確立される。以降、クライアント装置3から転送サーバ1の受付ポートへ送信された通信データは、通信トンネルを用いて、転送クライアント2を介してプライベートネットワークN2内のサーバ4の特定ポートへ転送される。グローバルネットワークN1上のクライアント装置3は、プライベートネットワークN2内の特定サーバ4に対して、任意のタイミングでアクセスすることができる。 The outline of the transfer method of the information processing system 100 in the first embodiment will be described. In the information processing system 100, a connection 6 for communication between the transfer client 2 and the transfer server 1 is first established in response to a request from the transfer client 2. The transfer server 1 uses the connection 6 to transmit a transfer request for designating a specific port of the server 4 in the private network N2 as a transfer destination to the transfer client 2. In response to the transfer request, a communication circuit that maps the reception port of the transfer server 1 to the specific port of the designated server 4, that is, a communication tunnel is established. After that, the communication data transmitted from the client device 3 to the reception port of the transfer server 1 is transferred to the specific port of the server 4 in the private network N2 via the transfer client 2 using the communication tunnel. The client device 3 on the global network N1 can access the specific server 4 in the private network N2 at an arbitrary timing.

このような情報処理システム100の構成及び詳細な処理内容について以下に説明する。 The configuration and detailed processing contents of the information processing system 100 will be described below.

図2は、第1実施形態における情報処理システム100の各装置の内部構成を示すブロック図である。転送サーバ1は、制御部10、記憶部11及び通信部12を備える。転送サーバ1は複数のコンピュータからなるマルチコンピュータであってもよく、ソフトウェアによって仮想的に構築された仮想マシンであってもよい。 FIG. 2 is a block diagram showing an internal configuration of each device of the information processing system 100 according to the first embodiment. The transfer server 1 includes a control unit 10, a storage unit 11, and a communication unit 12. The transfer server 1 may be a multi-computer composed of a plurality of computers, or may be a virtual machine virtually constructed by software.

制御部10は、一又は複数のCPU(Central Processing Unit )又はGPU(Graphics Processing Unit)を用いたプロセッサであり、内蔵するROM(Read Only Memory)及びRAM(Random Access Memory)等のメモリを用い、各構成部を制御して処理を実行する。記憶部11は、ハードディスク、SSD(Solid State Drive )等の記憶装置を含む。記憶部11には、プログラム1Pを含む制御部10が参照するプログラム及びデータが記憶されている。制御部10は、プログラム1Pに基づき、後述する通信データの転送に関する処理を実行する。通信部12は、グローバルネットワークN1を介した通信を実現する通信デバイスである。 The control unit 10 is a processor using one or a plurality of CPUs (Central Processing Units) or GPUs (Graphics Processing Units), and uses a built-in memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory). Control each component to execute processing. The storage unit 11 includes a storage device such as a hard disk and an SSD (Solid State Drive). The storage unit 11 stores programs and data referred to by the control unit 10 including the program 1P. The control unit 10 executes a process related to the transfer of communication data, which will be described later, based on the program 1P. The communication unit 12 is a communication device that realizes communication via the global network N1.

記憶部11に記憶されるプログラム1Pは、当該プログラム1Pを読み取り可能に記録した非一時的な記録媒体1Aにより提供されてもよい。記録媒体1Aは、例えば、CD-ROM、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、マイクロSDカード、コンパクトフラッシュ(登録商標)などの可搬型メモリである。この場合、制御部10は、不図示の読取装置を用いて記録媒体1Aからプログラム1Pを読み取り、読み取ったプログラム1Pを記憶部11に記憶する。また、記憶部11に記憶されるプログラム1Pは、通信部12を介した通信により提供されてもよい。この場合、制御部10は、通信部12を通じてプログラム1Pを取得し、取得したプログラム1Pを記憶部11に記憶する。なお記憶部11は、複数の記憶装置により構成されていてもよく、転送サーバ1に接続された外部記憶装置であってもよい。 The program 1P stored in the storage unit 11 may be provided by a non-temporary recording medium 1A in which the program 1P is readablely recorded. The recording medium 1A is, for example, a portable memory such as a CD-ROM, a USB (Universal Serial Bus) memory, an SD (Secure Digital) card, a micro SD card, and a compact flash (registered trademark). In this case, the control unit 10 reads the program 1P from the recording medium 1A using a reading device (not shown), and stores the read program 1P in the storage unit 11. Further, the program 1P stored in the storage unit 11 may be provided by communication via the communication unit 12. In this case, the control unit 10 acquires the program 1P through the communication unit 12, and stores the acquired program 1P in the storage unit 11. The storage unit 11 may be composed of a plurality of storage devices, or may be an external storage device connected to the transfer server 1.

また、記憶部11には、転送情報DB(Data Base :データベース)111が記憶されている。図3は、転送情報DB111のレコードレイアウトを示す概念図である。転送情報DB111は、通信データの転送を実行管理するための情報を格納するデータベースである。転送情報DB111は、例えばRDBMS(Relational DataBase Management System )、NoSQL(Not only SQL)等のデータストレージシステムにより構成されてよい。転送情報DB111は、キャッシュメモリ、ファイル保存、プログラム1Pのプロセス内メモリ領域に記憶されてもよい。 Further, the transfer information DB (Data Base: database) 111 is stored in the storage unit 11. FIG. 3 is a conceptual diagram showing the record layout of the transfer information DB 111. The transfer information DB 111 is a database that stores information for executing and managing the transfer of communication data. The transfer information DB 111 may be configured by, for example, a data storage system such as RDBMS (Relational DataBase Management System) or NoSQL (Not only SQL). The transfer information DB 111 may be stored in the cache memory, the file storage, and the in-process memory area of the program 1P.

例えば、転送情報DB111には、転送情報を識別するID、転送クライアント2のグローバルIPアドレス、識別情報、転送先情報、受付ポート番号等の情報が対応付けられて格納されている。転送クライアント2のグローバルIPアドレスとは、転送クライアント2のグローバルネットワークN1を介した通信の際に使用されるアドレスである。転送クライアント2のグローバルIPアドレスは、中継装置5によって転送クライアント2のプライベートIPアドレスから中継装置5の保持するグローバルIPアドレスに変換されたものである。 For example, the transfer information DB 111 stores information such as an ID for identifying transfer information, a global IP address of the transfer client 2, identification information, transfer destination information, and a reception port number in association with each other. The global IP address of the forwarding client 2 is an address used for communication via the global network N1 of the forwarding client 2. The global IP address of the transfer client 2 is converted from the private IP address of the transfer client 2 to the global IP address held by the relay device 5 by the relay device 5.

識別情報とは、転送先となるサーバ4のサービスを識別(特定)するための情報であり、例えば識別キーが含まれる。識別キーとは、転送先となるサーバ4のサービス毎に発行される一意のデータであり、転送先を識別するデータである。識別情報には、サーバ4のサービスにアクセスするユーザを識別するユーザアカウントが含まれてもよい。ユーザアカウントには、例えばユーザID及びパスワードが含まれる。ユーザアカウントにはサーバ4の装置IDが含まれてもよい。 The identification information is information for identifying (identifying) the service of the server 4 as the transfer destination, and includes, for example, an identification key. The identification key is unique data issued for each service of the server 4 that is the transfer destination, and is data that identifies the transfer destination. The identification information may include a user account that identifies a user who accesses the service of the server 4. The user account includes, for example, a user ID and a password. The user account may include the device ID of the server 4.

転送先情報とは、通信データの転送先となるサーバ4及び当該サーバ4の提供するサービスを指定する情報である。転送先情報には、例えばサーバ4のプライベートIPアドレス及びポート番号(特定ポート)が含まれる。プライベートIPアドレスは、サーバ4のプライベートネットワークN2における通信の際に使用されるアドレスであり、プライベートネットワークN2におけるサーバ4を特定する固定のIPアドレスである。ポート番号(特定ポート)とは、コンピュータが通信を行う際に通信先のプログラムを特定するための番号のことである。転送先情報は、プライベートIPアドレス及びポート番号に限定されない。転送先情報は、転送先のサーバ4を指定するためのホスト名、NetBIOS名、サーバ4のサービスを指定するためのプロトコル名等が含まれてもよい。なお、転送先情報は、上述のIPアドレス及びポート番号等を対応付けた転送先IDを用いて記憶されていてもよい。 The transfer destination information is information that specifies the server 4 that is the transfer destination of the communication data and the service provided by the server 4. The transfer destination information includes, for example, the private IP address and port number (specific port) of the server 4. The private IP address is an address used for communication in the private network N2 of the server 4, and is a fixed IP address that identifies the server 4 in the private network N2. The port number (specific port) is a number for specifying the program of the communication destination when the computer communicates. The forwarding information is not limited to the private IP address and the port number. The transfer destination information may include a host name for designating the transfer destination server 4, a NetBIOS name, a protocol name for designating the service of the server 4, and the like. The transfer destination information may be stored using the transfer destination ID associated with the above-mentioned IP address, port number, and the like.

受付ポート番号とは、転送サーバ1がクライアント装置3から転送のための通信データを受け付ける際に使用するポート番号である。転送先の特定ポートと転送サーバ1のポート(受付ポート)との間で通信トンネルが確立された場合、通信トンネルの使用に割り当てられたポート番号が受付ポート番号列に格納される。 The reception port number is a port number used by the transfer server 1 when receiving communication data for transfer from the client device 3. When a communication tunnel is established between the specific port of the forwarding destination and the port (accepting port) of the forwarding server 1, the port number assigned to use the communication tunnel is stored in the receiving port number string.

転送クライアント2は、制御部20、記憶部21及び通信部22を備える。制御部20は、一又は複数のCPU又はGPUを用いたプロセッサであり、内蔵するROM及びRAM等のメモリを用い、各構成部を制御して処理を実行する。記憶部21は、ハードディスク、SSD等の記憶装置を含む。記憶部21には、プログラム2Pを含む制御部20が参照するプログラム及びデータが記憶されている。制御部20は、プログラム2Pに基づき、後述する通信データの転送に関する処理を実行する。通信部12は、プライベートネットワークN2を介した通信を実現する通信デバイスである。 The transfer client 2 includes a control unit 20, a storage unit 21, and a communication unit 22. The control unit 20 is a processor using one or a plurality of CPUs or GPUs, and uses a built-in memory such as a ROM and a RAM to control each component unit and execute processing. The storage unit 21 includes a storage device such as a hard disk and an SSD. The storage unit 21 stores programs and data referred to by the control unit 20 including the program 2P. The control unit 20 executes a process related to the transfer of communication data, which will be described later, based on the program 2P. The communication unit 12 is a communication device that realizes communication via the private network N2.

また、記憶部21には、識別情報DB211が記憶されている。図4は、識別情報DB211のレコードレイアウトを示す概念図である。識別情報DB211は、転送先となるサーバ4のサービスを識別(特定)するための識別情報を格納するデータベースである。例えば、識別情報DB211には、識別キー、ユーザID及びパスワード等の情報が対応付けられて格納されている。識別情報にはサーバ4の装置IDが含まれてもよい。識別情報DB211に記憶されている識別情報の詳細は、転送情報DB111の識別情報を同様である。すなわち、識別情報は転送サーバ1と転送クライアント2との間で共有される。 Further, the identification information DB 211 is stored in the storage unit 21. FIG. 4 is a conceptual diagram showing the record layout of the identification information DB 211. The identification information DB 211 is a database that stores identification information for identifying (identifying) the service of the server 4 that is the transfer destination. For example, the identification information DB 211 stores information such as an identification key, a user ID, and a password in association with each other. The identification information may include the device ID of the server 4. The details of the identification information stored in the identification information DB 211 are the same as the identification information of the transfer information DB 111. That is, the identification information is shared between the transfer server 1 and the transfer client 2.

クライアント装置3は、制御部30、記憶部31及び通信部32を備える。制御部30は、一又は複数のCPU又はGPUを用いたプロセッサであり、内蔵するROM及びRAM等のメモリを用い、各構成部を制御して処理を実行する。記憶部31は、ハードディスク、SSD等の記憶装置を含む。記憶部31には、制御部30が参照するプログラム及びデータが記憶されている。通信部32は、グローバルネットワークN1を介した通信を実現する通信デバイスである。 The client device 3 includes a control unit 30, a storage unit 31, and a communication unit 32. The control unit 30 is a processor using one or a plurality of CPUs or GPUs, and uses a built-in memory such as a ROM and a RAM to control each component and execute processing. The storage unit 31 includes a storage device such as a hard disk and an SSD. The storage unit 31 stores programs and data referred to by the control unit 30. The communication unit 32 is a communication device that realizes communication via the global network N1.

サーバ4は、制御部40、記憶部41及び通信部42を備える。制御部40は、一又は複数のCPU又はGPUを用いたプロセッサであり、内蔵するROM及びRAM等のメモリを用い、各構成部を制御して処理を実行する。記憶部41は、ハードディスク、SSD等の記憶装置を含む。記憶部41には、制御部40が参照するプログラム及びデータが記憶されている。通信部42は、プライベートネットワークN2を介した通信を実現する通信デバイスである。 The server 4 includes a control unit 40, a storage unit 41, and a communication unit 42. The control unit 40 is a processor using one or a plurality of CPUs or GPUs, and uses a built-in memory such as a ROM and a RAM to control each component unit and execute processing. The storage unit 41 includes a storage device such as a hard disk and an SSD. The storage unit 41 stores programs and data referred to by the control unit 40. The communication unit 42 is a communication device that realizes communication via the private network N2.

上記の各装置は、個別に構成されるものに限定されない。例えば転送クライアント2及びサーバ4を含む1個のデバイスとして構成されてもよい。上記の各装置は、ソフトウェアにより実現されてもよい。 The above devices are not limited to those individually configured. For example, it may be configured as one device including a transfer client 2 and a server 4. Each of the above devices may be realized by software.

図5は、情報処理システム100において実行される操作処理の手順の一例を示すシーケンス図である。以下、ステップをSと略す。 FIG. 5 is a sequence diagram showing an example of a procedure of operation processing executed in the information processing system 100. Hereinafter, the step is abbreviated as S.

転送サーバ1の制御部10は、識別情報及び転送先情報等を含む転送情報を取得し転送情報DB111に記憶する(S101)。また転送クライアント2の制御部20は、識別情報を取得し識別情報DB211に記憶する(S201)。転送先情報及び識別情報の取得方法はそれぞれ限定されるものではないが、一例として以下の手順を実行する。 The control unit 10 of the transfer server 1 acquires transfer information including identification information, transfer destination information, and the like and stores it in the transfer information DB 111 (S101). Further, the control unit 20 of the transfer client 2 acquires the identification information and stores it in the identification information DB 211 (S201). The method of acquiring the forwarding destination information and the identification information is not limited, but the following procedure is executed as an example.

転送クライアント2の制御部20は、プライベートネットワークN2を介してサーバ4のサービスにアクセスするためのサーバ4のプライベートIPアドレス及びポート番号を予め記憶している。制御部20は、転送サーバ1に通信要求を送信する。転送サーバ1の制御部10は、転送クライアント2から通信要求を受信し、サーバ4のサービス(転送先)を識別する識別キーを転送クライアント2に送信する。識別キーは、サーバ4のサービス毎に発行されるユニークキーである。 The control unit 20 of the transfer client 2 stores in advance the private IP address and port number of the server 4 for accessing the service of the server 4 via the private network N2. The control unit 20 transmits a communication request to the transfer server 1. The control unit 10 of the transfer server 1 receives a communication request from the transfer client 2 and transmits an identification key for identifying the service (transfer destination) of the server 4 to the transfer client 2. The identification key is a unique key issued for each service of the server 4.

転送クライアント2の制御部20は、転送サーバ1から識別キーを受信し、識別情報DB211に記憶する。この場合において、制御部20は、識別キーに対応するユーザを識別するユーザID及びパスワード等のユーザアカウントを生成し、生成したユーザアカウントを識別キーに対応付けて登録してよい。制御部20は、識別キーに、ユーザアカウント、サーバ4のプライベートIPアドレス及びポート番号を関連付けて中継装置5を介して転送サーバ1へ送信する。転送サーバ1の制御部10は、中継装置5を介して転送クライアント2のグローバルIPアドレス、識別キー、ユーザアカウント、サーバ4のプライベートIPアドレス及びポート番号等を受信し、転送情報DB111に記憶する。以上の手順により転送先情報及び識別情報がそれぞれ記憶される。 The control unit 20 of the transfer client 2 receives the identification key from the transfer server 1 and stores it in the identification information DB 211. In this case, the control unit 20 may generate a user account such as a user ID and a password for identifying the user corresponding to the identification key, and register the generated user account in association with the identification key. The control unit 20 associates the user account, the private IP address of the server 4, and the port number with the identification key, and transmits the identification key to the transfer server 1 via the relay device 5. The control unit 10 of the transfer server 1 receives the global IP address, identification key, user account, private IP address and port number of the server 4 of the transfer client 2 via the relay device 5, and stores them in the transfer information DB 111. By the above procedure, the transfer destination information and the identification information are stored respectively.

転送クライアント2の制御部20は、グローバルネットワークN1を介して転送サーバ1にコネクション6の確立要求を送信する(S202)。転送クライアント2は、通信データを転送するサーバ4の識別キーを識別情報DB211から読み出し、確立要求に関連付けて送信する。グローバルネットワークN1を介する通信プロトコルは、例えばTCP(Transmission Control Protocol )/IP(Internet Protocol )及びHTTPSを使用する。 The control unit 20 of the transfer client 2 transmits a connection 6 establishment request to the transfer server 1 via the global network N1 (S202). The transfer client 2 reads the identification key of the server 4 that transfers the communication data from the identification information DB 211, and transmits the identification key in association with the establishment request. As the communication protocol via the global network N1, for example, TCP (Transmission Control Protocol) / IP (Internet Protocol) and HTTPS are used.

転送サーバ1の制御部10は、コネクション6の確立要求を受信し(S102)、応答を転送クライアント2へ送信する(S103)。 The control unit 10 of the transfer server 1 receives the connection 6 establishment request (S102) and transmits the response to the transfer client 2 (S103).

転送クライアント2の制御部20は、応答を受信する(S203)。制御部20が応答を受信することにより、転送サーバ1と転送クライアント2との間でコネクション6が確立される。以降、転送サーバ1と転送クライアント2とは、例えばポーリング、ロングポーリング等によりコネクション6を継続することで、転送サーバ1から転送クライアント2への通信が可能となる。例えば転送クライアント2は、ポーリングを用いることにより、所定間隔にて定期的又は定常的に転送サーバ1に問合せを行い、当該問合せに対し転送サーバ1からプッシュ送信される返答を取得する。 The control unit 20 of the transfer client 2 receives the response (S203). When the control unit 20 receives the response, the connection 6 is established between the transfer server 1 and the transfer client 2. After that, the transfer server 1 and the transfer client 2 can communicate with the transfer client 2 by continuing the connection 6 by, for example, polling, long polling, or the like. For example, the transfer client 2 periodically or periodically makes an inquiry to the transfer server 1 at predetermined intervals by using polling, and obtains a response to be pushed and transmitted from the transfer server 1 in response to the inquiry.

コネクション6の確立後、転送サーバ1の制御部10は、転送サーバ1のグローバルIPアドレスを含む転送要求を転送クライアント2へ送信する(S104)。転送サーバ1と転送クライアント2との間では、コネクション6が確立されているため、NATを超えた転送サーバ1からの転送クライアント2への情報の送信が可能である。転送要求には、転送先を指定(識別)するための転送先情報が関連付けられている。転送先情報には、転送先のサーバ4を指定するためのプライベートIPアドレスと、サーバ4におけるサービスを指定するためのポート番号とが含まれる。転送先情報は、上述のIPアドレス及びポート番号を対応付けた転送先ID等を用いてもよい。転送先情報には、転送先のサーバ4を識別するためのホスト名、又は、サーバ4のサービスを識別するためのプロトコル名等が含まれてもよい。制御部10は、コネクション6の確立要求に係る識別情報に基づき、転送情報DB111を参照して識別情報に対応する転送先であるサーバ4のサービスを特定し、特定した転送先のサーバ4のIPアドレス及びポート番号を含む転送先情報を取得する。 After establishing the connection 6, the control unit 10 of the transfer server 1 transmits a transfer request including the global IP address of the transfer server 1 to the transfer client 2 (S104). Since the connection 6 is established between the transfer server 1 and the transfer client 2, it is possible to transmit information from the transfer server 1 beyond NAT to the transfer client 2. The forwarding request is associated with forwarding information for designating (identifying) the forwarding destination. The transfer destination information includes a private IP address for designating the server 4 of the transfer destination and a port number for designating a service on the server 4. As the forwarding destination information, a forwarding destination ID or the like associated with the above-mentioned IP address and port number may be used. The transfer destination information may include a host name for identifying the transfer destination server 4, a protocol name for identifying the service of the server 4, and the like. The control unit 10 refers to the transfer information DB 111 based on the identification information related to the connection 6 establishment request, identifies the service of the transfer destination server 4 corresponding to the identification information, and identifies the IP of the specified transfer destination server 4. Acquire forwarding information including address and port number.

また、転送要求には、通信トンネル要求に関する情報が関連付けられている。通信トンネル要求に関する情報には、転送先のサーバ4のプライベートIPアドレス及びポート番号と、転送サーバ1のグローバルIPアドレス及び受付ポート番号とが含まれる。受付ポート番号は、任意のポート番号を指定してもよく、自動で割り当てられるものであってもよい。通信トンネル要求に関する情報には、ユーザアカウント及び認証キー等が含まれてよい。 Also, the forwarding request is associated with information about the communication tunnel request. The information regarding the communication tunnel request includes the private IP address and port number of the transfer destination server 4, and the global IP address and reception port number of the transfer server 1. As the receiving port number, any port number may be specified, or it may be automatically assigned. The information regarding the communication tunnel request may include a user account, an authentication key, and the like.

転送クライアント2の制御部20は、転送サーバ1から転送要求を受信する(S204)。制御部20は、受信した転送要求に対する応答を転送サーバ1へ送信する(S205)。 The control unit 20 of the transfer client 2 receives a transfer request from the transfer server 1 (S204). The control unit 20 transmits a response to the received transfer request to the transfer server 1 (S205).

転送サーバ1の制御部10は、応答を受信する(S105)。制御部10が応答を受信することにより、転送サーバ1の受付ポートと転送先として指定したサーバ4の特定ポートとがマッピングされ、転送サーバ1の受付ポートと転送先として指定したサーバ4との間で通信トンネルが形成(確立)される。制御部10は、通信トンネル要求時に指定した受付ポートを開放し(S106)、クライアント装置3からの通信を待ち受ける。 The control unit 10 of the transfer server 1 receives the response (S105). When the control unit 10 receives the response, the reception port of the transfer server 1 and the specific port of the server 4 designated as the transfer destination are mapped, and between the reception port of the transfer server 1 and the server 4 designated as the transfer destination. A communication tunnel is formed (established) at. The control unit 10 opens the reception port designated at the time of requesting the communication tunnel (S106), and waits for communication from the client device 3.

クライアント装置3の制御部30は、転送サーバ1の受付ポートに通信接続し、サーバ4の特定ポートにアクセスするための通信要求を送信する(S301)。通信要求には、例えばユーザアカウント等の識別情報が含まれる。転送サーバ1の制御部10は、受信した通信要求のユーザアカウントに基づき、クライアント装置3からの通信データの転送先となるサーバ4の特定ポートを特定する。 The control unit 30 of the client device 3 makes a communication connection to the reception port of the transfer server 1 and transmits a communication request for accessing the specific port of the server 4 (S301). The communication request includes identification information such as a user account. The control unit 10 of the transfer server 1 identifies a specific port of the server 4 to which the communication data from the client device 3 is transferred, based on the user account of the received communication request.

通信が開始され、通信トンネルを通して転送サーバ1の受付ポートとサーバ4の特定ポートとの間で通信が転送される。具体例には、クライアント装置3から転送サーバ1の受付ポートへ送信されるサーバ4宛の通信データは、転送サーバ1を介して転送クライアント2へ転送される。転送クライアント2は、転送サーバ1の受付ポートから受信した通信データを、サーバ4の特定ポートへ転送する。通信データには、例えば転送先のサーバ4のIPアドレス及びポート番号、総送信データサイズ、総受信データサイズ等が含まれる。同様に、サーバ4の指定ポートから送信されるクライアント装置3宛の通信データは、転送クライアント2を介して転送サーバ1の受付ポートへ転送される。転送サーバ1は、受信した通信データをクライアント装置3へ転送する。 Communication is started, and communication is transferred between the reception port of the transfer server 1 and the specific port of the server 4 through the communication tunnel. As a specific example, the communication data addressed to the server 4 transmitted from the client device 3 to the reception port of the transfer server 1 is transferred to the transfer client 2 via the transfer server 1. The transfer client 2 transfers the communication data received from the reception port of the transfer server 1 to the specific port of the server 4. The communication data includes, for example, the IP address and port number of the transfer destination server 4, the total transmission data size, the total reception data size, and the like. Similarly, the communication data destined for the client device 3 transmitted from the designated port of the server 4 is transferred to the reception port of the transfer server 1 via the transfer client 2. The transfer server 1 transfers the received communication data to the client device 3.

転送サーバ1の制御部10は、例えばクライアント装置3から終了通知を取得し通信を終了する。制御部10は、通信トンネルを切断し、一連の処理を終了する。サーバ4が起動している場合は常時クライアント装置3との情報の送受信を可能にするため、通信トンネルの切断以降もコネクション6は継続されてよい。 The control unit 10 of the transfer server 1 acquires a termination notification from, for example, the client device 3 and terminates the communication. The control unit 10 disconnects the communication tunnel and ends a series of processes. When the server 4 is running, the connection 6 may be continued even after the communication tunnel is disconnected so that information can be transmitted / received to / from the client device 3 at all times.

上述の処理において、制御部10は、外部から取得した要求に基づき転送要求を送信してもよい。例えば制御部10は、クライアント装置3からユーザアカウント等の識別情報を含む要求を受信する。制御部10は、識別情報に基づき、コネクション6を確立する転送クライアント2及び転送先情報を特定し、特定した転送クライアント2へ、コネクション6を用いて転送要求を送信する。 In the above process, the control unit 10 may transmit a transfer request based on a request acquired from the outside. For example, the control unit 10 receives a request including identification information such as a user account from the client device 3. The control unit 10 specifies the transfer client 2 for establishing the connection 6 and the transfer destination information based on the identification information, and transmits the transfer request to the specified transfer client 2 using the connection 6.

上述の処理において、転送要求は転送サーバ1から転送クライアント2へ送信されるものに限定されず、転送クライアント2から転送サーバ1へ送信されてもよい。 In the above process, the transfer request is not limited to the one transmitted from the transfer server 1 to the transfer client 2, and may be transmitted from the transfer client 2 to the transfer server 1.

本実施形態によれば、転送サーバ1と転送クライアント2との間に確立されるコネクション6を用いて、グローバルネットワークN1側の転送サーバ1からプライベートネットワークN2内の転送クライアント2に対して、サーバ4の特定ポートを指定して転送要求を送信することができる。転送サーバ1の転送情報及び転送クライアント2の識別情報を用いて容易に通信トンネルが確立されるため、プライベートネットワーク側でのポートマッピングのための複雑な設定等の負担を軽減することができる。通信データの転送はTCP/IPによりトランスポート層にて行われるため、通信転送時のセキュリティを向上し得る。 According to the present embodiment, the server 4 is used from the transfer server 1 on the global network N1 side to the transfer client 2 in the private network N2 by using the connection 6 established between the transfer server 1 and the transfer client 2. You can send a forwarding request by specifying a specific port of. Since the communication tunnel is easily established by using the transfer information of the transfer server 1 and the identification information of the transfer client 2, it is possible to reduce the burden of complicated settings for port mapping on the private network side. Since the communication data is transferred at the transport layer by TCP / IP, the security at the time of communication transfer can be improved.

上記では、ポーリングによるコネクション6が確立される例を説明したが、本実施形態における通信方法は限定されるものではない。コネクション6は、例えばWebsocketによるものであってもよい。転送クライアント2は、HTTPSプロトコルを用いた通信により、転送サーバ1へ確立要求を送信する。確立要求には、Websocketへのプロトコルのアップグレードを示す情報及びサーバ4に係る識別情報等が含まれる。転送サーバ1は受信したコネクション6の確立要求への応答を送信し、転送クライアント2が応答を受信することにより、転送サーバ1と転送クライアント2との間でWebsocketプロトコルによるコネクション6が確立される。以降、転送サーバ1と転送クライアント2との通信はコネクション6を用いてWebsocketプロトコルに準拠する電文を用いて行われる。これにより双方向通信、すなわちプッシュ型の相互通信が可能となる。 In the above, an example in which the connection 6 is established by polling has been described, but the communication method in the present embodiment is not limited. The connection 6 may be, for example, by Websocket. The transfer client 2 transmits an establishment request to the transfer server 1 by communication using the HTTPS protocol. The establishment request includes information indicating an upgrade of the protocol to Websocket, identification information related to the server 4, and the like. The transfer server 1 transmits a response to the received connection 6 establishment request, and the transfer client 2 receives the response, thereby establishing a connection 6 by the Websocket protocol between the transfer server 1 and the transfer client 2. After that, the communication between the transfer server 1 and the transfer client 2 is performed using the connection 6 and using a telegram conforming to the Websocket protocol. This enables two-way communication, that is, push-type mutual communication.

上述の処理によれば、Websocketにより、アプリケーション層にてコネクション6が確立されるため、通信時のセキュリティのさらなる向上を図ることが可能となる。また、サービスの提供を受けるユーザ側のネットワーク環境のセキュリティ設定条件により、グローバルネットワークN1上の装置からプライベートネットワークN2へのアクセスにおいて、HTTPSプロトコル以外のプロトコルは不正アクセスとして遮断される場合であっても、HTTPSプロトコルの拡張規格として規定されるWebsocketプロトコルを用いることでコネクション6の確立を容易に実現し得る。 According to the above-mentioned process, since the connection 6 is established in the application layer by Websocket, it is possible to further improve the security at the time of communication. Further, even if a protocol other than the HTTPS protocol is blocked as an unauthorized access in the access from the device on the global network N1 to the private network N2 due to the security setting condition of the network environment on the user side to receive the service. , The establishment of the connection 6 can be easily realized by using the Web socket protocol defined as an extension standard of the HTTPS protocol.

コネクション6は、CONNECTメソッドによるものであってもよい。CONNECTメソッドはプロキシサーバを通してHTTPS通信を行う場合に使用するメソッドである。転送クライアント2は、HTTPSプロトコルを用いた通信により、転送サーバ1へ確立要求を送信する。確立要求には、CONNECTメソッドを用いたトンネル開始要求を示す情報が含まれる。転送サーバ1は受信したコネクション6の確立要求への応答を送信し、転送クライアント2が応答を受信することにより、転送サーバ1と転送クライアント2との間でCONNECTメソッドによるコネクション6が確立される。以降、転送サーバ1と転送クライアント2との通信はコネクション6を用いてTCPコネクションをトンネリングする事が可能となる。これにより双方向通信、すなわちプッシュ型の相互通信が可能となる。 The connection 6 may be based on the CONNECT method. The CONNECT method is a method used when HTTPS communication is performed through a proxy server. The transfer client 2 transmits an establishment request to the transfer server 1 by communication using the HTTPS protocol. The establishment request contains information indicating a tunnel start request using the CONNECT method. The transfer server 1 transmits a response to the received connection 6 establishment request, and the transfer client 2 receives the response, whereby the connection 6 by the CONNECT method is established between the transfer server 1 and the transfer client 2. After that, the communication between the transfer server 1 and the transfer client 2 can tunnel the TCP connection using the connection 6. This enables two-way communication, that is, push-type mutual communication.

本実施形態の具体的な適用例を説明する。サーバ4は、ウェブサーバである。クライアント装置3は、ウェブサーバにアクセスするブラウザを備え、ブラウザの操作処理を実行する。クライアント装置3は、ユーザからの実行指示を受けて、サーバ4に対するブラウザの操作処理を自動実行するクラウド型サービスを提供する。クライアント装置3は、手順DBを備える。手順DBは、手順データを記憶する。手順データは、クライアント装置3のブラウザにおける複数の操作処理の手順を含む。当該手順は、例えばブラウザ画面上におけるデータの入力操作、エレメントの選択操作、ブラウザのリサイズ操作、ブラウザのスクロール操作、タブの切替操作等を含む。手順データは、クライアント装置3に操作処理の自動実行を指示するユーザの外部装置によって予め生成され、生成された手順データがクライアント装置3の手順DBに記憶される。クライアント装置3は、手順DBから手順データを読み出し、読み出した手順データに従ってブラウザの操作処理を実行する。 A specific application example of this embodiment will be described. The server 4 is a web server. The client device 3 includes a browser that accesses the web server, and executes operation processing of the browser. The client device 3 provides a cloud-type service that automatically executes a browser operation process for the server 4 in response to an execution instruction from the user. The client device 3 includes a procedure DB. The procedure DB stores procedure data. The procedure data includes a plurality of operation processing procedures in the browser of the client device 3. The procedure includes, for example, a data input operation on the browser screen, an element selection operation, a browser resizing operation, a browser scrolling operation, a tab switching operation, and the like. The procedure data is generated in advance by a user's external device that instructs the client device 3 to automatically execute the operation process, and the generated procedure data is stored in the procedure DB of the client device 3. The client device 3 reads the procedure data from the procedure DB and executes the operation process of the browser according to the read procedure data.

クライアント装置3は、例えばユーザ企業の販売管理システム、売上管理システム等へのデータ入力のためのブラウザの操作処理を実行する。クライアント装置3の制御部30は、ユーザから取得した実行指示に応じて手順DBから手順データを読み出し、ブラウザを起動する。制御部30は、転送サーバ1の受付ポートにアクセスし、サーバ4へのブラウザの操作処理を自動実行するためのHTTPSリクエストを送信する。HTTPSリクエストは、通信トンネルを通じてサーバ4へ転送される。クライアント装置3は、通信トンネルを通じてサーバ4から送信されるHTTPSレスポンスを取得する。クライアント装置3は、手順データに基づく一連の操作処理を自動実行し、サーバ4から受信した実行結果データをユーザの外部装置へ送信する。このように、クライアント装置3によるブラウザの操作処理の自動実行サービスが行われる。 The client device 3 executes a browser operation process for inputting data to, for example, a sales management system, a sales management system, or the like of a user company. The control unit 30 of the client device 3 reads the procedure data from the procedure DB in response to the execution instruction acquired from the user, and starts the browser. The control unit 30 accesses the reception port of the transfer server 1 and transmits an HTTPS request for automatically executing the operation processing of the browser to the server 4. The HTTPS request is forwarded to the server 4 through the communication tunnel. The client device 3 acquires the HTTPS response transmitted from the server 4 through the communication tunnel. The client device 3 automatically executes a series of operation processes based on the procedure data, and transmits the execution result data received from the server 4 to the user's external device. In this way, the automatic execution service of the browser operation processing by the client device 3 is performed.

(第2実施形態)
第2実施形態では、可否情報に基づき転送先への転送可否を判定する構成を説明する。以下では、第2実施形態について、第1実施形態と異なる点を説明する。後述する構成を除く他の構成については第1実施形態の情報処理システム100と同様であるので、共通する構成については同一の符号を付してその詳細な説明を省略する。
(Second Embodiment)
In the second embodiment, a configuration for determining whether or not to transfer to a transfer destination will be described based on the availability information. Hereinafter, the second embodiment will be described as different from the first embodiment. Since the other configurations except the configurations described later are the same as those of the information processing system 100 of the first embodiment, the common configurations are designated by the same reference numerals and detailed description thereof will be omitted.

図6は、第2実施形態における情報処理システム200の各装置の内部構成を示すブロック図である。第2実施形態の転送クライアント2の記憶部21は、可否情報DB212をさらに記憶している。可否情報DB212は、可否情報を記録したデータベースである。可否情報とは、転送先として指定されるサーバ4の特定ポートへの転送の可否を判定するための情報であり、具体的には転送を許可する転送先のサーバ又はサービスを識別するデータが含まれる。 FIG. 6 is a block diagram showing an internal configuration of each device of the information processing system 200 according to the second embodiment. The storage unit 21 of the transfer client 2 of the second embodiment further stores the availability information DB 212. The availability information DB 212 is a database that records the availability information. The possibility information is information for determining whether or not transfer to a specific port of the server 4 designated as a transfer destination is possible, and specifically includes data that identifies a transfer destination server or service that allows transfer. Will be posted.

図7は、可否情報DB212のレコードレイアウトを例示する説明図である。例えば、可否情報DB212には、可否情報を識別する識別ID、転送を許可するサーバを識別するためのサーバ4のプライベートIPアドレス、転送を許可するサーバ4のサービスを識別するためのポート番号等の情報が対応付けられて格納されている。IPアドレス又はポート番号は、単一のデータに限定されず、例えば転送を許可するIPアドレス帯又はポート番号帯など、転送を許可する範囲帯を示すデータであってよい。可否情報は、ホスト名、ドメイン名、プロトコル名等が記憶されていてもよい。可否情報は、IPアドレス及びポート番号等を対応付けた転送先IDにて管理されていてもよい。 FIG. 7 is an explanatory diagram illustrating the record layout of the availability information DB 212. For example, the pass / fail information DB 212 includes an identification ID for identifying pass / fail information, a private IP address of the server 4 for identifying the server that allows forwarding, a port number for identifying the service of the server 4 that allows forwarding, and the like. Information is associated and stored. The IP address or port number is not limited to a single piece of data, and may be data indicating a range band that allows forwarding, such as an IP address band or port number band that allows forwarding. The host name, domain name, protocol name, and the like may be stored in the availability information. The availability information may be managed by a forwarding ID associated with an IP address, a port number, and the like.

転送クライアント2は、可否情報に基づき、転送先として指定されるサーバ4への転送を許可するか否かを判定する。又は、転送クライアント2は、可否情報に基づき、転送先として指定されるサーバ4のサービスへの転送を許可するか否かを判定する。転送クライアント2は、可否情報DB212に記録されるサーバ4のサービスの範囲内に限定して、転送要求を許可する。なお、可否情報は転送を許可するサーバ4の範囲を記録するものに限定されず、転送を不許可、すなわち転送を拒否するサーバ4の範囲を記録するものであってもよい。この場合、転送クライアント2は、可否情報に基づき、転送先として指定されるサーバ4のサービスへの転送を拒否するか否かを判定する。可否情報には、さらにユーザアカウント等の識別情報が関連付けられていてもよい。すなわち、ユーザアカウント毎に転送を許可又は不許可する範囲が設定されていてもよい。 The transfer client 2 determines whether or not to allow transfer to the server 4 designated as the transfer destination based on the availability information. Alternatively, the transfer client 2 determines whether or not to allow transfer to the service of the server 4 designated as the transfer destination based on the availability information. The transfer client 2 permits the transfer request only within the range of the service of the server 4 recorded in the availability information DB 212. Note that the pass / fail information is not limited to recording the range of the server 4 that allows the transfer, and may record the range of the server 4 that does not allow the transfer, that is, rejects the transfer. In this case, the transfer client 2 determines whether or not to reject the transfer to the service of the server 4 designated as the transfer destination based on the availability information. Identification information such as a user account may be further associated with the availability information. That is, a range in which forwarding is permitted or disallowed may be set for each user account.

図8は、第2実施形態における情報処理システム200において実行される操作処理の手順の一例を示すシーケンス図である。第1実施形態の図5と共通する処理については同一の番号を付してその詳細な説明を省略する。 FIG. 8 is a sequence diagram showing an example of a procedure of operation processing executed in the information processing system 200 according to the second embodiment. The same number is assigned to the processes common to FIG. 5 of the first embodiment, and detailed description thereof will be omitted.

転送サーバ1の制御部10は、転送情報を取得し転送情報DB111に記憶する(S101)。転送クライアント2の制御部20は、識別情報を取得し識別情報DB211に記憶する(S201)。制御部20はまた、転送を許可するサーバ4のIPアドレス及びポート番号等を含む可否情報を取得し、取得した可否情報を可否情報DB212に記憶する(S211)。可否情報の取得方法は限定されるものではないが、例えば外部の管理サーバと通信することにより取得してよい。 The control unit 10 of the transfer server 1 acquires the transfer information and stores it in the transfer information DB 111 (S101). The control unit 20 of the transfer client 2 acquires the identification information and stores it in the identification information DB 211 (S201). The control unit 20 also acquires availability information including the IP address and port number of the server 4 that permits forwarding, and stores the acquired availability information in the availability information DB 212 (S211). The method of acquiring the availability information is not limited, but it may be acquired by communicating with an external management server, for example.

転送クライアント2の制御部20は、転送サーバ1にコネクション6の確立要求を送信する(S202)。転送クライアント2は、サーバ4の識別情報を識別情報DB211から読み出し、確立要求に関連付けて送信する。転送サーバ1の制御部10は、コネクション6の確立要求を受信し(S102)、応答を転送クライアント2へ送信する(S103)。転送クライアント2の制御部20は、応答を受信する(S203)。制御部20が応答を受信することにより、転送サーバ1と転送クライアント2との間でコネクション6が確立される。 The control unit 20 of the transfer client 2 transmits a request for establishing a connection 6 to the transfer server 1 (S202). The transfer client 2 reads the identification information of the server 4 from the identification information DB 211 and transmits it in association with the establishment request. The control unit 10 of the transfer server 1 receives the connection 6 establishment request (S102) and transmits the response to the transfer client 2 (S103). The control unit 20 of the transfer client 2 receives the response (S203). When the control unit 20 receives the response, the connection 6 is established between the transfer server 1 and the transfer client 2.

コネクション6の確立後、転送サーバ1の制御部10は、通信トンネルを形成するための転送要求を転送クライアント2へ送信する(S104)。転送要求には、転送先を指定するためのサーバ4のIPアドレス及びポート番号を含む転送先情報と、通信トンネル要求に関する情報とが関連付けられている。転送要求には、ユーザアカウント等の識別情報が関連付けられていてもよい。 After establishing the connection 6, the control unit 10 of the transfer server 1 transmits a transfer request for forming a communication tunnel to the transfer client 2 (S104). The forwarding request is associated with forwarding information including the IP address and port number of the server 4 for designating the forwarding destination, and information about the communication tunnel request. The transfer request may be associated with identification information such as a user account.

転送クライアント2の制御部20は、転送要求を受信する(S204)。制御部20は、受信した転送要求に関連付けられる転送先情報の宛先IPアドレス及びポート番号と、可否情報のIPアドレス及びポート番号とを比較することにより、転送要求に係る転送先への転送を許可するか否かを判定する(S212)。制御部20は、転送要求時に取得するユーザアカウントに基づき、当該ユーザアカウントに対し許可される転送先であるか否かを判定してもよい。 The control unit 20 of the transfer client 2 receives the transfer request (S204). The control unit 20 permits transfer to the transfer destination related to the transfer request by comparing the destination IP address and port number of the transfer destination information associated with the received transfer request with the IP address and port number of the pass / fail information. It is determined whether or not to do so (S212). The control unit 20 may determine whether or not the transfer destination is permitted for the user account based on the user account acquired at the time of the transfer request.

転送先情報の宛先IPアドレス及びポート番号が可否情報に含まれないことにより、転送を許可しないと判定した場合(S212:NO)、制御部20は、転送不許可を示す応答を転送サーバ1へ送信し、処理を終了する。制御部20は、処理をS204に戻しコネクション6の確立状態を維持してもよい。 When it is determined that the forwarding is not permitted because the destination IP address and the port number of the forwarding destination information are not included in the pass / fail information (S212: NO), the control unit 20 sends a response indicating that the forwarding is not allowed to the forwarding server 1. Send and finish the process. The control unit 20 may return the process to S204 and maintain the established state of the connection 6.

転送先情報の宛先IPアドレス及びポート番号が許可情報に含まれることにより、転送を許可すると判定した場合(S212:YES)、制御部20は、転送許可を示す応答を転送サーバ1へ送信する(S213)。 When it is determined that the transfer is permitted because the destination IP address and the port number of the transfer destination information are included in the permission information (S212: YES), the control unit 20 transmits a response indicating the transfer permission to the transfer server 1 (S). S213).

転送サーバ1の制御部10は、転送許可を示す応答を受信する(S111)。制御部10が転送許可を示す応答を受信することにより、転送サーバ1の受付ポートと、転送クライアント2に接続するサーバ4の特定ポートとの間で通信トンネルが形成される。制御部10は、受付ポートを開放する(S106)。クライアント装置3の制御部30は、転送サーバ1の受付ポートにサーバ4の特定ポート宛先の通信要求を送信する(S301)。通信が開始され、通信トンネルを通して転送サーバ1の受付ポートとサーバ4の特定ポートとの間で通信データが転送される。 The control unit 10 of the transfer server 1 receives a response indicating transfer permission (S111). When the control unit 10 receives the response indicating the transfer permission, a communication tunnel is formed between the reception port of the transfer server 1 and the specific port of the server 4 connected to the transfer client 2. The control unit 10 opens the reception port (S106). The control unit 30 of the client device 3 transmits a communication request to the specific port destination of the server 4 to the reception port of the transfer server 1 (S301). Communication is started, and communication data is transferred between the reception port of the transfer server 1 and the specific port of the server 4 through the communication tunnel.

本実施形態によれば、転送を許可又は不許可する宛先の範囲を設定した可否情報に基づき、転送の可否が判定される。予め設定される範囲を超えたサーバ4又はサーバ4のポートへの通信は転送が拒否されるため、プライベートネットワークN2内のサーバ4に対する不正なアクセスを防止し、通信の安全性を向上させることができる。 According to the present embodiment, it is determined whether or not the transfer is possible based on the information on whether or not the range of the destinations that allow or disallow the transfer is set. Since the transfer to the server 4 or the port of the server 4 exceeding the preset range is rejected, it is possible to prevent unauthorized access to the server 4 in the private network N2 and improve the security of the communication. can.

上記では、転送クライアント2が可否情報を保持し、転送可否を判定する例を説明したが本実施形態は限定されるものではなく、転送サーバ1が転送可否を判定する構成であってもよい。この場合、転送サーバ1は、例えばクライアント装置3等の外部装置から転送先のサーバ4のIPアドレス及びポート番号を含む転送要求を受信する。転送サーバ1は、記憶する可否情報に基づき、受信した転送要求のIPアドレス及びポート番号への転送を許可するか否かを判定する。転送を許可すると判定した場合にのみ、S104の転送要求の送信処理を実行する。転送サーバ1は、ユーザアカウント等の識別情報及び転送先を受信し、受信したユーザアカウントに許可される転送先であるか否かを判定してもよい。すなわち、転送サーバ1は、取得した転送要求を許可するか否かを判定する転送許可サーバとして機能する。 In the above, an example in which the transfer client 2 holds the transfer possibility information and determines the transfer possibility is described, but the present embodiment is not limited, and the transfer server 1 may be configured to determine the transfer possibility. In this case, the transfer server 1 receives a transfer request including the IP address and port number of the transfer destination server 4 from an external device such as the client device 3. The forwarding server 1 determines whether or not to permit forwarding of the received forwarding request to the IP address and port number based on the storage availability information. Only when it is determined that the transfer is permitted, the transmission process of the transfer request of S104 is executed. The transfer server 1 may receive identification information such as a user account and a transfer destination, and may determine whether or not the transfer destination is permitted for the received user account. That is, the transfer server 1 functions as a transfer permission server that determines whether or not to permit the acquired transfer request.

(第3実施形態)
第3実施形態では、転送サーバ1と転送クライアント2との間で複数のコネクションを確立する構成を説明する。以下では、第3実施形態について、第1実施形態と異なる点を説明する。後述する構成を除く他の構成については第1実施形態の情報処理システム100と同様であるので、共通する構成については同一の符号を付してその詳細な説明を省略する。
(Third Embodiment)
In the third embodiment, a configuration for establishing a plurality of connections between the transfer server 1 and the transfer client 2 will be described. Hereinafter, the differences between the third embodiment and the first embodiment will be described. Since the other configurations except the configurations described later are the same as those of the information processing system 100 of the first embodiment, the common configurations are designated by the same reference numerals and detailed description thereof will be omitted.

図9は、第3実施形態における情報処理システム300の概要を示す図である。第3実施形態では、転送サーバ1と転送クライアント2との間で、転送要求の通信に係る第1コネクション61と、通信データの転送に係る第2コネクション62とを確立する。 FIG. 9 is a diagram showing an outline of the information processing system 300 according to the third embodiment. In the third embodiment, the first connection 61 related to the communication of the transfer request and the second connection 62 related to the transfer of the communication data are established between the transfer server 1 and the transfer client 2.

図10及び図11は、第3実施形態における情報処理システム300において実行される操作処理の手順の一例を示すシーケンス図である。 10 and 11 are sequence diagrams showing an example of a procedure of operation processing executed in the information processing system 300 according to the third embodiment.

転送サーバ1の制御部10は、転送情報を取得し転送情報DB111に記憶する(S121)。転送クライアント2の制御部20は、識別情報を取得し識別情報DB211に記憶する(S221)。制御部20はまた、可否情報を取得し可否情報DB212に記憶する(S222)。 The control unit 10 of the transfer server 1 acquires the transfer information and stores it in the transfer information DB 111 (S121). The control unit 20 of the transfer client 2 acquires the identification information and stores it in the identification information DB 211 (S221). The control unit 20 also acquires the availability information and stores it in the availability information DB 212 (S222).

転送クライアント2の制御部20は、グローバルネットワークN1を介して転送サーバ1に第1コネクション61の確立要求を送信する(S223)。転送クライアント2は、サーバ4の識別情報を識別情報DB211から読み出し、確立要求に関連付けて送信する。転送サーバ1の制御部10は、第1コネクション61の確立要求を受信し(S122)、応答を転送クライアント2へ送信する(S123)。転送クライアント2の制御部20は、応答を受信する(S224)。制御部20が応答を受信することにより、転送サーバ1と転送クライアント2との間で第1コネクション61が確立される。 The control unit 20 of the transfer client 2 transmits a request for establishing the first connection 61 to the transfer server 1 via the global network N1 (S223). The transfer client 2 reads the identification information of the server 4 from the identification information DB 211 and transmits it in association with the establishment request. The control unit 10 of the transfer server 1 receives the request for establishing the first connection 61 (S122) and transmits the response to the transfer client 2 (S123). The control unit 20 of the transfer client 2 receives the response (S224). When the control unit 20 receives the response, the first connection 61 is established between the transfer server 1 and the transfer client 2.

第1コネクション61の確立後、転送サーバ1の制御部10は、転送要求を転送クライアント2へ送信する(S124)。転送要求には、転送先を指定するための転送先情報が関連付けられている。転送クライアント2の制御部20は、転送要求を受信する(S225)。 After establishing the first connection 61, the control unit 10 of the transfer server 1 transmits a transfer request to the transfer client 2 (S124). The forwarding request is associated with forwarding information for specifying the forwarding destination. The control unit 20 of the transfer client 2 receives the transfer request (S225).

制御部20は、受信した転送要求を許可するか否かを判定する(S226)。転送を許可しないと判定した場合(S226:NO)、制御部20は処理を終了する。転送を許可すると判定した場合(S226:YES)、制御部20は転送許可を示す応答を転送サーバ1へ送信する(S227)。転送サーバ1の制御部10は、転送許可を示す応答を受信する(S125)。なお転送許可に係る判定処理は省略されてもよい。 The control unit 20 determines whether or not to allow the received transfer request (S226). When it is determined that the transfer is not permitted (S226: NO), the control unit 20 ends the process. When it is determined that the transfer is permitted (S226: YES), the control unit 20 transmits a response indicating the transfer permission to the transfer server 1 (S227). The control unit 10 of the transfer server 1 receives a response indicating transfer permission (S125). The determination process related to the transfer permission may be omitted.

転送クライアント2の制御部20は、グローバルネットワークN1を介して第1転送サーバ1aに第2コネクション62の確立要求を送信する(S228)。転送クライアント2は、サーバ4の識別情報を識別情報DB211から読み出し、確立要求に関連付けて送信する。転送サーバ1の制御部10は、第2コネクション62の確立要求を受信し(S126)、応答を転送クライアント2へ送信する(S127)。転送クライアント2の制御部20は、応答を受信する(S229)。制御部20が応答を受信することにより、転送サーバ1と転送クライアント2との間で第2コネクション62が確立される。 The control unit 20 of the transfer client 2 transmits a request for establishing the second connection 62 to the first transfer server 1a via the global network N1 (S228). The transfer client 2 reads the identification information of the server 4 from the identification information DB 211 and transmits it in association with the establishment request. The control unit 10 of the transfer server 1 receives the request for establishing the second connection 62 (S126) and transmits the response to the transfer client 2 (S127). The control unit 20 of the transfer client 2 receives the response (S229). When the control unit 20 receives the response, the second connection 62 is established between the transfer server 1 and the transfer client 2.

第2コネクション62の確立後、転送サーバ1の制御部10は、通信トンネル要求を転送クライアント2へ送信する(S128)。通信トンネル要求には、転送先のサーバ4のプライベートIPアドレス及びポート番号と、転送サーバ1のグローバルIPアドレス及び受付ポート番号とが含まれる。転送クライアント2の制御部20は、通信トンネル要求を受信する(S230)。制御部20は、受信した通信トンネル要求に対する応答を転送サーバ1へ送信する(S231)。転送サーバ1の制御部10は、応答を受信する(S129)。制御部10が応答を受信することにより、転送サーバ1の受付ポートと、転送先として指定したサーバ4の特定ポートとの間で通信トンネルが形成される。制御部10は、受付ポートを開放する(S130)。クライアント装置3の制御部30は、転送サーバ1の受付ポートにサーバ4の特定ポートを宛先とする通信要求を送信する(S321)。通信が開始され、通信トンネルを通して転送サーバ1の受付ポートとサーバ4の特定ポートとの間で通信データが転送される。第2コネクション62及び通信トンネルは、転送終了後切断されてよい。 After establishing the second connection 62, the control unit 10 of the transfer server 1 transmits a communication tunnel request to the transfer client 2 (S128). The communication tunnel request includes the private IP address and port number of the transfer destination server 4, and the global IP address and reception port number of the transfer server 1. The control unit 20 of the transfer client 2 receives the communication tunnel request (S230). The control unit 20 transmits a response to the received communication tunnel request to the transfer server 1 (S231). The control unit 10 of the transfer server 1 receives the response (S129). When the control unit 10 receives the response, a communication tunnel is formed between the reception port of the transfer server 1 and the specific port of the server 4 designated as the transfer destination. The control unit 10 opens the reception port (S130). The control unit 30 of the client device 3 transmits a communication request addressed to the specific port of the server 4 to the reception port of the transfer server 1 (S321). Communication is started, and communication data is transferred between the reception port of the transfer server 1 and the specific port of the server 4 through the communication tunnel. The second connection 62 and the communication tunnel may be disconnected after the transfer is completed.

本実施形態によれば、転送要求のための第1コネクション61と、通信データの転送のための第2コネクション62とを確立することにより、各コネクションを用いて効率的に通信が行われる。 According to the present embodiment, by establishing the first connection 61 for the transfer request and the second connection 62 for the transfer of communication data, communication is efficiently performed using each connection.

上記では、転送サーバ1と転送クライアント2との間で2個のコネクションが確立される例を説明したが、本実施形態は限定されるものではない。例えば、転送サーバ1は、第1転送サーバ及び第2転送サーバを含み、第1転送サーバと転送クライアント2との間で第1コネクション61が確立され、第2転送サーバと転送クライアント2との間で第2コネクション62が確立されてもよい。この場合、第1転送サーバは、転送要求を許可するか否かを判定する転送許可サーバとして機能し、第2転送サーバは通信データを転送する通信転送サーバとして機能する。プライベートネットワーク内の1個の転送クライアント2を介してグローバルネットワーク上の複数の転送サーバ1から効率的に通信することができ、各転送サーバ1で処理又は機能を分散することができる。 In the above, an example in which two connections are established between the transfer server 1 and the transfer client 2 has been described, but the present embodiment is not limited. For example, the transfer server 1 includes a first transfer server and a second transfer server, a first connection 61 is established between the first transfer server and the transfer client 2, and a first connection 61 is established between the second transfer server and the transfer client 2. The second connection 62 may be established at. In this case, the first transfer server functions as a transfer permission server for determining whether or not to permit the transfer request, and the second transfer server functions as a communication transfer server for transferring communication data. It is possible to efficiently communicate with a plurality of transfer servers 1 on the global network via one transfer client 2 in the private network, and processing or functions can be distributed among the transfer servers 1.

(第4実施形態)
第4実施形態では、複数の転送サーバ間で接続情報を共有する構成を説明する。以下では、第4実施形態について、第1実施形態と異なる点を説明する。後述する構成を除く他の構成については第1実施形態の情報処理システム100と同様であるので、共通する構成については同一の符号を付してその詳細な説明を省略する。
(Fourth Embodiment)
In the fourth embodiment, a configuration for sharing connection information among a plurality of transfer servers will be described. Hereinafter, the fourth embodiment will be described as different from the first embodiment. Since the other configurations except the configurations described later are the same as those of the information processing system 100 of the first embodiment, the common configurations are designated by the same reference numerals and detailed description thereof will be omitted.

図12は、第4実施形態における情報処理システム400の概要を示す図である。図12では、中継装置5及びグローバルネットワークN1の図示を省略する。第4実施形態の転送サーバ1は、第1転送サーバ1a及び第2転送サーバ1bを含む。転送サーバ1は2個のサーバを含むものに限定されず、3個以上のサーバを含んでよい。第1転送サーバ1a及び第2転送サーバ1bはそれぞれ、グローバルネットワークN1及び中継装置5を介して、異なるプライベートネットワークN2に接続される転送クライアント2と通信接続されている。 FIG. 12 is a diagram showing an outline of the information processing system 400 according to the fourth embodiment. In FIG. 12, the relay device 5 and the global network N1 are not shown. The transfer server 1 of the fourth embodiment includes a first transfer server 1a and a second transfer server 1b. The transfer server 1 is not limited to the one including two servers, and may include three or more servers. The first transfer server 1a and the second transfer server 1b are communication-connected with a transfer client 2 connected to a different private network N2 via the global network N1 and the relay device 5, respectively.

例えば、プライベートネットワークN2はそれぞれユーザの家庭やオフィスに設置されるLANであり、サーバ4は、家庭やオフィスにて利用されるウェブカメラ又はネットワークストレージ(NAS:Network Attached Storage)である。サーバ4のユーザは、外部ネットワークに接続されるクライアント装置3を用いて転送サーバ1へ通信接続することにより、転送クライアント2を介して自宅外から自宅内のサーバ4へアクセス可能である。ユーザは、自宅外からウェブカメラへアクセスすることでウェブカメラが撮影した自宅内の画像を取得したり、自宅外からNASへアクセスすることで自宅内のNASに保存されるファイルを取得したりすることができる。本実施形態において、サーバ4は転送クライアント2の機能を含む1つのデバイスとして構成されてもよい。 For example, the private network N2 is a LAN installed in the user's home or office, and the server 4 is a webcam or network attached storage (NAS) used in the home or office. The user of the server 4 can access the server 4 in the home from outside the home via the transfer client 2 by communicating with the transfer server 1 using the client device 3 connected to the external network. The user can access the webcam from outside the home to acquire the image in the home taken by the webcam, or access the NAS from outside the home to acquire the file saved in the NAS in the home. be able to. In the present embodiment, the server 4 may be configured as one device including the function of the transfer client 2.

第1転送サーバ1aは、制御部10a、記憶部11a及び通信部12aを備える。第2転送サーバ1bは、制御部10b、記憶部11b及び通信部12bを備える。第1転送サーバ1a及び第2転送サーバ1bのハードウェア構成は第1実施形態の転送サーバ1と同様であるため図示及び詳細な説明を省略する。 The first transfer server 1a includes a control unit 10a, a storage unit 11a, and a communication unit 12a. The second transfer server 1b includes a control unit 10b, a storage unit 11b, and a communication unit 12b. Since the hardware configurations of the first transfer server 1a and the second transfer server 1b are the same as those of the transfer server 1 of the first embodiment, illustration and detailed description thereof will be omitted.

第1転送サーバ1a及び第2転送サーバ1bはそれぞれ、接続情報DB112に対して情報を読み書きすることが可能である。接続情報DB112は、接続情報を記録したデータベースである。接続情報とは、第1転送サーバ1a及び第2転送サーバ1bそれぞれと転送クライアント2とのコネクションの接続(確立)状態に関する情報であり、各コネクションを確立する転送サーバと転送クライアント2との対応関係を示す情報である。 The first transfer server 1a and the second transfer server 1b can each read and write information to and from the connection information DB 112. The connection information DB 112 is a database in which connection information is recorded. The connection information is information on the connection (establishment) status of the connection between the first transfer server 1a and the second transfer server 1b and the transfer client 2, and the correspondence between the transfer server and the transfer client 2 that establish each connection. It is information indicating.

図13は、接続情報DB112のレコードレイアウトを示す概念図である。例えば、接続情報DB112には、識別ID、転送サーバのグローバルIPアドレス及びポート番号、転送サーバと第1コネクション61を確立している転送クライアント2のグローバルIPアドレス、転送クライアント2に接続するサーバ4の識別情報(図13の例ではPINコード)、サーバ4のIPアドレス及びポート番号を含む転送先情報等の情報が対応付けられて格納されている。第1転送サーバ1a及び第2転送サーバ1bは、転送クライアント2と第1コネクション61が確立される都度、当該第1コネクション61に関する接続情報を接続情報DB112に記録する。第1転送サーバ1a及び第2転送サーバ1bは、共有する接続情報に基づき、クライアント装置3から受信した通信データを他の転送サーバへリダイレクトする。なお接続情報DB112は、第1転送サーバ1aの記憶部11a及び第2転送サーバ1bの記憶部11bにそれぞれ記憶されており、第1転送サーバ1a及び第2転送サーバ1b間で接続情報を共有する構成であってもよい。 FIG. 13 is a conceptual diagram showing the record layout of the connection information DB 112. For example, the connection information DB 112 includes an identification ID, a global IP address and port number of the transfer server, a global IP address of the transfer client 2 that establishes the first connection 61 with the transfer server, and a server 4 connected to the transfer client 2. Information such as identification information (PIN code in the example of FIG. 13), transfer destination information including the IP address and port number of the server 4 is stored in association with each other. The first transfer server 1a and the second transfer server 1b record the connection information regarding the first connection 61 in the connection information DB 112 each time the transfer client 2 and the first connection 61 are established. The first transfer server 1a and the second transfer server 1b redirect the communication data received from the client device 3 to another transfer server based on the shared connection information. The connection information DB 112 is stored in the storage unit 11a of the first transfer server 1a and the storage unit 11b of the second transfer server 1b, respectively, and shares the connection information between the first transfer server 1a and the second transfer server 1b. It may be configured.

図14及び図15は、第4実施形態における情報処理システム400において実行される操作処理の手順の一例を示すシーケンス図である。 14 and 15 are sequence diagrams showing an example of a procedure of operation processing executed in the information processing system 400 according to the fourth embodiment.

第1転送サーバ1aの制御部10aは、転送情報を取得し転送情報DB111に記憶する(S141)。転送クライアント2の制御部20は、識別情報を取得し識別情報DB211に記憶する(S241)。本実施形態では、識別情報として、各サーバ4に固有のPINコードが用いられる。なお、処理順序は限定されるものでなく、第1転送サーバ1aの制御部10aは、後述するS142においてサーバ4のIPアドレス及びポート番号を含む転送先情報を転送クライアント2から受信し、転送情報DB111に記憶してもよい。 The control unit 10a of the first transfer server 1a acquires the transfer information and stores it in the transfer information DB 111 (S141). The control unit 20 of the transfer client 2 acquires the identification information and stores it in the identification information DB 211 (S241). In this embodiment, a PIN code unique to each server 4 is used as the identification information. The processing order is not limited, and the control unit 10a of the first transfer server 1a receives the transfer destination information including the IP address and port number of the server 4 from the transfer client 2 in S142 described later, and the transfer information. It may be stored in DB 111.

転送クライアント2の制御部20は、グローバルネットワークN1を介して第1転送サーバ1aに第1コネクション61の確立要求を送信する(S242)。転送クライアント2は、サーバ4の識別情報(PINコード)を識別情報DB211から読み出し、確立要求に関連付けて送信する。第1転送サーバ1aの制御部10aは、第1コネクション61の確立要求を受信し(S142)、応答を転送クライアント2へ送信する(S143)。転送クライアント2の制御部20は、応答を受信する(S243)。制御部20が応答を受信することにより、第1転送サーバ1aと転送クライアント2との間で第1コネクション61が確立される。すなわち、プライベートネットワーク内の転送クライアント2を介して、ウェブカメラ又はNASと、グローバルネットワークの転送サーバ1とのセッションが確立される。制御部20は、所定のポート番号を開き、クライアント装置3からの通信を待ち受ける。 The control unit 20 of the transfer client 2 transmits a request for establishing the first connection 61 to the first transfer server 1a via the global network N1 (S242). The transfer client 2 reads the identification information (PIN code) of the server 4 from the identification information DB 211, and transmits the identification information (PIN code) in association with the establishment request. The control unit 10a of the first transfer server 1a receives the request for establishing the first connection 61 (S142) and transmits the response to the transfer client 2 (S143). The control unit 20 of the transfer client 2 receives the response (S243). When the control unit 20 receives the response, the first connection 61 is established between the first transfer server 1a and the transfer client 2. That is, a session between the webcam or NAS and the transfer server 1 of the global network is established via the transfer client 2 in the private network. The control unit 20 opens a predetermined port number and listens for communication from the client device 3.

第1転送サーバ1aの制御部10aは、新たなコネクションの確立状態に関する接続情報を接続情報DB112に記憶する(S144)。接続情報には、例えば自装置とコネクションを確立する転送クライアント2のIPアドレス、コネクションの確立要求に関連付けられる識別情報、対応する転送先情報等が含まれる。 The control unit 10a of the first transfer server 1a stores the connection information regarding the establishment state of the new connection in the connection information DB 112 (S144). The connection information includes, for example, the IP address of the transfer client 2 that establishes a connection with the own device, the identification information associated with the connection establishment request, the corresponding transfer destination information, and the like.

第2転送サーバ1bと第2の転送クライアント2との間でも上述の処理が実行され、第2転送サーバと第2の転送クライアント2との間で第1コネクション61が確立される。各転送サーバと転送クライアント2とのコネクションの確立状態は、随時、接続情報DB112に記録される。これにより、各転送サーバ間で他の転送サーバにおける接続状態を示す接続情報が共有される。 The above processing is also executed between the second transfer server 1b and the second transfer client 2, and the first connection 61 is established between the second transfer server and the second transfer client 2. The established state of the connection between each transfer server and the transfer client 2 is recorded in the connection information DB 112 at any time. As a result, connection information indicating the connection status of the other transfer servers is shared between the transfer servers.

第1コネクション61の確立後、ユーザはクライアント装置3を用いて、ウェブカメラの画像データや、NASのファイルを取得するため、転送サーバ1へアクセスする。クライアント装置3の制御部30は、転送サーバ1へ転送要求を送信する(S341)。クライアント装置3が転送要求を送信するサーバは、転送サーバ1の内のいずれのサーバであってもよく、すなわち第1転送サーバ1a又は第2転送サーバ1bのいずれかに転送要求を送信する。以下の処理は、一例として、クライアント装置3の転送要求に係る転送先とは接続されていない第2転送サーバ1bに転送要求が送信された場合の処理の手順である。 After establishing the first connection 61, the user uses the client device 3 to access the transfer server 1 in order to acquire the image data of the webcam and the NAS file. The control unit 30 of the client device 3 transmits a transfer request to the transfer server 1 (S341). The server to which the client device 3 transmits the transfer request may be any server in the transfer server 1, that is, the transfer request is transmitted to either the first transfer server 1a or the second transfer server 1b. The following processing is, for example, a procedure for processing when the transfer request is transmitted to the second transfer server 1b that is not connected to the transfer destination related to the transfer request of the client device 3.

転送要求には、転送先のサーバ4及びサービスを指定するための情報が関連付けられており、例えば識別情報及び転送情報等が関連付けられている。クライアント装置3がブラウザを用いて第2転送サーバ1bへアクセスする場合には、例えば第2転送サーバ1bのホスト名及びポート番号、自装置のホスト名及びポート番号、パスにPINコード及びプロトコル名を含むURLにより、転送先のサーバ4及びサービスを指定して転送要求を行ってよい。 Information for designating the server 4 of the transfer destination and the service is associated with the transfer request, and for example, identification information, transfer information, and the like are associated with the transfer request. When the client device 3 accesses the second transfer server 1b using a browser, for example, the host name and port number of the second transfer server 1b, the host name and port number of the own device, and the PIN code and protocol name in the path are entered. The transfer request may be made by designating the transfer destination server 4 and the service by the included URL.

第2転送サーバ1bの制御部10bは、転送要求を受信する(S441)。制御部10bは、接続情報DB112を参照して接続情報を取得する(S442)。制御部10bは、取得した接続情報に基づき、クライアント装置3の指定する転送先と第1コネクション61を確立している転送サーバを特定する(S443)。具体的には、制御部10bは、PINコードに基づき、当該PINコードにて識別されるサーバ4と接続する転送クライアント2と第1コネクション61を確立中の転送サーバ(第1転送サーバ1a)を特定する。制御部10bは、特定した第1転送サーバ1aにアクセスするためのURL又は第1転送サーバ1aのグローバルIPアドレス等のリダイレクト情報をクライアント装置3へ送信する(S444)。制御部10bは、転送先情報に基づき転送サーバを特定してもよい。 The control unit 10b of the second transfer server 1b receives the transfer request (S441). The control unit 10b acquires the connection information with reference to the connection information DB 112 (S442). Based on the acquired connection information, the control unit 10b identifies the transfer destination designated by the client device 3 and the transfer server that establishes the first connection 61 (S443). Specifically, the control unit 10b sets a transfer server (first transfer server 1a) that is establishing a first connection 61 with a transfer client 2 that connects to the server 4 identified by the PIN code based on the PIN code. Identify. The control unit 10b transmits redirect information such as a URL for accessing the specified first transfer server 1a or a global IP address of the first transfer server 1a to the client device 3 (S444). The control unit 10b may specify the transfer server based on the transfer destination information.

クライアント装置3の制御部30は、リダイレクト情報を受信する(S342)。制御部30は、リダイレクト情報に基づき、第1転送サーバ1aへ転送要求を送信する(S343)。このように、第1転送サーバ1a及び第2転送サーバ1bで接続情報を共有することで、クライアント装置3からコネクションを確立していない第2転送サーバ1bへ接続された場合であっても、クライアント装置3を第1転送サーバ1aへリダイレクトすることができる。なお、第2転送サーバ1bの制御部10bは、クライアント装置3を介することなく転送サーバ間で通信データを中継することにより、クライアント装置3から受信した転送要求を直接第1転送サーバ1aへ転送してもよい。 The control unit 30 of the client device 3 receives the redirect information (S342). The control unit 30 transmits a transfer request to the first transfer server 1a based on the redirect information (S343). In this way, by sharing the connection information between the first transfer server 1a and the second transfer server 1b, even when the client device 3 connects to the second transfer server 1b for which a connection has not been established, the client The device 3 can be redirected to the first transfer server 1a. The control unit 10b of the second transfer server 1b directly transfers the transfer request received from the client device 3 to the first transfer server 1a by relaying the communication data between the transfer servers without going through the client device 3. You may.

第1転送サーバ1aの制御部10aは、転送要求を受信する(S145)。制御部10aは、転送要求に関連付けられるPINコード及びプロトコルと、転送情報DB111に保持する情報とに基づき、転送先のIPアドレス及びポート番号等を含む転送先を特定し、特定した転送先の転送先情報を取得する。この場合において、制御部10aは、自装置の待ち受けポートにより、サーバ4のサービスを特定してもよい。制御部10aは、取得した転送先情報を関連付けた転送要求を転送クライアント2へ送信する(S146)。 The control unit 10a of the first transfer server 1a receives the transfer request (S145). The control unit 10a identifies a transfer destination including the IP address and port number of the transfer destination based on the PIN code and protocol associated with the transfer request and the information held in the transfer information DB 111, and transfers the specified transfer destination. Get the destination information. In this case, the control unit 10a may specify the service of the server 4 by the listening port of its own device. The control unit 10a transmits a transfer request associated with the acquired transfer destination information to the transfer client 2 (S146).

転送クライアント2の制御部20は、転送要求を受信する(S244)。制御部20は、受信した転送要求に対する応答を第1転送サーバ1aへ送信する(S245)。転送クライアント2の制御部20は、転送要求を許可するか否かの判定処理を実行してもよい。第1転送サーバ1aの制御部10aは、応答を受信する(S147)。 The control unit 20 of the transfer client 2 receives the transfer request (S244). The control unit 20 transmits a response to the received transfer request to the first transfer server 1a (S245). The control unit 20 of the transfer client 2 may execute a determination process of whether or not to allow the transfer request. The control unit 10a of the first transfer server 1a receives the response (S147).

転送クライアント2の制御部20は、転送要求に応じて、グローバルネットワークN1を介して第1転送サーバ1aに第2コネクション62の確立要求を送信する(S246)。転送クライアント2は、サーバ4の識別情報を識別情報DB211から読み出し、確立要求に関連付けて送信する。第1転送サーバ1aの制御部10aは、第2コネクション62の確立要求を受信し(S148)、応答を転送クライアント2へ送信する(S149)。転送クライアント2の制御部20は、応答を受信する(S247)。制御部20が応答を受信することにより、第1転送サーバ1aと転送クライアント2との間で第2コネクション62が確立される。 The control unit 20 of the transfer client 2 transmits a request for establishing the second connection 62 to the first transfer server 1a via the global network N1 in response to the transfer request (S246). The transfer client 2 reads the identification information of the server 4 from the identification information DB 211 and transmits it in association with the establishment request. The control unit 10a of the first transfer server 1a receives the request for establishing the second connection 62 (S148) and transmits the response to the transfer client 2 (S149). The control unit 20 of the transfer client 2 receives the response (S247). When the control unit 20 receives the response, the second connection 62 is established between the first transfer server 1a and the transfer client 2.

第2コネクション62の確立後、第1転送サーバ1aの制御部10aは、通信トンネル要求を転送クライアント2へ送信する(S150)。通信トンネル要求には、転送先のサーバ4のIPアドレス及びポート番号と、第1転送サーバ1aのグローバルIPアドレス及び受付ポート番号とが含まれている。転送クライアント2の制御部20は、通信トンネル要求を受信する(S248)。制御部20は、受信した通信トンネル要求に対する応答を第1転送サーバ1aへ送信する(S249)。第1転送サーバ1aの制御部10aは、応答を受信する(S151)。制御部10aが応答を受信することにより、第1転送サーバ1aの受付ポートと、転送先として指定したサーバ4の特定ポートとの間で通信トンネルが形成される。制御部10aは、受付ポートを開放する(S152)。 After establishing the second connection 62, the control unit 10a of the first transfer server 1a transmits a communication tunnel request to the transfer client 2 (S150). The communication tunnel request includes the IP address and port number of the transfer destination server 4, and the global IP address and reception port number of the first transfer server 1a. The control unit 20 of the transfer client 2 receives the communication tunnel request (S248). The control unit 20 transmits a response to the received communication tunnel request to the first transfer server 1a (S249). The control unit 10a of the first transfer server 1a receives the response (S151). When the control unit 10a receives the response, a communication tunnel is formed between the reception port of the first transfer server 1a and the specific port of the server 4 designated as the transfer destination. The control unit 10a opens the reception port (S152).

クライアント装置3の制御部30は、第1転送サーバ1aの受付ポートにサーバ4の特定ポートを宛先とする通信要求を送信する(S345)。通信が開始され、通信トンネルを通して第1転送サーバ1aの受付ポートとサーバ4の特定ポートとの間で通信データが転送される。例えばサーバ4がウェブカメラの場合、クライアント装置3の制御部30は、サーバ4からRTSP(Real Time Streaming Protocol)等のストリーム配信のプロトコルによるデータの配信を受ける。サーバ4がNASの場合、クライアント装置3の制御部30は、サーバ4からHTTPS等のプロトコルによるデータを受信する。なおサーバ4がファイル共有などのファイルサービスを提供する場合には、TCP/IPの上位プロトコルとしてSMBプロトコルを用いてよい。 The control unit 30 of the client device 3 transmits a communication request addressed to the specific port of the server 4 to the reception port of the first transfer server 1a (S345). Communication is started, and communication data is transferred between the reception port of the first transfer server 1a and the specific port of the server 4 through the communication tunnel. For example, when the server 4 is a webcam, the control unit 30 of the client device 3 receives data from the server 4 by a stream distribution protocol such as RTSP (Real Time Streaming Protocol). When the server 4 is NAS, the control unit 30 of the client device 3 receives data according to a protocol such as HTTPS from the server 4. When the server 4 provides a file service such as file sharing, the SMB protocol may be used as an upper layer protocol of TCP / IP.

上述の処理において、クライアント装置3の制御部30は、PINコードのみを関連付けた要求を転送サーバ1へ送信することで、サーバ4の特定ポートに対する通信経路をあらかじめ形成してもよい。制御部30は、転送サーバ1から例えば接続情報又は転送情報等を受信することにより、サーバ4のポートの接続状態を取得する。制御部30は、取得したサーバ4のポートの接続状態に応じて、各サーバ4のポートに対応する数の自装置のポートを待ち受け状態にする。その後、制御部30は、待ち受け状態のいずれか1つのポートを用いて転送サーバ1にアクセスし、PINコード及びプロトコルを指定して転送要求を送信する。この場合、制御部30は、例えばブラウザ等の汎用アプリケーションではなく、サービス専用のアプリケーションプログラムに基づき処理を実行することが好ましい。 In the above process, the control unit 30 of the client device 3 may form a communication path for a specific port of the server 4 in advance by transmitting a request associated with only the PIN code to the transfer server 1. The control unit 30 acquires the connection state of the port of the server 4 by receiving, for example, connection information or transfer information from the transfer server 1. The control unit 30 sets the number of ports of its own device corresponding to the port of each server 4 to the standby state according to the connection state of the acquired port of the server 4. After that, the control unit 30 accesses the transfer server 1 using any one of the ports in the standby state, specifies a PIN code and a protocol, and transmits a transfer request. In this case, it is preferable that the control unit 30 executes the process based on the service-dedicated application program rather than the general-purpose application such as a browser.

上記では、クライアント装置3から第2転送サーバ1bへの転送要求を第1転送サーバ1aにリダイレクトする処理を説明したが、本実施形態は限定されない。転送要求を受け付けた第2転送サーバ1bは、自サーバが転送要求に係る転送先と接続されている転送サーバであると特定した場合には、上述のリダイレクト処理を行わず、S145以降の転送処理を実行してよい。 In the above, the process of redirecting the transfer request from the client device 3 to the second transfer server 1b to the first transfer server 1a has been described, but the present embodiment is not limited. When the second transfer server 1b that has received the transfer request identifies that the local server is a transfer server connected to the transfer destination related to the transfer request, the second transfer server 1b does not perform the above-mentioned redirect process and transfers after S145. May be executed.

本実施形態によれば、第1転送サーバ1a及び第2転送サーバ1bを含む複数の転送サーバと複数の転送クライアント2とがそれぞれ異なるコネクションを確立している場合であっても、接続情報を共有することで、クライアント装置3から特定のサーバ4に対する通信が可能となる。転送サーバ1と転送クライアント2とは、転送要求に関する通信のための第1コネクションと、クライアント装置3からの転送要求に応じて確立されるデータ通信のための第2コネクションとを用いて、効率的に通信することができる。 According to the present embodiment, connection information is shared even when a plurality of transfer servers including the first transfer server 1a and the second transfer server 1b and a plurality of transfer clients 2 have established different connections. By doing so, communication from the client device 3 to the specific server 4 becomes possible. The transfer server 1 and the transfer client 2 efficiently use a first connection for communication related to a transfer request and a second connection for data communication established in response to a transfer request from the client device 3. Can communicate with.

(第5実施形態)
第5実施形態では、複数のクライアント装置3からの要求に応じて、単一のコネクション6を用いて複数の通信データが転送される。図16は、第5実施形態における情報処理システム500の概要を示す図である。図16では、中継装置5及びグローバルネットワークN1の図示を省略する。第5実施形態の転送サーバ1は、第1のクライアント装置3及び第2のクライアント装置3それぞれと通信接続されている。
(Fifth Embodiment)
In the fifth embodiment, a plurality of communication data are transferred using a single connection 6 in response to a request from the plurality of client devices 3. FIG. 16 is a diagram showing an outline of the information processing system 500 according to the fifth embodiment. In FIG. 16, the relay device 5 and the global network N1 are not shown. The transfer server 1 of the fifth embodiment is communicatively connected to each of the first client device 3 and the second client device 3.

転送サーバ1は、第1のクライアント装置3及び第2のクライアント装置3それぞれから、受付ポートに対する通信を受信する。転送サーバ1の制御部10は、第1のクライアント装置3から受付ポートにアクセスされた場合、第1のクライアント装置3からのアクセスに応じてサーバ4の特定ポートを転送先とする転送要求をコネクション6を用いて転送クライアント2へ送信する。転送クライアント2からの応答に応じて、転送サーバ1の受付ポートとサーバ4の特定ポートとの間で通信トンネルが形成される。制御部10は、コネクション6を用いて形成された通信トンネルを通して、第1のクライアント装置3からの通信データを転送する。この場合において制御部10は、当該第1のクライアント装置3からの通信であることを示す情報を関連付けて、転送クライアント2へ通信データを転送する。転送クライアント2は、サーバ4の特定ポートへ通信データを転送する。サーバ4は、通信データを受信し、第1のクライアント装置3への通信であることを示す情報を関連付けて、転送クライアント2を介して転送サーバ1へHTTPSレスポンスを送信する。転送サーバ1は、HTTPSレスポンスに関連付けられた第1のクライアント装置3への通信であることを示す情報に基づき、当該HTTPSレスポンスを第1のクライアント装置3へ送信する。 The transfer server 1 receives communication to the reception port from each of the first client device 3 and the second client device 3. When the control unit 10 of the transfer server 1 accesses the reception port from the first client device 3, the control unit 10 connects a transfer request to the specific port of the server 4 as the transfer destination in response to the access from the first client device 3. 6 is used to transmit to the transfer client 2. A communication tunnel is formed between the reception port of the transfer server 1 and the specific port of the server 4 in response to the response from the transfer client 2. The control unit 10 transfers communication data from the first client device 3 through a communication tunnel formed by using the connection 6. In this case, the control unit 10 transfers the communication data to the transfer client 2 in association with the information indicating that the communication is from the first client device 3. The transfer client 2 transfers communication data to a specific port of the server 4. The server 4 receives the communication data, associates the information indicating that the communication is with the first client device 3, and transmits the HTTPS response to the transfer server 1 via the transfer client 2. The transfer server 1 transmits the HTTPS response to the first client device 3 based on the information indicating that the communication is to the first client device 3 associated with the HTTPS response.

転送サーバ1の制御部10は、第2のクライアント装置3から受付ポートにアクセスされた場合、同一の通信トンネルを通して通信データを転送する。この場合において、制御部10は、上記と同様に第2のクライアント装置3からの通信であることを示す情報を関連付けて、通信データを転送する。このように、宛先を示す情報を通信データにタグ付けすることで、1つの通信トンネルを通して複数の通信データを識別しながら転送することができる。本実施形態によれば、1つのコネクション及び通信トンネルを用いて、グローバルネットワーク側の異なる送信元からの複数の通信データを効率的にプライベートネットワーク内へ送信することができる。 When the control unit 10 of the transfer server 1 accesses the reception port from the second client device 3, the control unit 10 transfers communication data through the same communication tunnel. In this case, the control unit 10 transfers the communication data in association with the information indicating that the communication is from the second client device 3 as described above. In this way, by tagging the communication data with the information indicating the destination, it is possible to transfer the communication data while identifying the plurality of communication data through one communication tunnel. According to the present embodiment, a plurality of communication data from different sources on the global network side can be efficiently transmitted into the private network by using one connection and a communication tunnel.

(第6実施形態)
第6実施形態では、複数のクライアント装置3からの要求に応じて、プライベートネットワーク内の複数のサーバ4への通信データが転送される。図17は、第6実施形態における情報処理システム600の概要を示す図である。図17では、中継装置5及びグローバルネットワークN1の図示を省略する。第6実施形態の転送サーバ1は、第1のクライアント装置3及び第2のクライアント装置3それぞれと通信接続されている。転送クライアント2は、第1のサーバ4及び第2のサーバ4それぞれと通信接続されている。
(Sixth Embodiment)
In the sixth embodiment, communication data is transferred to a plurality of servers 4 in the private network in response to requests from the plurality of client devices 3. FIG. 17 is a diagram showing an outline of the information processing system 600 according to the sixth embodiment. In FIG. 17, the relay device 5 and the global network N1 are not shown. The transfer server 1 of the sixth embodiment is communicatively connected to each of the first client device 3 and the second client device 3. The transfer client 2 is in communication connection with each of the first server 4 and the second server 4.

転送サーバ1は、第1のクライアント装置3及び第2のクライアント装置3それぞれから、自装置の異なる受付ポートに対する通信データを受信する。転送サーバ1は、転送クライアント2との間で確立される単一のコネクション6を用いて、各通信に応じた転送要求をそれぞれ送信することにより、自装置の複数の受付ポートと、サーバ4の複数の特定ポートとの間でそれぞれ通信トンネルを形成する。転送サーバ1は、第1の通信トンネルを用いて、第1のクライアント装置3から第1のサーバ4の特定ポートに対する通信データを転送する。転送サーバ1は、第2の通信トンネルを用いて、第2のクライアント装置3から第2のサーバ4の特定ポートに対する通信データを転送する。 The transfer server 1 receives communication data from each of the first client device 3 and the second client device 3 to different reception ports of its own device. The transfer server 1 uses a single connection 6 established with the transfer client 2 to transmit a transfer request corresponding to each communication, thereby causing a plurality of reception ports of its own device and the server 4. Form a communication tunnel with each of a plurality of specific ports. The transfer server 1 transfers communication data from the first client device 3 to the specific port of the first server 4 by using the first communication tunnel. The transfer server 1 transfers communication data from the second client device 3 to the specific port of the second server 4 by using the second communication tunnel.

本実施形態によれば、転送サーバ1は、転送クライアント2に接続する複数のサーバ4に対する複数の通信データを、単一のコネクション6を用いて形成された複数の通信トンネルを用いて効率的に転送することができる。本実施形態において、転送サーバ1にサーバ4が接続され、転送クライアント2にクライアント装置3が接続されるものであってもよい。すなわち、グローバルネットワーク側とプライベートネットワーク側の双方にクライアント及びサーバがそれぞれ設置されるものであってもよい。 According to the present embodiment, the transfer server 1 efficiently transfers a plurality of communication data to a plurality of servers 4 connected to the transfer client 2 by using a plurality of communication tunnels formed by using a single connection 6. Can be transferred. In the present embodiment, the server 4 may be connected to the transfer server 1 and the client device 3 may be connected to the transfer client 2. That is, the client and the server may be installed on both the global network side and the private network side, respectively.

(第7実施形態)
第7実施形態では、サーバ4はプロキシサーバとして機能する。図18は、第7実施形態における情報処理システム700の概要を示す図である。図18では、中継装置5及びグローバルネットワークN1の図示を省略する。第7実施形態のサーバ4は、プライベートネットワークN2に接続される複数のウェブサーバと通信可能に接続されるよう構成されている。サーバ4は、各ウェブサーバへの通信を中継し各ウェブサーバに代理でアクセスするプロキシサーバである。クライアント装置3から送信される通信データは、転送サーバ1及び転送クライアント2を介してプロキシサーバ4の特定ポートへ転送される。通信データには、クライアント装置3のアクセス先であるウェブサーバのURLが含まれる。プロキシサーバ4は、受信した通信データに基づきアクセス先のウェブサーバを特定し、特定したウェブサーバへ通信データを送信する。なお、複数のウェブサーバはプライベートネットワークN2内に設けられるものに限定されない。各ウェブサーバは、プライベートネットワークN2を介して、グローバルネットワーク上に設けられてもよい。
(7th Embodiment)
In the seventh embodiment, the server 4 functions as a proxy server. FIG. 18 is a diagram showing an outline of the information processing system 700 according to the seventh embodiment. In FIG. 18, the relay device 5 and the global network N1 are not shown. The server 4 of the seventh embodiment is configured to be communicably connected to a plurality of web servers connected to the private network N2. The server 4 is a proxy server that relays communication to each web server and accesses each web server on behalf of the server 4. The communication data transmitted from the client device 3 is transferred to the specific port of the proxy server 4 via the transfer server 1 and the transfer client 2. The communication data includes the URL of the web server that is the access destination of the client device 3. The proxy server 4 identifies the access destination web server based on the received communication data, and transmits the communication data to the specified web server. The plurality of web servers are not limited to those provided in the private network N2. Each web server may be provided on the global network via the private network N2.

本実施形態によれば、クライアント装置3は、ブラウザ上で、プライベートネットワーク内のウェブサーバのURLを直接指定して通信することができる。クライアント装置3から送信される通信データは、通信トンネルを介してプロキシサーバ4へ転送される。プロキシサーバ4は、通信データに基づきURLで指定される各ウェブサーバへアクセスする。プライベートネットワーク内の各ウェブサーバに対し個別の通信トンネルを形成することなく、転送サーバ1とプロキシサーバ4との間に形成される1つの通信トンネルを用いて、プロキシサーバ4の先にある各ウェブサーバ4に対する複数の通信データを転送することができるため、効率的な通信が可能となる。 According to the present embodiment, the client device 3 can directly specify and communicate with the URL of the web server in the private network on the browser. The communication data transmitted from the client device 3 is transferred to the proxy server 4 via the communication tunnel. The proxy server 4 accesses each web server specified by the URL based on the communication data. Each web ahead of the proxy server 4 using one communication tunnel formed between the forwarding server 1 and the proxy server 4 without forming a separate communication tunnel for each web server in the private network. Since a plurality of communication data can be transferred to the server 4, efficient communication is possible.

第1実施形態から第7実施形態に示した例は、各実施形態に示した構成の全部又は一部を組み合わせて他の実施の形態を実現することが可能である。各実施形態に示したシーケンスは限定されるものではなく、各処理手順はその順序を変更して実行されてもよく、また並行して複数の処理が実行されてもよい。 In the examples shown in the first to seventh embodiments, it is possible to realize other embodiments by combining all or a part of the configurations shown in each embodiment. The sequence shown in each embodiment is not limited, and each processing procedure may be executed in a different order, or a plurality of processes may be executed in parallel.

今回開示された実施の形態は全ての点で例示であって、制限的なものではない。本発明の範囲は、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれる。 The embodiments disclosed this time are exemplary in all respects and are not restrictive. The scope of the present invention is indicated by the scope of claims and includes all modifications within the meaning and scope equivalent to the scope of claims.

1 転送サーバ(第1転送装置)
10 制御部
11 記憶部
12 通信部
1Pプログラム
111 転送情報DB
112 接続情報DB
2 転送クライアント(第2転送装置)
20 制御部
21 記憶部
2P プログラム
211 識別情報DB
212 可否情報DB
3 クライアント装置(第1通信装置)
4 サーバ(第2通信装置)
5 中継装置
6 コネクション
61 第1コネクション
62 第2コネクション
100,200,300,400,500,600,700 情報処理システム
1 Transfer server (first transfer device)
10 Control unit 11 Storage unit 12 Communication unit 1P program 111 Transfer information DB
112 Connection information DB
2 Transfer client (second transfer device)
20 Control unit 21 Storage unit 2P program 211 Identification information DB
212 Yes / No Information DB
3 Client device (first communication device)
4 Server (second communication device)
5 Relay device 6 Connection 61 1st connection 62 2nd connection 100,200,300,400,500,600,700 Information processing system

Claims (14)

グローバルネットワークに接続され、第1通信装置から受け付けた通信を転送する第1転送装置と、プライベートネットワークに接続される第2通信装置との通信を、前記プライベートネットワークに接続される第2転送装置を介して転送する情報処理方法であって、
前記第1転送装置は、
前記第2転送装置からコネクションの確立要求を取得し、
取得した前記コネクションの確立要求に応じて前記第1転送装置と前記第2転送装置との間のコネクションを確立し、
確立された前記コネクションを用いて、前記第2通信装置の特定ポートを転送先として指定するための転送先情報と、前記第1通信装置からの通信を受け付ける前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとのマッピングにより前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する通信トンネルを形成するための通信トンネル要求と、を含む転送要求を前記第2転送装置へ送信し、
送信した前記転送要求に応じて前記第2転送装置から送信される応答を受信することにより、前記第1転送装置の受付ポートと前記転送先情報にて指定される前記第2通信装置の特定ポートとをマッピングする前記通信トンネルを形成し、
形成した前記通信トンネルを通じて、前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送することにより、前記第1通信装置は、前記通信トンネルにより前記第2通信装置の特定ポートとマッピングされている前記第1転送装置の受付ポートにアクセスすることにより前記第1転送装置及び前記第2転送装置を介して前記第2通信装置の特定ポートにアクセスする
情報処理方法。
A second transfer device connected to the private network for communication between the first transfer device connected to the global network and transferring the communication received from the first communication device and the second communication device connected to the private network. It is an information processing method that is transferred via
The first transfer device is
Obtaining a connection establishment request from the second transfer device,
A connection between the first transfer device and the second transfer device is established in response to the acquired connection establishment request.
Using the established connection, transfer destination information for designating a specific port of the second communication device as a transfer destination, a reception port of the first transfer device that receives communication from the first communication device, and the above. A transfer request including a communication tunnel request for forming a communication tunnel for transferring communication between the reception port of the first transfer device and the specific port of the second communication device by mapping with a specific port of the second communication device. Is transmitted to the second transfer device,
By receiving the response transmitted from the second transfer device in response to the transmitted transfer request, the reception port of the first transfer device and the specific port of the second communication device specified by the transfer destination information. Form the communication tunnel that maps to
By transferring the communication between the reception port of the first transfer device and the specific port of the second communication device through the formed communication tunnel, the first communication device can be connected to the second communication device by the communication tunnel. By accessing the reception port of the first transfer device mapped to the specific port, the specific port of the second communication device is accessed via the first transfer device and the second transfer device.
Information processing method.
前記第2転送装置は、前記第2通信装置を識別するための識別情報を記憶しており、
前記第1転送装置は、前記第2通信装置を識別するための前記識別情報と、前記第2通信装置の特定ポートを含む前記第2通信装置の特定ポートを転送先として指定するための転送先情報と、前記通信トンネルにより前記第2通信装置の特定ポートとマッピングされる前記第1転送装置の受付ポートとを関連付けて記憶しており、
前記第1転送装置は、前記第2転送装置から前記コネクションの確立要求と前記第2通信装置を識別するための前記識別情報とを関連付けて取得し、
取得した前記識別情報に関連付けられる前記転送先情報の前記第2通信装置の特定ポートと、前記第1転送装置の受付ポートとに基づき、前記通信トンネル要求を含む前記第2通信装置の特定ポートを転送先として指定する前記転送要求を前記第2転送装置へ送信し、
前記通信トンネルを確立する際前記第1転送装置の受付ポートを開放する
請求項1に記載の情報処理方法。
The second transfer device stores identification information for identifying the second communication device.
The first transfer device is a transfer destination for designating the identification information for identifying the second communication device and the specific port of the second communication device including the specific port of the second communication device as a transfer destination. The information is stored in association with the reception port of the first transfer device that is mapped to the specific port of the second communication device by the communication tunnel .
The first transfer device obtains the connection establishment request from the second transfer device in association with the identification information for identifying the second communication device.
Based on the specific port of the second communication device of the transfer destination information associated with the acquired identification information and the reception port of the first transfer device, the specific port of the second communication device including the communication tunnel request is assigned . The transfer request designated as the transfer destination is transmitted to the second transfer device, and the transfer request is transmitted.
When establishing the communication tunnel, the reception port of the first transfer device is opened.
The information processing method according to claim 1.
前記識別情報は、前記第2通信装置のサービス毎に異なる識別キーを含む
請求項2に記載の情報処理方法。
The information processing method according to claim 2 , wherein the identification information includes an identification key different for each service of the second communication device .
前記転送先情報は、前記第2通信装置を指定するためのIPアドレス又はホスト名と、
前記第2通信装置におけるサービスを指定するためのポート番号又はプロトコルとを含み、
前記転送先情報に基づき、転送先の前記第2通信装置及び前記第2通信装置におけるサービスを指定する前記転送要求を前記第2転送装置へ送信する
請求項2又は請求項3に記載の情報処理方法。
The transfer destination information includes an IP address or a host name for designating the second communication device, and the transfer destination information.
Includes a port number or protocol for designating a service in the second communication device.
The information processing according to claim 2 or 3 , wherein the transfer request for designating the service in the second communication device and the second communication device of the transfer destination is transmitted to the second transfer device based on the transfer destination information. Method.
前記転送先として指定される前記第2通信装置又は前記第2通信装置における特定ポートへの転送可否を判定するための可否情報を記憶し、
記憶した前記可否情報による判定結果に基づき、前記転送要求に対する許可応答を出力し、
出力した前記許可応答に応じて前記通信トンネルを形成する
請求項1から請求項のいずれか1項に記載の情報処理方法。
Stores availability information for determining whether transfer to a specific port in the second communication device or the second communication device designated as the transfer destination.
Based on the judgment result based on the stored possibility information, the permission response to the transfer request is output.
The information processing method according to any one of claims 1 to 4 , wherein the communication tunnel is formed according to the output permission response.
前記第1転送装置は、複数の前記第1通信装置と通信可能に接続され、
複数の前記第1通信装置から前記受付ポートに対する通信をそれぞれ受け付け、
単一の前記通信トンネルを通じて、複数の前記第1通信装置から受け付けた通信をそれぞれ転送する
請求項1から請求項のいずれか1項に記載の情報処理方法。
The first transfer device is communicably connected to a plurality of the first communication devices.
Accepting communication from a plurality of the first communication devices to the reception port, respectively,
The information processing method according to any one of claims 1 to 5 , wherein the communication received from the plurality of first communication devices is transferred through the single communication tunnel.
前記第1転送装置は、複数の前記第1通信装置と通信可能に接続され、
複数の前記第1通信装置から前記受付ポートに対する通信をそれぞれ受け付け、
受け付けた複数の前記第1通信装置から前記受付ポートに対する通信それぞれに応じて、単一の前記コネクションを用いて複数の前記転送要求を前記第2転送装置へ送信し、
複数の前記転送要求に応じてそれぞれ形成される各通信トンネルを通じて、前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信をそれぞれ転送する
請求項1から請求項のいずれか1項に記載の情報処理方法。
The first transfer device is communicably connected to a plurality of the first communication devices.
Accepting communication from a plurality of the first communication devices to the reception port, respectively,
In response to each communication from the plurality of received first communication devices to the reception port, the plurality of transfer requests are transmitted to the second transfer device using the single connection.
Any of claims 1 to 6 , respectively, for transferring communication between the reception port of the first transfer device and the specific port of the second communication device through each communication tunnel formed in response to the plurality of transfer requests. The information processing method according to item 1.
前記コネクションは第1コネクション及び第2コネクションを含み、
前記第1コネクションは、前記転送要求を送信する前記第1転送装置と前記第2転送装置との間で確立され、
前記第2コネクションは、前記通信トンネルを形成する前記第1転送装置と前記第2転送装置との間で確立され、
前記第1コネクションを用いて前記転送要求を送信する前記第1転送装置から前記第2転送装置へ前記転送要求を送信し、
前記第2コネクションを用いて、前記通信トンネルを形成する前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する前記通信トンネルを形成する
請求項1から請求項のいずれか1項に記載の情報処理方法。
The connection includes a first connection and a second connection.
The first connection is established between the first transfer device and the second transfer device for transmitting the transfer request.
The second connection is established between the first transfer device and the second transfer device forming the communication tunnel.
The transfer request is transmitted from the first transfer device that transmits the transfer request to the second transfer device using the first connection.
Claims 1 to 7 form the communication tunnel for transferring communication between the reception port of the first transfer device forming the communication tunnel and the specific port of the second communication device using the second connection. The information processing method according to any one of the above.
前記第1転送装置はブラウザを備える前記第1通信装置と通信可能に接続され、
前記第2通信装置はウェブサーバと通信可能に接続されるプロキシサーバであって、
前記第1転送装置は、前記ウェブサーバにアクセスする前記ブラウザの通信を受信し、
前記通信トンネルを通じて前記ブラウザの通信を前記プロキシサーバに転送し、前記プロキシサーバを介して前記ウェブサーバにアクセスする
請求項1から請求項のいずれか1項に記載の情報処理方法。
The first transfer device is communicably connected to the first communication device including a browser.
The second communication device is a proxy server that is communicably connected to the web server.
The first transfer device receives the communication of the browser that accesses the web server, and receives the communication.
The information processing method according to any one of claims 1 to 8 , wherein the communication of the browser is transferred to the proxy server through the communication tunnel, and the web server is accessed via the proxy server.
前記コネクションは、Websocketによるものである
請求項1から請求項のいずれか1項に記載の情報処理方法。
The information processing method according to any one of claims 1 to 9 , wherein the connection is based on Websocket.
複数の前記第1転送装置と複数の前記第2転送装置との間で複数の前記コネクションがそれぞれ確立され、
各コネクションを確立する前記第1転送装置と前記第2転送装置とを対応付けて記憶する接続情報を複数の前記第1転送装置間で共有し、
複数の前記第1転送装置の内いずれか1つの第1転送装置が、複数の前記第2転送装置の内いずれか1つの第2転送装置に接続される前記第2通信装置の特定ポートを宛先とする接続要求を前記第1通信装置から受け付け、
受け付けた前記接続要求に基づき、前記接続情報を参照して前記接続要求に係る第2通信装置と接続される前記いずれか1つの第2転送装置とコネクションを確立する他の第1転送装置を特定し、
特定した前記他の第1転送装置へ前記第1通信装置をリダイレクトする
請求項1から請求項10のいずれか1項に記載の情報処理方法。
A plurality of the above connections are established between the plurality of the first transfer devices and the plurality of the second transfer devices, respectively.
The connection information stored in association with the first transfer device and the second transfer device for establishing each connection is shared among the plurality of first transfer devices.
The first transfer device of any one of the plurality of first transfer devices is destined for a specific port of the second communication device connected to the second transfer device of any one of the plurality of second transfer devices. The connection request is received from the first communication device.
Based on the received connection request, the other first transfer device that establishes a connection with any one of the second transfer devices connected to the second communication device related to the connection request is specified by referring to the connection information. death,
The information processing method according to any one of claims 1 to 10 , wherein the first communication device is redirected to the specified other first transfer device.
前記第2通信装置は、ネットワークストレージ又はウェブカメラである
請求項1から請求項11のいずれか1項に記載の情報処理方法。
The information processing method according to any one of claims 1 to 11 , wherein the second communication device is a network storage or a webcam.
グローバルネットワークに接続され、第1通信装置から受け付けた通信を転送する第1転送装置と、プライベートネットワークに接続される第2転送装置とを含み、前記第1転送装置と前記プライベートネットワークに接続される第2通信装置との通信を、前記第2転送装置を介して転送する情報処理システムであって、
前記第1転送装置は、
前記第2転送装置からコネクションの確立要求を取得する取得部と、
前記取得部が取得した前記コネクションの確立要求に応じて前記第1転送装置と前記第2転送装置との間のコネクションを確立する確立部と、
前記確立部が確立した前記コネクションを用いて、前記第2通信装置の特定ポートを転送先として指定するための転送先情報と、前記第1通信装置からの通信を受け付ける前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとのマッピングにより前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する通信トンネルを形成するための通信トンネル要求と、を含む転送要求を前記第2転送装置へ送信する送信部と、
前記送信部が送信した前記転送要求に応じて前記第2転送装置から送信される応答を受信することにより、前記第1転送装置の受付ポートと前記転送先情報にて指定される前記第2通信装置の特定ポートとをマッピングする前記通信トンネルを形成する形成部と、
前記形成部が形成した前記通信トンネルを通じて、前記第1転送装置の受付ポートと前記第2通信装置の特定ポートとの通信を転送する転送部とを備え、前記第1通信装置は、前記通信トンネルにより前記第2通信装置の特定ポートとマッピングされている前記第1転送装置の受付ポートにアクセスすることにより前記第1転送装置及び前記第2転送装置を介して前記第2通信装置の特定ポートにアクセスする
情報処理システム。
It includes a first transfer device connected to the global network and transferring the communication received from the first communication device, and a second transfer device connected to the private network, and is connected to the first transfer device and the private network. An information processing system that transfers communication with a second communication device via the second transfer device.
The first transfer device is
An acquisition unit that acquires a connection establishment request from the second transfer device, and
An establishment unit that establishes a connection between the first transfer device and the second transfer device in response to the connection establishment request acquired by the acquisition unit.
Using the connection established by the establishment unit, transfer destination information for designating a specific port of the second communication device as a transfer destination, and reception of the first transfer device that receives communication from the first communication device. A communication tunnel request for forming a communication tunnel for transferring communication between the reception port of the first transfer device and the specific port of the second communication device by mapping the port and the specific port of the second communication device. A transmission unit that transmits a transfer request including the transfer request to the second transfer device, and a transmission unit.
By receiving the response transmitted from the second transfer device in response to the transfer request transmitted by the transmission unit, the reception port of the first transfer device and the second communication designated by the transfer destination information. A forming unit forming the communication tunnel that maps to a specific port of the device,
The first communication device includes a transfer unit that transfers communication between a reception port of the first transfer device and a specific port of the second communication device through the communication tunnel formed by the formation unit, and the first communication device is the communication tunnel. By accessing the reception port of the first transfer device that is mapped to the specific port of the second communication device, the specific port of the second communication device is reached via the first transfer device and the second transfer device. to access
Information processing system.
グローバルネットワークに接続されるコンピュータに、
プライベートネットワークに接続される転送装置からコネクションの確立要求を取得し、
取得した前記コネクションの確立要求に応じて前記コンピュータと前記転送装置との間のコネクションを確立し、
確立した前記コネクションを用いて、前記プライベートネットワークに接続される第2通信装置の特定ポートを転送先として指定するための転送先情報と、第1通信装置からの通信を受け付ける前記コンピュータの受付ポートと前記第2通信装置の特定ポートとのマッピングにより前記コンピュータの受付ポートと前記第2通信装置の特定ポートとの通信を転送する通信トンネルを形成するための通信トンネル要求と、を含む転送要求を前記転送装置へ送信し、
送信した前記転送要求に応じて前記転送装置から送信される応答を受信することにより、前記コンピュータの受付ポートと前記転送先情報にて指定される前記第2通信装置の特定ポートとをマッピングする前記通信トンネルを形成し、
形成した前記通信トンネルを通じて、前記コンピュータの受付ポートと前記第2通信装置の特定ポートとの通信を転送することにより、前記第1通信装置は、前記通信トンネルにより前記第2通信装置の特定ポートとマッピングされている前記コンピュータの受付ポートにアクセスすることにより前記コンピュータ及び前記転送装置を介して前記第2通信装置の特定ポートにアクセスする
処理を実行させるためのコンピュータプログラム。
For computers connected to the global network
Obtain a connection establishment request from a transfer device connected to a private network and
In response to the acquired connection establishment request, a connection between the computer and the transfer device is established, and the connection is established.
Using the established connection, transfer destination information for designating a specific port of the second communication device connected to the private network as a transfer destination, and a reception port of the computer that accepts communication from the first communication device. The transfer request including a communication tunnel request for forming a communication tunnel for transferring communication between the reception port of the computer and the specific port of the second communication device by mapping with the specific port of the second communication device. Send to the transfer device,
By receiving the response transmitted from the transfer device in response to the transmitted transfer request, the reception port of the computer and the specific port of the second communication device specified by the transfer destination information are mapped. Form a communication tunnel,
By transferring the communication between the reception port of the computer and the specific port of the second communication device through the formed communication tunnel, the first communication device becomes the specific port of the second communication device by the communication tunnel. By accessing the reception port of the mapped computer, the specific port of the second communication device is accessed via the computer and the transfer device.
A computer program to execute processing.
JP2020181480A 2020-10-29 2020-10-29 Information processing methods, information processing systems and computer programs Active JP7011271B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020181480A JP7011271B1 (en) 2020-10-29 2020-10-29 Information processing methods, information processing systems and computer programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020181480A JP7011271B1 (en) 2020-10-29 2020-10-29 Information processing methods, information processing systems and computer programs

Publications (2)

Publication Number Publication Date
JP7011271B1 true JP7011271B1 (en) 2022-01-26
JP2022072173A JP2022072173A (en) 2022-05-17

Family

ID=80678894

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020181480A Active JP7011271B1 (en) 2020-10-29 2020-10-29 Information processing methods, information processing systems and computer programs

Country Status (1)

Country Link
JP (1) JP7011271B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009010606A (en) 2007-06-27 2009-01-15 Panasonic Corp Tunnel connection system, tunnel control server, tunnel connecting device, and tunnel connection method
WO2009093308A1 (en) 2008-01-22 2009-07-30 Ntt Pc Communications, Inc. Connection control method, connection control server device, connection control client device, and program
JP2015231225A (en) 2014-06-06 2015-12-21 エヌ・ティ・ティ・コミュニケーションズ株式会社 Tunnel connection device, tunnel termination device, connection control method, and program
WO2017150642A1 (en) 2016-03-02 2017-09-08 日本電気株式会社 Network system, control device, method and program for building virtual network function

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009010606A (en) 2007-06-27 2009-01-15 Panasonic Corp Tunnel connection system, tunnel control server, tunnel connecting device, and tunnel connection method
WO2009093308A1 (en) 2008-01-22 2009-07-30 Ntt Pc Communications, Inc. Connection control method, connection control server device, connection control client device, and program
JP2015231225A (en) 2014-06-06 2015-12-21 エヌ・ティ・ティ・コミュニケーションズ株式会社 Tunnel connection device, tunnel termination device, connection control method, and program
WO2017150642A1 (en) 2016-03-02 2017-09-08 日本電気株式会社 Network system, control device, method and program for building virtual network function

Also Published As

Publication number Publication date
JP2022072173A (en) 2022-05-17

Similar Documents

Publication Publication Date Title
US9690839B2 (en) Computer architectures using shared storage
US8886714B2 (en) Remote access service for cloud-enabled network devices
US9986033B2 (en) Facilitating access to remote cloud services
US8346966B1 (en) Transparent file system access for wide area network file system acceleration
CN103597471A (en) Methods and systems for caching data communications over computer networks
TW201227335A (en) Third party initiation of communications between remote parties
CN103973785B (en) A kind of log read system and method based on P2P
US20150063161A1 (en) Relay device, communication system, and method of acquiring node setting information
JP5122587B2 (en) Connection control method, connection control server device, connection control client device, connection control system, and program
US8255550B1 (en) Multi-protocol global namespace mechanism for network attached storage
KR100875964B1 (en) Network storage systems
US10735514B2 (en) Remote application configuration on network-attached storage
US20130054691A1 (en) Flexible rule based multi-protocol peer-to-peer caching
JP7011271B1 (en) Information processing methods, information processing systems and computer programs
CN110430478B (en) Networking communication method, device, terminal equipment and storage medium
CN111092958A (en) Node access method, device, system and storage medium
JP2017215745A (en) Data processor, data processing method and program
US20080301305A1 (en) Method and related system for building up a network connection between clients and servers through a stream fork by utilizing http protocol
JP6605149B2 (en) Method and apparatus for detecting shared terminal
JPH1155327A (en) Connection control server for substitute server and substitute server and network control method
RU2656739C1 (en) Data storage method and system
US20080301215A1 (en) NAT (Network Address Translation) traversal methods and systems
JP6225283B1 (en) Closed network connection device, program, and method
EP2372978B1 (en) Computer architectures using shared storage
JP7015498B2 (en) Communication system, information providing device, program and information providing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201029

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20201029

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210322

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210910

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20210910

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20211015

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20211019

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220105

R150 Certificate of patent or registration of utility model

Ref document number: 7011271

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150