Linux and TCP offload engines
Posted Aug 26, 2005 7:03 UTC (Fri) by njhurst
In reply to: Linux and TCP offload engines
Parent article: Linux and TCP offload engines
I know very little about this, but I think the two things you gain are the ability to make hardware specifically to handle the kinds of calculations (think GPU, FPU, DSP etc) and the ability to concentrate on the data without having to deal with things like interrupts and memory management (polling).
In the case of TOE, I imagine that there are checksums and so on that could be performed whilst dmaing the data through. If this were done by the main CPU it might be that the data arrives much slower than the CPU could handle them, but faster than is suitable for interrupts. So the driver has to do the checksum on a block of data after it is in main memory, effectively doubling the time spend on each packet. The card could just compute the checksum as it does the dma transfer, and leave that somewhere convenient.
I remember that back in the days of the 68k macs they used a separate 6801 or similar to handle the io, as that reduced the time spent in interrupts drastically, without requiring a much more powerful CPU.
to post comments)