Professional Documents
Culture Documents
06-Congestion Avoidance
06-Congestion Avoidance
на задушување
Conges4on
avoidance
Behavior
of
a
TCP
Sender
• Sender
sends
“N”
bytes
(as
much
as
credit
allows)
• Start
credit
(window
size)
is
small
– To
avoid
overloading
network
queues
• Increases
credit
exponen4ally
– To
gauge
network
capability
Behavior
of
a
TCP
Receiver
• Receiver
schedules
an
ACK
on
receipt
of
“next
message.”
• TCP
acknowledges
the
next
segment
it
expects
to
receive,
not
the
last
segment
it
received.
– In
the
example,
N+1
is
blocked,
so
the
receiver
keeps
acknowledging
N+1
(the
next
segment
it
expects
to
receive).
TCP
Slow
Start
• If
ACK
acknowledges
something
– Updates
credit
and
sends
• If
not,
presumes
it
indicates
a
lost
packet
– Sends
first
unacknowledged
message
right
away
– Halves
current
credit
(slows
down)
– Increases
slowly
to
gauge
network
throughput
Mul4ple
Drops
in
TCP
• If
mul4ple
drops
occur
in
the
same
session:
– Current
TCPs
wait
for
4me-‐out
– Selec4ve
acknowledge
may
be
a
workaround
– New
“fast
retransmit”
phase
takes
several
round-‐trip
4mes
to
recover
Managing
Interface
Conges4on
with
Tail
Drop