Re: [RFC PATCH net-2.6.25 uncompilable] [TCP]: Avoid breaking GSOed skbs when SACKed one-by-one
From: Lachlan Andrew <hidden>
Date: 2007-12-12 23:35:51
Greetings Dave, On 12/12/2007, David Miller [off-list ref] wrote:
From: "Lachlan Andrew" <redacted> Date: Tue, 11 Dec 2007 16:14:36 -0800quoted
This thread started because TCP processing interferes with RTT estimation. This problem would be eliminated if time-stamping were done as soon as the packet comes off the NIC.We don't do that because such timestamping is too expensive. It used to be the case that we did this, but we stopped doing that a long time ago. On x86 for example, timestamping can involve touching a slow I/O device to read the timestamp. We do not want to do that for every packet.
OK. Thanks for the background. I thought that a TSC read was fairly cheap. Any messing around to interpret it could be the responsibility of any task which actually needs a high-resolution timestamp, couldn't it? If TSC is disabled, then the timestamp field could be set to "invalid".
Also, we timestamp differently for TCP, the global high resolution timestamp is overkill for this purpose.
Overkill for Reno and Cubic, but useful for Vegas, LP, veno, Illinois and YeAH which are all in the kernel. They currently use "high resolution" timestamps which are effectively quantized to the scheduler resolution because of the way timestamping is done -- reading a high-resolution time source when a task is scheduled.
Really, this is a silly idea
Oh... :(
and would only be a bandaid for the problem at hand, that TCP input processing is too expensive in certain circumstances.
That problem should certainly be fixed as well -- I wasn't suggesting this as an alternative. Will fixing it fix the problem of those TCP modules suffering from CPU load from other sources? (I'm Cc'ing this to Darryl Veitch who has often wanted driver-level time-stamping for achieving high-resolution synchronization between hosts.) Cheers, Lachlan -- Lachlan Andrew Dept of Computer Science, Caltech 1200 E California Blvd, Mail Code 256-80, Pasadena CA 91125, USA Ph: +1 (626) 395-8820 Fax: +1 (626) 568-3603 http://netlab.caltech.edu/~lachlan