[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201103141106.19679.carsten@wolffcarsten.de>
Date: Mon, 14 Mar 2011 11:06:19 +0100
From: Carsten Wolff <carsten@...ffcarsten.de>
To: Yuchung Cheng <ycheng@...gle.com>
Cc: David Miller <davem@...emloft.net>,
Ilpo Jarvinen <ilpo.jarvinen@...sinki.fi>,
Nandita Dukkipati <nanditad@...gle.com>, netdev@...r.kernel.org
Subject: Re: [PATCH] tcp: avoid cwnd moderation in undo
Hi,
On Saturday 12 March 2011, Yuchung Cheng wrote:
> In the current undo logic, cwnd is moderated after it was restored
> to the value prior entering fast-recovery. It was moderated first
> in tcp_try_undo_recovery then again in tcp_complete_cwr.
>
> Since the undo indicates recovery was false, these moderations
> are not necessary. If the undo is triggered when most of the
> outstanding data have been acknowledged, the (restored) cwnd is
> falsely pulled down to a small value.
>
> This patch removes these cwnd moderations if cwnd is undone during
> the fast-recovery.
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.
More importantly, the prior ssthresh is restored and not affected by
moderation. This means, if moderation reduces cwnd to a small value, then cwnd
< ssthresh and TCP will quickly slow-start back to the previous state, without
sending a big burst of segments.
Also, you intended to remove cwnd moderation only from an undo during
recovery, but I think your patch also removes cwnd moderation when the undo is
caused by D-SACK, i.e. most likely after recovery already ended.
Carsten
--
/\-ยด-/\
( @ @ )
________o0O___^___O0o________
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists