29-03-2012, 04:50 PM
Internet Congestion Control
10.1.1.131.3764.pdf (Size: 766.93 KB / Downloads: 32)
Introduction
Congestion control mechanisms in today’s Internet already
represent one of the largest deployed artificial feedback systems;
as the Internet continues to expand in size, diversity,
and reach, playing an ever-increasing role in the integration
of other networks (transportation, finance, etc.), having a
solid understanding of how this fundamental resource is
controlled becomes ever more crucial. Given the scale and
complexity of the network, however, and the heuristic, intricate
nature of many deployed control mechanisms (which
we summarize in the next section), until recently this problem
appeared to be well beyond the reach of analytical modeling
and feedback control theory.
Current TCP Protocols
TCP uses “window” flow control, where a destination sends
acknowledgments for packets that are correctly received. A
source keeps a variable called window size that determines
the maximum number of outstanding packets that have
been transmitted but not yet acknowledged. When the window
size is exhausted, the source must wait for an acknowledgment
before sending a new packet. Two features are
important. The first is the “self-clocking” feature that automatically
slows down the source when a network becomes
congested and acknowledgments are delayed. The second
is that the window size controls the source rate: roughly one
window of packets is sent every round-trip time.
FIFO, DropTail, and RED
A Vegas source adjusts its rate based on observed queueing
delay; in other words, it uses queueing delay as a measure of
congestion. This information is updated by the FIFO
(first-in-first-out) buffer process and fed back implicitly to
sources through round-trip time measurement. A Reno
source uses loss as a measure of congestion. This information
is typically generated and fed back to sources through
DropTail, a queueing discipline that drops an arrival to a full
buffer. RED (random early detection) [35] is an alternative
way to generate the congestion measure (loss) to Reno
sources. Instead of dropping only at a full buffer, RED maintains
an exponentially weighted queue length and drops
packets with a probability that increases with the average
queue length.