JP4492575B2 - Relay device and communication system - Google Patents

Relay device and communication system Download PDF

Info

Publication number
JP4492575B2
JP4492575B2 JP2006090690A JP2006090690A JP4492575B2 JP 4492575 B2 JP4492575 B2 JP 4492575B2 JP 2006090690 A JP2006090690 A JP 2006090690A JP 2006090690 A JP2006090690 A JP 2006090690A JP 4492575 B2 JP4492575 B2 JP 4492575B2
Authority
JP
Japan
Prior art keywords
relay
communication
relay device
connection
communication device
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
JP2006090690A
Other languages
Japanese (ja)
Other versions
JP2007267136A (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.)
Murata Machinery Ltd
Original Assignee
Murata Machinery 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 Murata Machinery Ltd filed Critical Murata Machinery Ltd
Priority to JP2006090690A priority Critical patent/JP4492575B2/en
Priority to US11/723,466 priority patent/US20070233844A1/en
Priority to CN2007100890200A priority patent/CN101047603B/en
Publication of JP2007267136A publication Critical patent/JP2007267136A/en
Application granted granted Critical
Publication of JP4492575B2 publication Critical patent/JP4492575B2/en
Priority to US13/341,711 priority patent/US8499083B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、通信装置間で送受信されるデータを中継する技術に関する。   The present invention relates to a technique for relaying data transmitted and received between communication devices.

VPN(Virtual Private Network)、トンネリングなどの技術を用いることで、プライベートネットワーク内に配置された端末から送信されたデータを、インターネットを経由して他のプライベートネットワーク内の端末へ中継することが可能である。たとえば、本社のLANと支社のLANとをVPNで接続することにより、LANに接続された端末間のデータをインターネット経由で中継することが可能である。   By using technologies such as VPN (Virtual Private Network) and tunneling, it is possible to relay data transmitted from terminals arranged in the private network to terminals in other private networks via the Internet. is there. For example, it is possible to relay data between terminals connected to the LAN via the Internet by connecting the LAN of the head office and the LAN of the branch office via VPN.

下記特許文献1においても、インターネットを介して接続されたローカルシステム間でデータを中継するための技術が開示されている。この技術は、ローカルシステム内に配置された各端末からインターネット上の中継サーバにアクセスしてTCPコネクションを確立し、そのTCPコネクションを利用してローカルシステム間でデータの送受信を行うものである。   Also in the following Patent Document 1, a technique for relaying data between local systems connected via the Internet is disclosed. In this technology, a TCP connection is established by accessing a relay server on the Internet from each terminal arranged in the local system, and data is transmitted and received between the local systems using the TCP connection.

特開2002−217943号公報Japanese Patent Laid-Open No. 2002-217743

VPN、トンネリングの技術を用いることで、インターネットを介して接続されたLAN間でデータを送受信することが可能である。しかし、これらの技術は固定的な設定により構築されるシステムである。つまり、それぞれのLANとインターネットの間に設置される中継装置において固定的にLAN同士の接続設定を行うものである。したがって、たとえば、会社の本社と支社のように恒常的にVPNを維持したい場合であれば問題はないが、動的に異なるプライベートなネットワークとの接続を試みたいようなケースには対応することができない。   By using VPN and tunneling technologies, data can be transmitted and received between LANs connected via the Internet. However, these technologies are systems constructed with fixed settings. That is, a connection setting between LANs is fixedly performed in a relay device installed between each LAN and the Internet. Therefore, for example, there is no problem if you want to maintain a VPN constantly, such as a company headquarters and branch offices, but you cannot handle the case where you want to try to connect to a different private network dynamically. .

そこで、本発明は前記問題点に鑑み、インターネットを介して接続されたネットワーク間のデータの中継を動的に設定可能なシステムを提供することを目的とする。   In view of the above problems, an object of the present invention is to provide a system capable of dynamically setting data relay between networks connected via the Internet.

上記課題を解決するため、請求項1記載の発明は、第1通信装置と通信可能な中継装置であって、第1通信装置から送信されたデータを他の中継装置に中継する中継手段と、サーバ装置に前記他の中継装置の状態を問い合わせ、前記他の中継装置が接続を受け入れる状態にある場合には、前記他の中継装置に対して接続要求を行い、前記他の中継装置との間で動的に中継用コネクションを確立して保持する保持手段と、中継用コネクションが確立されたときに、前記中継装置が属するLANに接続された通信装置の装置名のリストを前記他の中継装置に送信し、前記他の中継装置が属するLANに接続された通信装置の装置名のリストを前記他の中継装置から受信することで、装置名のリストを交換する手段と、
第2通信装置は前記他の中継装置が属するLANに接続されており、交換したリストにおいて前記他の中継装置と対応づけられている前記第2通信装置の装置名を宛先として指定したデータ送信要求を前記第1通信装置から受信する手段と、を備え、前記第1通信装置から送信されたデータを前記他の中継装置に中継することで、さらに当該データが前記第2通信装置に中継されることを特徴とする。
In order to solve the above problem, the invention described in claim 1 is a relay device capable of communicating with the first communication device, wherein the relay unit relays the data transmitted from the first communication device to another relay device; The server device is inquired about the status of the other relay device, and when the other relay device is in a state of accepting the connection, a connection request is made to the other relay device and the connection with the other relay device is made. Holding means for dynamically establishing and holding a relay connection in the network, and when the relay connection is established, a list of device names of communication devices connected to the LAN to which the relay device belongs is added to the other relay device. Means for exchanging the list of device names by receiving from the other relay device a list of device names of communication devices connected to the LAN to which the other relay device belongs ,
The second communication device is connected to the LAN to which the other relay device belongs, and a data transmission request specifying the device name of the second communication device associated with the other relay device in the exchanged list as the destination the and means for receiving from the first communication device, before SL by the data transmitted from the first communication device relays to the other relay device, further the data is relayed to the second communication device It is characterized by that.

請求項2記載の発明は、請求項1に記載の中継装置において、前記保持手段は、複数の中継装置との間で中継用コネクションを接続して保持する手段、を含み、前記中継手段は、複数の中継用コネクションを利用して複数の中継装置に対してデータを中継する手段、を含むことを特徴とする。   According to a second aspect of the present invention, in the relay device according to the first aspect, the holding unit includes a unit that connects and holds a relay connection with a plurality of relay devices, and the relay unit includes: Means for relaying data to a plurality of relay devices using a plurality of relay connections.

請求項3記載の発明は、請求項2に記載の中継装置において、前記保持手段は、複数の中継装置との間で保持している中継用コネクションを個別に切断する手段、を含むことを特徴とする。
請求項4記載の発明は、請求項1に記載の中継装置において、前記保持手段は、通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、を含むことを特徴とする。
請求項5記載の発明は、請求項1に記載の中継装置において、前記保持手段は、通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、を含み、通信装置から特定の中継装置に対する中継用コネクションの接続指定を受けたとき、既に、前記特定の中継装置との間で中継用コネクションが保持されている場合には、既に形成されている中継用コネクションを共用することを特徴とする。
According to a third aspect of the present invention, in the relay apparatus according to the second aspect, the holding means includes means for individually disconnecting a relay connection held between a plurality of relay apparatuses. And
According to a fourth aspect of the present invention, in the relay apparatus according to the first aspect, the holding means includes means for connecting and holding a relay connection with another relay apparatus according to designation from the communication apparatus. It is characterized by that.
According to a fifth aspect of the present invention, in the relay apparatus according to the first aspect, the holding means includes means for connecting and holding a relay connection with another relay apparatus in accordance with designation from the communication apparatus. When the connection specification of the relay connection to the specific relay device is received from the communication device, if the relay connection is already held with the specific relay device, the relay connection already formed The connection is shared.

請求項6記載の発明は、端末間のデータを中継する通信システムであって、第1通信装置と通信可能な第1中継装置と、サーバ装置と、第2通信装置と通信可能な第2中継装置と、を備え、前記第1中継装置は、サーバ装置に前記第2中継装置の状態を問い合わせ、前記第2中継装置が接続を受け入れる状態にある場合には、前記第2中継装置に対して接続要求を行い、前記第2中継装置との間で動的に中継用コネクションを確立して保持する保持手段と、中継用コネクションが確立されたときに、前記第1中継装置が属するLANに接続された通信装置の装置名のリストを前記第2中継装置に送信し、前記第2中継装置が属するLANに接続された通信装置の装置名のリストを前記第2中継装置から受信することで、装置名のリストを交換する手段と、前記第2通信装置は前記第2中継装置が属するLANに接続されており、交換したリストにおいて前記第2中継装置と対応づけられている前記第2通信装置の装置名を宛先として指定したデータ送信要求を前記第1通信装置から受信する手段と、を備え、前記第1中継装置が前記第1通信装置から送信されたデータを前記第2中継装置に中継送信することで、前記第2中継装置がさらにデータを前記第2通信装置に中継送信することを特徴とする。 The invention according to claim 6 is a communication system for relaying data between terminals, and is a first relay device capable of communicating with the first communication device, a server device, and a second relay capable of communicating with the second communication device. And the first relay device inquires of the server device about the state of the second relay device, and when the second relay device is in a state of accepting connection, the first relay device A holding unit that makes a connection request and dynamically establishes and holds a relay connection with the second relay device, and connects to the LAN to which the first relay device belongs when the relay connection is established A list of communication device names sent to the second relay device, and a list of device names of communication devices connected to the LAN to which the second relay device belongs is received from the second relay device, exchange a list of the device name Means that, the second communication device is connected to the LAN to the second relay device belongs, the device name of the second communication device is associated with the second relay device in the list has been replaced as the destination and means for receiving the specified data transmission request from the first communication device, a pre-SL by the first relay apparatus relays the data transmitted from the first communication device to the second relay device, The second relay device further relays and transmits data to the second communication device.

請求項記載の発明は、請求項に記載の通信システムにおいて、前記第1通信装置と前記第2通信装置は、それぞれ異なるプライベートネットワークの中に配置されており、外部のネットワークからは前記第1通信装置および前記第2通信装置に対してTCPコネクションの接続要求が行なえないネットワーク構成となっていることを特徴とする。
請求項8記載の発明は、請求項6に記載の通信システムにおいて、前記保持手段は、通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、を含むことを特徴とする。
請求項9記載の発明は、請求項6に記載の通信システムにおいて、前記保持手段は、通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、を含み、通信装置からの要求に対して既に該当する中継装置間で中継用コネクションが形成されている場合は、他の通信装置もそのコネクションを共用することを特徴とする。
A seventh aspect of the present invention is the communication system according to the sixth aspect , wherein the first communication device and the second communication device are arranged in different private networks, respectively, and the first communication device and the second communication device are arranged from the external network. The network configuration is such that a connection request for a TCP connection cannot be made to one communication device and the second communication device.
According to an eighth aspect of the present invention, in the communication system according to the sixth aspect, the holding means includes means for connecting and holding a relay connection with another relay apparatus according to designation from the communication apparatus. It is characterized by that.
A ninth aspect of the invention is the communication system according to the sixth aspect, wherein the holding means includes means for connecting and holding a relay connection with another relay apparatus according to designation from the communication apparatus. When a relay connection is already formed between the relay devices corresponding to the request from the communication device, the other communication devices also share the connection.

