Thread (7 messages) 7 messages, 3 authors, 2009-12-30

Re: Ethernet CRC questions

From: Matti Aarnio <hidden>
Date: 2009-12-30 06:43:31

On Wed, Dec 30, 2009 at 01:53:09PM +0800, thomas yang wrote:
2009/12/30 Ben Hutchings [off-list ref]:
quoted
On Wed, 2009-12-30 at 01:17 +0800, thomas yang wrote:
quoted
How does Linux  generate Ethernet CRC ?
by the hardware (Ethernet controller)  or  use crc32_le() /
crc32_be()     ( lib/crc32.c )  ?

P.S.   my  network card is  rtl8139d  , use  8139too driver
The Ethernet frame CRC is normally generated and verified in hardware.
These library functions are needed for the few MACs that don't, or where
the same CRC function is used for some other purpose (e.g. as a hash
function for multicast filtering).
Does the Ethernet frame CRC (generate and verify in hardware)  make
the TX / RX  rate  a little smaller , and a longer end-to-end  delay ?
 Could I disable CRC appending / verifying  in the network card driver
  on all of my nodes (machines) ?
You would need to similarly disable the checking and generating at your
network switches as well.  It really is not worthwhile.

You are better to use multiple links in between the machines in parallel,
and bond them together as load-sharing link.  Or go to 10G.
(We used to do that kind of things with quad fast-ethernet cards, but
with gigaethers we did not bother anymore.)
Thanks.
Best Regards,  Matti Aarnio
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help