Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Aug 2003 13:34:57 -0500 (CDT)
From:      Chris Dillon <cdillon@wolves.k12.mo.us>
To:        Bill Paul <wpaul@FreeBSD.ORG>
Cc:        freebsd-net@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/pci if_rl.c if_rlreg.h
Message-ID:  <20030807125217.B25373@duey.wolves.k12.mo.us>
In-Reply-To: <20030807172712.ADB9937B401@hub.freebsd.org>
References:  <20030807172712.ADB9937B401@hub.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 7 Aug 2003, Bill Paul wrote:

> Pros:
>
> - The 8169 is very easy to program. RealTek has been very peculiar
>   in how it's releasing documentation for it though. They had the
>   manual on their site for a while, then took it down. I have a
>   copy at: http://www.freebsd.org/~wpaul/RealTek. Note that it has
>   almost exactly the same API as the 8139C+.

It is good to know that they released the programming information at
least once, even if on accident.  Releasing it out into the open just
one time is all it takes, and it is forever available as long as
somebody has a copy of it. :-)

> - There doesn't appear to be any alignment restrictions for data
>   buffers on either RX or TX (so no copies on RX needed).

This is good, I know the fxp has a couple of alignment constraints, at
least on receive on the Alpha, and I thought I remember discussion
about being able to fix that by uploading the right microcode, but we
don't have any info on how to do that.  I assume the bge and em
drivers don't have to deal with alignment issues either.

> Cons:
>
> - Finding an 8169-based NIC in the U.S. market is ridiculously difficult.
>   I ordered my card from www.mrtechus.com, which appears to be based in
>   Los Angeles. I have yet to see either an 8169 or 8139C+ card in a
>   retail store (although I have not been to Fry's lately).

I'm sure given its price it will soon find its way embedded onto many
low to mid-range desktop motherboards, if not in add-in cards.  The
way ASUS and other vendors have been using the RTL8100 NIC and now the
RTL8201 PHYs quite a bit I'm suprised the RTL8169 isn't already on
some of their boards.

> - The Intel and Broadcom NICs have more advanced interrupt moderation
>   features. I was able to achieve some TX interrupt moderation using
>   the 8139C+/8160's on-board timer, but haven't figured out a proper
>   way of doing RX interrupt moderation yet.
> - High-end Broadcom NICs can have up to 4 TX rings rather than 2.
> - High-end Broadcom NIC also has a very sofisticated RX filtering
>   mechanism that can be use to prioritize traffic into different
>   RX queues.
> - Retains the same RX filtering mechanism as the original 8139 (1 perfect
>   filter for station address, 64-bit multicast hash table).

So, the 8169 should do fine for the average desktop, just as the 8xx9
family has done in the past, but a high-traffic server should more
than likely use a bge or em chipset.  I'm not sure how many of the
advanced features you mention we actually take advantage of in the
Broadcom chipset, but having so many TX and RX rings could be a boon
for QoS applications and routers when it comes to traffic
prioritization.

Thank you for such an in-depth insight!

-- 
 Chris Dillon - cdillon(at)wolves.k12.mo.us
 FreeBSD: The fastest and most stable server OS on the planet
 - Available for IA32, IA64, PC98, Alpha, and UltraSPARC architectures
 - x86-64, PowerPC, ARM, MIPS, and S/390 under development
 - http://www.freebsd.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030807125217.B25373>