本発明の中継装置は、サーバ装置に対して他の中継装置の状態を問い合わせ、他の中継装置が接続を受け入れる状態にある場合には接続要求を行い、他の中継装置との間で中継用のコネクションを確立して保持する。したがって、この中継装置と通信可能な通信装置は、他の中継装置と通信可能な通信装置との間でパブリックなネットワークを経由した通信を行うことができる。   The relay device of the present invention inquires of the server device about the status of another relay device, makes a connection request when the other relay device is in a state of accepting connection, and is used for relaying with another relay device Establish and maintain a connection. Therefore, a communication device that can communicate with the relay device can perform communication via a public network with a communication device that can communicate with another relay device.

また、本発明の中継装置は、複数の中継装置との間で中継用コネクションを接続して保持することができる。したがって、通信したい通信装置が異なるネットワークに属している場合には、個別に複数のコネクションを生成することが可能である。   In addition, the relay apparatus of the present invention can connect and hold a relay connection with a plurality of relay apparatuses. Therefore, when the communication device that wants to communicate belongs to different networks, it is possible to individually generate a plurality of connections.

また、本発明の中継装置は、複数の中継装置との間で保持している中継用コネクションを個別に切断することが可能である。したがって、通信する必要のあるコネクションだけを維持することが可能であり、リソースを有効利用できる。   Further, the relay device of the present invention can individually disconnect relay connections held between a plurality of relay devices. Therefore, it is possible to maintain only the connections that need to be communicated, and resources can be used effectively.

{第1の実施の形態}
以下、図面を参照しつつ本発明の実施の形態について説明する。図1は、第1の実施の形態に係る通信システムの構成図である。この通信システムは、2つのLAN10,20がWAN30を介して接続されている。LAN10,20は、たとえば会社の社内LANであり、WAN30は、たとえばインターネットなどのパブリックなネットワークである。つまり、プライベートな2つの異なるLAN10,20がインターネットなどのパブリックなネットワークを介して接続されている。
{First embodiment}
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a configuration diagram of a communication system according to the first embodiment. In this communication system, two LANs 10 and 20 are connected via a WAN 30. The LANs 10 and 20 are, for example, corporate LANs, and the WAN 30 is a public network such as the Internet. That is, two different private LANs 10 and 20 are connected via a public network such as the Internet.

図に示すように、LAN10には2つの通信装置11、12および中継装置15が接続されている。そして、LAN10はゲートウェイ16を介してWAN30に接続されている。LAN20には2つの通信装置21、22および中継装置25が接続されている。そして、LAN20はゲートウェイ26を介してWAN30に接続されている。   As shown in the figure, two communication devices 11 and 12 and a relay device 15 are connected to the LAN 10. The LAN 10 is connected to the WAN 30 via the gateway 16. Two communication devices 21 and 22 and a relay device 25 are connected to the LAN 20. The LAN 20 is connected to the WAN 30 via the gateway 26.

通信装置11,12はパーソナルコンピュータなどの端末であり、ネットワーク機能を備えている。具体的には、TCP/IPが実装されており、TCP/IPを利用してLAN10に接続された中継装置15や他のコンピュータと通信可能となっている。同様に通信装置21,22もTCP/IPが実装されており、TCP/IPを利用してLAN20に接続された中継装置25や他のコンピュータと通信可能となっている。また、中継装置15,25やゲートウェイ16,26についてもTCP/IPを利用した通信が可能となっている。   The communication devices 11 and 12 are terminals such as personal computers and have a network function. Specifically, TCP / IP is implemented, and communication with the relay device 15 and other computers connected to the LAN 10 using TCP / IP is possible. Similarly, the communication devices 21 and 22 are also mounted with TCP / IP, and can communicate with the relay device 25 and other computers connected to the LAN 20 using TCP / IP. Further, the relay apparatuses 15 and 25 and the gateways 16 and 26 can also communicate using TCP / IP.

WAN30には、サーバ装置35が接続されている。WAN30は上述したようにインターネットなどのパブリックなネットワークである。したがって、LAN10,20やWAN30に接続されている端末は、サーバ装置35のグローバルIPアドレスを指定することで、TCPコネクションを確立することが可能である。   A server device 35 is connected to the WAN 30. The WAN 30 is a public network such as the Internet as described above. Therefore, a terminal connected to the LAN 10, 20 or WAN 30 can establish a TCP connection by specifying the global IP address of the server device 35.

これに対して、LAN10,20に接続されている通信装置11,12,21,22および中継装置15,25は、プライベートなIPアドレスが付与されている。そして、ゲートウェイ16,26はファイアーウォールを形成しており、外部のネットワークから直接内部の端末を指定した接続が行えないようになっている。したがって、WAN30に接続さている端末などは中継装置15,25に対してTCPコネクションの接続要求を行うことが制限されている。本実施の形態においては、後述するようにサーバ装置35はSIPサーバ(SIPのプロキシサーバ、登録サーバ)として機能するため、サーバ装置35から中継装置15,25に対する特定のポートを指定した通信が可能なようにゲートウェイ16,26の設定が行われている。   On the other hand, the communication devices 11, 12, 21, and 22 and the relay devices 15 and 25 connected to the LANs 10 and 20 are assigned private IP addresses. The gateways 16 and 26 form a firewall so that a connection in which an internal terminal is designated directly from an external network cannot be performed. Therefore, a terminal connected to the WAN 30 is restricted from making a TCP connection connection request to the relay apparatuses 15 and 25. In the present embodiment, as will be described later, since the server device 35 functions as a SIP server (SIP proxy server, registration server), the server device 35 can communicate with a specific port for the relay devices 15 and 25. As described above, the gateways 16 and 26 are set.

表1は、サーバ装置35が管理している中継装置データベース351の登録例を示す表である。この例では、3つの中継装置A〜Cが登録されている。中継装置A〜Cは、たとえば中継装置15や中継装置25に付けられている装置名称である。それぞれの中継装置A〜Cについて、URLとIPアドレスとログイン状態のフラグが設定されている。   Table 1 is a table showing a registration example of the relay device database 351 managed by the server device 35. In this example, three relay apparatuses A to C are registered. The relay devices A to C are device names attached to the relay device 15 and the relay device 25, for example. For each of the relay devices A to C, a URL, an IP address, and a login status flag are set.

Figure 0004492575
Figure 0004492575

なお、中継装置データベース351に登録されている各中継装置のIPアドレスは、各中継装置のプライベートネットワーク内におけるIPアドレスではなく、ゲートウェイによってNAT(Network Address Translation)やIPマスカレードなどの機能により変換されたグローバルIPアドレスである。たとえば、中継装置15は、LAN10内でプライベートアドレスが割り当てられているが、サーバ装置35にアクセスする際には、そのIPアドレスがゲートウェイ16においてグローバルIPアドレスに変換されている。   Note that the IP address of each relay device registered in the relay device database 351 is not converted by the gateway using a function such as NAT (Network Address Translation) or IP masquerade, but an IP address in the private network of each relay device. It is a global IP address. For example, the relay device 15 is assigned a private address in the LAN 10, but when accessing the server device 35, the IP address is converted into a global IP address in the gateway 16.

各中継装置A〜Cは、サーバ装置35に接続してサーバ装置35にログインする。中継装置データベース351の「状態」フィールドには、各中継装置A〜Cがサーバ装置35に現在ログイン中であるかログアウト状態にあるかを示す情報が設定される。サーバ装置35は各中継装置がログイン状態にある場合には、他の各中継装置との間でTCPコネクションを確立する準備があると判断できるのである。言い換えると、中継装置がサーバ装置35にログインしている状態は、相手の端末から送られてきたTCPコネクションの接続要求を受け入れられる状態にあることを示しているのである。   Each relay device A to C connects to the server device 35 and logs into the server device 35. In the “status” field of the relay device database 351, information indicating whether each of the relay devices A to C is currently logged in to the server device 35 or in a logout state is set. When each relay device is in the login state, the server device 35 can determine that it is ready to establish a TCP connection with each other relay device. In other words, the state in which the relay device is logged in to the server device 35 indicates that the connection request for the TCP connection sent from the partner terminal can be accepted.

以上の構成の通信システムにおける通信処理の流れについて図2ないし図4を参照しながら説明する。図2は、中継装置15,25およびサーバ装置35を含めた通信システムの全体の処理の流れを示す図である。なお、以下の説明において、中継装置15,25とサーバ装置35との間の通信はSIP(Session Initiation Protocol)を利用している場合を例に説明するが、その他のプロトコルを利用してもよい。   A flow of communication processing in the communication system having the above configuration will be described with reference to FIGS. FIG. 2 is a diagram showing an overall processing flow of the communication system including the relay devices 15 and 25 and the server device 35. In the following description, communication between the relay devices 15 and 25 and the server device 35 will be described as an example using SIP (Session Initiation Protocol), but other protocols may be used. .

各中継装置15,25は、初期化の際あるいは定期的にSIPの「REGISTERリクエストメッセージ」をサーバ装置35に送信し、中継装置の位置情報(IPアドレス,ポート番号等)をサーバ装置35に通知している。サーバ装置35は、この位置情報を元に表1の中継装置データベース351を管理している。サーバ装置35は、この位置情報に基づいてゲートウェイを越えて各中継装置に通信可能となっている。図2において、最初の状態では、中継装置15および中継装置25はサーバ装置35にログインしている。まず、中継装置25がサーバ装置35に対してログアウトの状態情報を通知し(ステップS101)、サーバ装置35がこれに応答する(S102)。サーバ装置35は、中継装置25のログアウト処理を実行し、中継装置データベース351において中継装置25の「状態」フィールドをログアウトに更新する。   Each of the relay devices 15 and 25 transmits a SIP “REGISTER request message” to the server device 35 at the time of initialization or periodically, and notifies the server device 35 of location information (IP address, port number, etc.) of the relay device. is doing. The server device 35 manages the relay device database 351 shown in Table 1 based on this position information. The server device 35 can communicate with each relay device beyond the gateway based on the position information. In FIG. 2, in the initial state, the relay device 15 and the relay device 25 are logged in to the server device 35. First, the relay device 25 notifies the server device 35 of logout status information (step S101), and the server device 35 responds thereto (S102). The server device 35 executes logout processing of the relay device 25 and updates the “status” field of the relay device 25 in the relay device database 351 to logout.

この状態で、中継装置15がサーバ装置35に対して状態情報の通知要求を行うと(S103)、サーバ装置35は応答を行い(S104)、続いて中継装置25がログアウト状態であることを通知する(S105)。中継装置15は、この通知に応答する(S106)。   In this state, when the relay device 15 makes a status information notification request to the server device 35 (S103), the server device 35 responds (S104), and then notifies that the relay device 25 is in the logout state. (S105). The relay device 15 responds to this notification (S106).

次に、中継装置25がサーバ装置35に対してログインの状態情報を通知し(ステップS107)、サーバ装置35がこれに応答する(S108)。サーバ装置35は中継装置25のログイン処理を実行し、中継装置データベース351の「状態」フィールドをログインに更新する。さらに、サーバ装置35は、中継装置25がログイン状態となったことを中継装置15に通知する(S109)。中継装置15は、この通知に応答する(S110)。   Next, the relay device 25 notifies the server device 35 of login status information (step S107), and the server device 35 responds thereto (S108). The server device 35 executes the login process of the relay device 25 and updates the “status” field of the relay device database 351 to login. Further, the server device 35 notifies the relay device 15 that the relay device 25 has entered the login state (S109). The relay device 15 responds to this notification (S110).

