Re: The ultimate TOE design
From: David Schwartz <hidden>
Date: 2004-09-15 20:43:09
Also in:
lkml
David Stevens wrote:
I've never understood why people are so interested in off-loading networking. Isn't that just a multi-processor system where you can't use any of the network processor cycles for anything else? And, of course, to be cheap, the network processor will be slower, and much harder to debug and update software.
The issues of debugging the network processor software and maintaining it is certainly a legitimate one. However, nothing stops you from using the extra network processor cycles for other purposes.
If the PCI bus is too slow, or MTU's too small, wouldn't it be better to fix those directly and use a fast host processor that can also do other things when not needed for networking? And why have memory on a NIC that can't be used by other things?
This isn't an either-or. Processors are cheap. Memory is cheap.
Why don't we off-load filesystems to disks instead? Or a graphics card that implements X ? :-) I'd rather have shared system resources-- more flexible. :-)
It's not one or the other. If, for example, your network card, graphics card, and hard drive controller all use a common instruction set and are all interconnected by a fast bus, code can be fairly mobile and run wherever it's the most efficient. Nothing stops the OS from offloading internal tasks to these processors as well. The only real stumbling blocks have been cost/volume considerations and the fact that the central processor(s) can be so fast, and the I/O so slow in comparison, that there's not much to gain. DS