II.3.1 BUFFER
A temporary storage area, usually in Random Access Memory
(RAM). The purpose of most buffers is to act as a holding area, enabling the
CPU to manipulate data before transferring it to a device.
Because the processes of reading and writing data to a disk
are relatively slow, many programs keep track of data changes in a buffer and
then copy the buffer to a disk. For example, word processors employ a buffer to
keep track of changes to files.
Then when file is saved, the word processor updates the disk
file with the contents of the buffer. This is much more efficient than
accessing the file on the disk each time change are made to the file.
Because changes are initially stored in a buffer, not on the
disk, all of them will be lost if the computer fails during an editing session.
For this reason, it is a good idea to save file periodically. Most word
processors automatically save files at regular intervals.
Buffers are commonly used when burning data onto a compact
disc, where the data is transferred to the buffer before being written to the
disc.
Another common use of buffers is for printing documents. When
entered a PRINT command, the operating system copies the document to a print
buffer (a free area in memory or on a disk) from which the printer can draw
characters at its own pace. This frees the computer to perform other tasks
while the printer is running in the background. Print buffering is called
spooling.
Most keyboard drivers also contain a buffer so that mistakes
can edit, typing before sending the command to a program. Many operating
systems, including DOS, also use a disk buffer to temporarily hold data that
they have read from a disk. The disk buffer is really a cache.12
II.3.2 JITTER BUFFER
Jitter buffers are used to counter "jitter"
introduced by packet networks so that a continuous playout of audio (or video)
transmitted over the network can be ensured. The maximum jitter that can be
countered by a de-j itter buffer is equal to the buffering delay introduced
before starting the play-out of the media stream.
Some systems use sophisticated delay-optimal jitter buffers
which are capable of adapting the buffering delay to changing network jitter
characteristics. These are known as adaptive de-j itter buffers and the
adaptation logic is based on the jitter estimates computed from the arrival
characteristics ofthe media packets.
Adaptive de-j ittering involves introducing discontinuities in
the media play-out which may appear offensive to the listener / viewer.
Adaptive de-j ittering is usually carried out for audio play-outs which
feature a VAD (Voice Activity Detection)/DTX (Discontinuous Transmission)
12
http://www.webopedia.com/TERM/b/buffer.html,September
12,2006
encoded audio, that allows the lengths of the silence periods
to be adjusted, thus minimizing the perceptual impact of the
adaptation.13
II.3.3 QUEUING DELAY
In computer engineering, a queuing delay is the
time a job waits in a queue until it can be executed.
This term is most often used in reference to routers. When
packets arrive at a router, they have to be processed and transmitted. A router
can only process one packet at a time. If packets arrive faster than the router
can process them (such as in a burst transmission) the router puts them into
the queue (also called the buffer) until it can get around to transmitting
them.
Queuing delay is proportional to buffer size. The longer the
line of packets waiting to be transmitted, the longer the average waiting time
is. However, this is much preferable to a shorter buffer, which would result in
ignored ("dropped") packets, which in turn would result in much longer overall
transmission times.14
|