From owner-freebsd-questions@FreeBSD.ORG Wed Dec 14 06:01:00 2005 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 243C816A41F for ; Wed, 14 Dec 2005 06:01:00 +0000 (GMT) (envelope-from tedm@toybox.placo.com) Received: from mail.freebsd-corp-net-guide.com (mail.web-strider.com [65.75.192.90]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7822343D60 for ; Wed, 14 Dec 2005 06:00:58 +0000 (GMT) (envelope-from tedm@toybox.placo.com) Received: from tedwin2k (nat-rtr.freebsd-corp-net-guide.com [65.75.197.130]) by mail.freebsd-corp-net-guide.com (8.11.1/8.11.1) with SMTP id jBE62db05102; Tue, 13 Dec 2005 22:02:40 -0800 (PST) (envelope-from tedm@toybox.placo.com) From: "Ted Mittelstaedt" To: "Drew Tomlinson" Date: Tue, 13 Dec 2005 21:59:26 -0800 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0) In-Reply-To: <439EDF2D.2050701@mykitchentable.net> Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506 Cc: Michael Vince , danial_thom@yahoo.com, freebsd-questions@freebsd.org, Kris Kennaway Subject: RE: Polling For 100 mbps Connections? (Was Re: Freebsd Theme Song) X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Dec 2005 06:01:00 -0000 >-----Original Message----- >From: owner-freebsd-questions@freebsd.org >[mailto:owner-freebsd-questions@freebsd.org]On Behalf Of Drew Tomlinson >Sent: Tuesday, December 13, 2005 6:48 AM >To: Ted Mittelstaedt >Cc: Michael Vince; danial_thom@yahoo.com; freebsd-questions@freebsd.org; >Kris Kennaway >Subject: Re: Polling For 100 mbps Connections? (Was Re: Freebsd Theme >Song) > > >Ted Mittelstaedt wrote, On 12/13/2005 12:44 AM: > >> >> >>>-----Original Message----- >>>From: Drew Tomlinson [mailto:drew@mykitchentable.net] >>>Sent: Monday, December 12, 2005 12:30 PM >>>To: Ted Mittelstaedt >>>Cc: Michael Vince; danial_thom@yahoo.com; >freebsd-questions@freebsd.org; >>>Kris Kennaway >>>Subject: Polling For 100 mbps Connections? (Was Re: Freebsd >Theme Song) >>> >>> >>>On 12/12/2005 8:13 AM Ted Mittelstaedt wrote: >>> >>> >>> >>>>Michael, >>>> >>>> Fundamentally, here's the problem Danial is claiming exists: >>>> >>>>it takes a certain amount of time to get the packet clocked in >>>> >>>> >>>>from the network into the ethernet receiver. This is hardware >>> >>> >>>>dependent and cannot be changed. >>>> >>>>It takes a certain amount of time to get the packet out of >>>>the hardware in the ethernet card into main ram, this also >>>>hardware dependent and cannot be changed. (unless the device >>>>driver is terribly inefficient, which we will assume it's not) >>>> >>>>Once in main ram, the information in the packet has to go through >>>>a number of code statements. The more code statements the >>>>longer the information in the packet is sitting around in >>>>the FreeBSD system's memory. >>>> >>>>It then takes a certain amount of time to get the information >>>>out of main memory into the other sending ethernet nic's buffers, >>>> >>>>and it takes time to get it out of the sending nic back to the >>>>wire. >>>> >>>>Danial is claiming the slowness is in the main ram section of >>>>things, not in the ethernet driver code. >>>> >>>>polling makes the ethernet driver more efficient at high data >>>>rates, but it does nothing for the speed of processing within >>>>the TCPIP stack itself. At low data rates polling is less >>>>efficient than the interrupt method. And unless the nic driver >>>>is terribly inefficient to start with, the time it adds to the >>>>packet path in the system is minor compared to the time spent >>>>in the TCP/IP stack. >>>> >>>>Ted >>>> >>>> >>>> >>>> >>>Thanks for the explanation. So would polling be beneficial or >>>detrimental for a 100 mbps Ethernet card? >>> >>> >> >>Yes, if you were running 100Mbt's of bandwidth through it. >> >> > >I assume you mean "yes it's beneficial"? :) > Yes. :-) >>>Not sure if 100 mbps is >>>considered "high" or "low" speed. I'm specifically interested in >>>NetGear cards using the dc driver or DLink cards using the rl driver. >>> >>> >>> >> >>The rl chipset isn't known as a very good chipset. YMMV >> >> > >Yeah, I've heard that a lot. It was an old card I had lying around and >it seems to work OK for me. I'm not using it for anything other that >connecting to a 802.11b wireless bridge. Very little traffic. > This post is passing through 2 of these cards on my home BSD router. Fortunately these days since so many mboards are coming with onboard ethernet, the used market is awash in nice PCI ethernet cards. >>Some of the Netgear cards use clone 21143 chipsets which are >>extremely inferior to the real thing. In particular if your >>Netgear card is using a PNIC chipset it is pretty bad with serious >>performance penalty. This is documented in Section 4 of the >dc manpage. >> >> > >This is disapointing. I was under the impression that NetGear cards >were pretty good. But now I looked closer at dmesg.boot and see I have >the PNIC chipset you mention. I'll read the dc man page to see what >penalties I'm suffering. > >>People seem to have good results with polling on the fxp cards. >> >> > >Ah, the built in interface on a HP e60 server I have. It's an old dog >used as a file server. It has been nothing but reliable and is still >chuggin' along just fine. I'll enable polling on it and see if there's >any noticeable improvement in transfer rates. The machine that >typically is used for large file transfers to and from the e60 is a >Windows XP box that has a Nvidia Nforce 4 chipset and whatever >intergrated ethernet port that comes with that chipset. Are there any >known issues with this setup that would invalidate my test? > Yes. The old dog may not be able to take packets off the fxp chip fast enough if your hitting it with 100Mbt of data - which your Nforce chipset running on a nice new multigigahertz mboard is probably able to do. This is a CPU speed thing not an architecture thing, and polling won't make any difference. But, OTOH, windows is pretty inefficient so the network performance of a multigigahertz windows box might just equal that of a under-a-gigahertz mboard running UNIX. Ted