A user data device can use a voice modem to initiate a voice call to an internet service provider and then exchange data packets over the Internet through the voice modem and the internet service provider. The user data device may remotely control the voice modem by establishing a control session over serial connection between the user device and the voice modem. One example of a protocol for modem control sessions is TELNET.
Many wireless communication devices are capable of multi-mode communication. For example, a wireless phone may have a voice communication mode, an Internet data mode, and a Local Area Network (LAN) data mode. Some of these multi-mode communication devices include a voice modem capability to transfer data packets over voice calls through wireless communication networks.
Thus, the user data device may remotely control the wireless communication device by using a modem control protocol to establish a modem control session over a connection to the wireless communication device. Over the modem control session, the user data device controls the wireless communication device to initiate a voice call through a wireless communication network. The user data device may then exchange data packets over the voice call through the wireless communication device and the wireless communication network.
An Internet Protocol (IP) controlled modem receives a single modem command packet from a user IP system. The single modem command packet indicates a destination IP address, a destination IP port number, and a modem command to initiate a voice call. The IP controlled modem determines if the destination IP address and the destination IP port number are authorized for modem control. If the destination IP address and the destination IP port number are authorized for modem control, then the IP controlled modem processes the modem command to wirelessly transfer call set-up signaling to a wireless communication network to initiate the voice call. The IP controlled modem receives a user data packet from the user IP system and wirelessly transfers the user data packet over the voice call.
User IP system 101 could be a computer, electronic game, media player, telephone, internet appliance, IP transceiver, or some other data apparatus capable of IP communication. In operation, user IP system 101 transfers a modem command to IP-controlled modem 102 in a single modem command packet. The modem command described below is to initiate a voice call to a called number, but other commands, such as commands to switch lines or hang-up could be implemented in a similar manner.
To access modem control, the single modem command packet needs a destination IP address and IP port that are authorized for modem control. In response to the single modem command packet, IP-controlled modem 102 establishes a voice call over wireless communication network 103 to call-handling system 104. User IP system 101 and call-handling system 104 may then exchange IP packets over IP-controlled modem 102, wireless communication network 103, and communication links 105-107.
Advantageously, the above example illustrates single-packet access to modem control. User IP system 101 did not have to establish a modem control session with IP-controlled modem 102 over a serial connection. User IP system 101 did not have to implement a complex modem control protocol. In contrast, a ubiquitous and efficient technique for modem control is used.
If modem control for the IP packet is not authorized (202), then IP-controlled modem 102 processes the IP packet for other purposes that include routing the IP packet over a current voice call that was previously initiated by a modem command packet (205). If the IP packet should be routed over the current voice call (206), then IP-controlled modem 102 wirelessly transfers the IP packet to wireless communication network 103 for delivery to call-handling system 104 over the voice call (207). IP-controlled modem 102 may perform address and port translation on the IP packet before transfer to wireless communication network 103. If the IP packet should be not routed over the voice call (206), then IP-controlled modem 102 performs processing for another purpose if any (208).
The access code may be a private code that provides secure access to modem control capability. In some alternative embodiments, the use of an access code could be omitted. In addition, the generation of a transceiver command could be omitted, and the voice call could be directly initiated from the command in the modem control packet.
User IP device 301 and IP-controlled modem 310 communicate over IP link 302. IP-controlled modem 310 and wireless communication network 320 communicate over wireless link 322. Wireless communication network 320 and public telephone network 321 communicate over network link 323. Public telephone network 321 and call-handling system 330 communicate over network link 324. Call-handling system 330 and internet 340 communicate over internet link 341.
User IP device 301 then transfers a single modem command packet to IP interface 311 of IP-controlled modem 310. The modem command packet has the authorized destination IP address and port number for modem control. As the source address, the modem command packet uses the IP address provided by DHCP server 314. In IP-controlled modem 310, processing system 312 applies the process of
In response to the transceiver instruction, wireless transceiver 316 in IP controlled modem 310 transfers call set-up signaling to wireless communication network 320 to initiate a voice call to call-handling system 330. Wireless communication network 320 processes the set-up signaling to extend the call by transferring call set-up signaling to public telephone network 321. Public telephone network 321 processes the set-up signaling to extend the call by transferring call set-up signaling to call-handling system 330. Telephony modem 333 in call-handling system 330 answers the voice call and interacts with processing system 312 in IP-controlled modem 310 over the voice call to establish a Point-to-Point Protocol (PPP) session between IP-controlled modem 310 and call-handling system 330. Call-handling system 330 provides IP-controlled modem 310 with a network address for use on the PPP session.
User IP device 301 then transfers a user data packet to IP interface 311 of IP-controlled modem 310. As the source address, the user data packet has the IP address for user IP device 301 that was received from DHCP server 314. The user data packet also has a destination IP address and destination port for routing over internet 340. Processing system 312 in IP-controlled modem 310 applies the process of
For the user data packet, NAT 315 in IP-controlled modem 310 provides address translation between the source IP address and the network address that was provided to modem 310 by call-handling system 330. In some cases, NAT 315 may also select a network port for the PPP session and provide translation between the source IP address (and port) and the selected network port. In modem 310, wireless transceiver 313 transfers the user data packet over the PPP session to telephony modem 333 in call-handling system 330.
For the user data packet, system control 332 provides address translation between the source network address used on the PPP session and a public source IP address that call-handling system 330 uses on internet 340. In some cases, system control 332 may also select a public IP port and provide translation between the source network port used on the PPP session and the selected public IP port used on internet 340. IP interface 331 in call-handling system 330 transfers the user data packet to internet 340 for subsequent routing and delivery.
Subsequently, IP interface 331 receives a responsive user data packet from internet 340 for delivery to user IP device 301. As the destination address, the response data packet has the public IP address and public IP port used by call-handling system 330. For the response data packet, system control 332 provides address translation between the destination IP address and port used by call-handling system 330 and the destination network address and port for the PPP session. Telephony modem 333 in call-handling system 330 transfers the response user data packet over the PPP session to wireless transceiver 313 in IP-controlled modem 310.
For the response data packet, NAT 315 in IP-controlled modem 310 provides address and port translation between the destination network address and port for the PPP session and the IP address and port assigned to user IP device 301 by DHCP server 314. IP interface 311 transfers the response user data packet to user IP device 301.
Advantageously, the above example illustrates single-packet access to modem control. User IP device 301 did not have to establish a modem control session with IP-controlled modem 310 over a serial connection. User IP device 301 did not have to implement a complex modem control protocol. In contrast, a ubiquitous and efficient technique for modem control was used.
IP transceiver 501 comprises a communication port, signal processing circuitry, software, and/or some other communication components. IP transceiver 501 may include an antenna and Radio Frequency (RF) circuitry if wireless communication is used. IP transceiver 501 exchanges DHCP packets, modem command packets, and user data packets as described herein.
Wireless transceiver 502 comprises an antenna, filter, amplifier, signal processing circuitry, software, and/or some other communication components. Wireless transceiver 502 may use various wireless communication formats, such as Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), Evolution Data Only (EVDO), Worldwide Interoperability for Microwave Access (WIMAX), High Speed Packet Access (HSPA), Long Term Evolution (LTE), or some other wireless communication format—including combinations thereof. Wireless transceiver 502 transmits and receives wireless signals to initiate voice calls, initiate PPP sessions, and exchange user data packets as described herein for modems 102 and 310.
Processing circuitry 504 comprises microprocessor and other circuitry that retrieves and executes operating software 506 from memory system 505. Memory system 505 comprises a computer-readable storage medium, such as a disk drive, flash drive, data storage circuitry, or some other memory apparatus. Memory system 505 could be a single device or be distributed across multiple devices. Processing circuitry 504 is typically mounted on one or more circuit boards that may also hold memory system 505 and portions of transceivers 501-502.
Operating software 506 comprises computer programs, firmware, or some other form of computer-readable processing instructions. Operating software 506 may include an operating system, utilities, drivers, network interfaces, applications, or some other type of software. When executed by processing circuitry 504, operating software 506 directs processing system 503 to operate IP-controlled modem 500 as described herein for modems 102 and 310. In particular, operating software 506 directs processing system 503 to interpret and execute modem command packets to initiate voice calls and PPP sessions and to exchange user data packets as described herein. Operating software 506 may also direct processing system 503 to provide DHCP service and provide address and port translations.
Referring back to
Wireless communication network 103 comprises antennas and RF communication circuitry for wireless communication. The RF communication circuitry typically includes amplifiers, filters, RF modulators, and signal processing circuitry. The signal processing circuitry implements the wireless communication format. Wireless communication network 103 also comprises processing circuitry, memory, software, and network communication interfaces. Wireless communication network 103 may also include routers, servers, call processors, computer systems, communication links, and other communication network elements.
Call-handling system 104 comprises processing circuitry, memory, software, and network communication interfaces. Call-handling system 104 may also include computers, routers, servers, and other network components.
Wireless communication link 106 uses the air or space as the transport media. Wireless communication link 106 may use various protocols, such as CDMA, GSM, EVDO, WIMAX, HSPA, LTE, or some other wireless communication format—including combinations thereof. Wireless communication link 106 could be a direct link or may include intermediate networks, systems, or devices.
Communication links 105 and 107 use metal, glass, air, space, or some other material as the transport media. Communication links 105 and 107 may use various communication protocols, such as TDM, IP, Ethernet, wireless, or some other communication format—including combinations thereof. Communication links 105 and 107 could be direct links or may include intermediate networks, systems, or devices.
The above description and associated figures teach the best mode of the invention. The following claims specify the scope of the invention. Note that some aspects of the best mode may not fall within the scope of the invention as specified by the claims. Those skilled in the art will appreciate that the features described above can be combined in various ways to form multiple variations of the invention. As a result, the invention is not limited to the specific embodiments described above, but only by the following claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
4837800 | Freeburg et al. | Jun 1989 | A |
4912756 | Hop | Mar 1990 | A |
5119412 | Attallah | Jun 1992 | A |
5257397 | Barzegar et al. | Oct 1993 | A |
5410754 | Klotzbach et al. | Apr 1995 | A |
5479480 | Scott | Dec 1995 | A |
5862474 | Kimball | Jan 1999 | A |
6026119 | Funk et al. | Feb 2000 | A |
6111866 | Kweon et al. | Aug 2000 | A |
6782417 | Rao | Aug 2004 | B1 |
6804820 | Meric et al. | Oct 2004 | B1 |
6907265 | Holmstrom et al. | Jun 2005 | B1 |
7113503 | Basore et al. | Sep 2006 | B1 |
7460525 | Moore, Jr. | Dec 2008 | B2 |
7606156 | DeLangis | Oct 2009 | B2 |
20010053133 | Horikawa | Dec 2001 | A1 |
20020199003 | Sacca | Dec 2002 | A1 |
20030210679 | Grove et al. | Nov 2003 | A1 |
20040052376 | Fisher et al. | Mar 2004 | A1 |
20040117653 | Shapira et al. | Jun 2004 | A1 |
20040213152 | Matuoka et al. | Oct 2004 | A1 |
20060067350 | Clevy et al. | Mar 2006 | A1 |
20060203807 | Kouretas et al. | Sep 2006 | A1 |
20060268820 | Mahkonen et al. | Nov 2006 | A1 |
20070032225 | Konicek et al. | Feb 2007 | A1 |
20070248075 | Liu et al. | Oct 2007 | A1 |
20080117958 | Pattenden et al. | May 2008 | A1 |
20090116428 | Yi et al. | May 2009 | A1 |
20090207836 | Kawasaki et al. | Aug 2009 | A1 |
Number | Date | Country |
---|---|---|
1775888 | Apr 2007 | EP |
Entry |
---|
Panian et al, The IP Modem Interface Standard Draft, Jan. 1999. |
rfc3315, Dynamic Host Configuration Protocol for IPv6, Jun. 2003. |
Portable Computer and Communications Association, “AT via IP (ATVIP) Standard Draft Version 1.0,” Jan. 17, 2002, pp. 1-7, Modem Standards Committee, Hood River, Oregon. |
Portable Computer and Communications Association, “The IP Modem Interface Standard Draft,” Jan. 11, 1999, pp. 1-36, Modem Standards Committee, Brookdale, California. |
Portable Computer and Communications Association, “The Standards and Architecture Committee Historical Specifications and Standards,” Aug. 26, 2009, 2 pages, Standards and Architecture Committee, Hood River, Oregon. |
Telecommunications Industry Association, “TIA-678-A Data Transmission Systems and Equipment—Serial Asynchronous Automatic Dialing and Control for Character Mode DCE on Wireless Data Services,” Sep. 3, 2004, 2 pages, Telecommunications Industry Association, Arlington, Virginia. |
Wikipedia, “Telnet,” Feb. 15, 2010, 4 pages, wikipedia.org, http://en.wikipedia.org/wiki/Telnet. |