中継装置15は、中継装置25がログイン状態となった通知を受けると、次に、中継装置25に対する接続要求をサーバ装置35に送信する(S111)。この接続要求は、図に例示したように、SIPの「INVITEリクエストメッセージ」であり、空白行に続くボディ部にTCP接続情報が含まれている。図に示した例では、中継装置15(送信元)のIPアドレス(200.1.1.1)、TCPのポート番号(6109)などが含まれている。サーバ装置35は、この接続要求を中継装置25に中継する(S112)。この要求に対して中継装置25は接続を許可する旨の応答をサーバ装置35に送信する(S113)。この応答は、図に例示したように、SIPの「200 OK レスポンスメッセージ」であり、空白行に続くボディ部にTCP接続情報が含まれる。図に示した例では、中継装置25(送信元)のIPアドレス(200.2.2.2)、TCPのポート番号(7109)などが含まれている。サーバ装置35は、この応答を中継装置15に中継する(S114)。このように、中継装置15と中継装置25は、SIPのINVITEリクエストとOKレスポンスを利用して、TCPの接続情報を交換し、TCPコネクションを確立するためのネゴシエーションを行うのである。この応答を受けて、中継装置15は中継装置25に対してTCPの接続要求を送信する(S115)。これにより、中継装置15と中継装置25との間にTCPコネクションが確立される。   When the relay device 15 receives the notification that the relay device 25 has entered the login state, the relay device 15 next transmits a connection request for the relay device 25 to the server device 35 (S111). This connection request is a SIP “INVITE request message” as illustrated in the figure, and includes TCP connection information in a body part following a blank line. In the example shown in the figure, the IP address (200.1.1.1) of the relay device 15 (source), the TCP port number (6109), and the like are included. The server device 35 relays this connection request to the relay device 25 (S112). In response to this request, the relay device 25 transmits a response to permit connection to the server device 35 (S113). This response is a SIP “200 OK response message” as illustrated in the figure, and includes TCP connection information in the body part following the blank line. In the example shown in the figure, the IP address (200.2.2.2) of the relay device 25 (source), the TCP port number (7109), and the like are included. The server device 35 relays this response to the relay device 15 (S114). As described above, the relay device 15 and the relay device 25 use the SIP INVITE request and the OK response to exchange TCP connection information and perform negotiation for establishing the TCP connection. In response to this response, the relay device 15 transmits a TCP connection request to the relay device 25 (S115). Thereby, a TCP connection is established between the relay device 15 and the relay device 25.

以上のような処理が、たとえばLAN10あるいはLAN20のネットワーク管理者によって実行される。つまり、ネットワーク管理者は、他のLANとの間の接続を動的に実行できるよう準備するのであれば、ステップS107で示したように、ネットワーク内にある中継装置をサーバ装置35にログインさせるのである。これにより、他の中継装置からTCPの接続要求を受ける準備が整う。そして、ネットワーク管理者は、他のLANとの間の接続を行いたい場合には、サーバ装置35にアクセスして、相手の中継装置の状態を取得し、相手の中継装置がログイン状態となっていることを知ると、接続要求をサーバ装置35に対して送信するのである。   The above processing is executed by a network administrator of the LAN 10 or LAN 20, for example. That is, if the network administrator prepares to dynamically execute a connection with another LAN, the relay device in the network is logged into the server device 35 as shown in step S107. is there. As a result, preparation for receiving a TCP connection request from another relay apparatus is completed. If the network administrator wants to establish a connection with another LAN, the network administrator accesses the server device 35 to acquire the state of the partner relay device, and the partner relay device enters the login state. When it is known that the connection is present, a connection request is transmitted to the server device 35.

つまり、本発明においては、中継装置15がサーバ装置35を介してSIPのINVITEリクエストを送信することで、中継用のTCPコネクション(メディアセッション)を確立する。つまり、呼制御プロトコルを利用してメディアセッションとしての中継路を生成するため、動的に中継用の通信路を確立できるのである。   In other words, in the present invention, the relay device 15 transmits a SIP INVITE request via the server device 35 to establish a TCP connection (media session) for relay. That is, since a relay path as a media session is generated using a call control protocol, a relay communication path can be dynamically established.

このようにして中継装置15と中継装置25との間でTCPのコネクションが確立されると、中継装置15と中継装置25はこのTCPコネクションを保持する。そして、中継装置15は、通信装置11,12等から通信装置21,22等に対して送信するデータを受信すると、このデータを中継装置25に中継する。中継装置25は中継されたデータをさらに通信装置21,22等に中継するのである(S116)。通信装置21,22等から送信されたデータも同様にして、中継装置25、中継装置15を経由して通信装置11,21等に中継される(S117)。   When a TCP connection is established between the relay device 15 and the relay device 25 in this way, the relay device 15 and the relay device 25 hold the TCP connection. When the relay device 15 receives data to be transmitted from the communication devices 11 and 12 to the communication devices 21 and 22, the relay device 15 relays the data to the relay device 25. The relay device 25 further relays the relayed data to the communication devices 21, 22, etc. (S116). Similarly, data transmitted from the communication devices 21 and 22 are relayed to the communication devices 11 and 21 through the relay device 25 and the relay device 15 (S117).

なお、このようなWAN30を介してLAN10とLAN20との間で通信を行うために、各中継装置15,25は、それぞれのLANに接続された通信装置の装置名のリストを管理している。そして、中継装置15と中継装置25との間でTCPコネクションが確立されたときに、このリストを交換するのである。そして、LAN10に接続された通信装置とLAN20に接続された通信装置とが通信を行う場合には、送信先のLANの中継装置と送信先の通信装置の装置名とを合わせて指定するようにすればよい。つまり、この通信システムを利用する中継装置についてはユニークな装置名が付与されているので(中継装置データベース351に登録されている。)、中継装置の装置名と通信装置の装置名を合わせて指定することで、送信先の通信装置をユニークに識別できるのである。たとえば、通信装置名@中継装置名などの名称を用いてもよい。また、各中継装置は、自装置が接続しているLANに接続されている通信装置については、通信装置名とIPアドレスの対応付けが分かっているので、通信装置名@中継装置名で指定された通信装置にデータを中継することが可能である。   Note that, in order to perform communication between the LAN 10 and the LAN 20 via such a WAN 30, the relay apparatuses 15 and 25 manage a list of apparatus names of communication apparatuses connected to the respective LANs. Then, when a TCP connection is established between the relay device 15 and the relay device 25, this list is exchanged. When the communication device connected to the LAN 10 communicates with the communication device connected to the LAN 20, the destination LAN relay device and the device name of the destination communication device are specified together. do it. That is, since a unique device name is assigned to the relay device using this communication system (registered in the relay device database 351), the relay device name and the communication device name are specified together. By doing so, the destination communication device can be uniquely identified. For example, a name such as communication device name @ relay device name may be used. Also, each relay device is specified by the communication device name @ relay device name because the correspondence between the communication device name and the IP address is known for the communication device connected to the LAN to which it is connected. It is possible to relay data to a communication device.

通信装置間でのデータの送受信が終了し、中継装置15と中継装置25との間のコネクションが不要となった時点でネットワーク管理者はコネクションの切断を行う。まず、中継装置15が中継装置25に対する切断要求をサーバ装置35に送信する(S118)。サーバ装置35は、この要求を中継装置25に中継する(S119)。中継装置25からの応答はサーバ装置35に送信され(S120)、中継装置15に中継される(S121)。   When the data transmission / reception between the communication devices is completed and the connection between the relay device 15 and the relay device 25 becomes unnecessary, the network administrator disconnects the connection. First, the relay device 15 transmits a disconnection request for the relay device 25 to the server device 35 (S118). The server device 35 relays this request to the relay device 25 (S119). The response from the relay device 25 is transmitted to the server device 35 (S120) and relayed to the relay device 15 (S121).

図3は、図2で説明した処理において中継装置15の処理に着目したフローチャートである。まず、中継装置15は、中継接続の開始要求をサーバ装置35に送信する(ステップS201)。この開始要求には、中継先の中継装置25が指定される。サーバ装置35からの応答により中継先の中継装置25がログアウトしていることが判明すると(S202でNO)、ログイン通知を受信するまで待機する(S203)。ログイン通知を受信するとステップS204に以降する。   FIG. 3 is a flowchart focusing on the processing of the relay device 15 in the processing described in FIG. First, the relay device 15 transmits a relay connection start request to the server device 35 (step S201). In this start request, the relay destination relay device 25 is specified. If it becomes clear from the response from the server device 35 that the relay device 25 as the relay destination is logged out (NO in S202), the process waits until a login notification is received (S203). When the login notification is received, the process proceeds to step S204.

ステップS202において中継先の中継装置25がログイン中であることが判明すると、TCP接続情報を生成し(S204)、接続要求を送信する(S205)。そして、中継装置25からの応答を待ち(S206)、応答を受信すると応答中のTCP接続情報を解析する(S207)。つまり、中継装置25から送信された応答に含まれるポート番号情報などを取得する。そして、中継装置25に対してTCP接続を行う(S208)。   If it is determined in step S202 that the relay device 25 as a relay destination is logged in, TCP connection information is generated (S204), and a connection request is transmitted (S205). Then, it waits for a response from the relay device 25 (S206), and when receiving the response, analyzes the TCP connection information in the response (S207). That is, the port number information included in the response transmitted from the relay device 25 is acquired. Then, a TCP connection is made to the relay device 25 (S208).

TCPコネクションが確立され保持している状態で、通信装置11等が中継データを送信した場合(S209でYES)、通信装置21等にデータを中継送信する(S210)。通信装置11等に対する中継データを受信した場合には(S211でYES)、中継先の通信装置11等へデータを中継送信する(S212)。中継装置25から切断要求を受信した場合には(S213でYES)、応答送信を行い(S214)、TCPコネクションを切断する(S215)。   When the communication device 11 or the like transmits relay data while the TCP connection is established and held (YES in S209), the data is relayed and transmitted to the communication device 21 or the like (S210). When relay data for the communication device 11 or the like is received (YES in S211), the data is relayed and transmitted to the relay destination communication device 11 or the like (S212). If a disconnection request is received from the relay device 25 (YES in S213), a response is transmitted (S214), and the TCP connection is disconnected (S215).

これに対してLAN10のネットワーク管理者により切断要求が行われた場合(S216)には、中継装置25に対して切断要求を送信し(S217)、応答を受信すれば(S218でYES)、TCPコネクションを切断する(S219)。   On the other hand, when a disconnection request is made by the network administrator of the LAN 10 (S216), the disconnection request is transmitted to the relay device 25 (S217), and if a response is received (YES in S218), the TCP The connection is disconnected (S219).

図4は、図2で説明した処理において中継装置25の処理に着目したフローチャートである。まず、LAN20のネットワーク管理者は、他のLANとの接続を準備するかどうかを判断する。他のLANとの接続を準備する場合には、中継装置25に対して中継機能を有効にする操作を行う。中継機能が有効になると(ステップS301でYES)、サーバ装置35に対してログインコマンドを送信する(S302)。そして、サーバ装置35から応答を受信し(S303)、中継機能を有効とする処理が完了する。   FIG. 4 is a flowchart focusing on the processing of the relay device 25 in the processing described in FIG. First, the network administrator of the LAN 20 determines whether to prepare for connection with another LAN. When preparing to connect to another LAN, the relay device 25 is operated to enable the relay function. When the relay function is enabled (YES in step S301), a login command is transmitted to the server device 35 (S302). And a response is received from the server apparatus 35 (S303), and the process which validates a relay function is completed.

