US20070233844A1 - Relay device and communication system - Google Patents
Relay device and communication system Download PDFInfo
- Publication number
- US20070233844A1 US20070233844A1 US11/723,466 US72346607A US2007233844A1 US 20070233844 A1 US20070233844 A1 US 20070233844A1 US 72346607 A US72346607 A US 72346607A US 2007233844 A1 US2007233844 A1 US 2007233844A1
- Authority
- US
- United States
- Prior art keywords
- relay
- relay device
- communication
- 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.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Definitions
- the present invention relates to technology for relaying data transmitted and received between communication devices.
- VPN Virtual Private Network
- data transmitted from a terminal located inside a private network can be relayed to a terminal located in another private network via the Internet.
- LAN Local Area Network
- LAN of a headquarter office and a LAN of a branch office via the VPN
- data can be relayed between terminals connected to different LANs via the Internet.
- TCP Transmission Control Protocol
- the technology such as the VPN is basically technology for establishing a connection between networks, for example, between a LAN and a LAN, and is not technology for establishing a connection between individual terminals. Therefore, the technology such as the VPN is technology for enabling communication to be carried out between networks in which the VPN is developed as an infrastructure, and is not technology for supporting a case in which an individual personally demands a communication with a specific network.
- performance of a relay device may decrease due to a fact that resources may become insufficient when a plurality of connections are generated according to the request from terminals.
- preferred embodiments of the present invention provide a system in which relaying of data between networks connected via the Internet can be set dynamically.
- Preferred embodiments of the present invention also provide a system in which relaying of data between networks connected via the Internet can be set dynamically according to a request of each terminal.
- a relay device can carry out communication with a first communication device, and includes a relay unit and a holding unit.
- the relay unit relays data received from the first communication device to another relay device.
- the holding unit inquires a status of the other relay device to a server device.
- the holding unit carries out a connection request to the other relay device, dynamically establishes a relay connection with the other relay device, and holds the established relay connection.
- the other relay device can carry out communication with a second communication device.
- the relay device relays the data received from the first communication device to the other relay device to further relay the data to the second communication device.
- the holding unit also establishes relay connections with a plurality of relay devices, and the relay unit uses the plurality of the relay connections to relay the data to the plurality of the relay devices.
- the holding unit can separately disconnect the relay connections held with the plurality of the relay devices.
- a communication system for relaying data between terminals includes a first relay device that can carry out communication with a first communication device, a server device, and a second relay device that can carry out communication with a second communication device.
- the first relay device includes a holding unit.
- the holding unit inquires a status of the second relay device to the server device and the second relay device is capable of accepting a connection
- the holding unit carries out a connection request to the second relay device, dynamically establishes a relay connection with the second relay device, and holds the established relay connection.
- the first relay device relays data received from the first communication device to the second relay device, and the second relay device further relays the data to the second communication device.
- the first communication device and the second communication device are respectively provided in different private networks. Accordingly, a connection request for a TCP connection cannot be carried out to the first communication device and the second communication device from an external network.
- a relay device can carry out communication with a first communication device.
- the relay device includes an accepting unit and a holding unit.
- the accepting unit accepts a relay transmission instruction designating another relay device from the first communication device.
- the holding unit inquires a status of the other relay device to the server device.
- the holding unit carries out a connection request to the other relay device, dynamically establishes a relay connection with the other relay device, and holds the established relay connection.
- the other relay device can carry out communication with a second communication device.
- the relay device relays data received from the first communication device to the other relay device, and the other relay device further relays the data to the second communication device.
- the holding unit When the other relay device is incapable of accepting a connection, the holding unit notifies such a connection impossible state to the first communication device.
- the holding unit receives a notification from the server device that the other relay device has become capable of accepting a connection, the holding unit notifies a connection possible state to the first communication device.
- a communication system for relaying data between terminals includes a first relay device that can carry out communication with a first communication device, a server device, and a second relay device that can carry out communication with a second communication device.
- the first relay device includes an accepting unit and a holding unit.
- the accepting unit accepts a relay instruction of data designating the second relay device from the first communication device.
- the holding unit inquires a status of the second relay device to the server device.
- the holding unit carries out a connection request to the second relay device, dynamically establishes a relay connection with the second relay device, and holds the established relay connection.
- the first relay device relays data received from the first communication device to the second relay device so that the second relay device can further relay the data to the second communication device.
- the first communication device and the second communication device are respectively provided in different private networks.
- a connection request for a TCP connection cannot be carried out to the first communication device and the second communication device from an external network.
- a relay device can carry out communication with a first communication device.
- the relay device includes an accepting unit and a holding unit.
- the accepting unit accepts a relay transmission instruction designating another relay device from the first communication device.
- the holding unit inquires a status of the other relay device to the server device.
- the holding unit dynamically establishes a relay connection with the other relay device, and holds the established relay connection.
- the holding unit sets such relay connection to be shared with the first communication device.
- the other relay device can carry out communication with the second communication device.
- the relay device relays data received from the first communication device to the other relay device, and the other relay device further relays the data to the second communication device.
- the holding unit disconnects the relay connection held with the other relay device.
- a communication system for relaying data between terminals includes a first relay device that can carry out communication with a first communication device, a server device, and a second relay device that can carry out communication with the second communication device.
- the first relay device includes an accepting unit and a holding unit.
- the accepting unit accepts a relay transmission instruction of data designating the second relay device from the first communication device.
- the holding unit inquires a status of the second relay device to the server device.
- the holding unit dynamically establishes a relay connection with the second relay device and holds the established relay connection.
- the holding unit sets such relay connection to be shared with the first communication device.
- the first relay device relays data received from the first communication device to the second relay device, and the second relay device further relays the data to the second communication device.
- the first communication device and the second communication device are respectively provided in different private networks.
- a connection request for a TCP connection cannot be carried out to the first communication device and the second communication device from an external network.
- the relay device of the present invention inquires a status of another relay device to the server device.
- the relay device When the other relay device is capable of accepting a connection, the relay device carries out a connection request, and establishes and holds a relay connection with the other relay device. Therefore, a communication device, which can carry out communication with the relay device, can carry out communication via the private network with a communication device, which can carry out communication with the other relay device.
- the relay device of the present invention can establish a relay connection with a plurality of relay devices, and hold the established relay connections. Therefore, when communication devices to which communication is to be carried out belong to different networks, a plurality of connections can be generated independently.
- the relay device of the present invention can independently disconnect each of the relay connections being held with a plurality of the relay devices. Therefore, the relay device of the present invention can maintain only the connections that are necessary for communication, and resources can be utilized efficiently.
- the relay device of the present invention accepts a relay transmission instruction designating the other relay device from the first communication device, and inquires a status of the other relay device to the server device.
- the relay device dynamically establishes a relay connection with the other relay device and holds the established relay connection. Therefore, by carrying out a request designating a relay destination to the relay device of the present invention, a communication device, which can carry out communication with the relay device of the present invention, can carry out communication with a communication device, which can carry out communication with the other relay device. Since a connection is established between the relay devices according to a request from the communication device, a network of a communication destination can be selected and a connection can be established more dynamically.
- the relay device When receiving a notification from the server device that the other relay device has become capable of accepting a connection, the relay device notifies a connection possible state to the first communication device. Accordingly, at a point of time when a preparation is completed at the relay destination, a relay transmission can be started immediately.
- a terminal which has carried out a connection request to the relay device, can exclusively use the established connection.
- the relay device of the present invention accepts a relay transmission instruction designating another relay device from the first communication device.
- the relay device of the present invention sets the first communication device to share the already established relay connection. Therefore, by carrying out a request designating a relay destination to the relay device of the present invention, a communication device, which can carry out communication with the relay device of the present invention, can carry out communication with a communication device, which can carry out communication with the other relay device.
- the already established relay connection is shared. Therefore, processing load for establishing a connection can be reduced, and resources can be saved.
- the relay connection established with the other relay device is maintained. Accordingly, an end of communication of one communication device does not influence a communication of another communication device.
- a communication device sharing the relay connection can use the relay connection until the communication of the communication device itself is completed.
- FIG. 1 illustrates a configuration of a communication system according to a first preferred embodiment of the present invention.
- FIG. 2 illustrates a registration example of a relay device database.
- FIG. 3 is a flowchart illustrating a processing carried out in the communication system according to the first preferred embodiment of the present invention.
- FIG. 4 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device.
- FIG. 5 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device.
- FIG. 6 illustrates an imaginary state in which a plurality of relay connections are established.
- FIG. 7 illustrates a configuration of a communication system according to a second preferred embodiment of the present invention.
- FIG. 8 illustrates a registration example of a relay connection database.
- FIG. 9 is a flowchart illustrating a processing carried out in the communication system according to the second preferred embodiment of the present invention.
- FIG. 10 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device.
- FIG. 11 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device.
- FIG. 12 illustrates a registration example of a relay connection database.
- FIG. 13 is a flowchart illustrating a processing carried out in a communication system according to a third preferred embodiment of the present invention.
- FIG. 14 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device.
- FIG. 15 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device.
- FIG. 1 illustrates a configuration of a communication system according to a first preferred embodiment.
- two Local Area Networks (LANs) 10 and 20 are connected via a Wide Area Network (WAN) 30 .
- LANs 10 and 20 are an in-house LAN of a company
- 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.
- two communication devices 11 and 12 and a relay device 15 are connected in the LAN 10 .
- the LAN 10 is connected to the WAN 30 via a gateway (GW) 16 .
- Two communication devices 21 and 22 and a relay device 25 are connected in the LAN 20 .
- the LAN 20 is connected to the WAN 30 via a gateway 26 .
- the communication devices 11 and 12 are terminals such as personal computers, and include a network function. Specifically, each of the communication devices 11 and 12 includes a Transmission Control Protocol/Internet Protocol (TCP/IP), and uses the TCP/IP to carry out communication with the relay device 15 and other computers or the like connected to the LAN 10 . In the same manner, each of the communication devices 21 and 22 includes a TCP/IP, and uses the TCP/IP to carry out communication with the relay device 25 and other computers or the like connected to the LAN 20 . The relay devices 15 and 25 and the gateways 16 and 26 can also carry out communication by the TCP/IP.
- TCP/IP Transmission Control Protocol/Internet Protocol
- each of the communication devices 21 and 22 includes a TCP/IP, and uses the TCP/IP to carry out communication with the relay device 25 and other computers or the like connected to the LAN 20 .
- the relay devices 15 and 25 and the gateways 16 and 26 can also carry out communication by the TCP/IP.
- a server device 35 is connected to the WAN 30 .
- the WAN 30 is a public network such as the Internet. Therefore, a terminal connected to the LAN 10 , the LAN 20 , or the WAN 30 can establish a TCP connection by designating a global IP address of the server device 35 .
- a private IP address is assigned to the communication devices 11 and 12 and the relay device 15 connected to the LAN 10 and the communication devices 21 and 22 and the relay device 25 connected to the LAN 20 .
- the gateways 16 and 26 function as a firewall, and a connection cannot be established directly from an external network by designating a terminal located inside of the network. Therefore, a terminal or the like connected to the WAN 30 has restrictions when carrying out a TCP connection request to the relay device 15 or 25 .
- the gateways 16 and 26 are set such that communication designating a specific port corresponding to the relay servers 15 and 25 can be carried out to the gateways 16 and 26 , respectively.
- SIP Session Initiation Protocol
- FIG. 2 illustrates a registration example of a relay device database 351 managed by the server device 35 .
- the relay devices A, B, and C are device names that are assigned to the relay device 15 or the relay device 25 , for example.
- Flags of a Uniform Resource Locator (URL), an IP address, and a login status are set for each of the relay devices A, B, and C.
- URL Uniform Resource Locator
- An IP address of each of the relay devices registered in the relay device database 351 is not an IP address in a private network, but is a global IP address converted by a gateway by a function such as a Network Address Translation (NAT) or an IP masquerade.
- the relay device 15 is assigned with a private address in the LAN 10 .
- the IP address assigned to the relay device 15 is converted into a global IP address by the gateway 16 .
- Each of the relay devices A through C establishes a connection with the server device 35 , and logs into the server device 35 .
- a “status” field of the relay device database 351 stores information indicating whether each of the relay devices A through C is currently under a logged-in status or a logged-out status with respect to the server device 35 .
- the server device 35 determines that a TCP connection is prepared to be established between the logged-in relay devices.
- a status in which the relay device is logged in the server device 35 indicates a status in which the relay device is capable of accepting a TCP connection request transmitted from another terminal.
- FIG. 3 illustrates a flow of the processing of the entire communication system including the relay devices 15 and 25 and the server device 35 .
- a Session Initiation Protocol (SIP) is used for communication between the relay device 15 and the server device 35 , and between the relay device 25 and the server device 35 .
- SIP Session Initiation Protocol
- other protocols may also be used.
- Each of the relay devices 15 and 25 transmits a “REGISTER request message” of the SIP to the server device 35 at initialization or periodically to notify position information (for example, an IP address, and/or a port number) of the relay device to the server device 35 .
- the server device 35 manages the relay device database 351 illustrated in FIG. 2 according to the notified position information.
- the server device 35 can carry out communication with each of the relay devices over the gateway according to the position information.
- the relay device 15 and the relay device 25 are logged in the server device 35 .
- the relay device 25 notifies logout status information to the server device 35 (step S 101 ), and the server device 35 responds to the notification (step S 102 ).
- the server device 35 executes a 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”.
- step S 103 when the relay device 15 carries out a notification request of the status information to the server device 35 (step S 103 ), the server device 35 carries out a response (step S 104 ), and notifies that the relay device 25 is logged-out (step S 105 ). The relay device 15 responds to this notification (step S 106 ).
- the relay device 25 notifies login status information to the server device 35 (step S 107 ), and the server device 35 responds to the notification (step S 108 ).
- the server device 35 executes the login processing of the relay device 25 , and updates the “status” field of the relay device database 351 to “login”. Furthermore, the server device 35 notifies the relay device 15 that the relay device 25 has logged in (step S 109 ). The relay device 15 responds to this notification (step S 110 ).
- this connection request is an “INVITE request message” of the SIP, and includes TCP connection information in a body portion following a blank line.
- the connection request includes an IP address (200.1.1.1) and a TCP port number (6109) or the like of the relay device 15 (transmitter).
- the server device 35 relays the connection request to the relay device 25 (step S 112 ).
- the relay device 25 which has received the connection request, transmits a response to the server device 35 to permit a connection (step S 113 ). As illustrated in FIG.
- this response is “200 OK response message” of the SIP, and includes TCP connection information in a body portion following a blank line.
- the response includes an IP address (200.2.2.2) and a TCP port number (7109) or the like of the relay device 25 (transmitter).
- the server device 35 relays the response to the relay device 15 (step S 114 ).
- the relay device 15 and the relay device 25 use the INVITE request and the OK response of the SIP to exchange TCP connection information, and carry out a negotiation for establishing a TCP connection.
- the relay device 15 transmits a TCP connection request to the relay device 25 (step S 115 ). Accordingly, a TCP connection is established between the relay device 15 and the relay device 25 .
- the above-described processing is executed by a network administrator of the LAN 10 or the LAN 20 , for example. That is, in order to prepare such that a connection with another LAN can be carried out dynamically, a relay device in a network is logged into the server device 35 by the network administrator as illustrated at step S 107 . Accordingly, a preparation is completed for receiving a TCP connection request from another relay device.
- the network administrator wishes to carry out a connection with another LAN, the network administrator accesses the server device 35 , and acquires status of a destination relay device. When the network administrator learns that the destination relay device is under a logged-in status, the network administrator transmits a connection request to the server device 35 .
- the relay device 15 transmits an INVITE request of the SIP via the server device 35 to establish a TCP connection (media session) for relaying.
- a relay channel as a media session is generated by a call control protocol, a relay communication channel can be established dynamically.
- the relay device 15 and the relay device 25 hold the established TCP connection.
- the relay device 15 receives data from the communication device 11 , 12 or the like to be transmitted to the communication device 21 , 22 or the like, the relay device 15 relays the received data to the relay device 25 (step S 116 ).
- the relay device 25 further relays the relayed data to the communication device 21 , 22 or the like. Data transmitted from the communication device 21 , 22 or the like is also relayed to the communication device 11 , 12 , or the like via the relay device 25 and the relay device 15 (step S 117 ).
- each of the relay devices 15 and 25 manages a list of device names of communication devices connected to each of the LANs 10 and 20 , respectively.
- the relay device 15 and the relay device 25 exchange the list.
- a device name of a relay device of a LAN of a transmission destination and a device name of a communication device of the transmission destination are designated.
- a unique device name (registered in the relay device database 351 ) is assigned to a relay device using such a communication system, by designating both the device name of the relay device and the device name of the communication device, the communication device of the transmission destination can be identified uniquely. For example, a name such as “communication device name@relay device name” may be used.
- Each relay device knows an association between a communication device name and an IP address for a communication device connected to the LAN to which the relay device itself is also connected. Therefore, the relay device can relay data to a communication device designated by “communication device name@relay device name”.
- the relay device 15 transmits a disconnection request for the relay device 25 to the server device 35 (step S 118 ).
- the server device 35 relays the disconnection request to the relay device 25 (step S 119 ).
- a response from the relay device 25 is transmitted to the server device 35 (step S 120 ), and relayed to the relay device 15 (step S 121 ).
- FIG. 4 is a flowchart focusing on a processing carried out by the relay device 15 in the processing described with reference to FIG. 3 .
- the relay device 15 transmits a starting request for starting a relay connection to the server device 35 (step S 201 ).
- the relay-device 25 is designated as the relay destination in the starting request.
- the relay device 15 stands by until receiving a login notification (step S 203 ).
- the process proceeds onto step S 204 .
- the relay device 15 When a determination is made at step S 202 that the relay device 25 of the relay destination is logged in, the relay device 15 generates TCP connection information (step S 204 ), and transmits a connection request (step S 205 ). Then, the relay device 15 stands by for a response from the relay device 25 (step S 206 ). When receiving a response (step S 206 : YES), the relay device 15 analyzes the TCP connection information included in the received response (step S 207 ). That is, the relay device 15 acquires port number information or the like included in the response transmitted from the relay device 25 . Then, the relay device 15 carries out a TCP connection with the relay device 25 (step S 208 ).
- step S 209 Under a state in which a TCP connection is established and held, when the communication device 11 or the like transmits relay data (step S 209 : YES), the relay device 15 relays the data to the communication device 21 or the like (step S 210 ).
- step S 211 When the relay device 15 receives relay data to be relayed to the communication device 11 or the like (step S 211 : YES), the relay device 15 relays the data to the communication device 11 or the like of the relay destination (step S 212 ).
- step S 213 YES
- the relay device 15 transmits a response (step S 214 ) and disconnects the TCP connection (step S 215 ).
- the relay device 15 transmits a disconnection request to the relay device 25 (step S 217 ).
- the relay device 15 receives a response (step S 218 : YES)
- the relay device 15 disconnects the TCP connection (step S 219 ).
- FIG. 5 is a flowchart focusing on a processing carried out by the relay device 25 in the processing described with reference to FIG. 3 .
- a network administrator of the LAN 20 determines whether or not to prepare for establishing a connection with another LAN.
- an operation is performed for validating a relay function of the relay device 25 .
- the relay device 25 transmits a login command to the server device 35 (step S 302 ).
- the relay device 25 receives a response from the server device 35 (step S 303 ), and a processing for validating the relay function is completed.
- the relay device 15 dynamically establishes a TCP connection with the relay device 25 .
- data can be transmitted and received via the WAN 30 such as the Internet.
- the WAN 30 such as the Internet.
- LANs may be connected fixedly by using the conventionally used VPN.
- the communication system of the present preferred embodiment can be used.
- the relay device when a connection environment (an IP address and/or a port number) of the relay device of the other party is changed, the relay device carries out a negotiation first (steps S 111 through S 114 ). Therefore, a connection for relaying data can be established reliably.
- the relay devices 15 and 25 of the present preferred embodiment can establish a TCP connection with a plurality of relay devices.
- the relay device 15 can establish a separate TCP connection with each of 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 carried out with respect to the relay device 25 .
- Each of the relay devices 15 and 25 or the like establishes a TCP connection with a plurality of relay devices, and relays data to the plurality of the relay devices.
- 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 .
- a method for disconnecting the TCP connection established with each of the relay devices 45 and 55 is also the same as the processing carried out with respect to the relay device 25 . That is, a TCP connection can be established independently with each of the plurality of the relay devices 25 , 45 , and 55 , and the TCP connection can be disconnected independently.
- the communication system of the present preferred embodiment when a plurality of LANs are connected, the plurality of the LANs are connected as one VPN. Meanwhile, according to the communication system of the present preferred embodiment, a connection is established independently with just a relay device to which a communication is to be carried out, and a connection established with a relay device to which a communication is no longer necessary to be carried out can be disconnected independently. Therefore, efficient communication system can be constituted without consuming unnecessary resources.
- a connection is established dynamically between relay devices according to an instruction from a network administrator.
- a connection is established between relay devices according to a designation from a communication device.
- a network administrator by predicting a status of communication to be generated between the communication devices, a network administrator carries out an operation for establishing or disconnecting a connection between the relay devices.
- a control is carried out to establish or disconnect a connection between the relay devices more dynamically according to a communication processing that generates from a communication device.
- FIG. 7 illustrates an example of a configuration of a communication system according to the second preferred embodiment of the present invention.
- a LAN 40 is added to the system configuration illustrated in FIG. 1 .
- the basic system configuration illustrated in FIG. 7 is the same as the first preferred embodiment.
- a communication device 41 and a relay device 45 are connected to the LAN 40 , and the LAN 40 is connected to a WAN 30 via a gateway 46 .
- the relay devices 15 , 25 , and 45 include relay connection databases 151 , 251 , and 451 , respectively.
- FIG. 8 illustrates an example of registration of the relay connection database 151 stored in the relay device 15 .
- the relay connection database 151 is a database for managing a TCP connection currently established by the relay device 15 .
- a “client” field stores a setting of a device name of a communication device that has requested a connection to be established with a relay device (hereinafter referred to as a “requesting communication device”).
- a relay device hereinafter referred to as a “requesting communication device”.
- “ClientX” and “ClientY” in FIG. 8 are a device name assigned to the communication device 11 , 21 or the like.
- “Relay destination URL” and “IP address” fields store a setting of a URL and an IP address of a relay device of a relay destination, respectively.
- Connection number” field stores a setting of a port number of a generated TCP connection.
- “Generated time” field stores a setting of time when a TCP connection has been established.
- a TCP connection is established with a relay device of a communication destination.
- a device that can use such a TCP connection for carrying out communication is only the requesting communication device. That is, as illustrated in FIG. 8 , one-to-one relation is established for a communication device and a TCP connection.
- the contents of the relay connection databases 251 and 451 are the same as the relay connection databases 151 illustrated in FIG. 8 .
- the relay connection databases 251 and 451 include registration of a status of a TCP connection currently established by the relay devices 25 and 45 , respectively.
- FIG. 9 illustrates a flow of the processing of the entire communication system including the communication devices 11 and 12 , the relay devices 15 and 25 , and the server device 35 . Further, in the following description, a description will be made of an example in which the SIP is used for the communication between the relay devices 15 and the server device 35 and between the server device 35 and the relay device 25 . However, other protocols may also be used.
- each of the relay devices 15 and 25 transmits a “REGISTER request message” of the SIP to the server device 35 at initialization or periodically to notify position information (for example, an IP address and/or a port number) of the relay device to the server device 35 .
- position information for example, an IP address and/or a port number
- FIG. 9 under an initial state, the relay device 15 and the relay device 25 are logged in the server device 35 .
- the relay device 25 notifies logout status information to the server device 35 (step S 401 ), and the server device 35 responds to the notified logout status information (step S 402 ).
- the server device 35 executes a 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”.
- the communication device 11 transmits a relay transmission request of data and a status confirmation request, which designate the relay device 25 , to the relay device 15 (step S 403 ).
- the relay device 15 carries out a notification request of the status information to the server device 35 (step S 404 )
- the server device 35 carries out a response (step S 405 ) and notifies the relay device 15 that the relay device 25 is logged out (step S 406 ).
- the relay device 15 responds to the notification (step S 407 ).
- the relay device 15 notifies the communication device 11 that the relay device 25 is a logged out (step S 408 ). Accordingly, the communication device 11 stands by until the relay device 25 logs in.
- the relay device 25 notifies login status information to the server device 35 (step S 409 ), and the server device 35 responds to the notified login status information (step S 410 ).
- the server device 35 executes a login processing of the relay device 25 , and updates the “status” field of the relay device database 351 to “login”.
- the server device 35 also notifies the relay device 15 that the relay device 25 has logged in (step S 411 ).
- the relay device 15 responds to the notification (step S 412 ).
- the relay device 15 notifies the communication device 11 that the relay device 25 has logged in (step S 413 ).
- the communication device 11 When the communication device 11 , which has been on standby, receives the notification carried out at step S 413 , the communication device 11 carries out a relay transmission request again designating the relay device 25 (step S 414 ). Further, in the second preferred embodiment, the communication device 11 is provided to standby until receiving a notification that the relay device 25 has logged in. However, as another preferred embodiment, without standing by for such a notification, the communication device 11 may periodically transmit a relay transmission request to the relay device 15 .
- the relay device 15 When the relay device 15 receives 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 (step S 415 ).
- the connection request is an “INVITE request message” of the SIP, and includes TCP connection information.
- the server device 35 relays the connection request to the relay device 25 (step S 416 ).
- the relay device 25 transmits a response to the server device 25 to permit a connection (step S 417 ).
- the response is “200 OK response message” of the SIP, and includes TCP connection information.
- the server device 35 relays the response to the relay device 15 (step S 418 ).
- the relay device 15 and the relay device 25 exchange the TCP connection information as described above.
- the relay device 15 transmits a TCP connection request to the relay device 25 (step S 419 ). Accordingly, a TCP connection is established between the relay device 15 and the relay device 25 .
- the above-described processing is carried out dynamically, for example, when a communication processing from the communication device 11 to the communication device 21 generates. That is, the relay devices are not connected fixedly, but a connection is carried out when traffic generates. However, in order to prepare for a connection request from a relay device of another end, a network administrator is required to be prepared by logging a relay device within a network into the server device 35 as illustrated at step S 409 .
- the relay device 15 receives an instruction from the communication device 11 , and the relay device 15 transmits an INVITE request of the SIP via the server device 35 to establish a relay TCP connection (media session). That is, at a point of time when a connection request from a communication device generates, since a relay channel as a media session is generated by a call control protocol, a relay communication channel can be established dynamically.
- the relay device 15 and the relay device 25 hold the established TCP connection.
- the communication device 11 transmits data addressed to the communication device 21 , 22 or the like (step S 421 )
- the relay device 15 relays the data to the relay device 25 (step S 422 ).
- the relay device 25 further relays the relayed data to the communication device 21 , 22 or the like.
- the data transmitted from the communication device 21 , 22 or the like is relayed to the relay device 15 via the relay device 25 in the same manner (step S 423 ) and relayed further to the communication device 11 via the relay device 15 (step S 424 ).
- the communication device 11 transmits a disconnection instruction to the relay device 15 (step S 425 ).
- the relay device 15 transmits a disconnection request for the relay device 25 to the server device 35 (step S 426 ).
- the server device 35 relays the received disconnection request to the relay device 25 (step S 427 ).
- a response from the relay device 25 is transmitted to the server device 35 (step S 428 ) and relayed to the relay device 15 (step S 429 ). Accordingly, 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 the TCP connection has been disconnected (step S 430 ).
- step S 431 when another communication device 12 carries out a relay transmission request designating the relay device 25 again (step S 431 ), a connection request is transmitted from the relay device 15 to the server device 35 (step S 432 ).
- step S 432 when the relay device 25 is under a logged-out status, the server device 35 notifies the logged-out status (step S 433 ), and the communication device 12 is notified that the relay device 25 is under a logged-out status.
- the communication device 12 when the relay device 25 logs in, the communication device 12 carries out a relay transmission request to the relay device 25 again. Accordingly, a TCP connection is established between the relay device 15 and the relay device 25 .
- FIG. 10 is a flowchart focusing on a processing carried out by the relay device 15 in the processing described with reference to FIG. 9 .
- the relay device 15 confirms whether or not a relay instruction from the communication device 11 , 12 or the like is generated (step S 501 ).
- the relay device 15 confirms whether or not a status monitoring instruction is generated (step S 502 ).
- the relay device 15 checks whether or not the relay device of the relay destination is logged in (step S 503 ).
- the relay device 15 confirms that the relay device of the relay destination is logged out (step S 503 : NO)
- the relay device 15 stands by until receiving a login notification (step S 504 ).
- stepS 504 When receiving a notification from the server device 35 indicating that the relay device of the relay destination has logged in (stepS 504 : YES), the relay device 15 notifies the requesting communication device that the relay destination has logged in (step S 505 ). Then, the relay device 15 stands by until receiving a relay instruction from the communication device 11 , 12 or the like again (step S 506 ). When the relay device 15 receives a relay instruction, the process proceeds onto step S 508 . When a determination is made at step S 503 that the relay device of the relay destination is logged in, the process proceeds immediately onto step S 508 .
- step S 502 When a status monitoring instruction is not included in the request from the communication device (step S 502 : NO), if the relay destination is logged in (step S 507 : YES), the process proceeds onto step S 508 . If the relay destination is not logged in, the process returns to step S 502 and the processing is repeated. That is, when a status monitoring instruction has been received from a requesting communication device, the relay device 15 monitors the relay device of the relay destination until the relay device of the relay destination logs in. When receiving a notification that the relay device of the relay destination has logged in, the relay device 15 notifies such information also to the requesting communication device.
- the relay device 15 generates TCP connection information (step S 508 ) and transmits a connection request (step S 509 ).
- the relay device 15 stands by until receiving a response from the relay device 25 (step S 510 ).
- the relay device 15 carries out an error notification to the requesting communication device (step S 511 ).
- the process returns to step S 501 and the processing is repeated.
- the relay device 15 analyzes the TCP connection information included in the received response (step S 512 ). That is, the relay device 15 acquires port number information or the like included in the response transmitted from the relay device 25 .
- the relay device 15 carries out a TCP connection to the relay device 25 (step S 513 ).
- the relay device 15 notifies the requesting communication device that a connection has been established with the relay destination (step S 514 ).
- the relay device 15 registers information of the newly established TCP connection in the relay connection database 151 (step S 515 ).
- step S 516 when relay data is transmitted from the communication device 11 or the like (step S 516 : YES), the relay device 15 relays the data to the communication device 21 or the like (step S 517 ).
- step S 518 When receiving relay data to be relayed to the communication device 11 or the like (step S 518 : YES), the relay device 15 relays the data to the communication device 11 or the like of the relay destination (step S 519 ).
- step S 520 When receiving a disconnection request from the relay device 25 (step S 520 : YES), the relay device 15 transmits a response (step S 521 ) and disconnects the TCP connection (step S 522 ).
- the relay device 15 transmits a disconnection request to the relay device 25 of the relay destination (step S 524 ).
- the relay device 15 disconnects the TCP connection (step S 526 ). Then, the relay device 15 notifies the requesting communication device that a connection with the relay destination has been disconnected (step S 527 ), and the information of the TCP connection registered in the relay connection database 151 is deleted (step S 528 ).
- a TCP connection is established dynamically with the relay device of the relay destination, and communication can be carried out between private networks.
- a connection necessary for such communication is established. Therefore, resources can be utilized efficiently.
- a communication connection is established according to a request from a certain communication device
- only such a requesting communication device is permitted to use the established communication connection.
- a TCP connection is established between the relay device 15 and the relay device 25 according to the request.
- the established TCP connection is used only for the communication between the communication device 11 and the communication device 21 .
- the relay device 15 and the relay device 25 use the TCP connection just for relaying the data transmitted and received between the communication device 11 and the communication device 21 . Therefore, a connection established according to a request from a certain communication device is used exclusively by such a communication device.
- a connection is carried out between relay devices according to a request from a communication device.
- another communication device shares the already established connection. This feature differs from the second preferred embodiment.
- a description will be made primarily of aspects that are different from the second preferred embodiment.
- FIG. 12 illustrates an example of registration of the relay connection database 151 stored in the relay device 15 .
- a plurality of clients (communication devices) are associated with one TCP connection.
- a relay transmission request has generated from two communication devices (ClientX and ClientY), and both of the communication devices designate the same relay device (Relayserver1@sample.net). Therefore, the two communication devices are sharing a TCP connection with a connection number 49583.
- the contents of the relay connection databases 251 and 451 stored in the relay devices 25 and 45 , respectively, are the same as the relay connection database 151 illustrated in FIG. 12 .
- the relay connection databases 251 and 451 store a status of a TCP connection currently established by the relay devices 25 and 45 , respectively.
- FIG. 13 illustrates a flow of a processing of the entire communication system including the communication devices 11 and 12 , the relay devices 15 and 25 , and the server device 35 . Further, in the following description, a description will be made of an example in which the SIP is used for the communication between the relay device 15 and the server device 35 , and between the server device 35 and the relay device 25 . However, other protocols may also be used.
- step S 701 to step S 724 in FIG. 13 corresponds to the processing from step S 401 to step S 424 in FIG. 9 . Since the processing is the same, a description will be omitted. That is, the communication device 11 generates a relay transmission request designating the relay device 25 , and a TCP connection is established between the relay device 15 and the relay device 25 . Then, data is transmitted and received between the communication device 11 and the communication device 21 or the like.
- a different communication device 12 carries out a relay transmission request designating the relay device 25 again (step S 725 ). Since the TCP connection is currently being established between the relay device 15 and the relay device 25 , the relay device 15 notifies the communication device 12 that a relay transmission of the data can be carried out (step S 726 ). Accordingly, when data is transmitted from the communication device 12 (step S 727 ), the relay device 15 uses the already established TCP connection to relay the data transmitted from the communication device 12 to the relay device 25 (step S 728 ). The relay device 25 also uses the already established TCP connection for relaying the data, which has been transmitted from the communication device 21 or the like to the communication device 12 , to the relay device 15 (step S 729 ). The relay device 15 further transmits the received data to the communication device 12 (step S 730 ).
- a TCP connection is already established between the relay devices, and when the already established TCP connection can be used for a newly generated relay transmission request, a new TCP connection is not established.
- a plurality of communication terminals share the same TCP connection. Accordingly, load required for establishing a TCP connection can be reduced, and communication between different networks can be carried out under higher speed.
- resources of the relay device can be saved. For example, when carrying out communication via the Internet between a plurality of communication terminals connected to the LAN 10 and a plurality of communication terminals connected to the LAN 20 , an increase in the processing speed and saving of the resources are possible and efficient.
- the above-described third preferred embodiment is also efficient when data volume to be relayed from one communication device is small.
- the communication device 11 transmits a disconnection instruction to the relay device 15 (step S 731 ). Since the communication device 12 is using the same TCP connection, the relay device 15 does not carry out a processing in particular with respect to the disconnection instruction of step S 731 , and just carries out a response (step S 732 ).
- the communication device 12 transmits a disconnection instruction to the relay device 15 (step S 733 ). Since the relay device 15 has already received the disconnection instruction from the communication device 11 , the relay device 15 can determine that the shared TCP connection has become unnecessary. Therefore, the relay device 15 transmits a disconnection request for the relay device 25 to the server device 35 (step S 734 ). The server device 35 relays the disconnection request to the relay device 25 (step S 735 ). The relay device 25 transmits a response to the server device 35 (step S 736 ). Then, the server device 35 relays the response to the relay device 15 (step S 737 ). Accordingly, 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 the TCP connection has been disconnected (step S 738 ).
- FIG. 14 is a flowchart focusing on a processing carried out by the relay device 15 in the processing described with reference to FIG. 13 .
- the relay device 15 confirms whether or not a relay instruction from the communication device 11 or 12 or the like has generated (step S 801 ).
- the relay device 15 confirms whether or not a TCP connection is already established with a relay device of a relay destination (step S 802 ). That is, the relay device 15 confirms whether or not the same relay device has already been designated by another communication device and a communication is being carried out with such a relay device.
- the relay device 15 When a connection is already established with the already instructed relay destination (step S 802 : YES), the relay device 15 notifies that data can be relayed to a requesting communication device (step S 815 ). Then, the relay device 15 updates the information of the relay connection database 151 (step S 816 ). That is, since information regarding the TCP connection is already registered in the relay connection database 151 , the relay device 15 just adds a client (communication device). In the example illustrated in FIG. 12 , for example, when ClientX and a TCP connection with a connection number 49583 are associated and stored, the relay device 15 carries out a processing for adding ClientY to the “client” field of such record.
- the relay device 15 executes the processing from step S 803 to step S 814 .
- This processing corresponds to the processing from step S 502 to step S 513 in FIG. 10 . Since the processing is the same, a description will be omitted.
- step S 817 When a state in which a TCP connection is established and held, when relay data is transmitted from the communication device 11 or the like (step S 817 : YES), the data is relayed to the communication device 21 or the like (step S 818 ).
- step S 819 When receiving relay data to be relayed to the communication device 11 or the like (step S 819 : YES), the relay device 15 relays the data to the communication device 11 or the like of the relay destination (step S 820 ).
- step S 821 When receiving a disconnection request from the relay device 25 of the relay destination (step S 821 : YES), the relay device 15 transmits a response (step S 822 ) and disconnects the TCP connection (step S 823 ).
- the relay device 15 notifies the communication device to which relay transmission is being carried out that the connection with the relay destination has been disconnected to (step S 824 ).
- the disconnection is notified to all of the communication devices (steps S 824 and S 825 ).
- the relay device 15 checks whether or not the TCP connection instructed to be disconnected is being shared with another communication device (step S 827 ). When such a TCP connection is being shared with another communication device (step S 827 : YES), without disconnecting the TCP connection, a formal disconnection notification is carried out to the communication device that has carried out the disconnection instruction (step S 828 ). Then, the relay device 15 updates the information stored in the relay connection database 151 (stepS 829 ). That is, the relay device 15 deletes information of the client (communication device) that has requested the disconnection instruction from the information of the shared TCP connection. The relay device 15 manages a currently established TCP connection and communication devices sharing the TCP connection at all times as described above.
- the relay device 15 transmits a disconnection request to the relay device 25 (step S 830 ).
- the TCP connection is disconnected (step S 832 ).
- the relay device 15 notifies the requesting communication device that the connection with the relay destination has been disconnected (step S 833 ) and deletes the information of the TCP connection registered in the relay connection database 151 (step S 834 ).
- a TCP connection is dynamically established with a relay device of a relay destination, and communication can be carried out between private networks. Furthermore, when a relay instruction generates, if a TCP connection is already established with the relay destination, the already established TCP connection is shared. Accordingly, speed of the processing is increased, and resources can be utilized efficiently.
Abstract
A relay device requests a status notification of another relay device to a server device. When the relay device is notified that the other relay device is under a logged-out status, the relay device stands by. When the relay device is notified that the other relay device has logged in, the relay device transmits a connection request to the server device. The server device relays the connection request to the other relay device. A response is transmitted from the other relay device to the server device, and further relayed to the relay device. Accordingly, a TCP connection is established between the relay device and the other relay device. A communication device connected to a different network can transmit and receive data to and from the relay device via the other relay device.
Description
- 1. Field of the Invention
- The present invention relates to technology for relaying data transmitted and received between communication devices.
- 2. Description of the Related Art
- By using technology such as a Virtual Private Network (VPN) and tunneling, data transmitted from a terminal located inside a private network can be relayed to a terminal located in another private network via the Internet. For example, by establishing a connection between a Local Area Network (LAN) of a headquarter office and a LAN of a branch office via the VPN, data can be relayed between terminals connected to different LANs via the Internet.
- According to known technology, data is relayed between local systems connected via the Internet. According to this technology, each terminal located within a local system accesses a relay server on the Internet to establish a Transmission Control Protocol (TCP) connection, and uses the established TCP connection to transmit and receive data between the local systems.
- By using the technology of the VPN and the tunneling, data can be transmitted and received between different LANs connected via the Internet. However, such technology provides a system which is constructed by a fixed setting. That is, a relay device provided on the Internet between the LANs carries out a fixed connection setting between the LANs. Therefore, there is no problem when a VPN connection is preferably established constantly between a headquarter office and a branch office of a company, for example. However, the above-described technology cannot support a case in which a connection is to be established dynamically between different private networks.
- The technology such as the VPN is basically technology for establishing a connection between networks, for example, between a LAN and a LAN, and is not technology for establishing a connection between individual terminals. Therefore, the technology such as the VPN is technology for enabling communication to be carried out between networks in which the VPN is developed as an infrastructure, and is not technology for supporting a case in which an individual personally demands a communication with a specific network.
- Meanwhile, when constructing a system in which a connection is established between networks in response to a request from individual terminals, performance of a relay device may decrease due to a fact that resources may become insufficient when a plurality of connections are generated according to the request from terminals.
- In order to overcome the problems described above, preferred embodiments of the present invention provide a system in which relaying of data between networks connected via the Internet can be set dynamically.
- Preferred embodiments of the present invention also provide a system in which relaying of data between networks connected via the Internet can be set dynamically according to a request of each terminal.
- According to an aspect of the present invention, a relay device can carry out communication with a first communication device, and includes a relay unit and a holding unit. The relay unit relays data received from the first communication device to another relay device. The holding unit inquires a status of the other relay device to a server device. When the other relay device is capable of accepting a connection, the holding unit carries out a connection request to the other relay device, dynamically establishes a relay connection with the other relay device, and holds the established relay connection. The other relay device can carry out communication with a second communication device. The relay device relays the data received from the first communication device to the other relay device to further relay the data to the second communication device.
- The holding unit also establishes relay connections with a plurality of relay devices, and the relay unit uses the plurality of the relay connections to relay the data to the plurality of the relay devices.
- The holding unit can separately disconnect the relay connections held with the plurality of the relay devices.
- According to another aspect of the present invention, a communication system for relaying data between terminals includes a first relay device that can carry out communication with a first communication device, a server device, and a second relay device that can carry out communication with a second communication device. The first relay device includes a holding unit. When the holding unit inquires a status of the second relay device to the server device and the second relay device is capable of accepting a connection, the holding unit carries out a connection request to the second relay device, dynamically establishes a relay connection with the second relay device, and holds the established relay connection. The first relay device relays data received from the first communication device to the second relay device, and the second relay device further relays the data to the second communication device.
- The first communication device and the second communication device are respectively provided in different private networks. Accordingly, a connection request for a TCP connection cannot be carried out to the first communication device and the second communication device from an external network.
- According to another aspect of the present invention, a relay device can carry out communication with a first communication device. The relay device includes an accepting unit and a holding unit. The accepting unit accepts a relay transmission instruction designating another relay device from the first communication device. The holding unit inquires a status of the other relay device to the server device. When the other relay device is capable of accepting a connection, the holding unit carries out a connection request to the other relay device, dynamically establishes a relay connection with the other relay device, and holds the established relay connection. The other relay device can carry out communication with a second communication device. The relay device relays data received from the first communication device to the other relay device, and the other relay device further relays the data to the second communication device.
- When the other relay device is incapable of accepting a connection, the holding unit notifies such a connection impossible state to the first communication device. When the holding unit receives a notification from the server device that the other relay device has become capable of accepting a connection, the holding unit notifies a connection possible state to the first communication device.
- Only data, which has the first communication device as a transmitter or a transmission destination, is relayed over the relay connection held by the holding unit.
- According to another aspect of the present invention, a communication system for relaying data between terminals includes a first relay device that can carry out communication with a first communication device, a server device, and a second relay device that can carry out communication with a second communication device. The first relay device includes an accepting unit and a holding unit. The accepting unit accepts a relay instruction of data designating the second relay device from the first communication device. The holding unit inquires a status of the second relay device to the server device. When the second relay device is capable of accepting a connection, the holding unit carries out a connection request to the second relay device, dynamically establishes a relay connection with the second relay device, and holds the established relay connection. The first relay device relays data received from the first communication device to the second relay device so that the second relay device can further relay the data to the second communication device.
- The first communication device and the second communication device are respectively provided in different private networks. A connection request for a TCP connection cannot be carried out to the first communication device and the second communication device from an external network.
- According to another aspect of the present invention a relay device can carry out communication with a first communication device. The relay device includes an accepting unit and a holding unit. The accepting unit accepts a relay transmission instruction designating another relay device from the first communication device. When a relay connection has not been established yet with the other relay device, the holding unit inquires a status of the other relay device to the server device. When the other relay device is capable of accepting a connection, the holding unit dynamically establishes a relay connection with the other relay device, and holds the established relay connection. When a relay connection is already established with the other relay device, the holding unit sets such relay connection to be shared with the first communication device. The other relay device can carry out communication with the second communication device. The relay device relays data received from the first communication device to the other relay device, and the other relay device further relays the data to the second communication device.
- When receiving a notification from the first communication device to terminate the relay transmission to the other relay device, if the other communication device is carrying out a relay transmission to the other relay device, the relay connection established between the relay device and the other relay device is maintained. When none of the communication devices is carrying out a relay transmission to the other relay device, the holding unit disconnects the relay connection held with the other relay device.
- According to another aspect of the present invention, a communication system for relaying data between terminals includes a first relay device that can carry out communication with a first communication device, a server device, and a second relay device that can carry out communication with the second communication device. The first relay device includes an accepting unit and a holding unit. The accepting unit accepts a relay transmission instruction of data designating the second relay device from the first communication device. When a relay connection is yet to be established with the second relay device, the holding unit inquires a status of the second relay device to the server device. When the second relay device is capable of accepting a connection, the holding unit dynamically establishes a relay connection with the second relay device and holds the established relay connection. When a relay connection is already established with the second relay device, the holding unit sets such relay connection to be shared with the first communication device. The first relay device relays data received from the first communication device to the second relay device, and the second relay device further relays the data to the second communication device.
- The first communication device and the second communication device are respectively provided in different private networks. A connection request for a TCP connection cannot be carried out to the first communication device and the second communication device from an external network.
- The relay device of the present invention inquires a status of another relay device to the server device. When the other relay device is capable of accepting a connection, the relay device carries out a connection request, and establishes and holds a relay connection with the other relay device. Therefore, a communication device, which can carry out communication with the relay device, can carry out communication via the private network with a communication device, which can carry out communication with the other relay device.
- The relay device of the present invention can establish a relay connection with a plurality of relay devices, and hold the established relay connections. Therefore, when communication devices to which communication is to be carried out belong to different networks, a plurality of connections can be generated independently.
- The relay device of the present invention can independently disconnect each of the relay connections being held with a plurality of the relay devices. Therefore, the relay device of the present invention can maintain only the connections that are necessary for communication, and resources can be utilized efficiently.
- The relay device of the present invention accepts a relay transmission instruction designating the other relay device from the first communication device, and inquires a status of the other relay device to the server device. When the other relay device is capable of accepting a connection, the relay device dynamically establishes a relay connection with the other relay device and holds the established relay connection. Therefore, by carrying out a request designating a relay destination to the relay device of the present invention, a communication device, which can carry out communication with the relay device of the present invention, can carry out communication with a communication device, which can carry out communication with the other relay device. Since a connection is established between the relay devices according to a request from the communication device, a network of a communication destination can be selected and a connection can be established more dynamically.
- When receiving a notification from the server device that the other relay device has become capable of accepting a connection, the relay device notifies a connection possible state to the first communication device. Accordingly, at a point of time when a preparation is completed at the relay destination, a relay transmission can be started immediately.
- Only the data having the first communication device as a transmitter or a transmission destination is relayed over the relay connection held by the holding unit. Therefore, a terminal, which has carried out a connection request to the relay device, can exclusively use the established connection.
- The relay device of the present invention accepts a relay transmission instruction designating another relay device from the first communication device. When a relay connection is already established between the relay device of the present invention and the other relay device, the relay device of the present invention sets the first communication device to share the already established relay connection. Therefore, by carrying out a request designating a relay destination to the relay device of the present invention, a communication device, which can carry out communication with the relay device of the present invention, can carry out communication with a communication device, which can carry out communication with the other relay device. When a relay connection is already established between the relay device of the present invention and the designated relay device, the already established relay connection is shared. Therefore, processing load for establishing a connection can be reduced, and resources can be saved.
- When receiving a notification from the first communication device to terminate the relay transmission to the other relay device, if the other communication device is carrying out a relay transmission to the other relay device, the relay connection established with the other relay device is maintained. Accordingly, an end of communication of one communication device does not influence a communication of another communication device. A communication device sharing the relay connection can use the relay connection until the communication of the communication device itself is completed.
- Other features, elements, processes, steps, characteristics and advantages of the present invention will become more apparent from the following detailed description of preferred embodiments of the present invention with reference to the attached drawings.
-
FIG. 1 illustrates a configuration of a communication system according to a first preferred embodiment of the present invention. -
FIG. 2 illustrates a registration example of a relay device database. -
FIG. 3 is a flowchart illustrating a processing carried out in the communication system according to the first preferred embodiment of the present invention. -
FIG. 4 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device. -
FIG. 5 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device. -
FIG. 6 illustrates an imaginary state in which a plurality of relay connections are established. -
FIG. 7 illustrates a configuration of a communication system according to a second preferred embodiment of the present invention. -
FIG. 8 illustrates a registration example of a relay connection database. -
FIG. 9 is a flowchart illustrating a processing carried out in the communication system according to the second preferred embodiment of the present invention. -
FIG. 10 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device. -
FIG. 11 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device. -
FIG. 12 illustrates a registration example of a relay connection database. -
FIG. 13 is a flowchart illustrating a processing carried out in a communication system according to a third preferred embodiment of the present invention. -
FIG. 14 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device. -
FIG. 15 is a flowchart illustrating a processing carried out in the communication system focusing on a relay device. - Preferred embodiments of the present invention will be described with reference to the accompanying drawings.
FIG. 1 illustrates a configuration of a communication system according to a first preferred embodiment. In the communication system of the first preferred embodiment, two Local Area Networks (LANs) 10 and 20 are connected via a Wide Area Network (WAN) 30. For example, theLANs WAN 30 is a public network such as the Internet. That is, two differentprivate LANs - As illustrated in
FIG. 1 , twocommunication devices relay device 15 are connected in theLAN 10. TheLAN 10 is connected to theWAN 30 via a gateway (GW) 16. Twocommunication devices relay device 25 are connected in theLAN 20. TheLAN 20 is connected to theWAN 30 via agateway 26. - The
communication devices communication devices relay device 15 and other computers or the like connected to theLAN 10. In the same manner, each of thecommunication devices relay device 25 and other computers or the like connected to theLAN 20. Therelay devices gateways - A
server device 35 is connected to theWAN 30. As described above, theWAN 30 is a public network such as the Internet. Therefore, a terminal connected to theLAN 10, theLAN 20, or theWAN 30 can establish a TCP connection by designating a global IP address of theserver device 35. - A private IP address is assigned to the
communication devices relay device 15 connected to theLAN 10 and thecommunication devices relay device 25 connected to theLAN 20. Thegateways WAN 30 has restrictions when carrying out a TCP connection request to therelay device server device 35 functions as a Session Initiation Protocol (SIP) server (a proxy server and a registered server of the SIP) as to be described hereinafter, thegateways relay servers gateways -
FIG. 2 illustrates a registration example of arelay device database 351 managed by theserver device 35. In the example illustrated inFIG. 2 , three relay devices A, B, and C are registered. The relay devices A, B, and C are device names that are assigned to therelay device 15 or therelay device 25, for example. Flags of a Uniform Resource Locator (URL), an IP address, and a login status are set for each of the relay devices A, B, and C. - An IP address of each of the relay devices registered in the
relay device database 351 is not an IP address in a private network, but is a global IP address converted by a gateway by a function such as a Network Address Translation (NAT) or an IP masquerade. For example, therelay device 15 is assigned with a private address in theLAN 10. When therelay device 15 accesses theserver device 35, the IP address assigned to therelay device 15 is converted into a global IP address by thegateway 16. - Each of the relay devices A through C establishes a connection with the
server device 35, and logs into theserver device 35. A “status” field of therelay device database 351 stores information indicating whether each of the relay devices A through C is currently under a logged-in status or a logged-out status with respect to theserver device 35. When each of the relay devices is under a logged-in status, theserver device 35 determines that a TCP connection is prepared to be established between the logged-in relay devices. In other words, a status in which the relay device is logged in theserver device 35 indicates a status in which the relay device is capable of accepting a TCP connection request transmitted from another terminal. - With reference to
FIG. 3 throughFIG. 5 , a description will be made of a flow of a communication processing in the above-described communication system.FIG. 3 illustrates a flow of the processing of the entire communication system including therelay devices server device 35. Further, in the following description, a Session Initiation Protocol (SIP) is used for communication between therelay device 15 and theserver device 35, and between therelay device 25 and theserver device 35. However, other protocols may also be used. - Each of the
relay devices server device 35 at initialization or periodically to notify position information (for example, an IP address, and/or a port number) of the relay device to theserver device 35. Theserver device 35 manages therelay device database 351 illustrated inFIG. 2 according to the notified position information. Theserver device 35 can carry out communication with each of the relay devices over the gateway according to the position information. InFIG. 3 , under an initial state, therelay device 15 and therelay device 25 are logged in theserver device 35. First, therelay device 25 notifies logout status information to the server device 35 (step S101), and theserver device 35 responds to the notification (step S102). Theserver device 35 executes a logout processing of therelay device 25, and updates the “status” field of therelay device 25 in therelay device database 351 to “logout”. - Under this state, when the
relay device 15 carries out a notification request of the status information to the server device 35 (step S103), theserver device 35 carries out a response (step S104), and notifies that therelay device 25 is logged-out (step S105). Therelay device 15 responds to this notification (step S106). - Next, the
relay device 25 notifies login status information to the server device 35 (step S107), and theserver device 35 responds to the notification (step S108). Theserver device 35 executes the login processing of therelay device 25, and updates the “status” field of therelay device database 351 to “login”. Furthermore, theserver device 35 notifies therelay device 15 that therelay device 25 has logged in (step S109). Therelay device 15 responds to this notification (step S110). - When the
relay device 15 receives a notification that therelay device 25 has logged in, therelay device 15 transmits a connection request for therelay device 25 to the server device 35 (step S111). As illustrated inFIG. 3 , this connection request is an “INVITE request message” of the SIP, and includes TCP connection information in a body portion following a blank line. In the illustrated example, the connection request includes an IP address (200.1.1.1) and a TCP port number (6109) or the like of the relay device 15 (transmitter). Theserver device 35 relays the connection request to the relay device 25 (step S112). Therelay device 25, which has received the connection request, transmits a response to theserver device 35 to permit a connection (step S113). As illustrated inFIG. 3 , this response is “200 OK response message” of the SIP, and includes TCP connection information in a body portion following a blank line. In the illustrated example, the response includes an IP address (200.2.2.2) and a TCP port number (7109) or the like of the relay device 25 (transmitter). Theserver device 35 relays the response to the relay device 15 (step S114). As described above, therelay device 15 and therelay device 25 use the INVITE request and the OK response of the SIP to exchange TCP connection information, and carry out a negotiation for establishing a TCP connection. When therelay device 15 receives the response, therelay device 15 transmits a TCP connection request to the relay device 25 (step S115). Accordingly, a TCP connection is established between therelay device 15 and therelay device 25. - The above-described processing is executed by a network administrator of the
LAN 10 or theLAN 20, for example. That is, in order to prepare such that a connection with another LAN can be carried out dynamically, a relay device in a network is logged into theserver device 35 by the network administrator as illustrated at step S107. Accordingly, a preparation is completed for receiving a TCP connection request from another relay device. When the network administrator wishes to carry out a connection with another LAN, the network administrator accesses theserver device 35, and acquires status of a destination relay device. When the network administrator learns that the destination relay device is under a logged-in status, the network administrator transmits a connection request to theserver device 35. - That is, in the present preferred embodiment, the
relay device 15 transmits an INVITE request of the SIP via theserver device 35 to establish a TCP connection (media session) for relaying. In other words, since a relay channel as a media session is generated by a call control protocol, a relay communication channel can be established dynamically. - When a TCP connection is established between the
relay device 15 and therelay device 25 as described above, therelay device 15 and therelay device 25 hold the established TCP connection. When therelay device 15 receives data from thecommunication device communication device relay device 15 relays the received data to the relay device 25 (step S116). Therelay device 25 further relays the relayed data to thecommunication device communication device communication device relay device 25 and the relay device 15 (step S117). - Further, in order to carry out communication between the
LAN 10 and theLAN 20 via theWAN 30, each of therelay devices LANs relay device 15 and therelay device 25, therelay device 15 and therelay device 25 exchange the list. When carrying out communication between a communication device connected to theLAN 10 and a communication device connected to theLAN 20, a device name of a relay device of a LAN of a transmission destination and a device name of a communication device of the transmission destination are designated. That is, since a unique device name (registered in the relay device database 351) is assigned to a relay device using such a communication system, by designating both the device name of the relay device and the device name of the communication device, the communication device of the transmission destination can be identified uniquely. For example, a name such as “communication device name@relay device name” may be used. Each relay device knows an association between a communication device name and an IP address for a communication device connected to the LAN to which the relay device itself is also connected. Therefore, the relay device can relay data to a communication device designated by “communication device name@relay device name”. - When transmission and reception of data between the communication devices end and the connection established between the
relay device 15 and therelay device 25 becomes unnecessary, the network administrator disconnects the connection. First, therelay device 15 transmits a disconnection request for therelay device 25 to the server device 35 (step S118). Theserver device 35 relays the disconnection request to the relay device 25 (step S119). A response from therelay device 25 is transmitted to the server device 35 (step S120), and relayed to the relay device 15 (step S121). -
FIG. 4 is a flowchart focusing on a processing carried out by therelay device 15 in the processing described with reference toFIG. 3 . First, therelay device 15 transmits a starting request for starting a relay connection to the server device 35 (step S201). The relay-device 25 is designated as the relay destination in the starting request. When a fact that therelay device 25 of the relay destination is logged out becomes apparent from the response from the server device 35 (step S202: NO), therelay device 15 stands by until receiving a login notification (step S203). When receiving a login notification (step S203: YES), the process proceeds onto step S204. - When a determination is made at step S202 that the
relay device 25 of the relay destination is logged in, therelay device 15 generates TCP connection information (step S204), and transmits a connection request (step S205). Then, therelay device 15 stands by for a response from the relay device 25 (step S206). When receiving a response (step S206: YES), therelay device 15 analyzes the TCP connection information included in the received response (step S207). That is, therelay device 15 acquires port number information or the like included in the response transmitted from therelay device 25. Then, therelay device 15 carries out a TCP connection with the relay device 25 (step S208). - Under a state in which a TCP connection is established and held, when the
communication device 11 or the like transmits relay data (step S209: YES), therelay device 15 relays the data to thecommunication device 21 or the like (step S210). When therelay device 15 receives relay data to be relayed to thecommunication device 11 or the like (step S211: YES), therelay device 15 relays the data to thecommunication device 11 or the like of the relay destination (step S212). When therelay device 15 receives a disconnection request from the relay device 25 (step S213: YES), therelay device 15 transmits a response (step S214) and disconnects the TCP connection (step S215). - When a disconnection request is carried out by a network administrator of the LAN 10 (step S216: YES), the
relay device 15 transmits a disconnection request to the relay device 25 (step S217). When therelay device 15 receives a response (step S218: YES), therelay device 15 disconnects the TCP connection (step S219). -
FIG. 5 is a flowchart focusing on a processing carried out by therelay device 25 in the processing described with reference toFIG. 3 . First, a network administrator of theLAN 20 determines whether or not to prepare for establishing a connection with another LAN. When preparing for establishing a connection with another LAN, an operation is performed for validating a relay function of therelay device 25. When the relay function is validated (step S301: YES), therelay device 25 transmits a login command to the server device 35 (step S302). Then, therelay device 25 receives a response from the server device 35 (step S303), and a processing for validating the relay function is completed. - As described above, when the
relay device 25 of the relay destination is under a logged-in status, that is, when therelay device 25 is capable of accepting a connection, therelay device 15 dynamically establishes a TCP connection with therelay device 25. Accordingly, data can be transmitted and received via theWAN 30 such as the Internet. For example, in case of a headquarter office and a branch office of a company where traffic constantly generates stably, LANs may be connected fixedly by using the conventionally used VPN. Meanwhile, when carrying out data communication by establishing connections with different networks via theWAN 30 under any timing, the communication system of the present preferred embodiment can be used. - According to the communication system of the present preferred embodiment, when a connection environment (an IP address and/or a port number) of the relay device of the other party is changed, the relay device carries out a negotiation first (steps S111 through S114). Therefore, a connection for relaying data can be established reliably.
- The
relay devices FIG. 6 , therelay device 15 can establish a separate TCP connection with each of threerelay devices relay devices relay device 25. Each of therelay devices FIG. 6 , therelay device 15 relays data transmitted from a certain communication device to therelay device 45, and relays data transmitted from another communication device to therelay device 55. - A method for disconnecting the TCP connection established with each of the
relay devices relay device 25. That is, a TCP connection can be established independently with each of the plurality of therelay devices - Conventionally, in the VPN or the like, when a plurality of LANs are connected, the plurality of the LANs are connected as one VPN. Meanwhile, according to the communication system of the present preferred embodiment, a connection is established independently with just a relay device to which a communication is to be carried out, and a connection established with a relay device to which a communication is no longer necessary to be carried out can be disconnected independently. Therefore, efficient communication system can be constituted without consuming unnecessary resources.
- Next, a second preferred embodiment of the present invention will be described. In the first preferred embodiment, a connection is established dynamically between relay devices according to an instruction from a network administrator. In the second preferred embodiment, a connection is established between relay devices according to a designation from a communication device. Specifically, in the first preferred embodiment, by predicting a status of communication to be generated between the communication devices, a network administrator carries out an operation for establishing or disconnecting a connection between the relay devices. Meanwhile, in the second preferred embodiment, a control is carried out to establish or disconnect a connection between the relay devices more dynamically according to a communication processing that generates from a communication device. In the following description, a description that is the same as the first preferred embodiment will be omitted.
-
FIG. 7 illustrates an example of a configuration of a communication system according to the second preferred embodiment of the present invention. InFIG. 7 , aLAN 40 is added to the system configuration illustrated inFIG. 1 . The basic system configuration illustrated inFIG. 7 is the same as the first preferred embodiment. Acommunication device 41 and arelay device 45 are connected to theLAN 40, and theLAN 40 is connected to aWAN 30 via agateway 46. - The
relay devices relay connection databases FIG. 8 illustrates an example of registration of therelay connection database 151 stored in therelay device 15. - The
relay connection database 151 is a database for managing a TCP connection currently established by therelay device 15. A “client” field stores a setting of a device name of a communication device that has requested a connection to be established with a relay device (hereinafter referred to as a “requesting communication device”). For example, “ClientX” and “ClientY” inFIG. 8 are a device name assigned to thecommunication device - In the present preferred embodiment, according to a designation from the requesting communication device, a TCP connection is established with a relay device of a communication destination. However, a device that can use such a TCP connection for carrying out communication is only the requesting communication device. That is, as illustrated in
FIG. 8 , one-to-one relation is established for a communication device and a TCP connection. - The contents of the
relay connection databases relay connection databases 151 illustrated inFIG. 8 . Therelay connection databases relay devices - Next, with reference to
FIG. 9 throughFIG. 11 , a description will be made of a flow of a communication processing carried out in the above-described communication system.FIG. 9 illustrates a flow of the processing of the entire communication system including thecommunication devices relay devices server device 35. Further, in the following description, a description will be made of an example in which the SIP is used for the communication between therelay devices 15 and theserver device 35 and between theserver device 35 and therelay device 25. However, other protocols may also be used. - In the same manner as in the first preferred embodiment, each of the
relay devices server device 35 at initialization or periodically to notify position information (for example, an IP address and/or a port number) of the relay device to theserver device 35. InFIG. 9 , under an initial state, therelay device 15 and therelay device 25 are logged in theserver device 35. First, therelay device 25 notifies logout status information to the server device 35 (step S401), and theserver device 35 responds to the notified logout status information (step S402). Theserver device 35 executes a logout processing of therelay device 25, and updates the “status” field of therelay device 25 in therelay device database 351 to “logout”. - Under this state, the
communication device 11 transmits a relay transmission request of data and a status confirmation request, which designate therelay device 25, to the relay device 15 (step S403). When therelay device 15 carries out a notification request of the status information to the server device 35 (step S404), theserver device 35 carries out a response (step S405) and notifies therelay device 15 that therelay device 25 is logged out (step S406). Therelay device 15 responds to the notification (step S407). Furthermore, therelay device 15 notifies thecommunication device 11 that therelay device 25 is a logged out (step S408). Accordingly, thecommunication device 11 stands by until therelay device 25 logs in. - Next, the
relay device 25 notifies login status information to the server device 35 (step S409), and theserver device 35 responds to the notified login status information (step S410). Theserver device 35 executes a login processing of therelay device 25, and updates the “status” field of therelay device database 351 to “login”. Theserver device 35 also notifies therelay device 15 that therelay device 25 has logged in (step S411). Therelay device 15 responds to the notification (step S412). Furthermore, therelay device 15 notifies thecommunication device 11 that therelay device 25 has logged in (step S413). - When the
communication device 11, which has been on standby, receives the notification carried out at step S413, thecommunication device 11 carries out a relay transmission request again designating the relay device 25 (step S414). Further, in the second preferred embodiment, thecommunication device 11 is provided to standby until receiving a notification that therelay device 25 has logged in. However, as another preferred embodiment, without standing by for such a notification, thecommunication device 11 may periodically transmit a relay transmission request to therelay device 15. - When the
relay device 15 receives the relay transmission request from thecommunication device 11, therelay device 15 transmits a connection request for therelay device 25 to the server device 35 (step S415). As described in the first preferred embodiment, the connection request is an “INVITE request message” of the SIP, and includes TCP connection information. Theserver device 35 relays the connection request to the relay device 25 (step S416). When receiving the connection request, therelay device 25 transmits a response to theserver device 25 to permit a connection (step S417). As described in the first preferred embodiment, the response is “200 OK response message” of the SIP, and includes TCP connection information. Theserver device 35 relays the response to the relay device 15 (step S418). Therelay device 15 and therelay device 25 exchange the TCP connection information as described above. When receiving the response, therelay device 15 transmits a TCP connection request to the relay device 25 (step S419). Accordingly, a TCP connection is established between therelay device 15 and therelay device 25. - The above-described processing is carried out dynamically, for example, when a communication processing from the
communication device 11 to thecommunication device 21 generates. That is, the relay devices are not connected fixedly, but a connection is carried out when traffic generates. However, in order to prepare for a connection request from a relay device of another end, a network administrator is required to be prepared by logging a relay device within a network into theserver device 35 as illustrated at step S409. - In the present preferred embodiment, the
relay device 15 receives an instruction from thecommunication device 11, and therelay device 15 transmits an INVITE request of the SIP via theserver device 35 to establish a relay TCP connection (media session). That is, at a point of time when a connection request from a communication device generates, since a relay channel as a media session is generated by a call control protocol, a relay communication channel can be established dynamically. - When a TCP connection is established between the
relay device 15 and therelay device 25 as described above, therelay device 15 and therelay device 25 hold the established TCP connection. When thecommunication device 11 transmits data addressed to thecommunication device relay device 15 relays the data to the relay device 25 (step S422). Therelay device 25 further relays the relayed data to thecommunication device communication device relay device 15 via therelay device 25 in the same manner (step S423) and relayed further to thecommunication device 11 via the relay device 15 (step S424). - When a relay transmission using the
relay device 25 is completed, thecommunication device 11 transmits a disconnection instruction to the relay device 15 (step S425). Therelay device 15 transmits a disconnection request for therelay device 25 to the server device 35 (step S426). Theserver device 35 relays the received disconnection request to the relay device 25 (step S427). A response from therelay device 25 is transmitted to the server device 35 (step S428) and relayed to the relay device 15 (step S429). Accordingly, the TCP connection between therelay device 15 and therelay device 25 is disconnected, and therelay device 15 notifies thecommunication device 11 that the TCP connection has been disconnected (step S430). - Under such a state, when another
communication device 12 carries out a relay transmission request designating therelay device 25 again (step S431), a connection request is transmitted from therelay device 15 to the server device 35 (step S432). At this point of time, when therelay device 25 is under a logged-out status, theserver device 35 notifies the logged-out status (step S433), and thecommunication device 12 is notified that therelay device 25 is under a logged-out status. In the same manner as the processing carried out by thecommunication device 11, when therelay device 25 logs in, thecommunication device 12 carries out a relay transmission request to therelay device 25 again. Accordingly, a TCP connection is established between therelay device 15 and therelay device 25. -
FIG. 10 is a flowchart focusing on a processing carried out by therelay device 15 in the processing described with reference toFIG. 9 . First, therelay device 15 confirms whether or not a relay instruction from thecommunication device relay device 15 confirms whether or not a status monitoring instruction is generated (step S502). When the status monitoring instruction is generated, therelay device 15 checks whether or not the relay device of the relay destination is logged in (step S503). When therelay device 15 confirms that the relay device of the relay destination is logged out (step S503: NO), therelay device 15 stands by until receiving a login notification (step S504). - When receiving a notification from the
server device 35 indicating that the relay device of the relay destination has logged in (stepS504: YES), therelay device 15 notifies the requesting communication device that the relay destination has logged in (step S505). Then, therelay device 15 stands by until receiving a relay instruction from thecommunication device relay device 15 receives a relay instruction, the process proceeds onto step S508. When a determination is made at step S503 that the relay device of the relay destination is logged in, the process proceeds immediately onto step S508. When a status monitoring instruction is not included in the request from the communication device (step S502: NO), if the relay destination is logged in (step S507: YES), the process proceeds onto step S508. If the relay destination is not logged in, the process returns to step S502 and the processing is repeated. That is, when a status monitoring instruction has been received from a requesting communication device, therelay device 15 monitors the relay device of the relay destination until the relay device of the relay destination logs in. When receiving a notification that the relay device of the relay destination has logged in, therelay device 15 notifies such information also to the requesting communication device. - Next, the
relay device 15 generates TCP connection information (step S508) and transmits a connection request (step S509). Therelay device 15 stands by until receiving a response from the relay device 25 (step S510). When not receiving a response (step S510: NO), therelay device 15 carries out an error notification to the requesting communication device (step S511). The process returns to step S501 and the processing is repeated. When receiving a response (step S510: YES), therelay device 15 analyzes the TCP connection information included in the received response (step S512). That is, therelay device 15 acquires port number information or the like included in the response transmitted from therelay device 25. Then, therelay device 15 carries out a TCP connection to the relay device 25 (step S513). Therelay device 15 notifies the requesting communication device that a connection has been established with the relay destination (step S514). Then, therelay device 15 registers information of the newly established TCP connection in the relay connection database 151 (step S515). - Under a state in which the TCP connection is established and held, in the flowchart of
FIG. 11 , when relay data is transmitted from thecommunication device 11 or the like (step S516: YES), therelay device 15 relays the data to thecommunication device 21 or the like (step S517). When receiving relay data to be relayed to thecommunication device 11 or the like (step S518: YES), therelay device 15 relays the data to thecommunication device 11 or the like of the relay destination (step S519). When receiving a disconnection request from the relay device 25 (step S520: YES), therelay device 15 transmits a response (step S521) and disconnects the TCP connection (step S522). When a disconnection request is carried out by the requesting communication device (step S523: YES), therelay device 15 transmits a disconnection request to therelay device 25 of the relay destination (step S524). When receiving a response (step S525: YES), therelay device 15 disconnects the TCP connection (step S526). Then, therelay device 15 notifies the requesting communication device that a connection with the relay destination has been disconnected (step S527), and the information of the TCP connection registered in therelay connection database 151 is deleted (step S528). - As described above, according to the second preferred embodiment, when a relay instruction from a communication device generates, a TCP connection is established dynamically with the relay device of the relay destination, and communication can be carried out between private networks. Unlike the conventional VPN or the like that is fixedly set, when a request of communication generates, a connection necessary for such communication is established. Therefore, resources can be utilized efficiently.
- According to the second preferred embodiment, when a communication connection is established according to a request from a certain communication device, only such a requesting communication device is permitted to use the established communication connection. For example, when a request of communication generates from the
communication device 11 to thecommunication device 21, a TCP connection is established between therelay device 15 and therelay device 25 according to the request. The established TCP connection is used only for the communication between thecommunication device 11 and thecommunication device 21. In other words, therelay device 15 and therelay device 25 use the TCP connection just for relaying the data transmitted and received between thecommunication device 11 and thecommunication device 21. Therefore, a connection established according to a request from a certain communication device is used exclusively by such a communication device. - In the example illustrated in
FIG. 7 , under a state in which a connection is established between therelay device 15 and therelay device 25 according to a request from thecommunication device 11, suppose that a connection is established further between therelay device 15 and therelay device 45 according to a request from thecommunication device 12. In this case, a description has been made with reference toFIG. 6 that an individual data relay connection is established. Therefore, thecommunication device 11 and thecommunication device 12 use different TCP connections for relaying data. Meanwhile, under a state in which thecommunication device 11 is carrying out a relay transmission designating therelay device 25, when thecommunication device 12 also carries out a relay instruction designating thesame relay device 25, since the already established TCP connection is used exclusively by thecommunication device 11, a separate communication connection is established. - Next, a description will be made of a third preferred embodiment of the present invention. Also in the third preferred embodiment, in the same manner as in the second preferred embodiment, a connection is carried out between relay devices according to a request from a communication device. However, in the third preferred embodiment, when a connection has already been established between the relay devices, another communication device shares the already established connection. This feature differs from the second preferred embodiment. In the following, a description will be made primarily of aspects that are different from the second preferred embodiment.
-
FIG. 12 illustrates an example of registration of therelay connection database 151 stored in therelay device 15. As illustrated inFIG. 12 , a plurality of clients (communication devices) are associated with one TCP connection. In the example illustrated inFIG. 12 , a relay transmission request has generated from two communication devices (ClientX and ClientY), and both of the communication devices designate the same relay device (Relayserver1@sample.net). Therefore, the two communication devices are sharing a TCP connection with aconnection number 49583. - The contents of the
relay connection databases relay devices relay connection database 151 illustrated inFIG. 12 . Therelay connection databases relay devices - Next, with reference to
FIG. 13 throughFIG. 15 , a description will be made of a flow of a communication processing carried out in the above-described communication system.FIG. 13 illustrates a flow of a processing of the entire communication system including thecommunication devices relay devices server device 35. Further, in the following description, a description will be made of an example in which the SIP is used for the communication between therelay device 15 and theserver device 35, and between theserver device 35 and therelay device 25. However, other protocols may also be used. - The processing from step S701 to step S724 in
FIG. 13 corresponds to the processing from step S401 to step S424 inFIG. 9 . Since the processing is the same, a description will be omitted. That is, thecommunication device 11 generates a relay transmission request designating therelay device 25, and a TCP connection is established between therelay device 15 and therelay device 25. Then, data is transmitted and received between thecommunication device 11 and thecommunication device 21 or the like. - Under such a state, a
different communication device 12 carries out a relay transmission request designating therelay device 25 again (step S725). Since the TCP connection is currently being established between therelay device 15 and therelay device 25, therelay device 15 notifies thecommunication device 12 that a relay transmission of the data can be carried out (step S726). Accordingly, when data is transmitted from the communication device 12 (step S727), therelay device 15 uses the already established TCP connection to relay the data transmitted from thecommunication device 12 to the relay device 25 (step S728). Therelay device 25 also uses the already established TCP connection for relaying the data, which has been transmitted from thecommunication device 21 or the like to thecommunication device 12, to the relay device 15 (step S729). Therelay device 15 further transmits the received data to the communication device 12 (step S730). - As described above, in the third preferred embodiment, a TCP connection is already established between the relay devices, and when the already established TCP connection can be used for a newly generated relay transmission request, a new TCP connection is not established. A plurality of communication terminals share the same TCP connection. Accordingly, load required for establishing a TCP connection can be reduced, and communication between different networks can be carried out under higher speed. In addition, resources of the relay device can be saved. For example, when carrying out communication via the Internet between a plurality of communication terminals connected to the
LAN 10 and a plurality of communication terminals connected to theLAN 20, an increase in the processing speed and saving of the resources are possible and efficient. The above-described third preferred embodiment is also efficient when data volume to be relayed from one communication device is small. - Under a state in which the
communication device 11 and thecommunication device 12 are sharing the TCP connection and carrying out data communication as described above, thecommunication device 11 transmits a disconnection instruction to the relay device 15 (step S731). Since thecommunication device 12 is using the same TCP connection, therelay device 15 does not carry out a processing in particular with respect to the disconnection instruction of step S731, and just carries out a response (step S732). - Then, when the relay transmission using the
relay device 25 ends, thecommunication device 12 transmits a disconnection instruction to the relay device 15 (step S733). Since therelay device 15 has already received the disconnection instruction from thecommunication device 11, therelay device 15 can determine that the shared TCP connection has become unnecessary. Therefore, therelay device 15 transmits a disconnection request for therelay device 25 to the server device 35 (step S734). Theserver device 35 relays the disconnection request to the relay device 25 (step S735). Therelay device 25 transmits a response to the server device 35 (step S736). Then, theserver device 35 relays the response to the relay device 15 (step S737). Accordingly, the TCP connection between therelay device 15 and therelay device 25 is disconnected, and therelay device 15 notifies thecommunication device 11 that the TCP connection has been disconnected (step S738). -
FIG. 14 is a flowchart focusing on a processing carried out by therelay device 15 in the processing described with reference toFIG. 13 . First, therelay device 15 confirms whether or not a relay instruction from thecommunication device relay device 15 confirms whether or not a TCP connection is already established with a relay device of a relay destination (step S802). That is, therelay device 15 confirms whether or not the same relay device has already been designated by another communication device and a communication is being carried out with such a relay device. - When a connection is already established with the already instructed relay destination (step S802: YES), the
relay device 15 notifies that data can be relayed to a requesting communication device (step S815). Then, therelay device 15 updates the information of the relay connection database 151 (step S816). That is, since information regarding the TCP connection is already registered in therelay connection database 151, therelay device 15 just adds a client (communication device). In the example illustrated inFIG. 12 , for example, when ClientX and a TCP connection with aconnection number 49583 are associated and stored, therelay device 15 carries out a processing for adding ClientY to the “client” field of such record. - When a connection is yet to be established with the designated relay destination at step S802, the
relay device 15 executes the processing from step S803 to step S814. This processing corresponds to the processing from step S502 to step S513 inFIG. 10 . Since the processing is the same, a description will be omitted. - Next, a description will be made with reference to
FIG. 15 . Under a state in which a TCP connection is established and held, when relay data is transmitted from thecommunication device 11 or the like (step S817: YES), the data is relayed to thecommunication device 21 or the like (step S818). When receiving relay data to be relayed to thecommunication device 11 or the like (step S819: YES), therelay device 15 relays the data to thecommunication device 11 or the like of the relay destination (step S820). When receiving a disconnection request from therelay device 25 of the relay destination (step S821: YES), therelay device 15 transmits a response (step S822) and disconnects the TCP connection (step S823). As described above, when the TCP connection is disconnected from therelay device 25 of the relay destination, therelay device 15 notifies the communication device to which relay transmission is being carried out that the connection with the relay destination has been disconnected to (step S824). When the disconnected TCP connection had been shared among a plurality of communication devices, the disconnection is notified to all of the communication devices (steps S824 and S825). - When a disconnection request is carried out by the requesting communication device (step S826: YES), the
relay device 15 checks whether or not the TCP connection instructed to be disconnected is being shared with another communication device (step S827). When such a TCP connection is being shared with another communication device (step S827: YES), without disconnecting the TCP connection, a formal disconnection notification is carried out to the communication device that has carried out the disconnection instruction (step S828). Then, therelay device 15 updates the information stored in the relay connection database 151 (stepS829). That is, therelay device 15 deletes information of the client (communication device) that has requested the disconnection instruction from the information of the shared TCP connection. Therelay device 15 manages a currently established TCP connection and communication devices sharing the TCP connection at all times as described above. - When the TCP connection instructed to be disconnected is not shared with another communication device (step S827: NO), the
relay device 15 transmits a disconnection request to the relay device 25 (step S830). When receiving a response (step S831: YES), the TCP connection is disconnected (step S832). Then, therelay device 15 notifies the requesting communication device that the connection with the relay destination has been disconnected (step S833) and deletes the information of the TCP connection registered in the relay connection database 151 (step S834). - As described above, according to the third preferred embodiment, when a relay instruction from a communication device generates, a TCP connection is dynamically established with a relay device of a relay destination, and communication can be carried out between private networks. Furthermore, when a relay instruction generates, if a TCP connection is already established with the relay destination, the already established TCP connection is shared. Accordingly, speed of the processing is increased, and resources can be utilized efficiently.
- While the present invention has been described with respect to preferred embodiments thereof, it will be apparent to those skilled in the art that the disclosed invention may be modified in numerous ways and may assume many embodiments other than those specifically set out and described above. Accordingly, the appended claims are intended to cover all modifications of the present invention that fall within the true spirit and scope of the present invention.
Claims (15)
1. A communication system in which data is relayed between terminals, the communication system comprising:
a first relay device which carries out communication with a first communication device;
a server device; and
a second relay device which carries out communication with a second communication device,
wherein the first relay device includes:
a holding unit which inquires a status of the second relay device to the server device, and when the second relay device is capable of accepting a connection, carries out a connection request to the second relay device and dynamically establishes a relay connection with the second relay device and holds the established relay connection, and
a relay unit which relays data received from the first communication device to the second relay device so that the second relay device further relays the data to the second communication device.
2. The communication system according to claim 1 , wherein the first communication device and the second communication device are provided in different private networks, and a connection request for establishing a transmission control protocol connection cannot be carried out from an external network to the first communication device and the second communication device.
3. A relay device which can carry out communication with a first communication device and a server device, the relay device comprising:
a relay unit which relays data received from the first communication device to another relay device; and
a holding unit which inquires a status of the other relay device to the server device, and when the other relay device is capable of accepting a connection, carries out a connection request to the other relay device, dynamically establishes a relay connection with the other relay device and holds the established relay connection,
wherein the other relay device can carry out communication with a second communication device, and the relay unit relays the data received from the first communication device to the other relay device so that the data is further relayed to the second communication device.
4. The relay device according to claim 3 , wherein the holding unit establishes and holds relay connections with a plurality of other relay devices, and the relay unit uses a plurality of the relay connections to relay the data to the plurality of the other relay devices.
5. The relay device according to claim 4 , wherein the holding unit separately disconnects the relay connections held with the plurality of the other relay devices.
6. A communication system in which data is relayed between terminals, the communication system comprising:
a first relay device which can carry out communication with a first communication device;
a server device; and
a second relay device which can carry out communication with a second communication device,
wherein the first relay device includes:
an accepting unit which accepts a relay instruction of data designating the second relay device from the first communication device, and
a holding unit which inquires a status of the second relay device to the server device, and when the second relay device is capable of accepting a connection, carries out a connection request to the second relay device, dynamically establishes a relay connection with the second relay device, and holds the established relay connection,
wherein the first relay device relays the data received from the first communication device to the second relay device so that the second relay device further relays the data to the second communication device.
7. The communication system according to claim 6 , wherein the first communication device and the second communication device are provided indifferent private networks, and a connection request for establishing a transmission control protocol connection cannot be carried out from an external network to the first communication device and the second communication device.
8. A relay device which can carry out communication with a first communication device, the relay device comprising:
an accepting unit which accepts a relay transmission instruction designating another relay device from the first communication device; and
a holding unit which inquires a status of the other relay device to the server device, and when the other relay device is capable of accepting a connection, carries out a connection request to the other relay device, dynamically establishes a relay connection with the other relay device and holds the established relay connection,
wherein the other relay device can carry out communication with a second communication device, and the relay device relays data received from the first communication device to the other relay device so that the data is further relayed to the second communication device.
9. The relay device according to claim 8 , wherein when the other relay device is incapable of accepting a connection, the holding unit notifies a connection impossible state to the first communication device, and when the holding unit receives a notification from the server device that the other relay device can accept a connection, the holding unit notifies a connection possible-state to the first communication device.
10. The relay device according to claim 8 , wherein only data having the first communication device as a transmitter or a transmission destination is relayed over the relay connection held by the holding unit.
11. The relay device according to claim 9 , wherein only data having the first communication device as a transmitter or a transmission destination is relayed over the relay connection held by the holding unit.
12. A communication system in which data is relayed between terminals, the communication system comprising:
a first relay device which can carry out communication with a first communication device;
a server device; and
a second relay device which can carry out communication with a second communication device,
wherein the first relay device includes:
an accepting unit which accepts a relay transmission instruction of data designating the second relay device from the first communication device, and
a holding unit, when a relay connection is yet to be established with the second relay device, the holding unit inquires a status of the second relay device to the server device, and when the second relay device is capable of accepting a connection, the holding unit dynamically establishes a relay connection with the second relay device and holds the established relay connection, and when the relay connection is already established with the second relay device, the holding unit sets so that the first communication device shares the already established relay connection,
wherein the first relay device relays data received from the first communication device to the second relay device, and the second relay device further relays the data to the second communication device.
13. The communication system according to claim 12 , wherein the first communication device and the second communication device are provided in different private networks, and a connection request for a transmission control protocol connection cannot be carried out from an external network to the first communication device and the second communication device.
14. A relay device, which can carry out communication with a first communication device, the relay device comprising:
an accepting unit which accepts a relay transmission instruction designating another relay device from the first communication device; and
a holding unit, when a relay connection is yet to be established with the other relay device, the holding unit inquires a status of the other relay device to a server device, and when the other relay device is capable of accepting a connection, the holding unit dynamically establishes a relay connection with the other relay device and holds the established relay connection, and when the relay connection is already established with the other relay device, the holding unit sets so that the first communication device shares the already established relay connection,
wherein the other relay device can carry out communication with the second communication device, and the relay device relays data received from the first communication device to the other relay device so that the data is further relayed to the second communication device.
15. The relay device according to claim 14 , wherein when receiving a notification from the first communication device to terminate a relay transmission being carried out to the other relay device, in case another communication device is carrying out a relay transmission to the other relay device, the holding unit holds the relay connection with the other relay device, and in case none of other communication devices is carrying out a relay transmission to the other relay device, the holding unit disconnects the relay connection established with the other relay device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/341,711 US8499083B2 (en) | 2006-03-29 | 2011-12-30 | Relay device and communication system |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006-090692 | 2006-03-29 | ||
JP2006090692A JP4333684B2 (en) | 2006-03-29 | 2006-03-29 | Relay device and communication system |
JP2006-090691 | 2006-03-29 | ||
JP2006090691A JP4535019B2 (en) | 2006-03-29 | 2006-03-29 | Relay device and communication system |
JP2006-090690 | 2006-03-29 | ||
JP2006090690A JP4492575B2 (en) | 2006-03-29 | 2006-03-29 | Relay device and communication system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/341,711 Continuation US8499083B2 (en) | 2006-03-29 | 2011-12-30 | Relay device and communication system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20070233844A1 true US20070233844A1 (en) | 2007-10-04 |
Family
ID=38560738
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/723,466 Abandoned US20070233844A1 (en) | 2006-03-29 | 2007-03-20 | Relay device and communication system |
US13/341,711 Active US8499083B2 (en) | 2006-03-29 | 2011-12-30 | Relay device and communication system |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/341,711 Active US8499083B2 (en) | 2006-03-29 | 2011-12-30 | Relay device and communication system |
Country Status (1)
Country | Link |
---|---|
US (2) | US20070233844A1 (en) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080063001A1 (en) * | 2006-09-12 | 2008-03-13 | Murata Machinery, Ltd. | Relay-server |
US20080091768A1 (en) * | 2006-10-11 | 2008-04-17 | Murata Machinery, Ltd | File transfer server |
US20080089349A1 (en) * | 2006-10-11 | 2008-04-17 | Murata Machinery, Ltd | File server device |
US20080137672A1 (en) * | 2006-12-11 | 2008-06-12 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20080147825A1 (en) * | 2006-12-19 | 2008-06-19 | Murata Machinery, Ltd. | Relay server and client terminal |
US20080275953A1 (en) * | 2007-05-02 | 2008-11-06 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20080275945A1 (en) * | 2007-05-02 | 2008-11-06 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20080281981A1 (en) * | 2007-05-09 | 2008-11-13 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20080288591A1 (en) * | 2006-11-24 | 2008-11-20 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication device |
US20090164637A1 (en) * | 2007-12-25 | 2009-06-25 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20090164636A1 (en) * | 2007-12-25 | 2009-06-25 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20090172075A1 (en) * | 2007-12-28 | 2009-07-02 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20090172166A1 (en) * | 2007-12-27 | 2009-07-02 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20100085957A1 (en) * | 2008-10-03 | 2010-04-08 | Elias Mark A | Methods and Apparatus to Form Secure Cross-Virtual Private Network Communications Sessions |
US20100235497A1 (en) * | 2009-03-11 | 2010-09-16 | Canon Kabushiki Kaisha | Information processing apparatus and communication processing method thereof |
US20110161525A1 (en) * | 2008-09-01 | 2011-06-30 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20110179167A1 (en) * | 2008-09-05 | 2011-07-21 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication apparatus |
US20120166593A1 (en) * | 2010-12-27 | 2012-06-28 | Samsung Sds Co., Ltd. | Data transmission system and method using relay server |
US20130136130A1 (en) * | 2011-11-30 | 2013-05-30 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8798082B2 (en) | 2009-05-15 | 2014-08-05 | Murata Machinery, Ltd. | Relay communication system and first relay server |
US20150312363A1 (en) * | 2014-04-25 | 2015-10-29 | Pravala Networks Inc. | Using proxy devices as dynamic data relays |
US20170012828A1 (en) * | 2015-07-08 | 2017-01-12 | Kabushiki Kaisha Toshiba | Relay apparatus |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011063844A1 (en) | 2009-11-26 | 2011-06-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Method, system and network nodes for performing a sip transaction in a session initiation protocol based communications network |
WO2016084429A1 (en) * | 2014-11-26 | 2016-06-02 | 株式会社リコー | Control system, communication terminal, control device, communication system, control method, and program |
TWI595765B (en) * | 2015-10-22 | 2017-08-11 | 財團法人工業技術研究院 | Method and communication device for network address translation traversal |
TWI699099B (en) * | 2019-03-19 | 2020-07-11 | 中華電信股份有限公司 | Processing system and method thereof for communication between single or cross-region service hosts |
JP7338200B2 (en) * | 2019-03-29 | 2023-09-05 | 村田機械株式会社 | Maintenance method and maintenance server |
JP2020170452A (en) * | 2019-04-05 | 2020-10-15 | 村田機械株式会社 | Maintenance method and maintenance server |
US11159586B2 (en) * | 2019-05-07 | 2021-10-26 | Jive Communications, Inc. | Dynamically controlling relay communication links during a communication session |
Citations (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5224205A (en) * | 1990-05-21 | 1993-06-29 | International Business Machines Corp. | Method of combining architecturally dissimilar computing networks into a single logical network |
US5535375A (en) * | 1992-04-20 | 1996-07-09 | International Business Machines Corporation | File manager for files shared by heterogeneous clients |
US5848134A (en) * | 1996-01-31 | 1998-12-08 | Sony Corporation | Method and apparatus for real-time information processing in a multi-media system |
US5884312A (en) * | 1997-02-28 | 1999-03-16 | Electronic Data Systems Corporation | System and method for securely accessing information from disparate data sources through a network |
US6061796A (en) * | 1997-08-26 | 2000-05-09 | V-One Corporation | Multi-access virtual private network |
US6111883A (en) * | 1996-07-12 | 2000-08-29 | Hitachi, Ltd. | Repeater and network system utilizing the same |
US6145084A (en) * | 1998-10-08 | 2000-11-07 | Net I Trust | Adaptive communication system enabling dissimilar devices to exchange information over a network |
US6178427B1 (en) * | 1998-05-07 | 2001-01-23 | Platinum Technology Ip, Inc. | Method of mirroring log datasets using both log file data and live log data including gaps between the two data logs |
US6215877B1 (en) * | 1998-03-20 | 2001-04-10 | Fujitsu Limited | Key management server, chat system terminal unit, chat system and recording medium |
US6222536B1 (en) * | 1996-12-30 | 2001-04-24 | Korea Telecom | Method and apparatus for providing a number of subscribers with on-line banking service employing a plurality of bank systems |
US6226692B1 (en) * | 1995-12-15 | 2001-05-01 | Object Dynamics Corporation | Method and system for constructing software components and systems as assemblies of independent parts |
US6237023B1 (en) * | 1996-06-14 | 2001-05-22 | Canon Kabushiki Kaisha | System for controlling the authority of a terminal capable of simultaneously operating a plurality of client softwares which transmit service requests |
US20010044819A1 (en) * | 1997-11-07 | 2001-11-22 | International Business Machines Corporation | Relay server for unsigned applets |
US20010047414A1 (en) * | 2000-05-29 | 2001-11-29 | Yoon Ki J. | Dedicated private network service method having backup and loads-balancing functions |
US6336141B1 (en) * | 1997-01-08 | 2002-01-01 | Hitachi, Ltd. | Method of collectively managing dispersive log, network system and relay computer for use in the same |
US20020023143A1 (en) * | 2000-04-11 | 2002-02-21 | Stephenson Mark M. | System and method for projecting content beyond firewalls |
US20020029276A1 (en) * | 2000-04-12 | 2002-03-07 | Samuel Bendinelli | Methods and systems for an extranet |
US20020032616A1 (en) * | 2000-08-22 | 2002-03-14 | Kazunori Suzuki | Relay server, relaying method and payment system |
US20020056003A1 (en) * | 2000-04-11 | 2002-05-09 | Dinkar Goswami | System and method for real-time multi-directional file-based data streaming editor |
US20020073182A1 (en) * | 2000-12-08 | 2002-06-13 | Zakurdaev Maxim V. | Method and apparatus for a smart DHCP relay |
US20020095506A1 (en) * | 2001-01-15 | 2002-07-18 | Murata Kikai Kabushiki Kaisha | Relay server, communication system and facsimile system |
US20020118398A1 (en) * | 2001-01-15 | 2002-08-29 | Murata Kikai Kabushiki Kaisha | Relay server, communication system and facsimile system |
US20020143922A1 (en) * | 2001-04-03 | 2002-10-03 | Murata Kikai Kabushiki Kaisha | Relay server and relay system |
US20020143956A1 (en) * | 2001-04-03 | 2002-10-03 | Murata Kikai Kabushiki Kaisha | Relay server |
US20020143960A1 (en) * | 2000-08-02 | 2002-10-03 | Erez Goren | Virtual network generation system and method |
US20020143957A1 (en) * | 2001-04-03 | 2002-10-03 | Murata Kikai Kabushiki Kaisha | Relay server, network device, communication system, and communication method |
US20020143855A1 (en) * | 2001-01-22 | 2002-10-03 | Traversat Bernard A. | Relay peers for extending peer availability in a peer-to-peer networking environment |
US20020146002A1 (en) * | 2001-04-10 | 2002-10-10 | Takayuki Sato | Network administration apparatus, network administrating program, network administrating method and computer network system |
US20020156875A1 (en) * | 2001-04-24 | 2002-10-24 | Kuldipsingh Pabla | Peer group name server |
US20030021232A1 (en) * | 2001-07-27 | 2003-01-30 | Jerome Duplaix | Scalable router |
US20030055741A1 (en) * | 2001-08-21 | 2003-03-20 | Kabushiki Kaisha Toshiba | Server for exchanging design information, method for exchanging design information, program for exchanging design information, buying method of special design product and selling method of special design product |
US6538773B1 (en) * | 1999-03-26 | 2003-03-25 | International Business Machines Corporation | Method and apparatus for rendering grayscales at a facsimile presentation device using a calibrated transform |
US6546488B2 (en) * | 1997-09-22 | 2003-04-08 | Hughes Electronics Corporation | Broadcast delivery of information to a personal computer for local storage and access |
US6564261B1 (en) * | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
US20030097456A1 (en) * | 2001-11-08 | 2003-05-22 | Huh Mi Young | Method for synchronizing registration information within intra-domain |
US6594246B1 (en) * | 1998-07-10 | 2003-07-15 | Malibu Networks, Inc. | IP-flow identification in a wireless point to multi-point transmission system |
US6636513B1 (en) * | 1995-09-06 | 2003-10-21 | Fujitsu Limited | Switching system |
US6650631B1 (en) * | 1997-03-11 | 2003-11-18 | Verizon Services Corp. | Public IP transport network |
US20040068524A1 (en) * | 2002-04-03 | 2004-04-08 | Aboulhosn Amir L. | Peer-to-peer file sharing |
US20040073610A1 (en) * | 2002-09-30 | 2004-04-15 | Katsuhiko Terada | Contents reproducing system |
US20040083385A1 (en) * | 2002-10-25 | 2004-04-29 | Suhail Ahmed | Dynamic network security apparatus and methods for network processors |
US6754212B1 (en) * | 1996-07-12 | 2004-06-22 | Hitachi, Ltd. | Repeater and network system utililzing the same |
US6757365B1 (en) * | 2000-10-16 | 2004-06-29 | Tellme Networks, Inc. | Instant messaging via telephone interfaces |
US6765686B2 (en) * | 1997-11-14 | 2004-07-20 | Canon Kabushiki Kaisha | Image processing apparatus, method of controlling same, and image processing system |
US6766373B1 (en) * | 2000-05-31 | 2004-07-20 | International Business Machines Corporation | Dynamic, seamless switching of a network session from one connection route to another |
US20040162871A1 (en) * | 2003-02-13 | 2004-08-19 | Pabla Kuldipsingh A. | Infrastructure for accessing a peer-to-peer network environment |
US20040172395A1 (en) * | 2003-02-28 | 2004-09-02 | Microsoft Corporation | Method to delay locking of server files on edit |
US20040243703A1 (en) * | 2003-04-14 | 2004-12-02 | Nbt Technology, Inc. | Cooperative proxy auto-discovery and connection interception |
US20040255048A1 (en) * | 2001-08-01 | 2004-12-16 | Etai Lev Ran | Virtual file-sharing network |
US20040267939A1 (en) * | 2003-06-30 | 2004-12-30 | Hitachi, Ltd. | Session control apparatus, software applied to session control apparatus, communication control method, and network system |
US6889256B1 (en) * | 1999-06-11 | 2005-05-03 | Microsoft Corporation | System and method for converting and reconverting between file system requests and access requests of a remote transfer protocol |
US6898641B1 (en) * | 2000-04-10 | 2005-05-24 | Fujitsu Limited | Network routing system and routing apparatus |
US20050144289A1 (en) * | 2003-12-03 | 2005-06-30 | Hitachi, Ltd. | Connection control system, connection control equipment and connection management equipment |
US6950879B2 (en) * | 2001-01-24 | 2005-09-27 | Interland, Inc. | Using virtual network address information during communications |
US20050216523A1 (en) * | 2004-03-26 | 2005-09-29 | Akihiko Sakaguchi | File management method in a distributed storage system |
US20050281251A1 (en) * | 2004-06-21 | 2005-12-22 | Hitachi, Ltd. | Session control system for hierarchical relaying processes |
US20050287998A1 (en) * | 2004-06-29 | 2005-12-29 | Nec Corporation | Conference assisting system and method |
US6988199B2 (en) * | 2000-07-07 | 2006-01-17 | Message Secure | Secure and reliable document delivery |
US20060020695A1 (en) * | 2001-12-20 | 2006-01-26 | Microsoft Corporation | Scaling and delivering distributed applications |
US7000248B2 (en) * | 2000-11-01 | 2006-02-14 | Nec Corporation | Virtual network and virtual network connection system |
US20060083171A1 (en) * | 2004-07-13 | 2006-04-20 | Aruze Corporation | Media communication apparatus and media communication program product |
US20060101064A1 (en) * | 2004-11-08 | 2006-05-11 | Sharpcast, Inc. | Method and apparatus for a file sharing and synchronization system |
US20060117076A1 (en) * | 2004-11-29 | 2006-06-01 | Spencer William A | Method for replication tracing |
US20060149771A1 (en) * | 2005-01-05 | 2006-07-06 | Hitachi, Ltd. | Information processing system and communication retry method |
US20060187902A1 (en) * | 2005-02-24 | 2006-08-24 | Oliver Birch | Method and apparatus for session initiation protocol application design, development, execution and integration |
US20060206616A1 (en) * | 2005-03-14 | 2006-09-14 | Gridiron Software, Inc. | Decentralized secure network login |
US7110393B1 (en) * | 2001-02-28 | 2006-09-19 | 3Com Corporation | System and method for providing user mobility handling in a network telephony system |
US7120927B1 (en) * | 1999-06-09 | 2006-10-10 | Siemens Communications, Inc. | System and method for e-mail alias registration |
US20060256771A1 (en) * | 2005-05-12 | 2006-11-16 | Yahoo! Inc. | Proxy server for relaying VOIP messages |
US20060259553A1 (en) * | 2003-02-03 | 2006-11-16 | Jun Kawakita | Synchronization program |
US20060282540A1 (en) * | 2005-06-08 | 2006-12-14 | Murata Kikai Kabushiki Kaisha | File server device, communication management server device, and network system including the file server device and the communication management server device |
US7152111B2 (en) * | 2002-08-15 | 2006-12-19 | Digi International Inc. | Method and apparatus for a client connection manager |
US20070019545A1 (en) * | 2005-07-20 | 2007-01-25 | Mci, Inc. | Method and system for securing real-time media streams in support of interdomain traversal |
US20070022477A1 (en) * | 2001-01-18 | 2007-01-25 | Science Applications International Corporation | Third party vpn certification |
US7181542B2 (en) * | 2000-04-12 | 2007-02-20 | Corente, Inc. | Method and system for managing and configuring virtual private networks |
US7191195B2 (en) * | 2001-11-28 | 2007-03-13 | Oki Electric Industry Co., Ltd. | Distributed file sharing system and a file access control method of efficiently searching for access rights |
US7200642B2 (en) * | 2001-04-29 | 2007-04-03 | Geodigm Corporation | Method and apparatus for electronic delivery of electronic model images |
US20070081530A1 (en) * | 2003-09-11 | 2007-04-12 | Yuji Nomura | Packet relay apparatus |
US20070106795A1 (en) * | 2005-11-08 | 2007-05-10 | Gilfix Michael A | Automatic orchestration of dynamic multiple party, multiple media communications |
US20070192434A1 (en) * | 2006-02-13 | 2007-08-16 | Fujitsu Limited | Network system, terminal, and gateway |
US7299275B2 (en) * | 2002-06-03 | 2007-11-20 | Matsushita Electric Industrial Co., Ltd. | Content delivery system for dynamically and optimally relocates contents to archive server, edge servers and terminal storage devices based on users' viewing tendency |
US20080098088A1 (en) * | 2005-01-13 | 2008-04-24 | Hirokazu Tamano | Communication System, Terminal Device And Communication Device |
US7412489B2 (en) * | 2003-08-21 | 2008-08-12 | Ameriprise Financial, Inc. | Method and system for electronic archival and retrieval of electronic communications |
US20090177573A1 (en) * | 2003-11-18 | 2009-07-09 | Beadle Alastair J D | System and method for managing relationships between brokers and traders |
US7624175B1 (en) * | 2003-11-03 | 2009-11-24 | Sprint Communications Company L.P. | Update messaging system |
US7660809B2 (en) * | 2005-01-31 | 2010-02-09 | Microsoft Corporation | Using a file server as a central shared database |
US7701954B2 (en) * | 1999-04-13 | 2010-04-20 | Broadcom Corporation | Gateway with voice |
US7860978B2 (en) * | 2004-01-22 | 2010-12-28 | Toshiba America Research, Inc. | Establishing a secure tunnel to access router |
Family Cites Families (93)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000083067A (en) | 1998-06-24 | 2000-03-21 | Furukawa Electric Co Ltd:The | Network system, inter-network connecting device having inquiry function and inter-network connecting device having holding function |
JP2000099384A (en) | 1998-09-17 | 2000-04-07 | Nippon Telegr & Teleph Corp <Ntt> | Method and system for high-security data link between various communication networks and storage medium storing data link program |
JP2998839B1 (en) | 1998-10-08 | 2000-01-17 | 株式会社エヌ・ティ・ティ・データ | Data communication method, data relay device, and recording medium |
JP3415456B2 (en) | 1998-10-19 | 2003-06-09 | 日本電気株式会社 | Network system, command use authority control method, and storage medium storing control program |
GB2350269B (en) | 1999-05-20 | 2003-10-22 | Virtual Access Ireland Ltd | An interface apparatus and method |
JP4170523B2 (en) | 1999-06-30 | 2008-10-22 | 富士通株式会社 | Conversation support method and conversation support apparatus |
JP2001092702A (en) | 1999-09-20 | 2001-04-06 | Fujitsu Ltd | Information processing system, server device, client device and recording medium |
JP2001155007A (en) | 1999-12-01 | 2001-06-08 | Ntt Comware Corp | Synchronizing system for data base, data transmitting/ receiving system and electronic perusal system |
JP2001184289A (en) | 1999-12-27 | 2001-07-06 | Js Corporation:Kk | Chat system and information offering system on internet including the chat system |
EP1139631A1 (en) | 2000-03-31 | 2001-10-04 | BRITISH TELECOMMUNICATIONS public limited company | Method of initiating a data transfer from a server to a client |
US7301952B2 (en) * | 2000-04-06 | 2007-11-27 | The Distribution Systems Research Institute | Terminal-to-terminal communication connection control method using IP transfer network |
JP2001306382A (en) | 2000-04-24 | 2001-11-02 | Hitachi Ltd | Method for accessing shared file, device for executing the method and recording medium recording its processing program |
JP2002007182A (en) | 2000-06-20 | 2002-01-11 | Nec Corp | Shared file control system for external storage device |
JP4092388B2 (en) | 2000-11-10 | 2008-05-28 | 富士通株式会社 | Service providing method using network and service providing system using the same |
JP3489562B2 (en) | 2000-12-26 | 2004-01-19 | 村田機械株式会社 | Internet facsimile communication system and internet facsimile apparatus |
JP4231985B2 (en) | 2001-01-16 | 2009-03-04 | 村田機械株式会社 | Relay server and communication system |
JP4231984B2 (en) | 2001-01-15 | 2009-03-04 | 村田機械株式会社 | Relay server and communication system |
JP2002247036A (en) | 2001-02-21 | 2002-08-30 | Nec Corp | Network management system, its method and storage medium recording program for the method |
JP2002269059A (en) | 2001-03-08 | 2002-09-20 | Ntt Comware Corp | Client server system, repeating server, method for determining connection destination server of client terminal device |
JP2002288415A (en) | 2001-03-28 | 2002-10-04 | Sanyo Electric Co Ltd | Agent support device |
JP3743506B2 (en) | 2001-04-03 | 2006-02-08 | 村田機械株式会社 | Relay server and relay system |
JP3743507B2 (en) | 2001-07-16 | 2006-02-08 | 村田機械株式会社 | Relay server |
JP2002342144A (en) | 2001-05-21 | 2002-11-29 | Toshiba Corp | File sharing system, program and file transferring method |
US6687733B2 (en) | 2001-06-01 | 2004-02-03 | Intergenix | Method and system for automatically configuring a client-server network |
JP2003006022A (en) | 2001-06-18 | 2003-01-10 | Fuji Electric Co Ltd | Information distributing method in system information distribution system |
JP2003006032A (en) | 2001-06-19 | 2003-01-10 | Fujitsu Ltd | Distributed file sharing system |
JP2003101565A (en) | 2001-07-17 | 2003-04-04 | Mitsubishi Materials Corp | Mobile object management server, wireless mobile router, and accounting method |
JP2003223521A (en) | 2002-01-29 | 2003-08-08 | Mitsubishi Electric Corp | Facility management system and method |
US6978627B2 (en) | 2002-01-31 | 2005-12-27 | Mitsubishi Denki Kabushiki Kaisha | Air conditioner control system, central remote controller, and facility controller |
JP4202378B2 (en) | 2002-01-31 | 2008-12-24 | 三菱電機株式会社 | Air conditioning system |
JP2003258917A (en) | 2002-02-28 | 2003-09-12 | Spinnaker:Kk | High-function gateway |
JP3789842B2 (en) | 2002-03-28 | 2006-06-28 | エヌ・ティ・ティ・コムウェア株式会社 | Content management method with security function and content management device with security function |
US7702726B1 (en) | 2002-04-10 | 2010-04-20 | 3Com Corporation | System and methods for providing presence services in IP network |
JP2004013479A (en) | 2002-06-06 | 2004-01-15 | Nec Corp | Communication network and remote file access method |
CN1178428C (en) | 2002-09-12 | 2004-12-01 | 联想(北京)有限公司 | Service renting and authorizing method for realizing resource sharing in household network |
JP2004133600A (en) | 2002-10-09 | 2004-04-30 | Matsushita Electric Ind Co Ltd | Electronic data sharing system and method using email and recording medium for achieving this method |
JP2004139291A (en) | 2002-10-17 | 2004-05-13 | Hitachi Ltd | Data communication repeater |
JP3990272B2 (en) | 2002-12-20 | 2007-10-10 | 富士通株式会社 | Mailing list management system and e-mail transmission / reception device |
JP2004213533A (en) | 2003-01-08 | 2004-07-29 | Seiko Epson Corp | Screen reception device, screen delivery device, screen information transmission/reception system, screen reception method, screen delivery method and program therefor |
JP2004215135A (en) | 2003-01-08 | 2004-07-29 | Fuji Xerox Co Ltd | Image processor |
JP4052126B2 (en) | 2003-01-22 | 2008-02-27 | 日本電気株式会社 | Leased line service providing system and leased line service method used therefor |
JP4349365B2 (en) * | 2003-02-19 | 2009-10-21 | 日本ビクター株式会社 | Control information transmission method, relay server, and controlled device |
JP2004310371A (en) | 2003-04-04 | 2004-11-04 | Nippon Telegr & Teleph Corp <Ntt> | System, method, server for sharing file and client terminal for file sharing service, file sharing program and recording medium with program recorded |
JP4165283B2 (en) | 2003-04-22 | 2008-10-15 | 村田機械株式会社 | Facsimile machine |
JP2004341849A (en) | 2003-05-15 | 2004-12-02 | Cybozu Inc | Information sharing system, information sharing support server and program |
JP2004362166A (en) | 2003-06-03 | 2004-12-24 | J'z Factory:Kk | Data management system and method, server, computer program, and recording medium recorded with computer program |
JP2005027040A (en) | 2003-07-02 | 2005-01-27 | Ricoh Co Ltd | Monitoring method, program and centralized monitoring program |
JP2005038104A (en) | 2003-07-17 | 2005-02-10 | Toshiba Corp | Information processor |
JP3941763B2 (en) | 2003-09-09 | 2007-07-04 | 日本電信電話株式会社 | Congestion control system for client-server service |
US7467190B2 (en) | 2003-10-06 | 2008-12-16 | Hitachi, Ltd. | Method and apparatus for alert distribution and archive sharing |
US7567987B2 (en) | 2003-10-24 | 2009-07-28 | Microsoft Corporation | File sharing in P2P group shared spaces |
US20050114436A1 (en) | 2003-11-12 | 2005-05-26 | Sandeep Betarbet | Terminating file handling system |
JP4310174B2 (en) | 2003-11-26 | 2009-08-05 | 株式会社日立製作所 | Large display system |
JP2005167608A (en) | 2003-12-02 | 2005-06-23 | Canon Inc | System and method for ciphered communication computer program, and computer readable recording medium |
JP4576115B2 (en) | 2003-12-18 | 2010-11-04 | 株式会社日立製作所 | VoIP gateway device and method for controlling call arrival and departure in VoIP gateway device |
JP2005210352A (en) | 2004-01-22 | 2005-08-04 | Nec Engineering Ltd | Ip address converter and converting method |
US8065418B1 (en) * | 2004-02-02 | 2011-11-22 | Apple Inc. | NAT traversal for media conferencing |
GB2411541B (en) | 2004-02-26 | 2006-09-13 | Siemens Ag | A sip server |
EP1730911A1 (en) | 2004-03-30 | 2006-12-13 | Matsushita Electric Industries Co., Ltd. | Content relay server, content relay system, content relay method, and program using the same |
JP3940135B2 (en) | 2004-05-13 | 2007-07-04 | 日本電信電話株式会社 | RESOURCE MANAGEMENT SYSTEM AND METHOD, PROGRAM, AND RECORDING MEDIUM CONTAINING PROGRAM |
JP2006013757A (en) | 2004-06-24 | 2006-01-12 | Matsushita Electric Ind Co Ltd | Home network remote management system |
JP4366270B2 (en) | 2004-07-30 | 2009-11-18 | キヤノン株式会社 | Network connection setting device and network connection setting method |
JP2006067045A (en) | 2004-08-25 | 2006-03-09 | Canon Inc | Communications device, its control method and program |
EP1789888A4 (en) | 2004-09-03 | 2009-09-23 | Open Text Corp | Systems and methods for collaboration |
GB2420257B (en) | 2004-11-16 | 2007-12-12 | Vodafone Plc | Facilitating distribution of information in a network |
JP2006172192A (en) | 2004-12-16 | 2006-06-29 | Nec Corp | System and method for inter-enterprise data exchange, and its program |
WO2006090465A1 (en) | 2005-02-24 | 2006-08-31 | Fujitsu Limited | Connection support device and gateway device |
JP2006268138A (en) | 2005-03-22 | 2006-10-05 | Fuji Xerox Co Ltd | Image forming apparatus, information processing method, information processing program and peer-to-peer system |
JP4379379B2 (en) | 2005-04-27 | 2009-12-09 | 株式会社日立製作所 | Network system |
EP1891782B1 (en) | 2005-05-26 | 2018-08-22 | XConnect Global Networks Ltd. | Detection of spit in voip calls |
JP2007074035A (en) | 2005-09-02 | 2007-03-22 | Canon Inc | Communication apparatus and information processing method |
JP2007086910A (en) | 2005-09-20 | 2007-04-05 | Nec Corp | Information sharing system, information sharing method and information sharing program |
JP2007104440A (en) | 2005-10-05 | 2007-04-19 | Dit:Kk | Packet transmission system, its method, and tunneling device |
JP2007265135A (en) | 2006-03-29 | 2007-10-11 | Murata Mach Ltd | Data management server and communication system |
JP2007310508A (en) | 2006-05-16 | 2007-11-29 | Nippon Telegraph & Telephone East Corp | Thin client system and program for thin client terminal |
JP5101852B2 (en) | 2006-10-05 | 2012-12-19 | 日本電信電話株式会社 | Connection control system, connection control method, and data relay device |
JP2008098888A (en) | 2006-10-11 | 2008-04-24 | Murata Mach Ltd | Relay server |
EP1942634B1 (en) | 2006-11-24 | 2012-08-29 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication device |
JP4274231B2 (en) | 2006-11-24 | 2009-06-03 | 村田機械株式会社 | Relay server and relay communication system |
JP5125087B2 (en) | 2006-12-13 | 2013-01-23 | 村田機械株式会社 | Relay server |
JP4957225B2 (en) | 2006-12-11 | 2012-06-20 | 村田機械株式会社 | Relay server and relay communication system |
JP4661774B2 (en) | 2006-12-12 | 2011-03-30 | 村田機械株式会社 | Relay server |
JP4333736B2 (en) | 2006-12-19 | 2009-09-16 | 村田機械株式会社 | Relay server and client terminal |
JP4453698B2 (en) | 2006-12-19 | 2010-04-21 | 村田機械株式会社 | Relay server |
WO2008085203A2 (en) | 2006-12-29 | 2008-07-17 | Prodea Systems, Inc. | Presence status notification from digital endpoint devices through a multi-services gateway device at the user premises |
EP1990974A3 (en) | 2007-05-02 | 2010-03-24 | Murata Machinery, Ltd. | Relay server and relay communication system |
JP4656536B2 (en) | 2007-05-09 | 2011-03-23 | 村田機械株式会社 | Relay server and relay communication system |
JP4750761B2 (en) | 2007-07-23 | 2011-08-17 | 日本電信電話株式会社 | Connection control system, connection control method, connection control program, and relay device |
JP5257968B2 (en) | 2007-07-24 | 2013-08-07 | 日本電信電話株式会社 | Information sharing method, information sharing network system, information sharing server and program |
JP4753165B2 (en) | 2007-12-28 | 2011-08-24 | 村田機械株式会社 | Relay server and relay communication system |
JP4784598B2 (en) | 2007-12-28 | 2011-10-05 | 村田機械株式会社 | Relay server and relay communication system |
JP2009252159A (en) | 2008-04-10 | 2009-10-29 | Murata Mach Ltd | File sharing system |
JP2009265919A (en) | 2008-04-24 | 2009-11-12 | Murata Mach Ltd | File sharing system and relay server |
-
2007
- 2007-03-20 US US11/723,466 patent/US20070233844A1/en not_active Abandoned
-
2011
- 2011-12-30 US US13/341,711 patent/US8499083B2/en active Active
Patent Citations (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5224205A (en) * | 1990-05-21 | 1993-06-29 | International Business Machines Corp. | Method of combining architecturally dissimilar computing networks into a single logical network |
US5535375A (en) * | 1992-04-20 | 1996-07-09 | International Business Machines Corporation | File manager for files shared by heterogeneous clients |
US6636513B1 (en) * | 1995-09-06 | 2003-10-21 | Fujitsu Limited | Switching system |
US6226692B1 (en) * | 1995-12-15 | 2001-05-01 | Object Dynamics Corporation | Method and system for constructing software components and systems as assemblies of independent parts |
US5848134A (en) * | 1996-01-31 | 1998-12-08 | Sony Corporation | Method and apparatus for real-time information processing in a multi-media system |
US6237023B1 (en) * | 1996-06-14 | 2001-05-22 | Canon Kabushiki Kaisha | System for controlling the authority of a terminal capable of simultaneously operating a plurality of client softwares which transmit service requests |
US6111883A (en) * | 1996-07-12 | 2000-08-29 | Hitachi, Ltd. | Repeater and network system utilizing the same |
US6754212B1 (en) * | 1996-07-12 | 2004-06-22 | Hitachi, Ltd. | Repeater and network system utililzing the same |
US6222536B1 (en) * | 1996-12-30 | 2001-04-24 | Korea Telecom | Method and apparatus for providing a number of subscribers with on-line banking service employing a plurality of bank systems |
US6336141B1 (en) * | 1997-01-08 | 2002-01-01 | Hitachi, Ltd. | Method of collectively managing dispersive log, network system and relay computer for use in the same |
US5884312A (en) * | 1997-02-28 | 1999-03-16 | Electronic Data Systems Corporation | System and method for securely accessing information from disparate data sources through a network |
US6650631B1 (en) * | 1997-03-11 | 2003-11-18 | Verizon Services Corp. | Public IP transport network |
US6061796A (en) * | 1997-08-26 | 2000-05-09 | V-One Corporation | Multi-access virtual private network |
US6546488B2 (en) * | 1997-09-22 | 2003-04-08 | Hughes Electronics Corporation | Broadcast delivery of information to a personal computer for local storage and access |
US20010044819A1 (en) * | 1997-11-07 | 2001-11-22 | International Business Machines Corporation | Relay server for unsigned applets |
US6324574B1 (en) * | 1997-11-07 | 2001-11-27 | International Business Machines Corporation | Relay server for unsigned applets |
US6765686B2 (en) * | 1997-11-14 | 2004-07-20 | Canon Kabushiki Kaisha | Image processing apparatus, method of controlling same, and image processing system |
US6215877B1 (en) * | 1998-03-20 | 2001-04-10 | Fujitsu Limited | Key management server, chat system terminal unit, chat system and recording medium |
US6178427B1 (en) * | 1998-05-07 | 2001-01-23 | Platinum Technology Ip, Inc. | Method of mirroring log datasets using both log file data and live log data including gaps between the two data logs |
US6594246B1 (en) * | 1998-07-10 | 2003-07-15 | Malibu Networks, Inc. | IP-flow identification in a wireless point to multi-point transmission system |
US6145084A (en) * | 1998-10-08 | 2000-11-07 | Net I Trust | Adaptive communication system enabling dissimilar devices to exchange information over a network |
US6538773B1 (en) * | 1999-03-26 | 2003-03-25 | International Business Machines Corporation | Method and apparatus for rendering grayscales at a facsimile presentation device using a calibrated transform |
US7701954B2 (en) * | 1999-04-13 | 2010-04-20 | Broadcom Corporation | Gateway with voice |
US6564261B1 (en) * | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
US7120927B1 (en) * | 1999-06-09 | 2006-10-10 | Siemens Communications, Inc. | System and method for e-mail alias registration |
US6889256B1 (en) * | 1999-06-11 | 2005-05-03 | Microsoft Corporation | System and method for converting and reconverting between file system requests and access requests of a remote transfer protocol |
US6898641B1 (en) * | 2000-04-10 | 2005-05-24 | Fujitsu Limited | Network routing system and routing apparatus |
US20020056003A1 (en) * | 2000-04-11 | 2002-05-09 | Dinkar Goswami | System and method for real-time multi-directional file-based data streaming editor |
US20020023143A1 (en) * | 2000-04-11 | 2002-02-21 | Stephenson Mark M. | System and method for projecting content beyond firewalls |
US20020029276A1 (en) * | 2000-04-12 | 2002-03-07 | Samuel Bendinelli | Methods and systems for an extranet |
US7181542B2 (en) * | 2000-04-12 | 2007-02-20 | Corente, Inc. | Method and system for managing and configuring virtual private networks |
US7174378B2 (en) * | 2000-05-29 | 2007-02-06 | Nitgen Technologies, Inc. | Co-location service system equipped with global load balancing (GLB) function among dispersed IDCS |
US20010047414A1 (en) * | 2000-05-29 | 2001-11-29 | Yoon Ki J. | Dedicated private network service method having backup and loads-balancing functions |
US6766373B1 (en) * | 2000-05-31 | 2004-07-20 | International Business Machines Corporation | Dynamic, seamless switching of a network session from one connection route to another |
US6988199B2 (en) * | 2000-07-07 | 2006-01-17 | Message Secure | Secure and reliable document delivery |
US20020143960A1 (en) * | 2000-08-02 | 2002-10-03 | Erez Goren | Virtual network generation system and method |
US20020032616A1 (en) * | 2000-08-22 | 2002-03-14 | Kazunori Suzuki | Relay server, relaying method and payment system |
US6757365B1 (en) * | 2000-10-16 | 2004-06-29 | Tellme Networks, Inc. | Instant messaging via telephone interfaces |
US7000248B2 (en) * | 2000-11-01 | 2006-02-14 | Nec Corporation | Virtual network and virtual network connection system |
US20020073182A1 (en) * | 2000-12-08 | 2002-06-13 | Zakurdaev Maxim V. | Method and apparatus for a smart DHCP relay |
US20020095506A1 (en) * | 2001-01-15 | 2002-07-18 | Murata Kikai Kabushiki Kaisha | Relay server, communication system and facsimile system |
US7206088B2 (en) * | 2001-01-15 | 2007-04-17 | Murata Kikai Kabushiki Kaisha | Relay server, communication system and facsimile system |
US20020118398A1 (en) * | 2001-01-15 | 2002-08-29 | Murata Kikai Kabushiki Kaisha | Relay server, communication system and facsimile system |
US20070022477A1 (en) * | 2001-01-18 | 2007-01-25 | Science Applications International Corporation | Third party vpn certification |
US7574523B2 (en) * | 2001-01-22 | 2009-08-11 | Sun Microsystems, Inc. | Relay peers for extending peer availability in a peer-to-peer networking environment |
US20020143855A1 (en) * | 2001-01-22 | 2002-10-03 | Traversat Bernard A. | Relay peers for extending peer availability in a peer-to-peer networking environment |
US20020152299A1 (en) * | 2001-01-22 | 2002-10-17 | Traversat Bernard A. | Reliable peer-to-peer connections |
US6950879B2 (en) * | 2001-01-24 | 2005-09-27 | Interland, Inc. | Using virtual network address information during communications |
US7110393B1 (en) * | 2001-02-28 | 2006-09-19 | 3Com Corporation | System and method for providing user mobility handling in a network telephony system |
US20020143922A1 (en) * | 2001-04-03 | 2002-10-03 | Murata Kikai Kabushiki Kaisha | Relay server and relay system |
US20020143956A1 (en) * | 2001-04-03 | 2002-10-03 | Murata Kikai Kabushiki Kaisha | Relay server |
US20020143957A1 (en) * | 2001-04-03 | 2002-10-03 | Murata Kikai Kabushiki Kaisha | Relay server, network device, communication system, and communication method |
US20020146002A1 (en) * | 2001-04-10 | 2002-10-10 | Takayuki Sato | Network administration apparatus, network administrating program, network administrating method and computer network system |
US20020156875A1 (en) * | 2001-04-24 | 2002-10-24 | Kuldipsingh Pabla | Peer group name server |
US7200642B2 (en) * | 2001-04-29 | 2007-04-03 | Geodigm Corporation | Method and apparatus for electronic delivery of electronic model images |
US20030021232A1 (en) * | 2001-07-27 | 2003-01-30 | Jerome Duplaix | Scalable router |
US20040255048A1 (en) * | 2001-08-01 | 2004-12-16 | Etai Lev Ran | Virtual file-sharing network |
US7139811B2 (en) * | 2001-08-01 | 2006-11-21 | Actona Technologies Ltd. | Double-proxy remote data access system |
US20030055741A1 (en) * | 2001-08-21 | 2003-03-20 | Kabushiki Kaisha Toshiba | Server for exchanging design information, method for exchanging design information, program for exchanging design information, buying method of special design product and selling method of special design product |
US20030097456A1 (en) * | 2001-11-08 | 2003-05-22 | Huh Mi Young | Method for synchronizing registration information within intra-domain |
US7191195B2 (en) * | 2001-11-28 | 2007-03-13 | Oki Electric Industry Co., Ltd. | Distributed file sharing system and a file access control method of efficiently searching for access rights |
US7257638B2 (en) * | 2001-12-20 | 2007-08-14 | Microsoft Corporation | Distributing network applications |
US20060020695A1 (en) * | 2001-12-20 | 2006-01-26 | Microsoft Corporation | Scaling and delivering distributed applications |
US20050256909A1 (en) * | 2002-04-03 | 2005-11-17 | Aboulhosn Amir L | Peer-to-peer file sharing |
US20040068524A1 (en) * | 2002-04-03 | 2004-04-08 | Aboulhosn Amir L. | Peer-to-peer file sharing |
US6938042B2 (en) * | 2002-04-03 | 2005-08-30 | Laplink Software Inc. | Peer-to-peer file sharing |
US7299275B2 (en) * | 2002-06-03 | 2007-11-20 | Matsushita Electric Industrial Co., Ltd. | Content delivery system for dynamically and optimally relocates contents to archive server, edge servers and terminal storage devices based on users' viewing tendency |
US7152111B2 (en) * | 2002-08-15 | 2006-12-19 | Digi International Inc. | Method and apparatus for a client connection manager |
US20040073610A1 (en) * | 2002-09-30 | 2004-04-15 | Katsuhiko Terada | Contents reproducing system |
US20040083385A1 (en) * | 2002-10-25 | 2004-04-29 | Suhail Ahmed | Dynamic network security apparatus and methods for network processors |
US20060259553A1 (en) * | 2003-02-03 | 2006-11-16 | Jun Kawakita | Synchronization program |
US7774495B2 (en) * | 2003-02-13 | 2010-08-10 | Oracle America, Inc, | Infrastructure for accessing a peer-to-peer network environment |
US20040162871A1 (en) * | 2003-02-13 | 2004-08-19 | Pabla Kuldipsingh A. | Infrastructure for accessing a peer-to-peer network environment |
US20040172395A1 (en) * | 2003-02-28 | 2004-09-02 | Microsoft Corporation | Method to delay locking of server files on edit |
US20040243703A1 (en) * | 2003-04-14 | 2004-12-02 | Nbt Technology, Inc. | Cooperative proxy auto-discovery and connection interception |
US20040267939A1 (en) * | 2003-06-30 | 2004-12-30 | Hitachi, Ltd. | Session control apparatus, software applied to session control apparatus, communication control method, and network system |
US7412489B2 (en) * | 2003-08-21 | 2008-08-12 | Ameriprise Financial, Inc. | Method and system for electronic archival and retrieval of electronic communications |
US20070081530A1 (en) * | 2003-09-11 | 2007-04-12 | Yuji Nomura | Packet relay apparatus |
US7624175B1 (en) * | 2003-11-03 | 2009-11-24 | Sprint Communications Company L.P. | Update messaging system |
US20090177573A1 (en) * | 2003-11-18 | 2009-07-09 | Beadle Alastair J D | System and method for managing relationships between brokers and traders |
US20050144289A1 (en) * | 2003-12-03 | 2005-06-30 | Hitachi, Ltd. | Connection control system, connection control equipment and connection management equipment |
US7860978B2 (en) * | 2004-01-22 | 2010-12-28 | Toshiba America Research, Inc. | Establishing a secure tunnel to access router |
US20050216523A1 (en) * | 2004-03-26 | 2005-09-29 | Akihiko Sakaguchi | File management method in a distributed storage system |
US20050281251A1 (en) * | 2004-06-21 | 2005-12-22 | Hitachi, Ltd. | Session control system for hierarchical relaying processes |
US7813299B2 (en) * | 2004-06-21 | 2010-10-12 | Hitachi, Ltd. | Session control system for hierarchical relaying processes |
US20050287998A1 (en) * | 2004-06-29 | 2005-12-29 | Nec Corporation | Conference assisting system and method |
US20060083171A1 (en) * | 2004-07-13 | 2006-04-20 | Aruze Corporation | Media communication apparatus and media communication program product |
US20060101064A1 (en) * | 2004-11-08 | 2006-05-11 | Sharpcast, Inc. | Method and apparatus for a file sharing and synchronization system |
US20060117076A1 (en) * | 2004-11-29 | 2006-06-01 | Spencer William A | Method for replication tracing |
US20060149771A1 (en) * | 2005-01-05 | 2006-07-06 | Hitachi, Ltd. | Information processing system and communication retry method |
US20080098088A1 (en) * | 2005-01-13 | 2008-04-24 | Hirokazu Tamano | Communication System, Terminal Device And Communication Device |
US7660809B2 (en) * | 2005-01-31 | 2010-02-09 | Microsoft Corporation | Using a file server as a central shared database |
US20060187902A1 (en) * | 2005-02-24 | 2006-08-24 | Oliver Birch | Method and apparatus for session initiation protocol application design, development, execution and integration |
US20060206616A1 (en) * | 2005-03-14 | 2006-09-14 | Gridiron Software, Inc. | Decentralized secure network login |
US20060256771A1 (en) * | 2005-05-12 | 2006-11-16 | Yahoo! Inc. | Proxy server for relaying VOIP messages |
US20060282540A1 (en) * | 2005-06-08 | 2006-12-14 | Murata Kikai Kabushiki Kaisha | File server device, communication management server device, and network system including the file server device and the communication management server device |
US20070019545A1 (en) * | 2005-07-20 | 2007-01-25 | Mci, Inc. | Method and system for securing real-time media streams in support of interdomain traversal |
US20070106795A1 (en) * | 2005-11-08 | 2007-05-10 | Gilfix Michael A | Automatic orchestration of dynamic multiple party, multiple media communications |
US20070192434A1 (en) * | 2006-02-13 | 2007-08-16 | Fujitsu Limited | Network system, terminal, and gateway |
Cited By (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8472454B2 (en) | 2006-09-12 | 2013-06-25 | Murata Machinery, Ltd. | Relay-server arranged to carry out communications between communication terminals on different LANS |
US20080063001A1 (en) * | 2006-09-12 | 2008-03-13 | Murata Machinery, Ltd. | Relay-server |
US20080091768A1 (en) * | 2006-10-11 | 2008-04-17 | Murata Machinery, Ltd | File transfer server |
US20080089349A1 (en) * | 2006-10-11 | 2008-04-17 | Murata Machinery, Ltd | File server device |
US8316134B2 (en) | 2006-10-11 | 2012-11-20 | Murata Machinery, Ltd. | File server device arranged in a local area network and being communicable with an external server arranged in a wide area network |
US8443088B2 (en) | 2006-10-11 | 2013-05-14 | Murata Machinery, Ltd. | File transfer server |
US20080288591A1 (en) * | 2006-11-24 | 2008-11-20 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication device |
US8005961B2 (en) | 2006-11-24 | 2011-08-23 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication device |
US20080137672A1 (en) * | 2006-12-11 | 2008-06-12 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8010647B2 (en) | 2006-12-11 | 2011-08-30 | Murata Machinery, Ltd. | Relay server and relay communication system arranged to share resources between networks |
US20080147825A1 (en) * | 2006-12-19 | 2008-06-19 | Murata Machinery, Ltd. | Relay server and client terminal |
US8010598B2 (en) | 2006-12-19 | 2011-08-30 | Murata Machinery, Ltd. | Relay server and client terminal |
US8005893B2 (en) | 2007-05-02 | 2011-08-23 | 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 |
US20080275945A1 (en) * | 2007-05-02 | 2008-11-06 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20080275953A1 (en) * | 2007-05-02 | 2008-11-06 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8307100B2 (en) | 2007-05-09 | 2012-11-06 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20080281981A1 (en) * | 2007-05-09 | 2008-11-13 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8949419B2 (en) | 2007-12-25 | 2015-02-03 | Murata Machinery, Ltd. | Synchronizing sharing servers |
US20090164636A1 (en) * | 2007-12-25 | 2009-06-25 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20090164637A1 (en) * | 2007-12-25 | 2009-06-25 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8010675B2 (en) | 2007-12-25 | 2011-08-30 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20090172166A1 (en) * | 2007-12-27 | 2009-07-02 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8321575B2 (en) | 2007-12-27 | 2012-11-27 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8069246B2 (en) | 2007-12-28 | 2011-11-29 | Murata Machinery, Ltd. | Relay server and relay communication system including a relay group information registration unit, a shared resource information registration unit, and a control unit |
US20090172075A1 (en) * | 2007-12-28 | 2009-07-02 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20110161525A1 (en) * | 2008-09-01 | 2011-06-30 | Murata Machinery, Ltd. | Relay server and relay communication system |
US8356116B2 (en) | 2008-09-01 | 2013-01-15 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20110179167A1 (en) * | 2008-09-05 | 2011-07-21 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication apparatus |
US8296391B2 (en) | 2008-09-05 | 2012-10-23 | Murata Machinery, Ltd. | Relay server, relay communication system, and communication apparatus |
US9246879B2 (en) * | 2008-10-03 | 2016-01-26 | At&T Intellectual Property, I., L.P. | Methods and apparatus to form secure cross-virtual private network communication sessions |
US20150040207A1 (en) * | 2008-10-03 | 2015-02-05 | At&T Intellectual Property, I, L.P. | Methods and apparatus to form secure cross-virtual private network communication sessions |
US20130177013A1 (en) * | 2008-10-03 | 2013-07-11 | At&T Intellectual Property I, Lp | Methods and apparatus to form secure cross-virtual private network communication sessions |
US20100085957A1 (en) * | 2008-10-03 | 2010-04-08 | Elias Mark A | Methods and Apparatus to Form Secure Cross-Virtual Private Network Communications Sessions |
US8391276B2 (en) * | 2008-10-03 | 2013-03-05 | At&T Intellectual Property I, Lp | Methods and apparatus to form secure cross-virtual private network communications sessions |
US8879543B2 (en) * | 2008-10-03 | 2014-11-04 | At&T Intellectual Property I, L.P. | Methods and apparatus to form secure cross-virtual private network communication sessions |
US20100235497A1 (en) * | 2009-03-11 | 2010-09-16 | Canon Kabushiki Kaisha | Information processing apparatus and communication processing method thereof |
US9307068B2 (en) | 2009-03-11 | 2016-04-05 | Canon Kabushiki Kaisha | Information processing apparatus and communication processing method thereof |
US8798082B2 (en) | 2009-05-15 | 2014-08-05 | Murata Machinery, Ltd. | Relay communication system and first relay server |
US9137313B2 (en) * | 2010-12-27 | 2015-09-15 | Samsung Sds Co., Ltd. | Data transmission system and method using relay server |
US20120166593A1 (en) * | 2010-12-27 | 2012-06-28 | Samsung Sds Co., Ltd. | Data transmission system and method using relay server |
US20130136130A1 (en) * | 2011-11-30 | 2013-05-30 | Murata Machinery, Ltd. | Relay server and relay communication system |
US20150312363A1 (en) * | 2014-04-25 | 2015-10-29 | Pravala Networks Inc. | Using proxy devices as dynamic data relays |
US9854051B2 (en) * | 2014-04-25 | 2017-12-26 | Wilmerding Communications Llc | Using proxy devices as dynamic data relays |
US20170012828A1 (en) * | 2015-07-08 | 2017-01-12 | Kabushiki Kaisha Toshiba | Relay apparatus |
US10397029B2 (en) * | 2015-07-08 | 2019-08-27 | Toshiba Memory Corporation | Relay apparatus |
Also Published As
Publication number | Publication date |
---|---|
US20120102205A1 (en) | 2012-04-26 |
US8499083B2 (en) | 2013-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8499083B2 (en) | Relay device and communication system | |
US8316134B2 (en) | File server device arranged in a local area network and being communicable with an external server arranged in a wide area network | |
JP5301571B2 (en) | Method and system for providing connectivity between clients connected to the Internet | |
US8086740B2 (en) | Method and apparatus for remotely controlling a computer with peer-to-peer command and data transfer | |
EP2112788B1 (en) | A method and node for p2p content sharing | |
JP4222397B2 (en) | Relay server | |
JP4207078B2 (en) | Relay server | |
JPWO2007136101A1 (en) | Communication module and application program including this communication module | |
JP2008148200A (en) | Relay server | |
US9929942B2 (en) | Remote access to a residential multipath entity | |
JP2002217943A (en) | Relay server and communication system | |
JP2008225644A (en) | Gateway device, load balancing method for gateway device and load balancing program of gateway device | |
JP2003110596A (en) | Data communication service providing method | |
JPWO2007039942A1 (en) | Terminal device, server device, and command device | |
JP4187036B2 (en) | Relay server | |
EP1593230B1 (en) | Terminating a session in a network | |
US20100023620A1 (en) | Access controller | |
US20100257274A1 (en) | Communication system, communication method, and shared-authentication apparatus | |
JP2005184110A (en) | Device and method for transmitting packet | |
US20100268833A1 (en) | Communication system, communication method, and communication session centralizing apparatus | |
US20060171379A1 (en) | Movement management system, movement management server, and movement management method used for them, and program thereof | |
JP4773312B2 (en) | File transfer server | |
WO2008069504A1 (en) | Method for configuring control tunnel and direct tunnel in ipv4 network-based ipv6 service providing system | |
US20040039823A1 (en) | System enabling the establishment of a telnet connection to a remote device not provided with a modem | |
WO2007053029A1 (en) | A system and method for establishing a connection between a client in a first network and a web service server in another network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MURATA KIKAI KABUSHIKI KAISHA, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TANIMOTO, YOSHIFUMI;REEL/FRAME:019132/0967 Effective date: 20070307 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |