Communication apparatus, program, and voice communication method
The communication device addresses call disconnections by monitoring and updating destination address information in response to changes, maintaining continuous voice communication despite address fluctuations in UDP-based systems.
Patent Information
- Application Number
- JP2024094004
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-10
- Publication Date
- 2025-12-22
- Estimated Expiration
- 2044-06-10
AI Technical Summary
Existing voice communication technologies using UDP fail to maintain ongoing calls when mobile terminals experience unintentional changes in address information due to carrier-grade NAT router switches during base station changes.
A communication device that monitors sender address information in voice communication packets and updates the destination address information to match any changes detected, ensuring continuous communication by adapting to new address information.
Ensures uninterrupted voice communication by updating destination address information in real-time, preventing call disconnections due to address changes during UDP-based voice communication.
Smart Images

Figure 2025185636000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a voice communication technology using UDP (User Datagram Protocol). [Background technology]
[0002] Patent Document 1 discloses an address translation technology that is based on TCP (Transmission Control Protocol) / IP (Internet Protocol) and is independent of the physical network configuration. In this technology, a sender terminal converts the destination IP address and destination port number, which are address information of a destination server, into a renamed IP address and a renamed port number according to address change information, and transmits traffic information including the renamed IP address and the renamed port number to an address translation device. The address translation device converts the renamed IP address and the renamed port number included in the traffic information received from the sender terminal into the original destination IP address and destination port number according to a mapping table, and transmits the converted information to the destination server. In this way, the sender terminal is connected to the destination server. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Special Publication No. 2010-514326 Summary of the Invention [Problem to be solved by the invention]
[0004] In recent years, extension telephone services have become popular, allowing mobile terminals such as mobile phones and smartphones to be connected to a main unit via the Internet and used as extension terminals. With such extension telephone services, carrier-grade NAT (Network Address Translation) routers may be switched when a mobile terminal moves and changes base stations, resulting in unintended changes to the mobile terminal's address information (global IP address and port number). If this occurs during a call, the call will be disconnected. The technology described in Patent Document 1 restores the destination address information included in traffic information sent by the sender terminal to the original address information and transmits it to the destination server. However, this technology does not take into consideration call disconnections due to changes in the address information of the sender terminal, which is the source of the transmission.
[0005] The present invention has been made in consideration of the above circumstances, and its purpose is to provide a technology that allows an ongoing call to be continued without being disconnected even if the address information of a mobile terminal is unintentionally changed during voice communication using UDP. [Means for solving the problem]
[0006] In order to solve the above problem, the present invention is a communication device that performs voice communication with a remote device using UDP, monitors the sender address information of a voice communication packet received from the remote device, and if it detects that the sender address information of the voice communication packet has been changed, updates the destination address information of the voice communication packet to be sent to the remote device to the changed sender address information.
[0007] For example, the present invention provides A communication device that performs voice communication with a partner device using UDP, an address monitoring means for monitoring address information of a source of a voice communication packet received from the other device; and an address update means for updating the destination address information of the voice communication packet to be sent to the other device to the detected changed source address information when the address monitoring means detects a change in the source address information of the voice communication packet. [Effects of the Invention]
[0008] In this invention, a communication device monitors the sender address information of a voice communication packet received from a remote device, and when it detects that this information has been changed, it updates the destination address information of the voice communication packet to be sent to the remote device to the changed sender address information. Therefore, according to this invention, even if the address information of the remote device is unintentionally changed during voice communication using UDP, the current call can be continued without being disconnected. [Brief explanation of the drawings]
[0009] [Figure 1] FIG. 1 is a schematic diagram of an extension telephone system according to an embodiment of the present invention. [Figure 2] FIG. 2 is a sequence diagram for explaining an example of the operation of the extension telephone system according to the embodiment of the present invention. [Figure 3] FIG. 3 is a sequence diagram for explaining an example of the operation of the extension telephone system according to the embodiment of the present invention, and is a continuation of FIG. [Figure 4] FIG. 4 is a schematic functional configuration diagram of the main device 1. As shown in FIG. [Figure 5] FIG. 5 is a flow chart for explaining the voice communication packet destination address information update process of the main unit 1. In FIG. [Figure 6] FIG. 6 is a flowchart illustrating the TCP communication socket switching process of the main unit 1. In FIG. DETAILED DESCRIPTION OF THE INVENTION
[0010] An embodiment of the present invention will be described below.
[0011] FIG. 1 is a schematic diagram of an extension telephone system according to the present embodiment.
[0012] As shown in the figure, the extension telephone system according to this embodiment is configured to include a main unit 1 and a mobile terminal 2 accommodated in the main unit 1.
[0013] The main unit 1 communicates with the mobile terminal 2 via the Internet 3 using socket communication (call control) using TCP (Transmission Control Protocol) and voice communication using UDP (User Datagram Protocol). This provides an internal telephone service to the mobile terminal 2. It is necessary to ensure that the mobile terminal 2 can access the main unit 1 at all times. For this reason, for example, the address information (global IP address and port number) of the main unit 1 may be set statically, or only the port number may be set statically, and the global IP address may be resolved from the FQDN (Fully Qualified Domain Name) of the main unit 1 by a dynamic DNS (Domain Name System) server.
[0014] The mobile terminal 2 is connected to a communication carrier network 4 via a base station 6. The communication carrier network 4 is connected to the Internet 3 via a carrier-grade NAT (Network Address Translation) router 5, and the mobile terminal 2 receives the internal telephone service provided by the main unit 1 using address information (global IP address, port number) assigned by the carrier-grade NAT router 5. Note that the mobile terminal 2 may unintentionally change its address information (global IP address and port number) when the carrier-grade NAT router 5 is switched due to a change in the base station 6 caused by movement, etc.
[0015] 2 and 3 are sequence diagrams for explaining an example of the operation of the extension telephone system according to the present embodiment.
[0016] In addition, in FIGS. 2 and 3, solid arrows indicate TCP communication, and dotted arrows indicate UDP communication.
[0017] First, the mobile terminal 2 transmits a registration request specifying the number information assigned to itself by the communication carrier to the main unit 1 by socket communication using TCP (S100). The carrier-grade NAT router 5 converts the sender's local address information (local IP address and port number) L of this registration request into global address information (global IP address and port number) Ga assigned to this mobile terminal 2 (S101), and transmits the registration request to the main unit 1 via the Internet 3 (S102). In response to this, the main unit 1 registers the number information specified in the registration request received from the mobile terminal 2 and the sender's global address information Ga as the terminal information of this mobile terminal 2 (S103).
[0018] In response to this, the main unit 1 starts periodically transmitting a liveness confirmation to the global address information Ga as the destination through socket communication using TCP (S104). When the liveness confirmation is transmitted from the main unit 1 (S105), the carrier-grade NAT router 5 converts the destination global address information Ga into local address information L (S106) and transmits the liveness confirmation to the mobile terminal 2 via the communication carrier network 4 (S107). The mobile terminal 2 monitors the connection with the main unit 1 by periodically receiving the liveness confirmation from the main unit 1.
[0019] Thereafter, the main unit 1 and the mobile terminal 2 mutually perform call control sequences (S109, S110) through socket communication using TCP via address conversion (conversion between the global address information Ga and local address information L of the mobile terminal 2) by the carrier-grade NAT router 5 (S108), thereby establishing a communication path between the main unit 1 and the mobile terminal 2.
[0020] Mobile terminal 2 transmits an audio communication packet having its own local address information L as the source to main unit 1 by audio communication using UDP (S111). The carrier-grade NAT router 5 converts the source local address information L of this audio communication packet into global address information Ga (S112), and the audio communication packet is transmitted to main unit 1 via the Internet 3 (S113). Similarly, the main unit 1 transmits an audio communication packet having global address information Ga of mobile terminal 2 as the destination to mobile terminal 2 by audio communication using UDP (S114). The carrier-grade NAT router 5 converts the destination global address information Ga of this audio communication packet into local address information L (S115), and the audio communication packet is transmitted to mobile terminal 2 via the communication carrier network 4 (S116).
[0021] Thereafter, when the base station 6 is changed due to the movement of the mobile terminal 2, the carrier grade NAT router 5 is switched, and the global address information assigned to the mobile terminal 2 is changed from global address information Ga to global address information Gb (S117).
[0022] The mobile terminal 2 transmits a voice communication packet having its own local address information L as the sender to the main unit 1 by voice communication using UDP (S118). The carrier-grade NAT router 5 converts the sender's local address information L of this voice communication packet into global address information Gb newly assigned to this mobile terminal 2 (S119), and the voice communication packet is transmitted to the main unit 1 via the Internet 3 (S120). The main unit 1 monitors the sender address information of the voice communication packet received from the mobile terminal 2, and when it detects that this sender address information has changed from global address information Ga to global address information Gb, it changes the destination address information of the voice communication packet to be transmitted to the mobile terminal 2 from global address information Ga to global address information Gb thereafter, regardless of the terminal information of the mobile terminal 2 registered by the registration request received from the mobile terminal 2 (S121).
[0023] Thereafter, the main unit 1 transmits a voice communication packet to the mobile terminal 2 by voice communication using UDP, with the global address information Gb of the mobile terminal 2 as the destination (S122). The carrier-grade NAT router 5 converts the global address information Gb of the destination into local address information L (S123), and the voice communication packet is transmitted to the mobile terminal 2 via the communication carrier network 4 (S124).
[0024] Furthermore, the main unit 1 transmits a liveness confirmation to the global address information Ga registered in itself as the terminal information of the mobile terminal 2 by socket communication using TCP (S125). However, the global address information of the mobile terminal 2 has been changed from global address information Ga to global address information Gb. As a result, address conversion by the carrier-grade NAT router 5 fails (S126), and the liveness confirmation does not reach the mobile terminal 2.
[0025] When the mobile terminal 2 times out after a predetermined time has elapsed without receiving confirmation of its existence from the main unit 1 (S127), it again sends a registration request specifying the number information assigned to itself to the main unit 1 via socket communication using TCP (S128). The carrier-grade NAT router 5 converts the sender's local address information L of this registration request into global address information Gb assigned to this mobile terminal 2 (S129), and sends the registration request to the main unit 1 via the Internet 3 (S130). When the main unit 1 again receives the registration request from the mobile terminal 2, it identifies the terminal information of the mobile terminal 2 including the number information specified in this registration request, and updates the address information included in this terminal information from global address information Ga to global address information Gb of the sender of this registration request (S131).
[0026] When the main unit 1 updates the terminal information of the mobile terminal 2, it leaves the TCP communication socket used for socket communication with the mobile terminal 2 (hereinafter referred to as the old TCP communication socket) as is, and creates a new TCP communication socket (hereinafter referred to as the new TCP communication socket) to be used for communication with the mobile terminal 2 based on the new terminal information of the mobile terminal 2 (S132). Then, it deletes the old TCP communication socket (S133).
[0027] As a result, socket communication with the mobile terminal 2 is performed using the new TCP communication socket thereafter, and the destination address information of the liveness confirmation periodically transmitted from the main unit 1 to the mobile terminal 2 (S134) is switched from global address information Ga to global address information Gb (S134). This liveness confirmation has the destination global address information Gb converted to local address information L by the carrier grade NAT router 5 (S135), and is transmitted to the mobile terminal 2 via the communication carrier network 4 (S136).
[0028] Next, the main unit 1 constituting the extension telephone system according to the present embodiment will be described in detail. Note that the mobile terminal 2 can be an existing mobile phone, smartphone, or the like equipped with an IP telephone function, and therefore detailed description thereof will be omitted.
[0029] FIG. 4 is a schematic functional configuration diagram of the main device 1. As shown in FIG.
[0030] As shown in the figure, the main device 1 is configured to include an Internet connection unit 10, a UDP communication unit 11, a TCP communication unit 12, a terminal registration unit 13, a call control unit 14, a relay processing unit 15, a survival confirmation transmission unit 16, an address monitoring unit 17, and an address update unit 18.
[0031] The internet connection unit 10 is an interface for connecting to the internet 3 .
[0032] The UDP communication unit 11 performs voice communication using UDP with the mobile terminal 2 via the Internet connection unit 10.
[0033] The TCP communication unit 12 performs socket communication using TCP with the mobile terminal 2 via the Internet connection unit 10.
[0034] In accordance with a registration request received from the mobile terminal 2 via the TCP communication unit 12, the terminal registration unit 13 registers the number information of the mobile terminal 2 specified in the registration request and its source address information (global IP address and port number) as terminal information.
[0035] The call control unit 14 establishes and releases a call path with the mobile terminal 2 whose terminal information is registered in the terminal registration unit 13 via the TCP communication unit 12 in accordance with a predetermined call control protocol.
[0036] The relay processing unit 15 transmits and receives voice communication packets to and from the mobile terminal 2 with which a call path has been established by the call control unit 14 via the UDP communication unit 11 in accordance with a transmission protocol such as RTP (Realtime Transport Protocol).
[0037] The survival confirmation transmission unit 16 periodically transmits survival confirmation via the TCP communication unit 12 to the mobile terminals 2 whose terminal information is registered in the terminal registration unit 13.
[0038] The address monitoring unit 17 monitors the source address information of the voice communication packet that the UDP communication unit 11 receives from the mobile terminal 2 .
[0039] When the address monitoring unit 17 detects a change in the source address information of a voice communication packet from the mobile terminal 2, the address update unit 18 updates the destination address information of the voice communication packet that the UDP communication unit 11 sends to the mobile terminal 2 to the changed source address information.
[0040] The functional configuration of main device 1 shown in Fig. 4 may be realized in hardware using an integrated logic IC such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array), or in software using a computer such as a DSP (Digital Signal Processor). Alternatively, it may be realized as a process in a general-purpose computer such as a PC (Personal Computer) equipped with a CPU (Central Processing Unit), memory, an auxiliary storage device such as an SSD (Solid State Drive) or HDD (Hard Disk Drive), and a communication device such as a NIC (Network Interface Card), by the CPU loading a predetermined program from the auxiliary storage device into memory and executing it.
[0041] FIG. 5 is a flow chart for explaining the voice communication packet destination address information update process of the main unit 1. In FIG.
[0042] This flow starts when the call control unit 14 establishes a communication path with the mobile terminal 2, and ends when this communication path is released.
[0043] First, the address monitoring unit 17 starts monitoring the source address information of the voice communication packet received by the UDP communication unit 11 from the mobile terminal 2 via the communication path established by the call control unit 14 (S200). Then, when the address monitoring unit 17 detects a change in the source address information of the voice communication packet received from the mobile terminal 2 (YES in S201), the address updating unit 18 updates the destination address information of the voice communication packet that the UDP communication unit 11 transmits to this mobile terminal 2 via the communication path established by the call control unit 14 to the changed source address information detected by the address monitoring unit 17 (S202).
[0044] FIG. 6 is a flowchart illustrating the TCP communication socket switching process of the main unit 1. In FIG.
[0045] This flow starts when the terminal registration unit 13 newly registers the terminal information of the portable terminal 2 in accordance with a registration request received from the portable terminal 2.
[0046] First, the TCP communication unit 12 starts monitoring the terminal information of the mobile terminal 2 newly registered in the terminal registration unit 13 (S210). Then, when the TCP communication unit 12 detects that the terminal registration unit 13 has changed the terminal information of this mobile terminal 2 (YES in S211), it creates a new TCP communication socket linked to the address information included in the changed terminal information of this mobile terminal 2, while leaving the old TCP communication socket linked to the address information (global IP address and port number) included in the terminal information of this mobile terminal 2 before the change (S212). Then, the TCP communication unit 12 deletes the old TCP communication socket linked to the address information included in the terminal information of this mobile terminal 2 before the change (S213).
[0047] One embodiment of the present invention has been described above.
[0048] In this embodiment, main unit 1 monitors the source address information of voice communication packets received from mobile terminal 2, and when it detects that this information has been changed, it updates the destination address information of voice communication packets to be sent to mobile terminal 2 to the changed source address information. Therefore, according to this embodiment, even if carrier-grade NAT router 5 is switched during voice communication using UDP when mobile terminal 2 moves and base station 6 is changed, and the address information of mobile terminal 2 is changed unintentionally, the ongoing call can be continued without being disconnected.
[0049] Furthermore, in this embodiment, when the terminal information of the mobile terminal 2 is changed in accordance with a registration request received from the mobile terminal 2, the main device 1 does not simply disconnect the old TCP communication socket that had been used for communication with the mobile terminal 2 up to that point, but creates a new TCP communication socket to be used for communication with the mobile terminal 2 based on the changed terminal information, and then deletes the old TCP communication socket.
[0050] Generally, in TCP communication, when the terminal information of a client terminal is changed, the server device deletes the old TCP communication socket that was used for communication with the client terminal up to that point, and then creates a new TCP communication socket to be used for communication with the client terminal based on the changed terminal information. As a result, the session between the server device and the client terminal may be temporarily disconnected, and the client terminal may temporarily be unable to use the services provided by the server device.
[0051] However, in this embodiment, when the terminal information of mobile terminal 2 is changed, main unit 1 does not simply disconnect the old TCP communication socket used for communication with mobile terminal 2, but creates a new TCP communication socket to be used for communication with this mobile terminal 2 based on the changed terminal information, so that the session with mobile terminal 2 continues without being disconnected. Therefore, according to this embodiment, even if the TCP communication socket used for communication with this mobile terminal 2 is switched due to a change in the terminal information of mobile terminal 2, mobile terminal 2 can continue to use the extension telephone service provided by main unit 1.
[0052] The present invention is not limited to the above-described embodiment, and various modifications are possible within the scope of the present invention.
[0053] For example, in the above embodiment, the present invention has been described as being applied to the main unit 1 of an internal telephone system. However, the present invention is not limited to this. The present invention can be widely applied to communication devices that perform voice communication with a remote device using UDP. [Explanation of symbols]
[0054] 1: Main unit 2: Mobile terminal 3: Internet 4: Telecommunications carrier network 5: Carrier-grade NAT router 6: Base station 10: Internet connection section 11: UDP communication section 12: TCP communication section 13: Terminal registration unit 14: Call control unit 15: Relay processing unit 16: Survival confirmation sending unit 17: Address monitoring unit 18: Address update unit
Claims
1. A communication device that performs voice communication with a remote device using UDP (User Datagram Protocol), an address monitoring means for monitoring address information of a source of a voice communication packet received from the other device; and an address update means for updating, when the address monitoring means detects a change in the address information of the source of the voice communication packet, the address information of the destination of the voice communication packet to be transmitted to the other device to the address information of the source after the change detected. A communication device comprising:
2. 2. The communication device according to claim 1, a terminal registration means for registering address information of the other device in accordance with a registration request received from the other device; a socket communication means for performing socket communication using TCP (Transmission Control Protocol) with the other device based on address information of the other device registered in the terminal registration means, The socket communication means When the address information of the other device registered in the terminal registration means is updated, a socket used for socket communication with the other device is left as is, and a new socket to be used for socket communication with the other device is created based on the updated address information of the other device, and then the socket used for socket communication with the other device before the address information of the other device was updated is deleted. A communication device comprising:
3. 3. The communication device according to claim 1, The address information includes an IP address and a port number. A communication device comprising:
4. A program that causes a computer to function as a communication device that performs voice communication with a remote device using UDP (User Datagram Protocol), an address monitoring means for monitoring address information of a source of a voice communication packet received from the other device; When the address monitoring means detects a change in the address information of the source of the voice communication packet, the computer is caused to function as an address updating means for updating the address information of the destination of the voice communication packet to be transmitted to the other device to the address information of the source after the change detected. A program characterized by:
5. A method for audio communication with a communication device using UDP (User Datagram Protocol), comprising: The communication device monitors address information of the sender of the voice communication packet received from the other device; When a change in the address information of the source of the voice communication packet is detected, the destination address information of the voice communication packet to be transmitted to the other device is updated to the changed address information of the source.
1. A voice communication method comprising:
Citation Information
Patent Citations
Software, method and apparatus for voice communication
JP2004304476A
Communication address management system, communication address management server, and terminal device
JP2008066809A
Method for switching IP address of mobile node device in mobile communication system, mobile node device, and server
JP2009213108A
Information processor, information processing system, and program
JP2010074353A
Communication system and telephone exchange apparatus, and control method
JP2011139135A