Abstract:
A method of measuring network quality for VoIP calls comprises setting up a test call from a local IP endpoint to a remote IP endpoint reachable by a logical trunk group associated with the local IP endpoint, receiving statistical data regarding the test call, tearing down the test call, processing the statistical data and generating measurement results, and routing a VoIP call using a route selected based at least in part on the measurement results.

Description:
BACKGROUND 
     Connectivity and voice quality are key reliability issues in today&#39;s VoIP (voice over Internet Protocol) networks. Today&#39;s VoIP users increasingly expect the Quality of Service (QoS) of the call to be equal or close to that of the Public Switched Telephone Network (PSTN). Because network conditions may change rapidly and continuously, connectivity for a VoIP call cannot be guaranteed. Further, problems that may be commonly encountered in an IP network such as packet loss, packet delay, and out of order packet delivery may lead to deteriorating quality of VoIP voice calls. 
     Unlike data connections, a real-time application like voice calls place much stricter requirements on packet delivery sequence and timing. Significant packet loss, packet delay, and out of order delivery problems make telephone conversations difficult. Users may experience echoes and talker overlap that are perceived as significant indicators of inferior QoS. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Aspects of the present disclosure are best understood from the following detailed description when read with the accompanying figures. It is emphasized that, in accordance with the standard practice in the industry, various features are not drawn to scale. In fact, the dimensions of the various features may be arbitrarily increased or reduced for clarity of discussion. 
         FIG. 1  is a simplified block diagram of an embodiment of a VoIP network; 
         FIG. 2  is a simplified logical block diagram of an embodiment of a system for VoIP test calls; 
         FIG. 3  is a simplified flowchart of an embodiment of a method for VoIP test calls; and 
         FIG. 4  is a simplified logical block diagram of an embodiment of a system for VoIP call routing. 
     
    
    
     DETAILED DESCRIPTION 
     It is to be understood that the following disclosure describes many different examples for implementing different features of various embodiments. Specific examples of components and arrangements are described below to simplify the present disclosure. These are, of course, merely examples and are not intended to be limiting. In addition, the present disclosure may repeat reference numerals and/or letters in the various examples. This repetition is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations unless otherwise specified. 
       FIG. 1  is a simplified block diagram of an embodiment of a VoIP network  10 . VoIP network  10  is shown comprising a plurality of media gateway nodes  12 - 14  interconnected by logical trunk groups  16 - 18  and the Internet  20 , however, it should be understood that the network configuration shown in  FIG. 1  is merely exemplary. Logical trunk groups  16 - 18  comprise a plurality of circuits or transmission channels that are capable of interconnecting telephony calls. Media gateway nodes  12 - 14  each comprises a plurality of multimedia media gateways (MG)  22 - 27  coupled to a multimedia gateway controller (MGC)  30 - 32 , which is sometimes referred to as a softswitch. Multimedia gateways  22 - 27  each may comprise one or more switching fabric of the same or different types for routing telephony calls. The switching fabrics may be packet-switching matrices and/or non-packet switching matrices. The multimedia gateways may be coupled to their respective multimedia gateway controller via an ATM (Asynchronous Transfer Mode) or IP (Internet Protocol) backbone network, for example. Multimedia gateway controllers  30 - 32  provides call processing control and user interface functions for TDM (Time Division Multiplex), ATM, IP, and other traffic processed, switched and routed by multimedia gateways  22 - 27 . The multimedia gateways coupled to a multimedia gateway controller may be geographically distributed. The VoIP bearer path between the media gateway nodes may comprise ATM, MPLS (Multi-Protocol Label Switching), IP, or other bearer paths. VoIP network  10  enables two users using IP telephone devices such as a telephone operating pursuant to SIP (Session Initiation Protocol) or another suitable protocol to communicate with one another. 
     The multimedia gateway nodes may convert data from a format, protocol, and/or type required for one network to another format, protocol, and/or type required for another network, and/or otherwise convert data from a first type of data on a first transmission link to a second type of data on a second transmission link. The multimedia gateway nodes may terminate channels from a circuit-switched network and pass streaming media for a packet-switched network, such as Real-Time Transport Protocol (RTP) streams transported via User Datagram Protocol (UDP) in an IP network. Input data for the media gateway may include audio, video, and/or T.120 (real-time multi-point communications), among others, which the media gateway may handle simultaneously or otherwise. 
       FIG. 2  is a simplified logical block diagram of an embodiment of a system for VoIP test calls  60 . System  60  may reside in data measurement module  44  of system  40  or is operable to communicate with system  40  by exporting data thereto. System  40  will be described in greater detail below with respect to  FIG. 4 . System  60  comprises interconnected VoIP call generator  62 , a measurement module  64 , a data post-processing module  66 , and a route data export module  68 . The operations of system  60  are hereinafter described with reference to  FIG. 3 .  FIG. 3  is a simplified flowchart of an embodiment of a method for VoIP test calls. In step  70 , system  40  receives an indication from a user to perform periodic test calls to identified targets. For example, the user may provide or otherwise input or select a logical trunk group identifier (ID), a local multimedia gateway ID based on a caller telephone number, and a remote multimedia gateway ID based on a called party telephone number. Although the test call will be performed periodically, they are performed continuously with sufficiently short periods as to provide an accurate picture of network conditions. In step  72 , the originating switch of the local multimedia gateway is then instructed by its multimedia gateway controller to generate and transmit signaling set up messages of the test call to the terminating switch of the remote multimedia gateway. In step  74 , the terminating switch sends an acknowledgement of receiving the set up signaling message(s). In steps  76  and  78 , the test call originating switch proceeds to set up the forward bearer path to the terminating switch, and the terminating switch proceeds to set up the backward bearer path to the originating switch. The call setup messaging may be performed pursuant a standard protocol now known or to be developed. 
     Continuing on to step  80 , test tones are generated and applied at both switches to provide test call bearer path traffic. In step  82 , periodic report packets generated pursuant to RTP Control Protocol (RTCP) at the originating switch and/or the terminating switch are collected and examined to determine path conditions by a RTP/RTCP stack resident in measurement module  64 . The RTCP report packets are transmitted using the same distribution mechanism as the data packets. RTP and RTCP are transport layer protocols situated below the application layer. According to RTCP, receiver reports and sender reports containing statistics such as the number of packets transmitted, the number of packets lost, an estimation of jitter, the last packet sequence number received, packet time stamp of the last sender report, and delay since the last sender report received are provided. The RTCP reports are used to obtain measurements of the network condition, and after a sufficient number of measurements have been obtained, the test call may be torn down by the originating switch in step  84 . VoIP call generator  62  may be responsible for the test call setup and tear down steps described above, and measurement module  64  may be responsible for collecting and examining the RTCP report data. Thereafter, the test call results may be processed by post-processing module  66  in step  86 . The test call data may be averaged, smoothed, filtered and otherwise processed to eliminate anomalies and outliers so that a more accurate picture of the bearer path conditions is presented. The processed data may also be exported or otherwise made available to system  40 , which uses this information to formulate a route list. The processed test call results may also be exported to other network management entities. The processed test call results may be exported in a generic format readable by a number of applications. 
     According to the processed data, if the measurements indicate that congestion or other network problems are greater than a predetermined threshold, as determined in step  88 , then an alarm may be generated in step  90 . The alarm may be used to notify users or craft personnel or it may be used to alert routing engine  40  to avoid using particular paths. If the congestion is below the threshold, then system  60  may proceed to make another test call. If a previously congested path is now measured as being below the threshold, the previously issued alarm may be cleared so that the route can be used for voice calls. Alternatively, test call measurement data may be compared to multiple threshold levels to determine whether the congestion reached minor, major or critical levels. An alarm may be generated when one or each of these threshold levels has been reached. 
     Voice calls may be routed using the best route (e.g. uncongested and connectivity) established by using test call results. The resultant VoIP calls have improved voice quality and provide users with enhanced call experience. The test call results may be provided to other network management and routing equipment/software to further optimize the data network. Details of an example of how the measurement results may be used may be found in co-pending U.S. patent application Ser. No. 11/078,531, entitled “System and Method for Routing VoIP Calls,” formerly, incorporated herein by reference. 
     As employed herein, the term “network” may be used to refer to an entire network or to a network portion, a network application, and/or network apparatus. To that end, one or more instances of the multimedia gateway and/or softswitch, or components thereof, may be singularly or collectively employed to bridge two or more networks, including those of PSTNs and voice-over-packet (VoP) networks, among others. PSTN networks may employ TDM, among other non-packet formats and/or protocols. VoP networks may employ ATM, VoIP, universal-mobile-telecommunications-service (UTMS), code-division-multiple-access (CDMA, such as CDMA2000 and/or W-CDMA), voice-over-digital-subscriber-line (VoDSL), other formats and/or protocols, and/or combinations thereof. 
       FIG. 4  is a simplified logical block diagram of an embodiment of a system for VoIP call routing  40 . System  40  may reside within each multimedia gateway controller. System  40 , which may also be referred to as a VoIP call routing engine, comprises at least three logical modules: a VoIP resource manager  42 , a data measurement module  44 , and a route decision module  46 . System  40  is operable to intelligently route VoIP calls around segments of the network that experience congestion, link failure, node failure or other problems. Because voice calls are very sensitive to adverse network conditions that cause packet delay, out-of-order delivery, packet loss, and other problems, the avoidance of congested network segments significantly improves the QoS of the VoIP call.