WO2010073656A1 - 通信端末、通信方法、プログラム - Google Patents
通信端末、通信方法、プログラム Download PDFInfo
- Publication number
- WO2010073656A1 WO2010073656A1 PCT/JP2009/007171 JP2009007171W WO2010073656A1 WO 2010073656 A1 WO2010073656 A1 WO 2010073656A1 JP 2009007171 W JP2009007171 W JP 2009007171W WO 2010073656 A1 WO2010073656 A1 WO 2010073656A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- communication
- relay
- communication terminal
- unit
- data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2582—NAT traversal through control of the NAT server, e.g. using universal plug and play [UPnP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2589—NAT traversal over a relay server, e.g. traversal using relay for network address translation [TURN]
-
- 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/2866—Architectures; Arrangements
- H04L67/288—Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
-
- 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/563—Data redirection of data network streams
-
- 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/564—Enhancement of application control based on intercepted application data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Definitions
- the present invention relates to a communication terminal that connects data terminals connected to local networks under different routers and enables data communication, and software.
- P2P Peer-to-Peer
- NAT router address translation
- the NAT function is a function for converting a private address in a local network (LAN) into a global address used for communication in a global network such as the Internet.
- a NAT function a NAT function in a narrow sense that converts a private address and a global address in a one-to-one correspondence is known.
- NAPT Network Address Port Translation
- a function is also known in which a plurality of connected communication terminals can share one global address.
- the NAT function and the NAPT function in a narrow sense are collectively referred to as a NAT function.
- a dynamic NAT setting that is automatically set by the router NAT function when a communication terminal connected to the local network transmits a packet to a server of the global network.
- the dynamic NAT setting is automatically performed by the router's NAT function, assigns a global address and port number after conversion, and includes a combination of the local address and port number of the communication terminal and a combination of the global address and port number after conversion. Set rules automatically.
- a relay server is provided on the global network, and communication terminals connected to different routers connect to the relay server using the dynamic NAT setting, and between the communication terminals via the relay server. It is known that by connecting, the user can communicate without performing special settings.
- the communication terminal that provides the relay function requires the ability to execute the relay process in addition to the process for the communication terminal itself.
- this relay process it is necessary to transmit the received data to another terminal, so that it is necessary to process data with double the bandwidth in transmission / reception.
- the access line connecting the communication terminal and the Internet is often a line having a limited bandwidth such as ADSL: Asymmetric Digital Subscriber Line.
- ADSL Asymmetric Digital Subscriber Line
- the present invention enables relaying between relay terminals without relaying a large processing load on a communication terminal that provides a relay function when communication terminals are connected and enabled to communicate by relay processing of a relay server.
- An object of the present invention is to provide a communication terminal and a communication method that can keep the communication band low.
- the communication terminal of the present invention is a relay device (relay servers 4a to 4N in FIG. 1, communication terminal 6p in FIG. 8) to which an address of a global network (for example, the Internet 1 in FIG. 1) is assigned.
- Communication terminals (communication terminals 6a, 6s, etc.) connected to a local network (local networks 2a, 2s) that communicate with a partner communication terminal (communication terminal 6b, communication terminal 6t, etc.) via the communication terminal 6q).
- Relay communication setting unit for setting a communication path for performing communication
- a communication unit communication processing unit 624a, One of the data transmission unit 624 and the data reception unit 625 included in the communication processing unit 624a, or the whole (including the communication unit 62p) including the communication processing unit 624a, and the relay device for each relay device.
- a communication status monitoring unit (communication status monitoring unit 622) that changes the current relay device to a plurality of new relay devices that are at least partially different from the current plurality of relay devices. It is a trust terminal.
- This configuration enables communication data to be communicated at higher speed.
- the above communication unit may be understood to correspond to the communication processing unit 624a in FIG. Further, the communication unit may be understood to correspond to the whole including the communication processing unit 624a, specifically, the communication unit 62p in FIG. Said relay communication setting part may be provided in this communication terminal as a part of communication part (communication part 62p of FIG. 2).
- the communication status monitoring unit may evaluate each communication status to be monitored and make the change based on an evaluation result of the evaluation.
- the communication unit may communicate at least a part of the divided data among the plurality of divided data by sequentially using two or more relay devices.
- the communication unit uses at least a part of the plurality of pieces of divided data in parallel with the same number of relay devices as the number of pieces of divided data included in the at least part, and different pieces of divided data are relayed differently. You may communicate via an apparatus.
- the communication unit performs the above-described change based on, for example, an evaluation result obtained by evaluating the entire communication status to be monitored.
- the communication status monitoring unit specifically controls, for example, the communication terminal and the control to change the plurality of relay devices (hereinafter referred to as a plurality of relay devices in use) through which the plurality of pieces of divided data are communicated. This is performed for at least one of the other communication terminals.
- controlling the communication terminal or the like includes both controlling the entire communication terminal and controlling only a predetermined part included in the communication terminal or the like.
- the communication terminal is a “terminal”, for example, a personal computer of a general household user is included.
- the communication unit may communicate the communication data with the counterpart communication terminal in parallel, for example, by transmitting the plurality of divided data via the plurality of relay devices.
- the divided data may be a so-called packet, for example.
- the communication unit divides communication data into a plurality of packets.
- the communication status monitoring unit specifically, based on the evaluation result, if the evaluation result is better than a predetermined result, for example, the communication status monitoring unit does not change the above and changes a plurality of relay devices in use. , Keep in the current multiple relay devices. For example, specifically, if the evaluation result is a result equal to or less than a predetermined result, the communication status monitoring unit can obtain an evaluation result better than the result before the change by making the above change. As described above, a plurality of relay devices to be used are changed. Thereby, the communication evaluation (quality) of the communication data can be maintained so that the communication status is a better result than the predetermined result.
- a communication band relayed by each relay function without applying a large processing load to a device that provides the relay function.
- a communication terminal and a communication method that can keep the above low can be realized.
- communication data communication between the communication terminal and the partner communication terminal can be performed at high speed, and the communication quality can be stabilized.
- FIG. 1 is a diagram illustrating an example of a configuration of a network connecting communication terminals in the present embodiment.
- FIG. 2 is a block diagram illustrating an example of a functional configuration of the communication terminal according to the present embodiment.
- FIG. 3 is a sequence diagram illustrating an example of a connection procedure of the communication terminal according to the present embodiment.
- FIG. 4 is a sequence diagram showing an example of the retransmission procedure of the communication terminal in the present embodiment.
- FIG. 5 is a sequence diagram illustrating an example of a procedure for replacing the relay communication path of the communication terminal according to the present embodiment.
- FIG. 6 is a sequence diagram illustrating an example of a procedure for disconnecting a communication terminal according to the present embodiment.
- FIG. 1 is a diagram illustrating an example of a configuration of a network connecting communication terminals in the present embodiment.
- FIG. 2 is a block diagram illustrating an example of a functional configuration of the communication terminal according to the present embodiment.
- FIG. 3 is a sequence diagram illustrating an example of
- FIG. 7 is a block diagram illustrating an example of a functional configuration of a communication terminal having a relay communication server function according to the present embodiment.
- FIG. 8 is a diagram illustrating an example of a configuration of a network connecting communication terminals having a relay communication server function according to the present embodiment.
- FIG. 9 is a diagram illustrating a communication terminal.
- FIG. 1 is a block diagram showing a network configuration of a communication terminal in this embodiment.
- the system X includes a center server 3, a local network 2a, a local network 2b, and N relay servers (relay server 4a to relay server 4N).
- N is an integer of 2 or more.
- the local network 2a includes a router 5a and a communication terminal 6a.
- the local network 2b includes a router 5b and a communication terminal 6b.
- communication with the communication terminal 6a started by the communication terminal 6a among the communication between the communication terminal included in the system X and the communication terminal other than the communication terminal is started.
- Communication with the terminal 6b will be described in detail as an example.
- the communication terminal 6a is referred to as a calling communication terminal 6a.
- the communication terminal 6b is called a called communication terminal 6b.
- the center server 3, the relay servers 4a to 4N, and the routers 5a and 5b are connected to each other via the Internet 1 that is a global network.
- the routers 5a and 5b have a NAT function, and communication terminals 6a and 6b are connected to local networks (local network 2a and local network 2b) constituted by the routers.
- the communication terminals 6a and 6b respectively connected to the routers 5a and 5b connect partial communication paths to the relay servers 4a to 4N, respectively, and communicate via the plurality of relay servers.
- the partial communication path that the calling communication terminal 6a connects to the relay server is called a calling partial communication path.
- the partial communication path through which the called communication terminal 6b is connected to the relay server is called the called partial communication path.
- the caller side partial communication path connected to one relay server from the caller side communication terminal 6a and the callee side partial communication path connected from the callee side communication terminal 6b via the relay server One relay communication path is configured.
- the calling side partial communication path is a part between the calling side communication terminal 6a and the relay server among the relay communication paths including the calling side partial communication path.
- the called-side partial communication path is a part between the called-side communication terminal 6b and the relay server among the relay communication paths including the called-side partial communication path.
- the calling side communication terminal 6a is connected to each of k selected relay servers (2 ⁇ k ⁇ N) specified based on the relay server information described in detail below.
- the partial communication paths are connected, and the called communication terminal 6b connects the called partial communication paths to the k selective relay servers.
- the communication terminals 6a and 6b perform communication between each other by the relay communication path by these k selection relay servers. Accordingly, the communication terminals 6a and 6b perform relatively high-speed communication, for example, communication that is approximately k times faster than the case where communication is performed using only one relay server.
- the center server 3 is always connected to the communication terminals 6a and 6b in a communicable state, and has a signaling function for transmitting and receiving control messages for connection and disconnection between the communication terminals. Further, the center server 3 manages the relay server information including the address information of the relay servers 4a to 4N, and has a relay server information management function for providing the relay server information to the communication terminals 6a and 6b.
- the address means information specifying a communication destination in the network, such as an IP address or a set of an IP address and a port number.
- Address information means information including an address.
- the relay server information specifies some or all of the relay servers from among the relay servers 4a to 4N (FIG. 1).
- the relay server information may specifically specify, for example, a predetermined correspondence value of the calling communication terminal 6a.
- this correspondence relationship associates a value specified by the relay server information with two or more pieces of relay server information.
- relay server information specifies each selection relay server by which the correspondence corresponds to the value by specifying a value.
- the communication terminal has a function of identifying each relay server corresponding to the value based on the value, for example.
- Each of the relay servers 4a to 4N is temporarily connected to each communication terminal 6a and 6b when data is transmitted and received between the communication terminal 6a and the communication terminal 6b, and relays data transmitted and received between the communication terminals. Provides a relay function.
- the router 5a is a router having a NAT function.
- the router 5a enables connection between the local network 2a and the Internet 1.
- the communication terminal 6a communicates with the center server 3 and the relay servers 4a to 4N via the router 5a in the local network 2a, and transmits / receives data to / from other communication terminals.
- the router 5b is a router having a NAT function.
- the router 5b enables connection between the local network 2b and the Internet 1.
- the communication terminal 6b communicates with the center server 3 and the relay servers 4a to 4N via the router 5b in the local network 2b, and transmits / receives data to / from other communication terminals.
- each of the routers 5a and 5b has a NAT function.
- each of the communication terminals 6a and 6b uses the dynamic NAT setting function in the local network (local network 2a or local network 2b) in which the communication terminal is included, from the communication terminal to the outside of the local network.
- a communication path can be connected to a certain external device (center server 3, relay server 4a to relay server 4N).
- the external device cannot connect the communication path from the external device to the communication terminals (communication terminal 6a and communication terminal 6b) included in each local network.
- FIG. 2 shows an example of a basic configuration of the communication terminal 6.
- Each communication terminal (communication terminal 6a, communication terminal 6b, etc.) included in the system X has a common function common to each other.
- the communication terminal 6 is an example of each communication terminal (communication terminal 6a, communication terminal 6b, etc.) included in the system X.
- the communication terminal 6 is, for example, the communication terminal 6a.
- the communication terminal 6 includes an upper application function unit 61, a relay client unit (relay communication client unit) 62, and a communication I / F unit 63.
- the communication terminal 6 may be a computer including a CPU, a RAM, a ROM, and the like, for example.
- Each of the relay client units 62 and the like may be a functional block of a function realized by executing a program by this computer.
- the host application function unit 61 provides an application function of the communication terminal 6 and transmits / receives communication data to / from a partner communication terminal that is a partner communication terminal with which the communication terminal 6 communicates through the relay client unit 62 and the communication I / F unit 63. And providing an I / F to the user while using the transmission / reception data.
- the relay client unit 62 included in the calling communication terminal 6a uses a plurality of relay servers (selected relay servers) specified by the relay server information (described above) to communicate with the partner communication terminal (calling communication terminal 6b). In the meantime, relay communication paths are set, and relay communication is realized by using the plurality of relay communication paths. More specifically, the relay client unit 62 sets a partial communication path (described above) between each of the selected relay servers and the calling communication terminal 6a. That is, the relay client unit 62 connects the calling side partial communication path (described above) to each of the selected relay servers. Further, the relay client unit 62 will be described in detail later for the called communication terminal 6b so that the called communication terminal 6b connects each of the called partial communication paths to each of the selected relay servers. Connection request (step S33 in FIG. 3). As will be described in detail later, this connection request is made via the center server 3. The relay client unit 62 of the calling communication terminal 6a thus sets k relay communication paths.
- the communication I / F unit 63 provides an interface function for connecting the communication terminal 6 to the network.
- the relay client unit 62 is connected to the network through the communication I / F unit 63.
- the relay client unit 62 includes a relay communication setting unit 621, a communication status monitoring unit 622, a relay communication path information storage unit 623, a data transmission unit 624, and a data reception unit 625.
- the relay communication setting unit 621 acquires relay server information from the center server 3, and uses the acquired relay server information to set each relay communication path for performing relay communication to a plurality of relay servers and the caller side communication. It is set between the terminal 6a.
- the relay communication setting unit 621 acquires an instruction from the communication status monitoring unit 622 described in detail later. Specifically, first, the relay communication setting unit 621 acquires a deletion instruction that instructs to delete an existing existing relay communication path set by the relay communication setting unit 621 in the past. Secondly, the relay communication setting unit 621 acquires a new setting instruction that instructs setting of a new relay communication path. Thirdly, the relay communication setting unit 621 acquires both instructions for instructing both deletion of an existing existing relay communication path and setting of an alternative new relay communication path. Then, when the deletion instruction is acquired, the relay communication setting unit 621 deletes the relay communication path specified by the acquired deletion instruction.
- the relay communication setting unit 621 acquires a new setting instruction
- the relay communication setting unit 621 newly sets a new relay communication path by the relay server specified by the acquired new setting instruction. If the relay communication setting unit 621 acquires both instructions, the relay communication setting unit 621 deletes the deleted relay communication path specified by the both instructions and newly sets a new relay communication path specified by the both instructions.
- the communication status monitoring unit 622 monitors and evaluates the communication status (communication band, transmission delay, packet loss rate, etc.) of the relay communication path between the partner communication terminal 6b and the calling communication terminal 6a via the relay server. Then, based on the evaluation result, the relay communication setting unit 621 is instructed to delete the relay communication path, set the new relay communication path, or delete the existing relay communication path and set an alternative new relay communication path. That is, the communication status monitoring unit 622 transmits the above-described deletion instruction, new setting instruction, and both instructions to the relay communication setting unit 621 based on the evaluation result, and each instruction to be transmitted is transmitted to the relay communication setting unit 621. To get. Accordingly, the communication status monitoring unit 622 causes the relay communication setting unit 621 to perform the above-described processing corresponding to the instruction. Note that each instruction by the communication status monitoring unit 622 will be described in more detail later.
- the relay communication path information storage unit 623 includes the relay server information acquired by the relay communication setting unit 621 from the center server 3 and the relay communication of each of the plurality of relay communication paths set by the relay communication setting unit 621 via the relay server.
- Each track information is stored and managed.
- the latter information that is, the relay channel information, is information including an ID for uniquely identifying the relay channel and address information (IP address, port number) of the relay server that relays the relay channel. is there.
- the data transmission unit 624 divides the transmission data from the upper application function unit 61 into packets of a predetermined size and transmits the packets using a plurality of relay communication paths set by the relay communication setting unit 621. More specifically, for example, the data transmission unit 624 distributes each packet to a plurality of packet groups respectively corresponding to k relay communication paths, and the packets of each packet group are allocated to the respective packets. It transmits by the relay communication path corresponding to the packet group. As a result, the data transmission unit 624 transmits the packets of each packet group, for example, in parallel via the plurality of relay communication paths. Thereby, the data transmission unit 624 compares each packet of transmission data with, for example, about k times (k is the number of relay communication paths), for example, compared with a case where communication is performed using only one relay communication path. High speed communication.
- the data transmission unit 624 performs processing as necessary so that the destination communication terminal 6b can process the packets received from the plurality of relay communication paths in the correct order and restore the original data.
- an order number that is a number indicating the order is set for each packet.
- the data receiving unit 625 assembles each of the packets received via a plurality of relay communication paths using a sequence number included in the packet, and transmits the transmission data transmitted by the higher-level application function unit of the transmission source. Reproduce and hand it over to its upper application function part.
- FIG. 3 is a diagram illustrating an example of a connection sequence between communication terminals.
- the calling communication terminal 6a acquires the latest relay server information from the center server 3 by the relay communication setting unit 621.
- the communication terminals 6a and 6b are connected to the center server 3 in advance so that the relay server information from the center server 3 can always be received.
- a communication path is connected from the communication terminals 6a and 6b connected to the local network to the center server 3 connected to the Internet 1, a special NAT is set by the router. No setting is necessary, and the communication terminal can set the communication path.
- the center server 3 smoothes the load on each relay server by selecting the relay server information to be transferred to the communication terminal 6a in consideration of the current load status of each of the relay servers 4a to 4N. Can be achieved.
- the relay client unit 62 of the calling communication terminal 6a selects a relay server (selected relay server) used for relay communication using the relay server information acquired from the center server 3, and selects a relay request.
- a relay server selected relay server
- Each is transmitted to each selected relay server (relay servers 4a to 4c: selected relay server).
- the address information of the relay server is obtained from the relay server information.
- the relay server information includes address information of each relay server specified by the relay server information.
- each selective relay server (relay servers 4a to 4c) that has received the relay request performs settings for relay communication on the selected relay server, and relays via the selected relay server.
- the relay communication path information including an ID for uniquely identifying the communication path and address information (IP address, port number) of the selective relay server used for the relay communication is returned.
- the relay server 4a to the relay server 4N may include two devices, that is, a control device and a data communication device.
- the data communication device may relay communication of data (user data) communicated via the relay communication path of the relay server.
- the control device may control communication of user data by the data communication device.
- the address information included in the relay server information (described above) may specify the address of the control device.
- the relay client unit 62 may cause the control device of the selected relay server to receive the relay request (described above).
- the control device responds to the communication terminal 6a with relay communication path information including address information for specifying the data communication device that constitutes the relay server together with the control device. May be.
- the relay communication path information may include address information of the control device that constitutes the relay server together with the data communication device, together with the address information of the data communication device.
- the relay client unit 62 that has received the relay channel information (described above) from each of the plurality of selected relay servers stores the received relay channel information in the relay channel information storage unit 623, respectively.
- the relay communication path (calling side partial communication path of the relay communication path) is accessed, for example, by accessing the data communication apparatus (previously described) indicated by the address information by the address information of each relay communication path information that has been responded Connect (see above)). Since this communication path connection is a connection from the communication terminal 6a connected to the local network 2a to the relay server, the communication terminal 6a sets the communication path without any special setting by the dynamic NAT setting of the router. Is possible.
- the relay client unit 62 requests the center server 3 to send a connection request to the partner communication terminal (calling side communication terminal 6b).
- the connection request by this connection request transmission includes the relay channel information of the plurality of relay channels previously set by the calling communication terminal 6a in S32.
- This connection request includes, for example, the address information of each selected relay server and the ID of the relay communication path based on the address information. More specifically, for example, this connection request may include the address information of the data communication device of each selected relay server and the address information of the control device. However, this connection request may not include the address information of the data communication device.
- the incoming call side communication terminal 6b that has received the connection request from the center server 3 extracts the relay communication path information from the received connection request, and the calling side communication terminal 6a receives the relay communication path (relay communication path).
- a relay including an ID for uniquely identifying the relay communication path to each selected relay server (relay servers 4a to 4c, control device of each relay server) connected to the caller partial communication path of the path) Send a request message.
- the transmitted ID is an ID included in the extracted relay communication path information. This ID uniquely identifies the relay communication path with the ID from among the relay communication paths relayed by the relay server that relays the relay communication path with the ID.
- Each relay server (relay server control device) that has received the request identifies the relay communication path based on the ID included in the relay request message previously transmitted in S34, and uses the relay server (for relay communication). Address information (IP address, port number) of the data communication device of the relay server is returned to the called communication terminal 6b.
- the relay client unit 62 of the callee communication terminal 6b on the callee side that has received the response from each selected relay server stores the relay communication path information included in each received response. Then, the called side partial communication path (described above) is connected to the relay server (data communication apparatus of the relay server) indicated by the address information of each relay communication path information that has been responded.
- the called communication terminal 6b completes connection of communication paths (calling partial communication paths) with all relay servers, and then sends a connection response message to the calling communication terminal 6a through the center server 3. Send to.
- the callee side partial communication path of the callee side communication terminal 6b does not need special setting by the dynamic NAT setting of the router 5b.
- the called communication terminal 6b can connect to each selective relay server.
- FIG. 4 shows an example of a retransmission sequence when packet loss occurs.
- the relay client unit 62 of the calling communication terminal 6a transmits packet data obtained by dividing the transmission data requested to be transmitted from the higher-level application function unit 61 using a plurality of relay communication paths.
- the relay communication path used for transmission is the relay communication path of the relay server a, the relay communication path of the relay server b, and the relay communication path of the relay server c.
- the relay client unit 62 of the communication terminal (calling-side communication terminal 6b) that has received the packet data receives the relay communication path (for example, relay of the relay server a) that has received the data.
- the reception confirmation message is transmitted to the data transmission source communication terminal (calling side communication terminal 6a) using the communication channel.
- FIG. 4 illustrates transmission of a reception confirmation message through the relay communication path of the relay server a.
- the relay client unit 62 of the data transmission source responds by the communication status monitoring unit 622 with a reception confirmation message corresponding to the packet transmission in S41 from the packet transmission in S41. Measures the time to arrive and obtains transmission delay information for each relay communication path.
- the relay client unit 62 does not receive the reception confirmation message corresponding to the transmission of the packet even after a predetermined time (predetermined time T1: FIG. 4) has elapsed since the packet transmission. (See FIG. 4) is detected.
- a predetermined time predetermined time T1: FIG. 4
- FIG. 4 as an example of the packet loss PL, a packet loss in packet transmission on the relay communication path of the relay server b is illustrated.
- the relay client unit 62 of the packet transmission source (calling side communication terminal 6a) that detects the packet loss in S42 selects a relay communication path with a low packet loss rate and a small transmission delay.
- the relay client unit 62 for example, each relay communication path set by the calling communication terminal 6a (for example, the relay communication path of the relay server a, the relay communication path of the relay server b, the relay server) c), other relay communication paths (relay communication path of relay server a, relay of relay server c), excluding the relay communication path where the packet loss occurred (relay communication path of relay server b) From (communication path), a relay communication path is selected.
- the relay client unit 62 selects a relay communication path (relay communication path of the relay server a) having the lowest packet loss rate among the other relay communication paths.
- the calling communication terminal 6a selects a relay communication path whose quality is higher than a predetermined threshold value.
- the quality may be, for example, the packet loss rate or a transmission delay. The smaller the packet toss rate, the higher the quality.
- the transmission delay has a higher quality as the delay time is shorter.
- the threshold value may be, for example, the quality of a predetermined relay communication path among the other relay communication paths.
- the predetermined relay communication path is a relay communication path whose quality is the second highest value after the highest value among the other relay communication paths, that is, the second highest value.
- the relay client unit 62 selects the relay communication path having the highest quality among the other relay communication paths.
- the relay client unit 62 of the calling communication terminal 6a transmits the lost packet again.
- the relay client unit 62 selects a relay communication path with less packet loss in S42, the probability of packet loss again can be reduced. Further, by selecting a relay communication path with a small transmission delay, it is possible to quickly transmit a lost packet to the other party, and it is possible to shorten the time required for retransmission.
- transmission is performed by the calling communication terminal 6a in S41, transmission is performed by the relay server selected in S42a in S43 according to the packet loss as a result of this transmission.
- the relay server to which transmission is performed is changed from the relay server for the first transmission (relay server b) to the relay server for the second transmission (relay server a).
- a broken arrow line is an illustration merely showing the change of the relay server, and is not an illustration showing a data flow in the system X.
- FIG. 5 is an example of a relay communication path replacement sequence.
- the process (S51) of transmitting data using a plurality of relay communication paths via the relay server is the same as the process of S41 (FIG. 4), detailed description thereof is omitted.
- the difference here is that in the example of FIG. 5, packet loss does not occur, and instead of packet loss, the transmission delay in the relay communication path via the relay server b is different in each of the other relay communication paths.
- the transmission delay is much larger than the transmission delay.
- a very large transmission delay means a very large transmission delay compared to a normal transmission delay, and a very large transmission delay compared to a transmission delay smaller than a normal transmission delay. Both meanings are included.
- the relay client unit 62 of the packet transmission source (calling side communication terminal 6a) always acquires and evaluates information on transmission delay of each relay communication path, and transmits the relay communication path via the relay server b. It is detected that statistical information such as average delay and fluctuation, and a value (evaluation target value) such as maximum transmission delay do not satisfy a predetermined criterion.
- the relay client unit 62 of the packet transmission source determines that the relay communication path via the relay server b is inappropriate.
- the relay server b is an example of a relay server that the relay client unit 62 determines to be inappropriate.
- the relay client unit 62 of the packet transmission source executes the following relay communication path replacement processing. That is, the relay client unit 62 of the calling communication terminal 6a selects a new relay server (relay server d) using the relay server information acquired in advance from the center server 3. Then, the relay client unit 62 transmits a relay request message to the selected new relay server.
- the relay client unit 62 may acquire relay server information for specifying the relay server from the center server 3.
- the relay client unit 62 may select a relay server specified by the relay server information acquired in S52.
- the relay server information acquired in S31 of FIG. 3 may include new relay server information for specifying a new relay server to be selected in S53 of FIG.
- the relay client unit 62 may select a relay server specified by the new relay server information included in the relay server information acquired in S31.
- the relay server information acquired in S52 and the like includes the address information of the relay server d as the new relay server address information.
- the relay server d is selected. Therefore, in the example of FIG. 5, in S53, a relay request message is transmitted to the relay server d, and the relay server to be used is switched from the relay server b to the relay server d.
- this replacement is illustrated by a broken arrow line. Note that the broken arrow line in FIG. 5 is merely an illustration showing this replacement, and is not an illustration showing the data flow or the like in the system X.
- the relay server d (new relay server) that has received the relay request message sends a response message including the relay communication path information of the relay server d to the relay client unit 62 of the calling communication terminal 6a. Send.
- the relay client unit 62 that has received the relay channel information from the relay server d stores the received relay channel information in, for example, the relay channel information storage unit 623, and has responded. Connect the relay channel to the information address.
- the relay communication path information of the relay communication path (relay communication path of relay server b) previously determined to be unsuitable in S52 and the relay of the newly connected relay communication path (relay communication path of relay server d) are relayed.
- the relay client unit 62 sends the relay server replacement request message including the communication path information to the partner communication terminal 6b through a relay communication path other than the relay communication path determined to be inappropriate (for example, the relay communication path of the relay server a). Send. That is, in S53, the relay client unit 62 of the calling communication terminal 6a sets each relay communication path (for example, the relay communication path of the relay server a, the relay communication path of the relay server b, the relay communication path of the relay server c).
- relay communication path of relay server a Among other communication paths (relay communication path of relay server a, relay communication path of relay server c) other than the relay communication path determined to be inappropriate (relay communication path of relay server b).
- the relay server replacement request message is transmitted to the called communication terminal 6b through one relay communication path (the relay communication path of the relay server a).
- the relay client unit 62 of the communication terminal 6b that has received the relay server replacement request message via the one relay communication path (relay communication path of the relay server a) receives the relay communication to be newly connected.
- the relay request is transmitted to the relay server d (the control device of the relay server d) using the relay communication path information of the path (the relay communication path of the relay server d).
- the relay client unit 62 of the called communication terminal 6b uses the relay communication path information received as a response from the relay server d to newly establish the relay communication path (the called side partial communication path of the relay communication paths).
- a relay server replacement response message is transmitted to the transmission source communication terminal 6a.
- the relay client unit 62 of the called communication terminal 6b transmits this relay server replacement response message through the one relay communication path (relay communication path of the relay server a), for example, as shown in FIG. .
- this transmission may be performed by another communication channel having higher quality than the one relay communication channel.
- the callee communication terminal 6b transmits a relay release message to the relay server b that provides the relay communication path determined to be inappropriate, and this relay communication path (the callee side of the relay communication path). Release the partial communication path).
- the relay client unit 62 of the communication terminal 6a that has received the relay server replacement response message also transmits a relay release message to the relay server b that is determined to be inappropriate, and the relay communication path (transmission communication path generation). Release the caller partial communication path).
- FIG. 6 is an example of a cutting sequence.
- the relay client unit 62 of the calling communication terminal 6a transmits a disconnection request message to the partner communication terminal 6b through the center server 3 when disconnection is instructed from the upper application function unit 61.
- the relay client unit 62 of the called communication terminal 6b that has received the disconnection request message transmits a relay release message to the relay servers of all the relay communication paths that are connected to each relay communication path. Are respectively released, and a disconnection response message is transmitted to the transmission source communication terminal 6a.
- the relay client unit 62 of the communication terminal 6a that has received the disconnection response message similarly transmits a relay release message to the relay servers of all relay communication paths to which the calling communication terminal 6a is connected. Then, each relay communication path is released, and communication between communication terminals is terminated.
- FIG. 7 shows an example of a basic configuration of the communication terminal 6L having a relay server function.
- the communication terminal 6L includes a relay communication server function unit (relay communication server function) 64.
- the relay communication server function unit 64 is a function unit that provides a function equivalent to the relay servers 4a to 4N in FIG. That is, in the description of FIGS. 1 to 6, the common functions provided in any of the relay servers 4a to 4N have been described.
- the relay communication server function unit 64 has a function equivalent to the common function.
- the relay communication server function unit 64 has the same function as the common function.
- the difference between the relay servers 4a to 4N and the relay communication server function unit 64 is that, unlike the relay servers 4a to 4N, the communication terminal 6L may be connected to the local network under the router, so the NAT function of the router And a function (NAT setting unit 641) for enabling connection to the communication terminal 6L (FIG. 7) from the Internet.
- the relay communication server function unit 64 includes the following function units. That is, the relay communication server function unit 64 includes a NAT setting unit 641 and a relay communication server unit 642.
- the NAT setting unit 641 sets the NAT function of the router and enables connection from the Internet to the relay communication server unit 642 (that is, connection to the communication terminal 6L and connection to the relay communication server function unit 64).
- the NAT setting unit 641 uses a UPnP (Universal Plug and Play) IGD (Internet Gateway Device) specification provided by the router, a CGI (Common Gateway Interface) for NAT setting, or the like to the router. By transmitting, it is possible to perform NAT setting.
- UPnP Universal Plug and Play
- IGD Internet Gateway Device
- CGI Common Gateway Interface
- the relay communication server unit 642 provides a function (for example, the same function) equivalent to the relay servers 4a to 4N described above, and the communication terminal 6L is connected to the local network under the router by the NAT setting set by the NAT setting unit 641. Even if it is connected to the network, it becomes possible to access the relay communication server unit 642 from the Internet side. Then, the relay communication server unit 642 registers address information (IP address, port number) for accessing the relay communication server unit 642 from the Internet side in the center server 3 as a part of the relay server information.
- the access device that accesses from the Internet acquires the relay server information including the registered address information, and accesses the relay communication server unit 642 using the address information included in the acquired relay server information.
- FIG. 8 shows an example of a network configuration using the communication terminal 6L configured as described above.
- the system XL includes a center server 3 and a local network 2p to a local network 2t. These center servers 3 and the like are connected to each other via the Internet 1.
- At least one of the communication terminals 6p to 6t is the communication terminal 6L (FIG. 7) described above.
- the communication terminal 6L is the communication terminal 6p in FIG.
- the communication terminal 6L is the communication terminal 6p
- at least one of the other communication terminals other than the communication terminal 6L does not have the relay communication server function unit 64, for example, so that the communication terminal 6L It may have a function that is at least partially different from the function.
- the communication terminal 6L having the relay communication server function unit 64 may be connected to the local network 2p or the like under the router, or may be directly connected to the Internet 1.
- the communication terminal 6L described above is the communication terminal 6p
- the communication terminal 6L is connected to the local network 2p under the router 5p.
- the communication terminal 6L is the communication terminal 6q
- the communication terminal 6L is directly connected to the Internet 1.
- the relay communication server function unit 64 uses the address information to connect the communication terminal 6L via the Internet 1.
- the accessible address information IP address, port number
- IP address, port number is registered in the center server 3 as part of the relay server information.
- a communication terminal (for example, communication terminal 6s) that performs communication between terminals acquires relay server information from the center server 3 as described above (see S31 in FIG. 3). Thereby, the communication terminal 6s and the like can use the communication terminal 6L (communication terminal 6p) having the relay communication server function unit 64 in the same manner as the relay servers 4a to 4N (FIG. 1 and the like). .
- the communication terminal 6L having the relay communication server function unit 64 can perform relay communication without the relay servers 4a to 4N (FIG. 1) dedicated to the relay, and when the number of communication terminals 6L increases in the system XL. Since the number of communication terminals 6L having the relay communication server function unit 64 can be expected to increase, the system cost can be reduced and the system scalability can be improved.
- a plurality of relay communication paths are connected first (see step S31 and step S32 in FIG. 3).
- the communication status monitoring unit 622 monitors data packets transmitted by the data transmission unit 624 of the calling communication terminal 6a and the data transmission unit of the called communication terminal 6b, and sets the data amount and the data transmission band. Accordingly, relay communication paths may be added or deleted as needed.
- a plurality of relay communication paths are connected, the data packet transmitted by the data transmission section 624 is monitored by the communication status monitoring section 622, and the relay communication paths are deleted according to the data amount and the data transmission bandwidth. You may make it add.
- unnecessary relay servers can be released by adding and deleting relay communication paths according to the data amount and data transmission bandwidth of the data packet transmitted by the data transmission unit 624, which is efficient. It becomes possible to use a relay server.
- the relay client unit 62 may determine that the corresponding relay communication path is inappropriate.
- This determination makes it possible to eliminate a relay communication path with a high packet loss rate and stabilize communication between communication terminals.
- the communication status of the relay communication path is monitored and evaluated at the time of data transmission / reception from the upper application function unit 61 to determine whether the relay communication path is inappropriate.
- transmission / reception of test data may be performed to confirm that the relay communication path is not inappropriate. In this case, if it is determined to be unsuitable, another relay communication path is set, and confirmation is performed again using test data.
- the data transmission unit 624 divides the transmission data from the upper application function unit 61 into packets of a predetermined size and transmits them using a relay communication path, but the data transmission unit 624 A redundant packet may be created by calculation using the n divided packets for a predetermined number n, and the transmission process may be executed including the created redundant packet.
- the data receiving unit 625 can reproduce the lost packet using the redundant packet, thereby reducing the number of retransmissions. It becomes possible.
- the data transmission unit 624 may encrypt the transmission data from the higher-order application function unit 61 and transmit the encrypted data, and the communication partner data reception unit 625 may decrypt the encryption and return the original data. By doing in this way, it becomes possible to improve security in various cases where security improvement is required, such as when relay communication is performed using the relay communication server function unit 64 of the communication terminal 6L.
- the center server 3 manages information indicating the category of the relay server as a part of the relay server information, and the communication terminal 6 refers to the category of the relay server when selecting the relay server, You may make it control to select more than a predetermined number of relay servers. For example, as a category of the relay server, it may be possible to distinguish between a relay server dedicated for relay and a relay communication server function provided by the communication terminal 6L. By selecting a predetermined number (for example, one) or more of relay servers dedicated for relaying, the communication terminal 6 avoids an attack such as malicious transmission of the transmission data to the relay communication server function unit 64. It becomes possible to do. Further, the relay servers belonging to different categories may be categories with different predetermined qualities.
- the relay server belonging to a different category may be a category in which the safety of the relay communication path by the relay server is different from each other.
- the relay server belonging to a different category may be a category in which the security of the relay communication path by the relay server is different from each other.
- a communication band relayed by each relay function without applying a large processing load to a device that provides the relay function.
- a communication terminal and a communication method that can keep the above low can be realized.
- a relay communication setting unit (relay communication)
- the setting unit 621) selects a plurality of relay function units on the network, sets a communication path (relay communication path) to the other communication terminal via the relay function unit for each of the selected relay function units,
- the communication status monitoring unit (communication status monitoring unit 622) evaluates the communication status of the communication channel (relay communication channel) with the partner communication terminal via the relay function unit, and deletes the communication channel based on the evaluation result
- the relay communication setting unit is instructed to set the communication path (new relay communication path) to the other party communication terminal via the new relay function unit, or both, and the instruction is received from the communication status monitoring unit relay Shin setting unit transmits when performing communication path setting of the partner communication terminal via the new relay function unit, a connection request message including the address information of the new relay function unit to the destination communication terminal.
- communication terminal devices (calling side communication terminals 6a, 6a) that communicate with the counterpart communication terminal device (calling side communication terminal 6b) via relay devices (relay server 4a, etc., communication terminal 6L) on the network.
- a communication status for monitoring a communication status with a partner communication terminal device for each communication channel via the relay communication setting unit (relay communication setting unit 621) for setting each relay communication channel and the selected relay device Received data received from the monitoring unit (communication status monitoring unit 622) and the selected communication device via the selected relay device, and the received data obtained by integrating the divided received data
- transmission data from the calling communication terminal 6a to the called communication terminal 6b and received data from the called communication terminal 6b to the calling communication terminal 6a are both. Both may be divided into a plurality of parallel communication data (packets) communicated via different relay communication paths and divided and transmitted (high-speed transmission), or only transmission of the transmission data is performed. (Divided transmission of received data is not essential), or only divided transmission of received data may be performed (divided transmission of transmission data is not essential).
- the communication terminal 6 constitutes a monitoring device that monitors the communication quality by the communication status monitoring unit 622. Further, the communication terminal 6 constitutes a selection device for selecting a relay device by the relay communication setting unit 621.
- the monitoring device may be configured to select a relay device by itself but not to select a relay device by itself. That is, for example, the monitoring device may be configured by the above-described incoming communication terminal device 6b (or an apparatus corresponding to the incoming communication terminal device 6b). That is, for example, the above-mentioned called communication terminal device 6b (device corresponding to the called communication terminal device 6b) monitors the quality of the relay communication path and evaluates the monitoring result (evaluation result) as the communication partner.
- a device may be configured to notify (calling side communication terminal 6a) and request the communication partner to reset the relay communication path.
- the communication partner terminal (calling communication terminal 6b) and the communication terminal (calling communication terminal) that communicates with the partner communication terminal via the relay device (relay server 4a or the like, communication terminal 6L). 6a, communication terminal 6, and communication terminal 6L) are configured.
- each communication terminal (communication terminal 6a, communication terminal 6b, communication terminal 6p, etc.) that communicates with each other is a communication terminal connected to a local network under the NAT.
- the communication terminal is a communication terminal that communicates with the counterpart communication terminal via the relay device, and a plurality of divided data (packets) obtained by dividing the communication data (transmission data) via the plurality of relay devices.
- Each of the communication units (communication unit 62p) that communicates and each of the plurality of relay devices monitor and monitor the communication status (for example, transmission delay) of the divided data communication via the relay device. From the current plurality of relay devices (for example, relay server a, relay server b, relay server c in FIG.
- the plurality of relay devices through which the communication of the plurality of divided data is performed A communication status monitoring unit (communication status) that is changed to a plurality of new relay devices (for example, relay server a, relay server d, and relay server c in FIG. 5) that are at least partially different from the current plurality of relay devices. It includes a monitoring unit 622) and.
- communication data is communicated at high speed, for example, in parallel through a plurality of relay servers.
- the stability of the communication quality (evaluation) of the communication data becomes worse than it is practically used.
- communication data communication is easily interrupted by k times (k is the number of relay devices used: k ⁇ 2). This is because the stability of (evaluation) decreases by, for example, twice (k times).
- the communication status (for example, transmission delay) of each relay communication path is monitored, and based on the evaluation result (for example, the average value of transmission delay) evaluated for the entire communication status.
- Each relay device to be changed is changed from a plurality of current relay devices to a plurality of new relay devices. Thereby, the communication quality (evaluation) of communication data can be stabilized.
- the communication unit may communicate at least a part (a part or all) of the plurality of pieces of divided data by sequentially using two or more relay devices. Further, the communication unit uses at least a part (a part or all) of the plurality of pieces of divided data in different divisions using the same number of relay devices as the number of pieces of divided data included in the part. Data may be communicated via different relay devices. The plurality of relay devices relay any one of the plurality of relay devices and relay at least one of the plurality of divided data.
- a relay communication setting unit for setting a relay communication path between the communication terminal and the counterpart communication terminal via the (selective relay server), and the communication status monitoring unit includes: Based on the evaluation result of each communication status, deletion of a relay communication path from each relay communication path of the current plurality of relay devices, or addition of a relay communication path to each relay communication path, or the deletion and Both additions are instructed to the relay communication setting unit, and the relay communication setting unit performs processing indicated by the instruction when instructed by the communication status monitoring unit.
- the relay communication path is a communication path from a relay source to a relay destination where data is relayed by the relay communication path.
- the relay communication setting unit includes a function by publicly available general-purpose software such as a known library or package for setting or deleting a relay communication path. May be used to fulfill the above functions.
- relay communication setting unit may be provided outside the communication unit 62p, or may be a part of the communication unit 62p.
- the communication status monitoring unit more specifically performs the first control that causes the relay communication setting unit to perform the addition, the second control that causes the deletion, or the third control that causes both to be performed. You may go. That is, for example, the communication status monitoring unit may specifically select one of the first control to the third control and perform the selected control on the relay communication setting unit.
- the communication unit divides the communication data into the plurality of pieces of divided data, and the plurality of pieces of divided data selected by the relay communication setting unit, respectively.
- a data transmission unit (data transmission unit 624) for transmission via a relay device (a plurality of selective relay servers) and a plurality of divided data obtained by dividing the communication data by the counterpart communication terminal, respectively, Data that is received from the counterpart communication terminal via the plurality of relay devices selected by the unit and assembles the communication data divided into the plurality of divided data from the plurality of divided data received
- a reception unit (data reception unit 625), wherein the relay communication setting unit instructs the relay communication setting unit to add a new relay communication path.
- the connection request message including the address information of the new relay communication path of a relay device to be added: transmitting a (relay server replacement request message step S53 of FIG. 5) to the destination communication terminal.
- the data transmission unit for example, any relay device among the plurality of relay devices can transmit the plurality of pieces of divided data to the plurality of pieces of data by communication that performs at least one relay of the plurality of pieces of divided data. Send to the destination via the relay device.
- the data transmission unit for example, transmits the plurality of pieces of divided data to different pieces of divided data via different number of relay devices via the same number of pieces of divided data included in the plurality of pieces of divided data. Send to the destination via the device.
- the data receiving unit is configured such that any one of the plurality of relay devices transmits the plurality of divided data to the plurality of relay devices through communication for performing at least one relay of the plurality of divided data.
- the data receiving unit relays the plurality of pieces of divided data via the same number of relay devices as the number of pieces of divided data included in the plurality of pieces of divided data. Receive via the device.
- the communication status monitoring unit monitors the transmission delays of the plurality of relay communication paths to the counterpart communication terminal, respectively, and the permissible condition (for example, communication data is appropriately communicated). If a relay communication path that does not satisfy the minimum condition is detected and is detected, the relay communication path that has been detected is deleted, or the destination communication terminal via a new relay device The relay communication setting unit is instructed to set both the new relay channel and the deletion and the new relay channel.
- the communication status monitoring unit monitors packet losses in the plurality of relay communication paths to the counterpart communication terminal, and detects a relay communication path in which the packet loss does not satisfy a predetermined allowable condition. Then, when the detection is made, deletion of the detected relay communication path, setting of the new relay communication path to the counterpart communication terminal via the new relay apparatus, or the deletion and the new relay communication
- the relay communication setting unit is instructed to set both routes.
- the communication status monitoring unit deletes the relay communication path set by the relay communication setting unit according to the traffic amount of the communication data, or the partner communication terminal via a new relay device
- the relay communication setting unit is instructed to set a new relay communication path.
- the communication status monitoring unit sets the new relay communication channel that is set when the relay communication setting unit sets the new relay communication channel to the counterpart communication terminal via the new relay device.
- predetermined evaluation data test data
- the communication status of the new relay communication path is evaluated, and the result of the evaluation is determined in advance.
- the communication unit is caused to use the new relay communication path for transmission of communication data from the upper application of the communication terminal.
- the communication status monitoring unit specifically, a part of the plurality of pieces of divided data transmitted from the communication unit to the counterpart communication terminal via the relay device includes the counterpart destination.
- the communication terminal detects that it has not been received (packet loss PL in FIG. 4)
- the communication unit detects the partial data that has been detected when the communication state monitoring unit detects the reception.
- the relay communication path via another relay device (relay server a), which is different from the relay device (relay server b) used by the communication unit for the transmission of the partial data again with the other party It transmits to a communication terminal (step S43 of FIG. 4).
- a transmission delay in communication via the relay device to the partner communication terminal is determined to be another predetermined relay device (for example, the relay server c).
- a smaller relay device (relay server a) is selected, and the re-transmission is performed through the relay communication path by the selected relay device.
- the communication unit communicates the communication data with a plurality of pieces of divided data obtained by dividing the communication data with respect to a plurality of pieces of communication data of the upper application (the upper application function unit 61 and the like) of the communication terminal.
- the correspondence relationship with a plurality of relay communication paths is stored, and when the communication completion is notified from the host application to the communication unit, or when the communication end is notified from the counterpart communication terminal to the communication unit, the notification is issued. All of the plurality of relay communication paths that are associated with the corresponding communication data are released (see FIG. 6).
- the relay communication setting unit stores category information indicating categories of the N relay devices, and the category (predetermined by the category information stored from the N relay devices). For example, a plurality of relay apparatuses including at least one relay apparatus indicating a category having a high relay communication path security) are selected, and the communication unit does not indicate the predetermined category by the category information. Encrypts divided data to be communicated via a device (relay server with low security of relay communication path), transmits the encrypted divided data via the relay device, and decrypts the encrypted divided data The information necessary to perform the relay device (relay communication) in which the category defined by the category information is indicated. To the transmission security via the high category relay server).
- the said communication part uses the division data transmitted via the said relay apparatus,
- the created redundant data is transmitted to the counterpart communication terminal via another relay communication path different from the relay communication path that transmitted the divided data.
- Redundant data is reproduced by the redundant data, for example, in the same way that lost data is reproduced by redundant data of RAID (Redundant Arrays of Inexpensive Disks).
- RAID Redundant Arrays of Inexpensive Disks
- the redundant data is data in which the divided data is reproduced from the redundant data even if at least a part (that is, part or all) of the divided data is not present.
- the relay communication setting unit when the communication status monitoring unit instructs the relay communication setting unit to add a new relay communication path (for example, in the case of FIG. 5 where the relay communication path of the relay server d is added).
- the connection request message is transmitted to the destination via the relay apparatus (relay server a) for which the relay communication path has been set. Send to communication terminal.
- the communication terminal 6L then executes a NAT setting unit (NAT setting unit 641) that performs NAT (Network Address Translation) setting for a router (router 5p) of a local network (for example, the local network 2p) including the communication terminal. ) And two or more other communication terminals (for example, the communication terminal 6s and the communication terminal 6t), and relay communication of divided data between the other communication terminals (relay communication server function) Part 64).
- NAT setting unit 641 that performs NAT (Network Address Translation) setting for a router (router 5p) of a local network (for example, the local network 2p) including the communication terminal.
- NAT Network Address Translation
- this communication system has the following aspects. That is, in this communication system, the other party communication terminal (calling side communication terminal 6a), which is the other party of communication of the communication data of the called side communication terminal 6b, has N relay devices (N ⁇ 2) A relay communication setting unit (calling side) that selects a plurality of relay devices from 2) and sets a relay communication path between the communication terminal and the counterpart communication terminal via the selected plurality of relay devices. A relay communication setting unit 621) of the communication terminal 6a, and a communication status monitoring unit 622 of the callee side communication terminal 6b for each relay device included in the plurality of relay devices via the relay device.
- the relay communication setting unit 621 of the calling side communication terminal 6a is instructed to add the relay communication path to the number of relay communication paths, or both of the deletion and addition, and the relay communication setting unit 621 of the calling side communication terminal 6a.
- 621 performs processing indicated by the instruction.
- a communication method for communicating with a partner communication terminal via a relay device wherein a plurality of divided data obtained by dividing communication data is communicated via a plurality of relay devices; For each of the relay devices, the communication status of the divided data communication via the relay device is monitored, and the communication of the plurality of divided data is performed based on the evaluation result of evaluating each communication status to be monitored.
- the communication method includes a communication status monitoring step of changing the plurality of relay devices through which the relay device is connected from the current plurality of relay devices to a plurality of new relay devices that are at least partially different from the current plurality of relay devices. It is.
- the above description shows a computer program for causing a computer (communication terminal) to execute each step such as the communication step.
- the above description shows a computer program for causing a computer (communication terminal) to realize the function of executing each step such as the communication step.
- a method of distributing a relay load applied to each relay function by using a plurality of relay functions connected to the communication terminal can be considered.
- the communication path to the partner communication terminal is different for each relay function to be used, which causes a problem that fluctuations in communication delay increase.
- the communication terminals (communication terminal 6 and communication terminal 6L) of the present embodiment have the above-described configuration.
- the communication terminal is a communication terminal that performs communication between communication terminals via relay function units (relay servers 4a to 4N, etc.) on the network, and is a data reception unit that receives data from the network ( A data receiving unit 625), a relay function unit (relay server, etc.) on the network used for communication, and a relay communication setting unit (relay communication setting unit 621) for setting a relay communication path, and each relay function unit A communication status monitoring unit (communication status monitoring unit 622) that monitors the communication status with the other communication terminal, and a data transmission unit (data transmission unit 624) that transmits data to the network.
- relay function units relay servers 4a to 4N, etc.
- the relay communication setting unit selects a plurality of relay function units on the network, and sets a communication path to a partner communication terminal via the relay function unit for each of the selected relay function units.
- the data transmission unit transmits transmission data from the upper application (upper application function unit 61) using a plurality of communication paths (relay communication paths) set by the relay communication setting unit, and the data reception unit Assembling data received via a plurality of communication paths, reproducing the transmission data from the higher-level application of the transmission source, the communication status monitoring unit is a communication status of the communication path with the partner communication terminal via the relay function unit And based on the evaluation result, the relay communication setting unit is instructed to delete the communication channel or set the communication channel to the partner communication terminal via the new relay function unit, or both.
- the relay communication setting unit sets the communication path (relay communication path) to the partner communication terminal via the new relay function unit. And transmits the connection request message including the partner communication terminal.
- the relay communication setting unit sets a plurality of relay communication paths, and the data transmission unit transmits the data using the plurality of communication paths, thereby making it possible to reduce the traffic flowing through one relay communication path.
- the communication band relayed by the relay function can be reduced.
- the communication status monitoring unit evaluates the communication status of the communication channel with the counterpart communication terminal via the relay function unit, and based on the evaluation result, deletes the communication channel and adds a new relay function unit By doing so, it becomes possible to delete a relay communication path with a large transmission delay or a relay communication path with a high packet discard rate and set an alternative relay communication path, and the communication between communication terminals is stabilized.
- the relay communication setting unit transmits a connection request message including address information of the new relay function unit to the partner communication terminal when setting the communication path to the partner communication terminal via the new relay function unit. To do. Thereby, the counterpart communication terminal can connect the relay communication path from the local network to the Internet. Therefore, it is possible to connect the relay communication path without special setting by the user by the dynamic NAT setting for the router.
- FIG. 9 is a diagram showing the communication terminal 6 (communication terminal 6a, communication terminal 6s, etc.).
- the communication terminals (communication terminals 6a, 6s, 6L, etc.) are connected to relay devices (relay servers 4a to 4N in FIG. 1, communication terminals 6p in FIG. A communication terminal connected to a local network (local network 2a, 2s) that communicates with a counterpart communication terminal (communication terminal 6b, communication terminal 6t, etc.) via a communication terminal 6q,
- relay devices By transmitting a packet addressed to a relay device address, each of the relay devices transmits a packet to the communication terminal (communication terminal 6a or the like), and the relay device receives the packet received from the communication terminal.
- a relay communication setting unit (relay communication setting unit 621) for setting a communication path for transmission by the relay device to the transmission source address;
- a communication unit (one of the data transmission unit 624 and the reception unit 625 included in the communication processing unit 624a, the communication processing unit 624a, or the communication unit that communicates the plurality of divided data obtained by dividing the data via the plurality of relay devices.
- the communication processing unit 624a as a whole (communication unit 62p and the like)) and each of the relay devices, and monitoring the communication status of communication of the divided data via the relay device, A plurality of relay devices through which a plurality of pieces of divided data are communicated are changed from a plurality of current relay devices to a plurality of new plurality at least partially different from the current plurality of relay devices.
- the communication terminal includes a communication status monitoring unit (communication status monitoring unit 622) to be changed by the relay device.
- the communication processing unit 624a is a functional block including the data transmission unit 624 and the data reception unit 625 described above. 2 and 7, the communication processing unit 624a is not shown.
- this communication terminal is connected to a local network (local networks 2a, 2s).
- a local network local networks 2a, 2s.
- each of the communication terminal (communication terminals 6a, 6s, 6L, etc.) and the partner communication terminal (communication terminals 6b, 6 etc.) each have a plurality of computers (FIG. 1) that are P2P connected to each other.
- dynamic NAT Network Address Translation
- a packet is transmitted from the communication terminal to a server or the like, the transmitted packet is detected by the NAT function, and the detected NAT function sets an address conversion rule in the NAT function.
- the translation rule to be set is a translation rule for translation between the private address of the local network and the global address of the global network, that is, the translation rule between the private address of the communication terminal and the global address. .
- the communication terminal and the server can communicate with each other by automatically setting the conversion rule in the NAT function by dynamic NAT setting. That is, after the conversion rule is set by the NAT function, the server or the like of the global network transmits the packet to the source address (source IP address, port number) of the packet received from the communication terminal. Thus, communication from the server or the like to a communication terminal connected to the local network becomes possible.
- Such a NAT function is implemented in, for example, routers (routers 5a and 5s) installed at the boundary between the local network and the global network.
- a firewall function may be implemented in the router.
- the firewall function is a function for monitoring packets flowing through the router and discarding unauthorized packets.
- the firewall function provides a function to prevent unauthorized intrusion from the global network (Internet 1) to the local network (local networks 2a, 2s).
- the relay communication setting unit transmits the packet to the relay device, and causes the detected packet to be detected by a predetermined communication control unit (one or both of the NAT function and the firewall function).
- the control unit is caused to set a communication path, and a communication path between the communication terminal and the relay device is set.
- the NAT function is implemented in the router (router 5a, router 5s) installed at the boundary between the local network and the global network, and address translation is executed by dynamic NAT setting.
- the network configuration that enables communication between the communication terminal and a server (for example, a relay device) of the global network (Internet 1) has been described as an example.
- a network configuration in which the NAT function is not implemented in the router (router 5a, router 5s) installed at the boundary between the local network and the global network, and only the firewall function is implemented is also conceivable.
- a communication terminal (communication terminals 6a, 6s, etc.) connected to the local network automatically sends a packet to a server (eg, a relay device) of the global network (Internet 1), thereby automatically passing through the firewall.
- a server eg, a relay device
- the communication terminal can communicate with a server (for example, a relay device) of the global network (Internet 1).
- setting the communication path means, for example, establishing the communication path.
- the relay communication setting unit for example, is connected to the relay device by a process similar to the process of setting the communication path in TURN (Traverse Usage Relay NAT) listed in Non-Patent Document 1, for example.
- the communication path may be set.
- the relay communication setting unit performs communication with each of a plurality of relay devices (relay servers 4a to 4N, two or more of communication terminals 6L (communication terminal 6p, communication terminal 6q)) and this communication terminal.
- a communication path calling side partial communication path
- the communication terminal and the partner communication terminal communication terminal 6b, communication terminals 6p to 6r
- a communication path (relay communication path) with the communication terminal 6t) is set.
- the communication data is communicated by the communication unit communicating a plurality of divided data obtained by dividing the communication data through the set communication paths.
- the communication path (routing table) is usually determined in advance. For this reason, it is not performed to dynamically select and determine a communication path to be used and set the determined communication path in a one-to-one correspondence with the communication start / end of a specific communication terminal.
- this communication terminal since a general terminal (for example, communication terminal 6p, communication terminal 6q) is used as a relay server, it is essential to dynamically determine a relay device to be used.
- a general terminal for example, communication terminal 6p, communication terminal 6q
- the communication path of this communication terminal-relay server group-destination communication terminal is dynamically determined and set at the start of communication and during communication.
- the communication status monitoring unit changes the plurality of relay devices used to a new plurality of relay devices at the start of communication or during communication.
- each relay apparatus used is a general terminal, a plurality of appropriate communication paths can be maintained as a plurality of communication paths by a plurality of relay apparatuses, and communication can be performed appropriately.
- this communication terminal the relay communication setting unit, the communication unit, and the communication status monitoring unit are combined, and a synergistic effect is produced by the combination.
- some or all of these relay communication setting units are missing, and this synergistic effect cannot be obtained.
- This communication terminal is different from the conventional example in that this synergistic effect is obtained.
- the communication band relayed by each relay function can be kept low without imposing a heavy processing load on the communication terminal providing the relay function.
- Communication terminal and communication method can be provided.
- communication data communication between the communication terminal and the partner communication terminal can be performed at high speed, and the communication quality can be stabilized.
Abstract
Description
図3は、通信端末間の接続シーケンスの一例を示す図である。
図4は、パケットロスが発生した場合の再送シーケンスの一例を示している。
図5は、中継通信路の入替シーケンスの一例である。
図6は、切断シーケンスの一例である。
ここまででは、図1のように、インターネット1に中継専用の中継サーバ4a~4Nがある場合について説明したが、以下、図7、図8を用いて、通信端末に中継サーバ機能を持たせる構成について説明する。
2 ローカルネットワーク
3 センターサーバ
4a~4N 中継サーバ
5、5a、5b ルータ
6、6a、6b 通信端末
61 上位アプリケーション機能部
62 中継クライアント部
63 通信I/F部
64 中継通信サーバ機能部
621 中継通信設定部
622 通信状況監視部
623 中継通信路情報記憶部
624 データ送信部
624a 通信処理部
625 データ受信部
641 NAT設定部
642 中継通信サーバ部
Claims (17)
- グローバルネットワークのアドレスが割り当てられた中継装置を介して、相手先通信端末と通信を行う、ローカルネットワークに接続された通信端末であって、
複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定部と、
通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信部と、
前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視部とを備える通信端末。 - 前記中継通信設定部は、予め定められたN個の前記中継装置(N≧2)から複数の中継装置を選択し、前記選択した複数の中継装置を介した、当該通信端末と前記相手先通信端末との間の中継通信路をそれぞれ設定し、
前記通信状況監視部は、前記各通信状況の評価結果に基づいて、前記現在の複数の中継装置の各中継通信路からの中継通信路の削除、又は、当該各中継通信路に対する中継通信路の追加、又は、前記削除および追加の両方を、前記中継通信設定部に指示し、
前記中継通信設定部は、前記通信状況監視部により指示されると、当該指示により示される処理を行う請求項1記載の通信端末。 - 前記通信部は、
前記通信データを前記複数の分割データへと分割して、分割された前記複数の分割データのそれぞれを、前記中継通信設定部によって選択された前記複数の中継装置のそれぞれを介して送信するデータ送信部と、
前記相手先通信端末によって通信データが分割された複数の分割データのそれぞれを、前記中継通信設定部によって選択された前記複数の中継装置のそれぞれを介して、前記相手先通信端末から受信して、受信された当該複数の分割データから、当該複数の分割データへと分割された前記通信データを組み立てるデータ受信部とを備え、
前記中継通信設定部は、前記通信状況監視部が新規中継通信路の追加を当該中継通信設定部に指示する場合、追加する新規中継通信路の中継装置のアドレス情報を含む接続要求メッセージを前記相手先通信端末に送信する請求項2記載の通信端末。 - 前記通信状況監視部は、前記相手先通信端末への前記複数の中継通信路の伝送遅延をそれぞれ監視し、伝送遅延が予め定められた許容条件を満たさない中継通信路を検出して、当該検出がされた場合、検出がされた該当中継通信路の削除又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定又は、前記削除および前記新規中継通信路の設定の両方を、前記中継通信設定部に指示する請求項2記載の通信端末。
- 前記通信状況監視部は、前記相手先通信端末への前記複数の中継通信路でのパケットロスをそれぞれ監視し、パケットロスが予め定められた許容条件を満たさない中継通信路を検出して、当該検出がされた場合、検出がされた該当中継通信路の削除又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定又は、前記削除および前記新規中継通信路の設定の両方を、前記中継通信設定部に指示する請求項2記載の通信端末。
- 前記通信状況監視部は、前記通信データのトラヒック量に応じて、前記中継通信設定部が設定済みの前記中継通信路の削除、又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定を前記中継通信設定部に指示する請求項2記載の通信端末。
- 前記通信状況監視部は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定が前記中継通信設定部によってされた場合に、設定された当該新規中継通信路を評価するための予め定められた評価用のデータを、当該新規中継通信路に送信することにより、前記新規中継通信路の通信状況を評価し、その評価の結果が予め定められた条件を満たす場合に、当該通信端末の上位アプリケーションからの通信データの送信に前記新規中継通信路を前記通信部に利用させる請求項2記載の通信端末。
- 前記通信状況監視部は、前記中継装置を介して前記通信部が前記相手先通信端末に送信する前記複数の分割データのうちの一部の分割データが、前記相手先通信端末に受信されなかったことを検出し、
前記通信部は、前記通信状況監視部によって当該検出がされた場合に、当該検出がされた前記一部の分割データの前記送信に前記通信部が利用した中継装置とは異なる、他の中継装置を介する中継通信路を用いて、当該一部の分割データを再度前記相手先通信端末に送信する請求項1記載の通信端末。 - 前記通信部は、前記再度の送信をするに際して、前記相手先通信端末への当該中継装置を介した通信での伝送遅延が、他の予め定められた前記中継装置よりも小さい中継装置を選択し、選択される当該中継装置による中継通信路により前記再度の送信を行う請求項8記載の通信端末。
- 前記通信部は、
当該通信端末の上位アプリケーションの複数の通信データについて、それぞれ、その通信データと、当該通信データが分割された複数の分割データが通信される複数の中継通信路との対応関係を記憶し、
上位アプリケーションから通信完了が当該通信部に通知された場合、又は、前記相手先通信端末から通信終了が当該通信部に通知された場合、通知がされた通信データに前記対応関係が対応付ける前記複数の中継通信路を全て解放する請求項1記載の通信端末。 - 前記中継通信設定部は、N個の前記中継装置のカテゴリをそれぞれ示すカテゴリ情報を記憶し、前記N個の中継装置のうちから、記憶される前記カテゴリ情報により予め規定されたカテゴリが示される中継装置が少なくとも1つ含まれる複数の中継装置を選択し、
前記通信部は、前記カテゴリ情報により前記予め規定されたカテゴリが示されない前記中継装置を介して通信する分割データを暗号化して、暗号化された当該分割データを当該中継装置を介して送信し、暗号化された前記分割データを解読するために必要となる情報を、前記カテゴリ情報によって前記予め規定されたカテゴリが示される前記中継装置を介して送信する請求項2記載の通信端末。 - 前記通信部は、前記中継装置を介して送信する分割データを用いて、当該分割データの一部と当該冗長データとから、又は、当該冗長データのみから当該分割データが再現される冗長データを作成して、作成された前記冗長データを、当該分割データを送信した前記中継通信路と異なる他の前記中継通信路を介して前記相手先通信端末に送信する請求項1記載の通信端末。
- 前記中継通信設定部は、前記通信状況監視部が新規中継通信路の追加を当該中継通信設定部に指示する場合、当該新規中継通信路の中継装置以外の他の中継装置のうちで、中継通信路を設定済みの中継装置を介して、前記接続要求メッセージを前記相手先通信端末に送信する請求項2記載の通信端末。
- 当該通信端末が含まれるローカルネットワークのルータに対して、NAT(Network Address Translation)設定を実行するNAT設定部と、
2台以上の他の通信端末から接続され、当該各他の通信端末の間におけるデータの通信を中継する中継通信サーバ部とを備える請求項1記載の通信端末。 - 前記相手先通信端末は、予め定められたN個の前記中継装置(N≧2)から複数の中継装置を選択し、前記選択した複数の中継装置を介した、当該通信端末と前記相手先通信端末との間の中継通信路をそれぞれ設定する中継通信設定部を備え、
前記通信状況監視部は、前記各通信状況の評価結果に基づいて、前記現在の複数の中継通信路からの中継通信路の削除、又は、当該複数の中継通信路に対する中継通信路の追加、又は、前記削除および追加の両方を指示し、
前記相手先通信端末の前記中継通信設定部は、前記通信状況監視部により指示されると、当該指示により示される処理を行う請求項1記載の通信端末。 - グローバルネットワークのアドレスが割り当てられた中継装置を介して、相手先通信端末との通信を、ローカルネットワークに接続された通信端末が行う方法であって、
複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定ステップと、
通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信ステップと、
前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視ステップとを含む通信方法。 - ローカルネットワークに接続された通信端末に、グローバルネットワークのアドレスが割り当てられた中継装置を介して、相手先通信端末と通信を行わせるためのコンピュータプログラムであって、
複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定ステップと、
通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信ステップと、
前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視ステップとを、通信を行わせる前記通信端末に実行させるためのコンピュータプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010543876A JP5436451B2 (ja) | 2008-12-26 | 2009-12-24 | 通信端末、通信方法、プログラム |
US13/133,766 US9054923B2 (en) | 2008-12-26 | 2009-12-24 | Communication terminal, communication method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008334817 | 2008-12-26 | ||
JP2008-334817 | 2008-12-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010073656A1 true WO2010073656A1 (ja) | 2010-07-01 |
Family
ID=42287301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/007171 WO2010073656A1 (ja) | 2008-12-26 | 2009-12-24 | 通信端末、通信方法、プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9054923B2 (ja) |
JP (1) | JP5436451B2 (ja) |
WO (1) | WO2010073656A1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012075072A (ja) * | 2009-12-25 | 2012-04-12 | Ricoh Co Ltd | 伝送端末、伝送端末用プログラム、プログラム提供システム、及びメンテナンスシステム |
JP2014520428A (ja) * | 2011-05-26 | 2014-08-21 | クゥアルコム・インコーポレイテッド | マルチパスオーバーレイネットワーク及びそれのマルチパス管理プロトコル |
US9444887B2 (en) | 2011-05-26 | 2016-09-13 | Qualcomm Incorporated | Multipath overlay network and its multipath management protocol |
JP2017139567A (ja) * | 2016-02-02 | 2017-08-10 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 端末、中継装置選択装置、通信方法、中継装置選択方法、及びプログラム |
JP2017142559A (ja) * | 2016-02-08 | 2017-08-17 | 日本電信電話株式会社 | 高速アップロードシステム及び方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5515985B2 (ja) * | 2010-04-02 | 2014-06-11 | 富士通株式会社 | 監視装置、障害区間特定方法および障害区間特定プログラム |
US9544194B2 (en) * | 2011-09-09 | 2017-01-10 | Nec Corporation | Network management service system, control apparatus, method, and program |
US9451654B2 (en) | 2012-08-27 | 2016-09-20 | Qualcomm Incorporated | Systems and methods for multi-hop relay selection |
JP6464696B2 (ja) * | 2014-11-26 | 2019-02-06 | 株式会社リコー | 制御システム、通信システム、制御方法、及びプログラム |
US10153966B1 (en) * | 2015-03-12 | 2018-12-11 | Alarm.Com Incorporated | Hybrid mesh network monitoring signaling environment |
CN106549994A (zh) * | 2015-09-21 | 2017-03-29 | 张生福 | 窄数据传输方法及使用该方法的系统 |
JP6559587B2 (ja) * | 2016-01-28 | 2019-08-14 | 株式会社東芝 | 通信装置、通信システムおよび通信プログラム |
WO2017145971A1 (ja) * | 2016-02-26 | 2017-08-31 | 日本電気株式会社 | 通信システム、制御装置、中継装置、制御方法およびプログラムが記憶された記憶媒体 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62248337A (ja) * | 1986-04-21 | 1987-10-29 | Nippon Telegr & Teleph Corp <Ntt> | パケツト伝送方式 |
JP2008225644A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | ゲートウェイ装置、ゲートウェイ装置の負荷分散方法及びゲートウェイ装置の負荷分散プログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050201342A1 (en) * | 2002-03-27 | 2005-09-15 | Randy Wilkinson | Wireless access point network and management protocol |
JPWO2007069327A1 (ja) * | 2005-12-15 | 2009-05-21 | 富士通株式会社 | 中継装置,中継方法,中継用プログラム,中継用プログラムを記録したコンピュータ読取可能な記録媒体および情報処理装置 |
US7792046B2 (en) * | 2008-06-05 | 2010-09-07 | Vss Monitoring, Inc. | Ethernet switch-based network monitoring system and methods |
-
2009
- 2009-12-24 US US13/133,766 patent/US9054923B2/en not_active Expired - Fee Related
- 2009-12-24 WO PCT/JP2009/007171 patent/WO2010073656A1/ja active Application Filing
- 2009-12-24 JP JP2010543876A patent/JP5436451B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62248337A (ja) * | 1986-04-21 | 1987-10-29 | Nippon Telegr & Teleph Corp <Ntt> | パケツト伝送方式 |
JP2008225644A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | ゲートウェイ装置、ゲートウェイ装置の負荷分散方法及びゲートウェイ装置の負荷分散プログラム |
Non-Patent Citations (1)
Title |
---|
KAZUTO ASO: "Wadai no Gijutsu no Koko ga Shiritai PC Base no Muryo IP Denwa Skype no Ugoki o Shiru", NIKKEI NETWORK, no. 57, 22 December 2004 (2004-12-22), pages 78 - 83 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012075072A (ja) * | 2009-12-25 | 2012-04-12 | Ricoh Co Ltd | 伝送端末、伝送端末用プログラム、プログラム提供システム、及びメンテナンスシステム |
JP2014520428A (ja) * | 2011-05-26 | 2014-08-21 | クゥアルコム・インコーポレイテッド | マルチパスオーバーレイネットワーク及びそれのマルチパス管理プロトコル |
US9444887B2 (en) | 2011-05-26 | 2016-09-13 | Qualcomm Incorporated | Multipath overlay network and its multipath management protocol |
JP2017139567A (ja) * | 2016-02-02 | 2017-08-10 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 端末、中継装置選択装置、通信方法、中継装置選択方法、及びプログラム |
WO2017135254A1 (ja) * | 2016-02-02 | 2017-08-10 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 端末、中継装置選択装置、通信方法、中継装置選択方法、及びプログラム |
US11178593B2 (en) | 2016-02-02 | 2021-11-16 | Ntt Communications Corporation | Terminal, relay apparatus selection apparatus, communication method, relay apparatus selection method, and program |
JP2017142559A (ja) * | 2016-02-08 | 2017-08-17 | 日本電信電話株式会社 | 高速アップロードシステム及び方法 |
Also Published As
Publication number | Publication date |
---|---|
US9054923B2 (en) | 2015-06-09 |
US20110242971A1 (en) | 2011-10-06 |
JP5436451B2 (ja) | 2014-03-05 |
JPWO2010073656A1 (ja) | 2012-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5436451B2 (ja) | 通信端末、通信方法、プログラム | |
EP3761592B1 (en) | System and method for virtual interfaces and advanced smart routing in a global virtual network | |
US8380868B2 (en) | Method and system for data transmission | |
JP4975760B2 (ja) | 複数のクライアントマシンをターゲットサーバ上で動作するアプリケーションにリモートアクセスさせる方法 | |
US9426176B2 (en) | Method, system, and logic for in-band exchange of meta-information | |
JP2022550356A (ja) | マルチテナントソフトウェア定義ワイドエリアネットワーク(sd-wan)ノードを提供するための方法、システム、およびコンピュータ読取可能媒体 | |
US20160254959A1 (en) | Provisioning a network for network traffic during a session | |
US20190215308A1 (en) | Selectively securing a premises network | |
US11431781B1 (en) | User-defined quality of experience (QoE) prioritizations | |
CN111435922B (zh) | 一种带宽共享方法 | |
US10652310B2 (en) | Secure remote computer network | |
JP6067682B2 (ja) | 情報決定方法及び情報決定システム | |
WO2007087590A1 (en) | Method and apparatus for interdomain multicast routing | |
US9401920B2 (en) | Black core network system and method | |
CN111917646B (zh) | 基于sd-wan的多数据中心互联优选的实现方法和系统 | |
JP3727572B2 (ja) | コンテンツ配信ネットワーク、アドレス通知端末、および通信制御装置 | |
US20060002371A1 (en) | Roaming communication system over Internet with remote hosts and related method | |
KR20040098093A (ko) | 멀티 터널 아이피에스이씨(ipsec)를 지원하는브이피엔(vpn) 시스템 및 운용방법 | |
Oryńczak et al. | Agent based infrastructure for real-time applications | |
WO2023276001A1 (ja) | 負荷分散システム、負荷分散方法、および、負荷分散プログラム | |
Tarapore et al. | Use of Multicast across Inter-domain Peering Points | |
Sayko et al. | RFC 8313: Use of Multicast across Inter-domain Peering Points | |
KR102015806B1 (ko) | 전자장치, 네트워크 시스템 및 프라이비트 네트워크를 구축하는 방법 | |
Abrar et al. | Reliability and Load Handling Problem in Internet Service Provider’s Network | |
Brennan | Exploring Alternative Routes Using Multipath TCP |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09834462 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2010543876 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13133766 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09834462 Country of ref document: EP Kind code of ref document: A1 |