netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] [TCP] FRTO: Limit snd_cwnd if TCP was application limited
@ 2007-11-13 22:08 Ilpo Järvinen
  2007-11-14  5:02 ` David Miller
  0 siblings, 1 reply; 2+ messages in thread
From: Ilpo Järvinen @ 2007-11-13 22:08 UTC (permalink / raw)
  To: David Miller; +Cc: Netdev

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1313 bytes --]


Otherwise TCP might violate packet ordering principles that FRTO
is based on. If conventional recovery path is chosen, this won't
be significant at all. In practice, any small enough value will
be sufficient to provide proper operation for FRTO, yet other
users of snd_cwnd might benefit from a "close enough" value.

FRTO's formula is now equal to what tcp_enter_cwr() uses.

FRTO used to check application limitedness a bit differently but
I changed that in commit 575ee7140dabe9b9c4f66f4f867039b97e548867
and as a result checking for application limitedness became
completely non-existing.

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
---

Noticed this unrelated problem while thinking LOST bits and stuff...

 net/ipv4/tcp_input.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
index cc358d4..3f126ec 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -1674,6 +1674,9 @@ void tcp_enter_frto(struct sock *sk)
 	}
 	tcp_verify_left_out(tp);
 
+	/* Too bad if TCP was application limited */
+	tp->snd_cwnd = min(tp->snd_cwnd, tcp_packets_in_flight(tp) + 1);
+
 	/* Earlier loss recovery underway (see RFC4138; Appendix B).
 	 * The last condition is necessary at least in tp->frto_counter case.
 	 */
-- 
1.5.0.6

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] [TCP] FRTO: Limit snd_cwnd if TCP was application limited
  2007-11-13 22:08 [PATCH] [TCP] FRTO: Limit snd_cwnd if TCP was application limited Ilpo Järvinen
@ 2007-11-14  5:02 ` David Miller
  0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2007-11-14  5:02 UTC (permalink / raw)
  To: ilpo.jarvinen; +Cc: netdev

From: "Ilpo_Järvinen" <ilpo.jarvinen@helsinki.fi>
Date: Wed, 14 Nov 2007 00:08:18 +0200 (EET)

> 
> Otherwise TCP might violate packet ordering principles that FRTO
> is based on. If conventional recovery path is chosen, this won't
> be significant at all. In practice, any small enough value will
> be sufficient to provide proper operation for FRTO, yet other
> users of snd_cwnd might benefit from a "close enough" value.
> 
> FRTO's formula is now equal to what tcp_enter_cwr() uses.
> 
> FRTO used to check application limitedness a bit differently but
> I changed that in commit 575ee7140dabe9b9c4f66f4f867039b97e548867
> and as a result checking for application limitedness became
> completely non-existing.
> 
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>

Applied to net-2.6, thanks Ilpo.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-11-14  5:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-13 22:08 [PATCH] [TCP] FRTO: Limit snd_cwnd if TCP was application limited Ilpo Järvinen
2007-11-14  5:02 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).