このように、中継装置15は、中継先の中継装置25がログイン状態にあれば、すなわち、中継装置25が接続を受け入れる状態にあれば動的に中継装置25に対してTCPコネクションを確立し、インターネットなどのWAN30を介してデータ送受信可能とすることができる。たとえば、ある会社の本社と支社のように恒常的にトラフィックが安定して発生する場合には従来から利用されているVPNを利用し、固定的にLAN同士を接続すればよい。これに対して、任意のタイミングでWAN30を経由する異なるネットワークと接続してデータ通信を行いたい場合などにおいては、本実施の形態の通信システムを利用するとよい。   In this way, the relay device 15 dynamically establishes a TCP connection to the relay device 25 if the relay destination relay device 25 is in a login state, that is, if the relay device 25 is in a state of accepting a connection, Data can be transmitted and received via the WAN 30 such as the Internet. For example, when traffic constantly occurs like a head office and a branch office of a certain company, a conventionally used VPN may be used to connect LANs fixedly. On the other hand, when it is desired to perform data communication by connecting to a different network via the WAN 30 at an arbitrary timing, the communication system of this embodiment may be used.

また、本実施の形態の通信システムによれば、相手の中継装置の接続環境(IPアドレスやポート番号)が変更された場合にも、中継装置は最初にネゴシエーション(S111〜S114)を行うので、確実にデータ中継用のコネクションを確立することが可能である。   Further, according to the communication system of the present embodiment, even when the connection environment (IP address or port number) of the partner relay device is changed, the relay device first performs negotiation (S111 to S114). It is possible to reliably establish a data relay connection.

また、本実施の形態の中継装置15,25は、複数の中継装置との間でTCPコネクションを確立することが可能である。たとえば、図5に示したように、中継装置15が3つの中継装置25,45,55と個別にTCPコネクションを確立することが可能である。中継装置45,55との間でTCPコネクションを確立する方法は、中継装置25に対して行った処理と同様である。そして、各中継装置15,25等は、複数の中継装置との間でTCPコネクションを確立して、複数の中継装置に対してデータを中継するのである。図5の例であれば、中継装置15は、ある通信装置から送信されるデータを中継装置45に中継するとともに、別の通信装置から送信されるデータを中継装置55に中継するのである。   In addition, the relay devices 15 and 25 of the present embodiment can establish TCP connections with a plurality of relay devices. For example, as shown in FIG. 5, the relay device 15 can individually establish a TCP connection with the three relay devices 25, 45, and 55. A method for establishing a TCP connection with the relay devices 45 and 55 is the same as the processing performed for the relay device 25. Each relay device 15, 25, etc. establishes a TCP connection with a plurality of relay devices and relays data to the plurality of relay devices. In the example of FIG. 5, the relay device 15 relays data transmitted from a certain communication device to the relay device 45 and relays data transmitted from another communication device to the relay device 55.

そして、各中継装置45,55とのTCPコネクションを切断する方法も、中継装置25に対して行った処理と同様である。つまり、複数の中継装置25,45,55と個別にTCPコネクションを確立し、個別にTCPコネクションを切断することができるのである。   The method for cutting the TCP connection with each of the relay devices 45 and 55 is the same as the processing performed for the relay device 25. That is, a TCP connection can be individually established with a plurality of relay apparatuses 25, 45, and 55, and the TCP connection can be disconnected individually.

従来、VPNなどにおいては複数のLANが接続される場合、複数のLANが1つのVPNとして接続される形態であった。これに対して、本実施の形態の通信システムは、通信を行いたい中継装置とだけ個別に接続し、通信を行う必要がなくなった中継装置とは個別に切断を行うことができるので、無駄なリソースを消費することなく、効率的な通信システムを構築できる。   Conventionally, in a VPN or the like, when a plurality of LANs are connected, the plurality of LANs are connected as one VPN. On the other hand, the communication system according to the present embodiment can be individually connected only to the relay device that wants to communicate, and can be disconnected individually from the relay device that no longer needs to perform communication. An efficient communication system can be constructed without consuming resources.

{第2の実施の形態}
次に、本発明の第2の実施の形態について説明する。第1の実施の形態においては、ネットワーク管理者の指示により中継装置間を動的に接続した。第2の実施の形態においては、通信装置からの指定によって中継装置間の接続が行われる。具体的には、第1の実施の形態においては、通信装置間で発生する通信の状態を想定してネットワーク管理者が中継装置同士を接続したり切断したりする操作を行った。これに対して第2の実施の形態においては、通信装置から発生する通信処理に対応して、より動的に中継装置間の接続、切断制御を行うものである。以下の説明において、第1の実施の形態と同様の説明は省略する。
{Second Embodiment}
Next, a second embodiment of the present invention will be described. In the first embodiment, the relay apparatuses are dynamically connected according to instructions from the network administrator. In the second embodiment, connection between relay devices is performed by designation from a communication device. Specifically, in the first embodiment, the network administrator performs an operation of connecting or disconnecting the relay devices, assuming a state of communication occurring between the communication devices. On the other hand, in the second embodiment, connection / disconnection control between relay apparatuses is more dynamically performed in response to communication processing generated from the communication apparatus. In the following description, the same description as in the first embodiment is omitted.

図6は、第2の実施の形態における通信システムの構成図である。図1のシステム構成に加えて図6ではLAN40を追加しているが、基本的なシステム構成は第1の実施の形態と同様である。LAN40についても、通信装置41と中継装置45が接続されており、LAN40はゲートウェイ46を介してWAN30に接続されている。   FIG. 6 is a configuration diagram of a communication system according to the second embodiment. Although a LAN 40 is added in FIG. 6 in addition to the system configuration of FIG. 1, the basic system configuration is the same as that of the first embodiment. Also for the LAN 40, a communication device 41 and a relay device 45 are connected, and the LAN 40 is connected to the WAN 30 via a gateway 46.

中継装置15,25,45は、それぞれ中継コネクションデータベース151,251,451を備えている。表2は、中継装置15が備える中継コネクションデータベース151の登録例を示す表である。   The relay devices 15, 25, and 45 include relay connection databases 151, 251 and 451, respectively. Table 2 is a table showing a registration example of the relay connection database 151 included in the relay device 15.

Figure 0004492575
Figure 0004492575

中継コネクションデータベース151は、中継装置15が現在確立しているTCPコネクションを管理するデータベースである。「クライアント」フィールドには、中継装置との接続を要求した通信装置(以下の説明において適宜、要求元通信装置と呼ぶ。)の装置名が設定される。表におけるClientX,ClientYは、たとえば、通信装置11,21等に付与されている装置の名称である。「中継先URL」、「IPアドレス」フィールドには、中継先の中継装置のURLとIPアドレスが設定される。「コネクション番号」フィールドには、生成したTCPコネクションのポート番号が設定され、「生成時刻」フィールドには、TCPコネクションを生成したときの時刻が設定される。   The relay connection database 151 is a database that manages the TCP connection currently established by the relay device 15. In the “client” field, a device name of a communication device that requests connection with the relay device (referred to as a request source communication device in the following description as appropriate) is set. ClientX and ClientY in the table are names of devices assigned to the communication devices 11 and 21, for example. In the “relay destination URL” and “IP address” fields, the URL and IP address of the relay device of the relay destination are set. The port number of the generated TCP connection is set in the “connection number” field, and the time when the TCP connection is generated is set in the “generation time” field.

本実施の形態においては、要求元通信装置からの指定により通信先の中継装置との間でTCPコネクションが確立されるが、このTCPコネクションを利用して通信を行うことができるのは、要求元通信装置のみとしている。つまり、表2でも示したように、通信装置とTCPコネクションは1対1に対応する。   In the present embodiment, a TCP connection is established with a communication destination relay device according to the designation from the request source communication device, but communication can be performed using this TCP connection. Only communication equipment. That is, as shown in Table 2, there is a one-to-one correspondence between communication devices and TCP connections.

中継コネクションデータベース251,451の内容についても表2で示した中継コネクションデータベース151と同様である。それぞれ中継装置25,45が現在確立しているTCPコネクションの状態が登録されている。   The contents of the relay connection databases 251 and 451 are the same as those of the relay connection database 151 shown in Table 2. The state of the TCP connection currently established by each of the relay devices 25 and 45 is registered.

以上の構成の通信システムにおける通信処理の流れについて図7ないし図9を参照しながら説明する。図7は、通信装置11,12、中継装置15,25およびサーバ装置35を含めた通信システムの全体の処理の流れを示す図である。なお、以下の説明において、中継装置15,25とサーバ装置35との間の通信はSIP(Session Initiation Protocol)を利用している場合を例に説明するが、その他のプロトコルを利用してもよい。   A flow of communication processing in the communication system having the above configuration will be described with reference to FIGS. FIG. 7 is a diagram showing an overall processing flow of the communication system including the communication devices 11 and 12, the relay devices 15 and 25, and the server device 35. In the following description, communication between the relay devices 15 and 25 and the server device 35 will be described as an example using SIP (Session Initiation Protocol), but other protocols may be used. .

第1の実施の形態と同様、各中継装置15,25は、初期化の際あるいは定期的にSIPの「REGISTERリクエストメッセージ」をサーバ装置35に送信し、中継装置の位置情報(IPアドレス,ポート番号等)をサーバ装置35に通知している。図7において、最初の状態では、中継装置15および中継装置25はサーバ装置35にログインしている。まず、中継装置25がサーバ装置35に対してログアウトの状態情報を通知し(ステップS401)、サーバ装置35がこれに応答する(S402)。サーバ装置35は、中継装置25のログアウト処理を実行し、中継装置データベース351において中継装置25の「状態」フィールドをログアウトに更新する。   As in the first embodiment, each of the relay devices 15 and 25 transmits a SIP “REGISTER request message” to the server device 35 at the time of initialization or periodically, and the location information (IP address, port) of the relay device. Number or the like) to the server device 35. In FIG. 7, in the initial state, the relay device 15 and the relay device 25 are logged in to the server device 35. First, the relay device 25 notifies the server device 35 of logout status information (step S401), and the server device 35 responds thereto (S402). The server device 35 executes logout processing of the relay device 25 and updates the “status” field of the relay device 25 in the relay device database 351 to logout.

この状態で、通信装置11が中継装置25を指定したデータの中継送信要求と状態確認要求とを中継装置15に送信する(S403)。中継装置15がサーバ装置35に対して状態情報の通知要求を行うと(S404)、サーバ装置35は応答を行い(S405)、続いて中継装置25がログアウト状態であることを通知する(S406)。中継装置15は、この通知に応答する(S407)。さらに、中継装置15は、通信装置11に対して中継装置25がログアウト状態であることを通知する(S408)。これにより、通信装置11は、中継装置25がログイン状態となるまで待機することになる。   In this state, the communication device 11 transmits a data relay transmission request and a status confirmation request specifying the relay device 25 to the relay device 15 (S403). When the relay device 15 makes a status information notification request to the server device 35 (S404), the server device 35 responds (S405), and then notifies that the relay device 25 is in a logout state (S406). . The relay device 15 responds to this notification (S407). Further, the relay device 15 notifies the communication device 11 that the relay device 25 is in a logout state (S408). As a result, the communication device 11 stands by until the relay device 25 enters the login state.

次に、中継装置25がサーバ装置35に対してログインの状態情報を通知し(ステップS409)、サーバ装置35がこれに応答する(S410)。サーバ装置35は中継装置25のログイン処理を実行し、中継装置データベース351の「状態」フィールドをログインに更新する。さらに、サーバ装置35は、中継装置25がログイン状態となったことを中継装置15に通知する(S411)。中継装置15は、この通知に応答する(S412)。さらに、中継装置15は、通信装置11に対して中継装置25がログイン状態となったことを通知する(S413)。   Next, the relay device 25 notifies login status information to the server device 35 (step S409), and the server device 35 responds to this (S410). The server device 35 executes the login process of the relay device 25 and updates the “status” field of the relay device database 351 to login. Further, the server device 35 notifies the relay device 15 that the relay device 25 has entered the login state (S411). The relay device 15 responds to this notification (S412). Further, the relay device 15 notifies the communication device 11 that the relay device 25 has entered the login state (S413).

待機していた通信装置11は、S413による通知を受けると、再び中継装置25を指定した中継送信要求を行う(S414)。なお、この実施の形態においては、通信装置11は中継装置25がログイン状態となったことの通知を受けるまで待機するようにしたが、このような通知を待たず、定期的に中継送信要求を中継装置15に送信する形態であってもよい。   Upon receiving the notification in S413, the communication device 11 that has been waiting makes a relay transmission request specifying the relay device 25 again (S414). In this embodiment, the communication device 11 waits until it receives a notification that the relay device 25 has entered the login state. However, the communication device 11 does not wait for such notification and periodically issues a relay transmission request. A mode of transmitting to the relay device 15 may be possible.

中継装置15は、通信装置11からの中継送信要求を受けると、中継装置25に対する接続要求をサーバ装置35に送信する(S415)。この接続要求は、第1の実施の形態でも説明したように、SIPの「INVITEリクエストメッセージ」であり、TCPの接続情報が含まれている。サーバ装置35は、この接続要求を中継装置25に中継する(S416)。この要求に対して中継装置25は接続を許可する旨の応答をサーバ装置35に送信する(S417)。この応答は、第1の実施の形態でも説明したように、SIPの「200 OK レスポンスメッセージ」であり、TCPの接続情報が含まれる。サーバ装置35は、この応答を中継装置15に中継する(S418)。このようにして中継装置15と中継装置25は、TCPの接続情報を交換する。この応答を受けて、中継装置15は中継装置25に対してTCPの接続要求を送信する(S419)。これにより、中継装置15と中継装置25との間にTCPコネクションが確立される。   When receiving the relay transmission request from the communication device 11, the relay device 15 transmits a connection request for the relay device 25 to the server device 35 (S415). This connection request is an SIP “INVITE request message” as described in the first embodiment, and includes TCP connection information. The server device 35 relays this connection request to the relay device 25 (S416). In response to this request, the relay device 25 transmits a response to permit connection to the server device 35 (S417). As described in the first embodiment, this response is a SIP “200 OK response message” and includes TCP connection information. The server device 35 relays this response to the relay device 15 (S418). In this way, the relay device 15 and the relay device 25 exchange TCP connection information. In response to this response, the relay device 15 transmits a TCP connection request to the relay device 25 (S419). Thereby, a TCP connection is established between the relay device 15 and the relay device 25.

以上のような処理は、たとえば通信装置11から通信装置21に対する通信処理が発生したときに動的に処理される。つまり、中継装置間は固定的に接続されているのではなく、トラフィックが発生したことをトリガとして接続が行われるのである。ただし、相手の中継装置からの接続要求に準備するために、ネットワーク管理者は、ステップS409で示したように、ネットワーク内にある中継装置をサーバ装置35にログインさせて準備しておく必要はある。   The above processing is dynamically processed when, for example, communication processing from the communication device 11 to the communication device 21 occurs. In other words, the relay apparatuses are not fixedly connected but are connected with the occurrence of traffic as a trigger. However, in order to prepare for a connection request from the partner relay device, the network administrator needs to log in and prepare the relay device in the network as shown in step S409. .

本発明においては、通信装置11からの指示を受けて中継装置15がサーバ装置35を介してSIPのINVITEリクエストを送信することで、中継用のTCPコネクション(メディアセッション)を確立する。つまり、通信装置からの接続要求が発生した時点で、呼制御プロトコルを利用してメディアセッションとしての中継路を生成するため、動的に中継用の通信路を確立できるのである。   In the present invention, in response to an instruction from the communication device 11, the relay device 15 transmits a SIP INVITE request via the server device 35 to establish a TCP connection (media session) for relay. That is, when a connection request from a communication device is generated, a relay path as a media session is generated using a call control protocol, so that a relay communication path can be dynamically established.

このようにして中継装置15と中継装置25との間でTCPのコネクションが確立されると、中継装置15と中継装置25はこのTCPコネクションを保持する。そして、通信装置11が、通信装置21,22等に対するデータを送信すると(S421)、中継装置15が中継装置25にデータを中継する(S422)。中継装置25は中継されたデータをさらに通信装置21,22等に中継するのである。通信装置21,22等から送信されたデータも同様にして、中継装置25を経由して中継装置15に中継され(S423)、さらに、中継装置15を経由して通信装置11に中継される(S424)。   When a TCP connection is established between the relay device 15 and the relay device 25 in this way, the relay device 15 and the relay device 25 hold the TCP connection. Then, when the communication device 11 transmits data to the communication devices 21, 22 and the like (S421), the relay device 15 relays the data to the relay device 25 (S422). The relay device 25 further relays the relayed data to the communication devices 21, 22 and the like. Similarly, data transmitted from the communication devices 21 and 22 are relayed to the relay device 15 via the relay device 25 (S423), and further relayed to the communication device 11 via the relay device 15 (S423). S424).

通信装置11は、中継装置25を利用した中継送信が終了すると、切断指示を中継装置15に送信する(S425)。中継装置15は、中継装置25に対する切断要求をサーバ装置35に送信する(S426)。サーバ装置35は、この要求を中継装置25に中継する(S427)。中継装置25からの応答はサーバ装置35に送信され(S428)、中継装置15に中継される(S429)。これにより、中継装置15と中継装置25との間のTCPコネクションは切断され、中継装置15は通信装置11に切断されたこを通知する(S430)。   When the relay transmission using the relay device 25 is completed, the communication device 11 transmits a disconnection instruction to the relay device 15 (S425). The relay device 15 transmits a disconnection request to the relay device 25 to the server device 35 (S426). The server device 35 relays this request to the relay device 25 (S427). The response from the relay device 25 is transmitted to the server device 35 (S428) and relayed to the relay device 15 (S429). As a result, the TCP connection between the relay device 15 and the relay device 25 is disconnected, and the relay device 15 notifies the communication device 11 that it has been disconnected (S430).

このような状態で、別の通信装置12が再び中継装置25を指定した中継送信要求を行うと(S431)、中継装置15からサーバ装置35に接続要求が送信される(S432)。この時点では中継装置25がログアウト状態となっていれば、サーバ装置35よりログアウト状態が通知され(S433)、通信装置12に相手の中継装置25がログアウト状態であることが通知される。通信装置12では、上記の通信装置11の処理と同様、中継装置25がログイン状態となったところで再び中継装置25への中継送信要求を行う。これにより、中継装置15と中継装置25との間でTCPコネクションが確立される。   In this state, when another communication device 12 makes a relay transmission request specifying the relay device 25 again (S431), a connection request is transmitted from the relay device 15 to the server device 35 (S432). If the relay device 25 is in the logout state at this point, the server device 35 notifies the logout state (S433), and notifies the communication device 12 that the partner relay device 25 is in the logout state. Similar to the processing of the communication device 11 described above, the communication device 12 makes a relay transmission request to the relay device 25 again when the relay device 25 enters the login state. Thereby, a TCP connection is established between the relay device 15 and the relay device 25.

図8は、図7で説明した処理において中継装置15の処理に着目したフローチャートである。まず、中継装置15は、通信装置11,12等から中継指示が発生しているかどうかを確認し(ステップS501)、発生している場合には、状態確認指示が発生しているかどうかを確認する(S502)。状態確認指示が発生している場合には、中継先の中継装置がログイン中であるかどうかのチェックを行う(S503)。中継先の中継装置がログアウトしていることが判明すると(S503でNO)、ログイン通知を受信するまで待機する(S504)。   FIG. 8 is a flowchart focusing on the processing of the relay device 15 in the processing described in FIG. First, the relay device 15 confirms whether or not a relay instruction is generated from the communication devices 11 and 12 (step S501), and if so, confirms whether or not a state confirmation instruction is generated. (S502). If a status confirmation instruction has occurred, it is checked whether or not the relay device at the relay destination is logged in (S503). If it is determined that the relay device at the relay destination is logged out (NO in S503), the process waits until a login notification is received (S504).

中継先の中継装置がログイン状態となったことの通知をサーバ装置35から受信すると、要求元通信装置に対して中継先がログインとなったことを通知する(S505)。そして、再び、通信装置11,12等から中継指示を受けるまで待機する(S506)。中継指示を受けるとS508に移行する。また、S503において、中継先の中継装置がログイン中であることが判明すると即座にS508に移行する。また、通信装置からの要求に状態監視指示が含まれていない場合(S502でNO)には、中継先がログイン中であれば(S507でYES)、S508に移行し、中継先がログイン中でなければ、S502に戻り繰り返し処理を行う。つまり、要求元通信端末から状態監視指示を受信している場合には、中継先の中継装置がログインするまで監視して、ログイン状態の通知を受けたところで、要求元通信装置にもその情報を通知するのである。   When a notification that the relay device at the relay destination is in the login state is received from the server device 35, the request source communication device is notified that the relay destination has logged in (S505). Then, it waits again until it receives a relay instruction from the communication devices 11, 12, etc. (S506). If a relay instruction is received, the process proceeds to S508. In S503, if it is determined that the relay device as the relay destination is logged in, the process immediately proceeds to S508. If the request from the communication device does not include a state monitoring instruction (NO in S502), if the relay destination is logged in (YES in S507), the process proceeds to S508, and the relay destination is logged in. If not, the process returns to S502 and repeats the process. In other words, if a status monitoring instruction is received from the request source communication terminal, monitoring is performed until the relay destination relay device logs in, and when the login status notification is received, the information is also sent to the request source communication device. Notify.

中継装置15は、次にTCP接続情報を生成し(S508)、接続要求を送信する(S509)。そして、中継装置25からの応答を待ち(S510)、応答がなければ要求元通信装置へエラー通知を行い(S511)、S501に戻り処理を繰り返す。応答を受信すると応答中のTCP接続情報を解析する(S512)。つまり、中継装置25から送信された応答に含まれるポート番号情報などを取得する。そして、中継装置25に対してTCP接続を行う(S513)。要求元通信装置へは中継先との接続が完了したことを通知する(S514)。そして、中継コネクションデータベース151に新たに生成したTCPコネクションの情報を登録する(S515)。   Next, the relay device 15 generates TCP connection information (S508) and transmits a connection request (S509). Then, it waits for a response from the relay device 25 (S510), and if there is no response, notifies the requesting communication device of an error (S511), returns to S501, and repeats the processing. When the response is received, the TCP connection information in the response is analyzed (S512). That is, the port number information included in the response transmitted from the relay device 25 is acquired. Then, a TCP connection is made to the relay device 25 (S513). The request source communication apparatus is notified that the connection with the relay destination is completed (S514). Then, information on the newly created TCP connection is registered in the relay connection database 151 (S515).

