Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Sep 2001 15:04:03 -0500
From:      David Kelly <dkelly@hiwaay.net>
To:        Neil Darlow <neil@darlow.co.uk>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: Collisions slowing network response
Message-ID:  <20010907150403.A92753@grumpy.dyndns.org>
In-Reply-To: <20010907.17051700@ideal.darlow.co.uk>; from neil@darlow.co.uk on Fri, Sep 07, 2001 at 05:05:17PM %2B0000
References:  <20010907.17051700@ideal.darlow.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Sep 07, 2001 at 05:05:17PM +0000, Neil Darlow wrote:
> Hi All,
> 
> I have a FreeBSD 4.3-RELENG_4_3 system that's exhibiting high network
> collision rates when connected to a Debian GNU/Linux 2.2r3 system.

Is it just "high collision rates" or is it really slowing the network as
stated in your subject: field? There is nothing wrong with collisions on
a half duplex hubbed system as you describe. Fast machines will have up
to 200% collision rate before occupying much more than 10% of the
bandwidth. The "fast systems" will not be able to use that full
remaining 90% because they have to insert random length waits before
retrying the collision.

An ethernet collision is when your transmitter keys on the wire and
starts its thing while your receiver is copying same. If the receiver
fails to copy 100% accurate during the first 64 octets then a collision
is declared and the packet rescheduled. Notice 64 octets isn't very long
so not very much bandwidth was occupied.

What would be bad is a "late collision", which indicates your network is
too long and the speed of light is no longer fast enough, or somebody's
protocol stack is badly broken. A late collision is when the data error
happens after the first 64 octets.

Regular collisions indicate both system started transmitting at or about
the same time. A fast system sends multiple ethernet packets tail-up
with no gap in between. A fast receipient copies the first packet,
decides to send the ACK so quickly the ACK packet collides with the 2nd
data packet. The only solution is 1) slower computers, or 2) ethernet
switch to replace your hub.

ifconfig shows both of your interfaces running SIMPLEX already. Other's
followup messages on media select are barking up the wrong tree.

> I have only observed these collisions since updating from FreeBSD 4.2
> and more-so since upgrading hardware to 8139 NICs.

Upgrade? Is useful to surf the sources before purchasing new hardware.
/usr/src/sys/pci/if_rl.c says:

/*
 * The RealTek 8139 PCI NIC redefines the meaning of 'low end.' This is
 * probably the worst PCI ethernet controller ever made, with the possible
 * exception of the FEAST chip made by SMC. The 8139 supports bus-master
 * DMA, but it has a terrible interface that nullifies any performance
 * gains that bus-master DMA usually offers.
 *

-- 
David Kelly N4HHE, dkelly@hiwaay.net
=====================================================================
The human mind ordinarily operates at only ten percent of its
capacity -- the rest is overhead for the operating system.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




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