Introduction Within a TCP/IP model, it supports best- effort delivery services. QoS for VoIP was affected by factors such as delay, codec, and echo. We adopt Differentiated Services to minimize the factor of delay. An efficient echo canceling scheme, which could be hardware-implemented in hosts or software-implemented in soft PBXs, has been used. Comparisons of different codecs was listed.
Topics Comparisons of Different QoS Polices Introduction to Differentiated Services The DS Architecture DS Configuration and Operation Per-Hop Behavior
Comparisons of Different QoS Polices IPv6 IPv6-enabled routers Resource ReSerVation Protocol(RSVP) RSVP-enabled routers Scalability for a large network MultiProtocol Label Switching(MPLS) MPLS-enabled routers Require significant changes Differentiated Services(DS) The minimal changes in existing routers
Introduction to Differentiated Services Offer different levels of QoS to different traffic flows Use the existing IPv4 Type of Service or IPv6 Traffic Class octet A service level agreement is established between the service provider and the customer Provide a built-in aggregation mechanism DS is the most widely accepted QoS mechanisms
The DS Architecture Use six bits of ToS field to encode the DS codepoint(DSCP) Packets are labeled for service handling by means of the DSCP To avoid situations where every packet is marked highest priority, boundary node must ensure it The amount of change required in the core of network is minimal
Within a domain, the interpretation of DSCP is uniform The interior nodes handle packets based on their DSCP values The boundary nodes include traffic conditioning and classification The services provided across a DS domain are defined in a service level agreement
Traffic Conditioning Functions Classifier Separate submitted packets into different classes Meter Measure submitted traffic for conformance Marker Re-mark packet with a different DSCP as needed Shaper/Dropper Delay or Drop packets so that the traffic doesn’t exceed profile
Per-Hop Behavior PHB is the treatment that a DS router applies to a packet with a given DSCP value Expedited Forwarding (RFC 3246) low-loss, low-delay, low-jitter, assured bandwidth, end-to-end services through DS domains Configure nodes so that the traffic aggregate has a well-defined minimum departure rate Arrival at any node is always less than that node’s configured minimum departure rate
Assured Forwarding (RFC 2597) The concept was first introduced in Clark, D. and is referred to as explicit allocation Ensure high-priority packets are forwarded with a greater degree of reliability Provide four classes and three precedence levels DSCP of the form xxx000 are reserved to provide backward compatibility with IPv4 precedence service
Overview The new world of Internet telephony is facing one of the same challenges that early long-distance calling did. Traditionally, problems with echo have been experienced on long- distance or international calls, particularly those involving satellite connections.
The Cause of Echo Electrical echo due to imperfect impedance matching Electrical signals of all types always are reflected at line terminations, except when the load at the line end exactly matches the impedance rating of the line itself. Acoustic echo due to microphone pickup of audio output For instance, on a hands-free cell-phone call, the echo characteristics change as the speaker moves around.
What is Impedance matching? Impedance matching is the practice of attempting to make the output impedance of a source equal to the input impedance of the load to which it is ultimately connected, usually in order to maximize the power transfer and minimize reflections from the load.
The Cause of Echo (cont.) The major difference is electrical echo is a property of the line connection and remains mostly constant throughout the call, while acoustic echo varies in strength and delay depending on the changing acoustic environment of the echo source.
Echo becomes a problem Why is echo not a problem on every call? The echo heard at the same time as the caller is speaking is considered as part of side tone. It becomes noticeable only when there exists a delay over long distance. Troublesome echo in VoIP It is packetization and processing delays inherent in VoIP that cause existing echo to become a problem.
What to Do about Echo The use of attenuation to eliminate echo was not a satisfactory solution, and this method was abandoned when digital echo cancellation became available. Digital echo cancellation is based on subtracting from the received signal a correction based on the response of the system to a short spike of sound, called the finite impulse response (FIR).
Finite Impulse Response The FIR is simply the echo you would hear from a short ping. 780
Finite Impulse Response (cont.) 128 digital sound taps taken at a rate of 8,000 times per second, covering 128/8 = 16 milliseconds. This echo starts at tap 7, or about 1ms after the impulse. The echo from the impulse has an effect that lasts about 10ms(80 taps).
Finite Impulse Response (cont.) Therefore, Echo cancellation should take place close to the echo source. If the echo were cancelled at the caller, there would be many more leading idle taps, so the true echo would be shifted back, perhaps right out of the tap sample.
Finite Impulse Response (cont.) The echo does not appear to be very strong. But because of the sensitivity of human ears, it is completely intolerable on a VoIP system. The higher the number of taps, the higher the computing load and memory requirement.
Echo Cancellation The FIR is used to calculate a series of correction factors that represent the echo component of the received signal. For example, on a 128-tap echo canceller, the echo is: Echo = (128 values of FIR)˙ (128 previous tap samples of transmission) By subtracting this "echo" from the signal as received, a substantially echo-free receive signal is obtained.
Echo Cancellation (cont.) However, because of rounding errors and non-linearities, some of the echo remains. The nonlinear processor cuts out the remaining received signal if the signal is small enough.
Echo Cancellation (cont.) Obtaining the FIR is an iterative training process based on measuring the residual signal after the calculated echo has been subtracted and changing the FIR estimate. This process requires silence on the other end of the line-there is no doubletalk. The iterative FIR optimization converges quite slowly.
Echo Cancellation in Soft PBX Environments Echo cancellation is a hugely CPU- intensive process. Software echo cancellation is one of the major factors limiting the performance of soft PBX systems.
Echo Cancellation in Soft PBX Environments (cont.) One compromise made in the interest of saving CPU cycles is that the "learning" algorithms that update the FIR estimate are not run every time a voice sample is processed, but much less frequently. So the system trains slowly. - That is the reason why you often hear quite considerable echo well into the conversation until the echo canceller trains and the echo decreases.
Optimization of Echo Cancellations Today, all long-distance calls over 600km routinely are echo-cancelled at each end. On most VoIP-PSTN geteways, a great deal of echo cancellation is unnecessary and, in fact, detrimental to voice quality. If the call has no echo, echo cancellation can be disabled.
Echo Measuring Echo cancellation isn't necessary for incoming calls that already are echo- cancelled. An echo detector can be used to switch off echo cancellation for these calls. In software echo cancellers, the considerable CPU load that can be freed by echo detection is always immediately available to other processes, which in turn can increase the quality and capacity of the system significantly.
Waveform Codecs Sample and code the incoming analog signal without any thought as to how the signal was generated in the first place When the signal is reconstructed, at least to a very good approximation Produce a high-quality output and are not very complex Consume large amounts of bandwidth When they are used at lower bandwidths, the speech quality degrades significantly
Source Codecs Also known as vocoders They attempt to match the incoming signal to a mathematical model of how speech is produced Operate at low bit rates but tend to produce speech that sounds synthetic Using higher bit rates does not offer much improvement Used in private communications system and military applications
Hybrid Codecs Provide the best of both worlds They utilize knowledge of how people produce sounds Provide quite good quality at lower bit rates than waveform codecs
G.711 Waveform Codec The most commonplace coding technique used today Used in circuit-switched telephone network all over the world Pulse Code Modulation (PCM) MOS of about 4.3 64 Kbps bandwidth requirement
G.721 Waveform Codec Adaptive Differential PCM (ADPCM) 32 Kbps bandwidth requirement MOS of about 4.0 G.721 has now superseded by ITU-T recommendation G.726, which is more advanced ADPCM codec 16, 24, 32, 40 bandwidth requirement (G.726) G.726 has an MOS of about 4.0 (when running at 32 Kbps)
G.728 Hybrid Codec Low-Delay Code-Excited Linear Predictive (LD-CELP) 16 Kbps transmit bit rate 0.625ms coder delay MOS of about 3.9 Digital Processors (DSPs) used for G.728 are quite expensive
G.731.1 Hybrid Codec 30ms coder delay Algebraic Code-Excited Linear Prediction (ACELP) / Multi-pulse Maximum Likelihood Quantization (MP-MLQ) 5.3/6.3 Kbps bandwidth requirement MOS of about 3.8 Digital Processors (DSPs) used for G.731.1 are quite expensive
G.729 Hybrid Codec CS-ACELP 8 Kbps Bandwidth requirement MOS of about 4.0 15ms coder delay
Conclusion Differentiated Services are suitable for prioritizing different traffic classes with minimal modifications. Echo on a telephone call is an annoying phenomenon that has been mostly under control in the classic telephony system, but it is rearing its head again as VoIP proliferates.
Conclusion Its effective control is vitally important for the eventual success of VoIP technologies in general, because of the effect of echo on perceived quality. Although G.711 Used in circuit-switched telephone network, but it’s not very suitable for VoIP G.721, G.726, G.728, G.729 are more suitable for VoIP