From owner-freebsd-hackers Sun Mar 21 11:43:23 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from cygnus.rush.net (cygnus.rush.net [209.45.245.133]) by hub.freebsd.org (Postfix) with ESMTP id 7334A14C1C for ; Sun, 21 Mar 1999 11:43:13 -0800 (PST) (envelope-from bright@rush.net) Received: from localhost (bright@localhost) by cygnus.rush.net (8.9.3/8.9.3) with SMTP id OAA29279; Sun, 21 Mar 1999 14:48:29 -0500 (EST) Date: Sun, 21 Mar 1999 14:48:27 -0500 (EST) From: Alfred Perlstein To: Terry Lambert Cc: Dag-Erling Smorgrav , andreas@klemm.gtn.com, rsnow@lgc.com, hasty@rah.star-gate.com, ckempf@enigami.com, wpaul@skynet.ctr.columbia.edu, freebsd-hackers@FreeBSD.ORG Subject: Re: Gigabit ethernet -- what am I doing wrong? In-Reply-To: <199903211824.LAA13217@usr06.primenet.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sun, 21 Mar 1999, Terry Lambert wrote: > > > AFAIK "zero copy tcp/ip" went into 3.1 and 4.0. Thanks to David > > > Greenman who implemented and tested this on ftp.cdrom.com. > > > (I hope I got the credits right ;-) > > > > No, that's only zero-copy transmission of files over stream sockets. > > OK, I'm real curious. > > How does this work? > > The lowest possible number of copiees I can consider is 1. This > assumes a DMA from the disk controller into the ethernet card > memory, and a cache-line unaligned one, at that, since the host > would have to pre-supply the packet header. That is zero copy, packet is DMA'd from card, then sent via DMA to another card, hence 0 copy. The CPU doesnt' have much work to do besides the DMA setups and a quick packet check, look at the fastforward code and you can see. -Alfred To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message