Thread (15 messages) flat view 15 messages, 6 authors, 2011-03-23

Re: [PATCH] tcp: avoid cwnd moderation in undo

From: Carsten Wolff <hidden>
Date: 2011-03-15 10:21:12

On Monday 14 March 2011, John Heffner wrote:
On Mon, Mar 14, 2011 at 3:10 PM, Yuchung Cheng [off-list ref] wrote:
quoted
On Mon, Mar 14, 2011 at 3:06 AM, Carsten Wolff [off-list ref] 
wrote:
quoted
quoted
The moderation is in place to avoid gigantic segment bursts, which could
cause unnecessary pressure on buffers. In my eyes it's already
suboptimal that the moderation is weakened in the presence of
(detected) reordering, let alone removing it completely.
In the presence of reordering, cwnd is already moderated in Disorder
state before
 entering the (false) recovery.
I've always been somewhat skeptical of the usefulness of cwnd
moderation.  First, I don't know that its behavior is well defined.
When *should* tcp_moderate_cwnd() actually be called, and why?

Second, I've never liked the idea in general.  Reducing cwnd has an
effect lasting many RTTs, so reducing it in response to a transient
event like reordering seems dubious.  And it does not address many
causes of bursts, such as ack compression or stretch acks.
I think the undo operations are a special case where it absolutely makes 
sense, because the cwnd _already_ has been reduced (down to 1 segment by RTO 
recovery, or, with its special mixture of ratehalving and newreno, Linux 
sometimes reduces cwnd far below half of it even in fast recovery.). The undo 
re-opens the window all at once, which may allow _really huge_ bursts. I don't 
know enough about the other causes of TCPs burstiness, I'm just concerned 
about allowing this special cause.

Carsten
-- 
           /\-´-/\
          (  @ @  )
________o0O___^___O0o________
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help