[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110308.105503.104060436.davem@davemloft.net>
Date: Tue, 08 Mar 2011 10:55:03 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: shemminger@...tta.com
Cc: lucas.nussbaum@...ia.fr, netdev@...r.kernel.org, sha2@...u.edu
Subject: Re: [PATCH] tcp_cubic: enable TCP timestamps
From: Stephen Hemminger <shemminger@...tta.com>
Date: Tue, 8 Mar 2011 10:42:11 -0800
> On Tue, 8 Mar 2011 09:09:26 +0100
> Lucas Nussbaum <lucas.nussbaum@...ia.fr> wrote:
>
>> The Hystart slow start algorithm requires precise RTT delay measurements
>> to decide when to leave slow start. However, currently, CUBIC doesn't
>> enable TCP timestamps. This can cause Hystart to mis-estimate the RTT,
>> and to leave slow start too early, generating bad performance since
>> convergence to the optimal cwnd is slower.
>>
>> Timestamps are already used by TCP Illinois, LP, Vegas, Veno and Yeah.
>>
>> Signed-off-by: Lucas Nussbaum <lucas.nussbaum@...ia.fr>
>
> Just to explain what RTT_STAMP does. It causes the tcp receive code
> to compute the rtt using high resolution clocks rather than just
> jiffies. It requires access to ktime_get_real which means accessing
> clock source. This is cheap for TSC, a little expensive for HPET but
> expensive for PIT. I worry that enabling it may hurt regular users
> on old desktops. But without it enabling RTT_STAMP, packets that
> get acked in less than a jiffie (1 - 10 ms) will
>
> Also I should have used ktime_get rather than ktime_get_real
> because real time is altered by NTP and other actions.
This also means that whatever testing was originally done on Hystart
is dependent upon whatever value CONFIG_HZ had in the test kernel.
--
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