TCP IP Offloading

Lennart Sorensen lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org
Fri Oct 7 15:26:58 UTC 2011


On Thu, Oct 06, 2011 at 05:47:48PM -0400, William Muriithi wrote:
> I came across this today the first time, as we had an application that
> needed TSO disabled and wanted to know if there is side effects of
> disabling it. It appear that there is a lot of people and research
> that imply that TSE is a bad solution and if you read the PDF, it
> looks like they have a point.
> 
> http://www.cs.helsinki.fi/linux/linux-kernel/2003-28/0029.html
> 
> This article below imply that TSO could help with CPU usage,
> apparently activating it drop the CPU usage from 40% to 19%
> 
> http://lwn.net/Articles/9123/
> 
> Now the question is, is there an way network traffic can take 40% of
> today's CPU cycles?  Most of the articles that were discussing it are
> a bit dated?

Sure.  Try 64 byte packets are wire speed on a 10Gbit port.

On the other hand a high end quad core i7 with large packets has been
shown to be able to route around 70Gbit per second using multiple high
end dual port intel PCIe

> It looks like modern Linux have partially enabled TSE, would it be
> correct to assume all NIC cards out there support TSE?

TSO or TSE?

Now can we please get the acronym soup straightened out?

TSE = No idea
TSO = TCP Segmentation Offload (Considered useful for servers handling
      large chunks of data on tcp sockets)
TOE = TCP Offload Engine (Considered a bad idea and not supported in linux)
LRO = Large Receive Offload (Done in software (NAPI) in linux.  Some BSDs
      support it in hardware on some cards).

-- 
Len Sorensen
--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list