HK1108249A - De-jitter buffer adjustments based on estimated delay - Google Patents
De-jitter buffer adjustments based on estimated delay Download PDFInfo
- Publication number
- HK1108249A HK1108249A HK08102219.3A HK08102219A HK1108249A HK 1108249 A HK1108249 A HK 1108249A HK 08102219 A HK08102219 A HK 08102219A HK 1108249 A HK1108249 A HK 1108249A
- Authority
- HK
- Hong Kong
- Prior art keywords
- jitter buffer
- size
- packet delay
- subscriber station
- jitter
- Prior art date
Links
Description
Technical Field
[0001] The present invention relates generally to communications, and more specifically to adaptively managing packet jitter in a packet-switched wireless communication system.
Background
[0002] In a packet-switched network, a sender computer breaks a message into small packets and labels each packet with an address telling the network where to send it. Each packet is then routed to its destination via the most favorable available route, which means that all packets traveling between two identical communication systems do not necessarily follow the same route, even if they come from a single message. When the recipient computer obtains the packets, it reassembles the packets into the original message.
[0003] Since each packet is processed separately, it experiences a certain amount of delay that is different from the delay time experienced by other packets within the same message. This variation in delay is known as "jitter" which makes the receiver-side application more complex because the receiver-side application must take the packet delay time into account when reconstructing the message from the received packets. If the jitter is not corrected, then the received message will be distorted when the packets are reassembled.
[0004] However, in VoIP systems operating over the internet, there is no information available for the de-jitter buffer to predict packet delay variations, so the de-jitter buffer cannot adapt in advance of these variations. Typically, in order to detect variations in packet delay by analyzing packet arrival statistics, the de-jitter buffer must wait for the arrival of packets. Thus, the de-jitter buffer is passive and can only be adjusted after a packet delay change occurs. Many de-jitter buffers cannot be changed at all but have a conservatively larger size, which adds unnecessary delay to the reproduction of the message, resulting in a poor user experience, as described above. Accordingly, there is a need in the art for adaptive delay management to efficiently remove jitter from packet transmissions in a communication system with varying channels.
Disclosure of Invention
[0005] According to one aspect of the invention, a method for adjusting a de-jitter buffer comprises: detecting a characteristic of the wireless link; estimating a packet delay based on the characteristic; adjusting the de-jitter buffer based on the estimated packet delay.
[0006] In accordance with another aspect of the invention, a method for adjusting a de-jitter buffer prior to a handover event comprises: scheduling the handover event; estimating a packet delay based on the scheduled handover event; adjusting the de-jitter buffer based on the estimated packet delay.
[0007] According to another aspect of the invention, a method for initializing a de-jitter buffer comprises: detecting a characteristic of the wireless link; estimating a packet delay based on the characteristic; initializing the de-jitter buffer based on the estimated packet delay.
[0008] According to another aspect of the present invention, a subscriber station comprises: an antenna that receives a communication signal over a wireless link; a processor that receives the measurement of the radio link characteristics and calculates a size of the de-jitter buffer based on the received radio link characteristics; with an adjustable size de-jitter buffer that can comply with the calculated size.
[0009] According to another aspect of the present invention, a subscriber station comprises: a processor that receives information relating to a scheduled handover, estimates a packet delay based on the scheduled handover, and calculates a de-jitter buffer size based on the estimated packet delay; a de-jitter buffer having an adjustable size capable of complying with the calculated size.
[0010] According to another aspect of the invention, a computer readable medium includes program instructions executable by a computer to perform a method for adjusting a de-jitter buffer. The method comprises the following steps: detecting a characteristic of the wireless link; estimating a packet delay based on the characteristic; adjusting the de-jitter buffer based on the estimated packet delay.
[0011] According to another aspect of the invention, a computer readable medium includes program instructions executable by a computer to perform a method for adjusting a de-jitter buffer prior to a handover event. The method comprises the following steps: scheduling the handover event; estimating a packet delay based on the scheduled handover event; adjusting the de-jitter buffer based on the estimated packet delay.
[0012] According to another aspect of the present invention, a subscriber station comprises: means for receiving a communication signal over a wireless link; means for calculating a de-jitter buffer size based on the received radio link characteristics; means for adjusting the de-jitter buffer size such that the de-jitter buffer conforms to the calculated size.
[0013] According to another aspect of the present invention, a subscriber station comprises: means for receiving information related to a scheduled handover; means for estimating packet delay based on the scheduled handover; means for calculating a de-jitter buffer size based on the estimated packet delay; means for conforming the de-jitter buffer to the calculated size.
Drawings
[0014] Fig. 1 illustrates a wireless communication system;
[0015] FIG. 2 is a wireless communication system supporting High Data Rate (HDR) transmissions;
[0016] FIG. 3 is a block diagram illustrating the basic subsystems of an exemplary wireless communication system;
[0017] FIG. 4 is a block diagram illustrating the basic subsystems of an exemplary subscriber station;
[0018] the flow chart of fig. 5 shows the operation of an illustrative de-jitter buffer.
Detailed Description
[0019] Telephone networks have used circuit switching for over 100 years. When a call is made between two parties, the connection needs to be maintained for the entire duration of the call. However, a large amount of data transmitted during this period is wasted. For example, when one party is talking and the other is listening, only half of the connections are used. In addition, in many conversations, a significant amount of time is the period of silence when both parties are not speaking. Circuit-switched networks send a lot of unnecessary traffic data over a continuously open connection, thus effectively wasting available bandwidth.
[0020] In circuit switched networks, data is passed back and forth all the time, but many data networks (e.g., the internet) use packet switched methods. Packet switching opens a connection between two communication systems for only enough time to send a small block of data (called a "packet") from one system to the other. These short connections need to be opened constantly in order to send data packets back and forth, but no connection is maintained when no data is available to send. In a packet-switched network, a sender computer breaks a message into small packets and labels each packet with an address telling the network where to send it. Each packet is then routed to its destination via the most favorable available route, which means that all packets traveling between two identical communication systems do not necessarily follow the same route, even if they come from a single message. When the recipient computer obtains the packets, it reassembles the packets into the original message.
[0021] Circuit switched voice communications may be emulated over a packet switched network. IP telephony (also known as voice over IP, or VoIP) uses packet switching for voice communications, but has many advantages over circuit switching. For example, since packet switching provides bandwidth protection functions, multiple telephone calls may occupy the amount of network space ("bandwidth") occupied by only one telephone call in a circuit-switched network. However, VoIP is known to be a delay sensitive application. Since the recipient can hear the transmitted message only when at least a certain amount of packets are received and reassembled, the delay in receiving packets can affect the overall transmission rate of the message and the ability of the recipient communication system to reassemble the transmitted message in a timely manner.
[0022] Packet transmission delays are caused by a number of reasons, such as the processing time required to packetize the communication data, hardware and software delays in processing the packets, and overly complex operating systems that use time-consuming methods to distribute the packets. In addition, the communication network itself causes a delay in packet delivery time. The inconvenience caused by these delays may also be accompanied by the fact that: in a packet-switched system, each packet may experience a different amount of delay. Since each packet is processed separately, it experiences a certain amount of delay that is different from the delay time experienced by other packets within the same message. This variation in delay is known as "jitter" which makes the receiver-side application more complex because the receiver-side application must take the packet delay time into account when reconstructing the message from the received packets. If the jitter is not corrected, then the received message will be distorted when the packets are reassembled.
[0023] One approach to attempting to reduce the effects of jitter in packet transmissions involves the use of de-jitter buffers. Typically, de-jitter buffers eliminate delay variations by adding additional delay at the receiver side. By implementing such a delay time, the de-jitter buffer can queue packets in a holding area as they arrive. Although packets arriving at the de-jitter buffer may arrive at different times, they may be acquired at the same time by a processor at the receiver. When the processor needs packets, they are retrieved from the queue of the de-jitter buffer. Thus, the de-jitter buffer can make packet acquisition smoother by adding a certain amount of extra delay to the packet arrival time.
[0024] For example, for digital voice communications, a continuous stream of information typically includes one voice packet every 20 milliseconds. If the invariant channel can deliver packets once every 20 milliseconds, then no de-jitter buffer is needed because the receiver has access to packets at a coherent 20 millisecond arrival rate. However, for a varying channel that transmits packets at an incoherent rate (due to processing delays, etc.), a de-jitter buffer is needed to smooth the packet rate at the receiver. Typically, the extra delay added by such de-jitter buffers should be set to the length of the longest continuous period of time for which no transmission packets arrive. For example, if the transmission includes an 80 millisecond contiguous time period between packet arrivals and this is the longest non-packet contiguous time period, the size of the de-jitter buffer should be at least 80 milliseconds to meet the gap. However, for a varying channel with a maximum packet-free continuous period of 40 milliseconds, such a large de-jitter buffer is not necessary. In this case, an 80 millisecond de-jitter buffer will only achieve an unnecessary 40 millisecond delay of the traffic flow. In practice, the de-jitter buffer size needs only 40 milliseconds.
[0025] Wireless communication systems are diverse and often include invariant channels, variant channels, and highly variant channels. Thus, a large de-jitter buffer that works well on highly varying channels is significantly excessive for non-varying channels that do not require a de-jitter buffer. However, if the de-jitter buffer is too small, it cannot filter out jitter on highly varying channels. A small de-jitter buffer drops some packets when a large number of packets arrive (in order to keep up with the packet's reproduction speed), while packets may not be available during a long transmission period when no packets arrive.
[0026] However, in VoIP systems operating over the internet, there is no information available for the de-jitter buffer to predict packet delay variations, so the de-jitter buffer cannot adapt in advance of these variations. Typically, in order to detect variations in packet delay by analyzing packet arrival statistics, the de-jitter buffer must wait for the arrival of packets. Thus, the de-jitter buffer is passive and can only be adjusted after a packet delay change occurs. Many de-jitter buffers cannot be changed at all but have a conservatively larger size, which adds unnecessary delay to the reproduction of the message, resulting in a poor user experience, as described above. Accordingly, there is a need in the art for adaptive delay management to efficiently remove jitter from packet transmissions in a communication system with varying channels.
[0027] The wireless communication system 100 shown in fig. 1 supports multiple users and is capable of implementing at least some aspects and embodiments of the present invention. Communication system 100 may provide communication capabilities to a plurality of cells 102A-102G, each of which is serviced by a corresponding base station 104A-104G, respectively. In one illustrative embodiment, some base stations 104 have multiple receive antennas, while other base stations have only one receive antenna. Similarly, some base stations 104 have multiple transmit antennas, while other base stations have only one receive antenna. There is no limitation on the combination of the transmit and receive antennas. Thus, the base station 104 may have multiple transmit antennas and one receive antenna, or multiple receive antennas and one transmit antenna, or one or more transmit antennas and one receive antenna. Multiple users may use respective subscriber stations 106A-106J to access the communication system 100. As used in this application, the term "subscriber station" refers to a car phone, a cellular phone, a satellite phone, a personal digital assistant, or any other remote station or wireless communication device.
[0028] The illustrative wireless communication system 100 may use, for example, code division time division multiple access (CDMA) techniques. CDMA communication systems are based on modulation and multiple access schemes for spread spectrum communications. In CDMA communication systems, a large number of signals share the same frequency spectrum, thereby increasing user capacity. This is achieved by transmitting each signal with a different pseudo-random binary sequence that modulates a carrier, thereby spreading the spectrum of the signal waveform. The transmitted signals are separated in the receiver by a correlator which despreads the desired signal spectrum using a corresponding pseudo-random binary sequence. The pseudo-random binary sequences of the undesired signals do not match and they are not despread in the bandwidth and therefore only correspond to noise.
[0029] In particular, CDMA systems enable voice and data communications between users over an earth link. In a CDMA system, communication between users is through one or more base stations, and in wireless communication, the "forward link" refers to the channel through which signals are transmitted from a base station to a subscriber station, and the "reverse link" refers to the channel through which signals are transmitted from a subscriber station to a base station. A first user on one subscriber station communicates with a second user on a second subscriber station by transmitting data on the reverse link to the base station. The base station receives data from the first subscriber station and then routes the data to the base station serving the second subscriber station. Depending on the location of the two subscriber stations, they may be served by a single base station or may be served by multiple base stations. In any case, the base station serving the second subscriber station may transmit data on the forward link. The first subscriber station may also communicate with the terrestrial internet through a connection with the serving base station if not communicating with the second subscriber station.
[0030] Those skilled in the art will recognize that CDMA systems can support one or more standards, such as: (1) "TIA/EIA-95-B Mobile Station-Base Station compatibility Standard for Dual-Mode Wireless band Spread Spectrum cellular System" (referred to herein as IS-95 Standard); (2) the standard provided by the name "3 rd Generation Partnership Project" (referred to herein as the 3GPP), which is contained in a set of documents 3G TS 25.211, 3G TS 25.212, 3G TS 25.213, and 3GTS 25.214 (referred to herein as the W-CDMA standard); (3) TR-45.5, which IS provided by the standard entitled "3 rd Generation Partnership Project 2" (referred to herein as 3GPP2) and IS referred to herein as the IS-2000 standard, IS formally referred to as IS-2000 MC; (4) other wireless standards.
[0031] Certain data services are also evolving due to the ever-increasing demand for wireless data transmission and the expansion of services that can be provided via non-demand communication technologies. One such service is known as High Data Rate (HDR). One such HDR service IS proposed, for example, in "EIA/TIA-IS 856 cdma2000 High Ratepacket Data Air Interface Specification," referred to herein as the "HDR Specification". HDR service is generally an overlay to voice communication systems and provides an efficient method of transmitting data packets in a wireless communication system. As the amount of data transmission and the number of transmissions increase, the limited bandwidth available for wireless transmission becomes a significant resource.
[0032] For example, one communication system supporting HDR service is referred to as "1 xEV resolution DataOptimized (1 xEV/DO)". The Telecommunications industry Association has standardized 1xEV-DO as TIA/EIA/IS-856, "cdma 2000, High Rate Packet Data Air interface Specification". 1xEV-DO is optimized for high performance and low cost packet data services, giving personal wireless broadband services to a wide range of customers. The teachings herein are applicable to 1xEV-DO systems and other types of HDR systems, including, but not limited to, W-CDMA and 1 xRTT. It should also be understood that the teachings herein are not limited to CDMA systems, but are also applicable to Orthogonal Frequency Division Multiplexing (OFDM) and other wireless technologies and interfaces.
[0033] Fig. 2 illustrates an HDR communication system employing a variable speed data request mechanism. HDR communication system 200 may comprise a CDMA communication system capable of higher data rate transmission, such as a 1xEV-DO or other type of HDR communication system. The HDR communication system 200 may include a subscriber station 202, the subscriber station 202 transmitting data on a reverse link to a base station 206 for communication with a data network 204 on land. The base station 206 receives the data and routes the data through a Base Station Controller (BSC)208 to the network 204 on land. In turn, messages intended for the subscriber station 202 may be routed from the land-based network 204 to the base station 206 via the BSC 208 and transmitted on the forward link from the base station 206 to the subscriber station 202. It will be appreciated by those skilled in the art that forward link transmissions may occur between base station 206 and one or more subscriber stations 202 (others not shown). Likewise, reverse link transmissions may occur between a subscriber station 202 and one or more base stations 206 (others not shown).
[0034] In the HDR communication system shown, forward link data from the base station 206 to the subscriber station 202 may be transmitted at or near the maximum data rate that can be supported by the forward link. First, the subscriber station 202 may establish communication with the base station 206 using a predetermined access procedure. In the connected state, the subscriber station 202 may receive data and control messages from the base station 206 and may be able to transmit data and control messages to the base station 206.
[0035] Once connected, the subscriber station 202 can estimate the carrier-to-interference ratio (C/I) of the forward link transmission sent from the base station 206. The C/I of the forward link transmission may be obtained by measuring the pilot signal from base station 206. Based on the C/I estimation, the subscriber station 202 may send a data request message (DRC message) to the base station 206 on a data request channel (DRC channel). The DRC message may include a requested data rate or indicate the quality of the forward link channel, e.g., the C/I measurement itself, the bit error rate or the packet error rate, from which a suitable data rate may be identified. Alternatively, the subscriber station 202 may continuously monitor the quality of the channel to calculate the data rate at which the subscriber station 202 can receive the next data packet transmission. In each case, the base station 206 may transmit the forward link data at the highest possible rate using the DRC message from the subscriber station.
[0036] Fig. 3 is a block diagram illustrating the basic subsystems of an exemplary HDR communication system 300. The BSC 302 may interact with a packet network interface 304, the PSTN 306, and all base stations (only one RF unit 308 is shown for simplicity) in the exemplary HDR communication system. The RF unit 308 may transmit communication data to the subscriber station via an antenna 310 under the control of the BSC 302. BSC 302 may coordinate communications between a plurality of subscriber stations in the exemplary HDR communication system and other users connected to packet network interface 304 and PSTN 306. PSTN 306 may interact with users through a standard telephone network (not shown).
[0037] The data source 314 may contain data to be transmitted to a target subscriber station. A data source 314 may provide data to the packet network interface 304. Packet network interface 304 may receive data and route it to BSC 302, and BSC 302 may send the data to RF unit 308, which communicates with the target subscriber stations. Then, the RF unit 308 inserts the control field into each data packet, thereby obtaining a formatted packet. RF unit 308 may encode the formatted data packet and interleave (i.e., reorder) the symbols within the encoded packet. Next, each packet after interleaving may be scrambled with a scrambling sequence and covered with a Walsh cover. The scrambled data packet may then be puncture coded to incorporate the pilot signal and power control bits and spread with the long PN code and the short PNI and PNQ codes. The spread data packet may be quadrature modulated, filtered and processed. It will be appreciated by those of ordinary skill in the art that other signal processing methods may be performed, and the teachings herein are not limited to the particular processing steps described above. After processing, the forward link signal may be transmitted wirelessly via antenna 310 on the forward link to the target subscriber station. Data sink 316 is used to receive and store received data.
[0038] The hardware described above supports variable transmission of data, messages, voice, video and other communications over the forward link. The data rates on the forward and reverse links may change to accommodate signal strength and noise environment changes at the subscriber station. Such variations can result in variations in packet delay, i.e., jitter. For example, the RF unit 308 controls the transmission rate of the subscriber station through a Reverse Activity (RA) bit. The RA bit is a signal sent from the base station to the subscriber station that indicates the loading condition of the reverse link (i.e., how much data is being transmitted on the reverse link). If a subscriber station has more than one base station in its active set, the subscriber station may receive RA bits from each base station. The term "active set" as used herein refers to those base stations that communicate with subscriber stations. The received RA bit indicates whether the total reverse traffic channel interference is greater than a particular value. This may indicate whether the subscriber station may increase or decrease the data rate on the reverse link. Similarly, a Traffic Channel Valid (TCV) bit is a signal sent from the base station to the subscriber station that indicates how many users are in a sector. Although the TCV bit does not accurately indicate the forward link loading condition, it is somewhat related to sector loading. Thus, the TCV bit indicates whether the subscriber station can increase or decrease the data rate of the transmission request on the reverse link. In any case, variations in data rate result in variations in packet delay, i.e., jitter.
[0039] The data transmission rate may also be adjusted based on other indicia of signal quality. As described above, the C/I of the channel may be measured to determine the signal quality of the communicated information. One of ordinary skill in the art will appreciate that other methods may be used to determine the channel quality. For example, signal to interference plus noise ratio (SINR) or Bit Error Rate (BER) is a measurable characteristic that represents signal quality. When a change in signal quality is detected, the transmission may be increased or decreased accordingly. Again, these variations can lead to packet jitter.
[0040] In addition to affecting the data transmission rate, the signal quality measurement results can also cause an event known as "handover". For example, as a mobile station moves from a first location to a second location, the quality of the channel may be degraded. However, the subscriber station is able to establish a higher quality connection with the base station near the second location. Thus, a soft handoff procedure may be initiated to transfer communication information from one base station to another. Soft handoff is the process of selecting another sector from which data will be sent to the subscriber station. After a new sector is selected, a wireless traffic link is established with the new base station (in the selected sector) and then the existing wireless traffic link with the original base station is severed. The method not only reduces the possibility of call interruption, but also makes the user hardly aware of the handover.
[0041] Soft handoff may be initiated as follows: detecting an increase in the pilot signal strength from the second base station when the subscriber station approaches the second position; the information is reported to the BSC by the first base station. The second base station may then be added to the active set of the subscriber station and a wireless traffic link established. The BSC may then remove the first base station from the active set and tear down the wireless traffic link between the subscriber station and the first base station.
[0042] Thus, various signal quality indicators can be used to adjust the packet transmission rate on the forward and reverse links in a wireless communication system. However, as described above, these variations also affect packet delay at the subscriber station. Therefore, the de-jitter buffer should have a variable size so that it can adapt before these changes occur.
[0043] The subscriber station 400 shown in fig. 4 is configured to receive the formatted and transmitted communication data as described above in connection with fig. 3. At the target subscriber station 400, the forward link signal 402 is received by an antenna 404 and routed to a front end receiver 406. The front end receiver 406 may filter, amplify, quadrature demodulate, and quantize the signal. The digitized signal is provided to a demodulator (DEMOD)408 where it is despread with the short PNI and PNQ codes and decovered with the Walsh mask. The demodulated data can be provided to a decoder 410 that performs the inverse of the signal processing functions performed at the base station 208, specifically, the de-interleaving, decoding, and CRC check functions. Other signal processing configurations may be implemented in the subscriber station 400, it being understood that the specific functions described above are for illustrative purposes only. The processing in the subscriber station 400 generally coincides with the signal processing in the base station. In any case, after processing, the decoded data may be provided to a data sink 414 in the subscriber station 400.
[0044] The decoded data may be stored in a de-jitter buffer 412 before being stored in a data sink 414. The de-jitter buffer 412 may impose an amount of delay on each data packet. In addition, the de-jitter buffer may also apply different amounts of delay to different data packets. Thus, when an increase in jitter is predicted, the de-jitter buffer may be increased in size to add more delay time, and when a decrease in jitter is predicted, the de-jitter buffer may be decreased in size to add less delay time. For this reason, the de-jitter buffer should have an adjustable size.
[0045] The de-jitter buffer may be resized by a process known as "time-warping". Time-warping is the process of: speech frames, such as packets, within the de-jitter buffer described herein are compressed or expanded. For example, when the de-jitter buffer begins to drain, it may be expanded by an application running on the subscriber station by retrieving packets from the de-jitter buffer. When the de-jitter buffer becomes larger than the currently calculated de-jitter buffer size, it may compress the packet as it is fetched.
[0046] The compression and expansion of data packets may be compared to the increase and decrease in the packet acquisition rate relative to the rate at which they arrive at the subscriber station. For example, packets are expanded if they arrive and enter the de-jitter buffer every 20 milliseconds, but are only acquired every 40 milliseconds. This effectively increases the size of the de-jitter buffer, which receives twice as many packets as it releases. Likewise, packets are compressed if they arrive and enter the de-jitter buffer every 20 milliseconds, but are only acquired every 10 milliseconds. This effectively reduces the size of the de-jitter buffer, which receives half as many packets as it releases. The amount of expansion that may be applied to the packets in the de-jitter buffer is, for example, 50-75% (i.e., from 20 milliseconds to 30-35 milliseconds). The amount of compression that can be applied to the packets in the de-jitter buffer is, for example, 25% (i.e., from 20 milliseconds to 15 milliseconds). While these compression rates may prevent a significant degradation in voice quality, one of ordinary skill in the art will appreciate that other rates may be used.
[0047] A processor 416 in communication with the de-jitter buffer may calculate the amount of delay (i.e., the size of the de-jitter buffer) based on the characteristics of the wireless link. These characteristics may be measured by the subscriber station 400 and used by the processor 416 to calculate an appropriate de-jitter buffer size, as will be described in more detail below.
[0048] In a wireless communication system, some measurable information may be highly correlated with packet jitter experienced at the subscriber station. For example, as described above, what has a significant effect on the variation of packet transfer delay is the radio interface used in the communication system. Specifically, it is known that in 1xEV-DO systems, sector loading is related to end-to-end message delay and packet jitter. For example, from the RA bit or the TCV bit, the sector load can be estimated. The signal quality is also related to the packet jitter. For example, average sector signal quality is related to end-to-end message delay, while variations in sector signal quality are related to packet jitter. In addition, handovers between base stations are associated with jitter. Based on these relationships, the de-jitter buffer 412 disclosed herein may adaptively enhance performance. The resizing of the de-jitter buffer may occur, for example, at initialization, during steady state operation and during switching.
[0049] Sector loading, signal quality, and signal quality variation may all be used as inputs to the de-jitter buffer to enhance operation at initialization. As described above, de-jitter buffers are typically initialized with conservative values to ensure that sufficient delay is added to arriving packets even before the exact degree of jitter is determined. In the illustrative de-jitter buffer 412 presented herein, in addition to the packet arrival statistics, information in the packets may also be used as input to determine the true value of the initialization. For example, if the sector loading is low, the received signal quality at the subscriber station is high, and thus the variation in signal quality is low, the subscriber station 400: may be considered static and/or in good coverage. In such favorable conditions, it can be estimated that the jitter is small and the de-jitter buffer can have a small size. As described above, the sector load may be determined by the RA bit or the TCV bit. These bits may be received from the base station via antenna 404 and interpreted by processor 416. The processor 416 may then instruct the de-jitter buffer 412 to make adjustments accordingly. Thus, the illustrative de-jitter buffer need not be initialized with conservative and unnecessarily long delay values. For VoIP, the lower initial value of the de-jitter buffer translates into less delay at the beginning of the user's VoIP call, thereby improving the user's service.
[0050] After initialization, such as during steady state operation, the signal quality in the sector may be used to enhance the operation of the de-jitter buffer. The subscriber station can detect changes in signal quality even before these changes begin to affect the packet arrival time. Thus, signal quality measurements can be made to detect changes, and these measurements can be used to adjust the de-jitter buffer size before the affected packets begin to arrive.
[0051] To detect changes in signal quality, the sector signal quality may be measured over a period of time. By maintaining a continuous average, the average signal quality and signal quality variation over a period of time can be calculated. Thus, both positive and negative changes in signal quality can be identified and interpreted by the processor 416 to allow the de-jitter buffer 412 to adjust appropriately. For example, a sector signal quality change may indicate an impending change in packet delay, triggering the de-jitter buffer to adjust its size in preparation for a new delay time.
[0052] In one embodiment, a filter is used to track a running average of the signal quality. The short term averages may be compared to detect changes in sector signal quality. One example of a filter that may be used is a 64-slot filter, the slot length of which is 1.66 milliseconds. This will result in a short term average of about 20 milliseconds. Those skilled in the art will appreciate that other filters may be used. By comparing successive values in successive mean measurements, the subscriber station can detect changes in sector signal quality. If the signal quality change indicates a negative change, an increase in packet delay may be anticipated and the processor 416 may cause the de-jitter buffer 412 to increase its size in preparation for the delay. On the other hand, if a low to high signal quality is detected, a decrease in packet delay may be anticipated and the de-jitter buffer 412 may then be reduced in size.
[0053] In addition to initialization and steady state operation, the de-jitter buffer disclosed herein may also be adjusted prior to a handover event. Preliminary information regarding a planned or scheduled handover may be generated by the subscriber station 400 and used to trigger the de-jitter buffer to adjust prior to the actual handover event. In 1xEV-DO systems and other wireless systems, handoff is the most dominant factor causing sudden and severe packet jitter. The handover events are triggered by the subscriber station and they are typically scheduled tens of milliseconds before execution. For example, in 1xEV-DO, a handoff may be scheduled 100 milliseconds before execution. In the illustrative embodiment presented herein, scheduling information is provided to the de-jitter buffer 412 so that the de-jitter buffer 412 can be adjusted prior to the handoff.
[0054] Subscriber station 400 may include a sector selection algorithm that monitors the strength of the pilot signal as subscriber station 400 moves relative to the various base stations. When the pilot signal from the connected base station is significantly reduced and a handoff to a new base station is required, the sector selection algorithm may generate a signal and send it to the connected base station to inform of the scheduled handoff. In one embodiment, the signal may also be sent to the processor 416 or the de-jitter buffer 412. This signal may trigger the de-jitter buffer 412 to increase its size in preparation for the upcoming handover. Alternatively, the sector selection algorithm implemented by the processor (e.g., processor 416) may send a signal directly to the de-jitter buffer 412 at or near the same time as the signal is sent to the connected base station. In this way, the de-jitter buffer 412 has more time to adjust before a handover event occurs. After the handoff is complete, the sector selection algorithm may send a signal to the de-jitter buffer 412 to trigger it to resume normal operation.
[0055] The method shown in fig. 5 enables an adaptive low-adjustment of the de-jitter buffer, thereby enhancing its performance depending on the characteristics of the radio interface used. Any of the parts of the method shown in fig. 5 may be used alone or in combination with other parts to enhance the operation of the de-jitter buffer. In block 500, sector loading, signal quality, or signal quality variation may be measured. From these measurements, or any combination thereof, the delay of packets arriving at the sector in the signal can be roughly estimated. In block 502, an appropriate de-jitter buffer size may be calculated accordingly. For example, if the estimated packet arrival delay is small, the de-jitter buffer size may be small. On the other hand, if the estimated packet arrival delay is large, the de-jitter buffer size needs to be increased. In block 504, a de-jitter buffer is initialized based on the estimated packet delay based on various channel conditions.
[0056] After initialization, the operation of the de-jitter buffer may be adjusted according to certain events that occur during the transmission of the message. For example, if the signal quality changes due to increased sector loading or the mobile station moving away from the base station, packet jitter may increase. Before the increase occurs, the de-jitter buffer size may be adjusted accordingly. In block 506, a change in signal quality may be detected. Then, in block 508, the steady state operation of the de-jitter buffer may be adjusted by increasing or decreasing the de-jitter buffer size according to the change in signal quality. For example, if the signal quality increases, the de-jitter buffer size may be reduced, since less jitter is expected. On the other hand, if the signal quality decreases, the de-jitter buffer size is increased, since an increase in jitter is foreseen.
[0057] As described above, another event that may trigger a change in packet delay is a handoff. In block 510, a handover may be anticipated by scheduling an event. For example, the subscriber station may schedule a handover and may provide scheduling information to a de-jitter buffer, which may anticipate the handover. In block 512, the de-jitter buffer is adjusted to accommodate the upcoming handover. In particular, the de-jitter buffer may be increased in size to efficiently handle the increase in jitter that would be experienced when a handover occurs. In block 512, the adjusting of the de-jitter buffer may further include: when a lower jitter is again expected, the de-jitter buffer is lowered after the switch.
[0058] Of course, it should be understood that the adaptation process shown in fig. 5 may be performed in any order after initialization, and is not limited to the exact order shown. For example, a handover may occur before the signal condition changes. In this case, the de-jitter buffer may be sized to accommodate the handover before being adjusted in response to changes in signal quality.
[0059] Accordingly, a novel and improved method and apparatus for removing jitter from wireless communications is presented herein. Those of skill in the art would understand that the data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof. Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. Various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans will recognize the interchangeability of hardware and software under these circumstances, and how best to implement the described functionality for each particular application. For example, the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components such as registers and FIFO, a processor executing a set of firmware instructions, any conventional programmable software module or processor, or any combination thereof designed to perform the functions described herein. The processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. Of course, the storage medium may also be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a telephone or other user terminal. Of course, the processor and the storage medium may reside in a telephone or other user terminal. A processor may be implemented as a combination of a DSP and a microprocessor or a combination of two microprocessors in conjunction with a DSP core.
[0060] Illustrative embodiments of the invention are described above. It will be apparent to those skilled in the art that various modifications may be made in the embodiments without departing from the spirit and scope of the invention. Accordingly, the invention is to be defined solely by the following claims.
Claims (27)
1. A method for adjusting a de-jitter buffer, the method comprising:
detecting a characteristic of the wireless link;
estimating a packet delay based on the characteristic; and
adjusting the de-jitter buffer based on the estimated packet delay.
2. The method of claim 1, wherein the characteristic is a measure of sector loading.
3. The method of claim 1, wherein the characteristic is a measure of signal quality.
4. The method of claim 3, wherein the characteristic is a change in the signal quality.
5. The process of claim 1, wherein the first step is carried out,
wherein the estimated packet delay is an increase in packet delay; and
wherein the de-jitter buffer is adjusted by increasing its size.
6. The process of claim 1, wherein the first step is carried out,
wherein the estimated packet delay comprises a reduction in packet delay; and
wherein the de-jitter buffer is adjusted by reducing its size.
7. A method for adjusting a de-jitter buffer prior to a handover event, the method comprising:
scheduling the handover event;
estimating a packet delay based on the scheduled handover event; and
adjusting the de-jitter buffer based on the estimated packet delay.
8. The method of claim 7, wherein said de-jitter buffer is adjusted by increasing its size.
9. The method of claim 1, wherein adjusting the de-jitter buffer further comprises:
initializing the de-jitter buffer based on the estimated packet delay.
10. The method of claim 9, wherein said de-jitter buffer is initialized to a size calculated from said estimated packet delay.
11. A subscriber station, comprising:
a receiver that receives a communication signal over a wireless link;
a processor that receives the measurement of the radio link characteristics and calculates a size of the de-jitter buffer based on the received radio link characteristics; and
with an adjustable size de-jitter buffer that can comply with the calculated de-jitter buffer size.
12. The subscriber station of claim 11, wherein said processor calculates the size of said de-jitter buffer based on sector loading.
13. The subscriber station of claim 11, wherein said processor calculates the size of said de-jitter buffer based on signal quality.
14. The subscriber station of claim 13, wherein said processor calculates the size of said de-jitter buffer based on a change in signal quality.
15. A subscriber station, comprising:
a processor that receives information relating to a scheduled handover, estimates a packet delay based on the scheduled handover, and calculates a de-jitter buffer size based on the estimated packet delay; and
a de-jitter buffer having an adjustable size, wherein the de-jitter buffer is capable of complying with the calculated size.
16. A computer readable medium comprising program instructions executable by a computer to perform a method for adjusting a de-jitter buffer, the method comprising:
detecting a characteristic of the wireless link;
estimating a packet delay based on the characteristic; and
adjusting the de-jitter buffer based on the estimated packet delay.
17. A computer readable medium comprising program instructions executable by a computer to perform a method for adjusting a de-jitter buffer prior to a handover event, the method comprising:
scheduling the handover event;
estimating a packet delay based on the scheduled handover event; and
adjusting the de-jitter buffer based on the estimated packet delay.
18. A subscriber station, comprising:
means for receiving a communication signal over a wireless link;
means for calculating a de-jitter buffer size based on the received radio link characteristics; and
means for adjusting a de-jitter buffer size such that the de-jitter buffer conforms to the calculated size.
19. A subscriber station, comprising:
means for receiving information related to a scheduled handover;
means for estimating packet delay based on the scheduled handover;
means for calculating a de-jitter buffer size based on the estimated packet delay; and
means for conforming the de-jitter buffer to the calculated size.
20. A jitter compensating apparatus comprising:
means for storing the packet;
means for storing a delay corresponding to each data packet; and
means for adjusting a de-jitter buffer size based on a received signal quality.
21. The apparatus of claim 20, wherein the adjustment module employs a time warping technique.
22. The apparatus of claim 21, wherein the time warping is dependent on a rate at which data is received.
23. The apparatus of claim 20, wherein the apparatus is capable of processing voice over IP (VoIP) data.
24. The apparatus of claim 20, wherein the quality of the received signal is dependent on sector loading in the wireless communication system.
25. The apparatus of claim 24, wherein the quality of the received signal is dependent on reverse activity bits.
26. The apparatus of claim 24, wherein the quality of the received signal is dependent on traffic channel valid bits.
27. The apparatus of claim 20, wherein said apparatus is capable of adjusting said de-jitter buffer size prior to switching.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/964,319 | 2004-10-13 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| HK1108249A true HK1108249A (en) | 2008-05-02 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN101076989B (en) | De-jitter buffer adjustments based on estimated delay | |
| CN101336525B (en) | Based on the redundancy activation of the Tone Via of internet | |
| CN1191726C (en) | Channel Switching Method and Wireless Network Control Node in Mobile Wireless Communication System | |
| US8054826B2 (en) | Controlling service quality of voice over Internet Protocol on a downlink channel in high-speed wireless data networks | |
| EP2041928B1 (en) | Compressed delay packet transmission scheduling | |
| JP4971444B2 (en) | High-speed downlink packet access (HSDPA) channel coverage improvement | |
| US20030012217A1 (en) | Channel-type switching to a common channel based on common channel load | |
| JP4718098B2 (en) | Method and apparatus for sending packetized voice and data in a wireless communication network | |
| EP2169998A2 (en) | Communication system employing multiple handoff criteria | |
| CN1433655A (en) | Channel-type switching control | |
| EP1867195A1 (en) | Method and apparatus for flow control at cell change for high speed downlink packet access | |
| HK1108249A (en) | De-jitter buffer adjustments based on estimated delay |