Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Aug 2003 10:27:12 -0700 (PDT)
From:      wpaul@FreeBSD.ORG (Bill Paul)
To:        cdillon@wolves.k12.mo.us (Chris Dillon)
Cc:        freebsd-net@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/pci if_rl.c if_rlreg.h
Message-ID:  <20030807172712.ADB9937B401@hub.freebsd.org>
In-Reply-To: <20030807105932.F24257@duey.wolves.k12.mo.us> from Chris Dillon at "Aug 7, 2003 11:11:50 am"

next in thread | previous in thread | raw e-mail | index | archive | help
> Copied to -net rather than the cvs lists...
> 
> On Thu, 7 Aug 2003, Bill Paul wrote:
> 
> >   Tested with the Xterasys XN-152 NIC (hard to beat $29 for a gigE
> > NIC).
> 
> That's definately not a bad price.  Do the remarks about the earlier
> rl cards still apply to the newer generation of rl chips, or has
> RealTek improved them to the point where they are actually on par with
> their peers?  In other words, what's your take on their performance
> and reliability compared to the Intel or Broadcom chipsets?

The 8139C+ has much better performance than the older 8139 series.
The main problem with the 8139 isn't so much throughput as it is
frame rate. With a fast enough CPU, you might get 100Mbps out of
it, but it has trouble sustaining that bandwidth as frame size
decreases. The 8139C+ has a very straightforward descriptor-based
DMA mechanism, and with the on-board timer you can do some pretty
effective TX interrupt moderation. With my Athlon 900Mhz test box
at home, I was able to generate 120,000 frames/sec with my very
simpleminded raw transmit test (UDP blasting with ttcp). The older
8139 is lucky if it can do 40,000 frames/sec on the same box.

I haven't had a chance to properly benchmark the 8169 gigE chip
yet. I need to sneak it into one of the lab machines at work to
really compare it head-to-head with the Intel and Broadcom NICs.
Unfortunately, the Xterasys XN-152 is a 32-bit 'desktop' card, and
all the other sample gigE NICs I have are 64-bit 'server class' cards,
so it automatically has a strike against it. (I could probably
level the playing field by putting the other NICs into 32-bit
slots though.)

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+.
- There doesn't appear to be any alignment restrictions for data
  buffers on either RX or TX (so no copies on RX needed).
- Has TCP, UDP and IP checksum offload, TCP large send, jumbo frame
  and VLAN tagging/stripping support (all the usual gigE features).
- Has normal and high priority TX rings (rl(4) currently uses just
  one ring).
- Dirt cheap. The NIC costs $26.50, plus shipping. (Shipping via
  U.S. Mail to SF cost only a couple dollars more.) This is way
  less than even the cheapest National Semiconductor DP83820-based
  card.

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).
- 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).

Based on what I know so far, I would definitely recommend it over
a board with a NatSemi DP83820: it's much, much cheaper and doesn't
have the 83820's requirement for 64-bit-aligned RX buffers. I can't
really compare it to the Intel or Broadcom devices until I run some
benchmarks on it.

-Bill

--
=============================================================================
-Bill Paul            (510) 749-2329 | Senior Engineer, Master of Unix-Fu
                 wpaul@windriver.com | Wind River Systems
=============================================================================
      "If stupidity were a handicap, you'd have the best parking spot."
=============================================================================



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