Você está na página 1de 2

Proceedings of the 3rd Annual GRASP Symposium, Wichita State University, 2007

Influence of Codecs on Adaptive Jitter Buffer Algorithm


Radhika M. Hirannaiah*, Amarnath Jasti, Dr. Ravi Pendse
Department of Electrical and Computer Engineering, College of Engineering.

Abstract: Transmitting real-time audio or video applications This becomes a difficult task to determine the existing
over the Internet is a challenge in the current networking playout delay. Adaptive buffering is necessary when
technology. The motivation for deploying real-time the receiver is not able to select appropriate playout
applications includes the reduction in voice communication
times, thus resulting in high end-to-end delay.
overheads and the enhancement of services. The integration
of voice, video, and data encounters a variable amount of
The goal of this research was to enhance the
jitter and delay. Typically packet loss ranges from 0% to 20% existing model of jitter buffer. A simulation model was
and one-way delay from 5 to 500 milliseconds [1] [2]. proposed to change the voice codecs dynamically
Reducing jitter delay involves buffering of audio packets at based on jitter buffer value from higher bit rate to
the receiver so that the packets arrive sequentially on time at lower bit rate voice codec. The change in voice codecs
the destination. Adaptive jitter buffering at the receiver during an established call session reduced the packet
improves the quality of voice connections on the Internet. In loss and improved the call performance. The
this study, a simulation model was proposed to further performance of the proposed model was also evaluated
enhance the existing jitter buffer model to change the voice
on voice-quality, packet loss, bandwidth utilization and
codecs dynamically. Voice codecs were changed from higher
bit rate to lower bit rate during an established call session
inter-arrival delays.
based on jitter buffer value. The proposed model reduced the
packet loss thereby improving the call performance during 2. Experiments, Results and Discussion
the on-going call session.
Jitter buffer is a shared data area usually located at
1. Introduction the receiving end, where the voice packets are
collected, stored, and sent to the voice processor in
Attaining high quality telephony over Internet evenly spaced intervals. Adaptive jitter buffer was
Protocol (IP) networks is one of the essential steps in implemented to enable smooth playout of voice packets
the convergence of voice, fax, video, and data as the packets are received. Inter-arrival jitter, an
communication services. The main objective of estimate of statistical variance of the RTP data packet
transmitting real-time voice on IP networks is to inter-arrival time, measured in timestamp units and
overcome the variable inter-packet delay (jitter) expressed as an unsigned integer.
encountered as the packets traverse the network. Packet Inter-arrival jitter [4], “J” is calculated by,
transmission features transmission delays, jitters, and J = J + (( D( i −1),i − J ) / 16) (1)
varying packet losses, which makes it difficult to
handle real-time traffic in the current Internet scenario. For two packets i and j, D is expressed as
In User Datagram Protocol (UDP) based real-time D( i , j ) = ( R j − S j ) − ( Ri − S i ) (2)
applications to compensate for variable delays, a
smoothing buffer is typically used at the receiver [3]. where S i and S j are the RTP timestamps from
Received packets are first queued into the smoothing packets i and j , and Ri and R j are the time of
buffer, referred as playout buffer, to decode the
influence of the network’s delay variations which is arrivals in RTP timestamp units for packets i and j .
minimized. In a Voice over IO (VoIP) application, In this research, the experimental setup consists of
playout delay is important because it directly affects two terminals based on OpenH323 source code
the communication quality of the application. If the compliant of H.323 protocol. The simulation model
delay is too short, the client treats the packet as lost was built in Arena 7.01 initially with the default codec
even though the packet eventually arrives. If the delay G.711 analogous to the real-time call setup of
is too large, it may be unacceptable to the client users. OpenH323 [5] call generation as shown in Fig. 1. The

195
Proceedings of the 3rd Annual GRASP Symposium, Wichita State University, 2007

adaptive jitter buffer was set to vary from 20 msec to call session. The voice codecs were dynamically
1000 msec in real-time to maintain its adaptive nature. changed when the jitter buffer value reached threshold
Fig. 1 shows the test bed for the experiments and the incoming packets would be discarded. By
conducted. The setup consisted of two terminals A and maintaining the adaptiveness of jitter buffer and
B with an OpenH323 source code on a Red Hat Linux choosing a lower bit rate codec, the packet loss was
operating system to place the voice calls. reduced by 30% and could hold more packets in the
buffer.

[1] Ramjee, R., Kurose, Jim, Towsley, Don and Schulzrinne, H.,
“Adaptive Playout Mechanisms for Packetized Audio
Applications in Wide-Area Networks”, Proceedings of IEEE
Infocom, Toronto, Canada, 1994.
[2] Moon, Sue B., Kurose, Jim, Towsley, Don, “Packet audio
playout delay adjustment: performance bounds and
algorithms”, ACM Multimedia Systems, pp.17-28, 1998.
[3] Keagy, Scott, “Integrating Voice and Data Networks”, Cisco
Fig. 1 Experimental setup Press, 2000.
[4] Jacobson, V., Schulzrine, H., Casner, S., Fredrick, R., “RFC
1889 – RTP: A Transport Protocol for Real-Time
Simulations using Arena [6] were done initially to Applications”, Request For Comments, January, 1996.
verify the model, as shown in Fig. 2 that was analogous [5] OpenH323 Project, www.openh323.org
to the real-time system. In OpenH323, G.711 codec [6] Rockwell – Arena Simulation Software,
http://www.arenasimulation.com/
was used as default codec for all the calls placed. This [7]
model was further extended for G.723.1 codec as
shown in Fig. 3, in addition to the existing one, by
retaining the adaptive nature of the jitter buffer. The
lower bit rate codec G.723.1 was chosen when the
buffer reached the threshold and was prepared to
discard the packets while using G.711 codec. This
reduced the packet loss and improved the performance
of the call.
Fig. 2 Test Model with G711 codec
In both the simulation models, tests were run with
replications of 5, 10, 15, 20, 22, 24, 25, and 30
analogous to placing simultaneous calls in real-time
through Callgen323. These models also had a Normal
distribution for inter-arrival time and Weibull
distribution for delay between the packets. The packets
sent were kept constant at 1500 for each single
replication. In the first model with G.711 codec, the
packet loss was approximately 5% to 10% and was
thus verified with the original real-time system with
OpenH323. In the proposed model, the codecs
Fig. 3 Test model for adaptive codecs
automatically changed from higher bit rate codec
G.711 to the lower bit rate codec G.723.1 when buffer Comparison of Packet loss

reached the threshold to hold more number of packets. 90.0

This reduced the loss of packets by 30% more 80.0


A verag e Packet L o ss (u n its)

compared to the first model during the established call 70.0


60.0
session and maintained its adaptive nature of the jitter 50.0
buffer. Fig. 4 represents a comparison of test models 40.0

with G.711 codec and when the codec was changed 30.0
20.0
adaptively from G.711 to G723.1. 10.0
0.0
5 10 15 20 22 24 25 30
3. Conclusions Average packet loss w ith G.711 81.6 81.6 81.2 81.6 81.3 81.1 81.3 81.2
Average Packet loss w ith Adaptive 56.0 56.1 55.9 56.2 56.0 55.9 56.0 55.9

In this research, the existing model of RTP jitter codecs

buffer was enhanced by proposing a model to change # of Calls Placed

the voice codecs from a higher bit rate codec G.711 to Fig. 4 Plot of comparison of packet loss
a lower bit rate codec G.723.1 during an established

196

Você também pode gostar