The subject matter described herein relates to communications and more particularly to call admission control in a media gateway.
In modern telephony networks, media switching and call control functionality are separated. Call control, which includes setting up and tearing down calls and maintaining call state machines, is performed by a network entity referred to as a media gateway controller (MGC). Media stream switching, which includes switching media packets between input and output ports and converting the media packets into the appropriate formats for the sending and receiving parties, is performed by a media gateway (MG). Media gateway controllers communicate call control information to media gateways via a media gateway control protocol. Typical media gateway control protocols, such as MGCP and MEGACO, include commands for communicating information about each endpoint of a session to the media gateway and instructing the media gateway as to how to process packets to be delivered to each endpoint.
Control manager 202 of media gateway 200 controls the overall operation of media gateway 200 and communicates with media gateway controller 212 to set up and tear down calls. Resource manager 204 of control manager 202 allocates new voice sessions to incoming calls. For example, resource manager 204 may assign one of voice servers 208 to a session. Voice servers 208 are each assigned individual IP addresses and are each reachable through packet switch fabric 206 via any of network interfaces 210. Multiple sessions may be processed by the same voice server 208. Furthermore, multiple sessions may be established between a given network interface 210 and a given voice server 208 through the packet switch fabric 206. The traffic rate on a given interface 210 should not exceed the maximum available bandwidth to avoid degrading the voice quality of calls. In order to maintain an expected quality of service (QoS) for existing calls and to provide a suitable QoS for newly admitted calls in media gateway 200, call admission control (CAC) is employed. Call admission control considers criteria, such as available bandwidth, to determine whether or not a new voice call should be accepted.
One problem with conventional call admission control techniques is that they do not accurately determine available bandwidth. For example, some conventional call admission control techniques allocate a peak bandwidth that the call will require to each new call, as determined during call setup, and this peak bandwidth is subtracted from the available bandwidth. This is partly due to the fact that the impact on available bandwidth of voice encoding techniques that are commonly used in VoIP transmissions, such as compression and silence suppression technologies, is difficult to determine and may result in a non-deterministic traffic rate for each call. Accurately determining the traffic rate at the media gateway is important to achieve better bandwidth utilization while maintaining an expected quality of service for calls handled by the media gateway.
Accordingly, a need exists for measurement-based call admission control in a media gateway.
In one aspect of the subject matter disclosed herein, a method is disclosed for measurement-based call admission control in a media gateway. A request for establishing a new voice-over-IP (VoIP) call for sending and receiving voice over IP packets in a media gateway is received. The request indicates a required bandwidth for the new call. Bandwidth utilization of at least one Internet protocol (IP) network interface for sending and receiving voice over IP packets in the media gateway is determined. The media gateway determines whether to admit the new VoIP call based on the determined required bandwidth for the new call and the determined bandwidth utilization for at least one of the IP network interfaces.
In another aspect of the subject matter disclosed herein, a system is disclosed for measurement-based call admission control in a media gateway. The system includes at least one network processor associated with at least one IP network interface in a media gateway, each network processor including logic configured to measure bandwidth utilization of its IP network interface, and a control manager for receiving the measured bandwidth utilization for each of the network interfaces, for receiving a request for establishing a new VoIP call in the media gateway and for determining whether to admit the new call to the media gateway based on bandwidth required for the new call and the bandwidth utilization measured for at least one of the IP network interfaces.
Objects and advantages of the present invention will become apparent to those skilled in the art upon reading this description in conjunction with the accompanying drawings, in which like reference numerals have been used to designate like elements, and in which:
To facilitate an understanding of exemplary embodiments, many aspects are described in terms of sequences of actions that can be performed by elements of a computer system. For example, it will be recognized that in each of the embodiments, the various actions can be performed by specialized circuits or circuitry (e.g., discrete logic gates interconnected to perform a specialized function), by program instructions being executed by one or more processors, or by a combination of both.
Moreover, the sequences of actions can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor containing system, or other system that can fetch the instructions from a computer-readable medium and execute the instructions.
As used herein, a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device. More specific examples (a non exhaustive list) of the computer-readable medium can include the following: a portable computer diskette, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), and a portable compact disc read-only memory (CDROM).
Thus, the subject matter disclosed herein can be embodied in many different forms, and all such forms are contemplated to be within the scope of what is claimed. Any such form of embodiment may be referred to herein as “logic configured to” perform a described action.
In the illustrated example, each voice chip 302 implements one or more VoIP protocols, such as Real time Transmission Protocol (RTP). Each voice chip 304 implements ATM Adaptation Layer 1 (AAL1) functions. Each voice chip 306 implements ATM Adaptation Layer 2 (AAL2) functions. DSP 308 provides transcoding, echo cancellation and other payload-transformation functions. TSI 310 makes on-demand connections between VoIP chip channels, TDM matrix channels, and DSPs. CPU 312 controls the overall operation of each voice server 208.
In addition to a plurality of voice servers 208, media gateway 200 includes a plurality of network interfaces 210. Each network interface 210 implements network layer functions and packet forwarding functions, such as IP forwarding functions. In the illustrated example, different network interfaces are provided to connect to external Ethernet, Packet-Over-SONET (POS), ATM, and MPLS networks. Each IP network interface 210 includes a network processor 316 for implementing the various functions.
In addition to packet-based network interfaces 210, media gateway 200 may also include TDM network interfaces 318. TDM network interfaces 318 send and receive voice frames from external TDM networks. TDM network interfaces 318 may implement any suitable physical layer protocols for sending and receiving voice frames over TDM links. For example, each TDM network interface 318 may terminate one or more TDM voice trunks.
In order to switch media packets between network interfaces 210 and voice servers 208, media gateway 200 includes a packet switch fabric 206. Packet switch fabric 206 routes packets between voice servers 208 and network interfaces 210 under the control of control manager 202. As discussed above, packet switch fabric 206 may connect every network interface 210 to every voice server 208. Exemplary operations that may be performed at a voice server 208 may include segmentation and reassembly (SAR), echo cancellation, transcoding, DTMF detection, DTMF generation, announcement, conference bridging, Internet Fax, and law enforcement.
In addition to packet switch fabric 206, media gateway 200 may also include a TDM matrix module 322 for switching traffic that is carried in each TDM timeslot. TDM matrix module 322 is also controlled by control manager 320. Control manager 202 may communicate with media gateway controller 212 to dynamically allocate logical and physical resources for each session.
In operation, control manager 202 receives a request for a new call. The request may be generated by media gateway controller 212 in response to receiving a call setup message associated with a new call. The call setup message may be an ISUP IAM message, a PRI SETUP message, a SIP INVITE message, or any other suitable type of call setup message for initiating a call. Control manager 202 determines based on call setup parameters and other available bandwidth usage information within media gateway 200 whether media gateway 200 has adequate available bandwidth to support the new call, as will be discussed further below.
MCAC manager 400 collects and stores in a memory (not shown) bandwidth usage information from network interfaces 210 for use in determining the bandwidth availability of each network interface 210. Control manager 202 uses the determined bandwidth availability to decide whether there is adequate bandwidth in call admission control decisions and to assign new calls to those network interfaces 210 that have adequate bandwidth.
MCACBWi=MAX(BWi at time tK,BWi at time tK-1*Df) (1)
During call setup between control manager 202 and media gateway controller 212, a required bandwidth 812 for a call is determined. Required bandwidth 812 may be provided by media gateway controller 212 and depends on call setup parameters such as encoding, required quality of service, compression, and the like. Once the required bandwidth 812 for a call is established, a comparison is made to the available bandwidth 810 of one or more network interfaces 210 to determine if any network interface has adequate available bandwidth 810 to support the call. For example, required bandwidth 812 may be subtracted from available bandwidth 810 in subtractor 814 and a determination 816 may be made as to whether the result is greater than zero. Responsive to the result being greater than or equal to zero, the call is admitted and assigned to the respective network interface 210 by control manager 202. Responsive to the result being less than zero, the call is rejected, i.e., the call is not assigned to the respective network interface 210 by control manager 202. In this case, other network interfaces 210 may be checked for available bandwidth. Equation 2 below represents the measurement-based call admission control algorithm for determining an available BWi (for deciding whether to admit or reject a call) in equation form.
Available BWi=(MAXBWi*ULFi/100)−adjusted MCACBWi (2)
In
Accordingly, the systems and methods described herein provide for better supported measurement-based call admission control decisions, which offers many benefits. For example, the quality of service for existing calls and newly admitted calls handled by media gateway 200 can be preserved because resources in media gateway 200 are less likely to be exceeded. Moreover, higher bandwidth utilization can be achieved on network interfaces 210 without fear of over committing bandwidth, which also results in better load balancing among multiple network interfaces 210.
It will be understood that various details of the invention may be changed without departing from the scope of the invention. Furthermore, the foregoing description is for the purpose of illustration only, and not for the purpose of limitation, as the invention is defined by the claims as set forth hereinafter.
This application claims the benefit of U.S. Provisional Application No. 60/616,651 entitled “Media Gateway Features”, filed Oct. 7, 2004, the disclosure of which is incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
4984264 | Katsube | Jan 1991 | A |
6173322 | Hu | Jan 2001 | B1 |
6339594 | Civanlar et al. | Jan 2002 | B1 |
6426955 | Dalton et al. | Jul 2002 | B1 |
6584110 | Mizuta et al. | Jun 2003 | B1 |
6775269 | Kaczmarczyk et al. | Aug 2004 | B1 |
6775280 | Ma et al. | Aug 2004 | B1 |
6904017 | Meempat et al. | Jun 2005 | B1 |
6907004 | Ramsey et al. | Jun 2005 | B1 |
6914883 | Dharanikota | Jul 2005 | B2 |
6928069 | Nakanishi | Aug 2005 | B2 |
6944150 | McConnell et al. | Sep 2005 | B1 |
6965562 | Tuomi | Nov 2005 | B2 |
6976087 | Westfall et al. | Dec 2005 | B1 |
7002973 | MeLampy et al. | Feb 2006 | B2 |
7028092 | MeLampy et al. | Apr 2006 | B2 |
7046683 | Zhao | May 2006 | B1 |
7072303 | MeLampy et al. | Jul 2006 | B2 |
7133923 | MeLampy et al. | Nov 2006 | B2 |
7151781 | MeLampy et al. | Dec 2006 | B2 |
7236483 | Yeom | Jun 2007 | B2 |
7320123 | Govindarajapuram et al. | Jan 2008 | B2 |
20020083185 | Ruttenberg et al. | Jun 2002 | A1 |
20020181401 | Hagirahim et al. | Dec 2002 | A1 |
20030041146 | Davis et al. | Feb 2003 | A1 |
20030091028 | Chang et al. | May 2003 | A1 |
20040002864 | Yeom | Jan 2004 | A1 |
20050007954 | Sreemanthula et al. | Jan 2005 | A1 |
20050041648 | Bharatia et al. | Feb 2005 | A1 |
20050081059 | Bandini et al. | Apr 2005 | A1 |
20050111382 | Le et al. | May 2005 | A1 |
20050185657 | Karanassos | Aug 2005 | A1 |
20060077962 | Wu | Apr 2006 | A1 |
20060098577 | MeLampy et al. | May 2006 | A1 |
20060250959 | Porat | Nov 2006 | A1 |
20070019544 | Smith et al. | Jan 2007 | A1 |
20070027975 | Tai et al. | Feb 2007 | A1 |
20070036151 | Baeder | Feb 2007 | A1 |
20070076603 | MeLampy et al. | Apr 2007 | A1 |
20070116043 | MeLampy et al. | May 2007 | A1 |
20070211716 | Oz et al. | Sep 2007 | A1 |
20080049787 | McNaughton et al. | Feb 2008 | A1 |
20080159136 | Mallesan | Jul 2008 | A1 |
20080162720 | Gulati et al. | Jul 2008 | A1 |
Number | Date | Country |
---|---|---|
WO 0249279 | Jun 2002 | WO |
WO 0249315 | Jun 2002 | WO |
WO 0249316 | Jun 2002 | WO |
WO 0258349 | Jul 2002 | WO |
WO 2004071027 | Aug 2004 | WO |
Number | Date | Country | |
---|---|---|---|
20060077962 A1 | Apr 2006 | US |
Number | Date | Country | |
---|---|---|---|
60616651 | Oct 2004 | US |