Next: Startup
Up: Congestion Control Algorithm
Previous: Translating the relative delay
We attempt to keep the SC-TCP congestion window such that Equation 2
is satisfied within a range of
,
where
is some fraction of a packet.
Adjustments are made to the congestion window only at discrete
intervals, i.e., in the time taken to empty a windowful of data from the
network. Over this interval,
MWi-1 is calculated and at the
end of the interval it is added to
Nti-1. If the result falls within the range of
,
the congestion window is maintained at its current size. If,
however, Nti falls below
,
the system is not
being pushed enough and the window is increased linearly during the
next interval. If
Nti rises above
,
then the system is being
pushed too high above our desired operating point, and the congestion
window is decreased linearly during the next interval.
In Reno TCP the congestion control algorithm is driven by the arrival
of ACKs at the source (the window is incremented by 1/cwnd for each
ACK while in the congestion avoidance phase) and is for this reason
adversely affected by ACK loss [11]. ACK loss becomes a
predominant feature in TCP over asymmetric networks [11].
Because our congestion control algorithm makes adjustments to the
window based upon the advancement of the window and not on the arrival
of ACKs in general, the algorithm is robust to ACK loss.
Next: Startup
Up: Congestion Control Algorithm
Previous: Translating the relative delay
Chris Parsa
2000-01-25