This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2005-316379, filed on Oct. 31, 2005, the entire contents of which are incorporated herein by reference.
1. Field
One embodiment of the invention relates to a communication control method in a communication system for conducting information communication through an IP (Internet Protocol) network and including a router having a conversion function of a private address and a global address.
2. Description of the Related Art
In recent years, a system in which IP-packetized data such as voice, video, a modem, a fax, etc. is transmitted through an IP network has been widely constructed. In the IP network, a router is a key device. The router transfers an IP packet based on a destination address and a source address.
This kind of communication system can be constructed by plural networks through the routers. In such a system, terminals between different networks may be unable to conduct peer-to-peer communication depending on a function of the router. That is, there is a router has a conversion function of a private address and a global address. This kind of router is called a NAT (Network Address Translator) router and is often provided for effective utilization of an IP address. Because of this conversion function, a discrepancy between a source address and a destination address occurs inside the network, and the communication may be restricted from a security aspect.
In order to prepare for such circumstances,. it is contemplated to provide a relay server of an IP packet and deliver the IP packet between terminals through this relay server. However, in this technique, a load on the relay server is increased together with an increase in traffic between the terminals, so that it may be difficult to cope with demand for sudden traffic in recent years. Also, allocation of the relay server is fixed, so that when a relay function goes down, for example, at the time of maintenance replacement work or at the time of failure of the relay server, and communication between different networks cannot be conducted.
In Japanese Patent Application Publication (Kokai) No. 2005-57388, an IP communication method is disclosed. In this method, an address response server is provided. A packet with IP description of a terminal is sent to the address response server. An address conversion server notifies a response source terminal of a port and a source IP address of the packet received and thereby an address converted by a NAT router can be obtained. Accordingly, direct communication between the terminals can be conducted by obtaining the address converted by the NAT router, but it is necessary to newly provide the address response server in the system.
In Japanese Patent Application Publication (Kokai) No. 2005-57388, an address solution method is disclosed. In the method, outgoing and incoming from another network to a terminal is performed without having a global IP address. In the case of establishing a signal path for call control in the range on a private network, a thread for controlling both the terminals by an address resolution server having a global address is created. An inquiry is made from a VoIP (Voice over IP) server for managing identification information sent from the terminal. A call control signal and a voice signal are relayed between threads for processing the range between terminals for making a call. However, it is necessary to establish signal paths between the address resolution server and all the terminals previously and also peer-to-peer communication between the terminals cannot be conducted.
As described above, when a NAT router is provided in a communication system through an IP network, the NAT router may restrict communication between terminals on different networks. In order to prepare for such circumstances, provision of a relay server is carried out, but a load on the relay server is increased together with an increase in traffic. Communication between different networks cannot be conducted depend on states of the relay server, for example, at the time of maintenance replacement work or at the time of failure of the relay server.
A general architecture that implements the various feature of the invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate embodiments of the invention and not to limit the scope of the invention.
Various embodiments according to the invention will be described hereinafter with reference to the-accompanying drawings.
In general, according to one embodiment of the invention, a communication control method of a communication system which connects an IP network to plural networks including IP communication devices through routers provided for respective networks, which communicates between the IP communication devices of the different networks through the IP network with IP-packetized data, and which contains plural relay servers including a first relay server and a second relay server which relay the IP packet and a control signal to which a global IP address is assigned, the method includes: determining whether peer-to-peer communication between the IP communication devices can be conducted by using a test packet through the first and second relay servers and the router; relaying the IP packet by the first or second relay server between the IP communication devices determined that the peer-to-peer communication cannot be conducted; and sequentially switching a relay server to relay the IP packet according to a state of the first relay server, from the first relay server to a relay server other than the first relay server.
As described above, according to one embodiment of the invention, relay processing is sequentially switched and performed by other relay servers according to a state of a relay server. As a result of this, the relay processing is distributed to plural relay servers and a load can be prevented from concentrating on the particular relay server. Further, communication between the IP communication devices can be ensured by switching the relay processing to other relay servers even at the time of maintenance replacement work or at the time of failure of the relay server. Accordingly, there is provided a communication control method capable of preventing a load from concentrating on a particular relay server and also preventing a relay function from going down.
The system of
The IP communication device 1 sends a connection enabling request by a UDP (User Datagram Protocol) packet to a relay server (for example, a relay server 1b) registered previously. This connection enabling request is received by the relay server 1b with the address converted by the router 1a (S1). An IP address of the IP communication device 1 is described in this connection enabling request.
The relay server 1b receives the connection enabling request, and then describes a source IP address and a port number of the UDP packet described in a header thereof in a connection enabling test request for testing enabling or disabling of connection. The relay server 1b sends the connection enabling test request to a relay server 2b having a global IP address (S2). The relay server 2b receives the connection enabling test request, and then sends the UDP packet toward the IP address and the port number described in the connection enabling test request (S3).
When the router 1a passes an IP packet from a device other than the relay server 1bto which the IP communication device 1 sends the UDP packet, a connection enabling test packet sent from the relay server 2b reaches the IP communication device 1. Hence, the IP communication device 1 receives the connection enabling test packet from the relay server 2b, and then sends a connection enabling test response indicating a result OK to the relay server 2b. The relay server 2b receives this connection enabling test response, and then describes an IP address and a port number with a communication enabling OK in a management table as shown in
The relay server 1b receives notification of the connection enabling test response from the relay server 2b, and then describes the IP address, the port number and the communication enabling OK in the management table of
Also, in the relay server 1b, when an IP address of a UDP header of a connection enabling request sent from the IP communication device matches with an IP address described in a connection enabling request sent from the IP communication device, address conversion is not made by a NAT router, so that the procedure of S2 or later is not performed.
In
Next, the relay server 1b sends an RTP negotiation response to the IP communication device 1 and RTP connection between the relay server 1b and the IP communication device 1 is made (S32). The relay server 1b, in which the RTP is established between the relay server 1b and the IP communication device 1, sends an RTP negotiation request to the relay server 2b in order to establish an RTP between this relay server 1b and the IP communication device 2 (S33).
The relay server 2b relays the RTP negotiation request sent from the relay server 1b to the IP communication device 2 (S34). The IP communication device 2 receives this RTP negotiation request, and sends an RTP negotiation response to the relay server 1b (S35, S36). Then, an RTP is established between the relay server 1b and the IP communication device 2. In addition, in the procedure described above, a standard procedure such as SDP (Session Description Protocol) can also be used as the RTP negotiation request.
In
The relay server 2b receives the RTP negotiation request similarly, and checks a self load state and in the case of deciding that a load is high (S101), the relay server 2b further relays the RTP negotiation request to a relay server 3b (S209). The relay server 3b receives the RTP negotiation request, and sends an RTP negotiation response to the IP communication device 1 through the relay server 2b in the case of having ability to perform relay processing. As a result of this, connection of an RTP (called an RTP1) is established between the relay server 3b and the IP communication device 1 (S210 to S212).
When the RTP1 is established, the relay server 3b also sends an RTP negotiation request toward an IP communication device 2 through the relay server 2b in order to establish an RTP between the relay server 3b and the IP communication device 2 (S213, S214). The IP communication device 2 receives the RTP negotiation request, and returns an RTP negotiation response toward the relay server 3b through the relay server 2b (S215, S216). As a result of this, an RTP (called an RTP2) is also established between the relay server 3b and the IP communication device 2.
The relay server 3b sends voice/video data, fax and modem data sent from the IP communication device 1 through the RTP1 to the IP communication device 2 through the RTP2. Also, the relay server 3b sends voice/video data, fax and modem data sent from the IP communication device 2 through the RTP2 to the IP communication device 1 through the RTP1. Thus, the relay server 3b relays a signal between the IP communication device 1 and the IP communication device 2 and thereby, communication between the IP communication device 1 and the IP communication device 2 can be conducted.
In addition, in this embodiment, an IP address of a relay server used as a notification destination of a connection enabling test packet is previously stored in each of the IP communication devices, respectively. Plural addresses of the relay servers are set every IP communication device, and priority is assigned to each of the relay servers. Management of the IP addresses and priorities is performed by a management table as shown in
When an error of communication with the highest-priority relay server occurs, the IP communication device sequentially switches a destination of the connection enabling test packet to the relay server with lower priority. As a result of this, a communication path of the IP communication device is ensured by going through another relay server of the inside of the system even when the relay server cannot be used due to failure or maintenance operation work.
Similarly, the IP communication device may switch a destination of the call connection or the data communication to the relay server with lower priority. For example, the IP communication device starts a timer at a time of sending the RTP negotiation request (e.g., S207 in
As a result, a communication path of the IP communication device is ensured by going through another relay server of the inside of the system even when the relay server cannot be used due to failure or maintenance operation work. The error of communication with the relay server includes the internal error of the relay server caused by failure or maintenance operation work, the error in the communication path between the IP communication device the relay server, etc. For switching the relay server at call connection or the data communication, different management table than the management table for a connection test packet as shown in
Also, in this embodiment, an IP address of a relay server (a test relay server) used as a destination of a connection enabling test packet is previously stored in each of the relay servers 1b, 2b, 3b, respectively. A plurality of the test relay servers are set at every relay server 1b, 2b, 3b and priority is assigned to each of the test relay servers. Management of the test servers and priorities is performed by a management table as shown in
Each of the relay servers selects a destination of a connection enabling test packet in order of decreasing priority of the management table of
Similarly, the relay server may switch a destination of the call connection or the data communication to the relay server with lower priority. For example, the relay server starts a timer at a time of sending the RTP negotiation request (e.g., S208 or S209 in
The RTP negotiation can be made by switching to another relay server of the inside of the system even when the test relay server cannot be used due to failure or maintenance operation work. For switching the relay server at call connection or the data communication, different management table than the management table for a connection test packet as shown in
In this embodiment as described above, in the case of configuring a voice/video communication system by connecting plural different networks through routers in the voice/video communication system using an IP, plural relay servers 1b, 2b, 3b for relaying voice/video/fax/modem data and a call control signal to which a global IP address is assigned are prepared. Then, a state of every relay server 1b, 2b, 3b is checked at the time of call connection. The checked state includes load state of the relay server, and/or the communication state with the relay server, etc. In the case of determining that the checked state is the predetermined state (e.g., a load is high), relay processing is shifted to a test relay server or other relay servers. As a result of this, a load does not concentrate on one relay server when the relay server relays voice/video data, fax and modem data between IP communication devices.
That is, a load can be prevented from concentrating on the particular relay server by distributing relay processing to plural relay servers when peer-to-peer communication between terminals on different networks cannot be conducted depending on a function of a router and a relay server relays a voice/video packet sent and received between the terminals in a communication system for connecting different networks to an IP network through routers and comprising plural relay servers for relaying communication between the networks.
Also, communication between terminals on different networks can be conducted even at the time of maintenance replacement work or at the time of failure of a relay server by presetting addresses of plural relay servers to an IP communication device. Further, a connection enabling test can be made even at the time of maintenance replacement work or at the time of failure of a test relay server by presetting addresses of plural test relay servers to a relay server. From these, there is provided a communication control method capable of preventing a load from concentrating on a particular relay server and also preventing a relay function from going down.
It is to be understood that the present invention is not limited to the specific embodiment described above and that the invention can be embodied with the elements modified without departing from the spirit and scope of the invention. The present invention can be embodied in various forms according to appropriate combinations of the elements disclosed in the embodiment described above. For example, some elements may be deleted from all elements shown in the embodiment. Further, the elements in different embodiments may be used appropriately in combination.
Number | Date | Country | Kind |
---|---|---|---|
P2005-316379 | Oct 2005 | JP | national |