
%         Registration            Large Receive Offload implementation in     
%                                      Neterion 10GbE Ethernet driver         
%                              Leonid Grossman (leonid@neterion.com)          

The benefits of Transmit Side Offload (TSO)    
implementation in Ethernet ASICs and device    
drivers are well known. TSO is a \textit{de facto}
standard in 2.6 Linux kernel and provides      
significant reduction in \%cpu utilization,     
especially with 1500 MTU. On a cpu-bound       
system, these cycles translate into dramatic   
throughput increase. Unlike TOE, stateless     
offloads do not break the Linux stack and do   
not introduce security and support issues.     
Stateless offload benefits are especially      
apparent at 10 Gigabit rates. 10GbE sender     
with TSO hardware support uses a fraction of a 
single cpu to run at line rate, leaving plenty 
of cycles for applications. On the receiver    
side, the Linux stack presently does not have  
a stateless offload similar to TSO. Receiver   
\%cpu typically becomes a bottleneck that       
prevents 10GbE adapters from reaching line     
rate with 1500 mtu. Neterion hw/sw Large       
Receive Offload (LRO) solution was designed to 
address this bottleneck and further reduce TCP 
processing overhead on the receiver. Both      
design and performance results will be         
presented.                                     

