[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20100127141457.GB1418@ms2.inr.ac.ru>
Date: Wed, 27 Jan 2010 17:14:58 +0300
From: Alexey Kuznetsov <kuznet@....inr.ac.ru>
To: Ilpo J?rvinen <ilpo.jarvinen@...sinki.fi>
Cc: David Miller <davem@...emloft.net>, damian@....rwth-aachen.de,
denys@...p.net.lb, Netdev <netdev@...r.kernel.org>
Subject: Re: [PATCH] tcp: fix ICMP-RTO war
Hello!
> I went through some history, it seems that this comment about the lower
> bound originates from Alexey [1]:
Yes, I even remember why it was done.
Actual comment starts with "If rtt variance happened to be less 50msec...".
It was observed that sometimes due to high burstiness of ACKs
(found originally when linux commuinitected to solaris tcp stack,
which issued huge burst of acks each 50msec. I think he data can be found
in netdev archives), rtt deviation tends to collapse to 0 during such burst,
rto was calculated as plain rtt and obviously we falled to retransmit.
So, the algorithm was repaired. First, to avoid glitches in the future
mdev was clamped to 50ms (rttvar, contribution to rto, is 200msec).
That's what the comment is about.
Second, Linux used to sample rtt each ack, not each rtt (which is technically
main source of the problem). Instead of decreasing sampling rate
I used different sampling rates for growing and dropping rtt:
it grows with rate of arriving acks and drops each rtt i.e. rto grows
quickly, but drops slowly.
Alexey
--
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