図9のフローチャートに移る。TCPコネクションが確立され保持している状態で、通信装置11等から中継データが送信されると(S516でYES)、通信装置21等にデータを中継送信する(S517)。通信装置11等に対する中継データを受信した場合には(S518でYES)、中継先の通信装置11等へデータを中継送信する(S519)。中継装置25から切断要求を受信した場合には(S520でYES)、応答送信を行い(S521)、TCPコネクションを切断する(S522)。要求元通信装置により切断要求が行われた場合には(S523でYES)、中継先の中継装置25に対して切断要求を送信し(S524)、応答を受信すれば(S525でYES)、TCPコネクションを切断する(S526)。そして、要求元通信装置に対して中継先との接続が切断されたこを通知し(S527)、中継コネクションデータベース151に登録されていたTCPコネクションの情報を削除する(S528)。   Turning to the flowchart of FIG. If relay data is transmitted from the communication device 11 or the like with the TCP connection established and held (YES in S516), the data is relayed and transmitted to the communication device 21 or the like (S517). If relay data for the communication device 11 or the like has been received (YES in S518), the data is relay-transmitted to the relay destination communication device 11 or the like (S519). When a disconnection request is received from the relay device 25 (YES in S520), a response is transmitted (S521), and the TCP connection is disconnected (S522). If a disconnection request is made by the request source communication device (YES in S523), a disconnection request is transmitted to the relay device 25 as a relay destination (S524), and if a response is received (YES in S525), TCP The connection is disconnected (S526). Then, the request source communication apparatus is notified that the connection with the relay destination has been disconnected (S527), and the TCP connection information registered in the relay connection database 151 is deleted (S528).

このように第2の実施の形態によれば、通信装置からの中継指示が発生すると、動的に中継先の中継装置との間でTCPコネクションが確立され、プライベートなネットワーク間の通信が可能となる。従来の固定的に設定されるVPNなどとは異なり、通信の要求が発生した場合に、その通信に必要なコネクションを確立するので、リソースを効率的に利用することが可能である。   As described above, according to the second embodiment, when a relay instruction is issued from a communication device, a TCP connection is dynamically established with a relay destination relay device, and communication between private networks is possible. Become. Unlike a conventional fixed VPN or the like, when a communication request occurs, a connection necessary for the communication is established, so that resources can be used efficiently.

また、第2の実施の形態においては、ある通信装置からの要求に応じて生成された通信コネクションについては、要求元通信装置のみが利用できるようにしている。たとえば、通信装置11から通信装置21に対して通信の要求が発生し、この要求に応じて中継装置15と中継装置25との間にTCPコネクションが確立されると、このTCPコネクションは、通信装置11と通信装置21との間の通信にのみ利用されるのである。言い換えると、中継装置15と中継装置25は、このTCPコネクションには、通信装置11と通信装置21との間で送受信されるデータだけを中継するのである。したがって、通信装置から発生した要求によって生成されたコネクションは、その通信装置が専有することができる。   In the second embodiment, only a request source communication device can use a communication connection generated in response to a request from a communication device. For example, when a communication request is generated from the communication device 11 to the communication device 21 and a TCP connection is established between the relay device 15 and the relay device 25 in response to the request, the TCP connection is 11 and the communication device 21 are used only for communication. In other words, the relay device 15 and the relay device 25 relay only data transmitted and received between the communication device 11 and the communication device 21 in this TCP connection. Therefore, the connection generated by the request generated from the communication device can be occupied by the communication device.

図6で示した例であれば、通信装置11の要求により中継装置15と中継装置25が接続されている状態で、さらに、通信装置12の要求により中継装置15と中継装置45が接続されたとする。この場合には、個別のデータ中継コネクションが生成されることを図5を用いて説明した。したがって、通信装置11と通信装置12は、それぞれ別のTCPコネクションを利用して中継送信を行う。これに対して、通信装置11が中継装置25を指定した中継送信を行っている状態で、通信装置12も同じ中継装置25を指定した中継指示を行った場合、この場合にも、既に生成されているTCPコネクションは通信装置11により専有されているので、別の通信コネクションを形成するのである。   In the example shown in FIG. 6, it is assumed that the relay device 15 and the relay device 25 are connected by a request from the communication device 11, and that the relay device 15 and the relay device 45 are further connected by a request from the communication device 12. To do. In this case, it has been described with reference to FIG. 5 that an individual data relay connection is generated. Therefore, the communication device 11 and the communication device 12 perform relay transmission using different TCP connections. On the other hand, when the communication apparatus 11 performs relay transmission designating the relay apparatus 25 and the communication apparatus 12 also performs a relay instruction designating the same relay apparatus 25, the communication apparatus 11 is also generated in this case. Since the TCP connection is dedicated by the communication device 11, another communication connection is formed.

{第3の実施の形態}
次に、本発明の第3の実施の形態について説明する。第3の実施の形態においても、第2の実施の形態と同様、通信装置からの要求に応じて中継装置間の接続が行われる。ただし、第3の実施の形態においては、既に中継装置間のコネクションが形成されている場合には、他の通信装置もそのコネクションを共用する点が第2の実施の形態と異なる。以下、第2の実施の形態と異なる点を主に説明する。
{Third embodiment}
Next, a third embodiment of the present invention will be described. Also in the third embodiment, similarly to the second embodiment, connection between relay devices is performed in response to a request from a communication device. However, the third embodiment is different from the second embodiment in that when a connection between relay devices is already formed, other communication devices also share the connection. In the following, differences from the second embodiment will be mainly described.

表3は、第3の実施の形態において、中継装置15が備える中継コネクションデータベース151の登録例を示す表である。表に示すように、1つのTCPコネクションに対して複数のクライアント(通信装置)が対応付けられている。この表の例であれば、2つの通信装置(ClientX,ClientY)から中継送信要求が発生し、いずれの通信装置も同じ中継装置(Relayserver1@sample.net)を指定しているため、コネクション番号49583のTCPコネクションを共用しているのである。   Table 3 is a table showing a registration example of the relay connection database 151 included in the relay device 15 in the third embodiment. As shown in the table, a plurality of clients (communication devices) are associated with one TCP connection. In the example of this table, a relay transmission request is generated from two communication devices (ClientX, ClientY), and both communication devices specify the same relay device (Relayserver1@sample.net). The TCP connection is shared.

Figure 0004492575
Figure 0004492575

中継装置25,45が備える中継コネクションデータベース251,451の内容についても表3で示した中継コネクションデータベース151と同様である。それぞれ中継装置25,45が現在確立しているTCPコネクションの状態が登録されている。   The contents of the relay connection databases 251 and 451 included in the relay devices 25 and 45 are the same as those of the relay connection database 151 shown in Table 3. The state of the TCP connection currently established by each of the relay devices 25 and 45 is registered.

以上の構成の通信システムにおける通信処理の流れについて図10ないし図12を参照しながら説明する。図10は、通信装置11,12、中継装置15,25およびサーバ装置35を含めた通信システムの全体の処理の流れを示す図である。なお、以下の説明において、中継装置15,25とサーバ装置35との間の通信はSIP(Session Initiation Protocol)を利用している場合を例に説明するが、その他のプロトコルを利用してもよい。   A flow of communication processing in the communication system having the above configuration will be described with reference to FIGS. FIG. 10 is a diagram showing the overall processing flow of the communication system including the communication devices 11 and 12, the relay devices 15 and 25, and the server device 35. In the following description, communication between the relay devices 15 and 25 and the server device 35 will be described as an example using SIP (Session Initiation Protocol), but other protocols may be used. .

図10において、ステップS701からステップS724までの処理は、図7におけるステップS401からステップS424にそれぞれ対応しており、同様の処理であるので、説明を省略する。つまり、通信装置11から中継装置25を指定した中継送信要求が発生し、中継装置15と中継装置25との間でTCPコネクションが確立される。そして、通信装置11と通信装置21等との間でデータの送受信が行われるのである。   In FIG. 10, the processing from step S701 to step S724 corresponds to step S401 to step S424 in FIG. That is, a relay transmission request specifying the relay device 25 is generated from the communication device 11, and a TCP connection is established between the relay device 15 and the relay device 25. Data is transmitted and received between the communication device 11 and the communication device 21 and the like.

このような状態でさらに、別の通信装置12が再び中継装置25を指定した中継送信要求を行う(S725)。中継装置15は、現在中継装置25との間でTCPコネクションが確立されているので、通信装置12にデータの中継送信がOKであるとの通知を行う(S726)。これにより、通信装置12からデータが送信されると(S727)、中継装置15は、既に確立されていたTCPコネクションを利用して、通信装置12から送信されたデータを中継装置25に中継するのである(S728)。中継装置25も、通信装置21等から通信装置12に対して送信されたデータを、既に確立されていたTCPコネクションを利用して中継装置15に中継するのである(S729)。中継装置15は、さらに受信データを通信端末12に送信する(S730)。   In such a state, another communication apparatus 12 makes a relay transmission request specifying the relay apparatus 25 again (S725). Since the TCP connection is currently established with the relay device 25, the relay device 15 notifies the communication device 12 that the data relay transmission is OK (S726). Thus, when data is transmitted from the communication device 12 (S727), the relay device 15 relays the data transmitted from the communication device 12 to the relay device 25 using the TCP connection that has already been established. Yes (S728). The relay device 25 also relays data transmitted from the communication device 21 or the like to the communication device 12 to the relay device 15 using the already established TCP connection (S729). The relay device 15 further transmits the received data to the communication terminal 12 (S730).

このように、第3の実施の形態においては、既に中継装置間にTCPコネクションが確立されており、さらに発生した中継送信要求に、そのTCPコネクションが利用できる場合には、新たなTCPコネクションを確立しない。複数の通信端末で同じTCPコネクションを共用させるのである。これにより、TCPコネクションの確立に要する負荷を軽減し、異なるネットワーク間での通信を高速化させることが可能である。また、中継装置のリソースを節約することが可能である。たとえば、LAN10に接続された多数の通信端末とLAN20に接続された多数の通信端末がインターネットを経由して通信する場合などには、処理の高速化とリソースの節約が可能であり、有効である。また、1つの通信装置から中継送信するデータ量が少ない場合などにも有効である。   As described above, in the third embodiment, when a TCP connection has already been established between relay apparatuses, and the TCP connection can be used for the generated relay transmission request, a new TCP connection is established. do not do. Multiple communication terminals share the same TCP connection. As a result, it is possible to reduce the load required for establishing a TCP connection and speed up communication between different networks. Further, it is possible to save resources of the relay device. For example, when a large number of communication terminals connected to the LAN 10 and a large number of communication terminals connected to the LAN 20 communicate via the Internet, the processing speed can be increased and resources can be saved, which is effective. . It is also effective when the amount of data relayed from one communication device is small.

通信装置11および通信装置12が上記のようにTCPコネクションを共用してデータ通信を行っている状態で、通信装置11が、中継装置15に切断指示を送る(S731)。中継装置15は、通信装置12が同じTCPコネクションを利用しているので、このS731の指示に対しては特に処理を行わず、応答だけを行う(S732)。   In a state where the communication device 11 and the communication device 12 perform data communication by sharing the TCP connection as described above, the communication device 11 sends a disconnection instruction to the relay device 15 (S731). Since the communication device 12 uses the same TCP connection, the relay device 15 does not particularly process the instruction in S731, but performs only a response (S732).

その後、通信装置12は、中継装置25を利用した中継送信が終了すると、切断指示を中継装置15に送信する(S733)。中継装置15は、既に通信装置11からも切断指示を受けており、共用していたTCPコネクションが不要となったと判断できるので、中継装置25に対する切断要求をサーバ装置35に送信する(S734)。サーバ装置35は、この要求を中継装置25に中継する(S735)。中継装置25からの応答はサーバ装置35に送信され(S736)、中継装置15に中継される(S737)。これにより、中継装置15と中継装置25との間のTCPコネクションは切断され、中継装置15は通信装置11に切断されたこを通知する(S738)。   Thereafter, when the relay transmission using the relay device 25 is completed, the communication device 12 transmits a disconnection instruction to the relay device 15 (S733). Since the relay device 15 has already received a disconnection instruction from the communication device 11 and can determine that the shared TCP connection is no longer necessary, the relay device 15 transmits a disconnection request to the relay device 25 to the server device 35 (S734). The server device 35 relays this request to the relay device 25 (S735). The response from the relay device 25 is transmitted to the server device 35 (S736) and relayed to the relay device 15 (S737). Thereby, the TCP connection between the relay device 15 and the relay device 25 is disconnected, and the relay device 15 notifies the communication device 11 that it has been disconnected (S738).

図11は、図10で説明した処理において中継装置15の処理に着目したフローチャートである。まず、中継装置15は、通信装置11,12等から中継指示が発生しているかどうかを確認する(ステップS801)。中継指示が発生している場合には、その中継先の中継装置との間で既にTCPコネクションが確立されているかどうかを確認する(S802)。つまり、既に他の通信装置によって同じ中継装置が指定され、その中継装置との間でコネクションを張って通信を行っているかどうかを確認する。   FIG. 11 is a flowchart focusing on the processing of the relay device 15 in the processing described with reference to FIG. First, the relay device 15 confirms whether or not a relay instruction has been issued from the communication devices 11, 12, etc. (step S801). If a relay instruction has been issued, it is checked whether a TCP connection has already been established with the relay destination relay device (S802). That is, it is confirmed whether the same relay apparatus has already been designated by another communication apparatus and a communication is established with the relay apparatus.

既に指示された中継先と接続されている場合(S802でYES)、要求元通信装置へデータ中継可能であることを通知する(S815)。そして、中継コネクションデータベース151の情報を更新する(S816)。つまり、当該TCPコネクションについては既にデータベースに登録されているので、クライアント(通信装置)の追加を行うのである。表3で示した例であれば、たとえば最初にClientXとコネクション番号49583のTCPコネクションが対応付けられて登録されていたとすると、このレコードのクライアントフィールドにClientYを追加する処理を行うのである。   If it is already connected to the instructed relay destination (YES in S802), the request source communication apparatus is notified that data relay is possible (S815). Then, the information in the relay connection database 151 is updated (S816). That is, since the TCP connection is already registered in the database, a client (communication device) is added. In the example shown in Table 3, for example, assuming that ClientX and the TCP connection with the connection number 49583 are first registered in association with each other, processing for adding ClientY to the client field of this record is performed.

S802において指定された中継先とは未だ接続が行われていない場合には、S803〜S814の処理を実行する。この処理は、図8におけるS502〜S513の処理に対応しており、同様の処理であるので説明を省略する。   If the connection with the relay destination designated in S802 has not been established yet, the processing of S803 to S814 is executed. This process corresponds to the processes of S502 to S513 in FIG.

図12のフローチャートに移る。TCPコネクションが確立され保持している状態で、通信装置11等から中継データが送信されると(S817でYES)、通信装置21等にデータを中継送信する(S818)。通信装置11等に対する中継データを受信した場合には(S819でYES)、中継先の通信装置11等へデータを中継送信する(S820)。中継先の中継装置25から切断要求を受信した場合には(S821でYES)、応答送信を行い(S822)、TCPコネクションを切断する(S823)。このように、中継先の中継装置25からTCPコネクションを切断された場合には、中継送信を行っている通信装置に中継先との接続が切断されたことを通知する(S824)。切断されたTCPコネクションが複数の通信装置に共用されていた場合には、全ての通信装置に対して切断を通知する(S824,S825)。   Turning to the flowchart of FIG. If relay data is transmitted from the communication device 11 or the like with the TCP connection established and held (YES in S817), the data is relayed and transmitted to the communication device 21 or the like (S818). If relay data for the communication device 11 or the like has been received (YES in S819), the data is relay-transmitted to the communication device 11 or the like that is the relay destination (S820). When a disconnection request is received from the relay destination relay device 25 (YES in S821), a response is transmitted (S822), and the TCP connection is disconnected (S823). As described above, when the TCP connection is disconnected from the relay device 25 of the relay destination, the communication device that is performing relay transmission is notified that the connection with the relay destination is disconnected (S824). When the disconnected TCP connection is shared by a plurality of communication devices, the disconnection is notified to all the communication devices (S824, S825).

要求元通信装置により切断要求が行われた場合には(S826)、中継装置15は、切断指示されているTCPコネクションが他の通信装置と共用されているかどうかをチェックする(S827)。他の通信装置と共用している場合には、指示されたTCPコネクションを切断することなく、指示を出した通信装置へは、形式的な切断通知を行う(S828)。そして、中継コネクションデータベース151の情報を更新する(S829)。つまり、共用していたTCPコネクションの情報から切断指示を要求したクライアント(通信装置)の情報を削除するのである。このようにして、中継装置15は、常に現在確立しているTCPコネクションと、そのTCPコネクションを共用している通信装置を管理しているのである。   When the disconnection request is made by the request source communication device (S826), the relay device 15 checks whether the TCP connection instructed to disconnect is shared with other communication devices (S827). If it is shared with other communication apparatuses, a formal disconnection notification is sent to the instructing communication apparatus without disconnecting the instructed TCP connection (S828). Then, the information in the relay connection database 151 is updated (S829). That is, the information of the client (communication device) that requested the disconnection instruction is deleted from the information of the TCP connection that has been shared. In this way, the relay device 15 always manages the currently established TCP connection and the communication device sharing the TCP connection.

切断指示されているTCPコネクションが他の通信装置と共用されていない場合には(S827でNO)、中継装置25に対して切断要求を送信し(S830)、応答を受信すれば(S831でYES)、TCPコネクションを切断する(S832)。そして、要求元通信装置に対して中継先との接続が切断されたこを通知し(S833)、中継コネクションデータベース151に登録されていたTCPコネクションの情報を削除する(S834)。   If the TCP connection instructed to be disconnected is not shared with other communication devices (NO in S827), a disconnection request is transmitted to the relay device 25 (S830), and if a response is received (YES in S831) ), The TCP connection is disconnected (S832). Then, the request source communication apparatus is notified that the connection with the relay destination has been disconnected (S833), and the TCP connection information registered in the relay connection database 151 is deleted (S834).

このように第3の実施の形態によれば、通信装置からの中継指示が発生すると、動的に中継先の中継装置との間でTCPコネクションが確立され、プライベートなネットワーク間の通信が可能となる。さらに、中継指示が発生した場合に、その中継先との間で既にTCPコネクションが確立されていれば、そのコネクションを共用する。これにより、処理の高速化とリソースの有効利用が実現するのである。   As described above, according to the third embodiment, when a relay instruction is issued from a communication device, a TCP connection is dynamically established with a relay destination relay device, and communication between private networks is possible. Become. Further, when a relay instruction is generated, if a TCP connection has already been established with the relay destination, the connection is shared. As a result, high-speed processing and effective use of resources are realized.

第1の実施の形態に係る通信システムの構成図である。It is a block diagram of the communication system which concerns on 1st Embodiment. 第1の実施の形態に係る通信システムの処理フローを示す図である。It is a figure which shows the processing flow of the communication system which concerns on 1st Embodiment. 中継装置に着目したフローチャートである。It is a flowchart which paid its attention to the relay apparatus. 中継装置に着目したフローチャートである。It is a flowchart which paid its attention to the relay apparatus. 複数の中継コネクションが確立されるイメージを示す図である。It is a figure which shows the image in which a some relay connection is established. 第2の実施の形態に係る通信システムの構成図である。It is a block diagram of the communication system which concerns on 2nd Embodiment. 第2の実施の形態に係る通信システムの処理フローを示す図である。It is a figure which shows the processing flow of the communication system which concerns on 2nd Embodiment. 中継装置に着目したフローチャートである。It is a flowchart which paid its attention to the relay apparatus. 中継装置に着目したフローチャートである。It is a flowchart which paid its attention to the relay apparatus. 第3の実施の形態に係る通信システムの処理フローを示す図である。It is a figure which shows the processing flow of the communication system which concerns on 3rd Embodiment. 中継装置に着目したフローチャートである。It is a flowchart which paid its attention to the relay apparatus. 中継装置に着目したフローチャートである。It is a flowchart which paid its attention to the relay apparatus.

符号の説明Explanation of symbols

10 LAN
11 通信装置
15 中継装置
16 ゲートウェイ
20 LAN
21 通信装置
25 中継装置
26 ゲートウェイ
30 WAN
35 サーバ装置
10 LAN
11 Communication device 15 Relay device 16 Gateway 20 LAN
21 Communication device 25 Relay device 26 Gateway 30 WAN
35 Server device

Claims (9)

