Latency and Jitter on Your LAN

Broadband connections to the Internet have boosted the popularity of streaming multimedia and videoconferencing applications. Tailoring your LAN for those new services requires a good understanding of how latency and jitter originate and how they affect LAN performance.

Most of the time, the only LAN performance characteristic that you're going
to care about is the data rate, which determines the time it takes to get something
done. If you're doing something like talking in a network videoconference or
across your LAN, though, you'll also care about how long it takes for individual
messages to move across the LAN and about how variable those times are. Those
two measurements are called latency and jitter.

Latency and jitter are the important performance measures for videoconferencing
because interactive streaming applications depend on an uninterrupted flow of
messages to keep the processing on the computers running smoothly. If you delay
or drop messages in those applications, it's likely that the software will pause
noticeably. Pauses are irritating in video and can make audio unintelligible.

Latency and jitter originate inside your computers, as shown in Figure
1. Each block in the two computers is a processing step that has a minimum
time delay. The delay that a specific message encounters in each step is variable
and most often depends on what's happening at that instant of time on the LAN
infrastructure (even though the cable and hub themselves have a relatively constant
transit time).

Each processing step has its own function and own unique reasons for introducing
latency and jitter:

LAN adapter—The interaction between the LAN adapter and the
network infrastructure is the original source of latency and jitter beyond
the minimums because the LAN adapter is required to wait until there is
no interfering traffic on the cable before it transmits a message. If there's
no traffic on the network, the wait will be the minimum possible; if there's
very heavy traffic, the wait can be relatively long.

Because it's possible for two computers to believe that the cable is clear
and to start transmitting a message at the same time, collisions can occur,
corrupting both messages and requiring both to be retransmitted. The loss
of the transmitted messages introduces delay in getting the messages to
their destination, increasing latency. LAN adapters in Ethernet networks
are required to wait a random time before attempting to retransmit, which
increases jitter.

LAN adapter device driver—The device driver is responsible
for controlling the operation of the LAN adapter, giving it messages to
send, accepting received messages, and monitoring the adapter for problems.
Drivers from different manufacturers use different techniques to decide
whether it's possible to hand off or receive messages, and to find out about
problems, differences that cause variations in transit time that add to
latency and jitter.

Protocol stack—Even with the best efforts of the LAN adapter
and the device driver, messages can get lost on networks. When they do,
the first line of defense responding to the problem will be the protocol
stack implementing TCP/IP, SPX/IPX, or NetBEUI. Messages can be lost without
notification, though, so protocol stacks have to wait for a timeout period
before declaring the message lost. The timeout periods are very long compared
to normal latencies, introducing a lot of delay and one of the major sources
of jitter.

Application software—How the application software handles
lost or delayed messages ultimately determines how stringent the latency
and jitter requirements on your network will be. Applications insensitive
to latency and jitter typically send enough data in every message that dropped
messages might cause a skip in what you perceive, but this won't stall the
receiving program. More data has to be transmitted in each message to meet
that requirement, though, increasing the traffic on the LAN. More sensitive
applications actually wait for the receiver to send back a confirmation
that each message has arrived. Those applications generate less traffic
but can stall completely when a collision causes a message to be dropped.

Ultimately, the source of abnormal latency and jitter on a LAN is collisions
on the cable or in the hub. You can reduce the probability of collisions by
increasing the network data rate, which reduces the time each message takes
to transit the network and also increases the percentage of free time. For a
given traffic load, networks running at 100Mbps will have lower latency and
jitter than ones at 10Mbps, which in turn will display lower latency and jitter
than 1Mbps networks. If videoconferencing or other streaming multimedia applications
are important on your network, you'll want to favor the higher-speed technologies.

Collisions are also the reason why you're unlikely to be able to use more than
about 80 percent of the transmission data rate on LAN, and you might get far
less. Simulations and traffic analysis show that when there are too many collisions,
the computers end up spending all their time retransmitting lost messages, and
no useful work gets done.