On Fri, 10 Nov 2006 09:34:33 -0800 (PST)
Jonathan Day <[EMAIL PROTECTED]> wrote:

> 
> --- Evgeniy Polyakov <[EMAIL PROTECTED]> wrote:
> 
> > On Thu, Nov 09, 2006 at 07:06:00PM -0800, Jonathan
> > Day ([EMAIL PROTECTED]) wrote:
> > > Hi,
> > > 
> > > I've got an interesting problem to contend with
> > and
> > > need some advice from the great wise ones here.
> > > 
> > > First of all, is it possible (and/or "reasonable
> > > practice") when developing a network driver to do
> > > zero-copy transfers between main memory and the
> > > network device?
> > 
> > What do you mean?
> > DMA from NIC memory into CPU memory?
> 
> Yes. I want to bypass the kernel altogether and think
> there may be a way to do this, but want to make very
> certain that I'm not going down the wrong track.
> 

This is not normally possible because network data could be intended
for multiple sockets. It is not possible to know where to DMA the
data to until you have done all the necessary protocol demultiplexing
and filtering. There has been talk of having really smart hardware
to help.

> The underlying problem is this. The group I'm working
> with is messing about with building their own
> networking device that will run at an equal speed to
> the bus leading to the host (2.5 gigabits/second). The
> device has its own DMA controller and can operate as
> bus master.
> 
> It's my task to figure out how to get the data into
> the host at near-100% bandwidth without dropping
> anything, with minimal latency and real-time
> characteristics.

You might want to look at RDMA Infiniband model.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to