第1通信装置と通信可能な中継装置であって、
第1通信装置から送信されたデータを他の中継装置に中継する中継手段と、
サーバ装置に前記他の中継装置の状態を問い合わせ、前記他の中継装置が接続を受け入れる状態にある場合には、前記他の中継装置に対して接続要求を行い、前記他の中継装置との間で動的に中継用コネクションを確立して保持する保持手段と、
中継用コネクションが確立されたときに、前記中継装置が属するLANに接続された通信装置の装置名のリストを前記他の中継装置に送信し、前記他の中継装置が属するLANに接続された通信装置の装置名のリストを前記他の中継装置から受信することで、装置名のリストを交換する手段と、
第2通信装置は前記他の中継装置が属するLANに接続されており、交換したリストにおいて前記他の中継装置と対応づけられている前記第2通信装置の装置名を宛先として指定したデータ送信要求を前記第1通信装置から受信する手段と、
を備え
前記第1通信装置から送信されたデータを前記他の中継装置に中継することで、さらに当該データが前記第2通信装置に中継されることを特徴とする中継装置。
A relay device capable of communicating with the first communication device,
Relay means for relaying data transmitted from the first communication device to another relay device;
The server device is inquired about the status of the other relay device, and when the other relay device is in a state of accepting the connection, a connection request is made to the other relay device and the connection with the other relay device is made. Holding means for dynamically establishing and holding a relay connection in
When a relay connection is established, a list of device names of communication devices connected to the LAN to which the relay device belongs is transmitted to the other relay device, and communication connected to the LAN to which the other relay device belongs. Means for exchanging a list of device names by receiving a list of device names of devices from the other relay device ;
The second communication device is connected to the LAN to which the other relay device belongs, and a data transmission request specifying the device name of the second communication device associated with the other relay device in the exchanged list as the destination Means for receiving from the first communication device;
Equipped with a,
A relay device, wherein the data transmitted from the first communication device is relayed to the other relay device, whereby the data is further relayed to the second communication device.
請求項1に記載の中継装置において、
前記保持手段は、
複数の中継装置との間で中継用コネクションを接続して保持する手段、
を含み、
前記中継手段は、
複数の中継用コネクションを利用して複数の中継装置に対してデータを中継する手段、
を含むことを特徴とする中継装置。
The relay device according to claim 1,
The holding means is
Means for connecting and holding relay connections with a plurality of relay devices;
Including
The relay means is
Means for relaying data to a plurality of relay devices using a plurality of relay connections;
A relay device comprising:
請求項2に記載の中継装置において、
前記保持手段は、
複数の中継装置との間で保持している中継用コネクションを個別に切断する手段、
を含むことを特徴とする中継装置。
The relay device according to claim 2,
The holding means is
Means for individually disconnecting relay connections held between a plurality of relay devices;
A relay device comprising:
請求項1に記載の中継装置において、The relay device according to claim 1,
前記保持手段は、  The holding means is
通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、  Means for connecting and holding a relay connection with another relay device as specified by the communication device;
を含むことを特徴とする中継装置。A relay device comprising:
請求項1に記載の中継装置において、  The relay device according to claim 1,
前記保持手段は、  The holding means is
通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、  Means for connecting and holding a relay connection with another relay device as specified by the communication device;
を含み、Including
通信装置から特定の中継装置に対する中継用コネクションの接続指定を受けたとき、既に、前記特定の中継装置との間で中継用コネクションが保持されている場合には、既に形成されている中継用コネクションを共用することを特徴とする中継装置。  When a connection specification for a relay connection to a specific relay device is received from the communication device, if the relay connection is already held with the specific relay device, the relay connection already formed A relay device characterized in that it is shared.
端末間のデータを中継する通信システムであって、
第1通信装置と通信可能な第1中継装置と、
サーバ装置と、
第2通信装置と通信可能な第2中継装置と、
を備え、
前記第1中継装置は、
サーバ装置に前記第2中継装置の状態を問い合わせ、前記第2中継装置が接続を受け入れる状態にある場合には、前記第2中継装置に対して接続要求を行い、前記第2中継装置との間で動的に中継用コネクションを確立して保持する保持手段と、
中継用コネクションが確立されたときに、前記第1中継装置が属するLANに接続された通信装置の装置名のリストを前記第2中継装置に送信し、前記第2中継装置が属するLANに接続された通信装置の装置名のリストを前記第2中継装置から受信することで、装置名のリストを交換する手段と、
前記第2通信装置は前記第2中継装置が属するLANに接続されており、交換したリストにおいて前記第2中継装置と対応づけられている前記第2通信装置の装置名を宛先として指定したデータ送信要求を前記第1通信装置から受信する手段と、
を備え
前記第1中継装置が前記第1通信装置から送信されたデータを前記第2中継装置に中継送信することで、前記第2中継装置がさらにデータを前記第2通信装置に中継送信することを特徴とする通信システム。
A communication system that relays data between terminals,
A first relay device capable of communicating with the first communication device;
A server device;
A second relay device capable of communicating with the second communication device;
With
The first relay device
The server device is inquired about the state of the second relay device, and when the second relay device is in a state of accepting connection, a connection request is made to the second relay device and Holding means for dynamically establishing and holding a relay connection in
When a relay connection is established, a list of device names of communication devices connected to the LAN to which the first relay device belongs is transmitted to the second relay device and connected to the LAN to which the second relay device belongs. Means for exchanging the list of device names by receiving a list of device names of the communication devices received from the second relay device ;
The second communication device is connected to the LAN to which the second relay device belongs, and the data transmission that designates the device name of the second communication device associated with the second relay device in the exchanged list as the destination Means for receiving a request from the first communication device;
Equipped with a,
The first relay device relays and transmits data transmitted from the first communication device to the second relay device, so that the second relay device further relays data to the second communication device. A communication system.
請求項6に記載の通信システムにおいて、  The communication system according to claim 6,
前記第1通信装置と前記第2通信装置は、それぞれ異なるプライベートネットワークの中に配置されており、外部のネットワークからは前記第1通信装置および前記第2通信装置に対してTCPコネクションの接続要求が行なえないネットワーク構成となっていることを特徴とする通信システム。  The first communication device and the second communication device are arranged in different private networks, and an external network issues a connection request for a TCP connection to the first communication device and the second communication device. A communication system characterized by having a network configuration that cannot be performed.
請求項6に記載の通信システムにおいて、The communication system according to claim 6,
前記保持手段は、  The holding means is
通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、  Means for connecting and holding a relay connection with another relay device as specified by the communication device;
を含むことを特徴とする通信システム。A communication system comprising:
請求項6に記載の通信システムにおいて、  The communication system according to claim 6,
前記保持手段は、  The holding means is
通信装置からの指定によって他の中継装置との間で中継用コネクションを接続して保持する手段、  Means for connecting and holding a relay connection with another relay device as specified by the communication device;
を含み、Including
通信装置からの要求に対して既に該当する中継装置間で中継用コネクションが形成されている場合は、他の通信装置もそのコネクションを共用することを特徴とする通信システム。  A communication system characterized in that, when a relay connection is already formed between relay devices corresponding to a request from a communication device, the other communication devices also share the connection.
JP2006090690A 2006-03-29 2006-03-29 Relay device and communication system Active JP4492575B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006090690A JP4492575B2 (en) 2006-03-29 2006-03-29 Relay device and communication system
US11/723,466 US20070233844A1 (en) 2006-03-29 2007-03-20 Relay device and communication system
CN2007100890200A CN101047603B (en) 2006-03-29 2007-03-29 Relay device and communication system
US13/341,711 US8499083B2 (en) 2006-03-29 2011-12-30 Relay device and communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006090690A JP4492575B2 (en) 2006-03-29 2006-03-29 Relay device and communication system

Publications (2)

Publication Number Publication Date
JP2007267136A JP2007267136A (en) 2007-10-11
JP4492575B2 true JP4492575B2 (en) 2010-06-30

Family

ID=38639664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006090690A Active JP4492575B2 (en) 2006-03-29 2006-03-29 Relay device and communication system

Country Status (2)

Country Link
JP (1) JP4492575B2 (en)
CN (1) CN101047603B (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4222397B2 (en) 2006-09-12 2009-02-12 村田機械株式会社 Relay server
EP1912404B1 (en) 2006-10-11 2011-06-01 Murata Machinery, Ltd. File transfer server
DE602007012475D1 (en) 2006-10-11 2011-03-24 Murata Machinery Ltd relay server
EP1942634B1 (en) 2006-11-24 2012-08-29 Murata Machinery, Ltd. Relay server, relay communication system, and communication device
US8010647B2 (en) 2006-12-11 2011-08-30 Murata Machinery, Ltd. Relay server and relay communication system arranged to share resources between networks
JP4333736B2 (en) 2006-12-19 2009-09-16 村田機械株式会社 Relay server and client terminal
EP1990974A3 (en) 2007-05-02 2010-03-24 Murata Machinery, Ltd. Relay server and relay communication system
US8606941B2 (en) 2007-05-02 2013-12-10 Murata Machinery, Ltd. Relay server and relay communication system
EP1990975B1 (en) 2007-05-09 2013-02-20 Murata Machinery, Ltd. Relay server and relay communication system
JP4406850B2 (en) 2007-12-25 2010-02-03 村田機械株式会社 Relay server and relay communication system
JP4591875B2 (en) 2007-12-25 2010-12-01 村田機械株式会社 Relay server and relay communication system
JP4645915B2 (en) 2007-12-27 2011-03-09 村田機械株式会社 Relay server and relay communication system
JP4416035B2 (en) 2007-12-28 2010-02-17 村田機械株式会社 Relay server and relay communication system
TWI455547B (en) 2008-09-01 2014-10-01 Murata Machinery Ltd Relay server and relay communication system
EP2538624B1 (en) 2008-09-05 2014-06-25 Murata Machinery, Ltd. Communication apparatus for communicating via a first relay server with a second relay server
EP2432174B1 (en) 2009-05-15 2018-09-19 Murata Machinery, Ltd. Relay communication system and first relay server
JP5141638B2 (en) * 2009-05-15 2013-02-13 村田機械株式会社 Relay communication system
JP5212282B2 (en) * 2009-07-07 2013-06-19 村田機械株式会社 Relay communication system
JP5347894B2 (en) * 2009-10-14 2013-11-20 村田機械株式会社 Relay server and relay communication system
JP5636940B2 (en) * 2010-12-16 2014-12-10 村田機械株式会社 Relay communication system and relay server
JP5682782B2 (en) 2011-07-11 2015-03-11 村田機械株式会社 Relay server and relay communication system
JP5874356B2 (en) * 2011-11-30 2016-03-02 村田機械株式会社 Relay server and relay communication system
CN102693415A (en) * 2012-05-10 2012-09-26 上海烜炀生物科技有限公司 Online biology feature identification system
CN108141402A (en) * 2016-01-25 2018-06-08 三菱电机株式会社 Relay system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0690236A (en) * 1992-09-08 1994-03-29 Fujitsu Ltd Inter-lan connection control system
JPH10247946A (en) * 1997-03-03 1998-09-14 Nippon Telegr & Teleph Corp <Ntt> Network connection system, method and name server
JP2002217943A (en) * 2001-01-15 2002-08-02 Murata Mach Ltd Relay server and communication system
JP2003032310A (en) * 2001-07-16 2003-01-31 Murata Mach Ltd Relay server
JP2006050006A (en) * 2004-07-30 2006-02-16 Canon Inc Network connection setting apparatus and network connection setting method
JP2006067045A (en) * 2004-08-25 2006-03-09 Canon Inc Communications device, its control method and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6988199B2 (en) * 2000-07-07 2006-01-17 Message Secure Secure and reliable document delivery
JP3745616B2 (en) * 2000-11-24 2006-02-15 株式会社エヌ・ティ・ティ・ドコモ Relay device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0690236A (en) * 1992-09-08 1994-03-29 Fujitsu Ltd Inter-lan connection control system
JPH10247946A (en) * 1997-03-03 1998-09-14 Nippon Telegr & Teleph Corp <Ntt> Network connection system, method and name server
JP2002217943A (en) * 2001-01-15 2002-08-02 Murata Mach Ltd Relay server and communication system
JP2003032310A (en) * 2001-07-16 2003-01-31 Murata Mach Ltd Relay server
JP2006050006A (en) * 2004-07-30 2006-02-16 Canon Inc Network connection setting apparatus and network connection setting method
JP2006067045A (en) * 2004-08-25 2006-03-09 Canon Inc Communications device, its control method and program

Also Published As

Publication number Publication date
JP2007267136A (en) 2007-10-11
CN101047603A (en) 2007-10-03
CN101047603B (en) 2011-05-11

Similar Documents

Publication Publication Date Title
JP4492575B2 (en) Relay device and communication system
JP4333684B2 (en) Relay device and communication system
US20070233844A1 (en) Relay device and communication system
WO2011083785A1 (en) Network system and network redundancy method
JP4207078B2 (en) Relay server
JP2008098888A (en) Relay server
JP4115354B2 (en) Peer-to-peer communication system
US11621917B2 (en) Transparent multiplexing of IP endpoints
JP5682782B2 (en) Relay server and relay communication system
EP2699049A1 (en) Base station device and communication method for base station device
JP4535019B2 (en) Relay device and communication system
WO2017159645A1 (en) Network address translation device, setting requesting device, communication system, communication method and storage medium storing program
WO2016009505A1 (en) Communication method and communication system
JP4187036B2 (en) Relay server
JP2008258917A (en) Identical nat subordinate communication control system, nat device, identical nat subordinate communication control method, and program
JP2011055236A (en) Communication system, mapping information notification device, mapping information notification method and program
EP2600570B1 (en) Relay server and relay communication system
WO2019094103A1 (en) Session moderator for turn-pattern tcp-packet relay with websocket instantiation
JP6277676B2 (en) Router device, communication route selection method, and communication route selection program
JP4773312B2 (en) File transfer server
EP1689122A2 (en) System, method and program for movement management of a mobile node
JP2010166189A (en) Ip repeater, communication system, and tcp flow control method used for them
JP2007281811A (en) Gateway apparatus, information sharing system, and information sharing method
JP2007281684A (en) Gateway device, information sharing system, and method
CN103428083B (en) Information processor and image processing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090715

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100120

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100329

R150 Certificate of patent or registration of utility model

Ref document number: 4492575

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250