Dynamic real-time quality management of packetized communications in a network environment
Dynamic real-time quality management of packetized communications in a network environment. Packetized communications are monitored by and exchanged between wireless Access Points (APs) and wireless terminals or by quality monitoring modules located within network segments or at network vertices. The processing unit analyzes the packetized communications to identify communication signatures associated with the packetized communications. The processor then uses these signatures to identify network impediments to the exchange of the packetized communications. These impediments may take the form of coding problems in which case an appropriate coding scheme is employed by the programmable COder/DECoder (CODEC) to convert incoming packetized communications to incoming user communications, and outgoing user communications to outgoing packetized communications. These impediments may also take the form of communication problems along and between the various network segments. In these cases, the processor may choose a more appropriate communication pathway with which to route the packetized communications.
Latest BROADCOM CORPORATION Patents:
The present U.S. Utility Patent Application claims priority pursuant to 35 U.S.C. §120, as a continuation, to the following U.S. Utility Patent Application which is hereby incorporated herein by reference in its entirety and made part of the present U.S. Utility Patent Application for all purposes:
1. U.S. Utility application Ser. No. 10/779,838, entitled “Dynamic real-time quality management of packetized communications in a network environment,” (Attorney Docket No. BP2970.1), filed 02-17-2004, pending, which claims priority pursuant to 35 U.S.C. §119(e) to the following U.S. Provisional Patent Application which is hereby incorporated herein by reference in its entirety and made part of the present U.S. Utility Patent Application for all purposes:
-
- a. U.S. Provisional Application Ser. No. 60/472,647, entitled “Method for handoff of a telephone call between two different wireless networks,” (Attorney Docket No. BP2970.1), filed 05-22-2003, now expired.
1. Technical Field of the Invention
The present invention relates generally to communication networks supporting multimedia packetized communications, and more particularly to a system for managing the quality of service provided by a wireless local area network.
2. Description of Related Art
Communication technologies that network electronic devices are well known. Examples include wired packet data networks, wireless packet data networks, wired telephone networks, and satellite communication networks, among other networks. These communication networks typically include a network infrastructure that services a plurality of client devices. The Public Switched Telephone Network (PSTN) is probably the best-known communication network and has been in existence for many years. The Internet, another well-known example of a communication network, has also been in existence for a number of years. Communication networks like these enable client devices to communicate with one another on a global basis.
Local Area Networks (wired LANs), e.g., Ethernets, support communications between networked computers and other devices within a serviced area. These wired LANs often link serviced devices to Wide Area Networks (e.g., WANs) and the Internet. Each of these networks is generally considered a “wired” network, even though some of these networks, e.g., the PSTN, may include some transmission paths that are serviced by wireless links.
Wireless networks have come into existence more recently. Examples include cellular telephone networks, wireless LANs (WLANs), and satellite communication networks. Common forms of WLANs such as IEEE 802.11(a) networks, IEEE 802.11(b) networks, and IEEE 802.11(g) networks are referred to jointly as “IEEE 802.11 networks.” In a typical IEEE 802.11 network, a wired backbone couples to a plurality of wireless Access Points (APs), each of which supports wireless communications with computers and other wireless terminals that include compatible wireless interfaces within a serviced area. The wired backbone couples the APs of the IEEE 802.11 network to other networks, both wired and wireless, and allows serviced wireless terminals to communicate with devices external to the IEEE 802.11 network. Devices that operate consistently with an IEEE 802.11 protocol may also support ad-hoc networking in which wireless terminals communicate directly to one another without the presence of an AP.
Currently, Wireless Local Area Networks (WLANs) service a wide variety of data communications, typically relating to non-real-time requirements. As the bandwidth delivered on the wireless links serviced by the WLANs increases, additional data communications may also be delivered, e.g., Voice Over Internet Protocol (VOIP), video conferencing, multi-media streaming, etc. However, when the WLAN supports many data transactions, the communications requiring continual throughput such as voice and multimedia communications may not be sufficiently serviced. The result of this shortcoming is reduced voice and video image quality, disconnection of the serviced communication, etc.
The shortcomings of the WLAN may be at the APs that service the wireless links within the WLAN. Each WLAN supports only a maximum throughput, e.g., 11 Mbps (Mega-bits per second) for IEEE 802.11b APs and 54 Mbps for 802.11a and 802.11g APs. When a particular AP cannot service all of its client devices, latency in the communications will increase. Because the AP cannot typically assign priority to its serviced communications, some or all of the serviced communications are adversely affected.
The performance of the WLAN may also be affected by the switches, routers, nodes or other elements in the backbone network of the WLAN and/or gateways that couple the WLAN to a WAN, to the Internet, to the Public Switched Telephone Network (PSTN) or to another servicing network. When these devices become overloaded, the WLAN serviced communications are also affected. Additionally, traffic within individual network segments may adversely impact communications.
WLANs often serve as terminating networks for voice communications, multimedia communications, etc. In some operations, the WLANs perform adequately but a network that couples the WLANs does not. An example of such an installation is when two offices of a major corporation each have WLAN service and a WAN couples the WLANs. In order to reduce telephony costs, voice traffic is routed across the WAN. When voice quality suffers, the WLAN administrators most likely identify the WLAN components as the problem even though the WAN itself may be the bottleneck. This troubleshooting most often occurs when reported by a user after the fact. By that time, the WAN problem may have been remedied and the system administrator can offer no solution. Such is also the case when the APs or other WLAN components are temporarily overloaded.
Thus, a need exists for intelligent systems and components that can identify network or pathway problems in real-time and effect real-time solutions.
BRIEF SUMMARY OF THE INVENTIONThe present invention is directed to apparatus and methods of operation that are further described in the following Brief Description of the Several Views of the Drawings, the Detailed Description of the Invention, and the claims. Other features and advantages of the present invention will become apparent from the following detailed description of the invention made with reference to the accompanying drawings.
For a more complete understanding of various aspects of the present invention and the advantages thereof, reference is now made to the following description taken in conjunction with the accompanying drawings in which like reference numerals indicate like features and wherein:
Preferred embodiments and aspects of the present invention are illustrated in the figures, like numerals being used to refer to like and corresponding parts of the various drawings.
As shown in
Returning to wireless terminal 10 of
Some example coding schemes used in audio or video coding include Huffman encoding, ITU-T G.711, u-law, A-law, CCITT G.721, CCITT G.723, ITU-T G.726, ITU-T G.723.1, ITU-T G.723.1A, ITU-T G.729, ITU-T G.729A, ITU-T G.729AB, ITU-T G.729E, ITU-T G.728, ITU-T G.722, ITU-T G.722.1, ITU-T G.722.2, GSM-EFR, GSM AMR, IMA/DVI ADPCM, Microsoft ADPCM, LPC-10E, CELP GSM 06.10, shorten, Real Audio, MPEG, ACE and MACE, as well as others known to those skilled in the art. Wireless terminal 10 receives packetized communications 24 wirelessly via antenna 52. Wireless interface 18 exchanges the incoming communications with jitter buffer 54. Processing unit 16 monitors jitter buffer 54 to determine its latency. This information may be used to determine the communication quality level delivered by wireless link 40. Based on the measurement of the communication quality level delivered, processing unit 16 may change the selected coding scheme used by CODEC 20 to convert user communications received to and from packetized communications.
Processing unit 16 may also monitor various signal pathways in its decision-making process.
During the monitoring, a continuous evaluation is made as to whether or not the measured or perceived service can be improved with an alternative coding scheme at decision point 530. If it cannot, monitoring continues at step 528. Otherwise, a new coding scheme is selected in step 532, and implemented with the far-end terminal in step 534. New communications received should then be coded in accordance with the selected coding scheme as the process begins again at step 520.
The monitoring process may also evaluate the communication pathways used to exchange packetized communications between the wireless terminal and the far-end terminal in step 566. Alternatively, communications between both end points may determine the appropriate CODEC or communication pathway. The process answers this question at decision point 568 and implements changes at step 570 or continues to evaluate at step 566.
In this embodiment, the overall communication quality level delivered across the entire communication path maybe evaluated. The decision to revise the selected CODEC at the above decision points now may consider the overall communication quality level and/or network/hardware considerations. Additionally, communications between the wireless terminal and the far-end terminal may identify a CODEC supported by both the far-end terminal and wireless terminal.
The process of monitoring packetized communications between end points may include monitoring the latency of packetized communications within the jitter buffer within the wireless terminal or VoIP terminal. As will be discussed later, this process may also be repeated or emulated at the AP or various nodes within the communication pathways that link the wireless terminal to the far-end terminal.
In
In one example, processor 622 may examine the packetized communications exchanged between wireless terminal 10 and wireless interface 620 to determine the communication quality level delivered by the wireless link. When the wireless link is limiting, processor 622 may employ a coding scheme based on the communication quality level delivered by the wireless link. Additionally, by examining jitter buffer 624, processor 622 determines the latency associated with these buffers and assigns an appropriate coding scheme based on that latency. Processor 622 also interfaces with network interface 628 to direct the exchange of packetized communications between AP 600 and the backbone network or other network components in the communication pathway between wireless terminal 10 and the destination terminal.
These same processing functions may be achieved with a quality-monitoring module 602 further detailed in
Returning to
One process accomplished by processor 622 in either AP 600 or quality monitoring module 602 is to determine whether or not the communications received from wireless terminal 10 are above or below a predetermined communication quality level threshold. The determination as to whether or not the communications are real-time communications or non-real-time communications may be determined by the protocols associated with the communications. For example, RTP protocols may identify real-time communications.
The time that it takes for the perceived quality of the communications to rise above a minimum acceptable level is a function of the recovery from the loss of data, and the coding scheme used. Some coding schemes may more quickly compensate for recently lost packets.
Thus, the quality monitor for the signatures depicted in
Network communications received from the far end terminal by the quality monitor should be received in packet sequence order and in a timely fashion. However,
In summary, this disclosure provides the ability to incorporate quality monitors either into wireless terminals, wireless access points, or other network modules. These quality monitoring functions monitor, in real-time, the measured and perceived quality of real-time communications. In addition to monitoring these levels of quality, communication pathways and coding schemes may be dynamically reconfigured to improve the measured and perceived level of quality. This has particular applications to VOIP and other like streaming multimedia applications. Such applications enable providers to maintain a high level of user satisfaction while minimizing the impact on network resources. Additionally, quality monitors support dynamic mixed usage of network bandwidth such that voice data and other multimedia communications are prioritized based on their immediate need when compared to other data communications. Thus, the quality monitors support dynamic bandwidth sharing amongst the different types of communications. This ability minimizes network-operating costs and provides real-time communications such as VOIP at quality levels that can reach or exceed traditional telephony levels.
In some embodiments, a system and method are operable to service real-time audio and/or visual communications in a network environment that are negatively impacted by packet delay or packet losses, such as Voice over Internet Protocol (VoIP) or wireless terminals that transmit and receive communications in a digital form having discrete packets. More specifically, various aspects of the present invention provides a dynamic real-time quality management of packetized communications in a network environment. Various solutions presented herein may involve dynamically altering coding schemes, network pathways or dynamically assigning priorities to network communications.
Packetized communications are monitored by and exchanged between wireless Access Points (APs) and wireless terminals or a wired terminal, such as a VoIP telephone, and a servicing network. Alternatively, the packetized communications are relayed by quality monitoring modules located within network segments or at network vertices. The processing unit analyzes the packetized communications to identify communication signatures associated with the packetized communications. The processor then uses these signatures to identify network impediments to the exchange of the packetized communications. These impediments may take the form of coding problems in which case an appropriate coding scheme is selected and implemented. Alternatively, the communication signatures may indicate network (traffic) or hardware problems within specific segments of the communication pathway. In this case, traffic is prioritized or rerouted.
One embodiment provides an intelligent Wireless Local Area Network (WLAN) Access Point (AP). A second embodiment provides an intelligent VoIP network interface. While, a third embodiment provides an intelligent quality-monitoring module. In the instance of a WLAN AP or intelligent VoIP network interface, the WLAN AP or intelligent VoIP network interface performs the functions of the quality-monitoring module. A wireless interface exchanges packetized communications with wireless terminals on the WLAN. A processing unit couples to the wireless interface and to the WLAN's backbone network interface, and monitors the exchange of communications serviced by the WLAN AP. The processing unit identifies the communication signature for the packetized communications. Then the processing unit determines, based upon the corresponding communication signature, when the packetized communications are real-time communications. Communications identified as real-time communications are assigned a predetermined service level. The service level assigned to non-real-time communications may be lower than that of the real-time communications.
When the real-time communications cannot be provided the predetermined service level, the processor may direct the real-time communications to be re-routed via another servicing network. Alternatively, the processor may direct that the real-time communications be prioritized over the non-real-time communications.
Each packetized communication has a pair of signatures: a receive signature corresponding to communications received from a corresponding wireless terminal via the wireless interface and a transmit signature corresponding to communications received via the WLAN backbone interface and intended for the corresponding wireless terminal. The receive signature is primarily employed to determine whether the packetized communication is a real-time communication. Problems in this signature typically indicate problems with wireless link of AP.
The transmit signature usually indicates problems (network impediments) within other portions of the communication path. Such network impediments may result in non-uniformity of receipt of the packetized communications from a near-end wireless terminal. This instance indicates problems in the wireless link. Non-uniformity or non-linearity of receipt of the packetized communications from a far-end terminal indicates problems along the various network pathways between the AP and the far-end terminal.
Another embodiment takes the form of a method of servicing real-time communications in a network environment. A WLAN AP receives outgoing user communications from a wireless terminal and incoming user communications for the wireless terminal from a WLAN backbone network interfaced with the AP. These communications are in the form of packetized communications coded according to a coding scheme with a programmable COder/DECoder (CODEC). The programmable CODEC converts incoming user communications from packetized communications and outgoing user communications to packetized communications according to the selected coding scheme.
Packetized communications are exchanged between the servicing AP, the WLAN terminal, and the WLAN backbone network, the VoIP terminal, intelligent VoIP network interface and backbone network, or other network elements known to those skilled in the art, at a communication quality level. These communications are monitored to determine the communication quality level delivered between the servicing AP, the WLAN terminal, the WLAN backbone network, and the far-end terminal. The communications quality can be monitored within switches, routers, handsets, nodes, access points or other elements within the network infrastructure known to those skilled in the art. Monitoring the packetized communications from end-to-end supports the management of the coding scheme and routing of the packetized communications. The CODEC or communication pathway may be revised to improve service by selecting one or more new coding schemes based upon the communication quality level delivered or by selecting a new pathway. This communication quality level depends on the jitter experienced by the communications, the number and frequency of lost packets, the arrival or transmission rate of the packetized communications, and other such factors known to those skilled in the art.
By monitoring the packetized communications from end-to-end, the method can intelligently manage the selected coding scheme and routing of the packetized communications. For example, in one instance, the processor communicates with a far-end terminal to identify an appropriate coding scheme. These coding schemes may include, but are not limited to audio and/or video coding schemes such as Huffman encoding, ITU-T G.711, u-law, A-law, CCITT G.721, CCITT G.723, ITU-T G.726, ITU-T G.723.1, ITU-T G.723.1A, ITU-T G.729, ITU-T G.729A, ITU-T G.729AB, ITU-T G.729E, ITU-T G.728, ITU-T G.722, ITU-T G.722.1, ITU-T G.722.2, GSM-EFR, GSM AMR, IMA/DVI ADPCM, Microsoft ADPCM, LPC-10E, CELP GSM 06.10, shorten, Real Audio, MPEG, ACE and MACE.
In another instance, real or emulated jitter buffers, at any point in the communication pathway, monitor latency. This latency is used to determine the communication quality level between the AP and WLAN terminal, VoIP terminal and intelligent VoIP network interface, or along any network segment. Additionally, the communication quality level delivered between the WLAN terminal and the far-end terminal at any point in the network may also be determined.
This information allows the processor to select the route the communications take by choosing which network segments are used to route the communications or which AP is servicing the communication. In the case of the latter, the APs are queried to determine the expected service quality level from each AP. Then, the WLAN terminal registers with a new servicing AP when the expected service quality level to be provided by the new servicing AP exceeds the expected service quality level provided by the servicing AP by a predetermined service quality level.
Although the present invention is described in detail, it should be understood that various changes, substitutions and alterations can be made hereto without departing from the spirit and scope of the invention as described by the appended claims.
Claims
1. An apparatus, comprising:
- a network interface for supporting a communication with a communication device via a communication network;
- a processor, coupled to the network interface, for monitoring a service level of the communication network; and
- a codec, coupled to the processor, for selectively employing a first coding scheme or a second coding scheme to process the communication based on the service level.
2. The apparatus of claim 1, further comprising:
- at least one additional network interface, coupled to the processor, for supporting the communication with the communication device via at least one additional communication network; and wherein:
- the processor monitoring at least one additional service level of the at least one additional communication network; and
- the apparatus employing the at least one additional network interface for supporting the communication with the communication device via the at least one additional communication network based on the service level and the at least one additional service level.
3. The apparatus of claim 2, wherein:
- the codec selectively employing the first coding scheme or the second coding scheme to process the communication based on the service level and the at least one additional service level.
4. The apparatus of claim 1, wherein:
- the processor analyzing a signature associated with the communication to determine whether the communication is a real-time packetized communication;
- when the communication is a real-time packetized communication, the codec firstly employing the first coding scheme to process the communication; and
- when the service level is below a predetermined service level, then the codec secondly employing the second coding scheme to process the communication or at least one additional communication.
5. The apparatus of claim 1, wherein:
- the processor analyzing a signature associated with the communication to determine whether the communication is a non-real-time packetized communication; and
- when the communication is a non-real-time packetized communication, the codec employing a third coding scheme to process the communication.
6. The apparatus of claim 5, wherein:
- the third coding scheme is the first coding scheme or the second coding scheme.
7. The apparatus of claim 1, wherein:
- the codec employing the first coding scheme to process the communication; and
- the codec employing the second coding scheme to process at least one additional communication.
8. The apparatus of claim 1, wherein:
- the processor analyzing a signature associated with the communication in determining that the communication is a real-time packetized communication;
- the processor analyzing a signature associated with at least one additional communication in determining that the at least one additional communication is a non-real-time packetized communication; and
- the processor prioritizing the real-time packetized communication over the non-real-time packetized communication.
9. The apparatus of claim 1, wherein:
- the network interface is a wireless local area network (WLAN) radio frequency (RF) interface, a cellular RF interface, or a satellite RF interface.
10. The apparatus of claim 1, wherein:
- the apparatus is a wireless terminal.
11. An apparatus, comprising:
- a first network interface for supporting a first communication with a communication device via a first communication network;
- a second network interface for supporting a second communication with the communication device via a second communication network;
- a processor, coupled to the first network interface and the second network interface, for monitoring a first service level of the first communication network and a second service level of the second communication network; and
- a codec, coupled to the processor, for selectively employing a first coding scheme or a second coding scheme to process the first communication or the second communication based on the first service level and the second service level.
12. The apparatus of claim 11, wherein:
- the processor analyzing a signature associated with the first communication to determine whether the first communication is a real-time packetized communication;
- when the first communication is a real-time packetized communication, the codec firstly employing the first coding scheme to process the first communication; and
- when the first service level is below a predetermined service level, then the codec secondly employing the second coding scheme to process the first communication or a third communication.
13. The apparatus of claim 11, wherein:
- the processor analyzing a signature associated with the first communication to determine whether the first communication is a non-real-time packetized communication; and
- when the first communication is a non-real-time packetized communication, the codec employing a third coding scheme to process the first communication.
14. The apparatus of claim 11, wherein:
- the network interface is a wireless local area network (WLAN) radio frequency (RF) interface, a cellular RF interface, or a satellite RF interface.
15. A method, comprising:
- operating a network interface for supporting a communication with a communication device via a communication network;
- monitoring a service level of the communication network; and
- operating a codec for selectively employing a first coding scheme or a second coding scheme to process the communication based on the service level.
16. The method of claim 15, further comprising:
- monitoring at least one additional service level of at least one additional communication network for supporting the communication with the communication device; and
- operating at least one additional network interface for supporting the communication with the communication device via the at least one additional communication network based on the service level and the at least one additional service level.
17. The method of claim 16, further comprising:
- operating the codec for selectively employing the first coding scheme or the second coding scheme to process the communication based on the service level and the at least one additional service level.
18. The method of claim 15, further comprising:
- analyzing a signature associated with the communication to determine whether the communication is a real-time packetized communication;
- when the communication is a real-time packetized communication, firstly employing the first coding scheme to process the communication; and
- when the service level is below a predetermined service level, secondly employing the second coding scheme to process the communication or at least one additional communication.
19. The method of claim 15, further comprising:
- analyzing a signature associated with the communication in determining that the communication is a real-time packetized communication;
- analyzing a signature associated with at least one additional communication in determining that the at least one additional communication is a non-real-time packetized communication; and
- prioritizing the real-time packetized communication over the non-real-time packetized communication.
20. The method of claim 15, wherein:
- the network interface is a wireless local area network (WLAN) radio frequency (RF) interface, a cellular RF interface, or a satellite RF interface implemented within a communication device.
Type: Application
Filed: Jan 22, 2010
Publication Date: May 27, 2010
Applicant: BROADCOM CORPORATION (IRVINE, CA)
Inventor: Richard A. Bye (Rancho Santa Margarita, CA)
Application Number: 12/692,380
International Classification: H04L 12/28 (20060101); H04B 7/185 (20060101);