Re: zero-copy TCP

From: Jeff V. Merkey (jmerkey@timpanogas.com)
Date: Sat Sep 02 2000 - 17:35:28 EST


Jes Sorensen wrote:
>
> >>>>> "Jeff" == Jeff V Merkey <jmerkey@timpanogas.com> writes:
>
> Jeff> **ALL** Netware network drivers support a scatter/gather
> Jeff> proramming interface, whether the hardware does or not. In
> Jeff> NetWare, the drivers get passed a fragment list in what's called
> Jeff> an ECB (Event Control Block). It's the drivers responsiblity to
> Jeff> assemble the fragment lists. We did it this way to support
> Jeff> scatter/gather cards and non-scatter gather cards in one
> Jeff> interface. Those drivers that do not support scatter gather DMA
> Jeff> operations copy to a local buffer to assemble the packet. Those
> Jeff> with a shared memory window copy data from the fragment list
> Jeff> into this window until a complete IEEE frame gets completed
> Jeff> (since it will get copied anyway), then hit the register bits to
> Jeff> initiate a send of the data.
>
> You just told us earlier in the thread that NetWare does direct zero
> copy DMA but thats only half the story obviously. Up until the era of
> Gigabit Ethernet cards there were almost no PCI cards available that
> would do scatter/gather so obviously netware wasn't doing zero copy
> either.

I guess this is a correct statement, but Linux and everyone else has the
same limittion. Here, I'll refrase. Zero copies irregardless of the
driver model. Intel had an ethernet card that did years back. So
Alan's statements are also wrong since he says "one DMA" not applicable
to cards with a shared memory window.

Jeff

>
> Jes
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Sep 07 2000 - 21:00:14 EST