The present invention relates to telecommunications in general, and, more particularly, to mid-call redirection of traffic through application-layer gateways.
A modern telecommunications system often comprises one or more switched telephone networks and one or more Internet Protocol-based packet networks. These two different types of networks are sometimes interconnected by an application-layer gateway, which acts as a translator between the two types of networks, thereby enabling communications-based applications (e.g., Voice over Internet Protocol [VoIP] telephony, videoconferencing, Internet Protocol Television [IPTV], etc.) over multiple transport protocols end to end. In particular, one of the primary functions of an application-layer gateway is to convert between the different transmission and coding techniques used across the different networks. For example, a Voice-over-Internet-Protocol-capable (VoIP-capable) application-layer gateway performs the conversion between time-division multiplexed (TDM) voice streams that are transmitted and received by a switched telephone network telecommunications terminal, and VoIP datagrams that are transmitted and received by an Internet Protocol (IP) endpoint (e.g., a VoIP-capable telecommunications terminal, etc.).
Other key functions of an application-layer gateway include voice and video compression and decompression, packetization, call routing, and control signaling. In addition, an application-layer gateway may provide features such as echo cancellation, tone detection, tone generation (e.g., dual tone multi-frequency tones, etc.), and conferencing, as well as interfaces to external controllers, billing systems, and network management systems.
Each of Internet Protocol (IP) endpoints 131-1 and 131-2 is a device capable of communicating in accordance with the Internet Protocol (e.g., an IP telephone, an IP headset, an IP handset, an IP softphone, an IP conference phone, etc.). In illustrative telecommunications network 100, Internet Protocol endpoints 131-1 and 131-2 are capable of communicating with each other over Internet Protocol (IP) network 160.
Local enterprise network 140 provides for local distribution of analog signals, such as in an enterprise system, and comprises wiring between Internet Protocol (IP) network 160 and analog terminals 141-1 and 141-2.
PSTN terminals 151-1 and 151-2 are devices capable of communicating over Public Switched Telephone Network (PSTN) 150 (e.g., a Plain Old Telephone Service [POTS] telephone, an Integrated Services Digital Network [ISDN] telephone, a cell phone, etc.).
Public Switched Telephone Network (PSTN) 150 comprises one or more transmission-related nodes such as switches that are used to direct call-related signals from one or more sources to the correct destinations of those signals. PSTN 150 is capable of handling either analog or digital bearer information in circuit-switched calls among two or more devices, such as PSTN terminals 151-1 and 151-2.
Internet Protocol (IP) network 160 comprises one or more transmission-related nodes that are used to direct packets from one or more sources to their appropriate destination(s) in accordance with the Internet Protocol. Internet Protocol (IP) network 160 is described in detail below and with respect to
Application-layer gateways 210-1 and 210-2 are data-processing systems that provide application-layer functions (e.g., Voice over IP functions, etc.) such as translation between different types of networks, compression, packetization, etc., as described above. In illustrative telecommunications network 100, application-layer gateway 210-1 acts as a translator between local enterprise network 140 and Internet Protocol network 160, and application-layer gateway 210-2 acts as a translator between Public Switched Telephone Network (PSTN) 150 and Internet Protocol network 160.
Application server 220 is a data-processing system that is capable of providing one or more services to support a particular application. For example, application server 220 might provide one or more Voice over Internet Protocol (VoIP) services such as call setup between two or more Internet Protocol endpoints, call modification, call termination, and so forth.
Each Internet Protocol (IP) router 230-i, where i is an integer between 1 and 8 inclusive, is a device that is capable of receiving Internet Protocol packets via one or more incoming links and of forwarding the packets along one or more outgoing links. Typically Internet Protocol routers 230-1 through 230-8 maintain routing tables that are dynamic and enable the routers to alter the paths by which traffic is transmitted through Internet Protocol network 160. For example,
The present invention enables traffic to be redirected in a network without any participation from routers. In particular, traffic associated with an application (e.g., Internet Protocol telephony, Internet Protocol Television, etc.) can be redirected to traverse (or “hairpin”) through an application-layer gateway when it is advantageous to do so, without participation from any routers. Such redirection might be advantageous for a variety of reasons, such as providing better quality of service (QoS) for a particular call, load balancing, fault tolerance, and so forth.
In accordance with the illustrative embodiment, traffic redirection can be performed by any component of the telephony system, other than a router. For example, the traffic-redirection might be performed by one or more application-level gateways, or one or more application servers, or one or more telecommunications terminals (e.g., Internet Protocol endpoints, etc.), or some combination of these elements. The present invention is thus advantageous in that it enables traffic redirection without requiring any changes to or replacement of routers in a network.
In accordance with the illustrative embodiment, traffic redirection can occur while a call is in progress (i.e., “mid-call redirection”). Moreover, the redirection is not restricted to the addition of an application-layer gateway to an existing path, but might instead replace an application-layer gateway in an existing path with a different application-layer gateway. The illustrative embodiment is disclosed in the context of Internet telephony; however, it will be clear to those skilled in the art, after reading this specification, how to make and use embodiments of the present invention for other kinds of applications and types of communication (e.g., Internet Protocol Television [IPTV], instant messaging [IM], videoconferencing, etc.)
The illustrative embodiment comprises: generating a signal that causes communication between a first node in a network and a second node in the network to traverse a second path in the network in lieu of a first path in the network; wherein the network comprises one or more application-layer gateways; and wherein the first path does not include any of the application-layer gateways; and wherein the second path includes one of the application-layer gateways.
Application-layer gateways 510-1 and 510-2 are data-processing systems that are capable of providing application-layer functions (e.g., Voice over IP [VoIP] services, etc.) as in the prior art. Moreover, application-layer gateways 510-1 and 510-2 are also capable of participating in the performing of task 850 of
Application server 520 is a data-processing system that is capable of providing one or more services to support a particular application (e.g., Voice over IP [VoIP], Internet Protocol Television [IPTV], etc.), and is also capable of participating in the performing of one or more of the tasks described below and with respect to
Each of Internet Protocol (IP) endpoints 531-1 and 531-2 is a device capable of communicating in accordance with the Internet Protocol (e.g., an IP telephone, an IP headset, an IP handset, an IP softphone, an IP conference phone, etc.). Moreover, IP endpoints 531-1 and 531-2 are also capable of participating in the performing of one or more of the tasks described below and with respect to
Internet Protocol (IP) routers 230-1 through 230-8 remain unchanged from the prior art, as described above.
In yet some other embodiments of the present invention, the tasks of
In any case, it will be clear to those skilled in the art, after reading this disclosure, how to make or program one or more of application-layer gateways 510, application server 520, and Internet Protocol endpoints 531-1 and 531-2 in order to implement the method of
At task 810, the quality of service (QoS) provided by the current path for an existing call, as well as the QoS provided by one or more alternative paths for the existing call, is monitored, in well-known fashion.
Task 820 checks for a particular condition pertaining to the quality of service of the current path. Examples of such conditions might include:
Task 830 checks whether there is an alternative path for the current call with better quality of service (QoS) than that of the current path. This alternative path might add one or more application-layer gateways 510 to the current path, or might replace a particular application-layer gateway 510-i in the current path with another application-layer gateway 510-j. If such an alternative path is found, execution proceeds to task 840, otherwise execution continues back at task 820.
At task 840, a signal (e.g., a signaling protocol message such as H.323/SIP, etc.) is generated that indicates that the current call should be redirected along the specified alternative path.
At task 850, the existing call is redirected along the specified alternative path, in well-known fashion. After task 850 is performed, the method of
As will be appreciated by those skilled in the art, in accordance with the illustrative embodiment, the redirection of the call in task 850, as well as all of the other tasks 810 through 840, is performed without any participation by any of Internet Protocol routers 230-1 to 230-8. As noted above, the redirection is not necessarily restricted to the addition of an application-layer gateway to an existing path, but might instead replace an application-layer gateway in an existing path with a different application-layer gateway. Moreover, as will be appreciated by those skilled in the art, in some other embodiments of the present invention, there might be a plurality of paths exiting from an application-layer gateway, and traffic might be redirected from one such path out of the gateway to another such path.
As will further be appreciated by those skilled in the art, although the illustrative embodiment of the present invention is disclosed in the context of Internet telephony, it will be clear to those skilled in the art, after reading this specification, how to make and use embodiments of the present invention for other kinds of applications and types of communication (e.g., Internet Protocol Television [IPTV], instant messaging [IM], videoconferencing, etc.)
As will further be appreciated by those skilled in the art, although the illustrative embodiment of the present invention is disclosed in the context of the Internet Protocol, it will be clear to those skilled in the art, after reading this specification, how to make and use embodiments of the present invention for other types of packet-based protocols, as well as for circuit-switched networks, applications, and protocols.
It is to be understood that the disclosure teaches just one example of the illustrative embodiment and that many variations of the invention can easily be devised by those skilled in the art after reading this disclosure and that the scope of the present invention is to be determined by the following claims.